Guía de comunicación avanzada Modbus RTU


En este artículo, explicaremos todos los aspectos relacionados con la comunicación Modbus RTU. ¿Cuál es la diferencia entre Modbus RTU vs ASCII y Modbus RTU vs TCP / IP? Cómo probar el protocolo Modbus RTU con el software de monitoreo Modbus RTU.

Contenido


  1. ¿Qué es el protocolo Modbus RTU?
  2. Cómo probar Modbus RTU con monitor de puerto serie
  3. ¿Cómo funciona Modbus RTU?
  4. Modbus RTU vs TCP
  5. Modbus RTU vs ASCII

¿Qué es el protocolo Modbus RTU?


El protocolo Modbus RTU es un medio de comunicación que permite el intercambio de datos entre controladores lógicos programables (PLC) y computadoras. Los dispositivos electrónicos pueden intercambiar información a través de líneas serie utilizando el protocolo Modbus.

Ha sido ampliamente aceptado y se utiliza ampliamente en la construcción de Sistemas de gestión de edificios (BMS) y Sistemas de Automatización Industrial (IAS). Su adopción ha sido impulsada por su facilidad de uso, confiabilidad y el hecho de que es de código abierto y se puede usar sin royalties en cualquier dispositivo o aplicación.

El protocolo fue desarrollado y publicado por Modicon® en 1979 para su uso con sus controladores lógicos programables. Está construido utilizando una arquitectura maestro / esclavo y es compatible con dispositivos serie que utilizan los protocolos RS232 / RS485 / RS422. Modbus se usa a menudo en escenarios donde múltiples dispositivos de control e instrumentación transmiten señales a un controlador o sistema central para recopilar y analizar datos. Los sistemas de automatización y control de supervisión y adquisición de datos (SCADA) a menudo emplean el protocolo Modbus.

¿Qué significa Modbus RTU?


Modbus RTU (Unidad de terminal remota) es uno de los dos modos de transmisión definidos en la especificación original de Modbus. Los dos modos son Modbus RTU y ASCII y están diseñados para ser utilizados con dispositivos en serie que admiten los protocolos RS232, RS485 y RS422. Una característica distintiva de Modbus RTU es su uso de codificación binaria y la comprobación de errores CRC fuerte. Modbus RTU es la implementación del protocolo Modbus que se utiliza con mayor frecuencia en aplicaciones industriales y en instalaciones de producción automatizadas.

Cómo probar Modbus RTU con monitor de puerto serie


Hay algunas situaciones en las que el uso de un probador Modbus RTU puede ser muy útil. Si está desarrollando o depuración de dispositivos o aplicaciones seriales, le gustaría poder monitorear y analizar la transmisión de datos entre dispositivos y aplicaciones. Otra instancia en la que una utilidad de monitoreo Modbus RTU resultará indispensable es si se le encarga mantener la red y los dispositivos asociados en una instalación de producción industrial automatizada.

Serial Port Monitor

Serial Port Monitor es un software eficiente para probar y depurar el protocolo Modbus RTU.
Serial Port Monitor logo

Serial Port Monitor

Registrar y analizar la actividad del puerto serie
4.8 Ranking basado en 41+ usuarios, Comentario(75)
Descargar Prueba totalmente funcional por 14 días
Serial Port Monitor

Serial Port Monitor by Eltima es un software Modbus RTU. Es una aplicación completa y con todas las funciones que permite el monitoreo y análisis de toda la actividad de la interfaz Modbus RTU en su sistema. Cualquier dispositivo compatible con los protocolos RS232, RS485 y RS422 puede tener sus transmisiones monitoreadas y analizadas para ayudar en las tareas de depuración o desarrollo.

Esta herramienta de software ha sido diseñada con una interfaz flexible y fácil de usar, un terminal incorporado y capacidades de exportación de datos. Es un recurso valioso para diagnosticar problemas de comunicación Modbus RTU en el entorno de Windows. Estos son algunos aspectos destacados de la lista de características que forman parte de Serial Port Monitor.

  • Análisis de la actividad de Modbus RTU. Este rastreador de puerto en serie puede abrir cualquier puerto en serie, incluso aquellos ya abiertos por otra aplicación, e inmediatamente comenzar a monitorear toda la actividad que se mueve a través de esa interfaz. La recopilación de datos en tiempo real le permite localizar rápidamente problemas y problemas. Los datos monitoreados pueden redirigirse a archivos o copiarse en el portapapeles para usarlos en un análisis posterior.
  • Monitorear múltiples puertos serie simultáneamente. El uso de esta función le permite ver sus aplicaciones interactuar con múltiples puertos o dispositivos dentro de la misma sesión de monitoreo. Los datos capturados se presentan en un archivo de registro central en una base de primero en entrar, primero en salir para simplificar su análisis.
  • Elige entre múltiples vistas de datos. Hay cuatro vistas que se pueden usar por separado o se pueden ver todas al mismo tiempo. Son los modos de mesa, línea, volcado y terminal, y cada uno puede ofrecer una visión diferente de sus datos. La vista de volcado le permite investigar la configuración del puerto, y puede emplear filtros de monitoreo para reducir el desorden de la pantalla y concentrarse en los eventos que son importantes.
  • Emulación de transmisión de datos..Puede enviar datos a dispositivos en serie en varios formatos, como cadenas, binarios, decimales y hexadecimales, para monitorear la reacción del dispositivo en serie a comandos específicos o cadenas de datos.
  • Opción de reproducción de sesión. Puede repetir una transmisión a un puerto serie para obtener información de monitoreo más precisa. Las sesiones se pueden comparar entre sí y las diferencias se resaltan automáticamente para facilitar el análisis.
  • Exportación de datos monitorizados en varios formatos.. Puede exportar sus datos a un archivo en HTML, texto ASCII, texto UNICODE o formato CSV de Excel y puede tener datos actualmente monitoreados adjuntos a un archivo previamente guardado.
  • Interfaz amigable. Serial Port Monitor está diseñado para permitir el acceso a puertos e interfaces seriales sin la necesidad de conocimientos de programación. Los filtros para controlar los datos mostrados se pueden personalizar fácilmente en la barra de herramientas de la aplicación.
  • Códigos de control de entrada / salida de pista. Puede obtener los detalles completos y los parámetros de todos los códigos de control de entrada / salida en serie (IOCTL) utilizando el Monitor de puerto serie.

Este analizador de protocolo Modbus RTU debe estar en la caja de herramientas de cualquier persona que trabaje extensivamente con dispositivos serie y el protocolo Modbus. Puede usarlo en modo RTU o ASCII, lo que lo convierte en una utilidad de software versátil. Es una solución eficiente que le permite monitorear todas las interfaces seriales en su sistema sin requisitos de hardware adicionales. El monitor de puerto serie de Eltima se ejecuta en el sistema operativo Windows 10, así como en Windows Server 2012 y 2016.

¿Cómo funciona Modbus RTU?


El protocolo Modbus es básicamente un sistema que procesa solicitudes y respuestas de dispositivos electrónicos. La arquitectura maestro / esclavo se usa con las solicitudes de creación de maestro a las que responden los dispositivos esclavos.

  • ¿Qué es un maestro Modbus RTU?

Un maestro Modbus RTU es el dispositivo central que realiza solicitudes de información desde los dispositivos esclavos conectados. Un controlador central en un sistema de producción automatizado puede desempeñar el papel de un maestro Modbus RTU. Una implementación Modbus tiene un maestro. Los dispositivos maestros obtienen información de los esclavos y también pueden escribir en los registros de los dispositivos esclavos.

  • ¿Qué es un esclavo Modbus RTU?

El esclavo Modbus RTU es el dispositivo que responde a la solicitud realizada por el dispositivo maestro. No puede iniciar transferencias de información y está en un patrón de espera hasta responder a una solicitud realizada por el maestro.

Como se indicó, hay un dispositivo maestro en una implementación de Modbus RTU y puede haber hasta 247 dispositivos esclavos. Cada dispositivo esclavo está identificado por una dirección de esclavo de 1 a 247.

En el corazón del protocolo Modbus se encuentra el componente conocido como Unidad de datos de protocolo (PDU). La PDU consta de un código de función y datos y se construye de manera consistente independientemente del modo de transmisión Modbus utilizado. El código de función especifica qué datos solicita el maestro.

En el modo de transmisión Modbus RTU, la información adicional se envuelve alrededor de la PDU para crear la Unidad de datos de aplicación (ADU) completa. En el flujo de señal y antes del código de función, en el modo Modbus RTU se envía una ID de esclavo de 1 byte para identificar el dispositivo esclavo que debe satisfacer la solicitud. Se adjunta a la PDU un CRC de 2 bytes que garantiza que se envió y recibió la cantidad correcta de bytes.

Los dispositivos Modbus admiten cuatro tablas de datos que se utilizan para facilitar la comunicación entre dispositivos. Son entradas discretas, salidas discretas (bobinas), registros de entrada y registros de retención. Los registros realizan diferentes funciones y no están todos incluidos en todos los dispositivos. En algunos casos, solo los registros de retención se utilizan para la funcionalidad de E / S.

Campo Acceso Tamaño Descripción
Entradas discretas
solo leyendo
1 bit
utilizado como entradas
Salidas de bobinas
leyendo escribiendo
1 bit
usado para controlar discreto
Registros de entrada
solo leyendo
16 bits
utilizado para la entrada
Registros de tenencia
leyendo escribiendo
16 bit
utilizado para una variedad de cosas, incluyendo entradas, salidas, datos de configuración, etc.

Los códigos de función indican cómo el maestro interactúa con el dispositivo esclavo especificado en la ID del esclavo. En función del código de función enviado, el dispositivo maestro puede leer uno de los registros del esclavo o escribir en ellos.

Los esclavos devuelven códigos de error cuando reciben un paquete que contiene un error en la solicitud. Los códigos de error se devuelven para problemas como la solicitud de una función ilegal, las direcciones de registro ilegales a las que no puede acceder el esclavo especificado y los mensajes que indican que el dispositivo esclavo está ocupado o ha sufrido una falla.

Modbus RTU requiere que conozca o defina parámetros como la velocidad en baudios, el formato de caracteres (8 bits sin paridad, etc.) y la ID del esclavo al iniciar la comunicación. Una falta de coincidencia en cualquiera de estos parámetros resultará en la falla de su intento de comunicación.

Modbus RTU vs TCP


Modbus RTU es uno de los modos de transmisión originales que se definieron en el protocolo Modbus. Modbus TCP es una extensión desarrollada recientemente para el protocolo que permite que los protocolos Modbus se transmitan a través de redes TCP / IP. La latencia inherente y otros aspectos de la comunicación a través de una red, requirieron algunas modificaciones sobre cómo mantener las solicitudes y respuestas sincronizadas entre sí, y garantizar que no se reciban datos incorrectos de un dispositivo esclavo.

Modbus TCP muestra una diferencia en la forma en que se envuelve la PDU en comparación con Modbus RTU. La trama TCP que contiene la PDU comienza con un identificador de transacción del Protocolo de aplicación MODBUS (MBAP) de 2 bytes en lugar de la ID del esclavo. Tampoco es necesario que el CRC realice una comprobación de errores, ya que la capa TCP maneja esa función.

Modbus RTU vs ASCII


Como ambas eran parte de la especificación del protocolo Modbus original, quizás se esté preguntando cuál es la diferencia Modbus ASCII y Modbus RTU. Modbus RTU emplea codificación binaria y verificación de errores CRC. Estas elecciones se realizaron por razones de eficiencia y son la razón principal por la que el modo RTU es el más utilizado en entornos industriales. Como habrás adivinado, Modbus ASCII usa caracteres ASCII al enviar mensajes.

El uso de caracteres ASCII hace que los mensajes sean más legibles para los humanos, pero son un medio de transmisión menos eficiente. Otra diferencia importante es el nivel de comprobación de errores que se realiza. Modbus ASCII utiliza el método de control de errores LRC menos efectivo en lugar del CRC más fuerte del modo RTU.

Aunque tanto Modbus RTU como Modbus ASCII están diseñados para ser utilizados con dispositivos y protocolos en serie, son incompatibles entre sí debido a las diferencias descritas anteriormente. Si trabaja con dispositivos serie, debe estar preparado para utilizar el protocolo Modbus.

Serial Port Monitor

Requisitos: Windows XP/2003/2008/Vista/7/8/10/Server 2012 , 9.16MB tamaño
Versión 7.0.342 (13th Jan, 2018) Notas de la versión
Categoría: CommunicationApplication