Funkcje Zgodność Bramka Dokumentacja Pobierz
Deye · Modbus RTU · Solarman V5 · mapa rejestrów

Deye przez Modbus: czego nauczyliśmy się, pisząc własną integrację

Szukasz mapy rejestrów, żeby samodzielnie odczytywać Deye? Przeszliśmy tę drogę, pisząc Svitgrid, i dzielimy się tym, czego nie ma w dokumentacji, razem z adresami rejestrów. A jeśli potrzebujesz wyniku, a nie projektu, jest gotowy.

Pobierz z App StorePobierz z Google Play

Deye nie mówi bezpośrednio Modbus TCP

Przez rejestrator: Solarman V5

Rejestrator Wi-Fi opakowuje Modbus RTU we własny protokół Solarman V5 na porcie TCP 8899. Każde zapytanie niesie numer seryjny rejestratora. Zwykły klient Modbus TCP z nagłówkiem MBAP nie buduje takich ramek.

Rejestratory z numerem seryjnym zaczynającym się od 26

Nowa generacja rejestratorów Deye nie przyjmuje zapytań lokalnych: dane trafiają tylko do chmury Deye. Zostaje kabel.

Kablem: Modbus RTU

RS-485, 9600 8N1, rejestry holding (funkcja 0x03). Adres to pole Modbus SN na ekranie falownika, zwykle 01. Adres 00 to adres rozgłoszeniowy i Deye nigdy na niego nie odpowiada. Układ pinów i pułapki kabla.

Pułapki mapy rejestrów, które sami zmierzyliśmy

Większość map Deye w sieci jest złożona z dokumentów producenta i projektów społeczności. Oto, co okazało się inne na prawdziwych falownikach. Adresy są dziesiętne.

Mapy trójfazowa i jednofazowa się różnią

W SG04LP3 moc PV1 to rejestr 672, naładowanie baterii to 588, a sieć to 625. W jednofazowych SG01LP1, SG02LP1 i SG05LP1 są to 186, 184 i 169. Temperatury też są w różnych blokach, 540/541 i 90/91, a zły blok zwraca zera lub 65535. Moc baterii (590 i 190) jest dodatnia przy rozładowaniu.

Moc w jednostkach po 10 W

Niektóre wersje firmware'u zgłaszają rejestr mocy dziesięć razy za mały, podczas gdy pozostałe pola są prawidłowe. W SG02LP1 dotyczy to obciążenia 178 i 179, a w wysokonapięciowym SG01HP3 mocy baterii 590. Sprawdzaj względem własnych dziennych liczników falownika (w jednostkach jednofazowych: 76 to pobór, 84 to dom, 108 to słońce), a nie wartości chwilowych.

Prądu sieci nie ma

Udokumentowane adresy prądu sieci (610–612 w trójfazowych, 160 w jednofazowych) zawierają w prawdziwych falownikach coś innego: rejestr 160 pokazywał około 5.6 A przy zerowej wymianie z siecią. Oblicz prąd jako |P| / U.

To nie Time of Use włącza ładowanie z sieci

Zezwolenie na ładowanie z sieci to bit 0 rejestru 130 w jednostkach trójfazowych i 232 w jednofazowych. Główny przełącznik Time of Use, bit 0 rejestru 146 lub 248, tylko włącza harmonogram przedziałów. W naszych danych falowniki ładowały się z sieci także przy wyłączonym Time of Use, a żaden nie robił tego przy wyłączonym bicie 0 rejestru 130/232.

Przedział nie ma końca

Sześć przedziałów Time of Use dzieli dobę bez luk: koniec przedziału N to początek przedziału N+1 (148–153 w trójfazowych, 250–255 w jednofazowych). Zapis jednego przedziału przesuwa granicę sąsiedniego, a czasy początku muszą iść rosnąco.

Nieznane bity we włączeniu przedziału

W rejestrach 172–177 (trójfazowy) i 274–279 (jednofazowy) bit 0 włącza przedział, a wyższe bity też mogą być ustawione, z nieznanym znaczeniem. Zmieniaj tylko bit 0, przez odczyt, modyfikację i zapis. Nigdy nie zapisuj 0 ani 1 jako całego słowa.

Zanim zapiszesz cokolwiek do rejestru, odczytaj go z falownika i zachowaj to, co tam było.

Co jeszcze jest potrzebne, żeby z rejestrów zrobić stację

KrokCo się z tym wiążePrzybliżony czas
KlientSolarman V5 lub RTU, ponowienia, limity czasu i zerwane połączeniadni
Mapa Twojego modeluSkale, znaki, 16 lub 32 bity i sprawdzenie na działającym falownikudni
ZapisyPrzedziały czasowe i tryby bez ryzyka pozostawienia falownika w dziwnym stanietydzień
Wszystko wokół niegoGdzie to działa 24/7, przechowywanie historii, alerty i dostęp z telefonutygodnie
Razemkilka tygodni

Czas jest przybliżony: do pierwszej stacji, której możesz używać na co dzień.

Wsparcie

Pytania lub problem z Deye? Napisz do nas.

Napisz do nas na WhatsApp, po polsku, lub do grupy Svitgrid na Telegramie. Czytamy każdą wiadomość i odpowiadamy szybko: w grupie bot widzi Twoją stację dzięki kodowi diagnostycznemu z aplikacji, więc rozmowa zaczyna się od danych, a nie od pytań doprecyzowujących.

Cenimy osoby, które zgłaszają problemy. Potwierdzony błąd daje punkty, a punkty płacą za Twoją subskrypcję.

Pytania

Czy Deye obsługuje Modbus TCP?

Nie bezpośrednio. Rejestrator Wi-Fi mówi Solarman V5 na porcie 8899: to Modbus RTU opakowany w ramkę z numerem seryjnym rejestratora. Rejestratory z numerem seryjnym zaczynającym się od 26 nie przyjmują nawet tego. Po kablu RS-485 falownik odpowiada zwykłym Modbus RTU.

Jakie są ustawienia Modbus RTU w Deye?

9600 baud, 8 bitów danych, bez parzystości, 1 bit stopu (8N1). Adres to pole Modbus SN na ekranie falownika. Deye nigdy nie odpowiada na adres 00, więc ustaw 01, a na każdym kolejnym falowniku na tej samej magistrali ustaw 02, 03.

Jak odczytać prąd sieci w Deye?

Nie da się, bo nie ma go w rejestrach: udokumentowane adresy (610–612 w trójfazowych, 160 w jednofazowych) zawierają coś innego. Dzielimy wartość bezwzględną mocy sieci przez napięcie sieci.

Dlaczego Deye nie ładuje baterii z sieci, nawet gdy Time of Use jest włączony?

Sprawdź bit 0 rejestru 130 (trójfazowy) lub 232 (jednofazowy): to zezwolenie na ładowanie z sieci. Główny przełącznik Time of Use, rejestr 146 lub 248, tylko włącza harmonogram i sam nie zezwala na ładowanie z sieci.

Skąd wziąć mapę rejestrów Deye?

Najważniejsze adresy są powyżej. Trójfazowy SG04LP3 i modele jednofazowe mają różne mapy, a niektóre wersje firmware'u zgłaszają moc w jednostkach po 10 W, więc sprawdź każdy adres na własnym falowniku.

Czytaj dalej

Wypróbuj, zanim napiszesz własne

Wgranie firmware'u Svitgrid na własny ESP32-S3 jest darmowe. Jeśli Svitgrid Ci nie odpowiada, tracisz wieczór, a nie miesiąc.

Pobierz z App StorePobierz z Google Play