Odporność sprzętowa w rozdzielnicy: Monitorowanie Modbus i logika zasilania awaryjnego w Home Assistant

Spis treści
Nowoczesne falowniki fotowoltaiczne i magazyny energii (BESS) standardowo opierają się na chmurowych portalach monitoringu. Choć dedykowane aplikacje producentów oferują przejrziste interfejsy wizualne, zależność od chmury wprowadza znaczne opóźnienia, limity zapytań API oraz podatność na awarie zewnętrznych serwerów. W przypadku awarii sieci energetycznej często dochodzi do jednoczesnego zaniku dostępu do internetu, co całkowicie uniemożliwia zdalne zarządzanie zasilaniem awaryjnym.
Osiągnięcie rzeczywistej odporności domowej infrastruktury wymaga przeniesienia telemetrii i sterowania do deterministycznej, lokalnej architektury. Bezpośrednie odczytywanie rejestrów poprzez Modbus RTU/TCP połączone z automatycznym odłączaniem obciążeń w Home Assistant gwarantuje czasy reakcji rzędu kilku sekund, eliminując jakąkolwiek zależność od chmurowych interfejsów API.
1. Bezpośrednia telemetria rejestrów przez Modbus RTU/TCP
Modbus to przemysłowy protokół szeregowy zaprojektowany do niezawodnej, niskopoziomowej komunikacji sprzętowej. Zamiast odpytywania zdalnych serwerów producenta, instancja Home Assistant — uruchomiona lokalnie na komputerze Raspberry Pi — odczytuje rejestry falownika i licznika energii bezpośrednio w sieci lokalnej (Modbus TCP) lub za pomocą przewodowej bramki RS485-Ethernet (Modbus RTU over TCP).
| Metryka telemetryczna | Typ rejestru | Częstotliwość odczytu | Znaczenie systemowe |
|---|---|---|---|
| Napięcie / Status sieci | Input Register (3000x) | 1–2 sekundy | Natychmiastowe wykrycie awarii i pracy wyspowej |
| Poziom naładowania (SoC) | Holding Register (4000x) | 5 sekund | Analiza progowa dla zrzutu obciążenia |
| Moc wyjściowa falownika | Input Register (3000x) | 2 sekundy | Obliczenia bilansu energii w czasie rzeczywistym |
Lokalne odpytywanie gwarantuje, że krytyczne stany operacyjne — takie jak zanik napięcia w sieci, maksymalne prądy rozładowania lub ostrzeżenia o przeciążeniu — są natychmiast rejestrowane na szynie zdarzeń Home Assistant.
2. Logika zasilania awaryjnego: Automatyczne odłączanie obciążeń (Load Shedding)
Kiedy falownik przełącza się w tryb zasilania awaryjnego (tryb wyspowy), dostępna moc całkowita jest ściśle ograniczana przez maksymalny prąd rozładowania baterii oraz moc szczytową falownika. Pozostawienie aktywnych odbiorników o dużym poborze mocy skutkuje natychmiastowym wyłączeniem falownika z powodu przeciążenia i całkowitym brakiem zasilania w budynku.
W celu uniknięcia przeciążeń rozdzielnica elektryczna wymaga wdrożenia zautomatyzowanej architektury odłączania obciążeń. Styczniki mocy na szynę DIN (relais przemysłowe) montowane są przed obwodami o niższym priorytecie — takimi jak ładowarki EV, pompy ciepła, oświetlenie ogrodowe czy podrozdzielnice pomocnicze. Sterowanie stycznikami realizowane jest przez inteligentne przekaźniki sprzężone z indywidualnymi wyłącznikami różnicowo-nadprądowymi (RCBO).
3. Implementacja w Home Assistant (Modbus i Automatyzacja)
Techniczne wdrożenie polega na zdefiniowaniu lokalnych czujników Modbus w pliku configuration.yaml oraz reguły automatyzacji, która natychmiast wyłącza styczniki obwodów niekrytycznych po wykryciu zaniku sieci.
# configuration.yaml: Lokalne odpytywanie rejestrów Modbus TCP
modbus:
- name: "inverter_local"
type: tcp
host: 192.168.50.15
port: 502
sensors:
- name: "Grid Status"
address: 33000
input_type: input
data_type: uint16
scan_interval: 2
- name: "Battery SoC"
address: 37000
input_type: holding
unit_of_measurement: "%"
data_type: uint16
scan_interval: 5
# automation.yaml: Logika awaryjnego odłączania obciążeń
alias: "Emergency Grid Loss: Shed Non-Critical Loads"
trigger:
- platform: numeric_state
entity_id: sensor.grid_status
below: 1 # 0 oznacza stan awarii sieci / tryb wyspowy
action:
- service: switch.turn_off
target:
entity_id:
- switch.contactor_ev_charger
- switch.contactor_heat_pump
- switch.contactor_garden_circuits
- service: notify.persistent_notification
data:
title: "Wykryto awarię sieci zasilającej"
message: "Tryb wyspowy aktywny. Obwody wysokiego poboru odłączone przez styczniki DIN."
mode: single
Podsumowanie
Pełna odporność domowej infrastruktury energetycznej wymaga całkowitego uniezależnienia się od telemetrii chmurowej. Lokalne odpytywanie rejestrów falownika przez Modbus RTU/TCP oraz zautomatyzowane sterowanie stycznikami na szynę DIN sprzężonymi z RCBO zapewniają stabilną, wolną od przeciążeń pracę zasilania awaryjnego w oparciu o architekturę lokalną.
Komentarze: 2
Tabela rejestrów z interwałami odpytywania to najbardziej praktyczna część tego tekstu — zwłaszcza rozróżnienie,że status sieci potrzebuje sekundy, a stan naładowania spokojnie pięciu.
Pytanie o obciążenie: czy Home Assistant wytrzyma taki rytm przy kilkunastu encjach na jednym połączeniu Modbus, czy lepiej rozdzielić to na osobne bramki?
Wytrzyma, ale nie dlatego, że jest wydajny — decyduje przepustowość łącza szeregowego, nie procesor.
Integracja Modbus wykonuje zapytania po kolei na jednym połączeniu. Każdy rejestr to osobna wymiana, więc kilkanaście encji odpytywanych co sekundę tworzy kolejkę, a przy bramce RS485 pracującej z prędkością 9600 bodów kolejka bywa dłuższa niż interwał. Objaw jest mylący: wartości nie znikają, tylko systematycznie się spóźniają, a automatyzacja reaguje z opóźnieniem, którego nie widać w historii.
Sensowniejszy podział to rytm zależny od roli rejestru. Dwa rejestry decyzyjne — status sieci i moc — odpytywane szybko, cała reszta co trzydzieści sekund albo rzadziej. Osobna bramka ma sens dopiero wtedy, gdy urządzenia są fizycznie w różnych miejscach; dla jednej rozdzielnicy szybciej pomaga przejrzenie listy encji niż dołożenie sprzętu.