You are on page 1of 25

MODBUS TCP/IP

INTRODUCCIÓN

El protocolo ModBus fue desarrollado en 1979


por la compañía Modicon (Ahora Schneider
Electric), para sistemas de automatización
industrial y controladores programables
Modicon. Esto lo ha convertido desde entonces
en un método estándar de la industria para la
transferencia de información discreta/analógica
de entrada/salida y registro de datos entre el
control industrial y dispositivos de monitoreo.
ModBus es ahora un protocolo abierto, de
dominio público de amplia aceptación que
requiere una licencia, pero no requiere el pago
de regalías a su propietario.
MODBUS: CONCEPTO

¿Para qué se utiliza?

Tradicionalmente, Modbus se utiliza en la industria para transmitir datos desde dispositivos de control al
sistema central de recopilación de datos. Este puede ser un sistema que mide la humedad o la
temperatura y envía los resultados a un ordenador supervisor. El protocolo también puede servir para
conectar el ordenador de control con una unidad terminal remota (RTU) en sistemas SCADA (Control
de Supervisión y Adquisición de Datos). Existen versiones de protocolo Modbus para comunicaciones
serie (Modbus RTU y Modbus ASCII) y para conexiones Ethernet (Modbus TCP).

Modelo de datos
MODBUS: CONCEPTO

Modbus es uno de los protocolos de comunicación


industrial más utilizados en la actualidad debido a
que por su sencillez y su carácter abierto, su uso está
ampliamente extendido entre múltiples fabricantes
de dispositivos. A continuación se exponen las
características más importantes del protocolo así
como las diferentes opciones existentes a la hora de
implementarlo.

Arquitectura Protocolar

Modbus en un protocolo que ocupa el nivel 7


(aplicación) dentro del modelo de referencia OSI. Se
implementa de las siguientes tres formas:

1.TCP/IP: Utilizando Ethernet como enlace de datos


y acceso al medio.
2. Transmisión serie asíncrona sobre diversos
medios: RS232/422/485. Los maestros pueden dirigirse a esclavos individuales o iniciar un
mensaje de transmisión a todos los esclavos. Los esclavos devuelven
3. HDLC (High Level Data Link Control) una respuesta a todas las consultas de mensajes dirigidas a ellos
individualmente, pero no responden a los mensajes de difusión. Los
Se puede utilizar para conexiones multipunto punto a esclavos no inician mensajes por sí mismos y solo responden a las
punto. consultas de mensajes transmitidas desde el maestro.
MODBUS: CONCEPTO

Arquitectura Modbus según OSI:


MODBUS: CONCEPTO

Formato de las Tramas

El protocolo Modbus define una


Unidad de Datos de Protocolo
(PDU) muy sencilla y
totalmente independiente de las
capas de comunicación
adyacentes. El mapeo de
protocolo MODBUS, en buses o
redes específicos, puede
introducir algunos campos
adicionales en la unidad de
datos de la aplicación (ADU).

Formato de las tramas Modbus


MODBUS TCP/IP: CONCEPTO

ModBus TCP/IP (También ModBus-TCP) es una variante del protocolo ModBus RTU (Unidad
Terminal Remota) con la diferencia que cuenta con una interfaz que corre sobre Ethernet. La estructura
de mensajería ModBus es el protocolo de aplicación que define las reglas para organizar e interpretar
los datos independiente del medio de transmisión del mismo.

El TCP/IP se refiere al Protocolo de Control de


Transmisión y el Protocolo de Internet (De Transfer
Control Protocol e Internet Protocol), el cual provee el
medio de transmisión para la mensajería ModBus
TCP/IP.
MODBUS TCP/IP: CONCEPTO

En pocas palabras, TCP/IP permite que los bloques de datos[1] binarios se intercambien entre los
equipos. También es un estándar mundial que sirve de base para la World Wide Web. La función
principal del TCP es asegurar que todos los paquetes de datos son recibidos correctamente,
mientras que IP se asegura que los mensajes sean direccionados y enruteados.

Hay que tener en cuenta que la combinación


de TCP/IP no es más que un protocolo de
transporte, y no define lo que significa los
datos o cómo los datos se han de interpretar
(este es el trabajo del protocolo de aplicación,
ModBus en este caso).
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:

• 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 hace un
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.
MODBUS TCP/IP: CONCEPTO

Construcción de un paquete de datos ModBus TCP


¿POR QUÉ COMBINAR MODBUS CON ETHERNET?

El estándar IEEE 802.3 (Ethernet) es un protocolo de red de oficinas que ha


ganado una amplia aceptación en todo el mundo. También es un estándar abierto
que es soportado por muchos fabricantes y su infraestructura está ampliamente
disponible[1] e instalada a nivel mundial.

En consecuencia, su suite de protocolos TCP/IP se


utiliza 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 de aumentar su uso en
aplicaciones industriales.
EL MODELO OSI DE RED

Comparación Modelo TCP/IP vs Modelo OSI[2]


EL MODELO OSI DE RED

El ModBus TCP/IP usa TCP/IP y Ethernet para


transportar los datos del mensaje ModBus entre
dispositivos. Esto es, el ModBus TCP/IP combina
una capa física (Ethernet) con un estándar de red
(TCP/IP) y un método estándar[1] de representación
de datos (ModBus).

Utiliza una arquitectura Maestro/Esclavo o


Cliente/Servidor, algunas de sus características más
importantes son: Su fácil implementación, además
del hecho de que maneja bloques de datos sin que
esto suponga alguna restricción.

✓ NORMATIVA

El ModBus/TCP al ser una fusión entre el protocolo


de transporte TCP/IP y el protocolo de aplicación
ModBus, así, tenemos que el protocolo TCP/IP está
regido por la norma[1] IEEE 802.3 (Ethernet).
CARACTERÍSTICAS GENERALES

Al igual que el RTU, el ModBus TCP/IP también


permite una distancia de hasta 1200m sin
repetidores, con velocidades de transmisión de 75
hasta 19.200 baudios[3], utiliza comunicación
asíncrona y hacerlo con buses Half-dúplex a través
de puertos RS-485 o por fibra óptica, de igual
manera, utiliza buses por comunicación Full-Dúplex
utilizando el estándar RS-232 y ofrece la
posibilidad, al igual que el Half-Dúplex, de utilizar
fibra óptica.

Permite conectar hasta 63 dispositivos[3], con


distancias mínimas de 20cm y distancias máximas
de hasta 20m entre los mismos. Además, utiliza para
la alimentación y la comunicación un mismo cable,
con una corriente máxima de hasta 1.8 Amperios.
CARACTERÍSTICAS GENERALES

Los estándares de conectores[3] físicos se observan en la tabla 1:

Tabla 1. Comparación estándar RS-232 vs estándar RS-485

ESTÁNDAR RS-232 RS-485


Modo de trabajo Asimétrica Simétrica o diferencial
Driver/Receiver 32 Drivers / 32
1 Driver / 1 Receptor
Receptores
Long. Del cableado 15m 1200m
Vel. Máxima 20kbps 10Mbps
Rango de tensión en
±15V -7 a 12V
receptor
Sensibilidad del receptor ±3V ±200mV
DIAGRAMA DE CABLES

Figura 3. Esquema de conexión para cables[3]


CARACTERÍSTICAS GENERALES

Figura 4. Ejemplo de aplicación del protocolo ModBus TCP/IP


ESTRUCTURA DEL PROTOCOLO

La estructura del cuerpo de la solicitud y respuesta[4], desde el


código de función hasta el fin de la porción de datos, tiene
exactamente la misma disposición y significado como en las otras
variantes MODBUS, ModBus Serial con codificación ASCII, ModBus
Serial con codificación RTU y el ModBus Plus.

La diferencia entre los anteriores radica en la especificación de los


delimitadores inicial y final del mensaje, el método para chequeo de
error y la interpretación de la dirección.

Todas las solicitudes son enviadas por TCP sobre el puerto registrado
502, dichas solicitudes o respuestas se transmiten mediante Half-
dúplex sobre una conexión dada.
ESTRUCTURA DEL PROTOCOLO

Los mensajes de solicitud y respuesta en ModBus/TCP poseen


un prefijo[4] o encabezado compuesto por seis bytes como se
aprecia en la figura 3.

Figura 3. Estructura del prefijo de ModBus TCP

De esta forma, un mensaje ModBus/TCP completo[4] posee una


estructura como se muestra en la Tabla 2:
ESTRUCTURA DEL PROTOCOLO

Tabla 2. Estructura[4] de mensajes en ModBus/TCP


POSICIÓN DEL
SIGNIFICADO
BYTE
Byte 0 Identificador de transacción. Copiado por el servidor (normalmente 0).
Byte 1 Identificador de transacción. Copiado por el servidor (normalmente 0).
Byte 2 Identificador de protocolo = 0.
Byte 3 Identificador de protocolo = 0.
Byte 4 Campo de longitud (byte alto) = 0.Ya que los mensajes son menores a
256.
Byte 5 Campo de longitud (byte bajo). Número de bytes siguientes.
Byte 6 Identificador de unidad (previamente dirección esclavo).
Byte 7 Código de función MODBUS
Byte 8 y más Los datos necesarios
ESQUEMA DE ENCAPSULACIÓN

Figura 4. Esquema de encapsulación[4] en ModBus TCP.


EL MODELO OSI DE RED: VENTAJAS

➢ El protocolo ModBus TCP/IP está basado en el protocolo


TCP/IP y ambos comparten[1] las 4 capas más bajas del
modelo OSI para todos los dispositivos Ethernet.

➢ Es escalable en complejidad[4]. Un dispositivo el cual tiene


solo un propósito simple necesita implementar solo uno o
dos tipos de mensaje.

➢ Es simple para administrar y expandir. No se requiere usar


herramientas de configuración[4] complejas cuando se añade
una nueva estación a una red ModBus/TCP.

➢ No es necesario equipo o software propietario[4] de algún


fabricante.
EL MODELO OSI DE RED: VENTAJAS

➢ Cualquier sistema computador o microprocesador con una


pila de protocolos TCP/IP puede usar ModBus/TCP.

➢ Puede ser usado para comunicar con una gran base instalada
de dispositivos MODBUS, usando productos de conversión[4]
los cuales no requieren configuración.

➢ Es de muy alto desempeño, limitado típicamente por la


capacidad del sistema operativo del computador para
comunicarse. Altas ratas de transmisión[4] son fáciles de
lograr sobre una estación única, y cualquier red puede ser
construida para lograr tiempos de respuesta garantizados en
el rango de milisegundos.
BIBLIOGRAFÍA

[1]http://www.dee.hcmut.edu.vn/vn/ptn/sch/download/Network_Archite
cture/intro_modbusTCP.pdf

[2]http://educativa.catedu.es/44700165/aula/archivos/repositorio//1000
/1062/html/22_protocolo_tcpip.html

[3]http://www.authorstream.com/Presentation/aSGuest131836-1383567-
modbus/

[4]http://www.univalle.edu.co/~telecomunicaciones/trabajos_de_grado/i
nformes/tg_AndresRuiz.pdf

You might also like