So, ich glaub ich habe das Problem jetzt erkannt!
Nochmal die Testeinstellungen:
5s Einschaltverzögerung
10s Ausschaltverzögerung
Wenn man nach durchschalten der Einschaltverzögerung, länger als die Zeit der Einschaltverzögerung (5s) ausschaltet und dann wieder ein, passiert folgendes: Die Einschaltverzögerung startet ihre 5s von vorne und die Ausschaltverzögerung läuft mit kleiner 5s aus.
Dann kann das Oder-Modul (Einschaltverzögerung oder Ausschaltverzögerung) kurzzeitig nicht mehr den Ausgang schalten. Es gibt eine Unterbrechung bis der erste Timer wieder durchgeschaltet hat.
Ich habe mehrere Varianten versucht, um das Verhalten zu ändern. Am Ende habe ich ein RS-Flip Flop eingefügt und speichere damit die Einschaltverzögerung.
Hier meine angepasste Lösung:
Code: Alles auswählen
{
"Level":[
["$In","bool",false],
["$dT_ON","float",0],
["$dT_OFF","float",0],
["$Out","bool",false],
["$Limit_ON","bool",false],
["$Delayed_ON","bool",false],
["$Delayed_ON_Save","bool",false],
["$Extend_ON","bool",false],
["$Extend_ON2","bool",false],
["$BMultiplex_Erg","int",0],
["$Reset_Multiplexer","bool",false],
["$DauerFalse","bool",false],
["$VAR<Inhibit?>","bool",false]
],
"Module":[
["Break",["$VAR<Inhibit?>"]],
["Monoflop","$In","-$In","$Limit_ON","$dT_ON",2],
["And",["$In","-$Limit_ON"],"$Delayed_ON"],
["Monoflop","$Delayed_ON","$Delayed_ON","$Extend_ON","$dT_OFF",4],
["And",["-$Delayed_ON","-$Extend_ON","-$In"],"$Reset_Multiplexer"],
["BinaryMultiplexer",["$Delayed_ON","$Reset_Multiplexer"],"$BMultiplex_Erg"],
["Multiplexer",["$Out","-$DauerFalse","$DauerFalse"],"$Out","$BMultiplex_Erg"]
],
"Input":[
["In","Eingang","$In","c"],
["dT_Ein","Einschaltverzögerung[s]","$dT_ON","c"],
["dT_Aus","Ausschaltverzögerung[s]","$dT_OFF","c"],
["Inhibit","INHIBIT","$VAR<Inhibit?>","u"]
],
"Output":[
["Out","Ausgang","$Out","c"]
]
}
@S. Kolbinger Hast du da eine elegantere Lösung im Kopf oder kann man das so machen? Möchte hiermit die Helligkeit für die Beschattung entsprechend verzögern.
Viele Grüße
Alan