FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: chunter1 am 08 November 2016, 14:11:48

Titel: Zeitdifferenz in Minuten berechnen?
Beitrag von: chunter1 am 08 November 2016, 14:11:48
Hi,

ich bräuchte Hilfe beim Errechnen der Zeitdifferenz in Minuten aus der aktuellen Uhrzeit und einem dummy.
Mit folgendem Code bekomme ich zwar die Differenz, allerdings nur in Stunden.


{substr(TimeNow(),11,5)-ReadingsVal("Schaltzeit","state",0)}


Danke
ch
Titel: Antw:Zeitdifferenz in Minuten berechnen?
Beitrag von: Benni am 08 November 2016, 14:24:06
Dafür kannst du die Funktion ReadingsAge benutzen:


ReadingsAge(<deviceName>,<readingName>,<defaultValue>)


Also in deinem Fall bspw. so:


ReadingsAge('Schaltzeit','state',0)
Titel: Antw:Zeitdifferenz in Minuten berechnen?
Beitrag von: kumue am 08 November 2016, 14:43:22
Zitat von: Benni am 08 November 2016, 14:24:06
Dafür kannst du die Funktion ReadingsAge benutzen:


ReadingsAge(<deviceName>,<readingName>,<defaultValue>)


Also in deinem Fall bspw. so:


ReadingsAge('Schaltzeit','state',0)


so wie ich chunter1 verstehe, will er Folgendes erreichen:

Ich lege jetzt einen Dummy an und gebe ihm den Wert/state 08:15
Die akt. Uhrzeit ist 14.15, somit die Differenz 6h = 480min.

Die Funktion ReadingsAge() gibt die Dauer in Sekunden seit der letzten Aktualisierung des Readings.
Würde dann nicht passen...

Vielleicht liege ich aber auch falsch...
Mal schauen, was chunter1 antwortet
Titel: Antw:Zeitdifferenz in Minuten berechnen?
Beitrag von: chunter1 am 08 November 2016, 14:46:41
Zitat von: kumue am 08 November 2016, 14:43:22
so wie ich chunter1 verstehe, will er Folgendes erreichen:

Ich lege jetzt einen Dummy an und gebe ihm den Wert/state 08:15
Die akt. Uhrzeit ist 14.15, somit die Differenz 6h = 480min.

Die Funktion ReadingsAge() gibt die Dauer in Sekunden seit der letzten Aktualisierung des Readings.
Würde dann nicht passen...

Vielleicht liege ich aber auch falsch...
Mal schauen, was chunter1 antwortet

genau so hab ich es gemeint
Titel: Antw:Zeitdifferenz in Minuten berechnen?
Beitrag von: chunter1 am 08 November 2016, 14:55:37
Habs jetzt vorerst so implementiert.
Elegantere/korrekte Umsetzungen sind aber herzlich willkommen ;)


{my $diff=(substr(ReadingsVal("Schaltzeit","state",0),0,2)*60+substr(ReadingsVal("Schaltzeit","state",0),3,2))-(substr(TimeNow(),11,2)*60+substr(TimeNow(),14,2))}