NEWS
Wenn sich ein Wert länger nicht geändert hat
-
Hi,
ich habe mehrere Xiaomi Plant Sensoren im Einsatz.
Jetzt möchte ich, wenn ein Wert sich über längere Zeit nicht geändert hat, das Störung_an true erhält.
Die Sensoren sind zwar gut, aber man hat keine Möglichkeit den Batteriestaus abzufragen. Gerne fallen die auch mal einfach so ausIn diesem Fall nutze ich einen Bewegungsmelder als Trigger und IIIuminace als zu überwachenden Wert.
Als timeout habe ich zum testen 2 Minuten genommen, sollen später 24 Std sein. Also 1440 Minuten.
Liege ich da mit dem Script so richtig ?
-
@achim55 Ich hab es jetzt mal geändert und wenn der Sensor erreichbar ist erhalte ich ein diff0.
Je nach dem wie lange er nicht erreichbar ist, erhöht sich der Wert in ms.Weiß einer warum Störung_an immer mit true geschaltet wird obwohl diff0 ist ? der soll doch nur auf true gehen wenn ms höher oder gleich 2 ist.
-
@achim55 sagte: obwohl diff0 ist ?
Auch 5000 ms ergeben diff0, denn Minuten werden erst bei mind. 60000 ms > 0.
@achim55 sagte in Wenn sich ein Wert länger nicht geändert hat:
sollen später 24 Std sein. Also 1440 Minuten.
Bei so langen Zeiten sollte man kein Timeout verwenden, sondern den Zeitstempel abfragen. Etwa so:
-
Kannst Du mir Hilfestellung geben wie ich das machen muss ?
Bin nicht so fit darin was Zeiten angeht. -
@achim55 sagte: wie ich das machen muss ?
Habe gerade ein Blockly oben ergänzt.
-
okay und danke. Es wir mir jetzt in Stunden 3746395 geschrieben und bei Restzeit steht true.
Heißt das wenn der Sensor 24 Std. nicht erreichbare ist das dann der Wert von true auf false wechselt ? -
@achim55 sagte: Es wir mir jetzt in Stunden 3746395 geschrieben
Nicht + 3600000, sondern / 3600000 (1 h = 3600000 ms)!