Bewegungsmelder Licht dimmen, Taster Licht an nicht dimmen, Zeitgesteuert

Begonnen von ms_steini, 08 Januar 2016, 11:24:21

Vorheriges Thema - Nächstes Thema

ms_steini

Hallo Gemeinde,

ich hoffe ich bin hier richtig...

Ich möchte mit vorhandenen Hardware von Homematic

2 Bewegungsmelder - HM-Sen-MDIR-O-2 (wird noch durch HM-Sen-MDIR-WM55 sobald lieferbar ersetzt)
1 Dimmer - HM-LC-Dim1L-CV
Tasterschnittstelle 4fach - HM-PBI-4-FM


folgendes in unsere Diele umsetzen und benötige euere Hilfe:

von 05:30 Uhr bis 00:30 Uhr soll durch die Bewegungsmelder das Licht zu 15% gedimmt und für 1 Minute eingeschaltet werden
von 00:30 Uhr bis 05:30 Uhr das gleiche nur zu 5% gedimmt.

Licht zu 100% per Taster einschalten und so lange eingeschaltet lassen bis die letzt erkannte Bewegung vom Bewegungsmelder größer 15 Minuten ist.

Was habe ich bisher gemacht:

ich versuche das irgendwie mit DOIF zu lösen und stoße schon auf Probleme 2 Bewegungsmelder einzubinden
define Diele_LichtAn_BW_1 DOIF (([BW_1:?motion] or [BW_2:?motion] and [Dimm:state] ne "on" and [?BW_1:brightness] < 50 or [?BW_2:brightness] < 50)) (set Dimm 15 60 0)
funktioniert leider so nicht, nur wenn ich die "or" und den 2ten Bewegungsmelder raus lasse.

vieleicht brauche ich auch nur einen kleinen Schubser in die richhtige Richtung..

alle Suchergebnisse brachten mich nicht wirklich weiter.

Besten Dank
(achso, ich bin noch anfänger, habt bitte nachsicht mit mir)









Ellert

Die Operatoren werden ihrer Rangfolge gemäß ausgeführt. Also, erst "and" und dann "or, wenn "or" Vorang haben soll, musst Du die Operation einklammern.

Bei A or B and C wird erst  B and C ausgeführt und das Ergebnis mit A "or" verknüpft.
Bei (A or B) and C wird erst A or B ausgeführt und das Ergebnis mit C "and" verknüpft.

Für die Zeitsteuerung schau mal hier: http://fhem.de/commandref_DE.html#DOIF_Zeitsteuerung

ms_steini

vielen Dank für die Antwort, sorry das ich mich jetzt erst melde aber ich kasper schon einige Tage mit dem Dimmer und den Bewegungsmelder rum... Ohne Erfolg

so funktioniert die Zeitsteuerung mit den unterschiedlichen Dimmwerten und 2 Bewegungsmelder, kann man sicherlich auch schöner/kürzer/besser gestallten.
BW_.*._OG_Diele:motion {
my $hm = sprintf("%02d:%02d", $hour, $min);
if ((ReadingsVal("BW_1_OG_Diele","brightness", 0) < 40 || ReadingsVal("BW_2_OG_Diele","brightness", 0) < 40) && ($hm gt "05:30" && $hm lt "22:30")) {fhem ("set Dimmer_OG_Diele 15 60 0");
} else {
if ((ReadingsVal("BW_1_OG_Diele","brightness", 0) < 40 || ReadingsVal("BW_2_OG_Diele","brightness", 0) < 40) && ($hm gt "22:30" && $hm lt "05:30")) {fhem ("set Dimmer_OG_Diele 5 60 0");
}
}
}


was nur sehr komisch ist, in der "ELSE" soll zwischwischen 22:30 und 05:30 das Licht mit 5% und für eine Minute eingeschaltet werden, das funktioniert leider nicht, die LED's leuchten nicht, erst wenn der Dimmwert >= 10 ist.
Schalte ich den Dimmer mit x% >= 10 ein und Dimme dann auf 5% runter leuchten die LED's mit 5%.
Ich habe auch die Register des Dimmers angepasst, hier ein kurzer Auszug:


   3:BW_1_OG_Diele_chn:01 lgDimMaxLvl      :100 %
   3:BW_1_OG_Diele_chn:01 lgDimMinLvl      :0 %
   3:BW_1_OG_Diele_chn:01 lgDimStep        :1 %
   3:BW_1_OG_Diele_chn:01 lgMultiExec      :on
   3:BW_1_OG_Diele_chn:01 lgOffDly         :0 s
   3:BW_1_OG_Diele_chn:01 lgOffDlyBlink    :on
   3:BW_1_OG_Diele_chn:01 lgOffDlyNewTime  :0.4 s
   3:BW_1_OG_Diele_chn:01 lgOffDlyOldTime  :0.4 s
   3:BW_1_OG_Diele_chn:01 lgOffDlyStep     :5 %
   3:BW_1_OG_Diele_chn:01 lgOffLevel       :0 %
   3:BW_1_OG_Diele_chn:01 lgOffTime        :unused
   3:BW_1_OG_Diele_chn:01 lgOffTimeMode    :absolut
   3:BW_1_OG_Diele_chn:01 lgOnDly          :0 s
   3:BW_1_OG_Diele_chn:01 lgOnDlyMode      :setToOff
   3:BW_1_OG_Diele_chn:01 lgOnLevel        :15 %
   3:BW_1_OG_Diele_chn:01 lgOnLvlPrio      :high
   3:BW_1_OG_Diele_chn:01 lgOnMinLevel     :1 %


Der Wert 3:BW_1_OG_Diele_chn:01   lgOnMinLevel     :1 % stand vorher auf 10%, das wäre dann verständlich. Aber auch mit 1% zeigt FHEM die LED's mit 5% an, aber sie leuchten nicht.

Ich weiß einfach nicht mehr weiter

ms_steini

ne, ist ja quatsch was ich da erzähle, funktioniert garnicht richtig.
Der "set Dimmer_OG_Diele 15 60 0" wird immer 2 mal ausgeführt, soll heißen das Licht geht für 60 Sec. an, dann kurz aus und wieder für 60 Sec. an. Das soll so aber nicht, soll nur bei erkannter Bewegung für 60 Sec. und je nach Zeit einmal mit 15% oder 5% eingeschaltet werden.

ich steh voll auf dem Schlauch. Vor lauter FHEM-Wiki, CommandRef und div. Forenbeiträge sehe ich den Baum vor lauter Bäume nicht mehr.