Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- alias: Zentrale Steuerung mit Heizungsmodus und VOLLSTÄNDIGEN Hygiene-Checks
- description: >-
- Zentrale Steuerung mit Heizungsmodus (Kühlmodus entfernt, Heartbeat-Fix &
- Dauerausschalt-Sicherung)
- triggers:
- - trigger: homeassistant
- event: start
- id: ha_start
- - trigger: state
- entity_id: timer.wp_check
- to: idle
- id: check_minute
- - trigger: state
- entity_id: input_select.heizungsmodus
- id: modus_wechsel
- conditions: []
- actions:
- - variables:
- ta_raw: "{{ states('sensor.outdoor_meter_53_temperatur') }}"
- tvl: "{{ states('sensor.vorlauf_stabil') | float(0) }}"
- thk_raw: "{{ states('number.heizkurve') }}"
- freq_raw: "{{ states('sensor.frequenz_vd') }}"
- aktueller_modus: "{{ states('input_select.heizungsmodus') | lower | trim }}"
- - choose:
- - conditions:
- - condition: template
- value_template: |-
- {{ ta_raw not in ['unknown','unavailable','none','']
- and thk_raw not in ['unknown','unavailable','none','']
- and freq_raw not in ['unknown','unavailable','none',''] }}
- - condition: template
- value_template: "{{ aktueller_modus == 'heizen' }}"
- sequence:
- - variables:
- ta: "{{ ta_raw | float }}"
- thk: "{{ thk_raw | float }}"
- freq: "{{ freq_raw | float }}"
- - choose:
- - conditions:
- - condition: template
- value_template: "{{ trigger.id == 'ha_start' }}"
- sequence:
- - choose:
- - conditions:
- - condition: template
- value_template: >-
- {{
- is_state('input_select.wp_state','mindeststillstand')
- and is_state('timer.wp_mindeststillstand','idle')
- and ta < 15 }}
- sequence:
- - action: switch.turn_on
- target:
- entity_id: switch.warmepumpe_ein_aus
- - action: automation.turn_on
- target:
- entity_id: automation.warmepumpe_frequenzregelung_sanft
- - action: input_number.set_value
- target:
- entity_id: input_number.heiztemperatur
- data:
- value: 42
- - action: input_select.select_option
- target:
- entity_id: input_select.wp_state
- data:
- option: normal
- - conditions:
- - condition: template
- value_template: |-
- {{ is_state('timer.wp_mindeststillstand','idle')
- and is_state('input_select.wp_state','mindeststillstand')
- and ta < 14.5 }}
- sequence:
- - action: switch.turn_on
- target:
- entity_id: switch.warmepumpe_ein_aus
- - action: automation.turn_on
- target:
- entity_id: automation.warmepumpe_frequenzregelung_sanft
- - action: input_number.set_value
- target:
- entity_id: input_number.heiztemperatur
- data:
- value: 42
- - action: input_select.select_option
- target:
- entity_id: input_select.wp_state
- data:
- option: normal
- - conditions:
- - condition: template
- value_template: |-
- {{ is_state('timer.wp_pause_60min','idle')
- and is_state('input_select.wp_state','pause_60min') }}
- sequence:
- - action: input_number.set_value
- target:
- entity_id: input_number.heiztemperatur
- data:
- value: 42
- - action: automation.turn_on
- target:
- entity_id: automation.warmepumpe_frequenzregelung_sanft
- - action: input_select.select_option
- target:
- entity_id: input_select.wp_state
- data:
- option: normal
- - conditions:
- - condition: template
- value_template: |-
- {{ 12 <= ta < 15
- and tvl > thk + 3
- and freq < 40
- and is_state('input_select.wp_state','normal') }}
- sequence:
- - action: automation.turn_off
- target:
- entity_id: automation.warmepumpe_frequenzregelung_sanft
- data:
- stop_actions: true
- - action: input_boolean.turn_off
- target:
- entity_id:
- - input_boolean.wp_modus_normalbetrieb
- - input_boolean.wp_modus_aufheizen
- - action: input_number.set_value
- target:
- entity_id: input_number.heiztemperatur
- data:
- value: 25
- - action: input_select.select_option
- target:
- entity_id: input_select.wp_state
- data:
- option: pause_60min
- - action: timer.start
- target:
- entity_id: timer.wp_pause_60min
- - conditions:
- - condition: template
- value_template: |-
- {{ ta >= 15
- and freq < 40
- and not is_state('input_select.wp_state','mindeststillstand') }}
- sequence:
- - action: switch.turn_off
- target:
- entity_id: switch.warmepumpe_ein_aus
- - action: automation.turn_off
- target:
- entity_id: automation.warmepumpe_frequenzregelung_sanft
- data:
- stop_actions: true
- - action: input_boolean.turn_off
- target:
- entity_id:
- - input_boolean.wp_modus_normalbetrieb
- - input_boolean.wp_modus_aufheizen
- - action: input_select.select_option
- target:
- entity_id: input_select.wp_state
- data:
- option: mindeststillstand
- - action: timer.start
- target:
- entity_id: timer.wp_mindeststillstand
- - if:
- - condition: template
- value_template: >-
- {{ is_state('input_select.wp_state','normal') and
- states('input_number.heiztemperatur')|float != 42 }}
- then:
- - action: input_number.set_value
- target:
- entity_id: input_number.heiztemperatur
- data:
- value: 42
- - if:
- - condition: template
- value_template: >-
- {{ is_state('input_select.wp_state','normal') and
- is_state('automation.warmepumpe_frequenzregelung_sanft','off')
- }}
- then:
- - action: automation.turn_on
- target:
- entity_id: automation.warmepumpe_frequenzregelung_sanft
- - if:
- - condition: template
- value_template: >-
- {{ is_state('input_select.wp_state','pause_60min') and
- is_state('automation.warmepumpe_frequenzregelung_sanft','on')
- }}
- then:
- - action: automation.turn_off
- target:
- entity_id: automation.warmepumpe_frequenzregelung_sanft
- data:
- stop_actions: true
- - if:
- - condition: template
- value_template: >-
- {{ is_state('switch.warmepumpe_ein_aus','off') and
- is_state('automation.warmepumpe_frequenzregelung_sanft','on')
- }}
- then:
- - action: automation.turn_off
- target:
- entity_id: automation.warmepumpe_frequenzregelung_sanft
- data:
- stop_actions: true
- - if:
- - condition: template
- value_template: >-
- {{ is_state('input_select.wp_state', 'mindeststillstand') and
- is_state('switch.warmepumpe_ein_aus', 'on') }}
- then:
- - action: switch.turn_off
- target:
- entity_id: switch.warmepumpe_ein_aus
- - conditions:
- - condition: template
- value_template: "{{ aktueller_modus == 'aus' or aktueller_modus == 'off' }}"
- sequence:
- - action: switch.turn_off
- target:
- entity_id: switch.warmepumpe_ein_aus
- - action: automation.turn_off
- target:
- entity_id:
- - automation.warmepumpe_frequenzregelung_sanft
- data:
- stop_actions: true
- - action: input_select.select_option
- target:
- entity_id: input_select.wp_state
- data:
- option: mindeststillstand
- - action: timer.start
- target:
- entity_id: timer.wp_check
- mode: restart
Advertisement