Info |
---|
Vergleicht den Eingangswert gegen einen Schwellwert , resp. gegen zwei Schwellwerte (Hysterese) |
Funktionsbeschreibung
Ein Schwellwertschalter liefert TRUE, sobald der Eingangswert eine bestimmte Schwelle überschritten hat.
Um diese Funktionalität zu erreichen, stehen zwei Logik-Module zur Verfügung.
Variante 1: Ein Schwellwert (einfache Version)
Der Eingangswert wird mit dem Schwellwert verglichen und und das Ergebnis lautet TRUE, sobald die Bedingung
Eingangswert (Eingang) > Schwellwert (Schwelle)
erfüllt ist, ansonsten FALSE. Dies ergibt folgende Wahrheitstabelle:
Ergebnis | Bedingung |
---|---|
FALSE (0) | Eingang <= Schwelle |
TRUE (1) | Eingang > Schwelle |
Variante 2: Zwei Schwellwerte (Hysterese)
Der Eingangswert wird mit den beiden Schwellwerte verglichen und das Ergebnis lautet
TRUE, wenn der obere Schwellwert überschritten ist (d.h. Eingang > Schwelle_2),
FALSE, wenn der Eingangswert höchstens dem unteren Schwellwert entspricht (d.h. Eingang <= Schwelle_1),
unverändertes Ergebnis, sofern der Eingangswert zwischen der oberen und der unteren Schwelle liegt (d.h. Schwelle_1 < Eingang <= Schwelle_2).
Dies ergibt folgende Wahrheitstabelle:
Ergebnis | Bedingung |
---|---|
FALSE (0) | Eingang <= Schwelle |
TRUE (1) | Eingang > Schwelle |
unverändert | Schwelle_1 < Eingang <= Schwelle_2 |
Status | ||||
---|---|---|---|---|
|
Eingänge
Eingang(float): Eingangswert.
(nur einfache Version) Schwelle (float): Vergleichswert.
(nur Hysterese-Version) Schwelle_1 (float): Unterer Vergleichswert.
(nur Hysterese-Version) Schwelle_2 (float): Oberer Vergleichswert.
(Optional) Inhibit 1-n(boolean): (Optionale) Sperreingänge, lösen die →Abbruchfunktion aus.
(Optional) Trigger 1-n(boolean): (Optionale) Triggereingänge, lösen die →Triggerfunktion aus.
Ausgänge
Ergebnis (boolean): Oberhalb Schwelle.
Hinweise
Soll der Ausgang TRUE (1 oder EIN) melden, sofern die Berechnung FALSE ergibt (d.h. die Schwelle nicht überschritten ist), kann dies über eine Invertierung des Ausgangs (Klick auf den runden Button am Ausgang) erreicht werden.
Praktische Anwendungsbeispiele
Temperaturregelung
Zugrundeliegender Modulbaustein
Status | ||||
---|---|---|---|---|
|
→Comparator-Modulbaustein
Code
Status | ||||
---|---|---|---|---|
|
Der Custom-Logik-Code dieses Logik-Moduls lautet wie folgt:
Einfache Version
Codeblock |
---|
{ "Level": [ [ "$Input", "float", 0 ], [ "$Result", "bool", false ], [ "$Threshold", "float", 0 ], [ "$VAR<Inhibit?>", "bool", false ] ], "Module": [ [ "Break", [ "$VAR<Inhibit?>" ] ], [ "Comparator", "$Input", "$Result", "$Threshold" ] ], "Input": [ [ "Eingang", "Eingangswert", "$Input", "c" ], [ "Schwelle", "Vergleichswert", "$Threshold", "c" ], [ "Inhibit", "INHIBIT", "$VAR<Inhibit?>", "u" ] ], "Output": [ [ "Ergebnis", "Oberhalb Schwelle", "$Result", "c" ] ] } |
Version mit Hysterese
Codeblock |
---|
{ "Level": [ [ "$Input", "float", 0 ], [ "$Result", "bool", false ], [ "$Thres_low", "float", 0 ], [ "$Thres_high", "float", 0 ], [ "$VAR<Inhibit?>", "bool", false ] ], "Module": [ [ "Break", [ "$VAR<Inhibit?>" ] ], [ "Comparator", "$Input", "$Result", [ "$Thres_low", "$Thres_high" ] ] ], "Input": [ [ "Eingang", "Eingangswert", "$Input", "c" ], [ "Schwelle_1", "Unterer Vergleichswert", "$Thres_low", "c" ], [ "Schwelle_2", "Oberer Vergleichswert", "$Thres_high", "c" ], [ "Inhibit", "INHIBIT", "$VAR<Inhibit?>", "u" ] ], "Output": [ [ "Ergebnis", "Oberhalb Schwelle", "$Result", "c" ] ] } |