FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Vista am 31 Januar 2018, 10:32:09

Titel: [gelöst]watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: Vista am 31 Januar 2018, 10:32:09
Guten Morgen zusammen.

Ich steh gerade auf dem Schlauch. Ist es möglich mit watchdog auf einen Wertebereich zu triggern?

Beispiel
test:>30 00:00:05 test:10 set test on

Watchdog soll bei einem Wert größer als 30 auslösen. Ist das möglich?

MfG Ulf
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: Benni am 31 Januar 2018, 10:59:37
Zitat von: Vista am 31 Januar 2018, 10:32:09
Guten Morgen zusammen.

Ich steh gerade auf dem Schlauch. Ist es möglich mit watchdog auf einen Wertebereich zu triggern?

Beispiel
test:>30 00:00:05 test:10 set test on

Watchdog soll bei einem Wert größer als 30 auslösen. Ist das möglich?

MfG Ulf

watchdog triggert auf eine RegEx nicht auf einen Wert oder Wertebereich. Du müsstest dir ggf. eine passende RegEx bauen.

Deine Frage ist m.E. besser im Anfängerbereich aufgehoben.
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: CoolTux am 31 Januar 2018, 11:06:25

test:.[3-9][0-9] 00:00:05 test:10 set test on

Musst Du natürlich noch anpassen. Kenne ja das Event nicht, kann das auch dreistellig werden? Jetzt triggert er aber ständig sobald die erste Zahl größer gleich 3 ist und ein Event kommt.
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: Benni am 31 Januar 2018, 11:10:32
also auch bei =30  ;)
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: CoolTux am 31 Januar 2018, 11:14:39
ja auch bei gleich 30. Lach
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: Vista am 31 Januar 2018, 11:30:40
Super für die tollen Tipps.

Wie man vielleicht am Name sehen kann bin ich noch am Testen (device test dummy^^)

Konkret geht es darum dass ich erkennen will wann mein Trockner fertig ist.
Dieser wird mittels Sonoff POW überwacht. Der Watchdog soll dazu dienen um eine sicher "Fertig Meldung" auszugeben und die Stromzufuhr unterbrechen.
Mein Trockner hat als "Knitterschutz" eine äußerst lange Nachlaufphase die ~15Watt zieht daher bin ich auf der suche die Fertigerkennung über einen Schwellenwert zu regelen.

Vielleicht hat jemand einen anderen Ansatz das umzusetzen
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: CoolTux am 31 Januar 2018, 11:37:30
Obwohl kein großer Freund von DOIF (wo es geht vermeide ich es) empfehle ich hier DOIF, da Du da wirklich mit > oder < arbeiten kannst. Schau Dir mal die wirklich sehr sehr ausführliche deutsche Commandref dazu an.
Das Du mit einem Dummy testest finde ich super. Das ist genau der richtige Weg.
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: Vista am 31 Januar 2018, 12:03:12
Und nochmals Danke.

Mit DOIF hab ich schonmal was versucht und bin kläglich gescheitert.
Wenn ich da aber einen Intervall / eine Wartezeit realisieren möchte, weil der Trockner ja mal kurz zeitig weniger als den Schwellwert verbraucht, müsste
ich wieder mit defmod und at arbeiten ? Richtig?

Vielleicht hab ich auch einen Knoten in meiner Denkweise.

Gedanke war.

Trockner wird angeschaltet --> ENERGY_Power (Sonoff) steigt / ist hoch --> Trockner ist fertig Wert sinkt unter 30Watt --> Wenn die 30Watt für 10min unterschritten bleiben --> Sonoff off

Wichtig ist dass die 10min nicht fix zum ausschalten führen dürfen. Da ja z.B. der Trockner sofort wieder Beladen wird und der nächste Durchlauf startet.
Dann würde ja ein at* möglicherweise während des nächsten Durchlaufs dem Trockner den Saft abdrehen.

Daher war mein Gedanke mit Watchdog:

wenn <30 und nach 10min immer noch kleiner <30 dann aus.
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: rudolfkoenig am 31 Januar 2018, 12:09:53
Denkansatz:
- erst ein "verbrauchIstGroesserAls30W" userreading bauen
- danach ein watchdog auf mit diesem Reading
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: CoolTux am 31 Januar 2018, 12:09:58
Hast ein Knoten


Internals:
   CFGFN     
   DEF        ([WaschmaschineVerbrauchsanzeige:power] > 25) (set WaschmaschineBetriebDummy on)

DOELSEIF
([WaschmaschineVerbrauchsanzeige:power] < 5) (set WaschmaschineBetriebDummy off)
   NAME       doifWaschmaschineBetrieb
   NR         47
   NTFY_ORDER 50-doifWaschmaschineBetrieb
   STATE      cmd_2
   TYPE       DOIF
   READINGS:
     2018-01-30 10:20:41   Device          WaschmaschineVerbrauchsanzeige
     2018-01-30 10:09:09   cmd             2
     2018-01-30 10:09:09   cmd_event       WaschmaschineVerbrauchsanzeige
     2018-01-30 10:09:09   cmd_nr          2
     2018-01-30 10:20:41   e_WaschmaschineVerbrauchsanzeige_power 0
     2018-01-30 10:09:09   state           cmd_2
     2018-01-30 10:09:09   wait_timer      no timer
Attributes:
   wait       0:120
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: justme1968 am 31 Januar 2018, 12:17:04
entweder WATCHDOG mit user reading oder THRESHOLD. das ist genau dazu da.
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: CoolTux am 31 Januar 2018, 12:21:40
Zitat von: justme1968 am 31 Januar 2018, 12:17:04
entweder WATCHDOG mit user reading oder THRESHOLD. das ist genau dazu da.

Hallo Andre,

Habe mal eben die Commandref von THRESHOLDüberflogen. Also wirklich nur überflogen. Wo kann ich da eine Zeitverzögerung mit Abbruchbedingung an geben? Muss ich das extra machen in Kombi mit DOIF?


Grüße
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: justme1968 am 31 Januar 2018, 12:25:58
habe die zeitverzögerung übersehen.

THRESHOLD für die hysterese und darauf noch einen watchdog für die verzögerung. klappt wunderbar.

DOIF mag ich nicht :)
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: CoolTux am 31 Januar 2018, 12:28:55
Zitat von: justme1968 am 31 Januar 2018, 12:25:58
DOIF mag ich nicht :)

Ich weiß. Ich auch nicht. Aber interessanter Weise mag man es erst nicht wenn man tiefer in FHEM drin steckt und weiß wie man es mit Bordmitteln schöner machen kann.
Titel: Antw:watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: Vista am 31 Januar 2018, 14:58:47
Problem gelöst.

beim Trockner

Betrieb { my $val=ReadingsVal("wk_TrocknerPOW", "ENERGY_Power", ""); if ($val > 30) { $val="on";} elsif ($val <= 30 ) { $val="off";} ;; $val}

und dann mit einem watchdog auf "Betrieb" getriggert.
Titel: Antw:[gelöst]watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: zebbl0815 am 30 August 2018, 09:17:39
Hallo zusammen,

ich hab da noch ein kleines Verständnisproblem...
Betrieb { my $val=ReadingsVal("Trockner", "sensor-engery-power", ""); if ($val > 30) { $val="on";} elsif ($val <= 30 ) { $val="off";} ;; $val}
ist doch ein userreading für den Pow richtig? Zumindest funktioniert das  ;)

Wie krieg ich denn den Watchdog dazu auf dieses Reading zu hören?
Trockner.Betrieb:off 00:00:10 Trockner.Betrieb:on set SmartHomeBot msg Trockner fertig
Trockner:Betrieb:off 00:00:10 Trockner:Betrieb:on set SmartHomeBot msg Trockner fertig
Trockner.*:off 00:00:10 Trockner.*:on set SmartHomeBot msg Trockner fertig

Diese Varianten funktionieren nicht - der WD bleibt auf defined stehen, obwohl das Event Trockner Betrieb off oder on durch den Event-Monitor rauscht...
Titel: Antw:[gelöst]watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: rudolfkoenig am 30 August 2018, 11:32:57
Wenn man unsicher ist:
- Event Monitor starten
- Event im Monitor abwarten, ganze Zeile markieren, Create/Modify Device klicken
- Im Dialog watchdog auswaehlen, watchdog anlegen, anpassen.

Wenn damit auch nicht klappt:
Alle relevanten Events aus dem Event-Monitor hier anhaengen.
Titel: Antw:[gelöst]watchdog - Soll auf größer oder kleiner als triggern
Beitrag von: zebbl0815 am 30 August 2018, 12:46:38
danke dir viiiiiiielmals...
dank Event-Monitor - Create/Modify hab ich gelernt, dass das Event Trockner:Betrieb:.on bzw off heisst und siehe da... Es funktioniert ;-)