---
title: "Huawei SUN2000 (Modbus RTU)"
description: "Falownik solarny Huawei SUN2000 3-10KTL połączony z TapHome przez Modbus RTU po RS-485."
url: "https://taphome.com/pl/compatibility/huawei-sun2000-rtu/"
language: pl
lastmod: 2026-03-28
generator: hugo
ai:
  topics: ["modbus-rtu","inverter","solar","rs485","pv-monitoring","battery-storage","grid-power-meter"]
  questions: ["Jak podłączyć Huawei SUN2000 przez RS-485 Modbus RTU do TapHome?","Co mierzy i steruje szablon Huawei SUN2000 RTU w TapHome?","Które piny COM port użyć dla Modbus RTU na Huawei SUN2000?","Czy mogę jednocześnie używać Modbus RTU i WLAN Smart Dongle na SUN2000?","Jak monitorować SOC baterii i moc sieci na SUN2000 przez TapHome?","Jaka jest różnica między szablonami TCP i RTU dla Huawei SUN2000?"]
---

# Huawei SUN2000 (Modbus RTU)

Komunikacja: Modbus RTU

- [Huawei FusionSolar](https://solar.huawei.com/en/products/residential/inverters)

## Poradnik integracji

Falowniki Huawei SUN2000 3-10KTL to trójfazowe falowniki stringowe dla domowych instalacji PV o mocy znamionowej od 3 kW do 10 kW. Ten szablon łączy falownik przez **Modbus RTU po RS-485**, używając portu COM na spodzie urządzenia. W przeciwieństwie do wariantu TCP (który używa Smart Dongle do łączności sieciowej), wariant RTU komunikuje się bezpośrednio przez szeregowy bus RS-485.

Szablon zapewnia monitorowanie i sterowanie mocą czynną, moc wejścia DC z pomiarami po stronie sieci, odczyty prądu i napięcia stringów PV, licznik mocy sieci (przez Smart Power Sensor), stan naładowania baterii (SOC), dzienne i skumulowane liczniki energii oraz szczegółowy stan falownika z dekodowaniem alarmów.

> [!WARNING]
> Huawei ostrzega, że komunikacja Modbus RTU może stać się niestabilna, gdy falownik komunikuje się z serwerami chmurowymi przez WLAN Smart Dongle. **Odłącz WLAN Smart Dongle** przed użyciem Modbus RTU, aby uniknąć błędów CRC i awarii komunikacji na busie RS-485.

## Podłączenie sprzętowe

Falownik SUN2000 ma 16-pinowy port COM (#8) na dolnym panelu. Port COM zapewnia dwa oddzielne busy RS-485:

| Bus | Piny | Przeznaczenie |
|-----|------|---------------|
| **Bus 1** | Pin 1 (485A1-1), Pin 3 (485B1-1) | Kaskadowanie falowników, SmartLogger, **połączenie TapHome** |
| **Bus 2** | Pin 7 (485A2), Pin 9 (485B2) | Smart Power Sensor, magazynowanie energii |

Do połączenia TapHome Modbus RTU użyj **Busu 1**:

- **Pin 1 (485A1-1)** -- podłączyć do RS-485 **A+** kontrolera TapHome
- **Pin 3 (485B1-1)** -- podłączyć do RS-485 **B-** kontrolera TapHome
- **Pin 5 (PE)** -- uziemienie ekranu (opcjonalne, zalecane)

### Lokalizacja portów falownika

![Dolny panel falownika SUN2000 z portem COM (#8) i portem Smart Dongle (#9)](https://taphome.com/images/compatibility/huawei-sun2000-rtu/inverter-ports_hu_5491645494580c3c.jpg)

Port COM (#8) znajduje się na dolnym panelu, obok portu wyjścia AC (#7) i portu Smart Dongle (#9).

### Rozkład pinów portu COM

![16-pinowy złącze portu COM SUN2000 z numeracją pinów](https://taphome.com/images/compatibility/huawei-sun2000-rtu/com-port-pinout_hu_38f30b1cd140d65d.jpg)

| Pin | Oznaczenie | Funkcja |
|-----|------------|---------|
| 1 | 485A1-1 | RS-485 A+ (Bus 1) -- **podłączyć do TapHome A+** |
| 2 | 485A1-2 | RS-485 A+ (Bus 1) -- do kaskadowania do następnego falownika |
| 3 | 485B1-1 | RS-485 B- (Bus 1) -- **podłączyć do TapHome B-** |
| 4 | 485B1-2 | RS-485 B- (Bus 1) -- do kaskadowania do następnego falownika |
| 5 | PE | Uziemienie ekranu |
| 7 | 485A2 | RS-485 A+ (Bus 2) -- Smart Power Sensor |
| 9 | 485B2 | RS-485 B- (Bus 2) -- Smart Power Sensor |

### Instalacja kabla RS-485

![Instalacja kabla sygnałowego RS-485 do złącza portu COM z pozycjami pinów 485A1-1, 485B1-1 i PE](https://taphome.com/images/compatibility/huawei-sun2000-rtu/wiring-rs485-cable_hu_5288d173273787db.jpg)

Użyj zewnętrznego ekranowanego kabla ze skręcanymi parami. Zedrzeć zewnętrzną osłonę około 55 mm i wewnętrzną izolację 12-14 mm. Włożyć przewody w odpowiednie pozycje pinów złącza kabla sygnałowego, a następnie włożyć złącze do portu COM i obrócić zgodnie z ruchem wskazówek zegara, aby zablokować. Zabezpieczyć śrubą M3 (moment: 0,55 N.m).

> [!TIP]
> Kabel sygnałowy RS-485 prowadź oddzielnie od kabli zasilających, aby zapobiec interferencjom elektromagnetycznym.

## Konfiguracja

### Parametry komunikacyjne

| Parametr | Wartość |
|----------|---------|
| Protokół | Modbus RTU |
| Prędkość transmisji | 9600 bps |
| Bity danych | 8 |
| Parzystość | Brak |
| Bity stopu | 1 |
| Slave ID | 1 (domyślne, konfigurowalne przez aplikację FusionSolar) |

### Ustawianie Slave ID

Domyślny adres slave Modbus to **1**. Aby go zmienić:

1. Połączyć się z falownikiem przez aplikację FusionSolar (początkowe hasło WiFi: **Changeme**)
2. Zalogować się jako instalator (początkowe hasło: **00000a**)
3. Przejść do ustawień komunikacji i zmienić adres RS-485
4. Zmienić domyślne hasło natychmiast po pierwszym logowaniu

> [!NOTE]
> WLAN Smart Dongle musi być odłączony dla stabilnej komunikacji Modbus RTU. Jeśli dongle jest zainstalowany do monitorowania chmury FusionSolar, usuń go po konfiguracji i przed podłączeniem TapHome przez RS-485.

## Możliwości urządzenia

Szablon udostępnia następujące urządzenia:

### Moc czynna

Licznik energii odczytujący bieżącą moc wyjściową AC falownika w kW (rejestr H:32080, Int32, podzielony przez 1000). To podstawowe urządzenie monitorujące moc z możliwościami odczytu i zapisu.

Atrybuty serwisowe obejmują szczytową moc czynną dnia (H:32078), moc bierną w kVar (H:32082), moc znamionową, maksymalną moc czynną, maksymalną moc pozorną i maksymalną moc bierną (oddawanie do sieci i pobieranie z sieci).

Trzy akcje serwisowe umożliwiają sterowanie mocą:

- **Kompensacja mocy biernej (PF)** -- ustawienie współczynnika mocy od -1,0 do 1,0 (zapisuje do H:40122)
- **Kompensacja mocy biernej (Q/S)** -- ustawienie stosunku mocy biernej od -1,0 do 1,0 (zapisuje do H:40123)
- **Ograniczenie mocy czynnej (%)** -- ograniczenie mocy wyjściowej jako procent 0-100% (zapisuje do H:40125)

### Bateria

Wyświetla stan naładowania baterii (SOC) w procentach (rejestr H:37760, UInt16, podzielony przez 1000). Atrybut serwisowy pokazuje stan pracy baterii (H:37762) z wartościami: Offline, Czuwanie, Praca, Awaria lub Tryb uśpienia.

> [!NOTE]
> Urządzenie Bateria pojawia się jako funkcjonalne tylko wtedy, gdy bateria LUNA2000 jest podłączona do falownika. Bez baterii stan pracy wyświetli „Offline" a SOC będzie równy zero.

### Licznik mocy sieci

Odczytuje aktywną moc sieci ze Smart Power Sensor w kW (rejestr H:37113, Int32, podzielony przez 1000) i energię eksportowaną do sieci w kWh (rejestr H:37119, Int32, podzielony przez 100). Wartości dodatnie wskazują moc eksportowaną do sieci, wartości ujemne wskazują moc importowaną z sieci.

Atrybuty serwisowe pokazują stan licznika (Normalny/Offline) i typ licznika (3-fazowy/1-fazowy).

> [!NOTE]
> Urządzenie Licznik mocy sieci wymaga Huawei Smart Power Sensor (DTSU666-H) podłączonego do falownika przez RS-485 Bus 2 (piny 7 i 9 na porcie COM). To urządzenie nie jest obecne w wariancie TCP.

### Moc wejścia DC

Czujnik tylko do odczytu pokazujący łączną moc DC ze wszystkich stringów PV w kW (rejestr H:32064, Int32, podzielony przez 1000).

Atrybuty serwisowe dostarczają pomiary po stronie sieci: częstotliwość sieci (H:32085), napięcia fazowe A/B/C (H:32069-32071), prądy fazowe A/B/C (H:32072-32076) i napięcia międzyfazowe AB/BC/CA (H:32066-32068).

### Energia dzienna i energia całkowita

Dwa liczniki energii tylko do odczytu:

- **Energia dzienna** -- energia wygenerowana dziś w kWh (rejestr H:32114, podzielony przez 100), resetuje się codziennie
- **Energia całkowita** -- skumulowana energia od uruchomienia w kWh (rejestr H:32106, podzielony przez 100)

### Prądy stringów PV (PV1-PV2)

Dwa osobne urządzenia czujnikowe, po jednym na string PV, odczytujące prąd DC w amperach (rejestry H:32017 i H:32019, Int16, podzielone przez 100). Każde urządzenie zawiera atrybut serwisowy dla odpowiedniego napięcia stringu (H:32016 i H:32018, podzielone przez 10).

> [!NOTE]
> Szablon RTU zawiera 2 urządzenia stringów PV (PV1-PV2) w porównaniu z 4 w wariancie TCP. Mapa rejestrów obsługuje do 24 stringów — dodatkowe urządzenia stringów PV można dodać ręcznie w razie potrzeby.

### Stan falownika

Przełącznik wielowartościowy (tylko odczyt) pokazujący bieżący stan pracy falownika z rejestru H:32089:

| Wartość | Stan | Opis |
|---------|------|------|
| 0 | Stan falownika | Początkowy / nieznany |
| 1 | Bezczynny | Wykrywanie ISO, nasłonecznienia lub sieci |
| 2 | Uruchamianie | Falownik uruchamia się |
| 3 | Podłączony do sieci | Normalna produkcja energii |
| 4 | Wyłączenie | Awaria, polecenie, OVGR lub wyłączenie DC |
| 5 | Regulacja sieci | Aktywna krzywa cos(Phi)-P lub Q-U |
| 6 | IV Scanning | Skanowanie krzywej I-V stringu PV |
| 7 | Kontrola wyrywkowa | Trwa kontrola wyrywkowa sieci |
| 8 | Inspekcja | Tryb inspekcji |
| 9 | Wykrywanie wejścia DC | Wykrywanie wejścia DC |

Atrybuty serwisowe dostarczają szczegółowe informacje o stanie: Pełny stan (rozszerzony stan z pod-stanami), Połączenie z siecią, Teleindykacja (sygnalizacja IEC104), Status blokady, Status połączenia PV oraz znaczniki czasu uruchomienia/wyłączenia.

### Monitorowanie alarmów

Skrypt odczytu na poziomie modułu monitoruje rejestry alarmowe H:32008 i H:32009 (Bitfield16). Każdy bit odpowiada określonej awarii lub ostrzeżeniu:

| Rejestr | Bit | Alarm |
|---------|-----|-------|
| H:32008 | 0 | Wysokie napięcie stringu |
| H:32008 | 1 | Awaria łuku DC |
| H:32008 | 2 | Odwrócony string |
| H:32008 | 3 | Nieprawidłowy string (ostrzeżenie) |
| H:32008 | 7 | Awaria sieci elektroenergetycznej |
| H:32008 | 8-9 | Zbyt niskie/wysokie napięcie sieci |
| H:32008 | 11-13 | Awarie częstotliwości sieci |
| H:32008 | 14-15 | Przepięcie wyjścia / składowa DC |
| H:32009 | 0 | Nieprawidłowy prąd upływu |
| H:32009 | 1-2 | Awarie uziemienia / izolacji |
| H:32009 | 3-4 | Wysoka temperatura / awaria urządzenia |
| H:32009 | 9 | Nieprawidłowe urządzenie magazynowania energii |
| H:32009 | 10-11 | Aktywne/pasywne wyspiarstwo |

### Diagnostyka na poziomie modułu

Moduł udostępnia atrybuty serwisowe do identyfikacji urządzenia i diagnostyki:

| Atrybut | Rejestr | Opis |
|---------|---------|------|
| Nazwa modelu | H:30000 | Model z tabliczki znamionowej falownika |
| SN | H:30015 | Numer seryjny |
| PN | H:30025 | Kod produktu |
| Model ID | H:30070 | Numeryczny identyfikator modelu |
| Liczba stringów | H:30071 | Podłączone stringi PV |
| Liczba MPPT | H:30072 | Liczba trackerów MPP |
| Strefa czasowa | H:43006 | Przesunięcie UTC |
| Sprawność falownika | H:32086 | Sprawność konwersji (%) |
| Temperatura obudowy | H:32087 | Temperatura wewnętrzna |
| Rezystancja izolacji | H:32088 | Izolacja instalacji PV |
| Zbieranie danych DSP | H:32002 | Stan zbierania danych |

Akcja serwisowa **Strefa czasowa** umożliwia ustawienie przesunięcia UTC falownika (zapisuje do H:43006).

### Dodatkowe możliwości

Falownik SUN2000 udostępnia dodatkowe rejestry, które nie są jeszcze zaimplementowane w szablonie. Obejmują one wersję oprogramowania, rejestr kodów błędów, szybciej aktualizowany odczyt mocy czynnej, łączny licznik energii wejścia DC, miesięczne i roczne liczniki energii, moc ładowania/rozładowania baterii, nieoznakowaną energię eksportowaną, skumulowaną energię sieciową oraz zdalne polecenia włączenia/wyłączenia. Mogą zostać dodane w przyszłej aktualizacji szablonu.

### Różnice w stosunku do wariantu TCP

Szablon RTU zawiera dwa urządzenia nieobecne w wariancie TCP: **Licznik mocy sieci** (odczyty Smart Power Sensor) i **Bateria** z odczytem SOC. Jednak szablon RTU zawiera tylko 2 urządzenia stringów PV (PV1-PV2) w porównaniu z 4 w wariancie TCP. Mapa rejestrów jest identyczna — różni się tylko warstwa transportowa (szeregowy RS-485 vs TCP/IP przez Smart Dongle).

## Rozwiązywanie problemów

### Brak komunikacji Modbus

1. Sprawdzić, czy kabel RS-485 jest podłączony do prawidłowych pinów portu COM: Pin 1 (485A1-1) = A+, Pin 3 (485B1-1) = B-
2. Upewnić się, że WLAN Smart Dongle jest **odłączony** od falownika
3. Sprawdzić, czy prędkość transmisji jest ustawiona na 9600 i parzystość na Brak (8N1) w TapHome
4. Potwierdzić prawidłowy Slave ID (domyślny: 1)
5. Sprawdzić, czy złącze kabla sygnałowego jest w pełni włożone i zablokowane w porcie COM

### Sporadyczne awarie komunikacji

Najczęstszą przyczyną jest WLAN Smart Dongle zakłócający bus RS-485. Wewnętrzna komunikacja dongla z serwerami chmurowymi Huawei powoduje błędy CRC na magistrali szeregowej. Usuń dongle, aby zapewnić stabilną pracę RTU.

### Wartości stringów PV odczytują zero

Nieużywane wejścia stringów PV zawsze będą odczytywać 0 A / 0 V. Jest to normalne, jeśli model falownika ma mniej wejść MPPT niż przewiduje szablon (np. model 3KTL może używać tylko PV1 i PV2).

### Urządzenie Bateria pokazuje „Offline"

Rejestry baterii LUNA2000 są wypełniane tylko wtedy, gdy kompatybilna bateria jest fizycznie podłączona do falownika. Bez baterii Stan pracy będzie odczytywał „Offline" a SOC będzie równy zero.

### Stan falownika utknął na „Bezczynny"

W nocy lub przy słabym nasłonecznieniu falownik przechodzi w tryb bezczynności. Jest to normalne — przejdzie do „Podłączony do sieci" po wykryciu wystarczającego nasłonecznienia słonecznego. Falownik może mieć ograniczoną dostępność danych w trybie czuwania.

### Licznik mocy sieci odczytuje zero

Urządzenie Licznik mocy sieci wymaga Huawei Smart Power Sensor (DTSU666-H) podłączonego przez RS-485 Bus 2 (piny 7 i 9). Jeśli nie jest zainstalowany żaden licznik, wartości będą odczytywać zero, a stan licznika wyświetli „Offline".

## Dostępne urządzenia 9

Te urządzenia pojawią się w TapHome po imporcie.

SUN2000 Moduł

Atrybuty serwisowe

|                      |                                                                                     |
|----------------------|-------------------------------------------------------------------------------------|
| Nazwa modelu         |                                                                                     |
| SN                   |                                                                                     |
| PN                   |                                                                                     |
| Model ID             |                                                                                     |
| Liczba stringów      |                                                                                     |
| Liczba MPPT          |                                                                                     |
| Strefa czasowa       | Przesunięcie UTC falownika — odczytuje i wyświetla skonfigurowaną strefę czasową    |
| Sprawność falownika  | Sprawność konwersji DC-AC w procentach                                              |
| Temperatura obudowy  | Wewnętrzna temperatura obudowy falownika                                            |
| Rezystancja izolacji | Rezystancja izolacji instalacji PV w megaomach — monitoruje bezpieczeństwo izolacji |
| Zbieranie danych DSP | Stan zbierania danych — Tak (aktywny) lub Nie (nieaktywny)                          |

Akcje serwisowe

|                |                                                                       |
|----------------|-----------------------------------------------------------------------|
| Strefa czasowa | Ustawić przesunięcie UTC falownika — wybrać od UTC-12:00 do UTC+14:00 |

Odczyt (moduł)

```taphome
var a1 := MODBUSR(H, 32008, Uint16);
var a2 := MODBUSR(H, 32009, Uint16);
IF(GETBIT(a1,0) = 1, ADDERROR("High String Voltage", 2001));
IF(GETBIT(a1,1) = 1, ADDERROR("DC Arc Fault", 2002));
IF(GETBIT(a1,2) = 1, ADDERROR("String Reversed", 2011));
IF(GETBIT(a1,3) = 1, ADDWARNING("PV String Backfeed ", 2012));
IF(GETBIT(a1,4) = 1, ADDWARNING("Abnormal String", 2013));
IF(GETBIT(a1,5) = 1, ADDERROR("AFCI Self-test Fault", 2021));
IF(GETBIT(a1,6)= 1, ADDERROR("Short circuit between phase to PE ", 2021));
IF(GETBIT(a1,7) = 1, ADDERROR("Power Grid Failure ", 2032));
IF(GETBIT(a1,8) = 1, ADDERROR("Grid Undervoltage ", 2033));
IF(GETBIT(a1,9) = 1, ADDERROR("Grid Overvoltage", 2034));
IF(GETBIT(a1,10) = 1, ADDERROR("Unbalanced Grid Voltage", 2035));
IF(GETBIT(a1,11) = 1, ADDERROR("Grid Overfrequency", 2036));
IF(GETBIT(a1,12) = 1, ADDERROR("Grid Underfrequency", 2037));
IF(GETBIT(a1,13) = 1, ADDERROR("Grid Frequency Instability", 2038));
IF(GETBIT(a1,14) = 1, ADDERROR("Output Overcurrent ", 2039));
IF(GETBIT(a1,15) = 1, ADDERROR("Large DC of Output current ", 2040));
IF(GETBIT(a2,0) = 1, ADDERROR("Abnormal Leakage Current ", 2051));
IF(GETBIT(a2,1) = 1, ADDERROR("Abnormal Ground.", 2061));
IF(GETBIT(a2,2) = 1, ADDERROR("Low Insulation Res. ", 2062));
IF(GETBIT(a2,3) = 1, ADDERROR("High Temperature", 2063));
IF(GETBIT(a2,4) = 1, ADDERROR("Abnormal Equipment", 2064));
IF(GETBIT(a2,5) = 1, ADDERROR("Upgrade Failed", 2065));
IF(GETBIT(a2,6) = 1, ADDWARNING("License Expired", 2066));
IF(GETBIT(a2,7) = 1, ADDERROR("Abnormal Monitor Unit", 61440));
IF(GETBIT(a2,8) = 1, ADDERROR("Power collector fault ", 2067));
IF(GETBIT(a2,9) = 1, ADDERROR("Abnormal energy storage device", 2068));
IF(GETBIT(a2,10) = 1, ADDERROR("Active islanding", 2070));
IF(GETBIT(a2,11) = 1, ADDERROR("Passive islanding", 2071));
IF(GETBIT(a2,12) = 1, ADDERROR("Transient AC overvoltage", 2072));
IF(GETBIT(a2,15) = 1, ADDERROR("Abnormal PV module configuration", 2080));
```

Atrybuty serwisowe

Model Name

```taphome
MODBUSR(H, 30000, String, 15)
```

SN

```taphome
MODBUSR(H, 30015, String, 10)
```

PN

```taphome
MODBUSR(H, 30025, String, 10)
```

Model ID

```taphome
MODBUSR(H, 30070, Uint16)
```

Number of Strings

```taphome
MODBUSR(H, 30071, Uint16)
```

MPPT Number

```taphome
MODBUSR(H, 30072, Uint16)
```

Time Zone

```taphome
IF(MODBUSR(H, 43006, Int16) = 0, "UTC±00:00");
var time := MODBUSR(H, 43006, Int16)/0.6;
var zone := IF(MOD(time,100) = 0, time/100 + ":00", ROUND(time/100) + ":" + MOD(time,100));
RETURN (IF(time > 0, "UTC+" + zone, "UTC-" + zone ));
```

Inverter Efficiency

```taphome
 MODBUSR(H, 32086, Uint16)/100 + "%"
```

Cabinet Temperature

```taphome
MODBUSR(H, 32087, Int16) / 10 + " ℃ "
```

Insulation Resistance

```taphome
MODBUSR(H, 32088, Uint16)/1000 + "MΩ "
```

DSP data collection

```taphome
IF(GETBIT(MODBUSR(H, 32002, Uint16),0) = 1, "Yes", "No")
```

Akcje serwisowe

Time Zone

Parametry: Time Zone

```taphome
MODBUSWNE(H, 43006, Int16, timz*60)
```

Moc czynna Licznik energii Odczyt i zapis

Licznik energii z mocą czynną (kW), mocą bierną, współczynnikiem mocy i akcjami sterowania mocą do ograniczania i kompensacji

Rejestr: H:32080 Int32 Jednostka: kW numeric

Atrybuty serwisowe

|                                             |
|---------------------------------------------|
| Szczytowa moc czynna dnia                   |
| Moc bierna                                  |
| Moc znamionowa                              |
| Kompensacja mocy biernej (PF)               |
| Kompensacja mocy biernej (Q/S)              |
| Procent ograniczenia mocy czynnej (0,1%)    |
| Ograniczenie mocy czynnej (wartość stała W) |
| Maksymalna moc czynna                       |
| Maksymalna moc pozorna                      |
| Maksymalna moc bierna (oddawana do sieci)   |
| Maksymalna moc bierna (pobierana z sieci)   |

Akcje serwisowe

|                                |                                                                       |
|--------------------------------|-----------------------------------------------------------------------|
| Kompensacja mocy biernej (PF)  | Ustawić współczynnik mocy od -1,0 do 1,0 dla kompensacji mocy biernej |
| Kompensacja mocy biernej (Q/S) | Ustawić stosunek mocy biernej od -1,0 do 1,0                          |
| Ograniczenie mocy czynnej (%)  | Ograniczyć moc wyjściową falownika jako procent 0-100%                |

Odczyt zapotrzebowania

```taphome
MODBUSR(H, 32080, Int32,2)/1000;
```

Atrybuty serwisowe

Active Power peak of this day

```taphome
MODBUSR(H, 32078, Int32, 2) + " kW"
```

Reactive Power

```taphome
MODBUSR(H, 32082, Int32, 2)/1000 + " kVar"
```

Rated Power

```taphome
MODBUSR(H, 30073, Uint32, 2)/1000 + " kW"
```

Reactive Power Compensation (PF)

```taphome
MODBUSR(H, 40122, Int16)/1000
```

Reactive Power Compensation (Q/S)

```taphome
MODBUSR(H, 40123, Int16)/1000
```

Active Power Derating percent (0.1%)

```taphome
MODBUSR(H, 40122, Int16)/10 + "%"
```

Active Power Derating (fixed value W)

```taphome
MODBUSR(H, 40126, Uint32, 2) + " W"
```

Maximum Active Power

```taphome
MODBUSR(H, 30075, Uint32, 2)/1000 + " kW"
```

Maximum Apparent Power

```taphome
MODBUSR(H, 30077, Uint32, 2)/1000 + " kVA"
```

Maximum reactive power (fed to grid)

```taphome
MODBUSR(H, 30079, Uint32, 2)/1000 + " kVar"
```

Maximum reactive power (absorbed from grid)

```taphome
MODBUSR(H, 30081, Uint32, 2)/1000 + " kVar"
```

Akcje serwisowe

Reactive Power Compensation (PF)

Parametry: Reactive power compensation

```taphome
MODBUSWNE(H, 40122, Int16, pf*1000);
```

Reactive Power Compensation (Q/S)

Parametry: Reactive power compensation (-1, 1] (-1–1 rpc)

```taphome
MODBUSW(H, 40123, Int16, rpc*1000);
```

Active Power Derating Percent(%)

Parametry: Active Power Derating Percent(%) (0–100 apdp)

```taphome
MODBUSW(H, 40125, Uint16, apdp*10)
```

Bateria Ściemniacz Tylko do odczytu

Stan naładowania baterii (SOC) w procentach — pokazuje dostępną energię w magazynie LUNA2000

Rejestr: H:37760 UInt16 Jednostka: % numeric

Atrybuty serwisowe

|      |                                                                         |
|------|-------------------------------------------------------------------------|
| Stan | Stan pracy baterii — Offline, Czuwanie, Praca, Awaria lub Tryb uśpienia |

Odczyt poziomu

```taphome
MODBUSR(H, 37760, Uint16) / 1000
```

Atrybuty serwisowe

Status

```taphome
SWITCH(MODBUSR(H, 37762, Uint16), 0, "offline", 1, "standby", 2, "running", 3, "fault", 4, "sleep mode", "error");
```

Licznik mocy sieci Licznik energii Tylko do odczytu

Aktywna moc sieci (kW) i energia eksportowana (kWh) ze Smart Power Sensor — dodatnie to eksport, ujemne to import

Rejestr: H:37113 Int32 Jednostka: kW numeric

Atrybuty serwisowe

|      |                                           |
|------|-------------------------------------------|
| Stan | Stan licznika mocy — Normalny lub Offline |
| Typ  | Typ licznika mocy — 3-fazowy lub 1-fazowy |

Odczyt całkowitego zużycia

```taphome
MODBUSR(H, 37119, Int32) / 100
```

Odczyt zapotrzebowania

```taphome
MODBUSR(H, 37113, Int32) / 1000
```

Atrybuty serwisowe

Status

```taphome
IF(MODBUSR(H, 37100, Uint16) = 1, "Normal", "Offline");
```

Type

```taphome
IF(MODBUSR(H, 37125, Uint16) = 1, "3 phase", "1 phase");
```

Energia dzienna Zmienna Tylko do odczytu

Energia wygenerowana dziś w kWh — resetuje się o północy

Rejestr: H:32114 Int32 Jednostka: kWh numeric

Odczyt

```taphome
MODBUSR(H, 32114, Int32, 2)/100
```

Energia całkowita Zmienna Tylko do odczytu

Skumulowana energia całkowita od uruchomienia

Rejestr: H:32106 Int32 Jednostka: kWh numeric

Odczyt

```taphome
MODBUSR(H, 32106, Int32, 2)/100
```

Moc wejścia DC Licznik energii Tylko do odczytu

Łączna moc DC wszystkich stringów PV (kW) z pomiarami po stronie sieci — napięcia fazowe, prądy, napięcia międzyfazowe i częstotliwość

Rejestr: H:32064 Int32 Jednostka: kW numeric

Atrybuty serwisowe

|                 |
|-----------------|
| Napięcie fazy A |
| Napięcie fazy B |
| Napięcie fazy C |
| Prąd fazy A     |
| Prąd fazy B     |
| Prąd fazy C     |
| Napięcie AB     |
| Napięcie BC     |
| Napięcie CA     |
| Częstotliwość   |

Odczyt zapotrzebowania

```taphome
MODBUSR(H, 32064, Int32, 2)/1000
```

Atrybuty serwisowe

A Voltage

```taphome
MODBUSR(H, 32069, Int16)/10 + " V"
```

B Voltage

```taphome
MODBUSR(H, 32070, Int16)/10 + " V"
```

C Voltage

```taphome
MODBUSR(H, 32071, Int16)/10 + " V"
```

A Current

```taphome
MODBUSR(H, 32072, Int32, 2)/1000 + " A"
```

B Current

```taphome
MODBUSR(H, 32074, Int32, 2)/1000 + " A"
```

C Current

```taphome
MODBUSR(H, 32076, Int32, 2)/1000 + " A"
```

AB Voltage

```taphome
MODBUSR(H, 32066, Int16)/10 + " V"
```

BC Voltage

```taphome
MODBUSR(H, 32067, Int16)/10 + " V"
```

CA Voltage

```taphome
MODBUSR(H, 32068, Int16)/10 + " V"
```

Frequency

```taphome
MODBUSR(H, 32085, Uint16)/100 + " Hz"
```

Status falownika Przełącznik wielowartościowy Tylko do odczytu

Stan pracy falownika — Bezczynny, Uruchamianie, Podłączony do sieci, Wyłączenie, Regulacja sieci, IV Scanning, Kontrola wyrywkowa, Inspekcja, Wykrywanie wejścia DC

Rejestr: H:32089 UInt16 numeric

Wartości / Stany: Initializing · Idle · Starting · On-Grid · Shutdown · Grid Dispatch · IV scanning · Spot-Check · Inspecting · DC input detection

Odczyt stanu przełącznika

```taphome
var reg := MODBUSR(H, 32089, Uint16);
IF(reg = 0, 0,
IF(reg < 4 OR reg = 40960,1,
IF(reg = 256, 2, 
IF(reg < 515, 3, 
IF(reg < 775, 4,
IF(reg = 1025 OR reg = 1026, 5, 
IF(reg = 1280 OR reg = 1281, 7,
IF(reg = 1536, 8, 
IF(reg = 2048, 6,
IF(reg = 2304, 9
))))))))))
```

Atrybuty serwisowe

Full State

```taphome
var state := MODBUSR(H, 32089, Uint16);
SWITCH(state, 0, "Idle: Initializing",
 1,"Idle: Detecting ISO", 
 2,"Idle: Detecting irradiation", 
 3, "Idle: Grid Detecting", 
 256, "Starting", 
 512, "On-Grid", 
 513, "On-Grid: Power Limit", 
 514, "On-Grid: self-derating", 
 768, "Shutdown: Fault", 
 769, "Shutdown: Command", 
 770, "Shutdown: OVGR", 
 771,"Shutdown: Communication disconnected", 
 772, "Shutdown: Power Limit", 
 773, "Shutdown: Start manually", 
 774, "Shutdown: DC Switch OFF",
 1025, "Grid dispatch:cos(Phi)-P curve",
 1026, "Grid dispatch:Q-U curve",
40960, "Idle: No irradiation",
1280, "Spot-check",
1281, "Spot-checking",
1536, "Inspecting",
1792, "SFCI self-check",
2048, "IV scanning",
2304, "DC input detection",
"Unknown"
 );
```

Grid Connection

```taphome
var reg := MODBUSR(H, 32000,Uint16);
IF(GETBIT(reg,0) = 1, "Standby",
IF(GETBIT(reg,2) = 1 , "Normal Grid Connection",
IF(GETBIT(reg,3) = 1, "Grid connection with derating due to power rationing",
IF(GETBIT(reg,4) = 1, "Grid connection with derating due to inverter internal causes", "Not Connected"
)
)
)
)
```

Teleindication

```taphome
var reg := MODBUSR(H, 32000,Uint16);
IF(GETBIT(reg,0) = 1, "Standby",
IF(GETBIT(reg,5) = 1 , "Normal Stop",
IF(GETBIT(reg,6) = 1, "Stop due to faults",
IF(GETBIT(reg,7) = 1, "Stop due to power rationing",
IF(GETBIT(reg,8) = 1, "Shutdown",
IF(GETBIT(reg,9) = 1, "Spot check",
IF(GETBIT(reg,1) = 1, "Grid Connected",
"Unknown State")
)
)
)
)
)
)
```

Locking Status

```taphome
IF(GETBIT(MODBUSR(H, 32002, Uint16),0) = 1, "Unlocked", "Locked");
```

PV Connection Status

```taphome
IF(GETBIT(MODBUSR(H, 32002, Uint16),0) = 1, "Connected", "Disconnected");
```

Startup time

```taphome
var reg := MODBUSR(H, 32091, Uint32, 2);
var min := FLOOR(MOD(reg, 3600)/60);
var ho := FLOOR(MOD(reg,86400)/3600);
var minutes := IF(min<10, "0" + min, min);
var hours := IF(ho<10, "0" + ho, ho);
hours + ":" + minutes;
```

Shutdown time

```taphome
var reg := MODBUSR(H, 32093, Uint32, 2);
var min := FLOOR(MOD(reg, 3600)/60);
var ho := FLOOR(MOD(reg,86400)/3600);
var minutes := IF(min<10, "0" + min, min);
var hours := IF(ho<10, "0" + ho, ho);
hours + ":" + FLOOR(minutes);
```

PV1 prąd Zmienna Tylko do odczytu

Rejestr: H:32017 Int16 Jednostka: A numeric

Atrybuty serwisowe

|              |
|--------------|
| PV1 napięcie |

Odczyt

```taphome
MODBUSR(H, 32017, Int16)/100
```

Atrybuty serwisowe

PV1 Voltage

```taphome
MODBUSR(H, 32016, Int16)/10 + "V"
```

PV2 prąd Zmienna Tylko do odczytu

Rejestr: H:32019 Int16 Jednostka: A numeric

Atrybuty serwisowe

|              |
|--------------|
| PV2 napięcie |

Odczyt

```taphome
MODBUSR(H, 32019, Int16)/100
```

Atrybuty serwisowe

PV2 Voltage

```taphome
MODBUSR(H, 32018, Int16)/10
```

**Połączenie:** Modbus RTU • 9600 baud• 8N1 • Slave ID: $\[SlaveId]

Możliwe ulepszenia (13)

- H:30035 Firmware Version — STR, 15 regs, read-only — useful for diagnostics
- H:32010 Alarm 3 — Bitfield16, additional alarm bits not decoded in template readscript
- H:32090 Fault Code — U16, specific fault code when device is in fault state
- H:32095 Active Power (fast) — I32, kW, /1000, faster-updating active power reading
- H:32108 Total DC Input Energy — U32, kWh, /100, cumulative DC energy input
- H:32116 Monthly Energy — U32, kWh, /100, electricity generated this month
- H:32118 Yearly Energy — U32, kWh, /100, electricity generated this year
- H:37765 Battery Charge/Discharge Power — I32, W, positive=charging negative=discharging — would complement existing Battery SOC device
- H:37121 Grid Exported Energy (unsigned) — U32, kWh, /100, unsigned variant of grid exported energy — complements the signed I32 already in template at H:37119
- H:37123 Grid Accumulated Energy — U32, kWh, /100, total energy consumed from grid
- H:40200 Power On — WO, E16, remote inverter power-on command
- H:40201 Shutdown — WO, E16, remote inverter shutdown command
- RTU Variant Notes — Modbus RTU over RS-485. Default: 9600 baud, 8N1. COM port Bus 1: Pin 1 (485A1-1) = A+, Pin 3 (485B1-1) = B-. Do NOT use Modbus RTU with WLAN Smart Dongle connected — causes CRC errors. RTU template has 2 PV strings (vs TCP's 4) and includes Grid Power Meter (H:37113, H:37119) + Battery SOC (H:37760). Huawei warns against Modbus RTU due to internal server communication conflicts.

## Parametry importu

Te wartości podajesz podczas importu pliku XML.

| Pytanie w aplikacji | Domyślnie     |
|---------------------|---------------|
| Slave ID            | `1`           |
| Adres IP            | `192.168.1.0` |

## Źródła

- Solar Inverter Modbus Interface Definitions (V3.0)
  
  2026-03-28
  
  [PDF](https://taphome.com/compatibility/devices/huawei-sun2000-rtu/manufacturer/modbus-interface-definitions-v3.pdf)
- SUN2000-(5KTL, 6KTL)-M0 User Manual
  
  [solar.huawei.com](https://solar.huawei.com/-/media/Solar/attachment/pdf/au/service/residential/SUN2000-5-6KTL-M0-User_Manual.pdf) 2026-03-28
  
  [PDF](https://taphome.com/compatibility/devices/huawei-sun2000-rtu/manufacturer/user-manual-m0.pdf)
- huawei-solar-lib — Python Modbus Library
  
  [github.com](https://github.com/wlcrs/huawei-solar-lib) 2026-03-28

Dokumenty producentów są © ich właścicieli. Udostępniamy je w formie opublikowanej przez producenta, wyłącznie w celach informacyjnych.

## Powiązana dokumentacja

- [Modbus Integration](https://taphome.com/pl/compatibility/modbus-guide/)
- [Modbus](https://taphome.com/pl/docs/integration/modbus/)
- [Prosta konfiguracja za pomocą szablonów](https://taphome.com/pl/docs/integration/modbus/templates/)
- [Skrypty Modbus i prefetch](https://taphome.com/pl/docs/script/modbus-scripts/)
- [Funkcje Modbus](https://taphome.com/pl/docs/script/modbus/)
- [Typy danych Modbus](https://taphome.com/pl/docs/script/modbus-data-types/)

