Logo8, Jalousiensteuerung "Hilfe"

Begonnen von Wasserwerk33, 24 Juni 2019, 19:23:34

Vorheriges Thema - Nächstes Thema

Wasserwerk33

Hallo Leute

Meine Jalousien werden über eine Logo8 angesteuert. Diese kann ich per Fhem auch Hoch und Runter fahren. Klappt soweit.

Nun würde ich gerne festelegen das die Jalousien nur 10 sek runterfahren dürfen (Sonnenschutz). Nur halt eben nicht in der Logo, sondern über Fhem. Desweitern wenn das klappt würde ich den Schalter den ich in der Logo habe mehrfach benutzen. Also ganz runter, oder nur zur Hälfte.
Nur ich glaube das Fhem Modul kennt keine "on-for-timer" befehle.
Kennt jemand eine Möglichkeit dieses zu Realisieren??
- Autoshutter funktoniert dafür nicht.
- ROLLO kann ich soweit wie ich es herausgefunden habe auch keine genaue angabe machen.

List einer Jalousie:
nternals:
   ADDRESS    7.2
   AREA       db
   CFGFN     
   DB         0
   DEF        db 0 7.2
   FUUID      5d10bb66-f33f-faf7-c0c4-bebef8ba7f9f2bd7
   IODev      myLogo
   LASTInputDev myLogo
   LENGTH     1
   MSGCNT     17176
   NAME       Esszimmer_hoch
   NR         21461
   POSITION   58
   STATE      off
   TYPE       S7_DWrite
   myLogo_MSGCNT 17176
   myLogo_TIME 2019-06-24 19:19:44
   READINGS:
     2019-06-24 19:19:44   state           off
Attributes:
   IODev      myLogo
   devStateIcon off:control_centr_arrow_up@red on:control_centr_arrow_up@green
   room       Logo


List meines DOIF: (Leider fahren die Jalousien ganz runter.) Ausser wenn ich in dem Schalter der Jalousie "trigger_length
10" dann klappt es. Leider ist dann der Taster nicht weiter zu gebrauchen.
Internals:
   CFGFN     
   DEF        ((([Sonnenschutz_schalter] eq "on") and
[8:15-12:00]) and
[LaCrosse_0C:temperature] > 21)
(set Esszimmer_runter on)
DOELSEIF
(([LaCrosse_0C:temperature] < 20) or
[12:15])
(set Esszimmer_hoch on)
   FUUID      5d10c54f-f33f-faf7-7255-6ea51622c6798856
   MODEL      FHEM
   NAME       sonnenschutz_automatik
   NR         21964
   NTFY_ORDER 50-sonnenschutz_automatik
   STATE      cmd_1
   TYPE       DOIF
   VERSION    19303 2019-05-01 08:47:16
   READINGS:
     2019-06-24 19:22:44   Device          LaCrosse_0C
     2019-06-24 19:00:36   cmd             1
     2019-06-24 19:00:36   cmd_event       set_cmd_1
     2019-06-24 19:00:36   cmd_nr          1
     2019-06-24 19:22:44   e_LaCrosse_0C_temperature 30.9
     2019-06-24 19:00:33   mode            enabled
     2019-06-24 19:00:36   state           cmd_1
     2019-06-24 19:00:33   timer_01_c01    25.06.2019 08:15:00
     2019-06-24 19:00:33   timer_02_c01    25.06.2019 12:00:00
     2019-06-24 19:00:33   timer_03_c02    25.06.2019 12:15:00
   Regex:
     accu:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ((::InternalDoIf($hash,'Sonnenschutz_schalter','STATE') eq "on") and  ::DOIF_time($hash,0,1,$wday,$hms)) and  ::ReadingValDoIf($hash,'LaCrosse_0C','temperature') > 21
     1          (::ReadingValDoIf($hash,'LaCrosse_0C','temperature') < 20) or  ::DOIF_time_once($hash,2,$wday)
   days:
   devices:
     0           Sonnenschutz_schalter LaCrosse_0C
     1           LaCrosse_0C
     all         Sonnenschutz_schalter LaCrosse_0C
   do:
     0:
       0          set Esszimmer_runter on
     1:
       0          set Esszimmer_hoch on
     2:
   helper:
     event      battery: ok,temperature: 30.9,humidity: 40,T: 30.9 H: 40
     globalinit 1
     last_timer 3
     sleeptimer -1
     triggerDev LaCrosse_0C
     DOIF_eventas:
       cmd_nr: 1
       cmd: 1
       cmd_event: set_cmd_1
       state: cmd_1
     triggerEvents:
       battery: ok
       temperature: 30.9
       humidity: 40
       T: 30.9 H: 40
     triggerEventsState:
       battery: ok
       temperature: 30.9
       humidity: 40
       state: T: 30.9 H: 40
   internals:
     0           Sonnenschutz_schalter:STATE
     all         Sonnenschutz_schalter:STATE
   interval:
     0          -1
     1          0
   intervalfunc:
   itimer:
   localtime:
     0          1561443300
     1          1561456800
     2          1561457700
   readings:
     0           LaCrosse_0C:temperature
     1           LaCrosse_0C:temperature
     all         LaCrosse_0C:temperature
   realtime:
     0          08:15:00
     1          12:00:00
     2          12:15:00
   time:
     0          8:15
     1          12:00:00
     2          12:15:00
   timeCond:
     0          0
     1          0
     2          1
   timer:
     0          0
     1          0
     2          0
   timers:
     0           0  1
     1           2
   trigger:
   triggertime:
     1561443300:
       localtime  1561443300
       hash:
     1561456800:
       localtime  1561456800
       hash:
     1561457700:
       localtime  1561457700
       hash:
   uiState:
   uiTable:
Attributes:
   room       Logo


Hat jemand eine Idee oder sowas schon mal realisiert?

Danke schon mal im vorraus

amenomade

Ein on-for-timer kann man relativ einfach mit DOIF simulieren:
Zitat von: CommandRefdefine di_on_for_timer ([detector:"motion"])
(set light on)
(set light off)
attr di_on_for_timer do resetwait
attr di_on_for_timer wait 0,30
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus