ich habe nun schon ganz viele Fragen hier im Forum zum Thema Bewegungsmelder und Lichtsteuerung durchgelesen und habe aus diesen Komponenten mir folgende Rule zusammen gestellt.
Ich habe dazu einige Fragen.
Die Rule soll folgendes machen:
In unterschiedlichen Zeitfenstern am Tage, soll das Licht in unterschiedlichen Dimmstärken einschalten, solange eine Bewegung vorhanden ist.
Ich hatte es erst mit einem Timer probiert. Das Problem ist nur dabei, das das Licht trotzdem ausschaltet, obwohl noch Bewegung im Raum vorhanden ist.
Nun sehen meine Regeln folgendermaßen aus:
Code: Alles auswählen
rule "Licht an im kleinen Flur 22 Uhr bis 6 Uhr"
when
Item RT_KleinerFlur_N27_AlarmMotion received update ON
then
if(now.getHourOfDay > 22 && now.getHourOfDay < 24 && now.getHourOfDay > 0 && now.getHourOfDay < 6) {
if(LS_KleinerFlur_N33_SwitchDimmer1.state > 0) {
return;
}
LS_KleinerFlur_N33_SwitchDimmer1.sendCommand(39)
}
end
rule "Licht aus im kleinen Flur 22 Uhr bis 6 Uhr"
when
Item RT_KleinerFlur_N27_AlarmMotion received update OFF
then
if(now.getHourOfDay > 22 && now.getHourOfDay < 24 && now.getHourOfDay > 0 && now.getHourOfDay < 6) {
if(LS_KleinerFlur_N33_SwitchDimmer1.state == 0) {
return;
}
LS_KleinerFlur_N33_SwitchDimmer1.sendCommand(0)
}
end
rule "Licht an im kleinen Flur 6 Uhr bis 22 Uhr"
when
Item RT_KleinerFlur_N27_AlarmMotion received update ON
then
if(now.getHourOfDay > 6 && now.getHourOfDay < 22) {
if(LS_KleinerFlur_N33_SwitchDimmer1.state > 0) {
return;
}
LS_KleinerFlur_N33_SwitchDimmer1.sendCommand(80)
}
end
rule "Licht aus im kleinen Flur 6 Uhr bis 22 Uhr"
when
Item RT_KleinerFlur_N27_AlarmMotion received update OFF
then
if(now.getHourOfDay > 6 && now.getHourOfDay < 22) {
if(LS_KleinerFlur_N33_SwitchDimmer1.state == 0) {
return;
}
LS_KleinerFlur_N33_SwitchDimmer1.sendCommand(0)
}
end
Und weiter. Ist es erforderlich, das die Regeln jeweils abgebrochen werden, wenn das Licht schon an ist, bzw. aus ist?
Was wäre, wenn ich diese Abfragen weglassen würde
if(LS_KleinerFlur_N33_SwitchDimmer1.state == 0) {return;} bzw.
if(LS_KleinerFlur_N33_SwitchDimmer1.state > 0) {return;}
Und letzte Frage, kann ich das nicht dennoch mit einem eigenen Timer in der Rule realisieren, denn zurzeit setze ich den Timer in der Konfiguration des Bewegungsmelders?