Automatisierung von Solarenergie in Home Assistant: Dynamische Überschussladung

Inhalt
Die Maximierung der Eigenverbrauchsquote einer privaten Photovoltaikanlage (PV) erfordert die Echtzeit-Synchronisation zwischen solarer Erzeugungsleistung, haushaltstypischer Grundlast und leistungsstarken elektrischen Verbrauchern. Wird überschüssige Solarenergie zu niedrigen Einspeisevergütungen in das öffentliche Netz eingespeist, sinkt die wirtschaftliche Effizienz der Anlage erheblich. Die Implementierung einer dynamischen Überschussladungs-Architektur in Home Assistant – basierend auf Modbus- oder MQTT-Telemetriedaten von Hybrid-Wechselrichtern, Smart Metern und Batteriespeichern – ermöglicht es, Großverbraucher (wie Batteriespeicher, Wallboxen und Wärmepumpen) in Echtzeit exakt nach der verbleibenden Überschussleistung zu steuern.
1. Architektonische Grundlagen der Echtzeit-Überschussberechnung
Das dynamische Überschussmanagement basiert auf der Ermittlung der netto am Netzanschlusspunkt verfügbaren Leistung vor der Aktivierung oder Regelung von Lasten. Die Systemarchitektur stützt sich auf drei Kernkriterien:
- Netzeinspeisung (
sensor.grid_export_power): Die in Echtzeit durch einen bidirektionalen Smart Meter gemessene Einspeiseleistung. Ein positiver Wert signalisiert ungenutzten solaren Überschuss. - Dynamische Hysterese-Schwellen: Leistungsintensive Verbraucher dürfen erst aktiviert werden, wenn die Einspeisung einen definierten Schwellenwert über eine Mindestzeitdauer überschreitet (z. B. > 1.500 W für mindestens 300 Sekunden), um ein Takten durch wechselnde Bewölkung zu verhindern.
- Hierarchische Lastverteilung: Der verfügbare Überschuss muss priorisiert vergeben werden: an erster Stelle an den Heimbatteriespeicher (über Ladeleistungs-Limits des Wechselrichters), danach an die Wallbox für Elektrofahrzeuge und zuletzt an thermische Speicher oder Heizstäbe.
2. Schritt-für-Schritt-Konfiguration des Template-Sensors
Um ein sauberes, gefiltertes Signal für Home-Assistant-Automatisierungen bereitzustellen, muss in der configuration.yaml ein dedizierter Template-Sensor zur exakten Berechnung des Netto-Überschusses definiert werden:
- Definition des Template-Sensors: Erstellung einer modernen Template-Sensor-Entität namens
sensor.solar_surplus_power, welche die Netzeinspeisung auswertet und negative Werte (Netzbezug) strikt auf Null setzt. - Anwendung einer Hysterese-Glättung: Einsatz eines Tiefpassfilters oder gleitenden Mittelwerts über die Home-Assistant-Filter-Integration, um kurzzeitige Leistungsspitzen durch anlaufende Haushaltsgeräte zu glätten.
- Sicherstellung der Einheitenkonsistenz: Alle Leistungswerte müssen einheitlich in Watt (W) geführt werden, ergänzt durch explizite Definitionen von
device_class: powerundstate_class: measurementfür die Kompatibilität mit Riemann-Summen-Integratoren.
Produktionsreifer YAML-Template-Sensor
template:
- sensor:
- name: "Solar Surplus Power"
unique_id: "solar_surplus_power_dynamic"
unit_of_measurement: "W"
device_class: "power"
state_class: "measurement"
state: >
{% set export_power = states('sensor.grid_meter_export_power') | float(0) %}
{% set import_power = states('sensor.grid_meter_import_power') | float(0) %}
{% if export_power > import_power %}
{{ (export_power - import_power) | round(0) }}
{% else %}
0
{% endif %}
availability: >
{{ has_value('sensor.grid_meter_export_power') and has_value('sensor.grid_meter_import_power') }}
3. Schritt-für-Schritt-Automatisierung für dynamische Laststeuerung
Auf Basis des zuverlässigen Überschuss-Sensors wird eine Automatisierung eingerichtet, welche die Ladeleistung regelt, ohne ein Schwingen des Netzbezugs zu verursachen:
- Trigger-Definition: Konfiguration eines Numeric-State-Triggers, der überwacht, ob
sensor.solar_surplus_powerfür kontinuierlich 5 Minuten den Wert von 1.500 W überschreitet. - Bedingungs-Prüfung: Festlegung von Bedingungen, wonach der Ladezustand (SoC) des Batteriespeichers unter 95 % liegen muss und das Elektrofahrzeug angeschlossen ist.
- Aktions-Ausführung (Dynamische Stromanpassung): Ausführung eines Service-Calls zur dynamischen Anpassung des Lade-Stroms (z. B. von 6A auf bis zu 16A pro Phase) proportional zum verfügbaren Überschuss-Delta.
- Kontrollierte Abschaltung: Erstellung einer sekundären Abschalt-Automatisierung, die den Ladevorgang pausiert oder drosselt, sobald der Netzbezug über mehr als 120 Sekunden die Marke von 300 W übersteigt.
Produktionsreifes Automatisierungs-YAML (Überschuss-Aktivierung)
alias: "Solar Surplus: Dynamic Load Engagement"
description: "Aktiviert Überschussladung bei stabiler Einspeisung über Schwellenwert."
trigger:
- platform: numeric_state
entity_id: sensor.solar_surplus_power
above: 1500
for:
minutes: 5
condition:
- condition: numeric_state
entity_id: sensor.battery_state_of_charge
below: 95
action:
- service: number.set_value
target:
entity_id: number.inverter_max_charge_current
data:
value: >
{% set surplus = states('sensor.solar_surplus_power') | float(0) %}
{% set voltage = 50.0 %}
{{ [ ((surplus * 0.9) / voltage) | round(0), 40 ] | min }}
mode: single
4. Zusammenfassung & Mehrwert
Was sich damit erreichen lässt: Die erfolgreiche Einrichtung eines deterministischen, hysterese-geschützten Solarenergie-Überschussmanagements in Home Assistant mittels maßgeschneiderter Template-Sensoren und automatisierter Leistungsanpassungs-Skripte.
Resultierender Mehrwert: Die Photovoltaik-Eigenverbrauchsquote wird auf Werte von häufig über 80 % bis 90 % maximiert. Der teure Netzbezug in den abendlichen Spitzenzeiten wird drastisch minimiert, indem Heimbatteriespeicher und energieintensive Haushaltsgeräte gezielt im Mittagshoch der Sonneneinstrahlung geladen werden. Zudem schützen Hysterese-Timer vor mechanischem Verschleiß an Schützrelais und verhindern Netzpendelungen durch ziehende Wolken.