Die Lambda Wärmepumpe gibt leider über die modbus Schnittstelle nur den Gesamtwert der aufgenommenen Energiemenge weiter.
Es wäre interessant, zu wissen, wieviel kWh für die Heizung und wie viele kWh für das Warmwasser benötigt werden.
Da die Lambda über ein Modbus Register „hp1_compressor_power_consumption_accumulated“ die Gesamtaufnahme weitergibt und über ein anderes „hp1_operating_state“ den Status, kann der Verbrauch berechnet werden.
Der Status für Heizen ist 1, der für Warmwasser 2.
Wenn wir jetzt bei Statusänderung auf 1 (Heizen) den Wert vom Register „hp1_compressor_power_consumption_accumulated“ in einen Helper schreiben und bei Statusänderung von 1 auf einen anderen Wert erneut den Wert in einem Helper speichern, können wir die Differenz und damit die aufgenommene Energie für diesen Heizvorgang errechnen.
Jetzt noch einen Sensor für die Summe und schon können wir die Energieaufnahme nach Art unterscheiden.
Damit der Wert mit dem in der Lambda Oberfläche gleich ist, lesen wir die Lambda einmal am Display aus und setzen diesen Wert als StartWert für den Summensensor über die DevTools.
Also gar nicht soooo schwer. Wie immer ist der Code in meine Git-Repro. https://github.com/GuidoJeuken-6512/HomeAssistant/tree/main
Hier die Sensoren:
Sensoren
input_number:
eu08l_energy_hot_water_sum:
name: „energy_hot_water_sum“
step: 0.1
min: 0
max: 9999999
unit_of_measurement: „kWh“
eu08l_energy_hot_water_start:
name: „energy_hot_water_start“
step: 0.1
min: 0
max: 9999999
initial: 0
unit_of_measurement: „kWh“
eu08l_energy_hot_water_end:
name: „energy_hot_water_end“
step: 0.1
min: 0
max: 9999999
initial: 0
unit_of_measurement: „kWh“
##### Heating Enery Consumption
eu08l_energy_heating_sum:
name: „energy_heating_sum“
step: 0.1
min: 0
max: 9999999
unit_of_measurement: „kWh“
eu08l_energy_heating_start:
name: „energy_heating_start“
step: 0.1
min: 0
max: 9999999
initial: 0
unit_of_measurement: „kWh“
eu08l_energy_heating_end:
name: „energy_heating_end“
step: 0.1
min: 0
max: 9999999
initial: 0
unit_of_measurement: „kWh“
Und hier die eine Automatisierung. Für die zweite Automatisierung für die Energie für das Warmwasser einfach die Sensoren und den Trigger anpassen.
Automatisierung
– id: ‚1728483475534‘
alias: Heating kWh
description: “
triggers:
– trigger: state
entity_id:
– sensor.eu08l_hp1_operating_state
from: ‚1‘
id: from1
– trigger: state
entity_id:
– sensor.eu08l_hp1_operating_state
id: to1
to: ‚1‘
conditions: []
actions:
– choose:
– conditions:
– condition: trigger
id:
– to1
sequence:
– action: input_number.set_value
metadata: {}
data:
value: ‚{{states(“sensor.eu08l_hp1_compressor_power_consumption_accumulated“)
| float(0) /1000}}‘
target:
entity_id: input_number.eu08l_energy_heating_start
– conditions:
– condition: trigger
id:
– from1
sequence:
– action: input_number.set_value
metadata: {}
data:
value: ‚{{states(“sensor.eu08l_hp1_compressor_power_consumption_accumulated“)
| float(0) /1000}}‘
target:
entity_id: input_number.eu08l_energy_heating_end
– action: input_number.set_value
metadata: {}
data:
value: ‚{{states(“input_number.eu08l_energy_heating_sum“) | float(0) + (states(“input_number.eu08l_energy_heating_end“)
|float(0) – states(“input_number.eu08l_energy_heating_start“) |float(0)
) | float(0)}}‘
target:
entity_id: input_number.eu08l_energy_heating_sum
mode: single
Ein schönes Dashboard dazu habe ich noch nicht gebaut, aber hier alle Werte in einer Ansicht.