Cómo Integrar un Inversor Solar Sungrow en Home Assistant con Modbus TCP: Guía Paso a Paso
Escrito por: Alex R.La integración de inversores solares en sistemas de domótica como Home Assistant permite monitorizar en tiempo real la producción energética, optimizar el autoconsumo y detectar anomalías de forma temprana. Entre los fabricantes más populares, Sungrow destaca por su amplia gama de inversores residenciales y comerciales, muchos de los cuales incorporan un puerto de comunicación Modbus TCP. Esta guía te mostrará cómo conectar tu inversor Sungrow a Home Assistant utilizando el protocolo Modbus sobre TCP/IP, paso a paso, desde la configuración de red hasta la creación de paneles de control personalizados.
Requisitos Previos y Material Necesario
Antes de comenzar, asegúrate de contar con los siguientes elementos:
- Inversor Sungrow compatible: Modelos como las series SH, SG, SC, o el popular Sungrow Hybrid HV. Verifica que tu modelo tenga puerto Ethernet y soporte Modbus TCP. Consulta el manual técnico o la etiqueta del inversor.
- Conexión de red: Cable Ethernet para conectar el inversor a tu router o switch de red local. Asegúrate de que el inversor obtenga una dirección IP fija (puedes configurarla en el propio inversor o mediante reserva DHCP en el router).
- Home Assistant funcionando: Puede ser en una Raspberry Pi, un servidor dedicado o un contenedor Docker. Asegúrate de tener acceso a la interfaz web y permisos para instalar integraciones.
- Herramientas de prueba: Recomendamos tener a mano un cliente Modbus como Modbus Poll o simplemente usar la línea de comandos con
modpollpara verificar la comunicación antes de integrar en Home Assistant.
Configuración de Red del Inversor Sungrow
El primer paso es asegurar que el inversor esté accesible en la red local. La mayoría de los inversores Sungrow permiten configurar los parámetros de red a través de su pantalla LCD o mediante la aplicación iSolarCloud. Para asignar una IP fija, sigue estos pasos:
- Accede al menú de comunicación: En la pantalla del inversor, navega a Configuración > Comunicación > Ethernet. Si tu modelo no tiene pantalla, usa la app iSolarCloud conectándote por WiFi directo al inversor.
- Configura la IP: Selecciona 'IP estática' e ingresa una dirección IP, máscara de subred (normalmente 255.255.255.0) y puerta de enlace (la IP de tu router). Por ejemplo: IP 192.168.1.100, máscara 255.255.255.0, gateway 192.168.1.1.
- Verifica la conexión: Una vez configurado, conecta el cable Ethernet y comprueba que el LED de link en el puerto del inversor se encienda. Desde un ordenador en la misma red, haz un ping a la IP asignada para confirmar la conectividad.
Es importante que la IP del inversor sea fija para que Home Assistant siempre pueda encontrarlo en la misma dirección. Si tu router permite reservas DHCP, puedes configurar una reserva basada en la dirección MAC del inversor. La MAC suele estar impresa en una etiqueta en el propio inversor.
Instalación de la Integración Modbus en Home Assistant
Home Assistant dispone de una integración oficial para Modbus que permite leer y escribir registros. Para instalarla:
- Abre la interfaz de Home Assistant y ve a Configuración > Dispositivos y servicios.
- Haz clic en 'Añadir integración' y busca 'Modbus'. Selecciona la integración oficial.
- Elige el tipo de conexión: Selecciona 'TCP' e introduce la dirección IP del inversor y el puerto Modbus (por defecto 502).
- Configura los parámetros: Deja el resto de opciones por defecto (timeout 10s, retry 5). Haz clic en 'Enviar'.
Si la conexión es exitosa, verás un mensaje de confirmación. La integración Modbus quedará añadida pero aún no creará entidades; necesitamos definir los sensores en el archivo de configuración.
Creación de Sensores Modbus para Sungrow
Para leer los datos del inversor, debemos conocer los registros Modbus específicos de Sungrow. A continuación se muestra una tabla con los registros más comunes para inversores de la serie SH y SG. Consulta el manual de tu modelo para confirmar las direcciones exactas.
| Registro (Decimal) | Descripción | Tipo | Unidad |
|---|---|---|---|
| 5000 | Potencia activa total | UInt32 | W |
| 5002 | Energía total generada hoy | UInt32 | kWh |
| 5004 | Energía total generada (acumulada) | UInt32 | kWh |
| 5016 | Tensión DC del string 1 | UInt16 | V |
| 5017 | Corriente DC del string 1 | UInt16 | A |
| 5020 | Temperatura del inversor | Int16 | °C |
Para crear sensores en Home Assistant, edita el archivo configuration.yaml y añade la siguiente configuración bajo el apartado modbus::
modbus:
- name: sungrow
type: tcp
host: 192.168.1.100
port: 502
sensors:
- name: "Potencia activa"
slave: 1
address: 5000
input_type: holding
data_type: uint32
unit_of_measurement: "W"
scale: 1
precision: 0
- name: "Energía hoy"
slave: 1
address: 5002
input_type: holding
data_type: uint32
unit_of_measurement: "kWh"
scale: 0.01
precision: 2
- name: "Energía total"
slave: 1
address: 5004
input_type: holding
data_type: uint32
unit_of_measurement: "kWh"
scale: 0.01
precision: 2
- name: "Tensión DC string 1"
slave: 1
address: 5016
input_type: holding
data_type: uint16
unit_of_measurement: "V"
scale: 0.1
precision: 1
- name: "Corriente DC string 1"
slave: 1
address: 5017
input_type: holding
data_type: uint16
unit_of_measurement: "A"
scale: 0.1
precision: 1
- name: "Temperatura inversor"
slave: 1
address: 5020
input_type: holding
data_type: int16
unit_of_measurement: "°C"
scale: 0.1
precision: 1Después de guardar el archivo, reinicia Home Assistant. Los nuevos sensores aparecerán automáticamente en el panel de entidades. Puedes agruparlos en un panel de control personalizado usando tarjetas de tipo 'glance' o 'sensor'.
Verificación de la Comunicación y Solución de Problemas
Una vez configurado, es posible que encuentres algunos problemas. Aquí los más comunes y cómo resolverlos:
modpoll) para asegurarte de que el inversor responde. Ejemplo de comando: modpoll -m tcp -a 1 -r 5000 -t 3:hex 192.168.1.100. Si no obtienes respuesta, comprueba que el inversor tenga habilitado Modbus TCP (algunos modelos requieren activarlo en el menú de comunicación).Otro problema frecuente es la dirección de esclavo (slave ID). Aunque la mayoría de inversores Sungrow usan slave ID 1, algunos modelos pueden usar 2 o 3. Consulta el manual o prueba con diferentes valores. También asegúrate de que no haya conflictos de IP en la red.
Automatizaciones y Paneles de Control Avanzados
Una vez que los datos fluyen, puedes crear automatizaciones para optimizar tu consumo. Por ejemplo, encender un calentador eléctrico cuando la producción solar supere un umbral, o enviar notificaciones si la temperatura del inversor es demasiado alta. También puedes integrar los datos en el panel de energía de Home Assistant para visualizar el flujo energético de tu hogar.
Para crear un panel de control atractivo, utiliza tarjetas de tipo 'entities' o 'gauge'. Un ejemplo de tarjeta YAML para mostrar la potencia actual:
type: gauge
entity: sensor.potencia_activa
name: Potencia Solar
unit: W
min: 0
max: 5000
severity:
green: 0
yellow: 3000
red: 4500Preguntas Frecuentes
¿Qué modelos de Sungrow son compatibles con Modbus TCP?
¿Puedo usar Modbus RTU en lugar de TCP?
¿Es seguro exponer el inversor a la red local?
¿Puedo escribir registros para controlar el inversor?
modbus.write_register para ello.Conclusión y Próximos Pasos
Integrar tu inversor Sungrow en Home Assistant mediante Modbus TCP es un proceso accesible que te brinda un control total sobre tu producción solar. Con los sensores configurados, podrás monitorizar en tiempo real la potencia, energía y estado del inversor, y crear automatizaciones para maximizar tu autoconsumo. A medida que te familiarices con el sistema, puedes explorar registros adicionales (como los de batería si tu inversor es híbrido) y personalizar aún más tu panel de control.
Este análisis técnico es independiente. No recibimos pagos de fabricantes para alterar valoraciones. Si realizas una compra a través de enlaces en este sitio, podríamos percibir una comisión de afiliación que ayuda a mantener el servidor activo, sin coste extra para ti.