Doif Beleuchtung Sunrise / Sunset oder am besten Helligkeitswerte?

Begonnen von ChrisW, 12 Dezember 2017, 20:54:17

Vorheriges Thema - Nächstes Thema

ChrisW

Hallo,
irgendwie finde ich nirgendwo ein Beispiel.
Sonenuntergang set lampe1 on und lampe2 on bis 23.59 dann set lampe1 off und set lampe2 off
Ab Sonnenaufgang set lampe1 on und set lampe2 on ab 10 Uhr set lampe1 off und set lampe2 off.

Noch besser wäre es per helligkeit. Gab es da auch nich etwas ? Wetterdaten oder direkt in FHEM Sonnenstand ..?

Will wenn es draußen Lohnt das Licht an und wenn es hell genug ist aus.
Am besten das es auch am Tag an geht wenn es dunkel ist. Das in einem Doif wenn so etwas geht.

Kann mir nicht vorstellen das es das nicht fertig gibt. Im Wiki hab ich nichts gefunden.
Raspberry PI3 mit allem möglichen.

Ellert

Du hast die Lösung schon textlich formuliert. In der deutschsprachigen Befehlsreferenz ist beschrieben, wie man Zeitspannen formuliert und mit Vergleichen kombiniert.

FranzB94

Hi!
Zitat von: Ellert am 12 Dezember 2017, 21:18:20
.. In der deutschsprachigen Befehlsreferenz ist beschrieben, wie man Zeitspannen formuliert und mit Vergleichen kombiniert.

Das mag sein, aber damit kann/will ChrisW nichts anfangen.

Gruß Franz

Morgennebel


## ([{sunset_abs(-900,"15:00","22:30")}] and [?SH:tomorrow] eq "none")
([?15:00-21:30] and [?SH:tomorrow] eq "none" and [D_vThings.BrightnessAussen:lux] <= 5)
    ({ fhem("set ST_AussenlichtTimed on-for-timer ".SecondsUntilTime("22:00:00"))})                        ## CMD1: Secs until 22:00, !Holiday
DOELSEIF ([{sunset_abs(-900,"15:00","22:30")}] and [?SH:tomorrow] ne "none")
    ({ fhem("set ST_AussenlichtTimed on-for-timer ".SecondsUntilTime("22:45:00"))})                        ## CMD2: Secs until 22:45, Holiday
DOELSEIF ([05:30|8])
    ({ fhem("set ST_AussenlichtTimed on-for-timer ".SecondsUntilTime(sunrise_abs(1200,"05:30","09:00")))}) ## CMD3: Secs until sunrise, !$we
DOELSEIF ([07:00|7])
    ({ fhem("set ST_AussenlichtTimed on-for-timer ".SecondsUntilTime(sunrise_abs(1200,"07:00","09:00")))}) ## CMD4: Secs until sunrise, $we



use Date::Parse;

sub SecondsUntilTime($) {
# Return number of seconds between now and future time
my $secdiff=int(str2time($_[0]) - time);

return( $secdiff >= 0 ? $secdiff : 0);
}


Mit Kalenderferien, LUX-Werten (Aussenhelligkeit), on-for-timer mittels Routine in der 99MyUtils.pm und sunrise/sunset.

Ciao, -MN
Einziger Spender an FHEM e.V. mit Dauerauftrag seit >= 24 Monaten

FHEM: MacMini/ESXi, 2-3 FHEM Instanzen produktiv
In-Use: STELLMOTOR, VALVES, PWM-PWMR, Xiaomi, Allergy, Proplanta, UWZ, MQTT,  Homematic, Luftsensor.info, ESP8266, ESERA