Außenlicht mit Twilight oder mit Sunrise schalten

Begonnen von Meister_Petz, 23 Januar 2015, 09:15:19

Vorheriges Thema - Nächstes Thema

Meister_Petz

Moin,

was möchte ich:
Mein Außenlicht soll, wenn es dunkel wird einschalten und maximal bis 22 Uhr leuchten. (im Prinzip so wie im sunrise Beispiel)

Da twilight im Gegensatz zu sunrise, die tatsächlichen Lichtverhältnisse mit einbezieht, würde ich da lieber twilight benutzen, oder geht das nicht?

Danke

Petz

noanda

Doch das geht. Es gibt sogar mehrer Wege, die Daten vom Modul zu verwänden.

Ich habe noch einen Dummy dazwischen, damit kann ich auf dem Floorplan auch mal "außerplanmäsig" an- ausschelten.

Noa
Raspberry Pi - FHEM 5.5
HMLAN, RFXtrx433 , CUL 868
HM-CC-RT-DN, HM-SEC-MDIR , HM-SEC-SC-2
HM-LC-SW2-FM, ROTO_ZEL-STG-RM-FZS
ELRO440AB, Flamingo

Meister_Petz

Kannst Du mir da evtl. einen Code Schnipsel aus deiner FHEM cfg zeigen?

noanda

Jepp kann ich,

aber mehr oder weniger nur so halb aus dem Kopf

Definire dir dein Twilight
define myTwilight Twilight XX.110927 XX.524689 4 XXXXXX

musst halt noch Deine Wetterdaten einsätzen und Deinen Horizont

Dann bau dir einen Dummy:

define TwilightDummy dummy
attr TwilightDummy devStateIcon on:StandBy off:Shutdown
attr TwilightDummy fp_WPlan 410,200,2,
attr TwilightDummy setList state:on,off
attr TwilightDummy webCmd state


und dann mach Dir die Notifys dazu

define TwilightDummyOnNTFY notify myTwilight.*:aktEvent:.*ss_weather.* set TwilightDummy on
define TwilightDummyOffA at *22:00 set TwilightDummy off


Der code ist uralt, statt dem Notify kannst Du es jetzt über ein DOIF lösen, und ansatt meinem TwilightDummy kannst Du direkt die Lampe nehmen.

hoffe ich konnte helfen
Raspberry Pi - FHEM 5.5
HMLAN, RFXtrx433 , CUL 868
HM-CC-RT-DN, HM-SEC-MDIR , HM-SEC-SC-2
HM-LC-SW2-FM, ROTO_ZEL-STG-RM-FZS
ELRO440AB, Flamingo

Meister_Petz

Super!

Twilight und Schalter sind klar.

Notify: wenn Ereignis eintritt... mach was - soweit klar

Wie kann man dann das Ereignis übersetzen?
define TwilightDummyOnNTFY notify myTwilight.*:aktEvent:.*ss_weather.* set TwilightDummy on
Nimmt notify dann die Uhrzeit aus ss_weather?

In meinem Fall:
...
ss_weather   16:11:01      23.01.15 11:58
...

Danke!

noanda

Nein es setzt zur ss_weather Zeit den dummy auf on.
Das gleiche kannst Du auch mit allen anderen Dingen aus dem Modul so machen.

du kannst den Dummy auch zu ss_weather auf on stezen und bei sr_weather auf off

Dann hast Du einen Dummy der von Sonnenuntergang bis Sonnenaufgang auf on steht. So hatte ich es.

So habe ich dann die verschidene Lichter in der Wohnung gesteuert und mit Uhrzeiten oder dem Presence Modul kombiniert.
Raspberry Pi - FHEM 5.5
HMLAN, RFXtrx433 , CUL 868
HM-CC-RT-DN, HM-SEC-MDIR , HM-SEC-SC-2
HM-LC-SW2-FM, ROTO_ZEL-STG-RM-FZS
ELRO440AB, Flamingo

Meister_Petz

ok, verstanden. DANKE!

und nun noch, damit es tricky wird: wenn ich eine Stunde nach ss_weather das Licht anschalten will... wie könnte es dann aussehen? ;-)

Wirklich vielen Dank für die Hilfe!

Petz

Dietmar63

define TwilightDummyOnNTFY notify myTwilight.*:aktEvent:.*ss_weather.* set lampe on

du kannst die Lampe oder so auch gleich schalten, oder eine Modul aufrufen, dass das macht:
define TwilightDummyOnNTFY notify myTwilight.*:aktEvent:.*ss_weather.* {eigeneFuntikon()}

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63


und nun noch, damit es tricky wird: wenn ich eine Stunde nach ss_weather das Licht anschalten will... wie könnte es dann aussehen? ;-)

define TwilightDummyOnNTFY notify myTwilight.*:aktEvent:.*ss_weather.* define timer +01:00:00 set lampe on

hat aber den Nachteil, dass eine erneutes Setzen des Timers() timer überschreiben würde und dann eine Fehlermeldung erzeugt würde.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Meister_Petz

Zitat von: Dietmar63 am 23 Januar 2015, 13:17:06
...
hat aber den Nachteil, dass eine erneutes Setzen des Timers() timer überschreiben würde und dann eine Fehlermeldung erzeugt würde.
...
dies gilt dann für den Timer mit Namen "timer" d.h. ich kann Timer mit anderen Namen an anderer Stelle nutzen, richtig?

Dietmar63

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Damian

Zitat von: Meister_Petz am 23 Januar 2015, 13:12:39
ok, verstanden. DANKE!

und nun noch, damit es tricky wird: wenn ich eine Stunde nach ss_weather das Licht anschalten will... wie könnte es dann aussehen? ;-)

Wirklich vielen Dank für die Hilfe!

Petz

Oder z. B. so:

define di_lamp DOIF ([myTwilight:aktEvent] eq "ss_weather") (set lamp on) DOELSEIF ([22:00]) (set lamp off)
attr di_lamp wait 60



Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Meister_Petz

@DAMIAN
wenn ich das mit DOIF versuche, was mir gut gefallen würde, bekomme ich:
Unknown module ([myTwilight:aktEvent] Please define ABEinfahrtZeit first

sowohl myTwilight ist schon definiert und funktioniert als auch ABEinfahrtZeit:

define ABEinfahrtZeit ([myTwilight:aktEvent] eq "ss_weather") (set ABEinfahrt on) DOELSEIF ([22:00]) (set ABEinfahrt off)
attr ABEinfahrtZeit wait 60

Damian

Zitat von: Meister_Petz am 24 Januar 2015, 18:31:32
@DAMIAN
wenn ich das mit DOIF versuche, was mir gut gefallen würde, bekomme ich:
Unknown module ([myTwilight:aktEvent] Please define ABEinfahrtZeit first

sowohl myTwilight ist schon definiert und funktioniert als auch ABEinfahrtZeit:

define ABEinfahrtZeit ([myTwilight:aktEvent] eq "ss_weather") (set ABEinfahrt on) DOELSEIF ([22:00]) (set ABEinfahrt off)
attr ABEinfahrtZeit wait 60


Wo ist der Modulname:

define ABEinfahrtZeit DOIF ([myTwilight:aktEvent] eq "ss_weather")  ....

Gruß

Damian


Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Meister_Petz