PROTOCOLO MODBUS

El protocolo Modbus fue desarrollado en 1979 por Modicon, Incorporated, para los sistemas de automatización industrial y controladores programables Modicon. Desde entonces se ha convertido en un método estándar de la industria para la transferencia de discreta / analógico información de E / S y el registro de datos entre el control industrial y dispositivos de control. Modbus es un protocolo de ahora ampliamente aceptada, abierto, de dominio público que requiere una licencia, pero no requiere el pago de regalías a su propietario.

dispositivos Modbus se comunican utilizando una técnica de maestro-esclavo (cliente-servidor) en el que sólo un dispositivo (el maestro / cliente) puede iniciar transacciones (denominadas consultas). Los otros dispositivos (esclavos) / servidores responden mediante el suministro de los datos solicitados al maestro, o mediante la adopción de las medidas solicitadas en la consulta. Un esclavo es cualquier dispositivo periférico (transductor de E / S, válvulas, unidad de red, u otro dispositivo de medición) que procesa la información y envía su salida a la maestra usando Modbus. Los dispositivos Acromag Módulos I / O forma esclavo / servidor, mientras que un dispositivo maestro típico es un equipo host que ejecuta software de aplicación adecuado. Otros dispositivos pueden funcionar como clientes (maestros) y servidores (esclavos).

Maestros pueden hacer frente a los esclavos individuales, o pueden iniciar un mensaje de difusión a todos los esclavos. Los esclavos devuelven una respuesta a todas las consultas dirigidas a ellos de forma individual, pero no responden a las solicitudes de difusión. Los esclavos no inician los mensajes por su cuenta, que sólo responden a las preguntas de la maestra.

la consulta de un maestro consistirá en una dirección de esclavo (o la dirección de difusión), un código de función que define la acción solicitada, todos los datos necesarios, y un campo de comprobación de errores. La respuesta de un esclavo se compone de campos confirman la acción realizada, los datos que se devolverán, y la comprobación de un error de campo. Tenga en cuenta que la consulta y la respuesta tanto incluyen una dirección de dispositivo, un código de función, además de datos aplicables, y un campo de comprobación de errores. Si se produce ningún error, la respuesta del esclavo contiene los datos conforme a lo solicitado. Si se produce un error en la consulta recibida, o si el esclavo no es capaz de realizar la acción solicitada, el esclavo devolverá un mensaje de excepción como su respuesta (ver excepciones Modbus). El campo de comprobación de error de trama de mensaje del esclavo permite que el maestro para confirmar que el contenido del mensaje son válidos. mensajes tradicional Modbus se transmiten en serie y la comprobación de paridad también se aplica a cada carácter transmitido en su trama de datos.

En este punto, es importante hacer la distinción que el propio Modbus es un protocolo de aplicación, ya que define las normas para la organización y la interpretación de los datos, pero sigue siendo simplemente una estructura de mensajería, independiente de la capa física subyacente. A medida que pasa a ser fáciles de entender y de libre acceso, y accesible a cualquier persona, por lo que es ampliamente soportado por muchos fabricantes.

 

¿Qué es un Modbus TCP / IP

Modbus TCP / IP (también Modbus-TCP) es simplemente el protocolo Modbus RTU con una interfaz TCP que se ejecuta en Ethernet.

La estructura de mensajería Modbus es el protocolo de aplicación que define las normas para la organización y la interpretación de los datos independiente del medio de transmisión de datos.

TCP / IP se refiere al Protocolo de Internet y Protocolo de control de transmisión, que proporciona el medio de transmisión de mensajes Modbus TCP / IP.

En pocas palabras, TCP / IP permite a los bloques de datos binarios que se intercambia entre los ordenadores. También es un estándar mundial que sirve de base para la World Wide Web. La función principal de TCP es asegurar que todos los paquetes de datos se reciben correctamente, mientras que IP se asegura de que los mensajes se abordan y colocados correctamente. Tenga en cuenta que la combinación de TCP / IP no es más que un protocolo de transporte, y no define lo que significa que los datos o cómo los datos se ha de interpretar (este es el trabajo del protocolo de aplicación, Modbus en este caso).

Así que en resumen, Modbus TCP / IP utiliza TCP / IP y Ethernet para transportar los datos de la estructura del mensaje Modbus entre dispositivos compatibles. Es decir, Modbus TCP / IP combina una red física (Ethernet), con un estándar de red (TCP / IP), y un método estándar de representación de datos (Modbus como el protocolo de aplicación). En esencia, el mensaje Modbus TCP / IP es simplemente una comunicación Modbus encapsulado en una envoltura de Ethernet TCP / IP.

 

Introducción a Modbus TCP / IP

Modbus TCP / IP de la unidad de datos de aplicación (ADU) toma la forma de un (identificador de protocolo de identificador de transacción + + + campo de longitud de identificador de la unidad) 7 cabecera de bytes, y la unidad de datos de protocolo (código de función + datos). La cabecera MBAP es de 7 bytes de longitud e incluye los siguientes campos:

• identificador de transacción / invocación (2 bytes): Este campo de identificación se usa para el apareamiento de transacción cuando varios mensajes se envían a lo largo de la misma conexión de TCP de un cliente sin esperar una respuesta previa.

• Protocolo de identificación (2 bytes): Este campo es siempre 0 para los servicios Modbus y demás valores están reservados para futuras ampliaciones.

• Longitud (2 bytes): Este campo es un contador de bytes de los campos restantes e incluye el byte identificador de unidad, byte código de función y los campos de datos.

• identificador de unidad (1 byte): Este campo se utiliza para identificar un servidor remoto que se encuentra en una red no TCP / IP (por puente de serie). En una aplicación típica de un servidor Modbus TCP / IP, el ID de la unidad se establece en 00 o FF, ignorado por el servidor, y simplemente se hizo eco de vuelta en la respuesta.

La completa / unidad de datos de aplicaciones de IP Modbus TCP se incrusta en el campo de datos de una trama TCP estándar y se envía a través de TCP al conocido puerto del sistema 502, que está reservado específicamente para aplicaciones Modbus. clientes Modbus TCP / IP y servidores de escuchar y recibir datos a través del puerto Modbus 502.

Podemos ver que el funcionamiento de Modbus sobre Ethernet es casi transparente a los registros Modbus / estructura de mando. Por lo tanto, si usted ya está familiarizado con el funcionamiento de Modbus tradicional, entonces usted ya está muy en el funcionamiento de Modbus TCP / IP.

IEEE 802.3 Ethernet es un protocolo de red de oficinas de larga data que ha ganado aceptación en todo el mundo universal. También es un estándar abierto que se utiliza por muchos fabricantes y su infraestructura está ampliamente disponible y en gran medida instalado. En consecuencia, se utiliza el conjunto de protocolos TCP / IP de protocolos en todo el mundo e incluso sirve como la base para el acceso a la World Wide Web. Como muchos dispositivos ya son compatibles con Ethernet, es natural que incluyese también para su uso en aplicaciones industriales.

Al igual que con Ethernet, Modbus está libremente disponible, accesible a cualquier persona, y ampliamente soportado por muchos fabricantes de equipos industriales. También es fácil de entender y un candidato natural para su uso en la construcción de otros estándares de comunicación industrial. Con tanto en común, el matrimonio del protocolo de aplicación Modbus con la transmisión tradicional Ethernet IEEE 802.3 constituye un poderoso estándar de comunicación industrial en Modbus TCP / IP. Y debido a Modbus TCP / IP comparte las mismas capas física y de enlace de datos de Ethernet tradicional IEEE 802.3 y utiliza la misma red TCP / suite de protocolos IP, sigue siendo totalmente compatible con la infraestructura Ethernet que ya está instalada de cables, conectores, tarjetas de interfaz de red, concentradores e interruptores.