ABS-Baustein
Kurz-Information
Name | ABS |
---|---|
→POE-Typ | →Funktion |
Kategorie | IEC-Baustein, Numeric, Baustein mit interner Fehlerdiagnose |
Konform zur →IEC-Norm |
|
Grafische Schnittstelle |
|
Verfügbar ab |
|
Funktionalität
Die mathematische Funktion Abs wird aufgerufen: Der Baustein liefert den Absolutbetrag (also ohne Vorzeichen) des am Eingang anliegenden Werts.
Spezialfall: Falls am Eingang der größte negative Wert anliegt, der für den Datentyp möglich ist, liefert der Baustein diesen negativen Wert. Grund: Für den größten negativen Wert existiert kein entsprechend positiver Wert. Zusätzlich wird der Ausgang ENO
auf den Wert FALSE
gesetzt.
Siehe unter "Beispiel für Verwendung im ST-Editor": Falls der größte negative SINT
-Wert -128
am Eingang anliegt, liefert der Baustein den Ergebniswert -128
(der größte positive SINT
-Wert ist 127
) und ENO=FALSE
.
Eingänge, Ergebniswert
Bezeichner | →Datentyp | Beschreibung | |
---|---|---|---|
Eingänge: | IN | REAL , LREAL , USINT , UINT , UDINT , ULINT , SINT , INT , DINT oder LINT (entspricht dem →allgemeinen Datentyp ANY_NUM )
| Wert |
Ergebniswert: | – | REAL , LREAL , USINT , UINT , UDINT , ULINT , SINT , INT , DINT oder LINT (entspricht dem →allgemeinen Datentyp ANY_NUM )
|
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
.
Interne Fehlerdiagnose für Baustein
Der Baustein prüft den Ergebniswert: Falls der größte negative Wert für einen Datentyp geliefert wird, wird der Ausgang ENO
des Bausteins auf den Wert FALSE
(oder eine Entsprechung) zurückgesetzt.
Beispiel für Verwendung im ST-Editor
PROGRAM Test VAR result1, result2, result3 : SINT; CheckENO1, CheckENO2, CheckENO3 : BOOL; END_VAR result1 := ABS(IN := -5, ENO => CheckENO1); (* The variable 'result1' evaluates to '5'. The variable 'CheckENO1' evaluates to 'TRUE'. *) result2 := ABS(IN := -127, ENO => CheckENO2); (* The variable 'result2' evaluates to '127'. The variable 'CheckENO2' evaluates to 'TRUE'. *) result3 := ABS(IN := -128, ENO => CheckENO3); (* The variable 'result3' evaluates to '-128'. The variable 'CheckENO3' evaluates to 'FALSE'. *) 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.