ABS-Baustein

Kurz-Information

NameABS
→POE-Typ→Funktion
KategorieIEC-Baustein, Numeric, Baustein mit interner Fehlerdiagnose
Konform zur →IEC-Norm

(tick) keine Einschränkungen

Grafische Schnittstelle

Verfügbar ab
  • Version 1.17.0 (für logi.CAD 3 ) – Anfangsvariante
  • Version 2.0.14 (für Bibliothek Standard) – interne Fehlerdiagnose für Baustein
  • Version 3.1.0 (für Bibliothek Standard) – Für Eingänge vom Datentyp REAL wird die optimierte float-Variante der C-Runtime verwendet. Im Vergleich zu früheren Versionen können in den Grenzwertbereichen des Bausteins (geringfügig) andere Ergebnisse geliefert werden.

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→DatentypBeschreibung
Eingänge:IN
REAL, LREALUSINTUINTUDINTULINTSINTINTDINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_NUM
Wert
Ergebniswert:
REAL, LREALUSINTUINTUDINTULINTSINTINTDINT 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.