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=StandbyRiferimento 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 / Modello | Porta TCP | ID unità | Note |
|---|---|---|---|
| SolarEdge HD-Wave | 1502 | 1 | Abilita nell'app SE: Comunicazione → Modbus TCP |
| KOSTAL PLENTICORE | 1502 | 71 | Modbus TCP abilitato per impostazione predefinita |
| Fronius GEN24 Plus | 502 | 1 | Abilita: Impostazioni → Modbus → TCP |
| GoodWe ES / ET | 502 | 247 | ID unità predefinito 247 — alcune versioni FW usano 1 |
| SMA Sunny Boy Storage | 502 | 3 | Abilitare tramite SMA Sunny Portal → Modbus |
| Sungrow SH series | 502 | 1 | Abilitare nell'app iSolarCloud o nell'interfaccia web locale |
| Huawei SUN2000 | 6607 | 0 | Richiede Smart Dongle — NON porta 502 |
| Enphase IQ8 gateway | 80 (HTTP/JSON) | N/A | Enphase 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 registersConfigurazione 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 →