Hugo Salazar CARRERA: Ing. Automatización y control industrial ASIGNTATURA: Redes Industriales PROFESOR: Javier Silva FECHA: 27-12-2019 INTRODUCCIÓN ¿QUÉ ES PROTOCOLO MODBUS? Modbus es un protocolo de comunicaciones, basado en la arquitectura maestro/esclavo o cliente/servidor, diseñado en 1979 por Modicon para su gama de controladores lógicos programables (PLCs). En una relación maestro-esclavo, la comunicación siempre se produce en pares, un dispositivo debe iniciar una solicitud y luego esperar una respuesta y el dispositivo de inicio (el maestro) es responsable de iniciar cada interacción. Por lo general, el maestro es una interfaz humano-máquina (HMI) o sistema SCADA y el esclavo es un sensor, controlador lógico programable (PLC). El contenido de estas solicitudes y respuestas, y las capas de la red a través de las cuales se envían estos mensajes, son definidas por las diferentes capas del protocolo. MODBUS Y EL MODELO OSI CAPA DE APLICACIÓN Esta corresponde a la numero 7 del modelo OSI, es donde encontramos el software que poseen los equipos que trabajan con MODBUS CAPA DE ENLACE Esta capa corresponde a la numero 2 del modelo OSI, en esta capa se ubica la topologia logica de la red MODBUS, que en todos los casos es del tipo maestro – esclavo o cliente - servidor CAPA FISICA Esta capa corresponde a la numero 1 del modelo OSI, caracterizada por el medio fisico llámese claves conectores que hacen posible la comunicación ESTRUCTURA MODBUS
El medio físico esta
formado por Bus de líneas seriales que pueden ser Semidúplex o dúplex ESTRUCTURA MODBUS La estructura lógica de la red que se asocia al acceso al medio es del tipo maestro esclavo. El maestro envía un mensaje a uno o mas esclavos y dependiendo del caso el esclavo responde.
Mensaje punto a punto: el maestro
envía una petición al esclavo y este la responde. Mensaje Broadcast: el maestro envía un mensaje a todos los esclavos de la red. PROTOCOLO MODBUS El protocolo MODBUS puede emplearse en varios modos. Destacando entre ellos el MODBUS RTU y el MODBUS ASCII.
binaria de los datos en caracteres ascii PROTOCOLO MODBUS RTU MODBUS RTU (Unidad Terminal Remota) está diseñado para usarse con dispositivos serie que admiten los protocolos RS232, RS485 y RS422. Una característica distintiva de Modbus RTU es que usa codificación binaria y una fuerte verificación de los errores CRC (comprobación de redundancia cíclica). MODBUS RTU es la implementación del protocolo MODBUS que se usa con mayor frecuencia en aplicaciones industriales e instalaciones de producción automatizadas. TRAMA GENERAL DE MODBUS
Dirección: corresponde al numero del esclavo al
cual va dirigido el mensaje, toma valores desde el 01 al 63, para mensajes punto - punto, dejando el “00” para un mensaje tipo Broadcast. Código de Función: tipo de solicitud que se le realiza al esclavo, codificada de manera numérica. MODBUS RTU
DATOS: Este campo se emplea para enviar información
complementaria a la solicitud realizada al esclavo, o se emplea para responder a la solicitud, por la tanto el campo de dato tiene una estructura diferente cuando el mensaje lo envía el maestro o cuando es la respuesta de un esclavo.
TRAMA MAESTRO TRAMA ESCLAVO
TRAMA RTU
Emplea una representación binaria de los datos.
Dirección: se pueden tener valores entre 0 y 255 para colocar la dirección (ID) de los esclavos (recordar que “00” esta definida para broadcast). Función: al ser un byte tiene la posibilidad de colocar valores entre 0 y 255. aunque no existen 256 funciones en el protocolo. Datos: este es de tamaño flexible dependiendo de si es un maestro o un esclavo. Verificación: chequeo de redundancia cíclica. MODBUS ASCII Modbus ASCII utiliza el conjunto de caracteres ASCII para representar caracteres hexadecimales. El formato de los mensajes ASCII Modbus consiste en un carácter de inicio que es dos puntos ":" y el final del mensaje se define mediante un retorno de carro y un salto de línea. Esto permite que el espacio entre los mensajes sea variable y haga que Modbus ASCII sea adecuado para la transmisión a través de ciertos módems. TRAMA ASCII
Se agregan 3 bloques a la trama, el primero de inicio de mensaje el cual
esta destinado a “:” (3A) y dos bloques al final que corresponden a un retorno de carro “CR” (0D) y un salto de línea “LF” (0A). Dirección: corresponde al numero del esclavo al cual va dirigido el mensaje, toma valores desde el 00 al 3F, recordando que “00” es para un mensaje tipo Broadcast. Código de Función: tipo de solicitud que se le realiza al esclavo. DATOS: Este campo se emplea para enviar información complementaria a la solicitud realizada al esclavo, o se emplea para responder a la solicitud. MODBUS TCP/IP Modbus/TCP es un protocolo de comunicación que permite a equipos industriales tales como PLCs, PC y otros tipos de dispositivos físicos de entrada/salida, comunicarse sobre una red Ethernet. Específicamente el protocolo define el uso de mensajes MODBUS en un entorno intranet o internet usando los protocolos TCP/IP. La especificación Modbus/TCP define un estándar interoperable en el campo de la automatización industrial, el cual es simple de implementar para cualquier dispositivo que soporte sockets TCP/IP. Todas las solicitudes son enviadas vía TCP sobre el puerto registrado 502 y normalmente usando comunicación semiduplex sobre una conexión dada. MODBUS TCP/IP El protocolo MODBUS en Modo TCP/IP es una variante del protocolo MODBUS RTU para comunicaciones sobre redes TCP/IP, realizando las conexiones a través del puerto TCP 502. En este modo se trabaja bajo una arquitectura cliente- servidor MODBUS TCP/IP Con este protocolo, la Pantalla trabaja en modo Servidor. Las tramas son igual a las del protocolo MODBUS en modo RTU con las siguientes diferencias: * El campo ID (Dirección del Dispositivo) de la trama MODBUS-RTU es substituido por una cabecera llamada Cabecera MBAP. * No hay CRC ni ningún código de control de errores, dado que los protocolos de capas inferiores se ocupan de esa tarea. TRAMA DE MODBUS TCP/IP
La cabecera MBAP (7 Bytes) contiene los siguientes campos:
Una vez recibido un mensaje con la dirección de la misma, se devolverá
un mensaje con el resultado de la transmisión. MODBUS PLUS Es una versión extendida del protocolo y privativa de Schneider Electric y a diferencia de las otras variantes, soporta comunicaciones peer-to-peer entre múltiples maestros. Requiere un co-procesador dedicado para manejar HDLC. Utiliza par trenzado a 1 Mbit/s y sus especificaciones son muy semejantes al estándar EIA/RS- 485 aunque no guarda compatibilidad con este, e incluye transformador de aislamiento en cada nodo. Se requiere hardware especial para conectar Modbus Plus a un ordenador, normalmente una tarjeta diseñada para bus ISA, PCI o PCMCIA. MODBUS PLUS
Cada mensaje contiene una o mas direcciones de recepción.
Esto permite la transmisión de datos a varias estaciones sin que sea necesario repetir la operación VENTAJAS DE LA RED MODBUS Las razones que han llevado a Modbus a convertirse en un estándar como protocolo de comunicación son varias, entre ellas: Código abierto, no se requiere pagar por licencia. Ampliamente soportado por HMI, PLC; o softwares SCADA Fácil de usar Se pueden integrar varios equipos fácilmente Bajo costo de desarrollo Conocido ampliamente en la industria Facilidad de adaptación a las nuevas tecnologías en instrumentos y telecomunicaciones DESVENTAJAS DE LA RED MODBUS Los objetos binarios grandes no son compatibles No existe una forma estándar para que un nodo encuentre la descripción de un objeto de datos. Dado que Modbus es un protocolo maestro / esclavo, no es posible que un dispositivo de campo "informe por excepción“, es decir, el nodo maestro debe rutinariamente encuestar cada dispositivo de campo y buscar cambios en los datos. Las transmisiones Modbus deben ser contiguas, lo que limita los tipos de dispositivos de comunicaciones remotas a aquellos que pueden almacenar datos para evitar lagunas en la transmisión. El protocolo Modbus no ofrece seguridad contra órdenes no autorizadas o interceptación de datos. CONCLUSIÓN •MODBUS es un protocolo de comunicación de licencia abierta. •Topología tipo bus serial, basada en arquitectura Maestro-esclavo o Cliente-Servidor. •Principalmente comprende las capas 1, 2, 7 del modelo OSI. •Protocolos de comunicación RS-485, fibra óptica, RS-232, bucle de corriente 0-20mA RJ-45.