STRING_TO-Konvertierungen

Allgemeine Informationen

Allgemeine Hinweise, die bei der Typkonvertierung zu berücksichtigen sind, finden Sie im Kapitel zu den Funktionen der Typkonvertierung.

Definition

IEC-Operator für Konvertierungen vom Variablentyp STRING in einen anderen Typ.

Syntax

STRING_TO_<Datentyp>

Spezifizieren von Werten

Spezifizieren Sie den Operand vom Typ STRING gemäß der Norm IEC61131-3. Der Wert muss einer gültigen Konstanten (Literal) des Zieltyps entsprechen.

Konvertierbare Zeichenfolgenden können Folgendes enthalten:

  • Zahl mit Typpräfix (Beispiel: '16#FFFFFFFF')

  • Zahl mit Gruppierungszeichen (Beispiel: '2#1111_1111')

    HINWEIS: Verwenden Sie das Unterstreichungszeichen, da das internationale Gruppierungszeichen für Gewicht und Maß (schmales Leerzeichen) nicht zulässig ist.
  • Gleitkommazahl, ebenfalls in exponentieller Darstellung (Beispiel: '9.876' oder '1.2E-34')

    HINWEIS: Gleitkommazahlen können nicht konvertiert werden. Das Komma wird als nachfolgendes Zeichen gehandhabt und deshalb abgeschnitten.
  • Uhrzeit, Tageszeit und Datumsangabe mit Präfix und Größe (Beispiel: 'T#2h', 'DT#2019-9-9-12:30:30.9')

  • Unendliche Werte (Beispiel: '1.7E+400')

  • Zusätzliche Zeichen nach einer Zahl (Beispiel: '2m' oder '3.14') werden abgeschnitten. Zusätzliche Zeichen vor einer Nummer sind nicht zulässig.

  • Leerzeichen davor (Beispiel: ' 3.14')

Der Operand muss einen gültigen Wert des Zieldatentyps repräsentieren.

HINWEIS: Wenn der Datentyp des Operanden nicht dem Zieltyp entspricht oder wenn der Wert den Bereich des Zieldatentyps überschreitet, dann ist das Ergebnis vom Prozessortyp abhängig und demzufolge undefiniert.

Dadurch kann es passieren, dass bei der Typkonvertierung von größeren auf kleinere Typen Information verloren geht.

 VORSICHT
DATENVERLUST
Bei der Konvertierung nicht übereinstimmender Datentypen oder wenn der zu konvertierende Wert größer ist als der Zieldatentyp, müssen Sie sicherstellen, dass das Ergebnis in Ihrer Anwendung validiert wird.
Die Nichtbeachtung dieser Anweisungen kann Verletzungen oder Sachschäden zur Folge haben.

Beispiel in AWL/IL

Beispiel

Ergebnis der Konvertierung

LD 'TRUE'
STRING_TO_BOOL
ST b

TRUE

Beispiele in ST

Beispiel

Ergebnis der Konvertierung

b := STRING_TO_BOOL('TRUE');

TRUE

w := STRING_TO_WORD('abc34');

0

w := STRING_TO_WORD('34abc');

34

t := STRING_TO_TIME('T#127ms');

T#127ms

r := STRING_TO_REAL('1.234');

1.234

bv := STRING_TO_BYTE('500');

244

Beispiel in FBD

Beispiel

Ergebnis der Konvertierung

TRUE