Autor Thema: Problem mit Notify zur Waschmaschinenüberwachung  (Gelesen 763 mal)

Offline szoller

  • Full Member
  • ***
  • Beiträge: 160
Problem mit Notify zur Waschmaschinenüberwachung
« am: 14 November 2018, 17:06:05 »
Hallo zusammen,

wie es schon oft gemacht wurde, versuche ich auch, die Waschmaschinen im Haushalt etwas "smarter" zu machen und würde mich gerne informieren lassen, wenn die Waschmaschine fertig ist.

Im Haus gibt es zwei Waschmaschinen und einen Trockner, alle drei Geräte hängen jeweils an einem Sonoff POW mit Tasmota.

Ich habe schon mit verschiedenen Varianten an DOIF/Notify rumprobiert, irgendwie führt keine davon zum Erfolg, entweder erhalte ich keine Meldung oder - wie bei meinem letzten Versuch (siehe unten) Benachrichtigungen, obwohl die Waschmaschine noch läuft.
Ich habe es schon mit verschiedenen Werten für den Stromverbrauch als auch für die Verzögerungszeit versucht, es kommt immer auf's Gleiche raus.
Auch das Ändern der Telemetrieperiode in Tasmota ändert leider nichts (Eingestellt ist der Wert 10).

Angehängt sind für jede der beiden Waschmaschinen eine Textdatei, die die Log-Ausgaben während eines Waschgangs, das definierte Notify und den zeitlichen Ablauf enthalten (ist zuviel, um des in den Forenpost einzubinden, zwei Paste-Dienste haben auch gestreikt, daher so. Auf Wunsch versuche ich aber wieder, es bei Pastebin o.Ä. hochzuladen).

MQTT_ISWM_BAD_1:ENERGY_Power:.* {
    # Wenn die Spülmaschine eingeschaltet wurde
    if (ReadingsNum($NAME, "ENERGY_Power", 0) > 12 && ReadingsVal($NAME, "running", "off") eq "off") {
        fhem("setreading $NAME running on");
    }

    # Wenn die Waschmaschine länger als 5 Minuten lief und dann keinen Strom mehr verbraucht -> Notification
    if (ReadingsNum($NAME, "ENERGY_Power", 0) < 11 && ReadingsVal($NAME, "running", "off") eq "on") {
        if (secondsSinceReadingChange($NAME, "running") > 300) {
            fhem("msgtelegram @-298582359 @00000000 ??Die Waschmaschine rechts ist fertig.");
#fhem("set WEB_Pushover msg 'Spülmaschine' 'Die Spülmaschine ist fertig'");
            #fhem("set lametric msg 'i1167' 'Spülmaschine fertig' 'notifications:water1' '1'");
            #fhem("set Wunderlist addTask Spülmaschine ausräumen");
        }

        fhem("setreading $NAME running off");
    }

    # Wenn Fehler aufgetreten ist, und die Waschmaschine nach 4 Stunden nicht automatisch ausgegangen ist
    if (secondsSinceReadingChange($NAME, "running") > 14400 && ReadingsVal($NAME, "running", "off") eq "on") {
        fhem("setreading $NAME running off");
fhem("msgtelegram @-298582359 @00000000 ??Die Waschmaschine rechts läuft seit 4 Stunden und ist nicht ausgegangen.");
        #fhem("set WEB_Pushover msg 'Spülmaschine' 'Die Spülmaschine läuft seit 4 Stunden und ist nicht ausgegangen'");
    }
}

Ich werde schon aus den Log-Dateien nicht so recht schlau, im Standby sind da Werte um die 60 Watt aufgetaucht (?).

Vielleicht hat da jemand den Durchblick, Dankbarkeit wäre gewiss!

Viele Grüße

Sebastian

Offline loescher

  • Full Member
  • ***
  • Beiträge: 118
Antw:Problem mit Notify zur Waschmaschinenüberwachung
« Antwort #1 am: 17 November 2018, 21:09:14 »
Hi!

Naja, bei dem Stromverbrauch im Standby kann ich dir auch nicht helfen, das muss man sich anschauen und dann die Logik entsprechend bauen.
Evtl. hilft dir mein Setup als Startpunkt:
http://www.loescher-online.de/smarthome.html#waschmaschine
Wie du bei meinem Trockner siehst, muss ich da auch die untere Schwelle auf 200 Watt setzen.

LG,
Stephan.

Offline abc2006

  • Sr. Member
  • ****
  • Beiträge: 791
Antw:Problem mit Notify zur Waschmaschinenüberwachung
« Antwort #2 am: 19 November 2018, 08:06:58 »
Gude,
mittlerweile bevorzuge ich für sowas doif. Da sind nämlich alle Mittel an Bord:

([MQTT_ISWM_BAD_1:ENERGY_Power] > 12)
(
set $SELF running on,
set telegramBot message Wama läuft!
)
DOELSEIF([MQTT_ISWM_BAD_1:ENERGY_Power] < 5)
(
set $SELF running finish,
set telegramBot message Wama fertig!
)
DOELSEIF([MQTT_ISWM_BAD_1:ENERGY_Power] > 12 && [$SELF:running] eq "on"  && [$SELF:running:sec] > 14400  )
(
set $SELF running error,
set telegramBot message Wama Fehler!
)
attr <doif-Name> wait 0,300,0

Wobei ich nicht weiss, ob  [$SELF:running:sec] > 14400   jemals wahr wird (weil das Reading evtl mit aktualisiert wird).

Alternativ zu
secondsSinceReadingChange($NAME, "running") möchte ich dich auf
ReadingsAge() hinweisen. Syntax identisch zu ReadingsVal()...

Grüße,
Stephan
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

Offline abc2006

  • Sr. Member
  • ****
  • Beiträge: 791
Antw:Problem mit Notify zur Waschmaschinenüberwachung
« Antwort #3 am: 19 November 2018, 08:16:37 »
Zu den Messwerten:
Ich würde dir vorschlagen, z.B. mit event-on-change-reading:4 die kleinen Änderungen etwas einzuschränken.
Wenn du dann das wait von cmd_1 hochsetzt auf 10 Sekunden, sollte das die Fehlalarme schon deutlich reduzieren.

Grüße,
Stephan
FHEM nightly auf Intel Atom (lubuntu) mit VDSL 50000 ;-)
Nutze zur Zeit OneWire und KNX

Offline szoller

  • Full Member
  • ***
  • Beiträge: 160
Antw:Problem mit Notify zur Waschmaschinenüberwachung
« Antwort #4 am: 12 Januar 2019, 00:47:55 »
@abc2006:

Entschuldige, ich war ein wenig eingespannt, daher eine sehr späte Antwort! Vielleicht war die Motivation auch etwas eingeschränkt durch die vielen Fehlversuche, aber irgendwann muss es ja funktionieren  ;D

Danke zunächst für deine Hilfe, DOIF geht natürlich auch :-)

Nun wären da noch Verständnisfragen, möcht das ja nicht einfach stupide reinkloppen und hoffen :-D
attr <doif-Name> wait 0,300,0Bedeutet das, dass das DOIF das erste IF direkt ausführt, das DOELSEIF aber erst, wenn die Bedingung fürs IF (Energie > 12) 5 Minuten lang nicht erfüllt wird?

Bei deiner Variante brauche ich ReadingsAge() dann ja nicht, oder?

Bei meinem Notify ist scheinbar vor allem das Problem, dass der garnicht abwartet... ich versteh's aber auch nicht so richtig...

event-on-change-reading:4 Das besagt, dass maximal alle 4 Sekunden der gleiche Wert geschrieben werden darf?

@loescher
Das ist ja eine weiterführende Variante, reizt mich sicher, gerade auch das Dokumentieren der Läufe, aber erstmal muss das Grundlegende funktionieren, deine Seite ist auf jeden Fall in den Bookmarks :-)

Die Werte sind leider querbeet, immer so dämliche Ausreißer drin...

Offline szoller

  • Full Member
  • ***
  • Beiträge: 160
Antw:Problem mit Notify zur Waschmaschinenüberwachung
« Antwort #5 am: 12 Januar 2019, 12:30:36 »
Also irgendwas stimmt da bei mir nicht. Ich erhalte wieder Meldungen zwischendrin, teils im Minutentakt, er scheint das Wait einfach zu ignorieren?

Die Raw-Definition:
defmod BAD.DOIF.ISMWM3 DOIF ([MQTT_ISWM_BAD_3:ENERGY_Power] > 25)\
(\
set $SELF running on,\
set TeleBot message Wama links läuft!\
)\
DOELSEIF([MQTT_ISWM_BAD_3:ENERGY_Power] < 5)\
(\
set $SELF running finish,\
set TeleBot message Wama links fertig!\
)\
DOELSEIF([MQTT_ISWM_BAD_3:ENERGY_Power] > 12 && [$SELF:running] eq "on"  && [$SELF:running:sec] > 14400  )\
(\
set $SELF running error,\
set TeleBot message Wama links Fehler!\
)
attr BAD.DOIF.ISMWM3 group Regeln
attr BAD.DOIF.ISMWM3 room System
attr BAD.DOIF.ISMWM3 wait 0,300,0

setstate BAD.DOIF.ISMWM3 cmd_1
setstate BAD.DOIF.ISMWM3 2019-01-12 12:28:45 Device MQTT_ISWM_BAD_3
setstate BAD.DOIF.ISMWM3 2019-01-12 12:28:18 cmd 1
setstate BAD.DOIF.ISMWM3 2019-01-12 12:28:18 cmd_event MQTT_ISWM_BAD_3
setstate BAD.DOIF.ISMWM3 2019-01-12 12:28:18 cmd_nr 1
setstate BAD.DOIF.ISMWM3 2019-01-12 12:28:45 e_MQTT_ISWM_BAD_3_ENERGY_Power 101
setstate BAD.DOIF.ISMWM3 2019-01-12 12:20:00 mode enabled
setstate BAD.DOIF.ISMWM3 2019-01-12 12:28:18 state cmd_1


Offline Otto123

  • Hero Member
  • *****
  • Beiträge: 12737
  • schon mal restore trainiert?
    • Otto's Technik Blog
Antw:Problem mit Notify zur Waschmaschinenüberwachung
« Antwort #6 am: 12 Januar 2019, 12:52:52 »
Hi,

Zitat
event-on-change-reading:4
Das besagt, dass maximal alle 4 Sekunden der gleiche Wert geschrieben werden darf?
Nein! Völlige Fehl"interpretation"  :'(

Das besagt, das das Reading 4 nur noch events beim Ändern erzeugt. Alle anderen Readings erzeugen keine Events mehr!

Einfach Doku lesen. Tipp: Mit ctrl+f im Browser nach dem gewünschten Begriff suchen. ;D
Zitat
event-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.

Gruß Otto
« Letzte Änderung: 12 Januar 2019, 12:55:49 von Otto123 »
Viele Grüße aus Leipzig
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7490+7412,WRT1900ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266
Zustimmung Zustimmung x 1 Liste anzeigen

Offline szoller

  • Full Member
  • ***
  • Beiträge: 160
Antw:Problem mit Notify zur Waschmaschinenüberwachung
« Antwort #7 am: 12 Januar 2019, 13:43:46 »
Zitat
Das besagt, das das Reading 4 nur noch events beim Ändern erzeugt. Alle anderen Readings erzeugen keine Events mehr!

Einfach Doku lesen. Tipp: Mit ctrl+f im Browser nach dem gewünschten Begriff suchen. ;D
Danke, ich hatte da ne andre Erklärung gefunden, aus der ich aber nicht schlau wurde, so hab ichs verstanden :-)
Wenn ich mir nun die Logs anschaue, werden scheinbar auch nur geänderte Einträge erfasst (evtl. sendet der Sonoff auch nur bei Änderung), allerdings ist die Frequenz recht hoch :-)

Zitat
Also irgendwas stimmt da bei mir nicht. Ich erhalte wieder Meldungen zwischendrin, teils im Minutentakt, er scheint das Wait einfach zu ignorieren?
Da war ich wohl der Fehler, die Werte bei wait trennt man laut Doku mit : statt , :-)

Offline Damian

  • Developer
  • Hero Member
  • ****
  • Beiträge: 6441
Antw:Problem mit Notify zur Waschmaschinenüberwachung
« Antwort #8 am: 13 Januar 2019, 00:00:28 »
Evtl. hilft die neue Option zum Glätten von Werten: https://forum.fhem.de/index.php/topic,95759.msg886621.html#msg886621
Programmierte FHEM-Module: DOIF mit uiTable, DOIF-Perl, THRESHOLD, FHEM-Befehl: IF

Offline szoller

  • Full Member
  • ***
  • Beiträge: 160
Antw:Problem mit Notify zur Waschmaschinenüberwachung
« Antwort #9 am: 15 Januar 2019, 16:13:18 »
Danke Damian, werde ich ausprobieren!

Ist schon absehbar, wann das seinen Weg in die Releaseversion findet?

Offline Damian

  • Developer
  • Hero Member
  • ****
  • Beiträge: 6441
Antw:Problem mit Notify zur Waschmaschinenüberwachung
« Antwort #10 am: 15 Januar 2019, 16:55:32 »
Danke Damian, werde ich ausprobieren!

Ist schon absehbar, wann das seinen Weg in die Releaseversion findet?

Bald, ich warte noch auf Erfahrungsberichte, ggf. muss ich noch ein paar Anpassungen vornehmen.
Programmierte FHEM-Module: DOIF mit uiTable, DOIF-Perl, THRESHOLD, FHEM-Befehl: IF
Gefällt mir Gefällt mir x 1 Liste anzeigen

 

decade-submarginal