0% encontró este documento útil (0 votos)
27 vistas21 páginas

Guía Completa del Protocolo MODBUS

El documento describe el protocolo de comunicaciones Modbus, incluyendo sus características, variantes, mapa de direcciones y códigos de función. Modbus es un estándar ampliamente utilizado en aplicaciones de telemetría industrial.

Cargado por

Victor Firmes
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
27 vistas21 páginas

Guía Completa del Protocolo MODBUS

El documento describe el protocolo de comunicaciones Modbus, incluyendo sus características, variantes, mapa de direcciones y códigos de función. Modbus es un estándar ampliamente utilizado en aplicaciones de telemetría industrial.

Cargado por

Victor Firmes
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPT, PDF, TXT o lee en línea desde Scribd

MODBUS - PROTOCOLO STANDARD “DE FACTO”

• El protocolo MODBUS fue desarrollado originalmente por Gould-


Modicon. A lo largo de los años fue imponiéndose en la industria
como uno de los protocolos más difundidos para la adquisición de
datos. Hoy en día es un standard “de facto” en aplicaciones de
telemetría.
• La especificación original del protocolo ha sufrido diversas
modificaciones para adaptarlo a las necesidades cambiantes de la
comunicación 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 demás características del protocolo
CARACTERISTICAS FISICAS DE LAS COMUNICACIONES MODBUS

• Las comunicaciones Modbus pueden realizarse sobre enlaces


punto a punto o multipunto, con física RS-232, RS-422 o RS-485,
mediante enlaces radiales, típicamente del tipo “Spread Spectrum”,
que tienen la ventaja de no requerir lincencia para su instalación o
mediante comunicaciones telefónicas 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
implementación
• Los baud rates soportados dependen de los equipos a conectar,
típicamente van desde 1200 a 38400 bps
HARDWARE DE COMUNICACION
MASTER SLAVE Punto a punto RS-232/422/485

MASTER SLAVE Punto a punto enlace radial

MASTER SLAVE 1

SLAVE 2 Multipunto RS-485


SLAVE 3

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 máster no tiene número de nodo.
Sólo el Master puede iniciar una comunicación. 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
número de nodo entre 1 y 254
• La dirección 255 se reserva para mensajes tipo “broadcast”
(difusión masiva - llegan a todos los esclavos)
MODBUS ASCII Y MODBUS RTU
• Existen 2 formas de transmitir las tramas de comunicación entre los
dispositivos en una red Modbus:
• Modo ASCII: Todas las tramas comienzan con un carácter “:” y
terminar con CRLF (Retorno de carro - Alimentación de línea,
códigos 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
función.
• Modo RTU: El inicio de la trama queda marcado por la llegada
del primer carácter. El fin queda marcado por un silencio de más
de 3 tiempos de carácter. Los bytes de la trama van en binario.
MODBUS ASCII

• Ventajas: desde el punto de vista del fabricante, es más fácil de


implementar, dado que no requiere temporizaciones precisas. Es por
ello que muchos equipos sólo soportan este modo de comunicación.
Desde el punto de vista del diagnóstico, es más 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 comunicación a la mitad.
• En el desarrollo de drivers de comunicación, se presta mejor para
ser implementado mediante lenguajes de alto nivel
MODBUS RTU

• Ventajas: es más eficiente pues las tramas son más cortas, lo cual
redunda en un mejor aprovechamiento de enlaces lentos como los
radiales o en un menor tiempo de actualización cuando la red posee
gran número de esclavos.
• Desventajas: es más difícil de implementar, pues requiere
temporizaciones precisas para marcar el fin del mensaje.
• En el desarrollo de drivers de comunicación, se presta mejor para ser
implementado mediante lenguajes de bajo nivel
PARAMETROS DE COMUNICACION
• En cada dispositivo debe configurarse el modo de comunicación:
• 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
parámetros de comunicación
• En los dispositivos esclavos debe configurarse el número de nodo
(1-254)
MAPA DE DIRECCIONES MODBUS

• El protocolo Modbus en su versión original soportaba 4 tipos de


datos:
• Entradas digitales (direcciones 10001-19999): son entradas
físicas discretas. Un bit, valores 0 o 1.Sólo lectura.
• Salidas digitales - bobinas internas (direcciones 00001-09999):
son salidas físicas discretas o bobinas internas del equipo. Un
bit, valores 0 o 1. Lectura y escritura
• Entradas analógicas (direcciones tipo 30001-39999): son
entradas físicas analógicas. Registros de 16 bits. Sólo lectura.
• Salidas analógicas - registros internos (direcciones 40001-
49999): son salidas físicas analógicas o registros internos del
equipo. Registros de 16 bits. Lectura y escritura.
MAPA DE DIRECCIONES MODBUS (cont.)

• Un dispositivo esclavo normalmente implementa sólo una parte


del mapa de direcciones. El significado de cada dirección 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

Código Descripción Rango


aplicable

1 Leer estado de salidas 00001-09999


2 Leer estado de entradas 10001-19999
3 Leer registros de memoria 40001-49999
4 Leer registros de entrada 30001-39999
5 Forzar bobina única 00001-09999
6 Escribir registro único 40001-49999
8 Test de comunicación
15 Forzar múltiples bobinas 00001-09999
16 Escribir múltiples registros 40001-49999
Dirección Comando Comando
lectura escritura

00001 Bobinas 1 5,15


(Salidas
09999 digitales)

10001 Entradas 2 -
(Entradas
19999 digitales)

30001 Registros de 4 -
entrada
39999 (entradas
analógicas)

40001 Registros 3 6,16


Holding
(registros de
49999 memoria)
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 más
de un dispositivo tome datos del mismo esclavo. En algunos casos
los esclavos poseen más de un puerto Modbus, con lo cual se
soluciona el problema, pero lo más común es que un dispositivo
tenga un único puerto.
• Aún cuando un dispositivo sea completamente configurable,
puede ocurrir que la variante del protocolo que soporta sea
diferente de la de los demás 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 Módulo 10000 (2 registros consecutivos): 0...99999999
• Punto flotante (2 registros consecutivos o un registro flotante):
Aproximadamente 7 dígitos decimales significativos, en un rango
amplio
• Cada dispositivo entrega los datos en forma diferente - consultar el
manual
OPTIMIZACION DE LA COMUNICACION

• Una comunicación Modbus es más eficiente cuando la cantidad de


paquetes intercambiados es mínima.
• Es preferible un paquete grande a varios paquetes pequeños
• En la mayoria de las aplicaciones las operaciones de lectura son
predominantes, por lo cual su optimización es fundamental para un
buen rendimiento de la comunicación.
• Para reducir el número de paquetes intercambiados, es conveniente
que los registros o bobinas leídos 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 más conveniente
EXTENSIONES DE HARDWARE

• Existen en el mercado productos que permiten que más de un


master acceda a un esclavo, o que un master acceda a esclavos que
tienen diferentes configuraciones de comunicación

También podría gustarte