Home >internet de las cosas industrial>internet de las cosas industrial
ModBus RTU y ModBus TCP


 

Historia y orígenes del protocolo Modbus

 

El protocolo Modbus fue desarrollado en 1979 por Modicon, ahora una empresa de Schneider Electric. Modicon creó este protocolo para usarlo en sus PLC (controladores lógicos programables), que se utilizan en la fabricación para automatizar procesos electromecánicos industriales.

 

La Organización Modbus es un grupo de usuarios y proveedores independientes que abogan por el uso del protocolo Modbus. Fue fundada en 2002 para poner a disposición del público el protocolo, sus especificaciones y la información relacionada. La organización también garantiza la continua disponibilidad, mejora y adopción del protocolo Modbus en el mercado de la automatización industrial.

 

Qué es el protocolo Modbus?

 

El protocolo Modbus es un protocolo de comunicaciones que permite que los dispositivos se comuniquen a través de varios tipos de medios, como líneas serie y Ethernet. El protocolo fue desarrollado en 1979 por Modicon Corporation, que fabrica controladores lógicos programables (PLC), para permitir que estos dispositivos se comuniquen entre sí.

 

Modbus proporciona una estructura de mensajes diseñada para establecer una comunicación maestro-esclavo entre dispositivos inteligentes. Un mensaje Modbus enviado desde el dispositivo A (el maestro) iniciará una respuesta del dispositivo B (el esclavo). La función del protocolo Modbus es definir qué se comunica, cómo se empaqueta la información y el orden en que se envían y reciben los mensajes.

 

Modbus RTU

 

Modbus RTU tiene una alta eficiencia de comunicación y una amplia aplicación debido a su representación binaria y estructura de datos compacta. Dado que Modbus ASCII utiliza transmisión de código ASCII y utiliza caracteres especiales como identificadores de inicio y fin de sus bytes, su eficiencia de transmisión es menor que la del protocolo Modbus RTU. Generalmente, el protocolo de comunicación Modbus ASCII solo se considera cuando la cantidad de datos de comunicación es pequeña. . En sitios industriales, generalmente se utiliza el protocolo Modbus RTU. En términos generales, el protocolo de comunicación Modbus basado en comunicación en serie se refiere al protocolo de comunicación Modbus RTU.

 

Las instrucciones en el protocolo RTU constan de código de función (un byte), dirección inicial (dos bytes), código de dirección (un byte), datos (N bytes), código de verificación (dos bytes), cinco. Consta de tres partes, en las cuales los datos constan de longitud de datos (dos bytes, lo que indica el número de registros, suponiendo que el contenido es M) y texto de datos (M multiplicado por 2 bytes).

 

Modbus RTU

 

El protocolo RTU utiliza 3,5 bytes de tiempo de inactividad como inicio y final de las instrucciones. En términos generales, habrá texto de datos solo cuando el esclavo devuelva datos o el host escriba operaciones, y en otras ocasiones, como las operaciones de lectura del host, habrá comandos. no hay cuerpo de datos, solo se requiere la longitud de los datos.

 

Modbus TCP

 

El protocolo Modbus TCP agrega un encabezado MBAP al protocolo ModbusRTU. Dado que TCP es un servicio basado en conexiones confiables, el código de verificación CRC en el protocolo RTU ya no es necesario, por lo que no hay ningún código de verificación CRC en el protocolo ModbusTCP. El encabezado del mensaje tiene una longitud total de siete bytes. Excepto el quinto y sexto bytes, el resto básicamente no cambia.

 

Modbus TCP

 

Descripción de las instrucciones en la tabla: Comience a escribir (10) un registro (0001) desde la dirección de registro del módulo 0x18E (018E) con el código de dirección 01 (el indicador de unidad de protocolo TCP es 00. La longitud de datos específica es 2 bytes (02). ). El contenido del texto es 0000 (0000).

 

 

ModBus RTU y ModBus TCP

 

ModBus RTU y ModBus TCP son las dos variantes principales del protocolo ModBus. Tradicionalmente, ModBus RTU (la RTU que necesita transmitir información al maestro ModBus o SCADA HMI) es utilizado por muchos tipos diferentes de dispositivos. ModBus RTU generalmente se envía a través de la serie RS485. Este canal de comunicación en cadena permite que varios dispositivos informen a un único puerto HMI en una configuración maestro-esclavo. Cada dispositivo esclavo puede hablar enviando tráfico al dispositivo maestro. Esto mantiene la estructura de la red ModBus bastante simple.

 

ModBus TCP recibe su nombre porque, a diferencia del ModBus anterior, utiliza TCP/IP para leer/escribir valores de registro.


ModBus RTU,ModBus TCP

 

 

Estructura básica de todos los protocolos ModBus.

 

Independientemente de la variante, todas las comunicaciones ModBus estándar siguen la misma estructura de mensajería. Todo gira en torno a almacenar valores en registros y luego leerlos. Hay varios tipos de datos en juego aquí.

 

Por ejemplo, las entradas discretas se pueden almacenar como bits individuales. En términos más generales, los registros de entrada almacenan valores recopilados por dispositivos basados en ModBus. Varios dispositivos discretos se almacenan como bits únicos, mientras que los valores analógicos o incluso los caracteres ASCII se pueden almacenar en registros de 8 bits (el bit menos significativo es 0 bits, el bit más significativo es 64 bits).

 

Los diferentes tipos de registros se clasifican según el código de función utilizado para sondearlos. "1" en el campo del código de función se utiliza para "leer la bobina" (verificar el estado del relé de control). "2" significa "leer entrada discreta" (verifique el estado de la entrada discreta). "3" es "registro de retención de lectura" (recopila datos del registro de lectura/escritura multipropósito). Hay más en la especificación ModBus. Un registro se solicita por su "dirección inicial", que es un valor de 16 bits que identifica de forma única cada registro en el dispositivo. Las solicitudes maestras a una RTU u otro dispositivo siempre harán referencia al registro requerido para ser reportado.

ModBus

 

Principales diferencias entre ModBus RTU y ModBus TCP

 

La principal diferencia es que ModBus RTU utiliza una red en cadena, por lo que conecta toda la red a través de dos cables y se comunica con cada dispositivo dándole a cada nodo una dirección única. ModBus TCP utiliza una red en estrella donde cada nodo tiene un cable separado llamado Cat5 o Cat6. Se pueden conectar mediante un enrutador. También vienen con una dirección personal única para cada nodo de la red. Las direcciones pueden ser de 1 a 255, lo que significa que en teoría puedes tener 254 dispositivos en una misma red. También puede utilizar ModBus TCP a través de Internet.

 

La tendencia en 2023 es que más dispositivos de campo utilicen ModBus RTU, pero ModBus TCP se está poniendo al día. Los transmisores de presión, caudalímetros y analizadores de gas utilizan ModBus RTU. Los equipos PLC, DCS y sala de control utilizan ModBus TCP. Algunos dispositivos que se comunican con servidores web a través de Internet utilizan ModBus TCP. Los módulos de entrada y salida analógicos y digitales están disponibles en ModBus RTU y ModBus TCP.

protocolo Modbus

 

 

Se puede utilizar ModBus como una solución de bajo coste?

 

Tanto para ModBus RTU como para ModBus TCP, la respuesta es sí. Las aplicaciones ModBus RTU necesitan leer una entrada de 4-20 mA o 0-10 V y mostrarla en una PC o PLC. Con ModBus TCP, solo necesitas una tarjeta ModBus TCP emulada y conectarla directamente a una PC con un cable Cat5 o Cat6 mediante un cable cruzado o mediante un enrutador, y podrás leer los registros ModBus muy rápidamente.

 

Ya sea que utilice ModBus RTU o ModBus TCP, encontrará que es una solución sencilla y de bajo coste para su aplicación. Dependiendo del tamaño y la complejidad del sistema, se puede elegir el protocolo que mejor se adapte a las necesidades del usuario, pero ambos protocolos brindan excelentes soluciones para aplicaciones de automatización industrial.


Recommend