event-on-change / Schwellwert dynamisch ändern

Begonnen von kaktus567, 14 Februar 2016, 09:58:43

Vorheriges Thema - Nächstes Thema

kaktus567

@CoolTux: und tschüss, mich nervst Du nicht mehr  ;D ;D ;D :o :o :o

marvin78

notify auf temp_c und dann

attr DEVICE event-on-change-reading temp_c:WERT

kaktus567

#2
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)

kaktus567

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)

marvin78

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")}}

kaktus567

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 ?


marvin78

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.

kaktus567

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 ?


marvin78

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).

kaktus567

Da immer das Attribut angepasst wird, erscheint jedesmal das "?" bei "Save Config".

Gibt es keine andere Methode den Schwellenwert zu ändern ?

marvin78

#10
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.