Hallo zusammen,
mein Trockner hat ein Problem das er nach dem der Trockenvorgang abgeschlossen ist der Trockner noch weiterhin alle 2-3 min. kurz anläuft für 5sekunden und wieder aufhört das geht dann solange so bis man den Trockner Manuel ausschaltet am Trockner oder die klappe öffnet, oder per Wlan Schalter kurz Strom aus und wieder anschlaten somit ist die LED des Trockners an aber er läuft nicht mehr.
meine Idee ist es mittels DOIF den Zustand (on/off) auszulesen + wenn power > 0,65 dann ist der Vorgang gestartet somit sleep oder wait ca. 2 std. anschliessend lese wieder
Zustand = on + Power < 0,65 dann schalte wlan Strom aus 5 Sekunden warten und wieder wlan Strom einschalten.
den zustand lasse ich mir schon anzeigen als Reading hier mal ein List vom Wlan TPLink HS110 , heisst bei mir Trockner
Internals:
DEF 192.168.1.72
FUUID 5c574502-f33f-6e03-c2ed-69fca5292a6132d8
HOST 192.168.1.72
INTERVAL 300
NAME Trockner
NEXTUPDATE Tue Oct 6 16:29:50 2020
NR 119
STATE on
TIMEOUT 1
TYPE TPLinkHS110
.attraggr:
.attrminint:
.userReadings:
HASH(0x30debc8)
READINGS:
2020-10-06 16:24:50 Zustand off
2020-10-06 16:24:50 active_mode none
2020-10-06 16:24:50 alias Trockner Strom
2020-10-06 16:24:50 current 0.026
2020-10-06 16:24:50 daily_average 1874
2020-10-06 16:24:50 daily_total 0.038
2020-10-06 16:24:50 decode_json ok
2020-10-06 16:24:50 dev_name Smart Wi-Fi Plug With Energy Monitoring
2020-10-06 16:24:50 deviceId 80067B33EDC5791FB61BF1CA899D3AA81AFB1A10
2020-10-06 16:24:50 err_code 0
2020-10-06 16:24:50 feature TIM:ENE
2020-10-06 16:24:50 fwId 00000000000000000000000000000000
2020-10-06 16:24:50 hwId 044A516EE63C875F9458DA25C2CCC5A0
2020-10-06 16:24:50 hw_ver 2.0
2020-10-06 16:24:50 icon_hash
2020-10-06 16:24:50 latitude 50.1384
2020-10-06 16:24:50 led_off 0
2020-10-06 16:24:50 longitude 8.6844
2020-10-06 16:24:50 mac D8:0D:17:3E:75:A0
2020-10-06 16:24:50 model HS110(EU)
2020-10-06 16:24:50 monthly_total 11.244
2020-10-06 16:24:50 next_action HASH(0x4910f48)
2020-10-06 16:24:50 oemId 1998A14DAA86E4E001FD7CAF42868B5E
2020-10-06 16:24:50 on_time 10800
2020-10-06 16:24:50 power 0
2020-10-06 16:24:50 relay_state 1
2020-10-06 16:24:50 rssi -69
2020-10-06 16:24:50 state on
2020-10-06 16:24:50 sw_ver 1.5.6 Build 191125 Rel.083657
2020-10-06 16:24:50 total 11.245
2020-10-06 16:24:50 type IOT.SMARTPLUGSWITCH
2020-10-06 16:24:50 updating 0
2020-10-06 16:24:50 voltage 235.682
Attributes:
alexaName Trockner
alexaRoom Keller
alias Trockner
devStateIcon on:black_Steckdose.on off:black_Steckdose.off
disable 0
room Homekit,Wohnung,alexa
userReadings Zustand {ReadingsNum($name,"power",0) > 0.65?"on":"off"}
DOIF:
DOELSEIF
([Trockner:Zustand] eq "on" and [Trockner:power] > 0.65)
(sleep 7200)
DOELSEIF
([Trockner:Zustand] eq "on" and [Trockner:power] < 0.65)
(set Trockner off; sleep 5; set Trockner on)
DOELSE
Hi,
ich sehe jetzt zwar keine Frage - aber das hier ist falsch:
DOELSEIF ohne DOIF ? geht nicht!?
Warum soll ein Zweig nur 7200 Sekunden schlafen? Was macht das für Sinn? Das blockiert Dir einfach FHEM für 7200 Sekunden, siehe help sleep! Falls DOIF hier nicht zaubert?
(set Trockner off; sleep 5; set Trockner on)
Bei DOIF sind die Kommandotrenner Kommas und keine Strichpunkte ;)
Ich würde es eher so machen:
(set Trockner off)(set Trockner on)
und attr wait setzen 0,5
Gruß Otto
Hi Otto,
sorry meinte damit eigentlich 2 Std. den Wlan Schalter nicht mehr prüft da der Trockenvorgang läuft...
also in Sekunden ca. 3600 *2
Da ich mir vorstellen kann das der Trockner pausen macht wo Power unter 0,65 fällt und dann würde doif abschalten...
Du willst eine Abfrage starten nachdem eine Abfrage wahr ergeben und 2 h vergangen sind. Wie man das mit DOIF macht weiß ich nicht. Fakt ist, dein DOIF Ansatz ist weitestgehend Unsinn.
Eventuell eine Kombination aus DOIF und IF oder notify und IF oder besser in Perl :)
Gruß Otto
Abend Otto,
ich versuche das mal vorerst mit deinem Wait tipp. Anderfalls muss ich mal genau schauen was bei einem Trockenvorgang mit dem reading power passiert.
Evtl bleibt er immer über 0,65 sodass sollte er drunter sein ich den trockner durch den wlan adapter kurz vom strom nehmen kann und wieder anschalten kann
Ich würde im Handbuch zuerst gucken, ob man das "Schonen plus" Programm oder wie auch immer es heisst deaktivieren kann...
DOIF:
Zitat von: CommandRefZwangspause für das Ausführen eines Kommandos seit der letzten Zustandsänderung back
Mit dem Attribut cmdpause <Sekunden für cmd_1>:<Sekunden für cmd_2>:... wird die Zeitspanne in Sekunden angegeben für eine Zwangspause seit der letzten Zustandsänderung. In der angegebenen Zeitspanne wird ein Kommando nicht ausgeführt, auch wenn die dazugehörige Bedingung wahr wird.
Anwendungsbeispiel: Meldung über Frostgefahr alle 60 Minuten
define di_frost DOIF ([outdoor:temperature] < 0) (set pushmsg "danger of frost")
attr di_frost cmdpause 3600
attr di_frost do always
Aber das braucht man evtl
nur wenn mitte des Trockenvorgangs power unter 0.65 kommt, was idR nicht der Fall ist. Sonst reicht:
([Trockner:power] >= 0.65)
()
DOELSEIF
([Trockner:power] < 0.65)
(set Trockner off)(set Trockner on)
attr <Name> wait 0:0,5
oder wenn ab und zu tatsächlich mitte des Trockenvorgangs power unter 0.65 kommt,
attr <Name> wait 0:60,5
Somit wartet er 60 Sekunden bevor er entscheidet, dass der Vorgang abgeschlossen ist.
Du solltest bei solchen Sequenzen sicherstellen, das die Abläufe stimmen.
Was Du versuchen kannst ist auch sowas, deinen Ansatz umgesetzt mit DOIF (Zustandstrigger) und die weitere Abfolge mit IF:
define di_Trockner DOIF ([Trockner:Zustand] eq "on" and [Trockner:power] > 0.65)(sleep 7200;;IF([Trockner:Zustand] eq "on" and [Trockner:power] < 0.65)(set Trockner off,sleep 5;;set Trockner on))
Das ist alles nicht fehlertolerant!
Edit: den Syntax mit sleep geändert.
(sleep 7200,IF...
Ne, das ist falsch. sleep ist die Ausnahme, man muss doch mit Semikolon schreiben.
Man kann sagen, dass "sleep 7200;etwas" ein Einziges Fhem Kommando mit zwei durch Semikolon getrennten Parametern (die Zeit und etwas) ist.
Stimmt :-[ ich hatte seit heute nachmittag gezögert diesen Gedanken niederzuschreiben. Ich habe sicher geahnt warum ...
Hi,
hier mal meine Variante, auch ein Trockner mit Nachlauf und an einem HS110 hängt er zufällig auch ;-) er meldet wenn er gestartet wurde. Wenn fertig ist meldet er solange bis einer am HS 110 oder per fhem die steckdose abschaltet
defmod doif_trocknen DOIF ([steckdose_07:state] eq "off")(setreading $SELF trocknen geleert) ##wenn geleert und bestätigt mit manueller abschaltung\
DOELSEIF\
\
([steckdose_07:pM_consumption] > 200 ## erstmalig über 200Watt\
and\
[?$SELF:trocknen] ne "ein") ## Verrieglung weiterer nachrichten\
(set telegrambot Der Trockner wurde gestartet, ## hier angepasst fürs veröffentlichen\
setreading $SELF trocknen ein) ## verriegelung\
\
DOELSEIF\
\
([steckdose_07:pM_consumption] < 10 ##verbrauch unter 10 W\
and [?$SELF:trocknen] ne "fertig"\
and [steckdose_07:state] ne "off"\
) \
(\
setreading $SELF trocknen fertig ##Verrieglung gegen weitere Nachrichten\
)\
DOELSEIF\
([$SELF:trocknen] eq "fertig")\
(set telegrambot Der Trockner ist fertig und noch nicht geleert.) ## wieder fürs veröffentlichen angepasst
attr doif_trocknen do always
attr doif_trocknen event-on-change-reading trocknen
attr doif_trocknen repeatcmd 0:0:0:900
attr doif_trocknen selftrigger all
attr doif_trocknen wait 0:0:310
Zitat von: CBSnake am 07 Oktober 2020, 09:11:38
.....hier mal meine Variante, auch ein Trockner mit Nachlauf und an einem HS110 hängt er zufällig auch.....
Hi zusammen,
Euer Thread hat mich inspiriert und so habe ich Eure Vorlage meinen Voraussetzungen und meiner Zielsetzung etwas abgewandelt.
Mein Trockner hängt an einem ShellyPlug-S und ich habe in dessen Logfile gemonitort, dass er in der "Knitterschutzphase" am Ende des eigentlichen Trocknungsvorganges immer zwischen 2 und 4 Watt schwankt.
Die gewünschte Ansage via Sonos-Lautsprecher in der Küche kommt bei mir mit folgendem Code zustande:
define Trockner_fertig DOIF ([shellyPlug_Trockner:power] >2 and ([shellyPlug_Trockner:power] <4)) (set Sonos_Kueche Speak 45 de Der Trockner ist fertig und kann ausgeräumt werden!)
mit einem ...
attr Trockner_fertig do always
... erreiche ich stetige Wiederholungen der Ansage, sobald der Power-Wert schwankt bis man ihn abschaltet (was in meinem Fall eigentlich jede Minute in dieser Endphase vorkommt).
VG,
al