FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: mb am 01 Januar 2015, 14:33:37

Titel: LaCrosse: Temperatur Updates nur wenn Änderung
Beitrag von: mb am 01 Januar 2015, 14:33:37
Hallo zusammen,

seit ein paar Wochen beschäftige ich mich nun mit FHEM und verstehe langsam immer mehr.

Seit Vorgestern habe ich nun neues Spielzeug in Form von vier Technoline TX29DTH Temperatur- & Luftfeuchtigkeitssensoren.
Heute morgen habe ich gemerkt das die SVG-Plots tierische lange brauchen bis diese dargestellt werden. Die Senden ja auch alle 4 Sekunden. Es gibt also ewig lange Logfiles die mein Raspberry Pi verarbeiten muss. Ich habe mir daher gedacht nur noch alle 60 Sekunden die Werte zu loggen und auch nur dann wenn es Änderungen gibt.
Das soll dazu führen das die SVG-Plots wieder schnell angezeigt werden, weil nur wenige Events ausgewertet werden müssen.
>> Wenn es für dieses Problem auch andere Lösungen gibt, ich bin offen für alles ;)


Folgendes ist konfiguriert:

event-min-interval temperature:60,humidity:60,dewpoint:60,battery:3600
event-on-update-reading temperature,humidity,dewpoint


Aber ich finde im Log minütlich Einträge, obwohl die Werte unverändert sind:
2015-01-01_13:54:08 LaCrosse_39 temperature: 19.8
2015-01-01_13:54:08 LaCrosse_39 humidity: 54
2015-01-01_13:54:08 LaCrosse_39 dewpoint: 10.2
2015-01-01_13:55:11 LaCrosse_39 temperature: 19.8
2015-01-01_13:55:11 LaCrosse_39 humidity: 54
2015-01-01_13:55:11 LaCrosse_39 dewpoint: 10.2
2015-01-01_13:56:13 LaCrosse_39 temperature: 19.8
2015-01-01_13:56:13 LaCrosse_39 humidity: 54
2015-01-01_13:56:13 LaCrosse_39 dewpoint: 10.2
2015-01-01_13:57:15 LaCrosse_39 temperature: 19.8
2015-01-01_13:57:15 LaCrosse_39 humidity: 54
2015-01-01_13:57:15 LaCrosse_39 dewpoint: 10.2
2015-01-01_13:58:17 LaCrosse_39 temperature: 19.8
2015-01-01_13:58:17 LaCrosse_39 humidity: 54
2015-01-01_13:58:17 LaCrosse_39 dewpoint: 10.2
2015-01-01_13:59:20 LaCrosse_39 temperature: 19.8
2015-01-01_13:59:20 LaCrosse_39 humidity: 54
2015-01-01_13:59:20 LaCrosse_39 dewpoint: 10.2
2015-01-01_14:00:22 LaCrosse_39 temperature: 19.8
2015-01-01_14:00:22 LaCrosse_39 humidity: 54
2015-01-01_14:00:22 LaCrosse_39 dewpoint: 10.2


Es passiert also nicht das was ich erwarte und ich frage mich warum.
Den ich verstehe die Konfiguration wie folgt:

event-min-interval temperature:60,humidity:60,dewpoint:60,battery:3600
event-on-update-reading temperature,humidity,dewpoint


- Alle 60 Sekunden (ausgenommen Batterie) die Werte empfangen
- Update nur wenn die Werte sich verändert haben

Das klappt so leider nicht und ich frage mich woran das liegt.
Kann mir bitte jemand einen Tipp geben?

Vielen Dank
Mark
Titel: Antw:LaCrosse: Temperatur Updates nur wenn Änderung
Beitrag von: karl0123 am 01 Januar 2015, 14:51:22
event-on-change-reading
Titel: Antw:LaCrosse: Temperatur Updates nur wenn Änderung
Beitrag von: mb am 01 Januar 2015, 15:30:21
Danke für den schnellen Tipp. Ich hab es jetzt mal wie folgt konfiguriert:

event-min-interval >> temperature:60,humidity:60,dewpoint:60
event-on-change-reading >> temperature,humidity,dewpoint



Leider werden immer noch Events geschrieben obwohl 60 Sekunden noch nicht vorbei sind und vorallem es keine sind Änderungen gab:

2015-01-01_15:20:14 LaCrosse_39 temperature: 20.8
2015-01-01_15:20:14 LaCrosse_39 dewpoint: 10.9
2015-01-01_15:20:49 LaCrosse_39 humidity: 53
2015-01-01_15:20:49 LaCrosse_39 dewpoint: 10.9
2015-01-01_15:21:16 LaCrosse_39 temperature: 20.8
2015-01-01_15:21:16 LaCrosse_39 dewpoint: 10.9
2015-01-01_15:21:52 LaCrosse_39 humidity: 53
2015-01-01_15:21:52 LaCrosse_39 dewpoint: 10.9
2015-01-01_15:22:18 LaCrosse_39 temperature: 20.8
2015-01-01_15:22:18 LaCrosse_39 dewpoint: 10.9
2015-01-01_15:22:54 LaCrosse_39 temperature: 20.7
2015-01-01_15:22:54 LaCrosse_39 humidity: 53
2015-01-01_15:22:54 LaCrosse_39 dewpoint: 10.8
2015-01-01_15:22:58 LaCrosse_39 temperature: 20.8
2015-01-01_15:22:58 LaCrosse_39 dewpoint: 10.9
2015-01-01_15:23:03 LaCrosse_39 temperature: 20.7
2015-01-01_15:23:03 LaCrosse_39 dewpoint: 10.8

Muss ich diese beiden Attribute irgendwie miteinander verknüpfen?
Bsp.: Wenn 60 Sekunden vorbei UND EIN WERT VON temperature,dewpoint,humidity IST VERÄNDERT, DANN EVENT SCHREIBEN.
Titel: Antw:LaCrosse: Temperatur Updates nur wenn Änderung
Beitrag von: Joachim am 01 Januar 2015, 17:13:27
Moinmb,

Welches Modul liefert den dewpoint?

ansonsten funktioniert alles so, wie es soll:
2015-01-01_15:20:14 LaCrosse_39 temperature: 20.8
2015-01-01_15:21:16 LaCrosse_39 temperature: 20.8 --> letzter Eintrag länger als 1 Minute her, event-min-interval zieht
2015-01-01_15:22:18 LaCrosse_39 temperature: 20.8 --> letzter Eintrag länger als 1 Minute her, event-min-interval zieht
2015-01-01_15:22:54 LaCrosse_39 temperature: 20.7 --> Wert hat sich geändert! event-on-change-reading zieht
2015-01-01_15:22:58 LaCrosse_39 temperature: 20.8 --> Wert hat sich geändert! event-on-change-reading zieht
2015-01-01_15:23:03 LaCrosse_39 temperature: 20.7 --> Wert hat sich geändert! event-on-change-reading zieht
bei humidity genauso.

Dewpoint über das dewpoint modul ist etwas anders, es wird unabhängig der dewpoint erzeugt, wenn innerhalb einer Minute temperature und humidity geliefert werden.

gruß Joachim
Titel: Antw:LaCrosse: Temperatur Updates nur wenn Änderung
Beitrag von: mb am 01 Januar 2015, 18:09:18
Hallo Joachim,

dann habe ich nur ein falschen Verständnis vom erzeugen der Events gehabt.
Dann werde ich gleich mal rumspielen damit ich nur bei Änderungen Events bekomme um weitere Events einzusparen.

Der dewpoint generiere ich wie folgt, habe das einem Blog entnommen:

#Taupunkt definieren START
define dew_state dewpoint dewpoint .* T H D
attr dew_state room Temperaturen
define dew_all dewpoint dewpoint .* temperature humidity dewpoint
attr dew_all room Temperaturen
#Taupunkt definieren ENDE


Gruß
Mark
Titel: Antw:LaCrosse: Temperatur Updates nur wenn Änderung
Beitrag von: mb am 01 Januar 2015, 18:55:52
Hab es jetzt wie folgt konfiguriert und werde das mal testen. Sieht bisher gut aus:

event-on-change-reading >> temperature:0.1,humidity:2,dewpoint:1

Danke für die Tipps.