Hallo,
ich habe mir vor einiger Zeit FHEM auf einem Raspberry PI installiert. Das funktioniert bisher super. Ich logge damit u.A. den Stromverbrauch von 2 Zählern. die Daten werden zyklisch in die Datenbank geschrieben. Ein einfacher Plot über die im FHEM eingebaute PLOT Funktion funktioniiert auch soweit. Nun hätte ich gerne eine etwas spezielle Darstellung:
Ich möchte gerne den Stromverbrauch über den Tag verteilt sehen. Also alle Datenbankwerte so zusammenfassen dass die 5 Minutenwerte jeweils zur gleichen Zeit am Tag als Min, Max und Mittelwert angezeigt werden. Es soll also ein individuelles Lastprofil erstellt werden. (ergänzt um die Min- und Maxwerte)
Gibt es dafür eine Lösung?
Ja.
statistics
LG
pah
Neben dem von pah gezeigten Weg gibt es speziell für Datenbankauswertungen das Modul DbRep.
Es gibt Erläuterungen im Wiki: https://wiki.fhem.de/wiki/DbRep_-_Reporting_und_Management_von_DbLog-Datenbankinhalten
bzw. auch sehr umfangreich in der Commandref: https://fhem.de/commandref_DE.html#DbRep
Speziell die von dir gewünschten Funktionen gibt es fertig. Sie heißen minValue, maxVaue und averageValue.
Du erstellst dir drei DbRep-Devices, parametrisierst sie entsprechend und führst sie mit einem At-Device zu der von die gewünschten Zeit aus.
Siehe auch: https://wiki.fhem.de/wiki/DbRep_-_Reporting_und_Management_von_DbLog-Datenbankinhalten#Speichern_von_Berechnungswerten_in_der_Datenbank_und_Erstellen_eines_Plots_.28ab_Version_7.5.1.29
Im Wiki gibt es auch ein Beispiel für eine umfangreiche PV-Anlagenauswertung. Dort kannst du die auch Anregungen holen: https://wiki.fhem.de/wiki/Datenbankgest%C3%BCtzte_Erstellung_der_Energiebilanz_einer_SMA_PV-Anlage_mit_%C3%9Cberschusseinspeisung
Noch eine Beispieldefinition eines DbRep welches das Minimum des Readings TotalConsumption des Devices
Dum.Energy mit dem "set <name> minValue" auswertet:
defmod PVReport.Min DbRep LogDB
attr PVReport.Min device Dum.Energy
attr PVReport.Min event-on-update-reading state
attr PVReport.Min fastStart 1
attr PVReport.Min reading TotalConsumption
attr PVReport.Min room DbLog
attr PVReport.Min showproctime 1
attr PVReport.Min timestamp_begin current_day_begin
attr PVReport.Min verbose 2
LogDB ist das DbLog-Device !!
Im Ergebnis gbt es das Reading:
2020-03-25_14-33-54__Dum.Energy__TotalConsumption__MIN__no_aggregation 238.5000
D.h. heute um 14:33 wurde der Minimalwert von 238,5 W Verbrauch aus der DB ermittelt.
Grüße,
Heiko