Unterschiedliche Lampen je nach Zeitraum

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
timtaylor
Beiträge: 11
Registriert: 30. Dez 2019 21:37
Answers: 0
Wohnort: Heppenheim

Unterschiedliche Lampen je nach Zeitraum

Beitrag von timtaylor »

Hallo

Ich komme mit meiner Rule einfach nicht weiter. Ich möchte, dass in zwei unterschiedlichen Zeiträumen unterschiedliche Lichter geschaltet werden.

Erster Zeitraum ist zwischen 6:00 Uhr und 20:00 Uhr und der zweite Zeitraum ist zwischen 20:00 Uhr und 6:00 Uhr. Irgendwie will es nicht klappen.

Hat jemand eine Tipp für mich???

DANKE!

Code: Alles auswählen

rule "Flur PM Melder"
when
    Item FL_PMelder changed to ON
then
    if (now.getHourOfDay() >6 || now.getHourOfDay() <20) {
    GD_Licht.sendCommand(ON)
    FL_Licht.sendCommand(ON)
//  TH_Wandlicht.sendCommand(ON)
    TH_OG_Deckenlicht.sendCommand(ON)
    TH_UG_Deckenlicht.sendCommand(ON)
    }
    else (now.getHourOfDay() >20 || now.getHourOfDay() <6) {
//  GD_Licht.sendCommand(ON)
    FL_Licht.sendCommand(ON)
    TH_Wandlicht.sendCommand(ON)
//  TH_OG_Deckenlicht.sendCommand(ON)
//  TH_UG_Deckenlicht.sendCommand(ON)
    }
end

heiko74
Beiträge: 14
Registriert: 5. Apr 2019 21:38
Answers: 0

Re: Unterschiedliche Lampen je nach Zeitraum

Beitrag von heiko74 »

Hallo,

im ersten If-Statement muß es wie folgt heißen

Code: Alles auswählen

if (now.getHourOfDay() >6 && now.getHourOfDay() <20)
An "else" kann man keine Bedingung anfügen. Entweder diese weglassen (Zeile oben unterscheidet schon gut genug) oder "else if" verwenden.

timtaylor
Beiträge: 11
Registriert: 30. Dez 2019 21:37
Answers: 0
Wohnort: Heppenheim

Re: Unterschiedliche Lampen je nach Zeitraum

Beitrag von timtaylor »

Hey Heiko

tausend dank für Deine Antwort.

Werde ich testen.

Danke!

Benutzeravatar
udo1toni
Beiträge: 15248
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Unterschiedliche Lampen je nach Zeitraum

Beitrag von udo1toni »

else kennt kein statement, die Klammern hinter dem else inklusive Inhalt müssen weg.

Tipp am Rande: Pack die Items in zwei Gruppen, dann kannst Du einfach die Gruppe ansteuern. Dann sähe die Rule so aus:

Code: Alles auswählen

rule "Flur PM Melder"
when
    Item FL_PMelder changed to ON
then
    if (now.getHourOfDay() > 6 && now.getHourOfDay() < 20)  // 07:00:00 Uhr bis 19:59:59 Uhr
        gDayGroup.members.forEach[i|i.sendCommand(ON)]
    else 
        gNightGroup.members.forEach[i|i.sendCommand(ON)]
end

/*
    GD_Licht (gDayGroup)
    TH_OG_Deckenlicht (gDayGroup)
    TH_UG_Deckenlicht (gDayGroup)
    FL_Licht (gNightGroup,gDayGroup)
    TH_Wandlicht (gNightGroup)
*/
Die Gruppenzugehörigkeit muss natürlich in der *.items Datei definiert werden (alternativ über die Paper UI Oberfläche). Man könnte in diesem Fall sogar auf die .members.forEach[] Methode verzichten, auch ein gDayGroup.sendCommand(ON) würde an alle zugehörigen Items weitergeleitet.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

timtaylor
Beiträge: 11
Registriert: 30. Dez 2019 21:37
Answers: 0
Wohnort: Heppenheim

Re: Unterschiedliche Lampen je nach Zeitraum

Beitrag von timtaylor »

Hallo Udo,

vielen Dank für Deinen Beitrag. Weltklasse! So setze ich das um.

Noch eine Frage. Der Präsenzmelder ist ein KNX PM von MDT. Ich habe das ganze so geschaltet, dass nur der EIN Befehl an eine GA geht. Sobald dieser dann erfolgt, wird die Rule ausgeführt.

Mein Problem ist aktuell, dass die Lichter ausgehen, obwohl ich mich im Bereich des Präsenzmelder aufhalten. Hast Du eine Idee woran das liegt? Eigentlich sollte das Licht doch an bleiben?

Tausend dank im Voraus!

Benutzeravatar
udo1toni
Beiträge: 15248
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Unterschiedliche Lampen je nach Zeitraum

Beitrag von udo1toni »

Wenn der PM nur ON sendet, gibt es nach dem ersten ON kein Change mehr.
Du kannst versuchen, stattdessen mit received update ON als Trigger zu arbeiten.
Alternativ kannst Du auch ein FL_PMelder.postUpdate(OFF) senden.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

timtaylor
Beiträge: 11
Registriert: 30. Dez 2019 21:37
Answers: 0
Wohnort: Heppenheim

Re: Unterschiedliche Lampen je nach Zeitraum

Beitrag von timtaylor »

Danke Udo!!!

Antworten