Saltar al contenido principal
Captia Technology

Qué es Modbus

Definición

¿Qué es Modbus?

Modbus es el protocolo de comunicación industrial más extendido: publicado por Modicon en 1979 y libre de regalías, sigue siendo la interfaz de facto de variadores, contadores, analizadores y autómatas. Un cliente lee y escribe registros y bobinas numerados en un servidor, sin nombres, tipos ni cifrado: el significado de cada dirección lo aporta la documentación del fabricante.

Modbus es un protocolo de comunicación industrial publicado por Modicon en 1979 y mantenido hoy por la Modbus Organization. Define un modelo de datos de registros de 16 bits y bobinas de 1 bit que un cliente lee o escribe sobre un servidor, en variantes serie (RTU y ASCII) y sobre Ethernet (Modbus TCP).

Modbus RTU, Modbus ASCII y Modbus TCP

El protocolo es uno solo: cambia el envoltorio con el que viaja. En Modbus RTU la trama es binaria y compacta, va protegida por un CRC de 16 bits y circula normalmente sobre RS-485 a dos hilos, un bus multipunto en el que todos los equipos comparten el mismo par. El inicio y el final de trama no se marcan con caracteres especiales, sino con silencios: un hueco equivalente a 3,5 caracteres separa un mensaje del siguiente, por lo que la temporización del enlace forma parte del protocolo. En Modbus ASCII cada byte se transmite como dos caracteres hexadecimales legibles, la trama empieza por «:» y termina en CR/LF y el control de errores es un LRC; gasta el doble de ancho de banda a cambio de tolerar enlaces lentos o con pausas, y hoy es residual. En Modbus TCP la misma petición se encapsula en una trama TCP con una cabecera MBAP (identificador de transacción, identificador de protocolo, longitud e identificador de unidad) sobre el puerto 502; el CRC desaparece porque de la integridad se encarga TCP, y varios clientes pueden consultar al mismo servidor de forma simultánea.

La consecuencia práctica es que RTU y TCP no son «versiones» sucesivas sino topologías distintas. RTU impone un único maestro por segmento que sondea a los esclavos por turnos, con direcciones de 1 a 247 (la 0 se reserva para difusión) y velocidades típicas de 9600 o 19200 baudios. TCP hereda de Ethernet la concurrencia y el direccionamiento IP, pero también su falta de determinismo: nadie garantiza cuándo llega la respuesta.

Registros, bobinas y direccionamiento

Modbus organiza los datos en cuatro tablas: bobinas (1 bit, lectura y escritura), entradas discretas (1 bit, solo lectura), registros de entrada (16 bits, solo lectura) y registros de retención o holding registers (16 bits, lectura y escritura). Las funciones más usadas son la 01 y 02 para bits, la 03 y 04 para registros, y la 06 y 16 para escribir. Una petición de lectura de registros devuelve como máximo 125 registros; una de bobinas, 2000 bits.

El punto donde se pierde más tiempo en un proyecto es el direccionamiento. En el cable las direcciones son desplazamientos de 16 bits que empiezan en 0, pero la documentación histórica de los fabricantes numera desde 1 y añade un prefijo por tabla: el famoso 40001 es, en la trama, el registro de retención 0. A eso se suma que un registro solo guarda 16 bits: un entero de 32 bits o un número en coma flotante ocupan dos registros consecutivos, y aunque el estándar fija el orden de los bytes dentro de cada registro, no dice en qué orden van los dos registros entre sí. De ahí el clásico word swap que devuelve valores absurdos hasta que se invierte el par. Y por encima de todo, Modbus no transporta ni unidades, ni tipo, ni escala, ni marca de tiempo: un registro con el valor 235 puede ser 23,5 °C o 235 rpm, y solo el mapa de señales del fabricante lo aclara.

Dónde aparece en planta

Modbus es el mínimo común denominador del parque industrial instalado. Aparece en analizadores de red y contadores de energía, en variadores de frecuencia, en básculas y células de carga, en reguladores de temperatura, en compresores, calderas y grupos de frío, en instrumentación de plantas de agua y en prácticamente cualquier equipo cuyo fabricante quiso ofrecer una interfaz abierta sin pagar por una pila de protocolo. En una planta española típica conviven dos capas: máquinas recientes que exponen OPC-UA y equipos auxiliares que solo hablan Modbus sobre RS-485, muchas veces ya cableados hasta el armario del SCADA.

Modbus frente a OPC-UA

La confusión habitual es tratarlos como alternativas del mismo nivel. Modbus transporta números sin contexto: quien lee tiene que saber de antemano qué significa cada dirección. OPC-UA transporta además un modelo de información: cada variable lleva nombre, tipo, unidades y jerarquía, admite suscripción por cambio de valor en lugar de sondeo continuo, e incorpora autenticación, cifrado y firma de mensajes. Modbus no define ningún mecanismo de seguridad en su especificación base (existe una variante sobre TLS, poco extendida en campo), por lo que la protección depende por completo de la segmentación de la red. A cambio, Modbus es implementable en un microcontrolador de céntimos, y esa es exactamente la razón de que siga presente.

Qué implica sacar el dato de un equipo Modbus

Extraer datos de Modbus es sondear: no hay eventos ni notificaciones, alguien pregunta y el equipo contesta. Eso condiciona tres cosas.

La latencia la fija el ciclo de sondeo, no la red. Cada lectura es una ida y vuelta, y en serie el ancho de banda es escaso: leer un centenar de registros a 9600 baudios ocupa la línea del orden de dos décimas de segundo solo en transmisión, sin contar los tiempos de respuesta del equipo. Con un ciclo de un segundo, cualquier evento más corto que ese ciclo puede no verse nunca. La regla de ingeniería es preferir contadores acumulados frente a estados instantáneos cuando el ciclo es lento: un contador de piezas conserva lo ocurrido entre lecturas; un bit de marcha, no.

La marca de tiempo la pone quien lee. El equipo no fecha el dato, así que el instante que acaba en la base de datos es el de la recepción. Para tendencias de proceso es irrelevante; para correlacionar una parada con la señal que la provocó, importa mucho, y obliga a sellar el dato lo más cerca posible del equipo, en el gateway industrial, y no al final de la cadena.

Quién puede preguntar está limitado por el medio. Un segmento Modbus RTU admite un solo maestro: si el SCADA ya está sondeando ese bus, no se puede añadir un segundo interrogador sin colisiones. Las salidas limpias son tres: que el gateway pase a ser el maestro de un segmento propio, que el dato se tome del maestro existente en lugar de del bus, o que se escuche el tráfico de forma pasiva. En Modbus TCP el problema cambia de forma: varios clientes pueden conectarse a la vez, pero los servidores embebidos admiten un número reducido de conexiones simultáneas y un sondeo agresivo compite con la CPU del propio equipo.

Nada de esto exige parar la línea. La lectura es una operación pasiva que no toca la lógica de control ni los enclavamientos; el riesgo real está en saturar el bus serie o el procesador del equipo, y se acota dimensionando el ciclo y agrupando registros contiguos en pocas peticiones grandes en vez de muchas pequeñas. Lo que sí exige la misma prudencia que tocar el control es la escritura de registros, que en muchos equipos modifica consignas en caliente. El hardware que media suele ser un conversor RS-485 a Ethernet o un gateway que actúa como maestro, republica los valores en MQTT u OPC-UA y añade el tipado y la escala que el protocolo no lleva; en el lado eléctrico, aislamiento galvánico, terminación de 120 Ω y polarización del par son parte del trabajo, no un detalle.

Por qué sigue vivo en 2026

Porque es libre de royalties, cabe en unos pocos kilobytes de firmware, cualquier fabricante puede implementarlo sin pedir permiso ni certificar nada, y porque el parque instalado no se jubila: un analizador de red comprado hace quince años sigue midiendo igual de bien. En arquitecturas modernas Modbus no desaparece, se encapsula: se lee en el borde y se publica hacia arriba con semántica, que es justo lo que hacen las capas de edge computing sobre un Unified Namespace.

Relación con otros términos

Modbus es una de las vías de acceso al dato del PLC y de la instrumentación de campo, complementaria a OPC-UA y previa al transporte por MQTT. La comparación completa entre acceso a máquina y distribución de datos está en la guía OPC UA vs MQTT, y el trabajo de conectar equipos de cualquier marca y protocolo a una capa común es el objeto de la interoperabilidad de sistemas heterogéneos.

Términos relacionados

Soluciones relacionadas

Cómo aplicamos este concepto en la práctica:

Preguntas frecuentes

¿Qué diferencia hay entre Modbus RTU y Modbus TCP?
Cambia el transporte, no el modelo de datos. Modbus RTU viaja en tramas binarias con CRC sobre una línea serie, normalmente RS-485, donde un único maestro sondea por turnos hasta 247 esclavos. Modbus TCP encapsula la misma petición en una trama TCP con cabecera MBAP sobre el puerto 502: admite varios clientes simultáneos y usa direccionamiento IP, pero pierde la temporización acotada y calculable del bus serie, donde el maestro controla el orden y la duración de cada transacción. Ninguna de las dos variantes es un canal determinista en el sentido de un bus de campo de tiempo real.
¿Qué significa la dirección 40001 en Modbus?
Es notación de documentación, no lo que viaja por el cable. El prefijo 4 identifica la tabla de registros de retención y la numeración empieza en 1, mientras que en la trama las direcciones empiezan en 0: el 40001 corresponde al registro 0. Ese desfase de una unidad es el error más frecuente al configurar una lectura Modbus.
¿Se pueden leer datos por Modbus sin interferir en la máquina?
Sí. La lectura es pasiva: no modifica la lógica de control ni los enclavamientos de seguridad, y no requiere parar la línea. Las precauciones son de red y de carga: un segmento RTU solo admite un maestro, por lo que no se puede añadir un segundo sondeador a un bus que ya gobierna el SCADA, y en cualquier variante conviene agrupar registros contiguos y dimensionar el ciclo para no saturar el equipo.
¿Por qué se sigue usando Modbus si existen protocolos más modernos?
Porque es libre de royalties, se implementa con muy pocos recursos de firmware y está presente en un parque instalado que sigue funcionando: contadores de energía, variadores, básculas, reguladores de temperatura. La práctica habitual no es sustituirlo, sino leerlo en el borde y republicar los valores con tipo, unidades y marca de tiempo hacia la capa de datos.

Seguir leyendo

Este término forma parte del ámbito de Captia Connect. Encontrarás el resto de definiciones en el glosario completo.