TapHome

Huawei SUN2000

Modbus TCP
Submitted by
Last updated: 03. 2026
Huawei SUN2000

Série Huawei SUN2000 3-10KTL zahrnuje jednofázové a třífázové stringové střídače pro rezidenční FV systémy s jmenovitým výkonem od 3 kW do 10 kW. TapHome se připojuje ke střídači přes Modbus TCP — buď přímo přes vestavěný WiFi přístupový bod střídače, nebo přes Huawei Smart Dongle (WLAN-FE nebo LAN) připojený do lokální sítě.

Šablona poskytuje monitorování činného výkonu, DC vstupní výkon, proudy a napětí PV stringů pro až 4 stringy, denní a kumulativní počítadla energie, podrobný stav střídače s dekódováním alarmů, přehled bateriového úložiště (pro LUNA2000) a akce řízení výkonu včetně kompenzace jalového výkonu a omezení činného výkonu.

Aktivace Modbus komunikace

Střídač SUN2000 podporuje Modbus TCP přes WiFi přístupový bod a přes Smart Dongle. Pro trvalé připojení s TapHome se doporučuje použít Huawei Smart Dongle-WLAN-FE (nebo Smart Dongle-4G) zapojený do USB portu střídače.

Možnosti připojení
MetodaRozhraníPoznámky
Smart Dongle (doporučený)Ethernet / WiFiPřipojí střídač do lokální sítě. Umožňuje současné Modbus TCP + aplikaci FusionSolar.
WiFi přístupový bodWiFiPřímé připojení k AP střídače (SSID: SUN2000-<serial>). Pouze jeden klient najednou.
RS-485 (Modbus RTU)COM port piny RS485A1/B1Tato šablona jej nepoužívá. Nelze provozovat současně s monitorováním FusionSolar.

Při použití WiFi přístupového bodu se aplikace FusionSolar nemůže připojit současně. Pro produkční instalace vždy použijte Smart Dongle, aby TapHome i FusionSolar mohly fungovat současně.

Nastavení Smart Dongle
  1. Zapojte Smart Dongle-WLAN-FE do USB portu na spodní straně střídače
  2. Připojte Smart Dongle k lokální WiFi síti pomocí aplikace FusionSolar (prvotní nastavení)
  3. Dongle získá IP adresu z routeru přes DHCP
  4. Poznamenejte si IP adresu z tabulky DHCP přiřazení na routeru

Přiřaďte Smart Dongle statickou IP adresu v DHCP nastavení routeru, aby se adresa po výpadku napájení nezměnila.

Síťové připojení

  • Protokol: Modbus TCP
  • Port: 502 (standardní Modbus TCP port)
  • Výchozí Slave ID: 1
  • Pořadí bajtů: Big-endian (standardní Modbus)

Integrace Huawei Home Assistant standardně používá port 503 (WiFi AP režim). Při připojení přes Smart Dongle v lokální síti TapHome používá standardní Modbus TCP port 502.

Konfigurace

Při importu šablony v TapHome zadejte:

  • IP adresa — IP adresa Smart Dongle v lokální síti (nebo WiFi AP IP střídače, výchozí: 192.168.200.1)
  • Slave ID — Modbus slave adresa (výchozí: 1)

Funkce zařízení

Šablona zpřístupňuje následující zařízení:

Činný výkon

Zařízení elektroměru, které čte aktuální AC výstup střídače. Toto je primární zařízení pro monitorování výkonu.

  • Činný výkon — aktuální AC výstupní výkon v kW (registr H:32080, Int32)
  • Účiník — účiník sítě (registr H:32084, Int16)
  • Špičkový činný výkon dne — nejvyšší výkon dnes v kW (servisní atribut, H:32078)
  • Jalový výkon — aktuální jalový výkon v kVar (servisní atribut, H:32082)
  • Jmenovitý výkon / Max. činný výkon / Max. zdánlivý výkon — typové hodnoty z registrů H:30073, H:30075, H:30077

Zařízení také poskytuje tři servisní akce pro řízení výkonu:

  • Kompenzace jalového výkonu (PF) — nastavení účiníku od -1,0 do 1,0 (zápis do H:40122)
  • Kompenzace jalového výkonu (Q/S) — nastavení poměru jalového výkonu (zápis do H:40123)
  • Omezení činného výkonu (%) — omezení výstupního výkonu v procentech 0–100 % (zápis do H:40125)
DC vstupní výkon

Senzor (pouze pro čtení) zobrazující celkový DC vstupní výkon ze všech PV stringů v kW (registr H:32064, Int32, děleno 1000).

Servisní atributy zobrazují podrobnosti o straně sítě: frekvence sítě (H:32085), fázová napětí A/B/C (H:32069–32071) a fázové proudy A/B/C (H:32072–32076).

Baterie

Kontejnerové zařízení pro stav bateriového úložiště (Huawei LUNA2000). Zobrazuje:

  • Stav provozu — Offline, Pohotovost, Provoz, Porucha nebo Spánek (H:37762)
  • Dnešní nabíjení — energie nabitá dnes v kWh (H:37784)
  • Dnešní vybíjení — energie vybitá dnes v kWh (H:37786)

Zařízení Baterie funguje pouze v případě, že je ke střídači připojena baterie LUNA2000. Bez baterie bude Stav provozu zobrazovat „Offline".

Celková energie

Kumulativní energie vyrobená od uvedení do provozu v kWh (registr H:32106, UInt32, děleno 100).

Denní energie

Energie vyrobená dnes v kWh (registr H:32114, děleno 100).

Proudy PV stringů (PV1–PV4)

Čtyři samostatná senzorová zařízení, jedno na každý PV string, měřící DC proud v ampérech (registry H:32017, H:32019, H:32021, H:32023). Každé zařízení obsahuje servisní atribut pro odpovídající napětí stringu (H:32016, H:32018, H:32020, H:32022).

Počet aktivních PV stringových zařízení závisí na modelu střídače a instalaci. Nepoužívané stringy budou číst 0 A.

Stav střídače

Vícehodnotový přepínač (pouze pro čtení) zobrazující aktuální provozní stav střídače z registru H:32089:

HodnotaStavPopis
0Stav střídačePočáteční / neznámý
1NečinnýDetekce ISO, ozáření nebo sítě
2SpouštěníStřídač se spouští
3On GridNormální výroba energie
4VypnutíPorucha, příkaz, OVGR nebo odpojení DC
5Grid DispatchAktivní křivka cos(Phi)-P nebo Q-U
6IV skenováníSkenování I-V křivky PV stringu
7Spot-CheckProbíhá kontrola sítě
8InspekceRežim inspekce
9Detekce DC vstupuDetekce DC vstupu

Servisní atributy poskytují podrobné informace o stavu:

  • Úplný stav — rozšířený stav se všemi podstavy (např. „Vypnutí: Porucha", „On-Grid: Omezení výkonu")
  • Připojení k síti — pohotovost, normální, derating kvůli omezení výkonu nebo interním příčinám
  • Teleindikace — IEC104 telesignalizační stav
  • Stav uzamčení / Stav připojení PV — z monitorovacího registru H:32002
  • Čas spuštění / Čas vypnutí — poslední časové značky spuštění a vypnutí
Monitorování alarmů

Čtecí skript na úrovni modulu monitoruje alarmové registry H:32008 a H:32009 (Bitfield16). Každý bit odpovídá konkrétní poruše nebo varování:

RegistrBitAlarm
H:320080Vysoké napětí stringu
H:320081DC oblouková porucha
H:320082Obrácená polarita stringu
H:320083Abnormální string (varování)
H:320087Výpadek sítě
H:320088–9Podpětí/přepětí sítě
H:3200811–13Poruchy frekvence sítě
H:3200814–15Nadproud výstupu / DC složka
H:320090Abnormální svodový proud
H:320091–2Poruchy uzemnění / izolace
H:320093–4Vysoká teplota / porucha zařízení
H:320099Abnormální zařízení pro ukládání energie
H:3200910–11Aktivní/pasivní ostrovní režim
Diagnostika na úrovni modulu

Modul zpřístupňuje servisní atributy pro identifikaci zařízení a diagnostiku:

AtributRegistrPopis
Název modeluH:30000Typový štítek střídače
SNH:30015Sériové číslo
PNH:30025Kód produktu
Model IDH:30070Číselný identifikátor modelu
Počet stringůH:30071Připojené PV stringy
Počet MPPTH:30072Počet MPP trackerů
Systémový časH:40000Lokální čas střídače
Časová zónaH:43006UTC offset
Účinnost střídačeH:32086Účinnost konverze (%)
Teplota rozvaděčeH:32087Vnitřní teplota
Izolační odporH:32088Izolace FV pole
DSP sběr datH:32002Stav sběru dat

Servisní akce Časová zóna umožňuje nastavení UTC offsetu střídače (zápis do H:43006).

Další možnosti

Střídač SUN2000 zpřístupňuje další registry, které v šabloně zatím nejsou implementovány. Patří sem sdružená napětí (A-B, B-C, C-A), registr kódů poruch, rychleji se aktualizující čtení činného výkonu, celkové počítadlo DC vstupní energie, měsíční a roční počítadla energie, stav nabití baterie (SOC) a výkon nabíjení/vybíjení, aktivní výkon sítě (odběr/dodávka z elektroměru), exportovaná a kumulativní energie do sítě a vzdálené příkazy zapnutí/vypnutí. Tyto funkce lze doplnit v budoucí aktualizaci šablony.

SOC baterie (stav nabití) v aktuální šabloně chybí, přestože zařízení Baterie existuje. Pokud potřebujete monitorovat SOC, lze ho přidat jako vlastní Modbus zařízení čtením registru H:37760 (UInt16, děleno 10, výsledek v %).

Řešení problémů

Žádná Modbus komunikace
  1. Ověřte, že Smart Dongle je zapojen do USB portu střídače a má napájení (aktivní LED)
  2. Potvrďte IP adresu dongle v tabulce DHCP přiřazení na routeru
  3. Ujistěte se, že TapHome Core a Smart Dongle jsou ve stejné síti/podsíti
  4. Zkontrolujte, že žádný firewall neblokuje port 502
  5. Pokud používáte WiFi AP režim, připojte se k SSID střídače (SUN2000-<serial>) a použijte IP 192.168.200.1
PV stringy čtou nulové hodnoty

Nepoužívané PV vstupní stringy budou vždy číst 0 A / 0 V. Toto je normální, pokud má model střídače méně MPPT vstupů, než šablona poskytuje (např. model 3KTL může používat pouze PV1 a PV2).

Zařízení baterie zobrazuje „Offline"

Registry baterie LUNA2000 jsou naplněny pouze v případě, že je ke střídači fyzicky připojena kompatibilní baterie. Bez baterie bude Stav provozu zobrazovat „Offline" a počítadla nabíjení/vybíjení budou nulová.

Stav střídače zaseknutý na „Nečinný"

Během noci nebo při nízkém slunečním záření střídač přechází do nečinného režimu. Toto je normální — přejde do stavu „On Grid" po detekci dostatečného slunečního záření.

Dostupná zařízení

SUN2000 TCP Modul

SUN2000 TCP

Čtení (modul)
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_fault}, 2021));
IF(GETBIT(a1,6)= 1, ADDERROR(${short_circ_L-PE}, 2021));
IF(GETBIT(a1,7) = 1, ADDERROR(${power_grid_fail}, 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_V}, 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_freq_instability}, 2038));
IF(GETBIT(a1,14) = 1, ADDERROR(${output_overcurr}, 2039));
IF(GETBIT(a1,15) = 1, ADDERROR(${out_DC_large}, 2040));
IF(GETBIT(a2,0) = 1, ADDERROR(${abnorm_leak_curr}, 2051));
IF(GETBIT(a2,1) = 1, ADDERROR(${abnorm_gnd}, 2061));
IF(GETBIT(a2,2) = 1, ADDERROR(${low_insul_res}, 2062));
IF(GETBIT(a2,3) = 1, ADDERROR(${high_tempt}, 2063));
IF(GETBIT(a2,4) = 1, ADDERROR(${abnorm_equip}, 2064));
IF(GETBIT(a2,5) = 1, ADDERROR(${upgrade_fail}, 2065));
IF(GETBIT(a2,6) = 1, ADDWARNING(${license_expired}, 2066));
IF(GETBIT(a2,7) = 1, ADDERROR(${abnorm_monitor_unit}, 61440));
IF(GETBIT(a2,8) = 1, ADDERROR(${power_collect_fault}, 2067));
IF(GETBIT(a2,9) = 1, ADDERROR(${abnorm_energy_storage_dev}, 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(${trans_AC_overvoltage}, 2072));
IF(GETBIT(a2,15) = 1, ADDERROR(${abnorm_PV_module_config}, 2080));
Činný výkon Elektroměr

Elektroměr s činným výkonem, jalovým výkonem, účiníkem a špičkovým výkonem dne

Registr: H:32080 Int32 Jednotka: kW numeric

Činný výkon

Čtení celkové spotřeby
MODBUSR(H, 32080, Int32,2)
Čtení odběru
MODBUSR(H ,32084, Int16) ;
DC vstupní výkon Proměnná Pouze ke čtení

Celkový DC výkon ze všech PV stringů (kW) s měřeními na straně sítě — fázová napětí, proudy a frekvence

Registr: H:32064 Int32 Jednotka: kW numeric
Servisní atributy
Frekvence
Napětí fáze A
Napětí fáze B
Napětí fáze C
Proud fáze A
Proud fáze B
Proud fáze C

DC vstupní výkon

Čtení
MODBUSR(H, 32064, Int32, 2)/1000
Servisní atributy
Frequency
MODBUSR(H, 32085, Uint16)/100 + " Hz"
A Voltage
MODBUSR(H, 32069, Int16)/10 + " V"
B Voltage
MODBUSR(H, 32070, Int16)/10 + " V"
C Voltage
MODBUSR(H, 32071, Int16)/10 + " V"
A Current
MODBUSR(H, 32072, Int32, 2)/1000 + " A"
B Current
MODBUSR(H, 32074, Int32, 2)/1000 + " A"
C Current
MODBUSR(H, 32076, Int32, 2)/1000 + " A"
Baterie Stmívač Pouze ke čtení

Stav bateriového úložiště a denní počítadla energie nabíjení/vybíjení

Servisní atributy
Stav provozu
Dnešní nabíjení
Dnešní vybíjení

Baterie

Čtení úrovně
MODBUSR(H, 37760, Uint16)/1000
Servisní atributy
Running Status
SWITCH(MODBUSR(H, 37762, Uint16),
0, "Offline", 
1, "Standby",
2, "Running",
3, "Fault",
4, "Sleep mode",
"Error"
);
Current Day Charge
MODBUSR(H, 37784, Uint32)/100 + " kWh";
Current Day Discharge
MODBUSR(H, 37786, Uint32)/100 + " kWh";
Celková energie Proměnná Pouze ke čtení

Celková kumulativní energie vyrobená od uvedení do provozu

Registr: H:32106 UInt32 Jednotka: kWh numeric

Celková energie

Čtení
MODBUSR(H, 32106, UInt32, 2)/100
Denní energie Proměnná Pouze ke čtení
Registr: H:32114 UInt32 Jednotka: kWh numeric

Denní energie

Čtení
MODBUSR(H, 32114, Int32, 2)/100
PV1 proud Proměnná Pouze ke čtení
Registr: H:32017 Int16 Jednotka: A numeric
Servisní atributy
PV1 napětí

PV1 proud

Čtení
MODBUSR(H, 32017, Int16)/100
Servisní atributy
PV1 Voltage
MODBUSR(H, 32016, Int16)/10 + "V"
PV2 proud Proměnná Pouze ke čtení
Registr: H:32019 Int16 Jednotka: A numeric
Servisní atributy
PV2 napětí

PV2 proud

Čtení
MODBUSR(H, 32019, Int16)/100
Servisní atributy
PV2 Voltage
MODBUSR(H, 32018, Int16)/10
PV3 proud Proměnná Pouze ke čtení
Registr: H:32021 Int16 Jednotka: A numeric
Servisní atributy
PV3 napětí

PV3 proud

Čtení
MODBUSR(H,32021, Int16)/100
Servisní atributy
PV3 Voltage
MODBUSR(H, 32020, Int16)/10 + "V"
PV4 proud Proměnná Pouze ke čtení
Registr: H:32023 Int16 Jednotka: A numeric
Servisní atributy
PV4 napětí

PV4 proud

Čtení
MODBUSR(H, 32023, Int16)/100
Servisní atributy
PV4 Voltage
MODBUSR(H, 32022, Int16)/10
Stav střídače Vícestavový přepínač Pouze ke čtení

Provozní stav střídače — Nečinný, Spouštění, Připojený k síti, Vypnutí, Regulace sítě, IV skenování, Kontrola na místě, Inspekce, Detekce DC vstupu

Registr: H:32089 UInt16 numeric
Hodnoty / Stavy: ${inverter_state} · ${idle} · ${starting} · On Grid · Shutdown · Grid Dispatch · IV scanning · Spot-Check · ${inspecting} · ${dc_input_det }

Stav střídače

Čtení stavu přepínače
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
))))))))))
Servisní atributy
Full State
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
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
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
IF(GETBIT(MODBUSR(H, 32002, Uint16),0) = 1, "Unlocked", "Locked");
PV Connection Status
IF(GETBIT(MODBUSR(H, 32002, Uint16),0) = 1, "Connected", "Disconnected");
Startup time
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
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);
Připojení: Modbus TCP • Slave ID: $[SlaveId]
Možná vylepšení (17)
  • 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:32066 Line Voltage A-B — U16, V, /10, grid line-to-line voltage
  • H:32067 Line Voltage B-C — U16, V, /10, grid line-to-line voltage
  • H:32068 Line Voltage C-A — U16, V, /10, grid line-to-line voltage
  • 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:37760 Battery SOC — U16, %, /10, battery state of charge — notably absent from template despite Battery device existing
  • H:37765 Battery Charge/Discharge Power — I32, W, positive=charging negative=discharging
  • H:37113 Active Grid Power — I32, W, power meter active power (grid import/export)
  • H:37119 Grid Exported Energy — I32, kWh, /100, energy exported to grid
  • H:37123 Grid Accumulated Energy — U32, kWh, /100, total energy from grid
  • H:40200 Power On — WO, E16, remote inverter power-on command
  • H:40201 Shutdown — WO, E16, remote inverter shutdown command

Zdroje