Et 200m

Beiträge
212
Reaktionspunkte
20
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

bzgl. meiner Unwissenheit und der Tatsache, dass ich mich auf der hp von Siemens total verirrt habe, habe ich folgende Frage:

Aufbau:
S7 CPU 314 mit CP 342-4 und angehängter IM 153-2 im Profibus-DP-Mastersystem.

Auf der ET200 sind ein Eingangsmodul mit Adresse EB32/33, ein Ausgangsmodus mit der Adresse AB34/35 und ein AnalogInputmodul mit PEW400/402 verbaut.

Mit dem Baustein FC2 (DP-RECV-Funktion fpr Simatic NET CPs) "DP_ReCV" möchte ich die Daten aus dem PEW400/402 abholen.

Folgendes habe ich parametriert:
CPLADDR: W#16#400
RECV: P#DB10.DBX0.0 byte 4
NDR: M19.4
ERROR: M19.5
Status: MW26
DPStatus: MB25

Versteh ich das richtig, dass unter alles nach der Adresse 400 (also mein PEW400 und 402) auf den DB10 DBW0 und DBW2 verschaltet werden????

Besteht nicht irgendwie die Möglichkeit direkt PEW 400 und PEW402 abzurufen und nicht den Umweg über den DB10 zu gehen?

Über Antwort würde ich mich freuen.

Gruss Dabbes
 
Soweit ich weiss, kann die 314 Peripheriedaten nur bis Adresse 255 direkt lesen. Darüber hinaus müssen andere Wege beschritten werden.
Wenn Du also das PEW 400 auf z.B. PEW 200 umkonfigurierst, sollte das mit dem Direktzugriff klappen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Vergiss das von Blasterblock geschriebene, dieses würde nur für CPU's mit integrierter DP-Schnittstelle bzw. "normale EA's" normale EA's gelten,
nicht aber für deinen CP342-5 ...

Du musst ALLES mit dem FC1 bzw. FC2 machen, also auch die digitalen Ein/Ausgänge.

Die Erklärung der Aufrufparameter:

CPLADDR: W#16#400 //Anfangsadresse des CP in der HW-Konfig in Hex (Adresse 256 = 16#100) (16#400 = 1024 ist eher ungewöhnlich, bitte kontrollieren)
RECV: P#DB10.DBX0.0 byte 4 //Damib sagst du: Lese vom internen Prozessabbild des CP 4 Byte ab Byte 0, d.h. Byte 0-3 der an den Slaves am CP definierten Adressen.
NDR: M19.4
ERROR: M19.5
Status: MW26
DPStatus: MB25

Der Rest ist nich sooo interessant oder funktionell wichtig ...

Der Parameter Recv. müsst in deiner Konstellation nun so heißen:
RECV: P#DB10.DBX0.0 BYTE403
Dann würden im DB bei Byte 32/33 deine Eingänge landen, und bei Byte 400 bzw. 402 deine Analogeingänge.
Du siehst also, es würde durchaus Sinn machen, deine CP-Eingänge ab Byte 0 zu definieren.

Mfg
Manuel
 
Zuletzt bearbeitet:
besten Danke euch beiden!

Das hätte ich ja voll versemmelt.....

....

Ab Byte 0 kann ich leider nicht parametrieren, da nach der CPU natürlich auch ein paar Karten angeschlossen sind. Der Groschen (*klimper) ist zwar nicht gefallen, aber ich sehe ein Licht am Ende des laaaaaangen schwarzen Tunnels.

:p
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Doch, du kannst schon ab Byte 0 parametrieren, da das Prozessabbild des CP überhaupt rein gar nichts mit dem Prozessabbild der CPU zu tun hat.

Mfg
Manuel
 
Ja!
Wie MSB schon schrieb...
Doch, du kannst schon ab Byte 0 parametrieren, da das Prozessabbild des CP überhaupt rein gar nichts mit dem Prozessabbild der CPU zu tun hat.

Mfg
Manuel

Der CP 342-5 hat seinen eigenen Adressbereich der natürlich auch bei Byte 0 beginnt.
Wie gesagt hat der nichts mit dem E/A-Adressbereich der CPU zu tun.
 
Zurück
Oben