FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Edi77 am 28 September 2017, 00:56:15

Titel: event-on-change-reading und S7
Beitrag von: Edi77 am 28 September 2017, 00:56:15
Ich habe an einer Logo 0ba7 2 Temperatursensoren
Trotz "event-min-interval 60" wird bei jeder Änderung ein Eintrag in das Logfile geschrieben

Gibt es eine Möglichkeit mit event-on-Change-reading das man z.B. erst bei z.B. +/- 1C und nicht immer bei +/- 0.01 Änderung ein Eintrag in das Logfile zu machen?

Titel: Antw:event-on-change-reading und S7
Beitrag von: pc1246 am 28 September 2017, 07:11:21
Moin Edi
Mein Verstaendniss war bisher immer so, dass mit event_on_change_reading das zyklische gelogge unterbunden wird. Mit dem min_intervall wird dann ein Eintrag erzeugt, auch ohne Aenderung. Bei Dir ist es aber andersherum, Deine Temperatur ist auf 0,01°C genau, und dementsprechend schwankt/aendert Sie sich auch. Ich wuerde Dir vorschlagen, da Dir 1°C genau genug sind, Deinen Temperaturwert in der Logo um die Kommastellen zu beschneiden, zumindest fuers Log und dann die entsprechenden Einstellungen machen!
Gruss Chrsitoph
Titel: Antw:event-on-change-reading und S7
Beitrag von: Wzut am 28 September 2017, 07:20:15
wie so oft schafft ein Blick in die commandref Klarheit :
Zitatevent-on-change-reading
The attribute takes a comma-separated list of readings. You may use regular expressions in that list. If set, only changes of the listed readings create events. In other words, if a reading listed here is updated with the new value identical to the old value, no event is created. If an optional [:threshold] is given after a reading name events are only generated if the change is >= threshold.
d.h. attr <name> event-on-change-reading temperature:1
Titel: Antw:event-on-change-reading und S7
Beitrag von: Edi77 am 28 September 2017, 09:13:28
DANKE @Wzut

@pc1246
Ich benötige im Log nur 1C Genauigkeit, aber für andere Berechnungen 0.1C daher die Unterscheidung.

Das was ich so seltsam finde ist das "event-min-interval 60" nicht greift, und er trotzdem weiter bei jeder Änderung einen Eintrag macht.
Titel: Antw:event-on-change-reading und S7
Beitrag von: Wzut am 28 September 2017, 09:39:47
Zitatevent-min-interval
This attribute takes a comma-separated list of reading:minInterval pairs. You may use regular expressions for reading. Events will only be generated, if at least minInterval seconds elapsed since the last reading of the matched type. If event-on-change-reading is also specified, they are combined with OR: if one of them is true, the event is generated.
beachte das OR :)
Titel: Antw:event-on-change-reading und S7
Beitrag von: pc1246 am 28 September 2017, 10:24:00
Hallo
Es bleibt immer wieder spannend! Da Lesen ja bekanntlich unsportlich ist, hatte ich mal wieder nur Halbwissen. Das mit dem treshold ist eine coole Sache.
Zum Glueck lag ich ja nicht ganz falsch!
Gruss Christoph
Titel: Antw:event-on-change-reading und S7
Beitrag von: Edi77 am 29 September 2017, 17:02:56
Das mit dem "OR" habe ich auch schon gelesen, weil es mir schon bewusst war, entweder nach spätestens 60 Sek. oder nach einer Änderung.
Ich hatte auch mal das event-on-Change-reading gelöscht und nur noch event-min-interval drin, und trotzdem kam alle 5 - 15 Sek. ein Eintrag weil der Wert sich um 0.3C geändert hat.
Das finde ich ja so seltsam!
Titel: Antw:event-on-change-reading und S7
Beitrag von: Wzut am 29 September 2017, 22:34:39
wie sah denn dein attr <name> event-min-interval  aus ?
Und klappt es denn wenigstens wenn event-on-Change-reading alleine mit :Wert definiert ist ?
Titel: Antw:event-on-change-reading und S7
Beitrag von: Edi77 am 30 September 2017, 19:36:07
Hallo


define Heizung_Temp S7_ARead db 1 2 s16
attr Heizung_Temp IODev Logo124
attr Heizung_Temp event-on-change-reading state
attr Heizung_Temp room LOGO124
define FileLog_Heizung_Temp FileLog ./log/Heizung_Temp-%Y.log Heizung_Temp
attr FileLog_Heizung_Temp logtype text
attr FileLog_Heizung_Temp room LOGO124
define SVG_FileLog_Heizung_Temp_1 SVG FileLog_Heizung_Temp:SVG_FileLog_Heizung_Temp_1:CURRENT
attr SVG_FileLog_Heizung_Temp_1 label "Heizung_Temp Min $data{min1}, Max $data{max1}, Last $data{currval1}"
attr SVG_FileLog_Heizung_Temp_1 room LOGO124


Wenn ich es in

attr Heizung_Temp event-on-change-reading state:5

ändere wird nichts mehr ins log geschrieben
Titel: Antw:event-on-change-reading und S7
Beitrag von: Wzut am 01 Oktober 2017, 14:17:49
hmm, ich kenne dein Modul S7_ARead nicht. Hat das keine anderen Readings ausser state ?
Bzw. kein eigenes Reading mit deinem Temperaturwert ? Wenn nein, leg dir doch mal zum Test ein userReadings an:
attr Heizung_Temp userReadings temperature { return ReadingsNum($name,"state",0);}
dann ändere attr Heizung_Temp auf event-on-change-reading temperature:5
Schaut das im Log nun besser aus ?
ich würde mich auch ersteinmal nicht so auf das Log versteifen, hast du mal im Event Montor einen Filter auf Heizung_Temp.* gesetzt und den eine Weile beobachtet ?
Titel: Antw:event-on-change-reading und S7
Beitrag von: nuccleon am 28 November 2017, 20:01:57
siehe https://forum.fhem.de/index.php/topic,80055.msg721213.html#msg721213 (https://forum.fhem.de/index.php/topic,80055.msg721213.html#msg721213)
Das S7 Modul hat hinsichtlich :threshold einen Bug