NEWS
[gelöst]Zeit zwischen Aktualisierung eines Datenpunktes ermitteln
-
gibt eine möglichkeit die Zeit zwischen der Aktakisierung eines Datenpunktes zu messen zu messen?
Hintergrund: mein s0-Impulsgeber zählt fortlaufend einen Datenpunkt hoch. Sowie ein Impus ermittelt wird wird dieser sofort an
iobroker weitergereicht. Ich möchte nun die Zeit zwischen den impulsen messen um einen Momentan-Verbrauch ermitteln zu können.
Der Generische Betriebsstundenzähler scheint dieses aber in der Form nicht vorzusehen.
Also würde ich versuchen dies über js-Skript zu lösen…
-
Wenn Du in JavaSchript einen Trigger anlegst auf den Datenpunkt bekommst Du dort in der Callback alle infos
on({id: 'meine ID', change:'any'}, function(data) { // in data.state.ts steht der aktuelle Timestamp // in data.oldState.ts steht der Timestamp der letzten Aktualisierung // Sind Zahlen in ms, also mit ... console.log(((data.state.ts-data.oldState.ts)/1000) + ' Sekunden seit letzter Aktualisierung'); });
-
es kann so einfach sein…
vielen dank, klappt wunderbar!
on({id: 'javascript.0.Stromzaehler.Normalstrom.Zaehlerstand_input', change:'any'}, function(data) { // in data.state.ts steht der aktuelle Timestamp // in data.oldState.ts steht der Timestamp der letzten Aktualisierung // Sind Zahlen in ms, also mit ... console.log(((data.state.ts-data.oldState.ts)/1000) + ' Sekunden seit letzter Aktualisierung'); setState("javascript.0.Stromzaehler.Normalstrom.Umdrehung_Zeit"/*Umdrehung_Zeit*/, ((data.state.ts-data.oldState.ts)/1000), true); });