Hallo in der Runde,
war lange nicht mehr hier und jetzt muss ich feststellen, dass mein Rollladen nicht so will wie ich. Ich vermute, dass es mein DOIF für die Beschattung ist. Der Laden geht um Punkt 22:30 wieder hoch.
Hier die Def:
Internals:
DEF ([T_Wohnzimmer:temperature:d]>23
and
[wz_Fensterkontakt_Tuer_links:state] eq "closed"
and
[wz_bs:state] eq "off 2.5"
and
[?10:00-22:00]
and
[T_Auszen:temperature:d]>20)
(set wz_gr_Rolladen Ab80) DOELSE (set wz_gr_Rolladen on)
NAME Beschattung_WZ
NR 232
NTFY_ORDER 50-Beschattung_WZ
STATE cmd_2
TYPE DOIF
Readings:
2016-07-17 22:34:18 Device wz_Fensterkontakt_Tuer_links
2016-07-17 22:30:02 cmd 2
2016-07-17 22:30:02 cmd_event wz_Fensterkontakt_Tuer_links
2016-07-17 22:30:02 cmd_nr 2
2016-07-17 22:31:03 e_T_Auszen_temperature 21.2
2016-07-17 22:34:01 e_T_Wohnzimmer_temperature 24
2016-07-17 22:34:18 e_wz_Fensterkontakt_Tuer_links_state closed
2016-07-15 13:57:22 e_wz_bs_state off 2.5
2016-07-17 22:30:02 state cmd_2
2016-07-17 22:00:00 timer_1_c1 18.07.2016 10:00:00
2016-07-17 22:00:00 timer_2_c1 18.07.2016 22:00:00
2016-07-17 22:30:02 wait_timer no timer
Condition:
0 ReadingValDoIf($hash,'T_Wohnzimmer','temperature','(-?\d+(\.\d+)?)','',AttrVal($hash->{NAME},'notexist',undef))>23 and ReadingValDoIf($hash,'wz_Fensterkontakt_Tuer_links','state','','',AttrVal($hash->{NAME},'notexist',undef)) eq "closed" and ReadingValDoIf($hash,'wz_bs','state','','',AttrVal($hash->{NAME},'notexist',undef)) eq "off 2.5" and DOIF_time($hash,$hash->{realtime}{0},$hash->{realtime}{1},$wday,$hms,"") and ReadingValDoIf($hash,'T_Auszen','temperature','(-?\d+(\.\d+)?)','',AttrVal($hash->{NAME},'notexist',undef))>20
Days:
Devices:
0 T_Wohnzimmer wz_Fensterkontakt_Tuer_links wz_bs T_Auszen
all T_Wohnzimmer wz_Fensterkontakt_Tuer_links wz_bs T_Auszen
Do:
0:
0 set wz_gr_Rolladen Ab80
1:
0 set wz_gr_Rolladen on
Helper:
event closed
globalinit 1
last_timer 2
sleepdevice wz_Fensterkontakt_Tuer_links
sleepsubtimer -1
sleeptimer -1
timerdev wz_Fensterkontakt_Tuer_links
timerevent closed
triggerDev wz_Fensterkontakt_Tuer_links
timerevents:
closed
timereventsState:
state: closed
triggerEvents:
closed
triggerEventsState:
state: closed
Internals:
Interval:
0 -1
1 0
Itimer:
Localtime:
0 1468828800
1 1468872000
Readings:
0 T_Wohnzimmer:temperature wz_Fensterkontakt_Tuer_links:state wz_bs:state T_Auszen:temperature
all T_Wohnzimmer:temperature wz_Fensterkontakt_Tuer_links:state wz_bs:state T_Auszen:temperature
Realtime:
0 10:00:00
1 22:00:00
Regexp:
0:
All:
State:
Time:
0 10:00:00
1 22:00:00
Timecond:
0 0
1 0
Timer:
0 0
1 0
Timers:
Trigger:
Triggertime:
1468828800:
localtime 1468828800
Hash:
1468872000:
localtime 1468872000
Hash:
Attributes:
group Schaltzeiten
room Wohnzimmer
wait 0:1800
Für jeden Auslöser ausserhalb von 10-22 Uhr wird die Bedingung unwahr und es tritt der DOELSE-Fall ein.
Du müsstest mit DOELSEIF eine Bedingung für "on" formulieren, z.B. mit sunrise, Twilight, oder einem festen Zeitpunkt.