# Binary limiter

Verarbeitung
Binary limiter
I
V
O
L

# Eingänge

IDKürzelNameTypStandardBeschreibung
inputIinputBOOLEANfalse
valueVvalueNUMBER0

# Ausgänge

IDKürzelNameTypStandardBeschreibung
outputOoutputBOOLEANfalse
limit_exceededLlimit_exceededBOOLEANfalse

# Konfiguration

IDNameTypStandardEinheitBeschreibung
limitlimitNUMBER0.0
hysteresishysteresisNUMBER0.5

# Quellcode

Volang-Quellcode anzeigen
in = input::get("input")
value = input::get("value")
limit_exceeded = output::get("limit_exceeded")
limit = config::get("limit")
hysteresis = config::get("hysteresis")

new_limit_exceeded = false
if (limit >= 0) {
    // Positive limit: exceeded when value is too high
    if (value <= (limit - hysteresis)) {
        new_limit_exceeded = false
    } else if ((value > (limit - hysteresis)) and (value < (limit + hysteresis))) {
        new_limit_exceeded = limit_exceeded
    } else if (value >= (limit + hysteresis)) {
        new_limit_exceeded = true
    }
} else {
    // Negative limit: exceeded when value is too low (more negative)
    if (value >= (limit + hysteresis)) {
        new_limit_exceeded = false
    } else if ((value > (limit - hysteresis)) and (value < (limit + hysteresis))) {
        new_limit_exceeded = limit_exceeded
    } else if (value <= (limit - hysteresis)) {
        new_limit_exceeded = true
    }
}

output::set("limit_exceeded", new_limit_exceeded)
output::set("output", in and !new_limit_exceeded)
Erfahren Sie, wie der Logikbaustein Binary limiter funktioniert, wann Sie ihn einsetzen und wie Sie ihn in Ihrer Voldeno Smart-Home-Automatisierung konfigurieren.