Ein herzerfrischendes "Moin" vom "Hintern-Deich" vorweg
Ich möchte mittels Userreading ein neues Reading erzeugen, welches mir den Tagesverbrauchswert angibt.
Dazu soll das Userreading den augeblicklichen Wert nehmen und davon den ersten Wert des aktuellen Tages (Kurz nach Mitternacht) abziehen.
Im unteren Code soll der gefragte Teil-Code bei "xxx" stehen
attr CH_ElectricityCounter userReadings E-Energy-Day_kWh {sprintf("%.1f",(ReadingsVal("CH_ElectricityCounter","energy","???")-xxx)/1000)}
Ich bin sicher ich sehe mal wieder den Wald vor lauter Bäumen nicht.
Danke
Sailor
ich würde das statisticsmodul verwenden. damit sollte man ein reading für die tagessumme bekommen können.
alternativ könntest du ein zweites userreading "firstValue" anlegen, dass dir jeweils den ersten wert des tages bereitstellt. raussuchen würde ja sonst bedeuten, dass du ständig in einem filelog suchen müsstest. dazu würde ich den aktuellen timestamp mit dem timestamp von "firstValue" vergleichen. sobald sich das datum ändert wird firstValue aktualisiert.
Wäre da nicht das Statistics-Modul ideal dafür? Da hast dann auch gleich Monats- und Jahresverbrauch.
lg, Ici
Ich bin auch der Meinung, dass das Statistics-Modul ideal dafür ist.
Das mit dem Statistic Modul habe ich ja auch schon gefunden, aber leider spukt dieses selbst mit dem Attribut
attr CH_ElectricityCounterStatistics singularReadings CH_ElectricityCounter:energy:Delta:Day
oder
attr CH_ElectricityCounterStatistics singularReadings energy:Delta:Day
Immer nur den absoluten "energy" Wert aus und nicht den um Mitternacht auf "0" zurueckgesetzten
Gruss
Sailor