doif und jalousien nach helligkeit und zeit

Begonnen von rainer1962, 13 Dezember 2018, 19:07:00

Vorheriges Thema - Nächstes Thema

rainer1962

Hallo,irgendwie komme ich nicht ganz klar mit meiner Aufgabenstellung.Ich möchte gern meine Jalousien hochfahren zufällig zwischen 7:00 und 7:30 am Wochentag aber nur wenn es hell ist.Ansonsten sollen sie hochfahen wenn es hell ist.Am wochenende erst zufällig zwischen 8:00-08:45uhr aber nur wenn es hell ist.irgendwie kan ich das mit doif nicht richtig abbilden ... irgendwie stehe ich auf dem schlauch.Hat jeman ne iddee ??? Folgendes habe ich bis jetzt :
(
    [([$SELF:a_zeit_auf_at]+int(rand([$SELF:a_zeit_auf_zufall_at]*60)))|AT] > [[Sonnenschein:sr_indoor]|AT]
    and [?Jalousien_structure:state] ne "on"
    and [?$SELF:a_automatik] eq "Ja"
)
    (set Jalousien_structure 100)
DOELSEIF
(
    [[Sonnenschein:sr_indoor]|AT]   
    and [?Jalousien_structure:state] ne "on"
    and [?$SELF:a_automatik] eq "Ja"
)
    (set Jalousien_structure 100)

DOELSEIF
(
    [([$SELF:a_zeit_auf_we]+int(rand([$SELF:a_zeit_auf_zufall_we]*60)))|WE]
    and [?Jalousien_structure:state] ne "on"
    and [?$SELF:a_automatik] eq "Ja"
)
    (set Jalousien_structure 100)

DOELSEIF
(
    (
    ([([{ReadingsVal("Sonnenschein","[$SELF:a_zeit_zu]","00:00:00")}]+int(rand([$SELF:a_zeit_zu_zufall]*60)))])
    )
    and [?Jalousien_structure:state] ne "off"
    and [?$SELF:a_automatik] eq "Ja"
)
    (set Jalousien_structure 0)
    (set Licht_WZ_Fenster on)
    {set_anwesenheit_simulation()}

Gruss Rainer
2xFHEM auf Raspi3,MAXLAN,HMLAN,KeyMatic,MAX Heizung,2x HM-WDS10_TH-O,3xHM-SEC-SD,3xHM Wandtaster 2-Kanal, 2xWandtaster 6-Kanal,1xHM Bewegungsmelder,4xHM EinbauActor,4x Jalousien Actor,2xEGPM2LAN,2xHM DimAktor,2xFritzbox 6840/6490,4-20ma Levelsensor-Ina219,PIP5048,Raspi2 als Floorplan,4xJeeLink

amenomade

- "AT" und "WE" kenne ich nicht.
- ein Vergleich von Zeiten mit ">" finde ich fragwürdig.

Guck mal eher in die Richtung: https://fhem.de/commandref_DE.html#DOIF_Zeitsteuerung_mit_Zeitberechnung

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

Per

Zitat von: rainer1962 am 13 Dezember 2018, 19:07:00Folgendes habe ich bis jetzt
Und was geht damit oder nicht?

Wenn du einzelne Abfragen testen willst, packe sie in ein DOIF_Reading. Oder ein Test-DOIF ohne Gedöns drum herum.

Damian

Zeitangaben oder Zeitintervalle sind immer nur wahr oder falsch. Ein Größer-Kleiner-Vergleich macht hier keinen Sinn.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

rainer1962

Hallo Damian,wie kann ich dann irgendwie vergleichen wann eine Zeit kleiner oder größer ist wie eine andere im DOIF?
2xFHEM auf Raspi3,MAXLAN,HMLAN,KeyMatic,MAX Heizung,2x HM-WDS10_TH-O,3xHM-SEC-SD,3xHM Wandtaster 2-Kanal, 2xWandtaster 6-Kanal,1xHM Bewegungsmelder,4xHM EinbauActor,4x Jalousien Actor,2xEGPM2LAN,2xHM DimAktor,2xFritzbox 6840/6490,4-20ma Levelsensor-Ina219,PIP5048,Raspi2 als Floorplan,4xJeeLink

Otto123

Hi,

ein Beispiel zwischen 9:00 und 9:20 Uhr :D
defmod di_RolloAufTemp DOIF ([09:00]) (set Rollo.*:FILTER=STATE=zu auf)
attr di_RolloAufTemp do always
attr di_RolloAufTemp room Haus
attr di_RolloAufTemp timerWithWait 1
attr di_RolloAufTemp wait rand(1200)


Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz