Automatyzacja ładowania EV "ze słońca" za pomocą Home Assistant

Michal

Moderator
Zakładam oddzielny wątek, bo śmiecę w innych niepotrzebnie. Będę tutaj starał się opisywać moje przemyślenia w tym projekcie i wrzucę to, co uda mi się wykombinować, żeby ktoś mógł przerobić pod siebie (pewnie dorzucę też na stronę społeczności HA).

Ostatnio pięknie świeci słońce, a ja mam prawie maksymalne uzyski z instalacji, więc męczy mnie oddawanie energii do sieci i pobieranie jej nocą podczas ładowania auta. Niby tracę na takim interesie tylko 20% ale jednak zawsze to coś i już nie chodzi nawet o pieniądze, tylko o utarcie nosa niedowiarkom, że EV w Polsce może być ekologiczny. Jest też aspekt tego, że wybrałem tanie Chińskie inwertery bez opcji ładowania (jak Fronius o którym nie wiedziałem, że ma taką opcję), żeby właśnie to sobie kiedyś dopisać ;)

Jakie mam komponenty:
  • Raspberry pi 4 na którym stoi Home Assistant ("HA") - to mózg mojego projektu Smart Home.
    • Mam tutaj podpiętą integrację z Teslą i w ten sposób ciągnę dane z auta albo mogę nim sterować.
  • EVSE Tesli - 1058220-00-E UNIVERSAL MOBILE CONNECTOR (UMC) - potocznie zwane ładowarką / cegłą - bez żadnej logiki.
  • Miernik zużycia energii Shelly EM3 - daje mi dużo parametrów związanych z siecią energetyczną jak napięcia, moce i zużywana energia - zintegrowany z HA.

Gruby plan jest taki:
  1. Nic nie koduję sam - używam tylko możliwości HA (nie chce mi się pisać w Pytonie :p)
  2. Sprawdzam warunki początkowe:
    1. auto jest w domu (mi nie przestawiło mocy ładowania na SuC, bo świeci słońce)
    2. kabel podpięty
    3. naładowanie poniżej 90%
  3. Sprawdzam sumaryczne zużycie energii na wszystkich fazach
    Code:
    (napięcie[1]+napięcie[2]+napięcie[3])V * 5A
    (suma napięć na każdej z faz * minimalny prąd jaki zakładam 3A) - jeśli oddaje do sieci co najmniej tę moc (~2000W), to rozpoczynam ładowanie.
  4. Sprawdzam czy oddałem do sieci w danej godzinie już co najmniej 1kWh żeby mieć jakiś zapas w razie "zaćmienia".
  5. Jeśli powyższe warunki są spełnione to uruchamiam ładowanie
    1. aktualizuję, co minutę prąd ładowania (pewnie w zakresie 3-10A) w taki sposób żeby zużycie z ostatniej godziny kręciło się w okolicy zera
    2. staram się utrzymać ładowanie co najmniej przez 30 minut (wstępne założenie), żeby nie bawić się w włączanie i wyłączanie zbyt często.
  6. Jeśli sumaryczne zużycie energii (pobierane z sieci) przekracza 10kW, to wyłączam natychmiast z pominięciem czasu żeby nie ryzykować, że wywali mi zabezpieczenia przedlicznikowe jak ktoś włączy czajnik + kuchenkę + coś jeszcze.
  7. To co jeszcze przychodzi mi do głowy, to regulowanie maksymalnego stopnia naładowania w zależności od nasłonecznienia. Tzn. Minimalny stopień naładowania o poranku ustawie chyba na 60%, a w dzień jeśli będzie świeciło słońce, to będę dobijał do 87%. Może 50/77%... To zrealizuje chyba w taki sposób, że kończąc ładowanie że słońca będę ustawiał to mniejsze.
    1. Niestety tutaj widzę wiele potencjalnych pułapek typu: Będę jednak potrzebował naładowania 90% i ładując się że słońca tyle będę miał ustawione, ale po chwili przyjdą chmury, ładowanie przestawi się na 60% i będzie lipa. Muszę pomyśleć czy da się to jakoś obejść / wymusić / wykryć że ustawienie wyższego stopnia naładowania było ręczne i celowe.
      1. Wstępne rozwiązanie "na gumę do żucia" jakie widzę - automatyka ustawia zmienia coś tylko jeśli ma ustawione 87%, bo sama tyle ustawia, a ja raczej zawsze pełne wartości z dokładnością do 5%.
    2. Muszę sprawdzić na wykresach ile % zużywam dziennie. - w danych od grudnia (od tamtej pory mam podpiętą integrację Tesli z HA) widzę tylko dwa przypadki kiedy zszedłem ze stopniem naładowania w okolicy domu poniżej 10% i to chyba już sie nie powtórzy, więc mogę raczej zejść do 50-77%, a patrząc na dane, ten zakres powinien mi pokryć jakieś 90% przejazdów.

Teoretycznie w przyszłości mogę też uwzględnić prognozę pogody i ładować tylko "słońcem" przez kilka dni na raty. Dużo możliwości ale też dużo myślenia jak to zrobić oraz ustawiania.
Wymyślam na bieżąco i zobaczymy co wyjdzie - na razie uczę się szablonów w HA i dodaję helpery (encje wyliczające wartości, które mogą mi być później potrzebne).

Na tę chwilę mam taki trochę nieuporządkowany widok danych o samochodzie:
1679258832262.png
 
Last edited:

Michal

Moderator

comor

Nowy na Forum
Jestem kilka dni po odbiorze Y i tak sobie również eksperymentuję z home assistantem. Mam instalację PV wschód-zachód z falownikiem solaredge 6kw i WC gen 3. Do PV mam podpięty licznik, z którego pobieram aktualny eksport i import energii. Na początku zabrałem się do pisania automatyzacji, która na bieżąco będzie zmieniała prąd ładowania wall connectora, wpadłem jednak w międzyczasie na pomysł jak to rozwiązać trochę inaczej. Ponieważ jestem w netbillingu to tauron wykonuje bilansowanie wektorowe w okienkach godzinowych, więc w zasadzie nie obchodzi nas tutaj chwilowe zużycie, autokonsumpcja czy rozłożenie obciążeń na fazach, liczy się tylko suma wszystkiego na koniec godziny. Za pomocą HA wyliczam sobie bilans godzinowy i jego wartość jest miarą tego czy mam zapas energii oddanej do sieci czy nie. Sprawdzając co kilka/kilkanaście minut prostą automatyzacją wartość nadwyżek odpalam po prostu ładowanie 11kw aż wyczyszczę nadwyżkę w bilansie, dążąc do tego aby bilans był bliski 0 gdy auto jest podłączone i słońce świeci. Poniżej zrzut dashboarda energii, auto było podpięte do 14.
 

Attachments

  • Zrzut ekranu 2023-09-25 o 20.29.16.png
    Zrzut ekranu 2023-09-25 o 20.29.16.png
    474,5 KB · Liczba wyświetleń: 26
  • Zrzut ekranu 2023-09-25 o 20.50.05.png
    Zrzut ekranu 2023-09-25 o 20.50.05.png
    522,4 KB · Liczba wyświetleń: 21
Last edited:

Michal

Moderator
Jutro 12-14 montuję WC3 i może jeszcze uda mi się jutro odpalić EVCC. Jak nie to pojutrze ;)
Dam znać jak pójdzie.
 

itguy

Posiadacz elektryka
Jestem kilka dni po odbiorze Y i tak sobie również eksperymentuję z home assistantem. Mam instalację PV wschód-zachód z falownikiem solaredge 6kw i WC gen 3. Do PV mam podpięty licznik, z którego pobieram aktualny eksport i import energii. Na początku zabrałem się do pisania automatyzacji, która na bieżąco będzie zmieniała prąd ładowania wall connectora, wpadłem jednak w międzyczasie na pomysł jak to rozwiązać trochę inaczej. Ponieważ jestem w netbillingu to tauron wykonuje bilansowanie wektorowe w okienkach godzinowych, więc w zasadzie nie obchodzi nas tutaj chwilowe zużycie, autokonsumpcja czy rozłożenie obciążeń na fazach, liczy się tylko suma wszystkiego na koniec godziny. Za pomocą HA wyliczam sobie bilans godzinowy i jego wartość jest miarą tego czy mam zapas energii oddanej do sieci czy nie. Sprawdzając co kilka/kilkanaście minut prostą automatyzacją wartość nadwyżek odpalam po prostu ładowanie 11kw aż wyczyszczę nadwyżkę w bilansie, dążąc do tego aby bilans był bliski 0 gdy auto jest podłączone i słońce świeci. Poniżej zrzut dashboarda energii, auto było podpięte do 14.
Fajny sposób :) jedyny mankament tego rozwiązania jest taki że to mniej odciąża sieć, ale jak nie masz problemu z wyłączającym się falownikiem w szczycie produkcji to w zasadzie nie Twój problem ;)
 

comor

Nowy na Forum
Fajny sposób :) jedyny mankament tego rozwiązania jest taki że to mniej odciąża sieć, ale jak nie masz problemu z wyłączającym się falownikiem w szczycie produkcji to w zasadzie nie Twój problem ;)
Napięcie sieci w szczycie produkcji poniżej 240V, więc jeszcze sporo zapasu ;). Zastanawiam się tylko jaki wpływ na kondycję baterii mogą mieć takie kilkuminutowe sesje ładowania AC, może ktoś mądrzejszy się podzieli przemyśleniami.
 

itguy

Posiadacz elektryka
Napięcie sieci w szczycie produkcji poniżej 240V, więc jeszcze sporo zapasu ;). Zastanawiam się tylko jaki wpływ na kondycję baterii mogą mieć takie kilkuminutowe sesje ładowania AC, może ktoś mądrzejszy się podzieli przemyśleniami.
Wydaje mi się że to dla baterii bez znaczenia bo to bardzo mała moc jeśli policzyć prąd na jedno ogniwo. Jedynie w zimie jeśli parkujesz na zewnątrz i będą mrozy to ogniwa muszą mieć dodatnia temperaturę żeby być ładowane więc te przerwy nie będą im służyć, w takim sensie że auto będzie musiało je podgrzać za każdym razem i będą niepotrzebne straty. Z drugiej strony uzyski z PV w PL w zimie są praktycznie zerowe więc całą automatyzacja raczej i tak nie ma sensu o tej porze roku i najlepiej ładować auto od razu po skończonej jeździe kiedy bateria jest jeszcze ciepła.
 

KrzyCh

Pionier e-mobilności
Na początku zabrałem się do pisania automatyzacji, która na bieżąco będzie zmieniała prąd ładowania wall connectora, wpadłem jednak w międzyczasie na pomysł jak to rozwiązać trochę inaczej. Ponieważ jestem w netbillingu to tauron wykonuje bilansowanie wektorowe w okienkach godzinowych, więc w zasadzie nie obchodzi nas tutaj chwilowe zużycie, autokonsumpcja czy rozłożenie obciążeń na fazach, liczy się tylko suma wszystkiego na koniec godziny. Za pomocą HA wyliczam sobie bilans godzinowy i jego wartość jest miarą tego czy mam zapas energii oddanej do sieci czy nie.
Super - miałem bardzo podobny pomysł. Zrobiłem w HA licznik godzinowy, który symuluje naliczanie wektorowe godzinowe i zeruje się co godzinę.
Doszedłem jednak do wniosku, że nie chcę zbyt często przerywać ładowania. Zamierzam (ciągle brak czasu by to zrobić) zaprogramować to tak:
  1. Jeśli licznik wskaże nadprodukcję godzinową, wystarczającą na pokrycie ładowania minimalnym prądem przez pozostałą część godziny to zaczynam ładowanie prądem minimalnym. Np. o 9:30 jest już na poziomie -2kwh, to zaczynam ładować z mocą 4kwh.
  2. Jeśli pod koniec godziny, np. o 9:59 licznik wskazuje wartości wewnątrz histerezy (np.-3 kWh do 3 kWh), to kontynuuję ładowanie i:
    1. Jeśli licznik wskazuje wartość ujemną to zwiekszam prąd ładowania (np. dla - 1 kWh o 1A).
    2. Jeśli licznik wskazuje wartość dodatnią, to zmniejszam prąd ładowania.
  3. W połowie następnej godziny (np. 10:30) sprawdzam ponownie licznik podobnie jak w punkcie 2, tylko tu wyłączam ładowanie o ile wskazanie jest poza histerezą (ponad 3 kWh).
To oczywiście teoria i pewnie wyjdzie coś w warunkach brzegowych, ale idea jest taka, by ładowanie trwało minimum 1h (np. 9:30 - 10:30). Wtedy możemy optymalnie (bo z 2h) wykorzystać obowiązujące operatorów godzinowe bilansowanie i nie przerywać często ładowania. Można też ładować 1 fazą, ale nie po to montowałem WC3. Ma być docelowo w HA guzik „ładuj eko” i podpinanie się do WC3 jak zwykle.
Jeśli ładujemy samochód bez możliwości sterowania prądem to też można takie „łączenie” godzin zrealizować tylko może wyjść np. 2x20min. Zależy od mocy PV i mocy ładowarki pokładowej.

Poniżej zrzut w słoneczny dzień i Tesla ręcznie podpięta na ok 1h zaraz po 11.

IMG_0286.jpeg
 

comor

Nowy na Forum
Super - miałem bardzo podobny pomysł. Zrobiłem w HA licznik godzinowy, który symuluje naliczanie wektorowe godzinowe i zeruje się co godzinę.
Doszedłem jednak do wniosku, że nie chcę zbyt często przerywać ładowania. Zamierzam (ciągle brak czasu by to zrobić) zaprogramować to tak:
  1. Jeśli licznik wskaże nadprodukcję godzinową, wystarczającą na pokrycie ładowania minimalnym prądem przez pozostałą część godziny to zaczynam ładowanie prądem minimalnym. Np. o 9:30 jest już na poziomie -2kwh, to zaczynam ładować z mocą 4kwh.
  2. Jeśli pod koniec godziny, np. o 9:59 licznik wskazuje wartości wewnątrz histerezy (np.-3 kWh do 3 kWh), to kontynuuję ładowanie i:
    1. Jeśli licznik wskazuje wartość ujemną to zwiekszam prąd ładowania (np. dla - 1 kWh o 1A).
    2. Jeśli licznik wskazuje wartość dodatnią, to zmniejszam prąd ładowania.
  3. W połowie następnej godziny (np. 10:30) sprawdzam ponownie licznik podobnie jak w punkcie 2, tylko tu wyłączam ładowanie o ile wskazanie jest poza histerezą (ponad 3 kWh).
To oczywiście teoria i pewnie wyjdzie coś w warunkach brzegowych, ale idea jest taka, by ładowanie trwało minimum 1h (np. 9:30 - 10:30). Wtedy możemy optymalnie (bo z 2h) wykorzystać obowiązujące operatorów godzinowe bilansowanie i nie przerywać często ładowania. Można też ładować 1 fazą, ale nie po to montowałem WC3. Ma być docelowo w HA guzik „ładuj eko” i podpinanie się do WC3 jak zwykle.
Jeśli ładujemy samochód bez możliwości sterowania prądem to też można takie „łączenie” godzin zrealizować tylko może wyjść np. 2x20min. Zależy od mocy PV i mocy ładowarki pokładowej.

Poniżej zrzut w słoneczny dzień i Tesla ręcznie podpięta na ok 1h zaraz po 11.
Ciekawe. Też chciałem uniknąć chwilowych doładowań, ale to okazało się skuteczne i jednocześnie proste w implementacji. W Twoim przypadku, gdy o 10:02 przyjdą chmury to bez ciągłego badania czy bilans nie przyrasta zbyt gwałtownie po stronie ujemnej możesz się w szczycie ładować z grida ok pół godziny. Gdzieś mi też mignęło, że przy małych prądach ładowania <5A są spore straty, dlatego odpuściłem żonglowanie prądem ładowania. Poniżej mój bilans gdy świeciło słońce z podpiętym autem. Po pełnej godzinie w 20, 30 i 40 minucie sprawdzam czy mam zapas powyżej 1.5kWh, potem 45 minuta > 1kWh i doczyszczenie bilansu w 55 min. >0.5kWh.
 

Attachments

  • Zrzut ekranu 2023-09-26 o 08.37.59.png
    Zrzut ekranu 2023-09-26 o 08.37.59.png
    173 KB · Liczba wyświetleń: 9

Michal

Moderator
Mam zainstalowany WC3. Trochę głupio przebiega ustawianie po zalogowaniu się do Access Pointa ładowarki, bo restartuje się sama i gubi sieć, albo nie zapamiętuje ustawień prądu ładowania ale po chyba 4 próbach się udało. Chyba trzeba było iść po kolei i najpierw zrobić update.
Nie wiem kiedy uda mi się pobawić EVCC ale dam znać jak to zepnę.
 

Michal

Moderator
Zainstalowałem i skonfigurowałem (chyba nawet jakoś sensownie) EVCC. Jutro chyba mi naładuje 6% (74-80%) baterii ze słońca :) Napiszę jak to działa jak złapie trochę możliwości ładowania.

Przy okazji konfigurowania EVCC, policzyłem jakie mi wychodzą z rachunku ceny energii w PGE na G12w za pierwsze półrocze już po przekroczeniu limitu 2000 kWh:
  • 0,81 zł w taniej taryfie
  • 1,15 zł w drogiej taryfie
 
Top