Inspiriert von @Tristan und @Meine digitale Welt, Ich glaube das war so einen ganz komische Video Platform.
Hier mal zwei weitere Möglichkeiten, das Licht zweistufig oder mehrstufig (sanft) herunter zu dimmen, sobald der Bewegungsmelder keine Bewegung mehr meldet.
Option 1: Zweistufig
Bewegung erkannt -> Licht An (100%)
30s keine Bewegung -> Licht 50%
1min keine Bewegung -> Licht aus
Jede weitere Bewegung innerhalb des einminutigen Timers schaltet das Licht wieder auf 100%.
Der Aufbau ist relativ einfach. Es gibt insgesamt 3 Auslöser.
Bewegung wird erkannt -> Triggeer-ID: Bewegung
Keine Bewegung für 30s -> trigger-ID: 50
Keine Bewegung für 1min -> Trigger-ID: off
Als Aktion verwende ich die Auswahl mit 3 Optionen.
Jeder Auslöser löst unterschiedliche Optionen aus.
Der mode: restart ist hier eigentlich nicht notwenig, da die Aktionen eigentlich nur wenige ms andauern. Jedoch wollen wir verhindern, dass sich zufällig die Ausschalt Aktion
und die Einschalt Aktion überlagern und das Licht nicht wie erwartet bei Bewegung eingeschaltet wird. Deshalb ist der mode: restart zu empfehlen.
Code: Alles auswählen
alias: Lichtautomatik 2-Stufig
description: ""
trigger:
- platform: state
entity_id:
- binary_sensor.motion
from: "off"
to: "on"
id: Bewegung
- platform: state
entity_id:
- binary_sensor.motion
to: "off"
for:
hours: 0
minutes: 0
seconds: 30
id: "50"
- platform: state
entity_id:
- binary_sensor.motion
to: "off"
for:
hours: 0
minutes: 1
seconds: 0
id: "off"
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: Bewegung
sequence:
- service: light.turn_on
data:
brightness_pct: 100
target:
entity_id: light.licht
- conditions:
- condition: trigger
id: "50"
sequence:
- service: light.licht
data:
brightness_pct: 50
target:
entity_id: light.licht
- conditions:
- condition: trigger
id: "off"
sequence:
- service: light.turn_off
data: {}
target:
entity_id: light.licht
default: []
mode: restart
Hier die zweite Möglichkeit das Licht sanfter z.B. in 5% Schritten herunter zu dimmen.
Die Anzahl der Auslöser reduziert sich auf zwei.
Bewegung wird erkannt -> Triggeer-ID: Bewegung
Keine Bewegung -> trigger-ID: off
Wie im ersten Beispiel wird beim erkenn einer Bewegung das Licht eingeschaltet.
Sobald keine Bewegung mehr erkannt wird, wird das Licht in 5% Schritten alle 3s herunter gedimmt. So dass das Licht nach einer Minute von 100% auf 0 herunter gedimmt wird, also ausgeschaltet wird.
Bei der Option zum herunter dimmen, verwende ich eine Schleife, die solange durchlaufen wird, solange das Licht noch an ist.
Wird während dessen erneut einen Bewegung erkannt, schaltet sich das Licht wieder auf die volle 100%.
Also die Schleife wird vorzeitig unterbrochen, zu diesem Zweck ist der mode: restart zwingend notwendig.
Code: Alles auswählen
alias: Lichtautomatik mehrstufig
description: ""
trigger:
- platform: state
entity_id:
- binary_sensor.motion
from: "off"
to: "on"
id: Bewegung
- platform: state
entity_id:
- binary_sensor.motion
from: "on"
to: "off"
id: "off"
condition: []
action:
- choose:
- conditions:
- condition: trigger
id: Bewegung
sequence:
- service: light.turn_on
data:
brightness_pct: 100
target:
entity_id: light.licht
- conditions:
- condition: trigger
id: "off"
sequence:
- repeat:
while:
- condition: state
entity_id: light.licht
state: "on"
sequence:
- service: light.turn_on
data:
brightness_step_pct: -5
target:
entity_id: light.licht
- delay:
hours: 0
minutes: 0
seconds: 3
milliseconds: 0
default: []
mode: restart
Wie schon gesagt, viele Wege führen nach Rom.
Das ist für mich persönlich die bevorzugte Route.
Wenn Möglich alles in eine Automatisierung zu packen und längere Verzögerungen als Aktionen zu vermeiden.
Gruß
Osorkon