String über DP / DP Koppler

AndreasH

Level-1
Beiträge
5
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Zusammen,

bin neu hier und habe ein Problem.

Ich arbeite mit Step 7 V5.3 und bekomme eine 8 stellige Programmnummer als String von einer übergeordneten Steuerung (über DP 7 DP Koppler)!

Wie wird den ein solcher String über den DP / DP Koppler übertragen....wie kann ich Ihn auslesen...Byte-weise??

Wie ist dies dann vom Code her zu realisieren in SCL?

Danke schon mal im voraus für eure hilfreichen Tipps!

Andreas
 
Ein DP/DP-Koppler tauscht zwischen 2 Steuerungen über den Profibus E/A-Bereiche aus. Welche, das wird jeweils in der Hardwareconfig der übergeordneten und der deiner Steuerung festgelegt. Es gibt mehrere Möglichkeiten. Den E/A-Bereich direkt in das Prozeßabbild legen, dann kann man auch direkt Bit/Byte/Word/DWord lesen schreiben.(L EW110) Oberhalb des Prozeßabbildes legen, dann kann man PE und PA lesen/schreiben. (L PEW 310) Hat man die DP/DP-Koppler über ein CP angeschlossen muß man die Daten mit dem FC1/2 (DP_SEND/DB_RECV) aus der Standard-Library lesen/schreiben und z.Bsp. in einen DB legen. Was die Daten letztlich beinhalten ist eigentlich völlig egal, wenn die übergeordnete Steuerung einen String mit der Länge 10 ablegt, dann müssen 12 Byte übertragen werden, 2 Byte kopf, der Rest die Zeichen. Du holst die Byte, legst sie in einen DB, der ebenfalls den Typ String[10] als Variable definiert hat und kannst dann direkt mit der Stringvariable weiterarbeiten.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo AndreasH,

Ralle hat eigentlich schon alles beschrieben was da dazu wissen musst.

Nur noch eine Anmwerkung, Was für den einen ein String ist, muss es nicht für die SPS sein.
Daher mal genau prüfen ob es ein String nach Siemens-Aufbau ist, oder nur die 8 Zeichen. Das führt meist zu unstimmigkeiten.

Wenn es wirklich ein String ist, sind es 10 Byte
1 und 2 byte jeweils eine 8 für angelegte und belegte Länge
danach 8 Byte mit den Daten.
Wichtig ist dies, da die Breite der Kopplung an beiden Seiten gleich sein muss.
 
Wichtig ist dies, da die Breite der Kopplung an beiden Seiten gleich sein muss.

Und dazu muss noch beachtet werden (wenn es sich um den neuen Koppler handelt 158-0AD01) das den Projektierten Eingängen die selbe Anzahl an Ausgängen auf der anderen Seite gegenüberliegt

Mfg dasding
 
Zurück
Oben