statistics

Aus FHEMWiki
Wechseln zu: Navigation, Suche


statistics
Zweck / Funktion
Erzeugung von Verbrauchs-, und Wetterstatistiken
Allgemein
Typ Hilfsmodul
Details
Dokumentation EN / DE
Support (Forum) Unterstützende Dienste
Modulname 98_statistics.pm
Ersteller tupol (Forum )
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!


Das Modul statistics ist zur Erzeugung von diversen Statistiken gedacht. Es muss nur einmal definiert werden und kann mithilfe von Regexp auf beliebig viele Devices angewendet werden. Die Ergebnisse dieser Statistiken werden nicht im Modul selbst dargestellt, sondern den jeweiligen Devices als zusätzliches Reading hinzugefügt.

define

Bei der Definition werden die gewünschten Geräte angegeben, von denen das Modul Statistiken bilden soll.

define myStatDevice statistics Wetterstation|Stromzaehler|Thermometer_.* 

Optional ist noch die Angabe eines Prefixes möglich, wenn man nicht möchte, dass die Reading stat<ReadingName> heissen.


Attribute

Die Attribute sind soweit gut in der commandref/statisticsattr dokumentiert.

singularReadings

Bei Verwendung von singularReadings ist darauf zu achten, dass für das entsprechende Device die entsprechende Statistik entweder durch die standardmäßig vorgegebenen Gerätewerte oder durch durationReadings,deltaReadings,minAvgMaxReadings oder tendencyReadings definiert ist. Anderenfalls werden die singularReadings weder angelegt, noch mit Daten gefüllt. Um vom Reading Stromzaehler:total_energy singularReadings anzulegen, muss folgendes definiert werden. Dabei ist darauf zu achten, dass bei singularReadings an keiner Stelle ein Leerzeichen steht:

attr myStatDevice deltaReadings total_energy
attr myStatDevice singularReadings Stromzaehler:total_energy:Delta:Hour|Stromzaehler:total_energy:Delta:Day|Stromzaehler:total_energy:Delta:Month|Stromzaehler:total_energy:Delta:Year

ignoreDefaultAssignments

Mit diesem Attribut kann die Erkennung und Verwendung der standardmäßig eingebauten Readings unterdrückt werden. Zur Funktion ist es in diesem Fall notwendig, selbst Readings zu definieren.

tendencyReadings

Dieses Attribut erwartet eine durch Kommas getrennte Liste von weiteren Gerätewerten, für die innerhalb bestimmter Zeiträume (1h, 2h, 3h, 6h) die Differenz zwischen Anfangs- und Endwert ermittelt wird. Eine Kombination mit dem Attribut minAvgMaxReadings der gleichen Gerätewerte führt dazu, dass diese Readings nicht aktualisiert bzw. erstellt werden. Möchte man jedoch sowohl den Trend als auch die avg/min/max Werte für die gleichen Gerätewerte verwenden (z.B. für Temperatur / Druck), kann dies durch die Verwendung einer zweiten "statistics" Instanz umgangen werden.

Gerätewerte (Readings)

monitoredDevicesUnsupported

Listet Geräte, die vom statistics-Modul aufgrund des Namens bearbeitet werden, aber keine Readings enthalten, die statistisch ausgewertet werden können. In diesem Fall müssen die entsprechenden Readings per durationReadings, deltaReadings, tendencyReadings oder minAvgMaxReadings angelegt werden.

monitoredDevicesUnknown

Listet Geräte, für welches das statistics-Modul zwar statistische Daten vorhält, die aber nicht mehr in der Geräteliste (per RegExp der Modul-Definition) gefunden wurden. Dies kann z.B. durch eine Änderung des Gerätenamens, Wegfall des Gerätes oder Änderung der Definition des statistics-Moduls passiert sein.

Wenn die statistischen Daten nicht mehr benötigt werden, können sie gelöscht werden mit:

set <device> resetStatistics <Gerätename>

Hinweise zur Fehlersuche

Löschen der erzeugten statistischen Readings

Durch das Modul erzeugte Readings können durch den FHEM-Befehl deleteReading <device> <reading> wieder entfernt werden.

Events, Logs

Das Modul löst beim Schreiben der Last-Readings und der singularReadings jeweils ein Update-Event aus, welches auch zum Loggen dieser Werte genutzt werden kann. Wenn für die Geräte die event-on-Attribute nicht gesetzt sind, kann dies zu unerwünschten Nebenwirkungen führen. Z. B. bei den userreadings.

Die Aktualisierung der normalen statistischen Summary-Readings führt nicht zu einem Event, um die Systembelastung niedrig zu halten.