En la automatización industrial, Modbus es el protocolo de comunicación más extendido y común para la conexión de dispositivos electrónicos automatizados. Su impacto en la automatización ha hecho que, esta red de comunicación, sobreviva hasta hoy siendo una de las principales redes industriales del siglo XXI.
En este artículo te vamos a explicar, con todo detalle, por qué este protocolo es uno de los más extendidos y preferidos para las comunicaciones industriales.
Modbus ¿Qué es?
MODBUS, es un estándar de comunicación industrial el cual fue creado a finales de los años 70 por Modicon, ahora Schneider Electric, para la comunicación entre PLCs (Controladores Lógicos Programables).
Este estándar de comunicación es ampliamente extendido en entornos de automatización. Corresponde a un protocolo de comunicación abierto con el fin de transmitir información mediante redes en serie entre dispositivos electrónicos.
Este protocolo dispone de un maestro Modbus el cual se encarga de solicitar información a los esclavos Modbus, los cuales le suministran la información. Los esclavos no pueden ofrecer la información sin ser solicitada por el maestro.
El maestro, es el encargado de escribir los datos en el registro del esclavo y leerá los datos registrados.
Una red estándar Modbus dispone de un maestro y hasta 247 esclavos con direcciones únicas (de 1 a 247).
Este estándar de comunicación industrial usa protocolos RS232/RS458/RS422. Gracias a su simplicidad, muchos de los fabricantes han incorporado en sus productos esta red ayudando a que se convierta en la red de comunicación industrial más popular para la conexión de dispositivos electrónicos industriales.
Modbus ¿Para qué se utiliza?
En protocolo Modbus es utilizado habitualmente por muchos fabricantes en entornos industriales. Este sistema de comunicación sirve para transmitir señales desde los dispositivos de instrumentación y de control hacia un controlador principal o un Sistema SCADA.
Es utilizado en múltiples aplicaciones maestro-esclavo como para para el monitoreo y programación de dispositivos, para la comunicación entre dispositivos inteligentes, sensores e instrumentos, así como para el monitoreo de dispositivos de campo usando ordenador Y HMI.
De igual forma, es un protocolo muy versátil para aplicaciones RTU donde es requerida la comunicación inalámbrica.
Tipos de Modbus, Transmisión de mensajes y funcionamiento
Para Ethernet y el puerto serie existen varios tipos de versiones en el protocolo Modbus. Estas son utilizadas para necesidades específicas de los sistemas de automatización industrial. Poniendo un par de ejemplos, Modbus RTU y ASCII se utilizan para los puertos serie y Modbus TCP es utilizado para Ethernet.
Entre los tipos de versiones, los más utilizados son:
Modbus RTU (Remote Terminal Unit)
Esta versión utiliza la comunicación serial, típicamente RS232 o RS-485. Los datos son transmitidos en formato binario (hexadecimal), lo que permite una comunicación eficiente y rápida.
Cada mensaje comienza con un tiempo de inactividad (silencio) y consiste en una dirección, un código de función, datos y una verificación de redundancia cíclica (CRC) para la detección de errores.
Para su funcionamiento, un maestro inicia la comunicación envido una solicitud a un esclavo específico o a todos los esclavos (broadcast). Los esclavos responden únicamente si son el destinatario de la solicitud, enviando una respuesta de vuelta al maestro.
Este tipo de Modbus se utiliza en sistemas donde la rapidez y fiabilidad de la comunicación son esenciales, como en la automatización de procesos industriales.
Modbus ASCII
Modbus ASCII también utiliza la comunicación serial, pero los datos se transmiten en formato ASCII.
Los mensajes son más largos debido a la codificación en ASCII, lo que hace que la comunicación se más lenta en comparación con Modbus RTU.
Cada mensaje comienza con un carácter de inicio (΄:΄), seguido de la dirección, código de función, datos, un chequeo de LRC (Longitudinal Redundancy Check) y un carácter de fin (CRLF).
Su funcionamiento es similar a Modbus RTU, pero con la ventaja de que los mensajes son más fáciles de leer y depurar para los humanos.
Modbus ASCII es utilizado en situaciones donde la legibilidad y la facilidad de diagnóstico son importantes.
Modbus TCP/IP
Este modelo permite la comunicación sobre redes Ethernet.
Utiliza el protocolo TCP/IP para la transmisión de datos, encapsulando los mensajes Modbus en paquetes TCP/IP.
No requiere tiempos de inactividad (silencio) como Modbus RTU, ya que TCP/IP maneja la delimitación de mensajes.
En el funcionamiento de este tipo de Modbus, los dispositivos pueden comunicarse a través de redes locales (LAN) o incluso a través de internet.
Un maestro puede enviar solicitudes a varios esclavos simultáneamente, aprovechando la infraestructura de red existente.
Modbus TCP/IP es ideal para sistemas distribuidos y aplicaciones que requieren comunicación a larga distancia o integración con sistemas de TI.
Modbus Plus
Modbus Plus es una versión mejorada de Modbus que utiliza una red de token passing para la comunicación. Corresponde a un protocolo de red con alta velocidad entre pares.
Los mensajes en Modbus Plus son más complejos que en RTU o ASCII, incorporando elementos adicionales para gestionar la red de token passing.
Incluyen encabezados específicos para el control de red, datos de aplicación y CRC para la detección de errores.
La red de Modbus plus utiliza un método de paso de token, donde un token circula entre todos los nodos de la red. Solo el nodo que posee el token puede transmitir datos, lo que elimina la posibilidad de colisiones en el bus.
Aunque el Modbus tradicionalmente opera en un modo maestro-esclavo, Modbus Plus permite comunicaciones peer-to-peer, donde cualquier nodo puede iniciar la comunicación. Esto permite una mayor flexibilidad y eficiencia en la transmisión de datos entre dispositivos.
Cuando un nodo recibe el token, pude enviar un mensaje a otro nodo o a varios nodos (broadcast). Tras transmitir, el nodo pasa el token al siguiente nodo de red.
Conectar una red Modbus
En Modbus, las comunicaciones entre datos son sin estado, lo que hace que sean muy resistentes a las interferencias del ruido mantenido una mínima información de recuperación en los dos sentidos.
Por otro lado, la programación, requiere un sistema orientado a la conexión. Esto se consigue en las variantes más sencillas mediante un token de conexión exclusivo, y en el tipo Modbus Plus por medio de capacidades explícitas de “Ruta de programa” mediante una conexión dúplex que se desglosa de forma automática.
Para conectar Modbus a la red de comunicación se deberá de tener en cuenta varios factores:
Conexión física
Por un lado, Modbus TPC utiliza Ethernet, por otro lado, Modbus RTU usa RS-485 o RS-232. Si estás en busca de una conexión física, lo más recomendable es elegir el modelo que coincida con la interfaz eléctrica del equipo que quiere conectar. Si está optando por un dispositivo de entrada y salida, es recomendable la elección de uno que coincida con la red.
Mapeo de registros
Cuando se utiliza una interfaz para la conexión de un dispositivo Modbus a una red no Modbus, es importante consultar los registros disponibles y como direccionarlos en la documentación del fabricante del equipo. El protocolo no proporciona un medio para identificar de forma automática los registros.
En dispositivos de entrada y salida, podrás obtener esta información en los documentos de ayuda online o en las especificaciones del fabricante.
Parámetros de comunicación
Para establecer la comunicación, Modbus RTU requiere que sea definida la velocidad en bps, la identificación del esclavo y el formato de caracteres (8 bits sin paridad, etc.). Sin estos parámetros establecidos no funcionará la comunicación.
Por otro lado, Modbus TCP requiere la definición de las direcciones IP en la red. En otros casos, también es necesario las ID de las unidades.
Beneficios de Modbus
Entre los principales beneficios podemos encontrar los siguientes:
- Interoperabilidad: Permite la comunicación entre dispositivos de diferentes fabricantes sin problemas de compatibilidad, lo que facilita la integración de sistemas.
- Simplicidad y Eficiencia: Su estructura simple lo hace fácil de implementar y entender, reduciendo tiempo y los costos de desarrollo.
- Flexibilidad: Soporta tanto comunicaciones seriales (RS-232, RS-458) como sobre TCP/IP, lo que permite su uso en una amplia variedad de aplicaciones y entornos.
- Bajo costo: Al ser un protocolo abierto, no requiere licencias costosas, lo que reduce los costos de implementación.
- Fiabilidad y robustez: Es conocido por su capacidad de operar en ambientes industriales rudos y por su robustez en la transmisión de datos.
- Amplia Adopción: Su uso extendido en la industria garantiza una gran capacidad de recursos y soporte, incluyendo herramientas y documentación.
- Escalabilidad: Puede ser utilizado tanto en sistemas pequeños como en grandes redes industriales, permitiendo una fácil expansión según sea necesario.
- Diagnóstico y Mantenimiento: Facilita la detección y resolución de problemas gracias a su capacidad de monitoreo y diagnóstico.
Si quieres optimizar y automatizar los procesos de tu industria, ponte en contacto con nosotros y un equipo de profesionales te ayudará a definir un proyecto personalizado ajustándose a las necesidades de tu negocio.