Modbus TCP es la versión sobre TCP/IP del protocolo Modbus — mismos registros de 16 bits y function codes, pero sin bus RS485 ni CRC. El gateway lo usa para exponer las lecturas de medidores Modbus a las Plataformas AMI a través de la red, sin que las Plataformas AMI necesiten gestionar comunicación serial.
¿Por qué aparece «Modbus TCP» en la app?
Cuando configuras el puente TCP–UART del gateway, la opción «Modbus TCP» le indica al gateway que debe leer el medidor por RS485 (usando el protocolo Modbus serial) y luego convertir esas lecturas al formato Modbus TCP antes de enviarlas a las Plataformas AMI. Es decir: el bus RS485 sigue siendo Modbus RTU — Modbus TCP es solo el formato que usa la comunicación hacia el servidor.
Cómo funciona la conversión
El gateway realiza la conversión entre los dos formatos de forma transparente:
- Lee el medidor por RS485 usando Modbus RTU (trama: Address + Function code + Data + CRC-16).
- Extrae el function code, los datos y la dirección del esclavo.
- Construye una trama Modbus TCP: cabecera MBAP de 7 bytes + PDU (sin CRC).
- Expone la respuesta en el puerto configurado (8090 por defecto). Las Plataformas AMI se conectan y leen como cliente Modbus TCP estándar.
Esta conversión evita que las Plataformas AMI gestionen timings RS485, silencios de trama y CRCs — simplifica la integración del lado del servidor.
La cabecera MBAP: qué reemplaza al CRC
La diferencia estructural entre Modbus RTU y Modbus TCP está en el encabezado. Modbus TCP usa una cabecera MBAP de 7 bytes en lugar del CRC-16 de 2 bytes del RTU:
| Campo | Tamaño | Función |
|---|---|---|
Transaction Identifier | 2 bytes | Número de secuencia para emparejar solicitudes y respuestas en conexiones multiplexadas. |
Protocol Identifier | 2 bytes | Siempre 0x0000 para Modbus. Reservado para extensiones futuras. |
Length | 2 bytes | Bytes que siguen: Unit ID (1 byte) + PDU. |
Unit ID | 1 byte | Equivalente a la dirección del esclavo en RTU. El gateway lo mapea desde la dirección Modbus del medidor. |
TCP gestiona la integridad del paquete — por eso el CRC-16 del RTU no es necesario.
«TCP» vs «Modbus TCP» — cuál elegir
El gateway ofrece dos modos de puente distintos:
- Modo TCP — Reenvía la trama serial del medidor tal cual (bytes crudos) a las Plataformas AMI. Las Plataformas AMI interpretan esos bytes directamente — útil para medidores DLMS/COSEM (Microstar, ISKRA, Landis+Gyr) cuyo sistema central ya habla DLMS.
- Modo Modbus TCP — Convierte la trama Modbus RTU al formato Modbus TCP (cabecera MBAP). Las Plataformas AMI la leen como cliente Modbus TCP estándar. Necesario para medidores Modbus como el Star DTS27.
Regla práctica: medidor DLMS → modo TCP. Medidor Modbus → modo Modbus TCP.
¿Qué medidores necesitan modo Modbus TCP?
- Star DTS27 (China) — medidor RS485 Modbus RTU. Usa modo «Modbus TCP» con baudios 9600.
- Eastron SDM120 / SDM630 — medidores Modbus RTU. Usa modo «Modbus TCP».
- Inversores fotovoltaicos con puerto RS485 (Huawei SUN2000, SMA, Fronius) — hablan Modbus RTU. Usa modo «Modbus TCP».
- Cualquier medidor configurado con protocolo Modbus (no DLMS) usa modo «Modbus TCP».