event-aggregator
An dieser Seite wird momentan noch gearbeitet. |
Mit dem Attribut event-aggregator können (nach Wunsch zeitlich gewichtete) Durchschnittswerte, Minima, Maxima, etc. berechnet werden.
Der "Median" kann hilfreich sein, um Messwerte mit Ausreissern (unsinnige Werte, z.B. durch Übertragungsfehler) zu "glätten".
Syntax
Das event-aggregator Attribut wird in der folgenden Weise spezifiziert:
attr <device> event-aggregator reading:interval:method:function:holdTime
Die einzelnen Teile haben folgende Bedeutung:
reading
Das zu bearbeitende Reading des aktuellen Gerätes. Wichtig zu bedenken: es kann immer nur einen event-aggregator pro Reading geben. Will man daher mehrere Werte (z.B. min, max, avg), muss man das Reading erst duplizieren (z.B. mit userReadings oder notify). Kann als regulärer Ausdruck angegeben werden (bsp. .*_rain.*)
interval
Updates des <readings> werden ignoriert, Events werden für mindestens <interval> Sekunden unterdrückt.
Nach der blackout-periode wird das reading mit einem Wert upgedated, der sich aus den Werten und Zeitstempeln der vorher ignorierten Updates zusammensetzt.
method
betrifft die Gewichtung nach Zeitintervallen
none
: keine zeitliche Gewichtungconst
: Annahme, dass zwischen den zwei Messpunkten keine Veränderung stattgefunden hatlinear
: Annahme, dass der Wert sich zwischen zwei Messpunkten linear verändert hat.
function
count
Anzahlmin
Minimummax
Maximummean
artihmetischer Mittelwertsd
Standardabweichungintegral
Summe (falls holdTime nicht angegeben) oder Integral für den Zeitraum holdTimemedian
Median (nur für methodnone
und gesetzte holdTime) - im Gegensatz zum Mittelwert nicht anfällig für Ausreisser, hilfreich bei Sensoren mit sporadisch unsinnigen Messwerten
holdTime
Zeitfenster in Sekunden, für die die vergangenen Werte gehalten werden, um die Aggregatfunktion zu berechnen.
Wechselwirkungen
- keine bekannt -
Beispiele
- aus der commandref/Event-aggregator
attr myPowerMeter event-aggregator EP_POWER_METER:300:linear:mean,EP_ENERGY_METER:300:none:v attr myBadSensor event-aggregator TEMP::none:median:300 attr mySunMeter event-aggregator SUN_INTENSITY_24H::const:integral:86400
Siehe auch
Links
- Benutzungstipps (Best Practice) für das Attribut in diesem Forenthread