Step 7 Stringverarbeitung - String und Word zusammenfügen

thomas9210

Level-1
Beiträge
7
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Morgen,

ich habe folgendes Problem:

Ich habe in einem Datenbaustein einen String[30], der variabel ich glaube maximal 15 Zeichen hat und eine Zahl(Word), variabel.
Wie bekomme ich es hin, die Zahl an den String zu heften und auf einen weiteren Platz im DB einzufügen?
Letztendlich steht in dem DB:

Stat0 - String[30] - Not-Aus betätigt
Lastwechsel_Verbleibend - Word - 2150 (4 Stellen sollten reichen)
Stat1 - String[30] - Not-Aus betätigt, LW:2150 <---So brauch Ich's.

Bin nicht allzu erfahren auf dem Gebiet, ich denke ich muss das mit dem SFC20 BLKMOV machen aber da Blick ich nicht so ganz durch.

Vielen dank im Vorraus!
 
Hallo,
nein ... dafür gibt es String-Befehle (sieh dir dazu vielleicht mal die Step7-Hilfe an) und die Bibliothek "Standard Library\IEC Function Blocks"
Du mußt dein WORD in einen String wandeln (I_STRNG oder DI_STRNG) und die Teilstrings hinterher mit CONCAT zusammenfügen und das dann in deinen Zielbereich schreiben (das könnte CONCAT schon machen)

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Du kannst die 2150 nicht direkt in den String eibauen, das ist ja ein völlig anderes Format. Du musst zuerst mit dem FC5 DI_STRING IEC aus der Standard Library unter IEC Function Blocks aus dem Integer einen String machen. Von dem String kannst Du dann die entsprechenden Bytes in den Zielstring kopieren. Bei vier Zeichen bietet es sich an, nicht den SFC20 zu verwenden sondern direkt ein Doppelwort zu laden und zu transferieren.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
DB99.DBW4 - I_to_String - db99.Stat0
dann die beiden Strings mit Contact zusammengefügt und aus den nächsten Stat geschrieben.
Auch relativ logisch eigentlich.
Hab nur leider noch nie was in richtung Stringverarbeitung im Bereich Step7 gemacht.
Im großen und ganzen geht es halt um eine Fehlermeldeanlage, die mir im Falle eines Fehlers einer der Anlagen, die auch übers Wochenende laufen, eine SMS sendet mit den noch zu erledigenden Lastwechseln und auch der Fehlerbeschreibung, so dass ein Bereitschaftsdienst an Wochenenden eingerichtet werden kann.

Das einzige was ich noch nicht hinbekomme ist, die AnlagenCPU mit der FehlermeldeCPU über Profinet zu vernetzen. Nur über MPI mit dem X-Put funktionierts bei mir.
Das muss ich noch irgendwie hinbekommen.
Viele kleinigkeiten an denen es halt immer wieder hakt ;)

Gruß, Thomas
 
Zurück
Oben