NEWS
[Gelöst] Problem mit timeout
-
@homoran sagte: nicht den logikblock nicht nehmen, sonder den Astroblock mit nicht
Das sollte keinen Unterschied machen.
@jojo58 sagte in Problem mit timeout:
beide BWM auf "wahr" stehen, wird das Licht wieder ausgeschaltet.
Dann werden die BWM nicht innerhalb der Verzögerungszeit aktualisiert. Man darf also nur verzögert ausschalten, wenn beide BWM false liefern.
-
@jojo58 sagte in Problem mit timeout:
Aber wie und wo baue ich den ein,
genau dort wo er jetzt steht.
bau mal zusätzliche debug-Blöcke mit sinnvollen Ausgaben an Entscheidungsstellen ein, um zu sehen wo und warum es hängt.
-
-
@jojo58 sagte in Problem mit timeout:
Oder gibt es noch einen anderen?
nee, den nicht.
den du verwendet hattest im Pulldown aufnicht zwischen
umstellen.
aber@paul53 sagte in Problem mit timeout:
Das sollte keinen Unterschied machen.
zu dem wie du es jetzt hast
-
@jojo58 sagte: beide BWM auf "wahr" stehen, wird das Licht wieder ausgeschaltet.
Versuche es mal so:
-
@homoran Okay, das mit dem "nicht zwischen" hab verstanden und geändert. Hat aber nichts geändert, Licht geht immer noch aus.
@paul53 Um deinen Vorschlag umzusetzen brauche ich etwas.Wie kann man den sinnvoll Debugblöcke einsetzen? Habe es jetzt mal probiert und an verschiedenen Stellen einen Debug reingesetzt, der den Wert des DP der geschaltet wird, zusammen mit einem Text ausgibt. Ist sowas gemeint?
-
-
@paul53 Was meinst du mit dem "falls sonst" ganz unten, was ist mit Objekt Licht gemeint?
-
@jojo58 sagte in Problem mit timeout:
was ist mit Objekt Licht gemeint?
dein lichtaktor
@jojo58 sagte in Problem mit timeout:
Was meinst du mit dem "falls sonst" ganz unten
wenn licht an, mach es aus
-
@jojo58 sagte: Was meinst du mit dem "falls sonst" ganz unten, was ist mit Objekt Licht gemeint?
Licht = einer von den beiden Datenpunkten "ON_SET", denn sie werden im Skript immer zusammen geschaltet. Am Tage soll nicht ständig das Licht ausgeschaltet werden, wenn es bereits aus ist.
-
@paul53 Dein Vorschlag hat einen ganz anderen Ansatz als ich es hatte. Ich war der Meinung das der Timeout beginnt und und die Zeit abgelaufen ist, werden die Lampen ausgeschaltet. Ändert sich der BWM zwischendurch und steht erneut auf wahr, stoppt der aktuelle Timeout und ein neuer beginnt. Also habe ich immer eine Nachlaufzeit von diesen 65 Sekunden nachdem beide BWM auf falsch stehen. So habe ich gedacht, aber das funktionierte ja nicht.
Bei deinem Blockly gehen die Lampen sofort aus, sobald beide BWM auf falsch stehen. Da gibt es keine Verzögerung mehr, also das Timeout greift nicht. Ich sehe das an den Debugblöcken, es wird immer nur der Erste "vor TimeOut Küche rechts" und der letzte "nach sonst falls" im Log angezeigt.
Das Problem das die Lampen sich immer abschalten ist weg, aber dafür greift der DP um die Lampen über Alexa oder VIS zu schalten, nicht mehr. Wenn ich die über Alexa einschalte, und dann in die Küche gehe und die BWM aktiviert werden, wird das Licht ausgeschaltet, sobald beide BWM auf falsch sind. Und das obwohl ich auf diesen DP prüfe. -
@jojo58 wenn du innerhalb von 65 sekunden 2x oder öfter ins sonst kommst, wird derselbe Timeout mehrfach gestartet.
Das darf nicht passieren, da ein stop timeout dann nicht mehr greift. -
@homoran Kann ich vor dem Start des Timeout ein weiteres stop timeout einsetzen? oder darf man keine 2 Stops verwenden? Wie kann ich das denn sonst abfangen?
-
@jojo58 sagte in Problem mit timeout:
Kann ich vor dem Start des Timeout ein weiteres stop timeout einsetzen?
solltest du sogar
-
@homoran Zweiter stop timeout st drin.
Ich prüfe ja auf BWM 1 - ODER - BWM 2 - UND - DP1 = falsch. Also nur wenn der BWM 1 aktiv ist, oder der BWM 2 aktiv ist und dann muss der DP1 auf falsch stehen, nur dann soll was gemacht werden. Geht das so nicht? Muss man da mit einem zusätzlichen Logikblock "Falls" arbeiten? Oder warum greift das bei mir nicht? -
@jojo58 Tipp:
bei und/oder mit der rechten Maustaste anklicken und auf externe Eingänge umschalten.
Dann wird es übersichlicher@jojo58 sagte in Problem mit timeout:
Ich prüfe ja auf BWM 1 - ODER - BWM 2 - UND - DP1 = falsch
so wie ich es sehe auf BWM1 ODER (BWM2 UND DP1=falsch)
-
@jojo58 sagte: Bei deinem Blockly gehen die Lampen sofort aus
Bei Deinem Blockly, das mit meinem Vorschlag wenig zu tun hat.
Außerdem muss auf "wurde geändert" getriggert werden, da sonst der Timeout mehrfach gestartet werden kann und dann nicht mehr gestoppt werden kann.Die BWM dürfen nur in der inneren falls-Prüfung ausgewertet werden!
-
@paul53 Wenn du damit sagen willst, ich wäre zu blöd dein Blockly nachzubauen, muss ich dir leider recht geben.
Den obersten falls Block mit "falls" manuell ein, habe ich jetzt erst gesehen. Sorry
@Homoran Du hattest mit dem und (und oder) auch recht. habe es geändert und jetzt funktioniert die Prüfung auch. Hätte ich, wie von @paul53 vorgeschlagen ganz am Anfang auf den manuellen DP geprüft, hätte ich mir das schenken können. Aber im Moment sieht alles gut aus, teste jetzt nochmal etwas.
Freu mich immer wenn ich was neues lerne und sogar begreife.
-
@jojo58 sagte: Aber im Moment sieht alles gut aus
Sieht es nicht. Das muss raus:
Damit wird ohne Verzögerung ausgeschaltet!
-
@paul53 Jetzt sollte es aber deinem Vorschlag entsprechen, oder hab ich noch Fehler drin?