Solar fotovoltaica y KNX: Integración Modbus Fronius Symo para optimización del autoconsumo
Conectar un inversor Fronius a KNX a través de SunSpec Modbus TCP proporciona al sistema de automatización de edificios datos en tiempo real de rendimiento PV y potencia de red – permitiendo una lógica de autoconsumo que desplaza las cargas controlables para coincidir con la generación excedente, reduciendo la importación de red y maximizando el valor de la energía solar in situ.
Fronius SunSpec Modbus TCP: habilitación de la interfaz
Los inversores Fronius — Symo, Primo, Gen24 y Gen24 Plus — implementan la interfaz SunSpec Alliance Modbus TCP, que proporciona un mapa de registros estandarizado para datos de inversores solares. La interfaz está deshabilitada por defecto y debe habilitarse en el servidor web del inversor antes de que cualquier gateway pueda conectarse.
Habilitación de Modbus TCP en el inversor Fronius
1. Connect to inverter webserver: http://<inverter-IP>
(default IP shown on inverter display → Settings → Network)
2. Navigate to: Settings > Modbus
Enable Modbus TCP: ON
TCP port: 502 (default, leave unchanged)
SunSpec model: enabled
3. Key holding registers (read-only):
Register 40070 → AC power output (int16, W)
Register 40080 → AC energy today (uint32, Wh)
Register 40225 → Grid power (int16, W, Gen24 with smart meter)
Positive = import, Negative = export
Register 40493 → Battery SOC (Gen24 Plus only, 0–100%)
Register 40495 → Battery power (Gen24 Plus only, int16, W)
4. Fronius smart meter must be installed and paired
for grid power register 40225 to report correctlyRequisito de red: El inversor Fronius y el gateway KNX Modbus deben estar en el mismo segmento LAN o tener acceso IP enrutado. Asigne una IP estática al inversor en la configuración de red del servidor web — las concesiones DHCP pueden cambiar e interrumpir la consulta del gateway después de un reinicio del router.
Gateway KNX Modbus: tabla de señales Intesis IN701KNX
El Intesis IN701KNX opera como maestro Modbus TCP, consultando los registros del inversor Fronius en un intervalo configurable y publicando los valores en las direcciones de grupo KNX utilizando la herramienta de configuración MAPS. La siguiente tabla de señales proporciona el mapeo completo para la monitorización PV.
| Registro Modbus | Descripción | KNX DPT | Dirección de grupo |
|---|---|---|---|
| 40070 | Potencia CA PV (W) | DPT 13.010 (4 bytes con signo) | 9/0/0 — Potencia PV W |
| 40225 | Potencia de red (W, +importación/−exportación) | DPT 13.010 (4 bytes con signo) | 9/0/1 — Potencia de red W |
| 40080 | Energía CA hoy (Wh) | DPT 12.001 (4 bytes sin signo) | 9/0/2 — Energía hoy Wh |
| 40493 | SOC batería (%, Gen24 Plus) | DPT 5.001 (1 byte %) | 9/1/0 — SOC batería |
| 40495 | Potencia batería (W, Gen24 Plus) | DPT 13.010 (4 bytes con signo) | 9/1/1 — Potencia batería W |
MAPS configuración de ajustes clave
Protocol: Modbus TCP Master Remote IP: <Fronius static IP> Remote port: 502 Poll interval: 10 seconds (fast enough for self-consumption logic) Connection timeout: 5 seconds Byte order: Big-endian (SunSpec standard) Word order: Big-endian
Lógica de autoconsumo: MDT Logic Module o Loxone
Con la potencia de red en tiempo real disponible en GA 9/0/1, el controlador lógico KNX puede activar cargas controlables siempre que el excedente supere un umbral. La secuencia de prioridad asegura que las cargas de mayor valor se activen primero y se liberen al final.
Lógica de prioridad de autoconsumo
Trigger condition: GA 9/0/1 (Grid Power) < −1000W
→ surplus export greater than 1 kW
Priority sequence (activate in order, release in reverse):
1. Heat pump SG Ready (State 3 encouraged mode)
→ KNX binary output → heat pump S1/S2 terminals
2. EV charger current increase (via EVCC/OCPP)
→ increase from 6A minimum toward surplus limit
3. Immersion heater ON
→ KNX binary output → 3kW immersion contactor
Deactivation: GA 9/0/1 > −200W (export below 200W)
→ release loads in reverse priority order
→ 60-second hysteresis to prevent rapid cyclingMDT Logic Module (SCN-LOGM.01)
- Compare block: GA 9/0/1 < -1000 → output 1
- Bloque temporizador: retardo de 60s en la activación evita ciclados
- Secuenciador de prioridad: AND/OR con umbrales individuales
- 16 canales lógicos cubren todos los escenarios fotovoltaicos en un solo dispositivo
Loxone Miniserver
- Entrada KNX virtual: GA 9/0/1 → variable Loxone
- Bloque de controlador de sala inteligente para SG Ready
- Monitor de energía Loxone visualiza el autoconsumo
- Salida analógica a EVCC vía HTTP para control de VE
Integración de bomba de calor SG Ready
SG Ready (Smart Grid Ready) es un estándar de la asociación alemana de bombas de calor que proporciona una interfaz de 2 bits que permite que señales externas – incluyendo automatización de edificios y excedente fotovoltaico – influyan en el modo de operación de la bomba de calor. Dos entradas de relé de contacto seco (S1 y S2) en la placa de control de la bomba de calor son accionadas por salidas binarias KNX.
| Estado | S1 | S2 | Modo | Disparador de excedente PV |
|---|---|---|---|---|
| Estado 1 | 1 | 0 | Bloqueado (bloqueo EVU) | Señal de tarifa punta de red — compresor bloqueado |
| Estado 2 | 0 | 0 | Funcionamiento normal | Por defecto / sin señal PV |
| Estado 3 | 0 | 1 | Fomentado (alta potencia) | Surplus > 3 kW → run at increased set-point |
| Estado 4 | 1 | 1 | Máximo (capacidad total) | Surplus > 6 kW → maximum heating power |
Nota de cableado: S1 y S2 son contactos libres de potencial – conecte los contactos de relé binario KNX (sin tensión) directamente a los terminales SG Ready de la bomba de calor. No aplique 230V o 24V a estos terminales. Confirme la capacidad de contacto con el fabricante de la bomba de calor: la mayoría de las entradas SG Ready aceptan corriente de señal de 24V CC; el contacto seco del relé binario KNX debe estar clasificado para la tensión de señal de la bomba de calor (típicamente 12–30V CC a 10–20 mA).
Integración de batería Fronius Gen24
El Fronius Gen24 Plus con batería BYD HVS o LG RESU expone el estado de carga y la potencia de la batería a través de registros Modbus TCP. Agregar conocimiento del SOC de la batería a la lógica de autoconsumo evita activar cargas controlables cuando la batería está descargada y necesita carga prioritaria.
Condiciones de autoconsumo con conocimiento de la batería
GA 9/1/0 (Battery SOC) conditions:
SOC < 20%:
→ Pause all controllable loads
→ Prioritise battery charging from PV
→ SG Ready → State 2 (normal, don't add extra heat pump load)
SOC > 80% AND GA 9/0/1 (Grid Power) < −500W:
→ Activate controllable loads (battery sufficiently full)
→ Standard priority sequence applies
Battery power (GA 9/1/1):
→ Negative = battery charging (absorbing PV surplus)
→ Positive = battery discharging (supplying building)
→ Use to calculate net PV available for controllable loads:
Available = PV power − battery charging powerAlternativa SMA Sunny Boy
Los inversores SMA también implementan SunSpec Modbus TCP en el puerto 502 utilizando la misma cadena de integración a través de la pasarela Intesis IN701KNX. El procedimiento de habilitación y los registros clave difieren ligeramente de Fronius.
Configuración SMA Sunny Boy Modbus TCP
Enable in SMA webserver: Settings > External communication > Modbus > ON TCP port: 502 Key registers (read-only, unit ID 3): 30775 → AC power output (uint32, W, 2 registers) 30517 → Daily yield (uint32, Wh, 2 registers) 30513 → Total yield (uint32, kWh × 1000) 30521 → Operating status (uint32, enum) Note: SMA registers are uint32 (2×16-bit), big-endian. Configure IN701KNX signal type as 32-bit unsigned integer. SMA does not provide a signed grid power register without a separate SMA Energy Meter — add SMA Energy Meter for grid flow monitoring (registers 30865/30867 on Meter unit ID).
Cálculo de la tasa de autoconsumo
La tasa de autoconsumo y la tasa de autosuficiencia son los KPI clave para un sistema PV-plus-KNX. Ambos indicadores pueden calcularse y mostrarse en tiempo real por el sistema de visualización KNX utilizando los valores de las direcciones de grupo de la pasarela Modbus.
Fórmulas KPI para Gira X1 o IP-Symcon
Self-consumed power (W):
= PV power (GA 9/0/0) − max(0, −Grid power (GA 9/0/1))
(PV output minus what is being exported)
Self-consumption rate (%):
= Self-consumed power / PV power × 100
Target: > 70% with EV + heat pump controllable loads
Self-sufficiency rate (%):
= Self-consumed power / Total building demand × 100
Total demand = PV power − grid export + grid import
= GA 9/0/0 + max(0, GA 9/0/1)
Annual self-consumption: log daily GA 9/0/2 (Energy today Wh)
→ accumulate in IP-Symcon variable → annual total kWh
→ self-consumption rate = annual self-consumed / annual yieldObjetivos realistas: Sin cargas controlables, un hogar típico alcanza un 25–35% de autoconsumo (la mayor parte del PV se genera al mediodía cuando los ocupantes están ausentes). Con la carga de VE y la bomba de calor SG Ready desplazadas a horas solares, el autoconsumo sube al 60–80%. Con almacenamiento en batería añadido, se puede alcanzar el 80–95%.
Nube Fronius Solar.web para informes energéticos
Para informes energéticos BREEAM que requieren datos históricos de rendimiento fotovoltaico, la API REST de Fronius Solar.web (api.solarweb.com) proporciona totales energéticos horarios, diarios y mensuales. Esta API en la nube complementa – pero no reemplaza – el Modbus TCP local para el control en tiempo real.
API de Solar.web vs Modbus TCP local
Solar.web REST API (api.solarweb.com):
Latency: 1–5 minutes (cloud polling cycle)
Use for: BREEAM energy reports, historical analysis,
CSV export for energy assessors
Poll: daily at 23:59 from IP-Symcon or ARISTO BewO
Output: daily/monthly kWh → CSV → energy assessor
Local Modbus TCP (Fronius register 40070/40225):
Latency: < 1 second (direct LAN poll at 10s interval)
Use for: ALL real-time self-consumption control
SG Ready triggers, EV current adjustment,
export limiting, immersion heater switching
NEVER use cloud API for real-time control —
1–5 minute latency makes load shifting ineffectiveLimitación de exportación fotovoltaica mediante Modbus
Algunos operadores de redes de distribución (DNO) exigen limitar la exportación fotovoltaica a la red, especialmente en sistemas residenciales y comerciales grandes. Fronius admite la limitación dinámica de potencia mediante un registro holding Modbus dedicado, permitiendo que KNX reduzca la potencia del inversor cuando sea necesario.
Lógica de limitación de exportación
Fronius power limit register: Register 40149 → power limit (0–100%, write-capable) Write via IN701KNX output signal (Modbus write function 06) KNX export limiting conditions: IF GA 9/0/1 (Grid Power) < −export_limit_W AND GA 9/1/0 (Battery SOC) > 95% → Write 50% to register 40149 (throttle to half output) IF GA 9/0/1 > −export_limit_W × 0.8 → Write 100% to register 40149 (restore full output) Hysteresis: 30-second delay before restoring full output (prevents rapid hunting around the export limit threshold)
Prueba de puesta en marcha con ETS6 Group Monitor
Verifique la integración completa Fronius–Intesis–KNX en un día soleado utilizando el Monitor de Grupo de ETS6. La secuencia de prueba confirma el sondeo Modbus, la plausibilidad de los datos, el disparo de autoconsumo y la función del relé SG Ready sin necesidad de herramientas especializadas de puesta en marcha fotovoltaica.
Secuencia de prueba de puesta en marcha
1. PV data verification (by 10:00 on a sunny day): ETS6 Group Monitor → watch GA 9/0/0 → confirms PV Power W > 0 and rising with irradiance → compare with Fronius webserver display (should agree ±2%) 2. Grid flow verification: GA 9/0/1 should be negative when PV > building consumption GA 9/0/1 should be positive when PV < building consumption Turn off major loads, re-check sign changes 3. SG Ready functional test (without waiting for solar surplus): ETS6 Group Monitor → write −4000 to GA 9/0/1 (simulate export) → confirm Logic Module condition fires (GA 9/0/1 < −1000) → confirm SG Ready relay activates (State 3: S1=0, S2=1) → confirm with heat pump display (mode indicator changes) → restore: write 0 to GA 9/0/1 → relay deactivates 4. Battery SOC check (Gen24 Plus): GA 9/1/0 value should match Fronius webserver battery SOC % 5. Export limit test: Write 50 to power limit register via Group Monitor write → confirm Fronius webserver shows 50% power limit active
Verificación de signo
Confirme que GA 9/0/1 es negativo (exportación) al mediodía soleado. Si lee positivo cuando el servidor web de Fronius muestra exportación, la dirección del TC del contador inteligente está invertida — intercambie los cables secundarios del TC (S1/S2) o invierta el signo del registro Modbus en la configuración de IN701KNX MAPS.
Verificación del intervalo de sondeo
Observe GA 9/0/0 en Group Monitor — debería actualizarse cada 10 segundos. Si las actualizaciones son menos frecuentes, verifique la configuración del intervalo de sondeo IN701KNX en MAPS y asegúrese de que no haya tiempo de espera de Modbus TCP. Reduzca el valor de tiempo de espera si el inversor es lento en responder.
¿Necesita un panel de integración KNX Fronius construido y puesto en servicio según especificaciones?
Diseñamos cuadros de baja tensión con pasarela Intesis Modbus–KNX, cableado SG Ready, limitación de exportación y documentación completa de puesta en servicio ETS6 — entregados probados y verificados en su sitio.
Solicitar presupuesto →