Heizplan über Automatisierung
Ich wollte das Thema auch hier in diesem schönen Forum kurz anbringen.
Ich habe mir für jeden Raum eine Automatisierung angelegt, wo ich die Zeiten und
Soll/Set-Temperaturen für eine Woche festlege.
Die Temperaturen und Zeiten habe ich flexibel mit helper gelöst.
Soweit funktioniert das auch. Ich habe nur aktuell noch ein Problem, dass mir
irgendwann die Set/Soll Temperaturen der Heizkörper Thermostate alle auf 0 Grad stehen
Ich kann noch nicht nachvollziehen wie und wann das passiert.
Habt ihr ein Vorschläge wie ich das eingrenzen kann oder vllt. seht ihr am Code schon, wo mein Fehler liegt.
Code: Alles auswählen
alias: HEIZUNG Anne Heizplan
description: Set thermostat for Heat
trigger:
- id: schedule
platform: time
at:
- input_datetime.anne_sp1_wk
- input_datetime.anne_sp2_wk
- input_datetime.anne_sp3_wk
- input_datetime.anne_sp4_wk
- input_datetime.anne_sp5_wk
- input_datetime.anne_sp1_wknd
- input_datetime.anne_sp2_wknd
- input_datetime.anne_sp3_wknd
- input_datetime.anne_sp4_wknd
- input_datetime.anne_sp5_wknd
- id: override
platform: state
entity_id: input_boolean.heizsaison
to: "on"
for: "00:00:30"
- id: disable
platform: state
entity_id: input_boolean.heizsaison
to: "off"
for: "00:00:30"
condition: []
action:
- choose:
- conditions:
- "{{ trigger.id != 'disable' }}"
- "{{ is_state('input_boolean.heizsaison', 'on') }}"
sequence:
- service: climate.set_temperature
target:
entity_id: climate.anne
data:
temperature: |-
{% if now().isoweekday() in [1,2,3,4,5] %}
{% if (now().hour == state_attr('input_datetime.anne_sp1_wk', 'hour') and now().minute == state_attr('input_datetime.anne_sp1_wk', 'minute')) %}
{{ states('input_number.anne_t1_wk')|float(default=0) }}
{% elif (now().hour == state_attr('input_datetime.anne_sp2_wk', 'hour') and now().minute == state_attr('input_datetime.anne_sp2_wk', 'minute')) %}
{{ states('input_number.anne_t2_wk')|float(default=0) }}
{% elif (now().hour == state_attr('input_datetime.anne_sp3_wk', 'hour') and now().minute == state_attr('input_datetime.anne_sp3_wk', 'minute')) %}
{{ states('input_number.anne_t3_wk')|float(default=0) }}
{% elif (now().hour == state_attr('input_datetime.anne_sp4_wk', 'hour') and now().minute == state_attr('input_datetime.anne_sp4_wk', 'minute')) %}
{{ states('input_number.anne_t4_wk')|float(default=0) }}
{% elif (now().hour == state_attr('input_datetime.anne_sp5_wk', 'hour') and now().minute == state_attr('input_datetime.anne_sp5_wk', 'minute')) %}
{{ states('input_number.anne_t5_wk')|float(default=0) }}
{% else %}
0
{% endif %}
{% else %}
{% if (now().hour == state_attr('input_datetime.anne_sp1_wknd', 'hour') and now().minute == state_attr('input_datetime.anne_sp1_wknd', 'minute')) %}
{{ states('input_number.anne_t1_wknd')|float(default=0) }}
{% elif (now().hour == state_attr('input_datetime.anne_sp2_wknd', 'hour') and now().minute == state_attr('input_datetime.anne_sp2_wknd', 'minute')) %}
{{ states('input_number.anne_t2_wknd')|float(default=0) }}
{% elif (now().hour == state_attr('input_datetime.anne_sp3_wknd', 'hour') and now().minute == state_attr('input_datetime.anne_sp3_wknd', 'minute')) %}
{{ states('input_number.anne_t3_wknd')|float(default=0) }}
{% elif (now().hour == state_attr('input_datetime.anne_sp4_wknd', 'hour') and now().minute == state_attr('input_datetime.anne_sp4_wknd', 'minute')) %}
{{ states('input_number.anne_t4_wknd')|float(default=0) }}
{% elif (now().hour == state_attr('input_datetime.anne_sp5_wknd', 'hour') and now().minute == state_attr('input_datetime.anne_sp5_wknd', 'minute')) %}
{{ states('input_number.anne_t5_wknd')|float(default=0) }}
{% else %}a
0
{% endif %}
{% endif %}
- conditions:
- "{{ trigger.id == 'disable' }}"
sequence:
- service: climate.turn_off
target:
entity_id: climate.anne
data:
hvac_mode: "off"
default: []
mode: single