Tiffy86

MSM V2.4

Jul 15th, 2026
68
0
Never
3
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 10.06 KB | Source Code | 0 0
  1. alias: Zentrale Steuerung mit Heizungsmodus und VOLLSTÄNDIGEN Hygiene-Checks
  2. description: >-
  3.   Zentrale Steuerung mit Heizungsmodus (Kühlmodus entfernt, Heartbeat-Fix &
  4.   Dauerausschalt-Sicherung)
  5. triggers:
  6.   - trigger: homeassistant
  7.     event: start
  8.     id: ha_start
  9.   - trigger: state
  10.     entity_id: timer.wp_check
  11.     to: idle
  12.     id: check_minute
  13.   - trigger: state
  14.     entity_id: input_select.heizungsmodus
  15.     id: modus_wechsel
  16. conditions: []
  17. actions:
  18.   - variables:
  19.       ta_raw: "{{ states('sensor.outdoor_meter_53_temperatur') }}"
  20.       tvl: "{{ states('sensor.vorlauf_stabil') | float(0) }}"
  21.       thk_raw: "{{ states('number.heizkurve') }}"
  22.       freq_raw: "{{ states('sensor.frequenz_vd') }}"
  23.       aktueller_modus: "{{ states('input_select.heizungsmodus') | lower | trim }}"
  24.   - choose:
  25.       - conditions:
  26.           - condition: template
  27.             value_template: |-
  28.               {{ ta_raw not in ['unknown','unavailable','none','']
  29.                  and thk_raw not in ['unknown','unavailable','none','']
  30.                  and freq_raw not in ['unknown','unavailable','none',''] }}
  31.           - condition: template
  32.             value_template: "{{ aktueller_modus == 'heizen' }}"
  33.         sequence:
  34.           - variables:
  35.               ta: "{{ ta_raw | float }}"
  36.               thk: "{{ thk_raw | float }}"
  37.               freq: "{{ freq_raw | float }}"
  38.           - choose:
  39.               - conditions:
  40.                   - condition: template
  41.                     value_template: "{{ trigger.id == 'ha_start' }}"
  42.                 sequence:
  43.                   - choose:
  44.                       - conditions:
  45.                           - condition: template
  46.                             value_template: >-
  47.                               {{
  48.                               is_state('input_select.wp_state','mindeststillstand')
  49.                                  and is_state('timer.wp_mindeststillstand','idle')
  50.                                  and ta < 15 }}
  51.                         sequence:
  52.                           - action: switch.turn_on
  53.                             target:
  54.                               entity_id: switch.warmepumpe_ein_aus
  55.                           - action: automation.turn_on
  56.                             target:
  57.                               entity_id: automation.warmepumpe_frequenzregelung_sanft
  58.                           - action: input_number.set_value
  59.                             target:
  60.                               entity_id: input_number.heiztemperatur
  61.                             data:
  62.                               value: 42
  63.                           - action: input_select.select_option
  64.                             target:
  65.                               entity_id: input_select.wp_state
  66.                             data:
  67.                               option: normal
  68.               - conditions:
  69.                   - condition: template
  70.                     value_template: |-
  71.                       {{ is_state('timer.wp_mindeststillstand','idle')
  72.                          and is_state('input_select.wp_state','mindeststillstand')
  73.                          and ta < 14.5 }}
  74.                 sequence:
  75.                   - action: switch.turn_on
  76.                     target:
  77.                       entity_id: switch.warmepumpe_ein_aus
  78.                   - action: automation.turn_on
  79.                     target:
  80.                       entity_id: automation.warmepumpe_frequenzregelung_sanft
  81.                   - action: input_number.set_value
  82.                     target:
  83.                       entity_id: input_number.heiztemperatur
  84.                     data:
  85.                       value: 42
  86.                   - action: input_select.select_option
  87.                     target:
  88.                       entity_id: input_select.wp_state
  89.                     data:
  90.                       option: normal
  91.               - conditions:
  92.                   - condition: template
  93.                     value_template: |-
  94.                       {{ is_state('timer.wp_pause_60min','idle')
  95.                          and is_state('input_select.wp_state','pause_60min') }}
  96.                 sequence:
  97.                   - action: input_number.set_value
  98.                     target:
  99.                       entity_id: input_number.heiztemperatur
  100.                     data:
  101.                       value: 42
  102.                   - action: automation.turn_on
  103.                     target:
  104.                       entity_id: automation.warmepumpe_frequenzregelung_sanft
  105.                   - action: input_select.select_option
  106.                     target:
  107.                       entity_id: input_select.wp_state
  108.                     data:
  109.                       option: normal
  110.               - conditions:
  111.                   - condition: template
  112.                     value_template: |-
  113.                       {{ 12 <= ta < 15
  114.                          and tvl > thk + 3
  115.                          and freq < 40
  116.                          and is_state('input_select.wp_state','normal') }}
  117.                 sequence:
  118.                   - action: automation.turn_off
  119.                     target:
  120.                       entity_id: automation.warmepumpe_frequenzregelung_sanft
  121.                     data:
  122.                       stop_actions: true
  123.                   - action: input_boolean.turn_off
  124.                     target:
  125.                       entity_id:
  126.                        - input_boolean.wp_modus_normalbetrieb
  127.                         - input_boolean.wp_modus_aufheizen
  128.                   - action: input_number.set_value
  129.                     target:
  130.                       entity_id: input_number.heiztemperatur
  131.                     data:
  132.                       value: 25
  133.                   - action: input_select.select_option
  134.                     target:
  135.                       entity_id: input_select.wp_state
  136.                     data:
  137.                       option: pause_60min
  138.                   - action: timer.start
  139.                     target:
  140.                       entity_id: timer.wp_pause_60min
  141.               - conditions:
  142.                   - condition: template
  143.                     value_template: |-
  144.                       {{ ta >= 15
  145.                          and freq < 40
  146.                          and not is_state('input_select.wp_state','mindeststillstand') }}
  147.                 sequence:
  148.                   - action: switch.turn_off
  149.                     target:
  150.                       entity_id: switch.warmepumpe_ein_aus
  151.                   - action: automation.turn_off
  152.                     target:
  153.                       entity_id: automation.warmepumpe_frequenzregelung_sanft
  154.                     data:
  155.                       stop_actions: true
  156.                   - action: input_boolean.turn_off
  157.                     target:
  158.                       entity_id:
  159.                        - input_boolean.wp_modus_normalbetrieb
  160.                         - input_boolean.wp_modus_aufheizen
  161.                   - action: input_select.select_option
  162.                     target:
  163.                       entity_id: input_select.wp_state
  164.                     data:
  165.                       option: mindeststillstand
  166.                   - action: timer.start
  167.                     target:
  168.                       entity_id: timer.wp_mindeststillstand
  169.           - if:
  170.               - condition: template
  171.                 value_template: >-
  172.                   {{ is_state('input_select.wp_state','normal') and
  173.                   states('input_number.heiztemperatur')|float != 42 }}
  174.             then:
  175.               - action: input_number.set_value
  176.                 target:
  177.                   entity_id: input_number.heiztemperatur
  178.                 data:
  179.                   value: 42
  180.           - if:
  181.               - condition: template
  182.                 value_template: >-
  183.                   {{ is_state('input_select.wp_state','normal') and
  184.                   is_state('automation.warmepumpe_frequenzregelung_sanft','off')
  185.                   }}
  186.             then:
  187.               - action: automation.turn_on
  188.                 target:
  189.                   entity_id: automation.warmepumpe_frequenzregelung_sanft
  190.           - if:
  191.               - condition: template
  192.                 value_template: >-
  193.                   {{ is_state('input_select.wp_state','pause_60min') and
  194.                   is_state('automation.warmepumpe_frequenzregelung_sanft','on')
  195.                   }}
  196.             then:
  197.               - action: automation.turn_off
  198.                 target:
  199.                   entity_id: automation.warmepumpe_frequenzregelung_sanft
  200.                 data:
  201.                   stop_actions: true
  202.           - if:
  203.               - condition: template
  204.                 value_template: >-
  205.                   {{ is_state('switch.warmepumpe_ein_aus','off') and
  206.                   is_state('automation.warmepumpe_frequenzregelung_sanft','on')
  207.                   }}
  208.             then:
  209.               - action: automation.turn_off
  210.                 target:
  211.                   entity_id: automation.warmepumpe_frequenzregelung_sanft
  212.                 data:
  213.                   stop_actions: true
  214.           - if:
  215.               - condition: template
  216.                 value_template: >-
  217.                   {{ is_state('input_select.wp_state', 'mindeststillstand') and
  218.                   is_state('switch.warmepumpe_ein_aus', 'on') }}
  219.             then:
  220.               - action: switch.turn_off
  221.                 target:
  222.                   entity_id: switch.warmepumpe_ein_aus
  223.       - conditions:
  224.           - condition: template
  225.             value_template: "{{ aktueller_modus == 'aus' or aktueller_modus == 'off' }}"
  226.         sequence:
  227.           - action: switch.turn_off
  228.             target:
  229.               entity_id: switch.warmepumpe_ein_aus
  230.           - action: automation.turn_off
  231.             target:
  232.               entity_id:
  233.                - automation.warmepumpe_frequenzregelung_sanft
  234.             data:
  235.               stop_actions: true
  236.           - action: input_select.select_option
  237.             target:
  238.               entity_id: input_select.wp_state
  239.             data:
  240.               option: mindeststillstand
  241.   - action: timer.start
  242.     target:
  243.       entity_id: timer.wp_check
  244. mode: restart
  245.  
Advertisement
Comments
Add Comment
Please, Sign In to add comment