AutomatizaciónLatAm

Glosario técnico

¿Qué es Modbus?

Protocolo de comunicación industrial veterano, simple y omnipresente.

Modbus es un protocolo de comunicación industrial creado en 1979 que, por su simplicidad y apertura, sigue siendo uno de los más usados del mundo. Funciona bajo un modelo maestro-esclavo (hoy llamado cliente-servidor): un dispositivo maestro consulta a los esclavos, que responden con sus datos.

Existen dos variantes principales. Modbus RTU opera sobre líneas serie RS-485, muy común en instrumentos, variadores y sensores por su robustez y bajo costo. Modbus TCP encapsula el mismo protocolo sobre redes Ethernet, integrándolo en infraestructuras modernas. Su gran ventaja es la universalidad: casi cualquier equipo industrial "habla" Modbus, lo que lo hace la lingua franca para integrar dispositivos de distintos fabricantes. Su desventaja es que es un protocolo antiguo, sin seguridad nativa y con un modelo de datos plano (registros numéricos sin semántica), razón por la que en aplicaciones nuevas convive con o cede terreno a OPC UA y protocolos de tiempo real como PROFINET o EtherCAT.

Modbus en la práctica

Modbus sigue vivo cuarenta años después por una razón sencilla: es tan simple que lo implementa cualquiera, y prácticamente todo equipo industrial lo habla. Un variador, un medidor de energía, una balanza y un PLC de fabricantes distintos se entienden sin pasarelas. Esa universalidad compensa sus limitaciones evidentes: no lleva marca de tiempo, no describe los datos, no tiene seguridad de ningún tipo y funciona por sondeo, con un maestro que pregunta y esclavos que responden.

El punto donde más tiempo se pierde es el direccionamiento. La documentación de cada fabricante mezcla dos convenciones: la dirección "de protocolo", que empieza en 0, y la "de usuario", que empieza en 1 y suele venir con el prefijo 4 para los holding registers. El registro 40001 del manual es el 0 en la trama. Cuando un valor sale desplazado exactamente una posición, casi siempre es esto. El segundo punto es el orden de bytes en los valores de 32 bits: la norma no lo fija, y cada fabricante lo resuelve a su manera.

Errores frecuentes

  • Equivocarse en el desplazamiento del direccionamiento

    Leer el registro 40001 como dirección 40001 en lugar de 0 es el error más repetido con Modbus. Si el dato aparece corrido justo una posición, revisa qué convención usa el manual antes de buscar en otro sitio.

  • Ignorar el orden de palabras en valores de 32 bits

    Un flotante ocupa dos registros y la norma no define en qué orden. Si el valor leído es absurdo pero cambia cuando cambia el real, prueba a intercambiar las palabras: muchos maestros ofrecen las cuatro combinaciones posibles.

  • Tratar Modbus TCP como si fuera seguro

    Modbus no tiene autenticación ni cifrado: cualquiera con acceso a la red puede leer y, sobre todo, escribir registros. Nunca debe exponerse a Internet ni a la red corporativa sin segmentación, cortafuegos y control de acceso.

Preguntas frecuentes

¿Por qué el registro 40001 de Modbus se lee como dirección 0?

Porque conviven dos convenciones. La de usuario numera desde 1 y añade un prefijo por tipo de dato (4 para holding registers), mientras que la trama del protocolo direcciona desde 0. Así, 40001 en el manual equivale a la dirección 0 en la comunicación real.

¿Cuál es la diferencia entre Modbus RTU y Modbus TCP?

RTU es la versión serie, normalmente sobre RS-485, con trama binaria y comprobación CRC; admite varios esclavos en un mismo bus de dos hilos. TCP encapsula el mismo modelo de datos sobre Ethernet. La lógica de registros es idéntica; cambia el medio físico y el direccionamiento de red.

¿Es seguro usar Modbus?

El protocolo no ofrece ninguna seguridad: ni autenticación, ni cifrado, ni verificación de integridad frente a manipulación. Es aceptable dentro de una red OT bien segmentada y aislada, pero nunca debe quedar accesible desde Internet ni desde la red corporativa.

Ver más sobre PLC y Control →

Términos relacionados

← Volver al glosario completo