Merker wenn ungleich 0
In bestimmten Situationen - z.B. wenn ein Virtueller Eingang manchmal keine Werte liefert - benötigt man den letzten nicht-0 Analogwert.
Das löst man mittels eines Analogwahlschalters, der den nicht-0 Wert als Ausgang hat und diesen neben dem eigentlichen Analogwert als Eingang hat. Der Eingang S (Auswahl der Analogwerte) wird dann gesetzt, wenn der Analogwert nicht 0 ist. Das kann entweder über einen "Ungleich" Baustein errechnet werden, oder - wenn Werte kleiner 1 (auch negative Werte) wie 0-Werte zu betrachten sind - durch Anlegen des Analogwertes.
Beispiel:
Das Elektroauto liefert, wenn es eine Internetverbindung hat, seinen state-of-charge, der via virtueller Eingang (soc_bms) abgefragt wird. Ohne Internetverbindung ist der state-of-charge am virtuellen Eingang 0. last_soc soll den letzten Wert >= 1% enthalten (bei soc_bms gibt es keine negativen Werte und Werte unter 1% treten in der Praxis de-facto nie auf).
Siehe auch
Änderung eines Wertes erkennen