Osorkon
Active member
Also hier zuerst mal die korrekte Automatisierung mit Verwendung "Letze Ausführung" als Template Bedingung.
Damit das ganze funktioniert, muss in den Bedingung Teil, die Bedingungen aus den Optionen rein.
So, dass es nur weiter geht, wenn auch einen der 3 Optionen ausgeführt werden kann. Und nicht die Standart Option greift.
Wusste nicht wie Du Deinen Helfer für Pool vorhanden benannt hast, bei mir heisst er:
input_boolean.pool_vorhanden.
Mit den zusätzlichen Bedingungen wird es ganz schön unübersichtlich. Auch muss man drauf achten diese richtig mit UND und ODER zu verknüpfen.
Die Automatisierung, welche "Wann wurde die Pumpe zuletzt ausgeschaltet" berücksichtigt, könnte dann so aussehen.
Habe das Ausschalten der Pumpe nach Ablauf des Timers, ebenfalls in die Automatisierung eingebaut.
Sowie einen zusätzlichen Trigger, wenn Pumpe 30 min und 30s sek an, soll sie ebenfalls ausgeschaltet werden.
Falls diese Manuel eingeschaltet wird, geht sie dann nach 30:30 min aus.
Kannst Du ja wieder raus nehmen, wenn Du das als separate Automatisierung haben möchtest.
Hoffe ich habe all Deinen Entitäten richtig übernommen. Am besten noch malrichtig drüber schauen.
Erstelle meinen Automatisierungen, fast Ausschließlich im grafischen Editor, auch diese beiden hier.
Es ist nur einfacher den yaml Code zu teilen, als irgendwelche Screenshots.
Damit das ganze funktioniert, muss in den Bedingung Teil, die Bedingungen aus den Optionen rein.
So, dass es nur weiter geht, wenn auch einen der 3 Optionen ausgeführt werden kann. Und nicht die Standart Option greift.
YAML:
alias: Poolpumpe
description: ""
trigger:
- platform: time_pattern
minutes: 1
condition:
- condition: or
conditions:
- condition: and
conditions:
- condition: numeric_state
entity_id: sensor.aussentemperatur01_temperature
below: 26
- condition: template
value_template: >
{{ now() - (this.attributes.last_triggered | default((now() -
timedelta(hours = 4 )), true)) > timedelta(hours=3, minutes = 59)
}}
- condition: and
conditions:
- condition: numeric_state
entity_id: sensor.aussentemperatur01_temperature
above: 26
- condition: time
after: "06:00:00"
before: "21:00:00"
- condition: template
value_template: >
{{ now() - (this.attributes.last_triggered | default((now() -
timedelta(hours = 1 )), true)) > timedelta(minutes=59) }}
- condition: and
conditions:
- condition: time
after: "21:00:00"
before: "06:00:00"
- condition: numeric_state
entity_id: sensor.aussentemperatur01_temperature
above: 26
- condition: template
value_template: >
{{ now() - (this.attributes.last_triggered | default((now() -
timedelta(hours = 3 )), true)) > timedelta(hours=2, minutes = 59)
}}
- condition: state
entity_id: input_boolean.pool_vorhanden
state: "on"
action:
- choose:
- conditions:
- condition: numeric_state
entity_id: sensor.aussentemperatur01_temperature
below: 26
- condition: template
value_template: >-
{{ now() - (this.attributes.last_triggered | default((now() -
timedelta(hours = 4 )), true)) > timedelta(hours=3, minutes = 59)
}}
sequence:
- service: light.turn_on
data: {}
target:
entity_id: light.steckdose_garten_kanal_1_pool
- service: timer.start
data:
duration: "00:30:00"
target:
entity_id: timer.pooltimer
- conditions:
- condition: numeric_state
entity_id: sensor.aussentemperatur01_temperature
above: 26
- condition: time
after: "06:00:00"
before: "21:00:00"
- condition: template
value_template: >-
{{ now() - (this.attributes.last_triggered | default((now() -
timedelta(hours = 1 )), true)) > timedelta(minutes=59) }}
sequence:
- service: light.turn_on
data: {}
target:
entity_id: light.steckdose_garten_kanal_1_pool
- service: timer.start
data:
duration: "00:20:00"
target:
entity_id: timer.pooltimer
- conditions:
- condition: time
after: "21:00:00"
before: "06:00:00"
- condition: numeric_state
entity_id: sensor.aussentemperatur01_temperature
above: 26
- condition: template
value_template: >-
{{ now() - (this.attributes.last_triggered | default((now() -
timedelta(hours = 3 )), true)) > timedelta(hours=2, minutes = 59)
}}
sequence:
- service: light.turn_on
data: {}
target:
entity_id: light.steckdose_garten_kanal_1_pool
- service: timer.start
data:
duration: "00:20:00"
target:
entity_id: timer.pooltimer
mode: single
Wusste nicht wie Du Deinen Helfer für Pool vorhanden benannt hast, bei mir heisst er:
input_boolean.pool_vorhanden.
Mit den zusätzlichen Bedingungen wird es ganz schön unübersichtlich. Auch muss man drauf achten diese richtig mit UND und ODER zu verknüpfen.
Die Automatisierung, welche "Wann wurde die Pumpe zuletzt ausgeschaltet" berücksichtigt, könnte dann so aussehen.
YAML:
alias: Poolpumpe
description: ""
mode: single
trigger:
- platform: time_pattern
minutes: 1
id: einschalten
- platform: state
entity_id:
- timer.pooltimer
to: idle
id: ausschalten
- platform: state
entity_id:
- light.steckdose_garten_kanal_1_pool
from: "off"
to: "on"
for:
hours: 0
minutes: 30
seconds: 30
id: ausschalten
condition:
- condition: state
entity_id: input_boolean.pool_vorhanden
state: "on"
action:
- choose:
- conditions:
- condition: numeric_state
entity_id: sensor.aussentemperatur01_temperature
below: 26
- condition: state
entity_id: light.steckdose_garten_kanal_1_pool
state: "off"
for:
hours: 3
minutes: 29
seconds: 0
- condition: trigger
id:
- einschalten
sequence:
- service: light.turn_on
data: {}
target:
entity_id: light.steckdose_garten_kanal_1_pool
- service: timer.start
data:
duration: "00:30:00"
target:
entity_id: timer.pooltimer
- conditions:
- condition: numeric_state
entity_id: sensor.aussentemperatur01_temperature
above: 26
- condition: time
after: "06:00:00"
before: "21:00:00"
- condition: state
entity_id: light.steckdose_garten_kanal_1_pool
state: "off"
for:
hours: 0
minutes: 39
seconds: 0
- condition: trigger
id:
- einschalten
sequence:
- service: light.turn_on
data: {}
target:
entity_id: light.steckdose_garten_kanal_1_pool
- service: timer.start
data:
duration: "00:20:00"
target:
entity_id: timer.pooltimer
- conditions:
- condition: time
after: "21:00:00"
before: "06:00:00"
- condition: numeric_state
entity_id: sensor.aussentemperatur01_temperature
above: 26
- condition: state
entity_id: light.steckdose_garten_kanal_1_pool
state: "off"
for:
hours: 2
minutes: 39
seconds: 0
- condition: trigger
id:
- einschalten
enabled: true
sequence:
- service: light.turn_on
data: {}
target:
entity_id: light.steckdose_garten_kanal_1_pool
- service: timer.start
data:
duration: "00:20:00"
target:
entity_id: timer.pooltimer
- conditions:
- condition: trigger
id:
- ausschalten
sequence:
- service: light.turn_off
data: {}
target:
entity_id: light.steckdose_garten_kanal_1_pool
Habe das Ausschalten der Pumpe nach Ablauf des Timers, ebenfalls in die Automatisierung eingebaut.
Sowie einen zusätzlichen Trigger, wenn Pumpe 30 min und 30s sek an, soll sie ebenfalls ausgeschaltet werden.
Falls diese Manuel eingeschaltet wird, geht sie dann nach 30:30 min aus.
Kannst Du ja wieder raus nehmen, wenn Du das als separate Automatisierung haben möchtest.
Hoffe ich habe all Deinen Entitäten richtig übernommen. Am besten noch malrichtig drüber schauen.
Leider alles scripting Themen und für mich nicht so einfach umsetzbar. Oder kannst du mit zeigen, wie ich das auch z.B. im Grafikeditor gelöst bekomme?
Erstelle meinen Automatisierungen, fast Ausschließlich im grafischen Editor, auch diese beiden hier.
Es ist nur einfacher den yaml Code zu teilen, als irgendwelche Screenshots.
Zuletzt bearbeitet: