NEWS
Blockly mit "falls kleiner als" funktioniert nicht
-
Guten Morgen,
ich weiß nicht mehr weiter. Ich wollte ein Blockly, das mir, falls die Wattzahl 10 Minuten unter 10 W liegt, eine Pushover Nachricht schickt. Eigentlich recht simpel. Trigger auf den Alias Datenpunkt der den Wert hat, dann Abfrage wenn Wert unter 10 und vorheriger Wert über 10, dann starte einen Intervall der jede Minute die Variable "Minuten_unter_10_W" um 1 erhöht. Falls der Wert der Variablen bei 10 ankommt, sende die Nachricht. So weit alles richtig, oder hab ich da schon einen Denkfehler?
Es funktioniert einfach nicht. Ich habe schon die Abfrage nach dem vorherigen Wert rausgenommen, aber egal wie, nach dem "falls Wert < 10" kommen einfach keine Daten an. Der Intervall wird nie gestartet.
Im Screenshot ist zu sehen, das Wert sich ständig ändert und der Trigger okay ist, aber das war es auch. Ich habe auch schon den "sonst" Teil rausgenommen, war auch egal. Brauch ich den "sonst" überhaupt?Zur Info, ich verwende Javascript Adapter v8.6.0
Gruß, Johannes
-
@jojo58 sagte: Wert unter 10 und vorheriger Wert über 10, dann starte einen Intervall der jede Minute die Variable "Minuten_unter_10_W" um 1 erhöht.
Prinzip:
-
Ja fast, du meinst aber wahrscheinlich bei "vorheriger Wert" "kleiner/gleich" und nicht nochmal "größer 10", oder?
Ich hatte auch vergessen zu erwähnen, das sich die Werte alle paar Sekunden ändern, das können 10, 3, 6 oder auch 15 Sekunden sein. Die Werte liegen dann immer zwischen 5 und 6 Watt.
-
Ich hab das ganze Blockly gelöscht und habe nochmal von vorne angefangen, jetzt bekomme ich auch einen Debug Output nach dem "falls" und dem "sonst falls". Scheinbar hatte hatte sich in dem vorherigen Blockly irgendwas verhakt, so das es nicht wollte. Ich teste das jetzt noch mit Pushover Meldung und setzen den Thread dann, falls es funktioniert, auf erledigt. Ansonsten melde ich mich wieder.
Danke für deine kürzere Version des Blocklys
Johannes
-
@jojo58 sagte: du meinst aber wahrscheinlich bei "vorheriger Wert" "kleiner/gleich" und nicht nochmal "größer 10", oder?
Nein, genau so wie gezeigt: Wert < 10 (sonst) UND vorheriger Wert >= 10.
-
Jetzt bin ich verwirrt, in deinem Screenshot gibt es kein "<" und auch keinen UND Block.
-
@jojo58 sagte in Blockly mit "falls kleiner als" funktioniert nicht:
Jetzt bin ich verwirrt, in deinem Screenshot gibt es kein "<" und auch keinen UND Block.
sonst falls vorheriger Wert >=xxx
impliziert dass der aktuelle Wert < xxx sein muss -