PRÁCTICA MODBUS
Comunicación Modbus Serial
Y Modbus Ethernet
Modsim y Modscan
1
Contenido
Abreviaturas 3
Sistema 3
Arquitectura
Descripción General 4
Componentes
Hardware 5
Instalación Software 5
Comunicación 6
Introducción 7
Esquema de conexionado 8
Menú de configuración de registros 9
Menús ventanas y tipos de datos 9
Modbus serial
Comunicación 12
Coil status 15
Input status 17
Holding register 18
Trama Modbus serial 20
Modbus TCP/IP
Conexión 22
Trama en Modbus TCP/Ip 24
Graficas (Minis HMI) 25
Contacto 28
2
Abreviaturas
Expresión Significado
PLC Controlador Lógico Programable
ATV Variador de Velocidad Altívar
UTP Unshield Twisted Pair – Par Trenzado Apantallado
Sistema
Introducción
El sistema básicamente consiste en una red de campo (Modbus) orientada al
comunicación de hasta 32 nodos mediante un equipo maestro (Computador con
Modscan) y un equipo esclavo (Computador con Modsim). El sistema es capaz de realizar
acciones de control así como acciones de monitorización de usando algunas de la
funciones básicas de estos programas de simulación de Maestro y esclavos Modbus.
3
Arquitectura
Descripción general
La arquitectura que se ilustra a continuación describe una red RS232 3 hilos. La topología de
la red consta de dos equipos (Computador personal) para realizar la configuración conectada
a través de un cable cruzado punto a punto entre dos DTE.
4
Hardware
Descripción o
Componente Imagen
Esquemático
Computador Personal Estación de trabajo
Estación de Trabajo dispuesta para
Cantidad: 1 configurar y usar la red
RS232
Software
General
El software que se usará para la realización de la práctica es Modscan y Modsim, el cual es la
herramienta para monitoria y administrar redes Modbus Serial y Modbus TCP/ip.
Modscan y Modsim es un programa basado en Windows de 32 bits para un ordenador personal (PC)
que se ejecuta en los sistemas operativos Microsoft Windows 2000/XP Professional/Vista/7.
La configuración mínima necesaria para utilizar tanto el ModScan como el ModSim es la
siguiente:
Se recomienda un equipo con procesador Pentium a 1.2 GHz o superior.
Se recomienda 256 MB de RAM o más.
1 MB de espacio libre en el disco duro.
Sistema operativo: Windows 2000, Windows XP o Windows Vista/7
5
Comunicación
General
Se requieren básicamente cables RS232 con conector DB9 para realizar las conexiones entre
los dos dispositivos que pertenecen a la red. Además se necesita dos conversor USB-
RS232.
Listado de elementos
Cable Conexión
Conversor USB a RS232
Cantidad: Numero de nodos
Cable RS232 conector hembra DB9
Cantidad: Numero de nodos
6
Instalación
Introducción
Este capítulo describe los pasos necesarios para la instalación del hardware y para
cumplir con la siguiente arquitectura de la práctica.
Cable RS232 Señales.
En esta tabla describimos las diferentes señales usadas en RS232.
Pin Señal Descripción
1 DCD Detector de portadora
2 RXD Recepción datos
3 TxD Transmisión datos
4 DTR DTE listo
5 GND(SG) Señal de Referencia
6 DSR DCE listo
7 RTS Petición de envío
8 CTS Habilita envío
9 R Indicador de llamada
7
Esquema de conexionado
La tabla de conexionado que se muestra a continuación, describe todas las conexiones que
debe hacer para realizar la práctica.
Pin DB9 Señal 1 Pin DB9 Señal 2
1 DCD 1 NC
2 RXD 3 TxD
3 TxD 2 RXD
4 DTR 6 DSR
5 GND(SG) 5 GND(SG)
6 DSR 4 DTR
7 RTS 8 CTS
8 CTS 7 RTS
9 R 9 R
8
Menú de configuración de registros
A continuación encontraremos algunos menús de configuración
de el Modscan como del Modsim
Dirección del esclavo Modbus
Dirección del registro Número de peticiones hechas
Restablecer contador
Cantidad de registros Función Modbus
Menús ventanas y tipos de datos (algunas configuraciones)
Conexión o Definición de
desconexión datos Mostrar datos Mostrar Tramas
Formato de
visualización de datos
9
Haciendo clic sobre el icono podemos ver las tramas Modbus, en
color negro se ve la pregunta mientras que sin color se ve la
respuesta del esclavo Modbus.
En los iconos Formato de visualización de datos podemos
seleccionar el formato devisualización de los datos.
10
Cambiamos el tiempo del poolls para seleccionar cada cuanto
tiempo enviamos las tramas Modbus.
11
MODBUS SERIAL
Comunicación
Abrimos el programa ModScan32
Configuramos los parámetros de la red para establecer
comunicación atreves de una red RS485 o RS232
12
Abrimos el Modsim (esclavo Modbus)
Seleccionamos el puerto de comunicación serial (Depende de
donde esta conectado el cable).
13
Configuramos el puerto en el Modsim como se muestra en la figura
siguiente (HACIENDO ENFASIS EN QUE LOS PARAMETROS QUEDEN
IGUAL A LOS CONFIGURADOS EN EL MODSCAN).
14
Coil status
Seleccionamos el número de bobinas o entradas digitales que
queremos leer o escribir, así como la dirección del esclavo Modbus.
Modificamos el estado de cualquier bobina en este caso la bobina 1
la ponemos en ON, para hacer esto hacemos doble clic en el circulo
rojo.
Dirección del
esclavo Modbus
Dirección de memoria en el
esclavo
Estado de la bobina 1(ON) o
0(OFF)
15
Vemos como cambia el valor en el (esclavo Modbus).
Ahora queremos cambiar el valor de una bobina desde el esclavo
hacia el maestro de la misma forma hacemos doble clic sobre una
bobina.
Dirección de la memoria en
el Maestro
Vemos como cambia el valor en el maestro (Modscan).
16
Input status
Usamos la función dos de Modbus a diferencia de coil status esta
función no permite cambiar el valor desde el maestro solo el
esclavo puede modificar este valor. Es muy usado en aplicaciones
donde es necesario monitoria sensores ON-OFF ya que el solo da
reporte de su estado su valor no puede ser modificado.
Cambia el registro 1
17
Holding register
Como su nombre lo dice registro que mantienen, al escribir un valor
en este registro el queda guardado hasta ser modifica por un
esclavo o un maestro su valor va desde 0 a FFFF_H que es
equivalente 65535.
Al igual que en el caso anterior al hacer doble clic sobre el valor se
abre la ventana (Write register), donde se cambia el valor.
Dirección del
esclavo Modbus
Dirección del registro en la
memoria del Maestro
Valor asignado a la memoria
de esclavo
Al cambiar el valor en el registro vemos reflejado este nuevo valor
en el registro (1) uno del esclavo.
18
De la misma forma escribimos un registro pero desde el esclavo
hacia el Maestro.
Al mirar el registro 2 vemos como cambia su valor
Una vez terminada esta prueba hacemos lo mismo con la función 4
de Modbus INPUT REGISTER.
19
Trama Modbus serial
Al estar cambiando los datos lo que se cambia es la información
que mandamos por nuestra red Rs485 esta información se pueden
ver como unos y ceros, en forma hexadecimal, o decimal ente
otros.
La pregunta que hace el maestro al esclavo se ve en gris, mientras
que la respuesta se puede ver con un fondo negro.
PREGUNTA (MESTRO)
05 Dirección del esclavo (Device Id)
03 Función Modbus (HOLDING REGISTER)
00 00 Dirección desde donde comisó a leer (Address)
00 02 Numero de registro que voy a leer (Length)
C5 8f CRC (Código de chequeo de errores)
20
RESPUESTA (ESCLAVO)
05 Dirección del esclavo que responde (Device
Id) 03 Función Modbus (HOLDING REGISTER)
04 Número de bytes que retorno, 2 byte es una palabra.
00 64 Primer registro que leemos en hex decimal.
02 2E Segundo registró que leemos en hex decimal.
7F 50 CRC (Código de chequeo de errores).
Si cambiamos los datos vemos como estos campos cambian.
Dependiendo de la función Modbus esta trama va cambiando en
su forma.
Para comprobar el chequeo de errores podemos verificarlo con el
programa Hexterminal haciendo doble clic en CRC16
eh ingresamos los datos para los cuales queremos calcular nuestro
CRC en este caso la respuesta de el esclavo.
Como podemos ver este numero es igual al el chequeo de errores
que manda el Modsim.
21
MODBUS TCP/IP
Conexión
Verificamos la dirección Ip en los esclavos de la red, abriendo la
ventana de comandos CMD, ingresamos en comando IPconfig,
donde podremos ver nuestra dirección IP.
Ahora abrimos conexión y nos conectamos por remote TCP/ip.
22
Ingresamos la dirección Ip del equipo con el que nos vamos a
conectar y el puerto que para Modbus TCP/ip que siempre es 502.
Dirección TCP/ip
del esclavo Modbus
Puerto Modbus
TCP/ip
De la misma forma vamos a connect y seleccionamos Modbus/TCP,
en este caso no es necesario ingresar la dirección Ip del maestro ya
que simplemente el abre el puerto esperando que alguien se
comunique con el.
23
Trama en Modbus TCP/Ip
Hacemos las mimas pruebas con cada una de las funciones Modbus
y cambiamos al modo Show traffic , vemos que a la misma trama
se le agregan otros valores que corresponden a la capa de enlace
de Ethernet.
Modbus On TCP-ip Application Data Unit
MBAP Header
d8 00 Identificador de transferencia
00 00 Identificador del protocolo (Modbus 00 00)
00 06 Numero de bytes que se envían a
continuación 05 Dirección del esclavo que responde
(Device Id)
El resto de parámetros es igual a la trama seriales.
24
Graficas (Minis HMI)
File
Costume forms
Hacemos un recuadro del tamano que queremos nuetra grafica,
seleccionando Simple Trend Chart para hacer nuestra grafica.
Marcamos los campos tal cual están en la figura
2. Colores de la
1 .Cada cuanto
tiempo hace la
3. hacemos clic para
seleccionar la
información que
vamos a pintar
25
Ingresamos la información necesaria para la grafica que se va a
pintar.
Cambiamos el color
de nuestra linea
Valor máximo de la
Habilitamos esta grafica
trasa
Valor mínimo de la
grafica
Formato del
registro, en este
caso le damos
HOLDING REGISTER
Dirección del
esclavo de donde
esta la información Formato del dato
entero sin signo
Dirección del
registro donde leo
los datos
Le damos Ok y después Update.
26
En el esclavo (Modsim) vamos a simular el cambio de un valor
aleatorio para ir viendo la grafica como cambia.
En el maestro vemos como va cambiando el valor de nuestra
grafica.
27