NEWS
Blockly, für mich nicht verständlich
-
Moin,
ich habe seit ein paar Tagen einen Elektro-Scooter, den ich im Keller auflade. Dort habe ich ein Powerline und eine HS110 Steckdose. Da diese nicht nach Last triggert wie die Fritz, habe ich ein Script gebastelt. Es soll 5 Minuten jede Minute testen, ob der Stromverbrauch unter 100 liegt, dann die Steckdose ausschalten. Nun möchte ich nicht, dass das Script mehrfach läuft und Bedingung 1 erfüllt, Bedingung 2 erfüllt, Bedingung 1 erfüllt, Bedingung 2 erfüllt, Bedingung 3 erfüllt etc. durchspielt. Daher habe ich einen Datenpunkt true / false als Bedingung angelegt. Startet das Script einmal, wird der Datenpunkt auf true geändert und erst nach 10 Minuten, alternativ wenn alle Bedingungen durchgelaufen sind, wieder auf false gesetzt.
Soweit zum Aufbau. Leider wird das Script trotz allen Bedingungen mehrfach ausgeführt, was ich mir nicht mehr erklären kann.
Sieht jemand von Euch woran es liegt?
PS: Bitte nicht an "Waschmaschine" stören, Stecker hat neue Aufgaben erhalten
-
@PatrickFro
Bilder vom Blockly sind unklar.
Bitte größer .
Mach zwei Teile. -
@PatrickFro sagte:
Es soll 5 Minuten jede Minute testen, ob der Stromverbrauch unter 100 liegt, dann die Steckdose ausschalten.
Es ist nicht nötig, jede Minute zu testen. So sollte es ausreichen:
In Deinem Skript werden die Timeouts mehrfach gestartet, da sie nicht gestoppt werden.
-
@PatrickFro Alternativ gibt es in dem Thread dazu auch mehr Infos: https://forum.iobroker.net/topic/38363/gelöst-steckdose-nach-inaktivität-abschalten
-
@PatrickFro sagte in Blockly, für mich nicht verständlich:
Soweit zum Aufbau. Leider wird das Script trotz allen Bedingungen mehrfach ausgeführt, was ich mir nicht mehr erklären kann.
Ein Timeout sollte man auch immer stoppen, sonst laufen da wenn es dumm läuft sehr viel gleichzeitig, was eine Mehrfachausführung zur Folge haben kann. Da Du mit vielen Timeouts arbeitest und keinen stoppst wird es daran liegen.
Teste das Script von paul53, das sieht doch im Vergleich zu Deinem sehr übersichtlich aus und der einzige timeout wird auch gestoppt