Komunikacja z falownikiem DEYE

Admin/ 11 września, 2023/ Komunikacja/ 22Komentarze

Na wstępie dziękuję za pracę wykonaną przez kolegę slipx06Link do jego REPO na githubie.

W dzisiejszym wpisie na blogu omówimy komunikację falownika z serwerem Home Assistant. Warunkiem koniecznym jest uruchomienie serwera HA, jeżeli zapoznaliście się z tym wpisem to już wiecie jak to zrobić. Oto co potrzebujemy :

  1. Mikrokontroler ESP32link do mojego zakupu
  2. Moduł konwerter UART TTL do RS485 link do mojego zakupu
  3. Zasilacz 5V 700mAlink do mojego zakupu
  4. Kable połączeniowe męsko-żeńskie 20cm  – link do mojego zakupu
  5. Kabel RJ-45
  6. Przewód USB – miniUSB
  7. Dostęp do komputera 🙂
  8. Platforma Home Assistant
  9. Dostęp do Wi-Fi
  10. Przykładowy plik konfiguracyjny YAML

Mamy już wszystko skompletowane to mamy teraz dwie możliwości połączenia, schematy poniżej (przy 2 schemacie należy dokupić przetwornice z 12V na 5V, link)

  1. 230V
  2. 12V

Warto w tym miejscu napisać o kolorach w RJ45 i porcie w falowniku. Tak jak to wynika z instrukcji układ pinów w porcie BMS485 wygląda następująco:

A co za tym idzie RJ45 ma następujące wygląd:

Czyli całość podłączmy tak jak w pierwszym schemacie:

  1. Jasno pomarańczowy do pinu B+ w module UART
  2. Pomarańczowy do pinu A+ w module UART
  3. Jasno zielony do pinu GND w module UART

A gdzie szukać portu w falowniku? Zobaczcie przykład poniżej:

Po podłączeniu wszystkiego w całość przystępujemy do najważniejszej części – programowania ESP32 do komunikacji z falownikiem. Uruchamiamy wcześniej zainstalowany system HA (wchodzimy na adres homeassistant.local:8123 ) po pierwszym uruchomieniu możemy zobaczyć widok jak poniżej, niestety system nie jest jeszcze gotowy i musimy odczekać kilka minut.

Po uruchomieniu systemu tworzymy nowego użytkownika.

Po potwierdzeniu kilku ustawień zobaczymy następujący ekran:

Instalujemy pierwszy dodatek jakim jest ESPHOME, kolejno Ustawienia =>Dodatki =>Sklep z dodatkami

Wyszukujemy dodatek ESPHOME i klikamy w ikonę :

Instalacja polega na naciśnięciu napisu ZAINSTALUJ

Ok, mamy ESPHome zainstalowane, dla ułatwienia dalszej pracy zaznaczamy dwa pola. Obserwator i Pokaż na pasku bocznym + najważniejsze URUCHOM

ESPHome gotowy więc zabieramy się za instalacje oprogramowania na ESP32. Klikamy na pasku bocznym w napis ESPHome a następnie + NEW DEVICE

Pojawi się kolejne okno – klikamy CONTINUE

Na kolejnym ekranie podajemy nazwę instalacji i dane sieci WIFI jak w przykładzie poniżej:

Kolejny ekran to wybór platformy do programowania – wybieramy ESP32

Następny ekran, naciskamy Install

Na kolejnym ekranie możemy wybrać Cancel i przejść do edycji pliku YAML

Widok edycji pliku YAML, ja osobiście kopiuje dane z widoku do notatnika

W miejsce kodu wklejam gotowy rozwiązanie od kolegi slipx06wersja do falowników 1 fazowych (kliknij w link lub skopiuj kod poniżej) UWAGA do kopiowania używamy poniżej zaznaczonego przycisku.

Po skopiowaniu nasz plik będzie wyglądał następująco:

Teraz wklejamy skopiowane wcześniej informacje (z wcześniej opisanego notatnika ) :

UWAGA ! Proszę pamiętać o strukturze kodu – wcięcia są bardzo ważne 🙂

  1. API
api:
  encryption:
    key: !secret api_encryption_key

Wklejamy ten z notatnika (każdy z Was będzie posiadał inny)

api:
  encryption:
    key: "myuAyzW/VNW+Pi1UumdHE5yasVILYSQbklj519a1R7M="

2. OTA

ota:
  password: !secret ota_password_sunsynk

Wklejamy ten z notatnika (każdy z Was będzie posiadał inny)

ota:
  password: "6ccd5ea097f87d82bca25e0d0d68c58d"

3. WIFI – ja osobiście zmieniam jeszcze dane od WiFi. Dodaję stałe IP

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: '${devicename}'
    password: !secret fallback_password

  fast_connect: true
  power_save_mode: none

Po zmianach powinno to wyglądać jak przykład poniżej (każdy z Was będzie posiadał inny)

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  manual_ip:
    static_ip: 192.168.68.55 ######## IP z Twojej puli adresu
    gateway: 192.168.68.1
    subnet: 255.255.255.0

# Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "${device_name}_Hotspot"
    password: "1234567890"

  fast_connect: true
  power_save_mode: none

Po wszystkich modyfikacjach zapisujemy plik i rozpoczynamy instalację:

Przy instalacji zaznaczmy PLUG INTO THIS COMPUTER

ESPHome zacznie kompilować i przygotowywać plik z softem do ESP32, mamy napis „preparing download”

Po przygotowaniu pliku w okienku przycisk Download project staje się aktywny, klikamy w niego i pobieramy plik.

Po pobraniu klikamy w przycisk „Open ESPHome Web” – otworzy się nowa karta, podłączamy ESP32 do portu USB i naciskamy CONNECT

Wybieramy odpowiedni port USB (COM….) do którego podłączyliśmy ESP32, naciskamy Połącz

Kolejno wybieramy INSTALL => Wskazujemy wcześniej pobrany plik => INSTALL

Rozpocznie się instalacja :

Jeżeli wszystko wcześniej zrobiliśmy prawidłowo zobaczymy ekran:

Możemy odłączyć ESP32 od komputera i udać się do falownika 🙂 W menu falownika odszukujemy Advance Function i ustawiamy :

  1. MASTER
  2. Modbus SN na 01

Podłączamy do portu opisanego BMS485.

Wracamy do naszego Home Assistant i przechodzimy USTAWIENIA => Urządzenia oraz usługi

W sekcji WYKRYTE szukamy integracji ESPHome z naszą nazwą i naciskamy Konfiguruj

Przy pytaniu – Zatwierdź

Integracja pojawi się w sekcji Skonfigurowane, klikamy w napis poniżej (1 urządzenie)

Jeżeli mamy komunikacje z falownikiem zobaczymy takie dane:

Koniec! Mamy komunikację z falownikiem 🙂 W kolejnym wpisie opiszę zrobienie Dashbordu. Zapraszam !

Share this Post

22 Comments

  1. Kurcze troche to nieprzejrzyscie jest opisane, dotyczy konfiguracji ESPHome, co wpisac w tych miejscach?:
    wifi:
    ssid: !secret wifi_ssid
    password: !secret wifi_password

    # Enable fallback hotspot (captive portal) in case wifi connection fails
    ap:
    ssid: '${devicename}’
    password: !secret fallback_password

    Bede probowal wykorzystac ESPHome do polaczenia poprzez port 485 z falownikiem 1F Sofarsolar.

    1. Kod zamieszczony na stronie jest do falowników DEYE. Sofar bez problemu łączy sie przez WIFI ( dodatek solarmann). Myślę, że na początek będzie OK. Zobacz ten wpis https://hybrydaplus.pl/index.php/2023/09/13/integracja-falownikow-deye-i-sofar-z-home-assistant-skuteczna-komunikacja-dla-twojego-systemu-fotowoltaicznego/

  2. Tak, tylko, ze moj logger w chmure wysyla dane co 5minut, czasem sie wieszana 10 – 15 minut (tj. nie wysyla informacji na chmure solarmana i nie wiem od czego to zależy, bo sila sygnalu Wifi na logerze jest ok 73%. Po kablu z tego co mowiles, mozna zczytywac dane na zywo praktycznie. Mam taki pomysl by pod HA podpiac poprzez wifi Ekran LCD poprzez ESPHome i na nim wyswietlac w pokoju parametry pracy falownika i naladowanie baterii, tak ot po prostu by miec wglad na zywo i nie musiac sie logowac na apke itp. Kupilem do testow ESP32 0.96 inch OLED Bluetooth WIFI Kit CP2102, moze uda sie to jakos ogarnac. W sumie ciekawa sprawa, moze jesli masz ochote moglys tu cos takiego na tym blogu opisac 🙂

    1. Dodatek solarmann ma odczyt co 60 sek. To i tak już duuuuzo lepiej niż co 5 min 🙂

  3. No to pozostaje jeszcze wyswietlanie na ekraniku LCD informacji z HomeAssistanta, w necie wyszukalem ciekawy ekran LCD Sonof NSPanel, moze na tym ekranie stworzyc podglad pracy falownika i ladowania baterii 😛

  4. Cześć – mam DEYE 3fazowy – podpowiesz czy mogę użyć tego samego kodu?

  5. Ale do portu BMS mam podłączony magazyn energi….

    1. Jeżeli masz falownik 3f będzie działać na porcie MODBUS.

      1. czyli mogę Lilygo mogę podłączyć pod MODBUS czy magazyn?

  6. Witajcie.
    Przy 3fazowym z akumulatorem w ustawieniach dla baterii musiałem ustawić slave i wartość 00
    Teraz przy zmianach na master i 01 – odrazu krzyczy błędem F13 tryb sieci zmieniono.
    Jak temu zaradzić ?

    1. Cześć, błąd znika po około 1 min.

    1. Jest taka możliwość 🙂 Niestety ze względu na spam trzeba troszkę to moderować.

      1. Niema tam aktywnego pola wpisania komentarza..

    1. Tak, działa bez problemu. Proszę pamiętaj, że kod troszkę się różni.

  7. Hej. która encja z występujących w integracji z deye lub seplos 3.0 – jest w stanie wypluć dane o oddanym prądzie z akusa (bez produkcji PV – chyba, że musi być z.) wprost do sieci w trybie „Selling First”. Szukam rozwiązania do utworzenia wykresów – sprzedana energia w rozliczeniu godzinowym + orientacyjnie zarobiona z tego tytułu kasa 🙂

    1. Cześć, Tutaj raczej kłania się jakiś pomocnik. Coś w stylu ” jeżeli jest tryb selling first, to zliczaj rozładowanie magazynu”.

  8. Cały czas mam conecting jak już wgrywam plik do esp. Ni się nie wyświetla i nie zmienia. W czym może być problem>

  9. Czy macie adresy modbusowe dęte 12k – potrzebuję do podłączenia po rs485 do BMS-a

  10. Myślisz, że jest jakaś opcja, żeby dodać sterowanie opcją „Max solar power”?
    Chodzi o to, aby w dni, gdy są ujemne ceny energii w zakupie to w ogóle wyłączać w określonych godzinach instalację fotowoltaiczną. Nie tylko solar_sell wyłączać, tylko móc ładować magazyn tylko z sieci.

Leave a Comment

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*
*