FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: kaktus567 am 14 Februar 2016, 09:58:43

Titel: event-on-change / Schwellwert dynamisch ändern
Beitrag von: kaktus567 am 14 Februar 2016, 09:58:43
@CoolTux: und tschüss, mich nervst Du nicht mehr  ;D ;D ;D :o :o :o
Titel: Antw:event-on-change / Schwellwert dynamisch ändern
Beitrag von: marvin78 am 14 Februar 2016, 10:08:05
notify auf temp_c und dann

attr DEVICE event-on-change-reading temp_c:WERT
Titel: Antw:event-on-change / Schwellwert dynamisch ändern
Beitrag von: kaktus567 am 14 Februar 2016, 10:31:33
Ok, probiere das mal.

EDIT:

Leider funktioniert das nicht mit notify, andere Vorschläge ?
MeinWetter:temp_c:.* IF (temp_c > 6 ) (attr MeinWetter event-on-change-reading temp_c:0.1) ELSE (attr MeinWetter event-on-change-reading temp_c:0.2)
Titel: Antw:event-on-change / Schwellwert dynamisch ändern
Beitrag von: kaktus567 am 14 Februar 2016, 11:10:04
Ok, probiere das mal.

EDIT:
Probiere das seit einer Stunde, aber leider funktioniert das nicht mit notify, andere Vorschläge ?
MeinWetter:temp_c:.* IF (ReadingsVal(temp_c) > 6 ) (attr MeinWetter event-on-change-reading temp_c:0.1) ELSE (attr MeinWetter event-on-change-reading temp_c:0.2)
Titel: Antw:event-on-change / Schwellwert dynamisch ändern
Beitrag von: marvin78 am 14 Februar 2016, 11:29:57
Vorschlag: ein wenig denken und ins Log (dein Code wird Fehler produzieren) und den Event-Monitor schauen. Außerdem die Grundlagen lernen. ReadingsVal hat 3 Parameter. Stimmt dein Event?

IF kann und mag ich nicht. Falls das Event stimmt, mit Perl

MeinWetter:temp_c:.* {if ($EVTPART1>6) {fhem("attr MeinWetter event-on-change-reading temp_c:0.1")} else {fhem("attr MeinWetter event-on-change-reading temp_c:0.2")}}
Titel: Antw:event-on-change / Schwellwert dynamisch ändern
Beitrag von: kaktus567 am 14 Februar 2016, 11:42:27
ZitatReadingsVal hat 3 Parameter

Das war's danke. Hatte ich nicht berücksichtigt.  :-[


Wenn die Aktualisierung minütlich erfolgt, wird jetzt auch minütlich das Attr gesetz.
Sollte ich also vorher nicht nochmal prüfen, ob es schon gesetzt wurde ?

Titel: Antw:event-on-change / Schwellwert dynamisch ändern
Beitrag von: marvin78 am 14 Februar 2016, 12:08:42
Ich verstehe den Grund für dein Vorgehen nicht. Für mich ist das Quatsch. Deshalb kann ich dir auch nicht sagen, ob du kleine Schwankungen ausgleichen oder abfangen solltest.
Titel: Antw:event-on-change / Schwellwert dynamisch ändern
Beitrag von: kaktus567 am 14 Februar 2016, 12:16:54
Ich möchte damit die Genauigkeit und damit die Anzahl der zu speichernden Daten beeinflussen, je nach Wert.

ZitatWenn die Aktualisierung minütlich erfolgt, wird jetzt auch minütlich das Attr gesetz.
Sollte ich also vorher nicht nochmal prüfen, ob es schon gesetzt wurde ?

Ist eine Optimierung erforderlich oder nützlich ?

Titel: Antw:event-on-change / Schwellwert dynamisch ändern
Beitrag von: marvin78 am 14 Februar 2016, 12:19:35
Anders gesagt: ich kann dir nicht sagen, was du brauchst. Wenn du den Attributwert überprügen möchtest, machst du das mit AttrVal (3 Parameter).
Titel: Antw:event-on-change / Schwellwert dynamisch ändern
Beitrag von: kaktus567 am 14 Februar 2016, 19:43:23
Da immer das Attribut angepasst wird, erscheint jedesmal das "?" bei "Save Config".

Gibt es keine andere Methode den Schwellenwert zu ändern ?
Titel: Antw:event-on-change / Schwellwert dynamisch ändern
Beitrag von: marvin78 am 14 Februar 2016, 20:32:51
Da es sich um ein Attribut handelt, wird immer die Config geändert. Deshalb halte ich das auch nicht für wirklich sinnvoll. Ich wüsste nicht, wie man das (auf einfache Art) anders machen sollte...ein save könnte natürlich noch in das notify gesetzt werden, um die Config immer direkt zu speichern (rotes Fragezeichen taucht nicht auf). Das kann aber auch gefährlich sein.

Es sei denn du baust dir ein eigenes Modul für soetwas. Eine Kombination aus userReading (welches dann geloggt wird) und einer sub in einer myUtils könnte auch hilfreich sein. Das Experimentieren überlasse ich aber dir.

Da deine Schwellwerte jedoch sowieso im Bereich der Messungenauigkeiten liegen, verstehe ich weiterhin nicht, warum du das machst.