LIMITER_O-Baustein

Kurz-Information

Name

LIMITER_O

→POE-Typ

→Funktionsbaustein

Kategorie

IEC-Baustein, ControlEnh

Konform zur →IEC-Norm

images/s/b2ic8e/9012/1ca6q62/_/images/icons/emoticons/add.svg nicht in IEC-Norm vorgesehen

Grafische Schnittstelle

images/download/thumbnails/414780940/LIMITER_O-version-1-modificationdate-1534927832195-api-v2.png

Verfügbar ab

Version 1.47.0 (für logi.CAD 3)

Funktionalität

Bei diesem Baustein handelt es sich um einen Zweipunktregler mit Hysterese.

Der Baustein setzt den Wert der Variable OUT auf 1, wenn der Wert der Variable IN den Wert von L überschreitet. Die Variable OUT wird auf 0 gesetzt, wenn der Wert von IN den Wert von L abzüglich der Hysterese H unterschreitet. Ansonsten behält OUT seinen Wert.
Falls für H ein negativer Wert angegeben ist, wird für die Hysterese der Wert 0 verwendet.

Einschränkungen

Folgende Einschränkungen gelten für die Verwendung überladbarer Funktionsblock-Instanzen:

  • Die Deklaration ist nur in Form lokaler Variablen zulässig.

  • Die Verwendung als ARRAY-Basisdatentyp ist nicht erlaubt.

  • Die Verwendung als Struktur-Element ist nicht erlaubt.

  • Die Instanzdaten können nicht in der Sicht Variablenwerte angezeigt werden.

Ein-/Ausgänge


Bezeichner

→Datentyp

Beschreibung

Eingänge:

IN

REAL, LREAL, USINT, UINT, UDINT, ULINT, SINT, INT, DINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_NUM)

Eingang

L

REAL, LREAL, USINT, UINT, UDINT, ULINT, SINT, INT, DINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_NUM)

Limit

H

REAL, LREAL, USINT, UINT, UDINT, ULINT, SINT, INT, DINT oder LINT
(entspricht dem →allgemeinen Datentyp ANY_NUM)

Hysterese

Ausgänge:

OUT

USINT

1 falls IN den Wert von L überschreitet
0 falls IN den Wert von (L - H) unterschreitet

Beispiel für Verwendung im ST-Editor

FUNCTION_BLOCK ExampleLimiterO
VAR
iLimiterO : LIMITER_O;
limit : INT := 10;
hysteresis : INT := 5;
okOut1, okOut2, okOut3, okOut4 : BOOL := TRUE;
END_VAR
/* IN is below L => OUT keeps initial value of 0 */
iLimiterO(IN := 10, L := limit, H := hysteresis);
okOut1 := iLimiterO.OUT = 0;
/* IN exceeds L => OUT changes its value to 1 */
iLimiterO(IN := 11, L := limit, H := hysteresis);
okOut2 := iLimiterO.OUT = 1;
/* IN is between (L - H) and L => OUT keeps its value 1 */
iLimiterO(IN := 6, L := limit, H := hysteresis);
okOut3 := iLimiterO.OUT = 1;
/* IN is below or equal (L - H) => OUT changes its value back to 0 */
iLimiterO(IN := 5, L := limit, H := hysteresis);
okOut4 := iLimiterO.OUT = 0;
ENO := AND(okOut1, okOut2, okOut3, okOut4);
END_FUNCTION_BLOCK

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.