LW IT Solutions
« Przegląd bloga /Smart Home/Tutorials / Automatyzacja energii słonecznej w Home Assistant: Dynamiczne...
Ten artykuł w innych językach:

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. Pytania i odpowiedzi
  6. Ź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.

Pytania i odpowiedzi

Czy automatyzacja na bieżąco dostosowuje prąd ładowania, gdy zmienia się nadwyżka?

Nie. Wyzwalacz numeric_state uruchamia się, gdy wartość przekroczy próg i utrzyma się powyżej niego przez pięć minut; dopóki pozostaje powyżej, nie uruchamia się ponownie. Akcja ustawia więc prąd ładowania raz i utrzymuje go, dopóki nadwyżka nie spadnie poniżej 1500 W i znowu nie wzrośnie, niezależnie od tego, jak w tym czasie przesuwa się słońce.

Bieżące nadążanie za nadwyżką wymaga drugiego wyzwalacza, na przykład time_pattern co minutę, oraz warunku sprawdzającego, czy regulacja ma w ogóle nastąpić. Ważniejszy od częstotliwości wyzwalania jest rachunek: licznik siedzi przy przyłączu sieciowym, więc zmierzona nadwyżka to to, co zostaje po bieżącym ładowaniu. Nowa wartość zadana wynika zatem z mocy ładowania zgłaszanej przez falownik powiększonej o zmierzoną nadwyżkę, a nie z samej nadwyżki; inaczej regulacja goni własny pobór magazynu, a prąd waha się w górę i w dół.

Czy 1500 W nadwyżki wystarcza jako próg załączenia dla stacji ładowania EV?

Przy ładowaniu jednofazowym ledwo wystarcza. Najmniejszy prąd ładowania 6 A odpowiada przy 230 V mocy około 1380 W; po włączeniu zostaje około 120 W nadwyżki, a warunek wyłączenia przy 300 W poboru nie jest spełniony.

Trójfazowa stacja ładowania pobiera natomiast przy 6 A na fazę około 4,1 kW. Przy nadwyżce tuż powyżej progu po włączeniu pobiera z sieci około 2,6 kW, automatyzacja wyłączająca wstrzymuje ładowanie po 120 sekundach, nadwyżka wraca, a pięć minut później wszystko zaczyna się od nowa. Przy ładowaniu trójfazowym próg załączenia powinien więc leżeć powyżej 4,1 kW plus zapas albo przy małej nadwyżce stacja powinna ładować jedną fazą.

Co oznaczają w akcji wartość 50 V i współczynnik 0,9?

Akcja przelicza waty na ampery, bo falownik oczekuje prądu ładowania, a 50 V odpowiada tu niskonapięciowemu magazynowi klasy 48 V. Współczynnik 0,9 zostawia zapas dziesięciu procent nadwyżki, żeby ładowanie nie przeszło w pobór z sieci, a granica 40 A ogranicza moc ładowania do 2 kW. Przy magazynie wysokonapięciowym w miejsce 50 należy wstawić jego rzeczywiste napięcie, inaczej prąd wychodzi kilkakrotnie za wysoki.

Lukas Wójcik

Lukas Wójcik

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

Doświadczenia z innymi urządzeniami lub integracjami oraz pytania o konfigurację są tu mile widziane.

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

Artykuły i kategorie

CCTV

Śledź tę kategorię przez RSS

Cloud & AI

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

Data Privacy

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

Digital Analytics

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

Digital Marketing

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

IT & Networks

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

Music Production

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

Raspberry Pi

Śledź tę kategorię przez RSS

SaaS & Internet Earning

Artykuły w przygotowaniu

Smart Home

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

Tworzenie stron internetowych

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

Wtyczki i triki WordPress

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