Wenn ich Modbus-TCP Adapter und mitgeliefertes Display am gleichen Modbus (Display) betrieben habe, kam die Regelung auch vollständig durcheinander. Die Vorlauftemperatur war plötzlich immer auf “Vollgas” eingestellt, das Display zeigt dann - - -°C oder sowas. Nachdem ich den Modbus TCP Adapter im Monoblock and A3/B3 angeschlossen hatte, war das Verhalten weg.
Wer kann mir von Euch das mit der Berechnung vom COP und vielleicht auch JAZ und SNG mal erklären, direkt an der AWARMA?
Ich hatte zunächst gedacht, dass die Wärmeleistung sich aus dem Delta T-Vorlauf und T-Rücklauf bilden lässt? Die elektrische Leistung messe ich mit einer Shelly Pro 1PM. Aber einen externen Wärmemengenzähler habe ich nicht und den Heizungszweig noch mal öffnen mag ich im Grunde auch nicht. Aber irgendwie sollte man doch mit den Daten aus der Anlage selbst was berechnen können?
Vielleicht nicht unwichtig: Ich habe keinen Puffer und keine Warmwasser-Erzeugung. Ich muss also keine Wärmemengenberechnung an Kreisen außerhalb des Monoblocks durchführen.
Guten Morgen,
ich habe ein fast identisches Setup wie Du.
Hier mal meine Yaml, mit der es bei mir recht gut funktioniert. Die Werte werden zwar nicht zu 100% stimmen aber als Anhaltspunkt taugen sie gut. ![]()
-
sensor:
Thermische Heizleistung (Wird 0, wenn Schalter OFF)
- name: "Heat Pump Thermal Power"
unique_id: heat_pump_thermal_power_kw
unit_of_measurement: "kW"
device_class: power
state_class: measurement
state: >
{% if is_state('switch.esphome_web_f34aa0_p00_on_off', 'on') %}
{% set flow = states('sensor.heat_pump_flow_rate_smoothed') | float(0) %}
{% set vl = states('sensor.esphome_web_f34aa0_c08_water_outlet_temperature') | float(0) %}
{% set rl = states('sensor.esphome_web_f34aa0_c07_water_inlet_temperature') | float(0) %}
{% set delta_t = vl - rl %}
{% if flow > 1.0 and delta_t > 0.3 %}
{{ (flow * delta_t * 0.0698) | round(3) }}
{% else %}
0.0
{% endif %}
{% else %}
0.0
{% endif %}
Momentaner COP (Nur wenn Schalter ON & Leistung > 50W)
- name: "Heat Pump COP Instantaneous"
unique_id: heat_pump_cop_instant
unit_of_measurement: "COP"
state: >
{% set q_th = states('sensor.heat_pump_thermal_power') | float(0) %}
{% set p_el = states('sensor.heizung_smart_meter_2_leistung_l1') | float(0) %}
{% if is_state('switch.esphome_web_f34aa0_p00_on_off', 'on') and p_el > 0.05 %}
{{ (q_th / p_el) | round(2) }}
{% else %}
0.0
{% endif %}
Statistiken (bleiben aktiv für Anzeige)
-
name: "Heat Pump COP Daily"
unique_id: heat_pump_cop_daily
unit_of_measurement: "COP"
state: >
{% set q = states('sensor.heat_pump_heat_daily') | float(0) %}
{% set e = states('sensor.heat_pump_energy_daily') | float(0) %}
{{ (q / e) | round(2) if e > 0 else 0 }} -
name: "Heat Pump COP Monthly"
unique_id: heat_pump_cop_monthly
unit_of_measurement: "COP"
state: >
{% set q = states('sensor.heat_pump_heat_monthly') | float(0) %}
{% set e = states('sensor.heat_pump_energy_monthly') | float(0) %}
{{ (q / e) | round(2) if e > 0 else 0 }} -
name: "Heat Pump JAZ"
unique_id: heat_pump_cop_yearly
unit_of_measurement: "JAZ"
state: >
{% set q = states('sensor.heat_pump_heat_yearly') | float(0) %}
{% set e = states('sensor.heat_pump_energy_yearly') | float(0) %}
{{ (q / e) | round(2) if e > 0 else 0 }}
- name: "Heat Pump Thermal Power"
3. INTEGRATION (Wandelt kW in kWh um)
sensor:
- platform: integration
name: "Heat Pump Thermal Energy Total"
unique_id: heat_pump_thermal_energy_total
source: sensor.heat_pump_thermal_power
method: left
round: 3
4. UTILITY METER
utility_meter:
Erzeugte Wärme (pausiert effektiv, wenn Power = 0)
heat_pump_heat_daily:
source: sensor.heat_pump_thermal_energy_total
cycle: daily
heat_pump_heat_monthly:
source: sensor.heat_pump_thermal_energy_total
cycle: monthly
heat_pump_heat_yearly:
source: sensor.heat_pump_thermal_energy_total
cycle: yearly
Stromverbrauch (läuft immer weiter, misst auch Standby)
heat_pump_energy_daily:
source: sensor.stromaufnahme_heizung
cycle: daily
heat_pump_energy_monthly:
source: sensor.stromaufnahme_heizung
cycle: monthly
heat_pump_energy_yearly:
source: sensor.stromaufnahme_heizung
cycle: yearly