hallo meine lieben -
könnte evtl mal einer über mein DOIF schauen?
es schaltet egtl super, nur hab ich 2x die Bedingung ">" und er schaltet immer nur die erste.
In meinen Fall: >15 schaltet dymmy auf Programmstart
wenn der Wert aber >50 ist sollte er den dummy auf "läuft" stellen, das macht es aber leider nicht.
Was hab ich hier falsch??
list:
Internals:
DEF ([WaschmaschineWatt:state] > 15) (set WaschmaschineBetrieb Programmstart)
DOELSEIF ([WaschmaschineWatt:state] < 0.1) (set WaschmaschineBetrieb Aus)
DOELSEIF ([WaschmaschineWatt:state] > 50) (set WaschmaschineBetrieb läuft)
DOELSEIF ([WaschmaschineWatt:state] < 4) (set WaschmaschineBetrieb Programmende)
FUUID 5e13a852-f33f-599c-352e-0353c582da3aa49c
MODEL FHEM
NAME WaschmaschineBetriebCheck
NOTIFYDEV WaschmaschineWatt,global
NR 515
NTFY_ORDER 50-WaschmaschineBetriebCheck
STATE cmd_1
TYPE DOIF
VERSION 20672 2019-12-06 21:05:57
READINGS:
2020-01-08 19:14:53 Device WaschmaschineWatt
2020-01-08 18:39:08 cmd 1
2020-01-08 18:39:08 cmd_event WaschmaschineWatt
2020-01-08 18:39:08 cmd_nr 1
2020-01-08 19:14:53 e_WaschmaschineWatt_state 319
2020-01-08 18:39:07 mode enabled
2020-01-08 18:39:08 state cmd_1
Regex:
accu:
cond:
WaschmaschineWatt:
0:
state ^WaschmaschineWatt$:^state:
1:
state ^WaschmaschineWatt$:^state:
2:
state ^WaschmaschineWatt$:^state:
3:
state ^WaschmaschineWatt$:^state:
attr:
cmdState:
wait:
waitdel:
condition:
0 ::ReadingValDoIf($hash,'WaschmaschineWatt','state') > 15
1 ::ReadingValDoIf($hash,'WaschmaschineWatt','state') < 0.1
2 ::ReadingValDoIf($hash,'WaschmaschineWatt','state') > 50
3 ::ReadingValDoIf($hash,'WaschmaschineWatt','state') < 4
do:
0:
0 set WaschmaschineBetrieb Programmstart
1:
0 set WaschmaschineBetrieb Aus
2:
0 set WaschmaschineBetrieb läuft
3:
0 set WaschmaschineBetrieb Programmende
4:
helper:
DEVFILTER ^global$|^WaschmaschineWatt$
NOTIFYDEV global|WaschmaschineWatt
event 319
globalinit 1
last_timer 0
sleeptimer -1
timerdev WaschmaschineWatt
timerevent 319
triggerDev WaschmaschineWatt
timerevents:
319
timereventsState:
state: 319
triggerEvents:
319
triggerEventsState:
state: 319
internals:
readings:
all WaschmaschineWatt:state
trigger:
uiState:
uiTable:
Attributes:
event-on-change-reading state
room Keller
hier mal noch dein list vom dummy:
Internals:
CHANGED
FUUID 5e13a412-f33f-599c-c893-130461ca5bf1a24c
NAME WaschmaschineBetrieb
NR 514
STATE Programmstart
TYPE dummy
READINGS:
2020-01-08 18:39:08 state on
Attributes:
devStateIcon Programmstart:scene_washing_machine@green Programmende:scene_washing_machine@orange läuft:scene_washing_machine@yellow Aus:scene_washing_machine@red
event-on-change-reading state
eventMap on:Programmstart off:Aus dimup:läuft dimdown:Programmende
room Keller
setList state:on,off,dimup,dimdown
webCmd Programmstart:Aus:läuft:Programmende
LG
Einfach mal die Reihenfolge der Abfrage ändern. Angefangen mit der 50 und dann kleiner werden. 50 ist ja auch größer wie 15. Daher wird sich nix ändern. Oder du musst Bereiche vorgeben. Also größer 15 und kleiner 50. Z. B.
Gruß Sascha
Gesendet von meinem MI 9 mit Tapatalk
Zitat von: sash.sc am 08 Januar 2020, 19:24:44
Einfach mal die Reihenfolge der Abfrage ändern. Angefangen mit der 50 und dann kleiner werden.
Danke - das war es. oh man :o