Sunset verschieben um ein paar Minuten

Begonnen von michaelapp, 09 September 2017, 22:08:39

Vorheriges Thema - Nächstes Thema

michaelapp

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


betateilchen

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

michaelapp

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 ?

kumue

schau dir mal das wait-Attribut von DOIF an.

pink99panther

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

Hollo

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.
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

amenomade

#6
Offset ist in Sekunden. Mit 30 als Offset wird dann tatsächich um 20:20:40 geschlossen, wenn sunset um 20:20:10 ist.

Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus