Download - Exposicion modbus rtu
1-Introducción
- El protocolo de comunicaciones industriales MODBUS debido a que es público,
relativamente sencillo de implementar y flexible se ha convertido en uno de los
protocolos de comunicaciones más populares en sistemas de automatización y
control. A parte de que muchos fabricantes utilizan este protocolo en sus
dispositivos, existen también versiones con pequeñas modificaciones o
adaptadas para otros entornos (como por eje. JBUS o MODBUS II )
- MODBUS especifica el procedimiento que el controlador y el esclavo utilizan
para intercambiar datos, el formato de estos datos, y como se tratan los
errores. No especifica estrictamente el tipo de red de comunicaciones a utilizar,
por lo que se puede implementar sobre redes basadas en Ethernet , RS-485,
RS-232 etc.
Las normas que especifican los padrones RS232 y RS485, sin
embargo, no especifican la secuencia de caracteres para la
transmisión y recepción de datos. En este sentido, además de
la interface, es necesario identificar también el protocolo
utilizado para la comunicación. Entre los diversos protocolos
existentes, un protocolo muy utilizado en la industria es el
protocolo Modbus.
Comunicación Maestro-Esclavo en MODBUS
-El MODBUS siempre funciona con un maestro y uno o más esclavos, siendo
el maestro quién controla en todo momento el inicio de la comunicación con
los esclavos, que según la especificación pueden ser hasta 247 en una misma
red. El esclavo por otro lado se limita a retornar los datos solicitados por el
maestro, así de simple es la comunicación usando el MODBUS, el maestro
envía los mensajes y el respectivo esclavo los responde.
- Cada esclavo debe tener una única dirección, así el maestro sabe con
quién se debe comunicar. Vea la animación siguiente, observe cómo
funciona el envió de mensajes entre el maestro y el esclavo tome en
cuenta lo siguiente:
1.- Cada esclavo tiene su propia dirección, que puede ir desde 1
hasta 247.
2.-El maestro siempre inicia la comunicación enviando un paquete de
información bien estructurado a todos los esclavos, entre otras
muchas cosas en la información se incluye el número del esclavo.
3.-El esclavo elegido responde, enviando lo que se le pide por medio
también de un paquete de información bien estructurado.
MODbus usa una representacion «big-ending» para direcciones o datos,
formato en el cual el byte mas significativo se encuentra primero
VENTAJAS
Modos de Transmisión del MODBUS
Los modos de transmisión definen como se envían los paquetes de
datos entre maestros y esclavos, el protocolo MODBUS define dos
principales modos de transmisión:
MODBUS RTU(Remote Terminl Unit). La comunicación entre
dispositivos se realiza por medio de datos binarios. Esta es la opción
más usada del protocolo y es la que se implemento en nuestras tarjetas.
MODBUS ASCII (American Standard Code for Information Interchange).
La comunicación entre dispositivos se hace por medio de caracteres
ASCII.
MODOS DE TRANSMISIÓN
Campos de las tramas MODBUS
El número de campos de las tramas MODBUS varía ligeramente
dependiendo de si utilizamos la codificación ASCII o RTU:
Codificación RTU(Terminal de Unidad Remota) (en el formato
binario, el inicio de trama debería ser tras 3.5 tiempo de carácter):
-Nº Esclavo: 1 byte con la dirección del esclavo destino ( o origen ) de la
trama
-Código Operación: 1 byte con el código de operación
-Sub funciones Datos: con los parámetros necesarios para realizar la
operación.
-CRC(16): H L (representan 2 bytes )
ESTRUCTURA DE LOS MENSAJES EN EL
MODO RTULa red Modbus-RTU utiliza el sistema maestro-esclavo para el
intercambio de mensajes. Permite hasta 247esclavos, más
solamente un maestro. Toda comunicación inicia con el maestro
haciendo una solicitación a un esclavo, y este contesta al
maestro el que fue solicitado. En ambos los telegramas
(pregunta y respuesta), la
estructura utilizada es la misma: Dirección, Código de la
Función, Datos y Checksum. Solo el contenido de los datos
posee tamaño variable
ESTRUCTURA MODBUS RTUCuando se realiza la configuración de los controladores en modo RTU. La
mayor ventaja de este modo es que mayor sea la densidad de caracteres
permite un mejor rendimiento que con los datos ASCII, para la misma
velocidad de transmisión.
Cada mensaje debe ser transmitido en tramas continuas. El formato para
cada byte en modo RTU es:
8 bits binarios, hexadecimal 0-9, A-F.
Dos caracteres hexadecimales contenidos en 8 bits del campo del
mensaje.
Bits por Byte:
• 1 bit de inicio
• 8 bits de datos, los bits menos significativos se envían primero.
• 1 bit paridad par/impar, ningún bit para no paridad.
• 1 bit stop si la paridad es usada, 2 bits si no hay paridad
• Detección de errores:
Utiliza datos binarios.
ESTRUCTURA MODBUS RTU
Silencio
Dirección
Función
Datos
Detección de errores (CRC)
DirecciónEl maestro inicia la comunicación enviando un byte con la dirección del esclavo
para el cual se destina el mensaje.
Al enviar la respuesta, el esclavo también inicia el telegrama con el su propia
dirección, posibilitando que el maestro conozca cual esclavo está enviándole la
respuesta.
Representación de datos en MODBUS
El protocolo MODBUS usa el concepto de tablas de datos para
almacenar la información en un esclavo, una tabla de datos no es más
que un bloque de memoria usado para almacenar datos en el esclavo,
las tablas de datos que usa en MODUS son cuatro y se muestran en la
siguiente tabla:
Observe que hay dos direcciones, una es usada para diferenciar entre
las tablas de datos, la llamamos dirección MODBUS y la otra es la
dirección usada en la comunicación entre el maestro y el esclavo, está
es la dirección usada en la trama o paquetes de datos enviados entre
maestros y esclavos,
Output Coils
En MODBUS un coil representa un valor booleano típicamente usado
para representar una salida, solo hay dos estados para el coil el ON y el
OFF. Por ejemplo la tarjeta de relevadores usa dos coils, para activar o
desactivar precisamente dos relevadores.
El coil entonces, puede verse como una celda o un bloquecito de
memoria que me permite almacenar el estado de un bit, que puede tener
solo dos valores como se vio arriba, el ON o el OFF, o en lógica binaria,
un 1 o un 0, o más cerca de la realidad física, tierra (0 Volts) y voltaje (5
Volts), como el lector quiera verlo, eso sí debe quedar claro que son solo
dos valores por cada coil.
En las figuras se muestra varias tarjetas de relevadores como esclavos y un
registro electrónico como maestro.
Capa Física RS-485
Medio: Cable de par trenzado apantallado.
Topología: Bus.
Distancia: máx. 1300 m., entre repetidores.
Velocidad: 1200 bps/56Kbps.
Nodos: 32 (1 master y 31 esclavos)
Conectores: RJ-45, SUB-DB9
Capa de Enlace
Método de acceso al medio:
master/eslave.
Método de transmisión: Cliente-Servidor.
Seguridad en la transmisión:
CRC y LCR
Bit de Start y Stop
Bit de paridad
Flujo continuo (control de flujo)