Cześć
Wymyśliłem sobie sterowanie grzałkami zamontowanymi w bojlerze i buforze kiedy mam nadmiar produkcji PV.
Instalacja Off-Grid
Włączanie grzałek ma być zrealizowane na podstawie odczytu z czujnika światła (BH1750) i temperatury w zbiornikach czyli żadnego grzania kiedy nie ma słońca lub temperatury są osiągnięte.
To jest pierwsza część gdyż dojdzie jeszcze opcja że grzanie ma być włączone tylko przy nadmiarze produkcji z PV czyli w sytuacji kiedy akumulator jest naładowany i odbiór jest niewielki.
Podpowiedzcie czy idę słuszną drogą:
Template switch żeby w ogóle włączyć grzanie
Załączenie i wyłączenie przekaźników przy dostatecznym nasłonecznieniu
Priorytet grzania CWU a po osiągnięciu zadanej temperatury grzanie bufora.
Automatyzacja ma być w samym esphome w razie awarii HA
Czujniki temperatur są na innym urządzeniu, dlatego odczyt wartości musi się odbyć z HA
Poniżej fragment kodu jeszcze nie sprawdzony w rzeczywistości:
Sens ma ale nie wiem czy dobrze kombinujesz z tym że chcesz pominąć HA. W kodzie masz odwołanie do temp_cwu który ma być odczytywany z HA czy źle zrozumiałem? Ja bym wolał odczytywać faktyczna produkcję z licznika żeby odpalić grzałki bo nie ufał bym czujnikowi natężenia światła. Chyba żeby do ESP połączyć płytkę modbus RS485 żeby odczyt zamykał się w obrębie samego ESP.
Taka integracja dopiero przede mną więc mogę się mylić
Możesz dorzucić dodatkowe czujniki DS18B20 do ESP i będziesz miał pominięty sensor temp_cwu
Tak właśnie jest (Rs232) ale z falownika można odczytać tylko aktualnie pobieraną moc a nie moc jaką może jeszcze dostarczyć i dlatego pomysł z czujnikiem światła.
Ogólnie ma to wyglądać tak że skoro natężenie światła ok 90tys luxów może dać moc z falownika 3200W bez wspomagania akumulatorem a aktualne obciążenie wynosi 600W to pozostaje mi do dyspozycji ok 2600W i wtedy ma się włączyć grzałka
Oczywiście że mogę tylko po co skoro już są tylko na innym ESP. Próbowałem bezpośredniego odczytu po HTTP ale wyrzuca mi błąd niewystarczającej ilości pamięci (kod samego falownika sporo zabiera).
Jak dla mnie dziwne bo request http z ESPHome do ESPHome nie zajmuje “więcej” niż to samo zapytanie ESPHome do HA o ten czujnik, coś mi tu nie pasuje .
Miałem jakiś błąd w stylu za mało pamięci JSON czy coś takiego.
Tym problemem zajmę się później
Dzisiaj uruchomiłem instalację z poniższym kodem i nawet całkiem fajnie to działa ale są problemy.
Automatyka nie rusza natychmiast po włączeniu switcha “Grzałki” nawet jeśli jest wystarczające nasłonecznienie. Jeśli spadnie poniżej progu załączenia i dalej rośnie to wszystko jest ok.
W momencie kiedy zostanie temperatura na CWU osiągnie wartość zadaną to grzałki nie przełączają się na bufor. Pewnie ma to związek z tym, że w kodzie jest znak > a w rzeczywistości jest =
Zmiana w locie temperatury zadanej daje identyczny efekt.
Może kod automatyki powinienem umieścić gdzieś indziej? Pod template switchem? Tylko jak wtedy ustawić progi?
Nie wiadomo od kogo oczekujesz odpowiedzi, jeżeli chcesz kogoś wprost wywołać zaczynasz pisać od @ a potem forum podpowiada użytkowników. Takie wywołanie powoduje także powiadomienie u danego użytkownika.
coś takiego już jest na node red np mam sterowanie grzałkkami w zależności od produkcji/przewoltowania z zabezpeiczeniem fizycznym na wypadek zagotowania wody itp
Cześć
Mój projekt wielokrotnie ewoluował i nadal ewoluuje ale na chwilę obecną mam sprawdzoną i działającą wersję.
Założenia/warunki:
System działający w off-gridzie pozwalający na maksymalne wykorzystanie energii słonecznej
Płynna regulacja mocą 4 grzałek 1400W każda po 2szt w bojlerze 300L i buforze 1000L
Zabezpieczenia przed przeciążeniem falowników, przekroczeniem temperatury, rozładowaniem magazynu energii i jeszcze kilka innych.
Praca autonomiczna. HA służy w zasadzie tylko do odczytów i wprowadzania nastaw a cała automatyzacja opiera się o Esphome.
System rozproszony łatwy do serwisowania/modyfikacji.
Zanim opiszę jak to działa to kilka słów o moim systemie.
Całość składa się z 3 stringów panel skierowanych na wschód, zachód oraz na południe. Spowodowane jest to z jednej strony ograniczonym miejscem a z drugiej chęcią wykorzystania energii słonecznej w maksymalnie długim czasie.
Wschód 6x 540Wp połączone 3s2p do ładowarki MPPT Easun 80A.
Południe 8x 565wp szeregowo do falownika Anenji 4kW
Zachód 7x 540wp szeregowo do drugiego falownika Anenji 4kW
Całość połączona z magazynem LFP 21 kWh
W domu instalacja 1 fazowa podzielona na 2 wyspy do każdego z falowników. Dodatkowo przetwornica 24/230 3kW do zasilania 2 grzałek.
Zapytacie po co przetwornica? Po pierwsze kupiona kiedyś za grosze, ma sinus modyfikowany więc użyteczność ograniczona, po drugie pracuje stabilnie przy pełnym obciążeniu po kilka godzin dziennie a po 3 pozwala na “wyciągnięcie” z falowników dodatkowej mocy o czym napiszę dalej. Pozostałe 2 grzałki podłączone po 1 do każdego z falowników.
Każda z grzałek ma osobny regulator 0-10V sterowany z Esp32 który jest sercem systemu.
Największym wyzwaniem było wykombinowanie skąd wiedzieć i jak wyciągnąć z paneli maksymalną moc. Same czujniki światła przy stringach w 3 kierunkach były trudne do ogarnięcia. Najprostszym sposobem był pomiar prądu ładowania magazynu ale co kiedy magazyn jest pełny?
Podszedłem do problemu w następujący sposób: w idealnych (ale niemożliwych) warunkach, maksymalny prąd ładowania u mnie to 280A (2x100 z falowników i 80 z ładowarki) czyli mimo że niemożliwy do osiągnięcia to całkowicie bezpieczny dla magazynu bo składa się z 3 banków 24V 280Ah każdy, więc prąd ładowania ustawiłem w falownikach i ładowarce na max.
Pierwszy z 2 trybów działania automatyki grzałek steruje nimi w ten sposób że mam ustawiony minimalny i masymalny prąd ładowania gdzie przekroczenie max powoduje zwiększenie mocy grzałek a poniżej min zmniejszenie mocy. Progi ustawiane są ręcznie ale bez problemu można to zautomatyzować przez odczyt SOC magazynu. Grzałki sterowane są sekwencyjnie czyli kiedy pierwsza osiągnie 100% to załącza się druga itd.
Odrzuciłem tutaj całkowicie założenie, że grzałki mają być załączane gdy magazyn jest pełny z 2 prostych powodów: ładowanie magazynu mniejszym prądem może znacząco wydłużyć jego działanie chociażby dlatego że balansery mają więcej czasu na działanie a naładowanie całego magazynu od 70% (tyle mam minimalnie po nocy) do max prądem ok 30A nie zajmuje więcej niż 3-4 godziny za to nagrzanie 300L wody w bojlerze grzałkami 2800W już trochę czasu potrzebuje. Kolejna sprawa to skoki prądu kiedy chmurki latają po niebie też nie są zdrowe dla magazynu pomijając już zwykłe zużycie prądu w domu. Tak czy inaczej magazyn prędzej czy później się naładuje i tutaj pojawiła się zagadka jak to ugryźć.
Kłania się tutaj drugi tryb działania regulatora który załącza się kiedy napięcie magazynu energii przekroczy 27,7V (można oczywiście to zmienić).
W tym trybie pawie całkowicie ignorowany jest prąd płynący do lub z magazynu a sterowanie odbywa się napięciowo. Tak jak wcześniej ustawiamy zakres min i max (w moim przypadku odpowiednio 27.5 i 28.0) i reszta w zasadzie działa tak samo.
Oba tryby mają jeszcze zabezpieczenia np. które mocno zwiększają moc grzałek po przekroczeniu 100Aczy takie które nie pozwalają na załączenie grzałek podłączonych do falowników kiedy ich obciążenie przekroczy zadane progi.
Całość uzupełnia możliwość sterowania manualnego.
Techniczne żeby to zrealizować musimy znać kilka wartości
a. Napięcie i prąd magazynu (u mnie odczyt z zewnętrznego bocznika z racji ładowania z 3 źródeł 3 magazynów)
b. Obciążenie falownika/falowników do zabezpieczeń
Komunikacja w moim przypadku odbywa się pomiędzy urządzeniami nie przez HA a przez UDP czyli poszczególne esp komunikują się między sobą.
AHA jeszcze słowo o przetwornicy, każdy z falowników ma określoną moc ale to jest moc obciążenia. W rzeczywistości mając odpowiednio dobraną ilość paneli można obciążyć falownik “z dwóch stron” czyli standardowo po AC i po DC właśnie przez przetwornicę. Sprawdzone w praktyce. W praktyce też wolę zostawić falowniki nie do końca obciążone po AC bo nigdy nie wiem czy moja Pani nie wpadnie na pomysł odpalenia jednocześnie piekarnika, pralki i żelazka co już niejednokrotnie się zdarzyło i spowodowało również że zdecydowałem się na 2 mniejsze falowniki i 2 obwody wyspowe.
Mogę zamieścić tutaj swój kod ale ma on wiele zależności i może być nieczytelny dla nie znających całego systemu, dlatego napiszcie jeśli jesteście zainteresowani jakimś fragmentem i go tutaj zamieszczę z opisem.