Seite 1 von 1

Bewegung erkannt Licht an und nach 3 Minuten ausschalten

Verfasst: 22. Okt 2019 22:34
von newbie-oh2
Guten Abend,

ich möchte eine Rule erstellen, die folgendes ausführen soll:
When
Bewegung erkannt
Then
Schalte Licht an und nach 3 Minuten wieder an, vorausgesetzt das keine Bewegung mehr erkannt wurde.

Ich habe eine einfache rule geschrieben, die einfach nur bei erkannter Bewegung eine Lampe einschaltet.

Code: Alles auswählen

rule "bm_test"
when
    Item TestMotionSensor_MotionAlarm changed to ON
then
    Licht_EG_Wohnzimmer_Stehlampe.sendCommand(OFF)
end
Gerne möchte ich mit Euch zu einem Ergebnis kommen.

Danke im Voraus

Re: Bewegung erkannt Licht an und nach 3 Minuten ausschalten

Verfasst: 22. Okt 2019 23:59
von udo1toni
Dein Posting ist etwas durcheinander ;)

Allgemein sähe so eine Rule so aus:

Code: Alles auswählen

var Timer tLicht = null //globale Variablen werden zu Beginn der Datei definiert, in der sie gelten sollen

rule "Bewegungsmelder"
when
    Item MotionSensor_MotionAlarm received update ON
then
    tLicht?.cancel
    if(Licht_EG_Wohnzimmer_Stehlampe.state != ON) Licht_EG_Wohnzimmer_Stehlampe.sendCommand(ON)
    tLicht = createTimer(now.plusMinutes(3), [
        if(Licht_EG_Wohnzimmer_Stehlampe.state != OFF) Licht_EG_Wohnzimmer_Stehlampe.sendCommand(OFF)
    ])
end
Die Rule triggert, wenn der MotionSensor den Status auf ON setzt (egal, ob zum wiederholten oder zum ersten Mal).
Ein eventuell laufender Timer (von der vorherigen Erkennung) wird abgebrochen.
Anschließend wird das Licht eingeschaltet, falls es aus ist.
Danach wird ein Timer in drei Minuten angelegt, der das Licht ausschaltet, falls es nicht aus ist.
Sollte die Rule innerhalb der drei Minuten erneut getriggert werden, wiederholt sich das Spiel.

Re: Bewegung erkannt Licht an und nach 3 Minuten ausschalten

Verfasst: 23. Okt 2019 16:27
von newbie-oh2
Hallo udo1toni

hat selbstverständlich funktioniert. Vielen Dank dafür

Gruß
newbie-oh2

Re: Bewegung erkannt Licht an und nach 3 Minuten ausschalten

Verfasst: 25. Okt 2019 09:57
von OH-RNHome
Hallo zusammen,

das ganze würde natürlich auch über das Expire-Binding funktionieren. Einfach in der Item Datei hinter das Licht ein:

Switch Licht_EG_Wohnzimmer_Stehlampe ..., expire="3m,command=OFF" hängen.

Und die Rule:

rule "Bewegungsmelder"
when
Item MotionSensor_MotionAlarm received update ON
then
Licht_EG_Wohnzimmer_Stehlampe.sendCommand(ON)
end

Gruß Olaf

Re: Bewegung erkannt Licht an und nach 3 Minuten ausschalten

Verfasst: 25. Okt 2019 16:32
von udo1toni
Na ja, man sollte dann schon darauf hinweisen, dass der Teil der Konfiguration in die geschweiften Klammern gehört.

Das funktioniert natürlich auch nur, wenn das Item in einer Text Datei definiert ist.

Re: Bewegung erkannt Licht an und nach 3 Minuten ausschalten

Verfasst: 25. Okt 2019 20:04
von OH-RNHome
Du hast natürlich Recht ich werde demnächst daran denken es sachlich korrekt zu formulieren.
Danke für den Hinweis.