Open swa72 opened 3 years ago
{# Fußpunkt #} {% set min_hc1=states('sensor.thermostat_hc1_min_flow_temperature')|float %} {% set min_hc2=states('sensor.thermostat_hc2_min_flow_temperature')|float %} {# Endpunkt (hc_max_flow = Max. Vorlauftemperatur) #} {% set design_hc1=states('sensor.thermostat_hc1_design_temperature')|float %} {% set design_hc2=states('sensor.thermostat_hc2_design_temperature')|float %} {# Sommertemperatur #} {% set summer_hc1=states('sensor.thermostat_hc1_summer_temperature')|float %} {% set summer_hc2=states('sensor.thermostat_hc2_summer_temperature')|float %} {# Thermostat Temp, Zeitprogramm gesteuert #} {% set selectedroom_hc1=states('sensor.thermostat_hc1_selected_room_temperature')|float %} {% set selectedroom_hc2=states('sensor.thermostat_hc2_selected_room_temperature')|float %} {# Raumtemperatur-Offset #} {% set offset_hc1=states('sensor.thermostat_hc1_offset_temperature')|float %} {% set offset_hc2=states('sensor.thermostat_hc2_offset_temperature')|float %} {# Gedömpfte Außentemperatur #} {% set t_out=states('sensor.thermostat_damped_outdoor_temperature')|float %} {# Min. Außentemperatur #} {% set min_extern=states('sensor.thermostat_minimal_external_temperature')|float %} {% set roomreference=20|float %} {% set correction=-8|float %} {# overwrite for testing purposes #} {% set t_out=11.9|float %} {# or use t_out=t_out #} {% set offset_hc1=0|float %} {% set selectedroom_hc1=20|float %} {# ----------------------- #} {# now the magic ... #} {# ----------------------- #} {% set a = (min_hc1-design_hc1)/(roomreference-min_extern) %} {% set b = (min_hc2-design_hc2)/(roomreference-min_extern|float) %} {% set target_hc1 = design_hc1 + ((( (t_out - min_extern) * a) + offset_hc1 ) ) + correction %} {% set target_hc2 = design_hc2 + ((( (t_out - min_extern) * b) + offset_hc2 ) ) + (roomreference-selectedroom_hc2)*3 + correction %} {% if t_out >= summer_hc1 %} {% set target_hc1 = 5 %} {% endif %} {% if t_out >= summer_hc2 %} {% set target_hc2 = 5 %} {% endif %} HC1 Min/Fusspunkt ... {{ min_hc1 }}°C HC1 Design/Auslegung . {{ design_hc1 }}°C HC1 Sommer ........... {{ summer_hc1 }}°C HC1 Selected Room Temp {{ selectedroom_hc1 }}°C HC1 offset ........... {{ offset_hc1 }}°C HC2 Min/Fusspunkt {{ min_hc2 }}°C HC2 Design/Auslegung {{ design_hc2 }}°C HC2 Sommer {{ summer_hc2 }}°C HC2 Selected Room Temp {{ selectedroom_hc1 }}°C HC2 offset {{ offset_hc2 }}°C Outside temp {{ t_out }} °C Auslegungstemp {{ min_extern }}°C Room Reference Temp {{roomreference}}°C Result: Target HC1 {{target_hc1|round(0)}}°C Target HC2 {{target_hc2|round(0)}}°C Target temp heating {{ max(target_hc1+offset_hc1, target_hc2+offset_hc2)|round(1) }} ##########################################
Funzt noch nicht ...