TO_BOOL-Baustein

Kurz-Information

Name

TO_BOOL

→POE-Typ

→Funktion

Kategorie

Standard (safe), ConvertBaustein mit interner Fehlerdiagnose

Konform zur →IEC-Norm

(Fehler) derzeit eingeschränkt; siehe "Funktionalität"

und

(Plus) mehr als in IEC-Norm vorgesehen möglich; siehe "Explizite Konvertierung laut IEC-Norm"

Grafische Schnittstelle

Verfügbar ab

Version 1.0.0 (für Neuron Power Engineer) – Anfangsvariante

Version 1.90.0 (für Neuron Power Engineer) – Erweiterung: TIME_OF_DAY für IN

Version 3.2.0 (für Bibliothek Standard) – Erweiterung: STRING and CHAR für IN, interne Fehlerdiagnose

Version 3.3.0 (für Bibliothek Standard) – Erweiterung: interne Fehlerdiagnose geändert (ENO=FALSE, falls der anliegender Wert mit gültigen Zeichen beginnt,  aber dahinter ungültige Zeichen folgen)

Version 3.8.0 (für Bibliothek Standard (safe)): Baustein in diese Bibliothek verschoben

Funktionalität

Der Baustein dient zur expliziten Konvertierung des am Eingang IN anliegenden Werts in einen Wert vom Datentyp BOOL.

Falls der anliegende Wert im gemeinsamen Wertbereich des Eingangsdatentyps und des Ergebniswerts BOOL liegt, so liefert der Baustein diesen Wert.

Abweichung zur IEC-Norm

Die IEC-Norm definiert, dass die Konvertierung für die Datentypen, die laut der IEC-Norm vorgesehen sind, als Binär-Transfer erfolgt. Dieser Baustein weicht jedoch von der IEC-Norm ab. Beim anliegenden Wert 0 liefert dieser Baustein FALSE (oder eine Entsprechung), bei allen anderen Werten liefert er TRUE (oder eine Entsprechung).

Beachten Sie zusätzlich:

  • Bei der Umwandlung von Datentypen auf den TIME-Datentyp und umgekehrt wird immer auf Sekunden-Basis konvertiert.

  • Falls der Wert 0, 1, TRUE oder FALSE vom Datentyp STRING am Eingang anliegt (wobei TRUE und FALSE mit unterschiedlicher Groß-/Kleinschreibung unterstützt wird, z.B. ''TRue'', STRING#'FalSE''), wird der Wert entsprechend konvertiert (also: TRUE, FALSE). Der Ausgang ENO wird hier auf den Wert TRUE gesetzt. 
    Bei anderen Werten (z.B. STRING#'2', 'BOOL#TRUE', ' TRUE') liefert der Baustein den Wert FALSE, Der Ausgang ENO wird hier auf den Wert FALSE gesetzt.  Sonderfall: Falls der anliegende Wert mit 01TRUE oder FALSE beginnt (unabhängig davon, welche Groß-/Kleinschreibung verwendet wird) und dahinter andere Zeichen folgen (z.B. '05''True_1''falseFlag'), liefert der Baustein den Anfangswerts, wie er unterstützt wird (also: 0TRUEFALSE) und der Ausgang ENO wird auf den Wert FALSE gesetzt.

  • Falls der Wert 0 oder 1 vom Datentyp CHAR am Eingang anliegt (z.B. '0', CHAR#'1'), wird der Wert entsprechend konvertiert (also: 01). Der Ausgang ENO wird hier auf den Wert TRUE gesetzt.
    Bei anderen Werten (z.B. '9', CHAR#'A') liefert der Baustein den Wert FALSE. Der Ausgang ENO wird hier auf den Wert FALSE gesetzt.

Explizite Konvertierung laut IEC-Norm

Die IEC-Norm sieht eine explizite Konvertierung der folgenden Datentypen auf BOOL vor:

BYTEWORDDWORDLWORD

Die IEC-Norm (Edition 3.0) sieht eine binäre Übertragung aller Eingangsdatentypen vor. Abweichend davon wird der entsprechende Wert bei den folgenden Eingangsdatentypen aber laut IEC-Norm (Edition 2.0) konvertiert.

BYTEWORDDWORDLWORD

Details zum Neuron Power Engineer-Verhalten des Bausteins finden Sie im Abschnitt "Funktionalität".

Eingänge, Ergebniswert

 

Bezeichner

→Datentyp

Beschreibung

Eingänge:

IN

REALLREALUSINTUINTUDINTULINTSINTINTDINTLINTTIMEBOOLBYTEWORDDWORDLWORDSTRING, CHAR oder TIME_OF_DAY

zu konvertierender Wert

Ergebniswert:

BOOL

 

Der Eingang EN und der Ausgang ENO sind für den →Aufruf des Bausteins verfügbar. Siehe "Ausführungssteuerung: EN, ENO" für Informationen zum Eingang EN und zum Ausgang ENO.

Informieren Sie sich unter:

Interne Fehlerdiagnose für Baustein

Der Baustein prüft den Wert, der am Eingang anliegt. In den folgenden Fällen wird der Ausgang ENO des Bausteins auf den Wert FALSE (oder eine Entsprechung) zurückgesetzt:

  • Ein STRING-Wert enthält ein nicht-erlaubtes Zeichen oder beginnt damit. (Der Wert, den der Baustein liefert, ist von der Postion der nicht-erlaubten Zeichen abhängig. Siehe die Beschreibung unter "Funktionalität" oben.)

  • Ein CHAR-Wert enthält ein nicht-erlaubtes Zeichen oder beginnt damit. (In diesem Fall liefert der Baustein außerdem den Wert FALSE.)

Beispiel für Verwendung im ST-Editor

PROGRAM Test
   VAR
      result : BOOL;
   END_VAR
   result := TO_BOOL(IN := DINT#1);    (* The variable 'result' evaluates to value '1' of BOOL. *)
END_PROGRAM

Bei der Erstellung Ihrer Anwendung im ST-Editor erstellen Sie den Aufruf eines Bausteins, indem Sie den laut Syntax erforderlichen Text eintippen oder die Inhaltshilfe verwenden.