Hallo zusammen,
ich würde gerne meine Rollläden zeitversetzt runter fahren lassen und nicht alle auf einmal.
Mein Code lautet:
([{sunset ("CIVIL",30,"20:00","21:00")}])
Der Sonnenuntergang ist im Moment 20:20:10 Uhr, sollte der Rollladen jetzt nicht um 20:20:40 runterfahren?
Der List meines DOIf lautet:
Internals:
DEF ([{sunrise("CIVIL",0,"06:00","09:00")}]) (set RL_EG_ESS_TUE up) DOELSEIF ([{sunset ("CIVIL",30,"20:00","21:00")}]) (set RL_EG_ESS_TUE down)
NAME EG_ESS_TUE
NR 59
NTFY_ORDER 50-EG_ESS_TUE
STATE initialized
TYPE DOIF
READINGS:
2017-09-09 22:07:08 cmd 0
2017-09-09 22:07:08 state initialized
2017-09-09 22:07:08 timer_01_c01 10.09.2017 06:17:45
2017-09-09 22:07:08 timer_02_c02 10.09.2017 20:18:29
condition:
0 DOIF_time_once($hash,0,$wday)
1 DOIF_time_once($hash,1,$wday)
days:
devices:
do:
0:
0 set RL_EG_ESS_TUE up
1:
0 set RL_EG_ESS_TUE down
2:
helper:
globalinit 1
last_timer 2
sleeptimer -1
itimer:
localtime:
0 1505017065
1 1505067509
realtime:
0 06:17:45
1 20:18:29
regexp:
all:
state:
STATE:
time:
0 {sunrise("CIVIL",0,"06:00","09:00")}
1 {sunset("CIVIL",30,"20:00","21:00")}
timeCond:
0 0
1 1
timer:
0 0
1 0
timers:
0 0
1 1
triggertime:
1505017065:
localtime 1505017065
hash:
1505067509:
localtime 1505067509
hash:
Attributes:
do always
Gruß
Michael
nö.
OK das er das nicht macht, habe ich heute Abend festgestellt. Er hat gar nichts gemacht.
Hat mir jemand einen Tip wie es korrekt lauten sollte ?
schau dir mal das wait-Attribut von DOIF an.
Ich hab für jeden Vorgang und jeden Rolladen ein extra at
hier mal eins davon.
Internals:
COMMAND set Rollo_Bad 0
DEF *{sunset("HORIZON=-3.0",int(rand(1200)-600),"16:00","22:30")} set Rollo_Bad 0
NAME Ro_Bad_zu
NR 187
NTM 19:47:50
PERIODIC yes
RELATIVE no
REP -1
STATE Next: 19:47:50
TIMESPEC {sunset("HORIZON=-3.0",int(rand(1200)-600),"16:00","22:30")}
TRIGGERTIME 1505065670
TRIGGERTIME_FMT 2017-09-10 19:47:50
TYPE at
READINGS:
2017-09-09 20:08:20 state Next: 19:47:50
Attributes:
disable 0
room Rolladen
Zitat von: michaelapp am 09 September 2017, 22:08:39
...
Der Sonnenuntergang ist im Moment 20:20:10 Uhr, sollte der Rollladen jetzt nicht um 20:20:40 runterfahren?
...
Unabhängig von DOIF... 30 Minuten wäre zumindest 20:50 Uhr.
Wenn ich das richtig im Kopf habe, sind 30 Minuten aber 30 x 60 Sek =1800 als Parameter.
Offset ist in Sekunden. Mit 30 als Offset wird dann tatsächich um 20:20:40 geschlossen, wenn sunset um 20:20:10 ist.