Hallo zusammen,
ich verzweifel gerade an der Erstellung eines neuen Template Sensors.
Ich möchte die Verlustleistung meines Wechselrichters berechnen, jedoch muss ich hierfür ein paar Einschränkungen machen:
- die AC-Leistung (growatt_output_power) springt beim Starten morgens kurzzeitig auf über 400MW, was in ein paar Sekunden 1200kWh generiert was jede Statistik zerstört. Hier soll die Verlustleistung einfach 0 sein
- beim Starten und Beenden ist die DC-Leistung (leistung_pv_anlage_watt) bereits bei 0 und die AC Leistung noch >0 (bis maximal 200W). Hierfür soll die AC Leistung der Verlustleistung entsprechen (Standby)
Ansonsten soll die Verlustleistung berechnet werden aus DC minus AC-Leistung solange DC > AC. Manchmal kommt es zu ungenauigkeiten und die AC Leistung ist kurzzeitig > der DC Leistung.
Ich habe folgenden Sensor erstellt aber ich bekomme keine Werte für die Verlustleistung. Beide Werte (AC und DC) existieren und DC minus AC aktuell ca. 25W
- sensor:
- name: "Wechselrichter Verlustleistung"
unique_id: wechselrichter_verlustleistung
unit_of_measurement: W
device_class: power
state_class: measurement
state: >
{% if states('sensor.leistung_pv_anlage_watt') | float(0) == 0 and states('sensor.growatt_output_power') | float(0) < 200 %}
{{
states('sensor.growatt_output_power') | float(0) | round(1)
}}
{% elif states('sensor.leistung_pv_anlage_watt') | float(0) > 0 and ( (states('sensor.growatt_output_power') | float(0)) / (states('sensor.leistung_pv_anlage_watt') | float(0)) ) < 1 %}
{{
(states('sensor.leistung_pv_anlage_watt') | float(0) - states('sensor.growatt_output_power') | float(0)) | max(0) | round(1)
}}
{% else %}
0
{% endif %}
availability: >
{{ states('sensor.leistung_pv_anlage_watt') | is_number and
states('sensor.growatt_output_power') | is_number }}
Was habe ich falsch programmiert?
Danke euch für eure Hilfe!
Grüße
Steffen
