You are on page 1of 17

MODBUS - PROTOCOLO STANDARD DE FACTO

El protocolo MODBUS fue desarrollado originalmente por GouldModicon. A lo largo de los aos fue imponindose en la industria como uno de los protocolos ms difundidos para la adquisicin de datos. Hoy en da es un standard de facto en aplicaciones de telemetra. La especificacin original del protocolo ha sufrido diversas modificaciones para adaptarlo a las necesidades cambiantes de la comunicacin de datos. As nacieron diversas variaciones del protocolo, como el Modbus Enron (soporte para registros en punto flotante), Modbus Daniel (adaptado a computadores de caudal de gas), etc. Las variaciones han afectado principalmente el direccionamiento de los registros, dejando intactas las dems caractersticas del protocolo

CARACTERISTICAS FISICAS DE LAS COMUNICACIONES MODBUS

Las comunicaciones Modbus pueden realizarse sobre enlaces punto a punto o multipunto, con fsica RS-232, RS-422 o RS-485, mediante enlaces radiales, tpicamente del tipo Spread Spectrum, que tienen la ventaja de no requerir lincencia para su instalacin o mediante comunicaciones telefnicas via modem.
Del punto anterior se desprende que los enlaces pueden ser half duplex o full duplex indistintamente. Dado que se trata de un protocolo tipo master-slave, basta con un enlace half duplex para su implementacin Los baud rates soportados dependen de los equipos a conectar, tpicamente van desde 1200 a 38400 bps

HARDWARE DE COMUNICACION
MASTER SLAVE

Punto a punto RS-232/422/485

MASTER MASTER SLAVE 1 SLAVE 2 SLAVE 3

SLAVE

Punto a punto enlace radial

Multipunto RS-485

SLAVE 4

MASTER

SLAVE 1

Multipunto enlace radial

SLAVE 2 SLAVE 3

CARACTERISTICAS LOGICAS DEL PROTOCOLO Es de tipo Master-Slave Hay un nico Master en la red. El mster no tiene nmero de nodo. Slo el Master puede iniciar una comunicacin. Los esclavos no pueden comunicarse entre s. El Master puede realizar operaciones de lectura y escritura sobre los esclavos Se admiten hasta 254 esclavos, cada uno de los cuales tiene un nmero de nodo entre 1 y 254 La direccin 255 se reserva para mensajes tipo broadcast (difusin masiva - llegan a todos los esclavos)

MODBUS ASCII Y MODBUS RTU

Existen 2 formas de transmitir las tramas de comunicacin entre los dispositivos en una red Modbus:
Modo ASCII: Todas las tramas comienzan con un carcter : y terminar con CRLF (Retorno de carro - Alimentacin de lnea, cdigos ASCII 13 y 10 respectivamente). Todos los bytes transmitidos entre ambos delimitadores son caracteres ASCII entre 0-9 y A-F, representando en hexadecimal los valores binarios a transmitir. Ejemplo: el valor 00111111 bin = 3F hex, se transmite como 3 seguido de F. En este modo las tramas son del doble de la longitud que en el modo RTU para cumplir la misma funcin. Modo RTU: El inicio de la trama queda marcado por la llegada del primer carcter. El fin queda marcado por un silencio de ms de 3 tiempos de carcter. Los bytes de la trama van en binario.

MODBUS ASCII Ventajas: desde el punto de vista del fabricante, es ms fcil de implementar, dado que no requiere temporizaciones precisas. Es por ello que muchos equipos slo soportan este modo de comunicacin. Desde el punto de vista del diagnstico, es ms simple, ya que las tramas se pueden ver directamente con cualquier software tipo terminal. Desventajas: Las tramas tienen una longitud de aproximadamente el doble que las tramas RTU, lo cual tiene el efecto neto de reducir la velocidad de comunicacin a la mitad. En el desarrollo de drivers de comunicacin, se presta mejor para ser implementado mediante lenguajes de alto nivel

MODBUS RTU Ventajas: es ms eficiente pues las tramas son ms cortas, lo cual redunda en un mejor aprovechamiento de enlaces lentos como los radiales o en un menor tiempo de actualizacin cuando la red posee gran nmero de esclavos. Desventajas: es ms difcil de implementar, pues requiere temporizaciones precisas para marcar el fin del mensaje. En el desarrollo de drivers de comunicacin, se presta mejor para ser implementado mediante lenguajes de bajo nivel

PARAMETROS DE COMUNICACION En cada dispositivo debe configurarse el modo de comunicacin: RTU

ASCII, 7 bits de datos


ASCII, 8 bits de datos Paridad: Par, Impar o Ninguna Bits de Stop: 1 o 2 Baud rate: normalmente entre 1200 y 38400 bps

Todos los dispositivos que integran una red deben tener los mismos parmetros de comunicacin
En los dispositivos esclavos debe configurarse el nmero de nodo (1-254)

MAPA DE DIRECCIONES MODBUS El protocolo Modbus en su versin original soportaba 4 tipos de datos: Entradas digitales (direcciones 10001-19999): son entradas fsicas discretas. Un bit, valores 0 o 1.Slo lectura. Salidas digitales - bobinas internas (direcciones 00001-09999): son salidas fsicas discretas o bobinas internas del equipo. Un bit, valores 0 o 1. Lectura y escritura Entradas analgicas (direcciones tipo 30001-39999): son entradas fsicas analgicas. Registros de 16 bits. Slo lectura. Salidas analgicas - registros internos (direcciones 4000149999): son salidas fsicas analgicas o registros internos del equipo. Registros de 16 bits. Lectura y escritura.

MAPA DE DIRECCIONES MODBUS (cont.) Un dispositivo esclavo normalmente implementa slo una parte del mapa de direcciones. El significado de cada direccin depende del dispositivo y debe consultarse en el manual correspondiente

En el caso de dispositivos que soporten variaciones del protocolo Modbus original, el mapa de memoria incluye direcciones que no figuran en este mapa.

CODIGOS DE FUNCION (COMANDOS) MODBUS


Cdigo Descripcin Rango aplicable 00001-09999 10001-19999 40001-49999 30001-39999 00001-09999 40001-49999

1 2 3 4 5 6 8 15 16

Leer estado de salidas Leer estado de entradas Leer registros de memoria Leer registros de entrada Forzar bobina nica Escribir registro nico Test de comunicacin Forzar mltiples bobinas Escribir mltiples registros

00001-09999 40001-49999

Direccin

Comando lectura Bobinas (Salidas digitales) Entradas (Entradas digitales) Registros de entrada (entradas analgicas) Registros Holding (registros de memoria) 1

Comando escritura 5,15

00001 09999 10001 19999 30001 39999

40001

6,16

49999

LIMITACIONES DEL PROTOCOLO MODBUS No todos los dispositivos esclavos soportan todos los modos del protocolo (ASCII, RTU, velocidades,etc.). Esto muchas veces hace imposible integrar en una misma red dispositivos diferentes, aunque todos funcionen con el protocolo Modbus. En una red Modbus existe un nico master. Ello impide que ms de un dispositivo tome datos del mismo esclavo. En algunos casos los esclavos poseen ms de un puerto Modbus, con lo cual se soluciona el problema, pero lo ms comn es que un dispositivo tenga un nico puerto. An cuando un dispositivo sea completamente configurable, puede ocurrir que la variante del protocolo que soporta sea diferente de la de los dems dispositivos que se quieren integrar en la misma red.

TIPOS DE DATOS EN REGISTROS Existen diversas formas de transmitir datos en registros 4xxxx Entero no signado: 0...65535

Entero signado: -32768...32767


Entero largo (2 registros consecutivos): -2147483648... 2147483647

Entero Mdulo 10000 (2 registros consecutivos): 0...99999999


Punto flotante (2 registros consecutivos o un registro flotante): Aproximadamente 7 dgitos decimales significativos, en un rango amplio Cada dispositivo entrega los datos en forma diferente - consultar el manual

OPTIMIZACION DE LA COMUNICACION Una comunicacin Modbus es ms eficiente cuando la cantidad de paquetes intercambiados es mnima.

Es preferible un paquete grande a varios paquetes pequeos


En la mayoria de las aplicaciones las operaciones de lectura son predominantes, por lo cual su optimizacin es fundamental para un buen rendimiento de la comunicacin. Para reducir el nmero de paquetes intercambiados, es conveniente que los registros o bobinas ledos sean consecutivos, de modo que se transmitan en el mismo paquete. Muchos dispositivos esclavos repiten los mismos valores en distintas direcciones, formando diferentes grupos de datos, de modo que el master utilice las direcciones de la forma ms conveniente

EXTENSIONES DE HARDWARE Existen en el mercado productos que permiten que ms de un master acceda a un esclavo, o que un master acceda a esclavos que tienen diferentes configuraciones de comunicacin

You might also like