Mapa de registros SunSpec Modbus: Potencia CA, SOC de batería y energía en todas las marcas solares
SunSpec define un diseño estándar de registros Modbus para inversores solares, permitiendo que una única configuración de puerta de enlace KNX Modbus funcione en múltiples marcas. Saber qué registros contienen la potencia CA, el estado de carga de la batería y los totales de energía – y conocer las diferencias de puerto e ID de unidad específicas de cada marca – es la base de cualquier integración solar KNX.
SunSpec Alliance y el mapa de registros estándar
La SunSpec Alliance es un consorcio de fabricantes de la industria solar que define mapas de registros Modbus estándar. Cualquier inversor etiquetado como compatible con SunSpec utiliza las mismas direcciones de registro para las mediciones principales, independientemente de la marca. Esta estandarización simplifica drásticamente la configuración de la puerta de enlace KNX Modbus al integrar múltiples marcas de inversores en el mismo sitio.
El modelo base SunSpec comienza en el registro de retención Modbus 40001 (direccionamiento Modbus basado en 1) o en la dirección de registro 40000 (basado en 0). Este bloque contiene el nombre del fabricante, la cadena del modelo y la versión del firmware como texto ASCII — útil para verificar que el dispositivo correcto esté conectado durante la puesta en marcha.
Modelo SunSpec 103 — registros clave del inversor trifásico
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=StandbyReferencia de puerto e ID de unidad específica de la marca
Si bien SunSpec estandariza las direcciones de registro, el puerto TCP Modbus y el ID de unidad varían según la marca. El uso del puerto o ID de unidad incorrectos es la causa más común de fallo en la puesta en marcha de la puerta de enlace KNX. La siguiente tabla cubre las marcas más comunes instaladas en Alemania, Países Bajos y Benelux.
| Marca / Modelo | Puerto TCP | ID de unidad | Notas |
|---|---|---|---|
| SolarEdge HD-Wave | 1502 | 1 | Habilitar en la aplicación SE: Comunicación → Modbus TCP |
| KOSTAL PLENTICORE | 1502 | 71 | Modbus TCP habilitado por defecto |
| Fronius GEN24 Plus | 502 | 1 | Habilitar: Configuración → Modbus → TCP |
| GoodWe ES / ET | 502 | 247 | ID de unidad predeterminado 247 — algunas versiones de FW usan 1 |
| SMA Sunny Boy Storage | 502 | 3 | Habilitar a través de SMA Sunny Portal → Modbus |
| Sungrow SH series | 502 | 1 | Habilitar en la aplicación iSolarCloud o interfaz web local |
| Huawei SUN2000 | 6607 | 0 | Requiere Smart Dongle — NO puerto 502 |
| Enphase IQ8 gateway | 80 (HTTP/JSON) | N/A | Enphase utiliza Envoy HTTP API, no Modbus |
Huawei SUN2000 nota crítica: El Huawei SUN2000 utiliza el puerto 6607 (no el estándar 502) y el ID de unidad 0 (no 1). Este es el error de configuración más común al integrar inversores Huawei con pasarelas KNX. Verifique siempre con Modbus Poll antes de configurar la pasarela.
SunSpec Modelo 802 — registros de almacenamiento de batería
SunSpec Modelo 802 define registros estándar para sistemas de almacenamiento de batería. No todas las marcas de inversores implementan el Modelo 802 — consulte el manual del inversor o el escaneo de modelo SunSpec (comenzando en el registro 40001) para confirmar si el modelo de batería está presente. Si no, utilice los registros propietarios de la marca documentados a continuación.
SunSpec Modelo 802 — registros clave de almacenamiento de batería
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 registersConfiguración de pasarela KNX Modbus
Weinzierl 5010 y MDT SCN-MIG.01 son las pasarelas KNX Modbus TCP más utilizadas en proyectos KNX europeos. Ambas admiten múltiples dispositivos Modbus y mapeo DPT flexible. Configure cada inversor como un dispositivo Modbus separado con su dirección IP, puerto e ID de unidad específicos de la marca.
Configuración de Weinzierl 5010 para inversor 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
Factores de escala – el error de integración más común
SunSpec define registros de factor de escala que deben aplicarse a los valores brutos de los registros. El factor de escala es un entero con signo que representa un multiplicador de potencia de 10. No aplicar el factor de escala causa errores de 10x o 100x en los valores de potencia y energía – un sistema puesto en servicio parecerá funcionar pero reportará datos incorrectos.
Aplicación del factor de escala – ejemplo de potencia CA
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
Verificación de puesta en servicio con Modbus Poll
Antes de configurar la pasarela KNX, verifique la conexión Modbus TCP del inversor y los valores de los registros usando Modbus Poll (software gratuito para Windows). Este paso detecta errores de conexión, puerto, ID de unidad y dirección de registro antes de que se propaguen a la configuración de la pasarela KNX.
Pasos de verificación de puesta en marcha de 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
Consejo de lectura de registro uint32
Para registros de 32 bits (energía CA, potencia de batería), lea 2 registros holding consecutivos. Modbus Poll los muestra por separado — combine: (reg_n * 65536) + reg_n+1 para uint32 big-endian. La mayoría de las puertas de enlace KNX lo manejan automáticamente cuando se configuran como tipo de 32 bits.
Habilitación de Modbus en inversores
La mayoría de los inversores se envían con Modbus TCP deshabilitado por seguridad. Habilítelo a través de la aplicación del fabricante o la interfaz web local antes de intentar la conexión. SolarEdge requiere el inicio de sesión del instalador en la aplicación SE installer. Fronius GEN24 habilita Modbus en la interfaz web local en Configuración.
¿Necesita un panel solar con integración KNX Modbus construido a medida?
Diseñamos y fabricamos cuadros de baja tensión con pasarelas Modbus TCP verificadas por SunSpec, mapeo DPT KNX para potencia CA y SOC de batería, y documentación de puesta en marcha completa entregada probada en su sitio.
Solicitar presupuesto →