Solare · SunSpec · Modbus · KNX · Mappa dei registri · 10 min di lettura

Mappa dei registri SunSpec Modbus: Potenza AC, SOC batteria ed energia tra i marchi solari

SunSpec definisce una disposizione standard dei registri Modbus per gli inverter solari, consentendo a una singola configurazione del gateway KNX Modbus di funzionare su più marchi. Sapere quali registri contengono la potenza AC, lo stato di carica della batteria e i totali energetici – e conoscere le differenze di porta e ID unità specifiche per marca – è il fondamento di qualsiasi integrazione solare KNX.

SunSpec Alliance e la mappa dei registri standard

La SunSpec Alliance è un consorzio di produttori dell'industria solare che definisce mappe di registri Modbus standard. Qualsiasi inverter etichettato come conforme SunSpec utilizza gli stessi indirizzi di registro per le misurazioni principali, indipendentemente dalla marca. Questa standardizzazione semplifica notevolmente la configurazione del gateway KNX Modbus quando si integrano più marche di inverter nello stesso sito.

Il modello base SunSpec inizia al registro di mantenimento Modbus 40001 (indirizzamento Modbus basato su 1) o all'indirizzo di registro 40000 (basato su 0). Questo blocco contiene il nome del produttore, la stringa del modello e la versione del firmware come testo ASCII — utile per verificare che il dispositivo corretto sia collegato durante la messa in servizio.

Modello SunSpec 103 — registri chiave dell'inverter trifase

All registers: Holding Registers (FC3), 1-based addressing

40001-40002: SunSpec ID (0x5375 0x6e53 = "SunS") — verify connectivity
40003:       Base model length
40004-40021: Manufacturer name (ASCII, 32 chars)
40022-40037: Model string (ASCII, 32 chars)

SunSpec Model 103 (Three-Phase Inverter):
40083:  AC Power (int16, W) — current output power
40085:  AC Power Scale Factor (int16, typically -1 or -2)
        Apply: actual_W = reg40083 * 10^(reg40085)

40089:  AC Frequency (uint16, Hz, scale factor at 40090)
        Typical value: 5000 = 50.00 Hz with SF -2

40093-40094: AC Energy (uint32, Wh) — lifetime production
40095:  AC Energy Scale Factor (int16)

40101:  DC Voltage (uint16, V, scale factor at 40102)
        Typical: 3500 with SF -1 = 350.0V

40107:  Operating state (uint16):
        1=Off, 2=Sleeping, 3=Starting, 4=Running, 5=Throttled
        6=ShuttingDown, 7=Fault, 8=Standby

Riferimento di porta e ID unità specifici per marca

Mentre SunSpec standardizza gli indirizzi dei registri, la porta TCP Modbus e l'ID unità variano in base alla marca. L'uso della porta o dell'ID unità sbagliati è la causa più comune di fallimento della messa in servizio del gateway KNX. La tabella seguente copre le marche più comuni installate in Germania, Paesi Bassi e Benelux.

Marca / ModelloPorta TCPID unitàNote
SolarEdge HD-Wave15021Abilita nell'app SE: Comunicazione → Modbus TCP
KOSTAL PLENTICORE150271Modbus TCP abilitato per impostazione predefinita
Fronius GEN24 Plus5021Abilita: Impostazioni → Modbus → TCP
GoodWe ES / ET502247ID unità predefinito 247 — alcune versioni FW usano 1
SMA Sunny Boy Storage5023Abilitare tramite SMA Sunny Portal → Modbus
Sungrow SH series5021Abilitare nell'app iSolarCloud o nell'interfaccia web locale
Huawei SUN200066070Richiede Smart Dongle — NON porta 502
Enphase IQ8 gateway80 (HTTP/JSON)N/AEnphase utilizza Envoy HTTP API, non Modbus

Huawei SUN2000 nota critica: Huawei SUN2000 utilizza la porta 6607 (non la standard 502) e l'ID unità 0 (non 1). Questo è l'errore di configurazione più comune quando si integrano gli inverter Huawei con gateway KNX. Verificare sempre con Modbus Poll prima di configurare il gateway.

SunSpec Modello 802 — registri di accumulo batteria

SunSpec Modello 802 definisce registri standard per sistemi di accumulo batteria. Non tutte le marche di inverter implementano il Modello 802 — controllare il manuale dell'inverter o la scansione del modello SunSpec (a partire dal registro 40001) per confermare la presenza del modello batteria. In caso contrario, utilizzare i registri proprietari della marca documentati di seguito.

SunSpec Modello 802 — registri chiave di accumulo batteria

SunSpec Model 802 (Battery Storage):
40255: Battery SOC (uint16, %) — state of charge 0-100
40258-40259: Battery Power (int32, W)
  Positive = charging, Negative = discharging
40261: Battery Voltage (uint16, 0.01V)
40263: Battery Current (int16, 0.01A)
40265: Battery Temperature (int16, 0.1°C)
40267: Battery State (uint16):
  1=Disconnected, 2=Initialising, 3=Connected
  4=Standby, 5=SOC Protection, 6=Fault, 7=Charging
  8=Discharging

Proprietary battery registers (where Model 802 absent):
  SolarEdge: reg 0xE140 (battery level %), 0xE18D (battery power W)
  Fronius GEN24: reg 40352 (today generation float32 Wh)
                 reg 40358 (grid power float32 W)
  KOSTAL PLENTICORE: register 154 (battery SOC, uint16, 1%)

Configure 2-register reads for int32 values:
  In KNX gateway: set data type to 32-bit signed integer
  High word first (big-endian) for all SunSpec int32 registers

Configurazione gateway KNX Modbus

Weinzierl 5010 e MDT SCN-MIG.01 sono i gateway KNX Modbus TCP più comunemente utilizzati nei progetti KNX europei. Entrambi supportano più dispositivi Modbus e mappatura DPT flessibile. Configura ogni inverter come un dispositivo Modbus separato con il suo indirizzo IP, porta e ID unità specifici del marchio.

Configurazione Weinzierl 5010 per inverter SolarEdge

Weinzierl KNX Modbus Gateway 5010 — ETS5/6 plug-in config:

Device 1 — SolarEdge HD-Wave:
  IP: 192.168.1.50
  Port: 1502
  Unit ID: 1
  Protocol: Modbus TCP

Poll task 1 — AC Power:
  Register: 40082 (0-based = 40083 - 1)
  Type: int16, signed
  Scale: read register 40084 (SF), apply: value * 10^SF
  KNX GA: 6/0/1
  DPT: 9.001 (2-byte float, kW — divide by 1000 in gateway)
  Poll interval: 10 seconds

Poll task 2 — Battery SOC:
  Register: 0xE140 (SolarEdge proprietary, 0-based)
  Type: uint16
  KNX GA: 6/0/3
  DPT: 5.001 (1-byte %, 0-100)
  Poll interval: 60 seconds

Poll task 3 — AC Energy lifetime:
  Registers: 40092-40093 (2 registers, uint32)
  Type: 32-bit unsigned integer, big-endian
  KNX GA: 6/0/4
  DPT: 13.013 (4-byte signed, Wh)
  Poll interval: 300 seconds

Fattori di scala – l'errore di integrazione più comune

SunSpec definisce registri del fattore di scala che devono essere applicati ai valori grezzi dei registri. Il fattore di scala è un intero con segno che rappresenta un moltiplicatore di potenza di 10. La mancata applicazione del fattore di scala causa errori di 10x o 100x nei valori di potenza ed energia – un sistema commissionato sembrerà funzionare ma riporterà dati errati.

Applicazione del fattore di scala – esempio potenza AC

Register 40083 raw value: 3500 (int16)
Register 40085 SF value: -1 (int16)

Actual AC power = 3500 * 10^(-1) = 350.0 W

Without SF: gateway would report 3500W (10x error)
With SF correctly applied: 350W (correct)

Weinzierl 5010 auto-SF option:
  Enable "Read Scale Factor register" in poll task config
  Gateway reads SF register automatically, applies to value
  Outputs scaled float to KNX DPT 9.001

MDT SCN-MIG.01:
  Manually enter the SF value as a fixed divisor
  If SF is always -1 for your inverter: enter divisor 10
  Not suitable if SF value changes dynamically

Best practice: verify SF value with Modbus Poll tool first
  Read register 40085 — confirm it returns -1 or -2
  Only then configure gateway with that fixed SF
  Most residential inverters have fixed SF values

Verifica della messa in servizio con Modbus Poll

Prima di configurare il gateway KNX, verifica la connessione Modbus TCP dell'inverter e i valori dei registri utilizzando Modbus Poll (software Windows gratuito). Questo passaggio rileva errori di connessione, porta, ID unità e indirizzo del registro prima che si propaghino nella configurazione del gateway KNX.

Passaggi di verifica della messa in servizio di Modbus Poll

1. Open Modbus Poll → Connection → Connect
   Mode: Modbus TCP/IP
   IP: <inverter IP or Smart Dongle IP>
   Port: <brand-specific port from table above>
   Slave ID: <brand-specific unit ID>

2. Setup → Read/Write Definition:
   Function: 03 (Read Holding Registers)
   Start address: 40000 (0-based = reg 40001)
   Quantity: 130 (reads registers 40001-40130)
   Click OK

3. Verify register 40001-40002 contains SunSpec ID:
   Should read: 21843 and 28243 (0x5375 and 0x6E53)
   Confirms SunSpec-compliant device at this address

4. Find register 40083 — AC Power raw value
   Compare with inverter display ± 5W
   Read register 40085 for scale factor

5. Apply scale factor: raw * 10^SF = actual watts
   Verify result matches inverter LCD or app display

6. Only configure KNX gateway after confirming:
   - Correct IP, port, unit ID connects successfully
   - AC power register matches inverter display
   - Battery SOC register (40255 or brand-specific) is correct

Consiglio per la lettura del registro uint32

Per i registri a 32 bit (energia AC, potenza batteria), leggere 2 registri holding consecutivi. Modbus Poll li visualizza separatamente — combinare: (reg_n * 65536) + reg_n+1 per uint32 big-endian. La maggior parte dei gateway KNX gestisce automaticamente questa operazione se configurati come tipo a 32 bit.

Abilitazione di Modbus sugli inverter

La maggior parte degli inverter viene fornita con Modbus TCP disabilitato per motivi di sicurezza. Abilitarlo tramite l'app del produttore o l'interfaccia web locale prima di tentare la connessione. SolarEdge richiede il login dell'installatore nell'app SE installer. Fronius GEN24 abilita Modbus nell'interfaccia web locale in Impostazioni.

Hai bisogno di un pannello solare con integrazione KNX Modbus costruito su specifica?

Progettiamo e realizziamo quadri a bassa tensione con gateway Modbus TCP verificati SunSpec, mappatura DPT KNX per potenza CA e SOC della batteria, e documentazione di messa in servizio completa consegnata testata presso il vostro sito.

Richiedi un preventivo →
Loading...
Back to top