Rename to klima_dry_control
This commit is contained in:
parent
99df91a50d
commit
3778a3c181
1 changed files with 136 additions and 0 deletions
136
blueprints/automation/klima_dry_control.yaml
Normal file
136
blueprints/automation/klima_dry_control.yaml
Normal file
|
|
@ -0,0 +1,136 @@
|
||||||
|
blueprint:
|
||||||
|
name: Raum entfeuchten (Klimaanlage Dry-Modus)
|
||||||
|
description: >
|
||||||
|
Schaltet eine Klimaanlage für eine einstellbare Zeit in den Dry-Modus,
|
||||||
|
wenn ein Helfer-Schalter aktiviert wird. Startet nur bei ausreichender
|
||||||
|
Luftfeuchtigkeit und geschlossenen Fenstern/Türen. Bricht ab, sobald
|
||||||
|
ein Fenster oder eine Tür geöffnet wird, und setzt die Klimaanlage
|
||||||
|
danach auf den vorherigen Modus zurück.
|
||||||
|
domain: automation
|
||||||
|
input:
|
||||||
|
dehumidify_switch:
|
||||||
|
name: Entfeuchten-Schalter
|
||||||
|
description: input_boolean, der die Entfeuchtung startet (z. B. input_boolean.schlafzimmer_entfeuchten)
|
||||||
|
selector:
|
||||||
|
entity:
|
||||||
|
domain: input_boolean
|
||||||
|
|
||||||
|
climate_entity:
|
||||||
|
name: Klimaanlage
|
||||||
|
description: Climate-Entität, die in den Dry-Modus geschaltet wird
|
||||||
|
selector:
|
||||||
|
entity:
|
||||||
|
domain: climate
|
||||||
|
|
||||||
|
humidity_sensor:
|
||||||
|
name: Luftfeuchtigkeitssensor
|
||||||
|
description: Sensor mit device_class humidity (Wert in %)
|
||||||
|
selector:
|
||||||
|
entity:
|
||||||
|
domain: sensor
|
||||||
|
device_class: humidity
|
||||||
|
|
||||||
|
humidity_threshold:
|
||||||
|
name: Feuchtigkeitsgrenzwert (%)
|
||||||
|
description: Entfeuchtung startet nur, wenn die Luftfeuchtigkeit diesen Wert überschreitet
|
||||||
|
default: 60
|
||||||
|
selector:
|
||||||
|
number:
|
||||||
|
min: 30
|
||||||
|
max: 100
|
||||||
|
step: 1
|
||||||
|
unit_of_measurement: "%"
|
||||||
|
mode: slider
|
||||||
|
|
||||||
|
contact_sensors:
|
||||||
|
name: Fenster- und Türsensoren
|
||||||
|
description: Alle Sensoren müssen geschlossen sein (off = geschlossen). Bei geöffnetem Sensor wird abgebrochen.
|
||||||
|
selector:
|
||||||
|
entity:
|
||||||
|
domain: binary_sensor
|
||||||
|
device_class:
|
||||||
|
- window
|
||||||
|
- door
|
||||||
|
- opening
|
||||||
|
multiple: true
|
||||||
|
|
||||||
|
duration_minutes:
|
||||||
|
name: Laufzeit (Minuten)
|
||||||
|
description: Wie lange die Klimaanlage im Dry-Modus laufen soll
|
||||||
|
default: 10
|
||||||
|
selector:
|
||||||
|
number:
|
||||||
|
min: 1
|
||||||
|
max: 60
|
||||||
|
step: 1
|
||||||
|
unit_of_measurement: min
|
||||||
|
mode: slider
|
||||||
|
|
||||||
|
variables:
|
||||||
|
dehumidify_switch: !input dehumidify_switch
|
||||||
|
climate_entity: !input climate_entity
|
||||||
|
humidity_sensor: !input humidity_sensor
|
||||||
|
humidity_threshold: !input humidity_threshold
|
||||||
|
contact_sensors: !input contact_sensors
|
||||||
|
duration_minutes: !input duration_minutes
|
||||||
|
previous_mode: "{{ state_attr(climate_entity, 'hvac_mode') | default(states(climate_entity)) }}"
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
- platform: state
|
||||||
|
entity_id: !input dehumidify_switch
|
||||||
|
to: "on"
|
||||||
|
|
||||||
|
condition:
|
||||||
|
- condition: template
|
||||||
|
value_template: >
|
||||||
|
{{ states(humidity_sensor) | float(0) > humidity_threshold | float(0) }}
|
||||||
|
|
||||||
|
- condition: template
|
||||||
|
value_template: >
|
||||||
|
{{ expand(contact_sensors)
|
||||||
|
| selectattr('state', 'eq', 'on')
|
||||||
|
| list
|
||||||
|
| count == 0 }}
|
||||||
|
|
||||||
|
action:
|
||||||
|
- service: climate.set_hvac_mode
|
||||||
|
target:
|
||||||
|
entity_id: !input climate_entity
|
||||||
|
data:
|
||||||
|
hvac_mode: dry
|
||||||
|
|
||||||
|
- wait_for_trigger:
|
||||||
|
- platform: template
|
||||||
|
value_template: >
|
||||||
|
{{ expand(contact_sensors)
|
||||||
|
| selectattr('state', 'eq', 'on')
|
||||||
|
| list
|
||||||
|
| count > 0 }}
|
||||||
|
timeout:
|
||||||
|
minutes: !input duration_minutes
|
||||||
|
continue_on_timeout: true
|
||||||
|
|
||||||
|
- choose:
|
||||||
|
- conditions:
|
||||||
|
- condition: template
|
||||||
|
value_template: >
|
||||||
|
{{ previous_mode in ['off', 'heat', 'cool', 'heat_cool', 'auto', 'fan_only'] }}
|
||||||
|
sequence:
|
||||||
|
- service: climate.set_hvac_mode
|
||||||
|
target:
|
||||||
|
entity_id: !input climate_entity
|
||||||
|
data:
|
||||||
|
hvac_mode: "{{ previous_mode }}"
|
||||||
|
default:
|
||||||
|
- service: climate.set_hvac_mode
|
||||||
|
target:
|
||||||
|
entity_id: !input climate_entity
|
||||||
|
data:
|
||||||
|
hvac_mode: "off"
|
||||||
|
|
||||||
|
- service: input_boolean.turn_off
|
||||||
|
target:
|
||||||
|
entity_id: !input dehumidify_switch
|
||||||
|
|
||||||
|
mode: single
|
||||||
|
max_exceeded: silent
|
||||||
Loading…
Reference in a new issue