Strings in globale DBs speichern

A

Anonymous

Guest
Zuviel Werbung?
-> Hier kostenlos registrieren
Kann mir jemand helfen?

Ich habe folgendes Problem:

Um mit qs-stat kommunizieren zu können muß ich real-Werte in String-Variablen konvertieren. Dies funktioniert noch einwandfrei. Nur ist es mir unmöglich den konvertierten String in den Datenbaustein zu schreiben.
um den Datenbautein komm' ich nicht herum, da ansonsten das senden der Daten sehr aufwendig würde.

Für die Konvertierung verwende ich den Baustein R_String welcher in der Standard IEC Bibliothek zu finden ist.

Wie kann ich die Daten in den Datenbaustein schreiben?

Sofware: V5.3 / SP2
Hardware: Siemens CP315-2DP und CP 343-1 IT
 
Unter String habe ich schon gesucht, aber noch nichts brauchbares gefunden.

Der SFC20 steht mir zwar zur Verfügung, dieser erlaubt aber keine String-Arrays.

Gibt es einen ähnlichen Block der auch String-Arrays zuläßt?
 
String mit SFC 20

Hallo,

wenn Du Dir einen ANY-Zeiger generierst, kannst Du auch Strings übertragen.

Der ANY-Zeiger für Datentypen wird mit Hex=13 generiert.
-->Hex 13 steht für String.

In diesem ANY-Zeiger wird unter Anderem die Anzahl der zu übertragenden Werte (z.B. WORD,BYTE,CHAR,STRING, usw.) festgelegt.
--> 4 WORD oder 32 BYTE, usw.
Dann wird die Datenbausteinnummer festgelegt von dem Du übertragen wilst.(SRCBLK)
Das Gleiche gilt auch für DSTBLK(Ziel)
Dann wird ein Bereichszeiger (Pointer) generiert, der Dir den Anfangsbereich im Ziel bzw. Start DB angibt(z.B. P#DBX0.0)

All diese Eingaben in den ANY-Zeiger können natürlich auch vom Programm errechnet werden.

Gruß Christian
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke! Es hat doch mit dem SFC20 funktioniert. :eek:

Das Handbuch hat zwar behauptet das Strings nicht zulässig sind, aber die S7 - Hilfe hat mich eines besseren belehrt.

ES FUNKTIONIERT UND LÄUFT!!!!!! :D
 
Zurück
Oben