LW IT Solutions
« Blog Overview /Smart Home/Tutorials / Automatyzacja energii słonecznej w Home Assistant: Dynamiczne...
This post in other languages:

Automatyzacja energii słonecznej w Home Assistant: Dynamiczne ładowanie nadwyżką

Automatyzacja energii słonecznej w Home Assistant: Dynamiczne ładowanie nadwyżką
Spis treści
  1. 1. Architektoniczne zasady obliczania nadwyżki w czasie rzeczywistym
  2. 2. Konfiguracja sensora szablonowego (Template Sensor) krok po kroku
  3. 3. Automatyzacja dynamicznego sterowania obciążeniem krok po kroku
  4. 4. Podsumowanie i wartość architektoniczna
  5. Źródła

Maksymalizacja wskaźnika autokonsumpcji z domowej instalacji fotowoltaicznej (PV) wymaga synchronizacji w czasie rzeczywistym między produkcją energii słonecznej, podstawowym poborem gospodarstwa domowego a odbiornikami o wysokim zapotrzebowaniu na moc. Gdy nadwyżka energii słonecznej jest oddawana do sieci publicznej po niskich stawkach rozliczeniowych, opłacalność ekonomiczna systemu znacząco spada. Architektura dynamicznego ładowania nadwyżką w systemie Home Assistant opiera się na danych telemetrycznych z protokołów Modbus lub MQTT, pochodzących z falowników hybrydowych, inteligentnych liczników energii i magazynów bateryjnych. Pozwala ona odbiornikom takim jak magazyny energii, stacje ładowania pojazdów elektrycznych (EV) czy pompy ciepła na precyzyjne dostosowywanie poboru mocy do aktualnej nadwyżki produkcji.

1. Architektoniczne zasady obliczania nadwyżki w czasie rzeczywistym

Dynamiczne zarządzanie nadwyżką opiera się na wyliczaniu mocy netto dostępnej w punkcie przyłączenia sieciowego przed uruchomieniem lub modulacją obciążenia. Architektura systemu opiera się na trzech kluczowych filarach:

  • Moc eksportowana do sieci (sensor.grid_export_power): Parametr wyznaczany w czasie rzeczywistym przez dwukierunkowy licznik energii. Wartość dodatnia oznacza niezagospodarowaną nadwyżkę energii słonecznej opuszczającą gospodarstwo domowe.
  • Dynamiczne progi histerezy: Urządzenia o dużym poborze mocy powinny być uruchamiane wyłącznie wtedy, gdy eksport energii przekracza określony próg przez zdefiniowany czas (np. > 1500 W przez co najmniej 300 sekund), co zapobiega ciągłemu włączaniu i wyłączaniu wywołanemu przez zmienne zachmurzenie.
  • Hierarchiczna dystrybucja obciążenia: Dostępna nadwyżka musi być przydzielana wedle ściśle określonych priorytetów: w pierwszej kolejności do domowego magazynu bateryjnego (przez limity prądu ładowania falownika), w drugiej do stacji ładowania EV, a w trzeciej do bojlerów lub grzałek oporowych.
Dzienna krzywa produkcji solarnej wobec obciążenia bazowego z zakreskowanym oknem nadwyżki, progiem, średnią kroczącą i kolejnością priorytetów
Dopiero zakreskowane okno to prawdziwa nadwyżka: produkcja powyżej obciążenia bazowego, wygładzona średnią kroczącą i powyżej progu. W nim odbiorniki startują w ustalonej kolejności.

2. Konfiguracja sensora szablonowego (Template Sensor) krok po kroku

Aby dostarczyć stabilny, pozbawiony szumów sygnał dla automatyzacji w Home Assistant, w pliku configuration.yaml należy skonfigurować dedykowany sensor wyliczający dokładną moc nadwyżki netto:

  1. Definicja sensora szablonowego: Utworzenie encji sensora o nazwie sensor.solar_surplus_power, która analizuje moc eksportowaną i bezwzględnie ustawia wartości ujemne (pobór z sieci) na wartość zero.
  2. Zastosowanie wygładzania histerezą: Wykorzystanie filtru dolnoprzepustowego lub średniej kroczącej za pomocą integracji Filter w Home Assistant w celu zniwelowania chwilowych skoków mocy wywołanych uruchamianiem drobnego sprzętu AGD.
  3. Spójność jednostek pomiarowych: Upewnienie się, że wszystkie wartości wyrażone są w watach (W), a konfiguracja zawiera definicje device_class: power oraz state_class: measurement zapewniające pełną zgodność z integratorem sumyiemanna.

Produkcyjny kod YAML dla sensora szablonowego

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. Automatyzacja dynamicznego sterowania obciążeniem krok po kroku

Dysponując stabilnym odczytem nadwyżki, należy wdrożyć automatyzację regulującą natężenie prądu ładowania bez wywoływania oscylacji na przyłączu sieciowym:

  1. Definicja wyzwalacza: Konfiguracja wyzwalacza typu Numeric State obserwującego stan encji sensor.solar_surplus_power przekraczającej 1500 W przez nieprzerwane 5 minut.
  2. Weryfikacja warunków: Dodanie warunków wymagających, aby poziom naładowania magazynu energii (SoC) był niższy niż 95%, a pojazd elektryczny pozostawał podłączony do stacji ładowania.
  3. Wykonanie akcji (Dynamiczna regulacja natężenia): Wywołanie usługi dostosowującej prąd ładowania (np. od 6A do 16A na fazę) proporcjonalnie do dostępnej nadwyżki mocy.
  4. Bezpieczne wyłączanie: Utworzenie drugorzędnej automatyzacji wyłączającej, która wstrzymuje ładowanie, jeśli pobór z sieci publicznej przekracza 300 W przez ponad 120 sekund.

Produkcyjny kod YAML automatyzacji (Aktywacja nadwyżką)

alias: "Solar Surplus: Dynamic Load Engagement"
description: "Aktywuje ładowanie nadwyżką przy stabilnym eksporcie powyżej progu."
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. Podsumowanie i wartość architektoniczna

Co da się osiągnąć dzięki temu poradnikowi: Wdrożenie deterministycznego, zabezpieczonego histerezą systemu zarządzania nadwyżką z fotowoltaiki w Home Assistant przy użyciu dedykowanych sensorów szablonowych oraz automatycznych skryptów modulacji mocy.

Wynikająca z tego wartość: Wskaźnik autokonsumpcji energii słonecznej zostaje zmaksymalizowany, nierzadko przekraczając poziom 80% do 90%. Zależność od drogiego poboru energii z sieci w godzinach szczytu wieczornego ulega radykalnemu obniżeniu dzięki priorytetowemu ładowaniu magazynu energii oraz zasilaniu urządzeń o wysokim poborze w godzinach największego nasłonecznienia. Ponadto mechanizmy histerezy chronią przekaźniki przed zużyciem mechanicznym i zapobiegają oscylacjom poboru z sieci przy zmiennym zachmurzeniu.

Lukas Wojcik

Lukas Wojcik

Systems architect and technology enthusiast specializing in scalable tracking solutions, GMP Stack (GA4 & GTM), and robust backend architectures. Advocate for clean code and privacy-first design.

Get in Touch

Briefly describe your project or inquiry for a tailored response. This site is protected by reCAPTCHA.

Napisanie komentarza

Adres e-mail nie jest publikowany. Pola obowiązkowe oznaczono gwiazdką.

ALL ARTICLES & CATEGORIES

CCTV

Śledź tę kategorię przez RSS

Cloud & AI

Śledź tę kategorię przez RSS

Data Privacy

Wszystkie artykuły w tej kategorii (12) Śledź tę kategorię przez RSS

Digital Analytics

Wszystkie artykuły w tej kategorii (46) Śledź tę kategorię przez RSS

Digital Marketing

Wszystkie artykuły w tej kategorii (25) Śledź tę kategorię przez RSS

IT & Networks

Wszystkie artykuły w tej kategorii (15) Śledź tę kategorię przez RSS

Raspberry Pi

Śledź tę kategorię przez RSS

Smart Home

Wszystkie artykuły w tej kategorii (14) Śledź tę kategorię przez RSS

Tworzenie stron internetowych

Śledź tę kategorię przez RSS

Wtyczki i triki WordPress

Śledź tę kategorię przez RSS