entweder denke ich wieder mal zu kompliziert oder die Anzeigen von Grafana der Logik sind verwirrend.
Ich hoffe irgendwer kann mich in die richtige Richtung schubsen...
Aufgabenstellung:
Ich will bei einem FALSE auf einem Eingang nur ein FALSE auf dem Ausgang senden.
Bei TRUE soll nichts geschehen.
Dies wurde hier ja schon im Prinzip beschrieben: app.php/kb/viewarticle?a=97
Eine Aufzeichnung der Logik ergibt am Ausgang aber bei jedem Signalwechsel ein FALSE.
Stimmt hier die Anzeige nicht mit dem Ausgang überein, sodass eh bei einem Eingangswechsel auf TRUE gar kein FALSE auf den Ausgang gesendet wird?
Der 2. Schritt wäre dann eine Verzögerung des Ausgangssignals gegenüber des Eingangssignals.
=> Eingang ist FALSE => Verzögerung von 300s => Ausgang auf FALSE
=> Eingang auf TRUE => Nichts machen
Wiederholte FALSE auf dem Eingang hintereinander sollen funktionieren, auch wenn kein TRUE dazwischen am Eingang angekommen ist.
Wenn möglich möchte ich die ganze Logik in einem Logikbaustein haben.
Hätte deswegen probiert, es in eine Custom-Logik zu schreiben.
Leider habe ich da das Problem, dass durch den Multiplexer immer irgendein Wert geschrieben wird und es hier kein Nicht-Schreiben gibt.
Oder geht das schon?
Code: Alles auswählen
{
"Input":[
["Input","Input","$Input","c"],
["Time","Time","$Time","c"]
],
"Output":[
["Output","Output","$Output","c"]
],
"Level":[
["$Input","bool",false],
["$Time","float",0.0],
["$Output","bool",false],
["$Temp_Out","bool",false],
["$Monoflop_Out","bool",false],
["$TRUE","bool",true],
["$FALSE","bool",false]
],
"Module":[
["Monoflop","$Input","-$Input","$Monoflop_Out","$Time",2],
["And",["$Input","-$Monoflop_Out"],"$Temp_Out"],
["Multiplexer",[0,"$FALSE"],"$Output","$Temp_Out"]
]
}