Literale gemäß IEC 61131-3
Wenn im Code konstante numerische Werte, Zeichenfolgen oder Zeitdatenwerte verwendet werden sollen, z.B. um sie mit einem Formalparameter einer Funktion bzw. eines Funktionsbausteins zu verbinden, können Literale anstelle von konstanten Variablen verwendet werden. Literale sind direkt eingegebene feste Werte oder Zeichenfolgen. Die Norm IEC 61131-3 bezeichnet Literale als "externe Darstellung von Daten". Literale können direkt in den Code eingegeben werden. Es ist keine Deklaration notwendig.
Die IEC 61131-3 beschreibt verschiedene Arten von Literalen, entsprechend den elementaren Datentypen.
Es können auch sicherheitsbezogene Literale entsprechend den sicherheitsbezogenen Datentypen verwendet werden.
Dieses Thema enthält die folgenden Abschnitte:
Numerische Literale
Typ | Beispiele | |
---|---|---|
Ganzzahliges (integer) Literal | -12 0 123_456 +986
|
|
Reelles (real) Literal | -12.0 0.0 0.4560 3.14159_26 | |
Reelles (real) Literal mit Exponent | -1.34E-12 -1.34e-12 1.0E+6 | |
Langes reelles (long real) Literal | LREAL#-12.0Beachten Sie hierzu den 2. Hinweis im Anschluss an diese Tabelle. | |
Langes reelles (long real) Literal mit Exponent | LREAL#2.3E-89Beachten Sie hierzu den 2. Hinweis im Anschluss an diese Tabelle. | |
Literale zur Basis 2 | INT#2#1111_1111 | |
Literale zur Basis 8 | INT#8#377 | |
Literale zur Basis 16 | INT#16#FF SINT#16#ff | |
Boolesches FALSE und TRUE | FALSE, TRUESAFEFALSE, SAFETRUE | |
Boolesche 0 und 1 | 0, 1Für SAFEBOOL-Literale muss immer SAFEFALSE bzw. SAFETRUE angegeben werden. |
Hinweis
INT-Literale können ohne Schlüsselwort verwendet werden. Beispiel: Statt INT#16#ff können Sie 16#ff eingeben. BOOL/SAFEBOOL-Literale können auch ohne Schlüsselwort verwendet werden. Beispiele: Statt BOOL#FALSE können Sie FALSE eingeben und statt SAFEBOOL#FALSE verwenden Sie SAFEFALSE. |
Hinweis
Wenn Sie PLCnext Engineer in einer anderen Benutzeroberflächensprache und/oder unter einem anderen Windows System Locale als Englisch verwenden, müssen Sie numerische Werte mit einem '.' als Dezimaltrennzeichen eingeben (gem. des englischsprachigen Standards). Dies gilt zum Beispiel beim Festlegen eines Anfangswerts in Variablentabellen oder für REAL/LREAL-Literale im Code. |
Zeichenfolge-Literale
Zeichenfolge-Literale enthalten entweder Einzelbyte- oder Doppelbyte-Zeichen.
Ein Einzelbyte-Zeichenfolge-Literal (String-Literal) ist eine Sequenz von null oder mehr Zeichen, die durch einfache Anführungszeichen (') eingeleitet und abgeschlossen sind. Ein Doppelbyte-Zeichenfolge-Literal ist eine Sequenz von null oder mehr Zeichen, die durch doppelte Anführungszeichen (") eingeleitet und abgeschlossen sind.
Typ | Beispiele |
---|---|
Einzelbyte-Zeichenfolgen | |
Leere Zeichenfolge | '' |
Zeichenfolge mit einem Leerzeichen | ' ' |
Zeichenfolge mit Text | 'dies ist ein Text' |
Doppelbyte-Zeichenfolgen | |
Leere Zeichenfolge | "" |
Zeichenfolge mit einem Leerzeichen | " " |
Zeichenfolge mit Text | "dies ist ein Text" |
Datums- und Zeitliterale
Literale für Zeitdauer können in Stunden, Minuten, Sekunden, Millisekunden und in Kombination dieser Angaben dargestellt werden.
Typ | Beispiele | |
---|---|---|
Kurzes Präfix | Datentyp TIME: T#14ms t#14ms t#12m18s3.5ms T#25h_15m t#25h_15m
|
|
Langes Präfix | Datentyp TIME: TIME#14 ms time#14ms TIME#25h_15m time#25h_15mDatentyp SAFETIME: SAFETIME#14 ms safetime#14ms SAFETIME#25h_15m safetime#25h_15mDatentyp LTIME: LTIME#14 ms time#14ms TIME#25h_15m time#25h_15m |
Weitere Infos
Informationen, wie Sie Literale in den Programmiersprachen FBS/KOP/AS bearbeiten, finden Sie im Abschnitt "Konstante (Literal)". |