Syntax | ["Monoflop","$Set","$Reset","$OutB","$Time", SetOption] ; somit bspw. wie folgt:
["Monoflop","$SetSystem", 0, 0,"$Z5",2]
|
---|
Funktion | Dient als Verzögerungs- oder als Timerfunktion: sofern beim Ausführen des Modulbausteins die Schalterbedingung erfüllt sind, wird |
---|
Eingänge | "$Set" (bool): Löst die Ausführung aus.
"$Reset" (bool): Setzt den Timer zurück; ein erneutes Starten ist erst möglich,
"$Time" (float): Verzögerungszeit in Sekunden
SetOption (integer): Zahl [0-7 ], welche die Funktionsweise festlegt:
0 : Timer startet pegelgesteuert (d.h. sofern "$Set" = TRUE ist) und ist nicht erneut startbar.
1 : Timer startet pegelgesteuert (d.h. sofern "$Set" = TRUE ist) und ist erneut startbar.
2 : Timer wird nur bei steigender Flanke ausgelöst und ist nicht erneut startbar.
3 : Timer wird nur bei steigender Flanke ausgelöst und ist erneut startbar.
4 : Timer wird nur bei fallender Flanke ausgelöst und ist nicht erneut startbar.
5 : Timer wird nur bei fallender Flanke ausgelöst und ist erneut startbar;
6 : Timer wird bei beiden Flanken ausgelöst und ist nicht erneut startbar.
7 : Timer wird bei beiden Flanken ausgelöst und ist erneut startbar.
|
---|
Ausgänge | |
---|
Hinweise | Bei der Erläuterung der Schalteroption meint “erneut startbar”, dass ein bereits laufender Timer über den Eingang "$Set" angehalten und neu gestartet werden kann, d.h. das die Restlaufzeit des Timers zurückgesetzt wird; “nicht erneut startbar”, dass der Timer über den Eingang "$Set" bloss gestartet wird, wenn er nicht bereits schon lief; ansonsten wird die Restlaufzeit nicht zurückgesetzt und der Modulbaustein nicht neu gestartet; “pegelgesteuert”, dass der Zustand (TRUE) des Eingangs für die Auslösung des Timers massgeblich ist; “fallende Flanke”, dass der Wechsel des Zustand von TRUE auf FALSE am Eingang für die Auslösung des Timers massgeblich ist; “steigende Flanke”, dass der Wechsel des Zustand von FALSE auf TRUE am Eingang für die Auslösung des Timers massgeblich ist; “beide Flanken”, dass jeder Wechsel des Zustand am Eingang für die Auslösung des Timers massgeblich ist.
Eine sehr instruktive Veranschaulichung des Verhaltens bietet das Dokument https://forum.timberwolf.io/download/file.php?id=771; dort wird das Verhalten der verschiedenen Timer grafisch aufgezeigt. (Hinweis: Die Variablenbezeichnung in der Veranschaulichung entspricht nicht allen Teilen diesem Text).
|
---|
Praktische Anwendungsbeispiele | Kann beispielsweise für eine Ein- und Ausschaltverzögerung verwendet werden. Impuls auf steigende Flanke (Reset-Eingang wird aus Set-Eingang erzeugt):
["Monoflop","$In","-$In","$Out", "$Time",2] → "$Out" aktiv, bis "$Time" abgelaufen oder "$In" zurückgesetzt wird. Einschaltverzögerung - steigende Flanke (Reset-Eingang wird aus Set-Eingang erzeugt):
["Monoflop","$In","-$In","$Monoflop_Out","$Time",2]
["And",["$In","-$Monoflop_Out"],"$Out"] → "$Out" aktiv, nachdem "$Time" abgelaufen und "$In" noch aktiv. Ausschaltverzögerung - fallende Flanke (Reset-Eingang wird aus Set-Eingang erzeugt):
["Monoflop","$In","$In","$Monoflop_Out","$Time",4]
["Or",["$In","-$Monoflop_Out"],"$Out"] → "$Out" aktiv, sobald "$In" aktiv und bis "$Time" abgelaufen.
|
---|
Entsprechendes Logik-Modul | |
---|