Está en la página 1de 9

ELECTRICIDAD

Y
ELECTRONICA

TRABAJO MODBUS

NOMBRE: Leonardo Maliqueo


CARRERA: INGENIERIA EN AUTOMATIZACION Y CONTROL INDUSTRIAL
ASIGNATURA: INTEGRACION DE REDES INDUTRIALES
PROFESOR: PABLO PINEDA ANIBAL VADEBENITO
FECHA: 2/06/2020
I.-Defina los siguientes conceptos (10 puntos)
1.- Datagrama Modbus
Un datagrama es un fragmento de paquete que es enviado con la suficiente información
como para que la red pueda simplemente encaminar el fragmento hacia el Equipo
Terminal de Datos (ETD) receptor, de manera independiente a los fragmentos restantes.
Esto no garantiza que los paquetes lleguen en el orden adecuado o que todos lleguen a
destino. Modbus es un protocolo de comunicaciones, basado en la arquitectura maestro/esclavo
o cliente/servidor, diseñado en 1979 por Módico para su gama de controladores lógicos
programables

3.- Control de errores RLC/CRC


- Control de errores LRC o CRC: Se utiliza un sistema de detección de errores
diferente dependiendo del tipo de codificación utilizado (ASCII o RTU). En el caso de la
codificación ASCII es el checksum (o Longitud Redundancy Check LRC) en módulo 16
expresado en ASCII (2 caracteres representan 1 byte), sin considerar el ":" ni el “CR LF”
de la trama. En la codificación RTU se utiliza el método de CRC (Cyclical Redundancy
Check) codificado en 2 bytes (16 bits).

Para calcular el CRC se carga un registro de 16 bits todo con '1's, se hace OR con cada
uno de los caracteres de 8 bits con el contenido de cada byte y el resultado se desplaza
un bit a la izquierda insertando un 0 en la posición de menos peso (la de la derecha). El
de la izquierda se extrae y se examina: si es 1 se vuelve a hacer OR con un valor
prefijado, si es 0 no se hace ninguna OR... y el proceso se repite hasta que se han
hecho los 8 shifts del byte. La siguiente es una implementación en C de la función de
cálculo del CRC (modo RTU):
4.- Red maestro/Esclavo
El maestro:
puede direccional esclavos individuales, o puede iniciar un mensaje a todos los
dispositivos esclavos (broadcast). Los esclavos regresan un mensaje (llamado
respuesta) a preguntas que son dirigidas a ellos individualmente.
Los esclavos:
no regresaran respuestas cuando el maestro envía un mensaje a todos los dispositivos
(un broadcast).
5.- Dirección Modbus
- Dirección, datos y subfunciones (n bytes): Este campo contiene la información
necesaria para realizar la operación indicada en el código de operación. Cada operación
necesitará de unos parámetros u otros, por lo que el número de bytes de este campo
variará según la operación a realizar. En el caso del esclavo, este puede responder con
tramas con o sin campo de datos dependiendo de la operación. En los casos en que se
produzca algún error es posible que el esclavo responda con un byte extra para
especificar el código de error.
Al establecer la dirección de una variable u otro elemento en el mapa de direcciones
MODBUS, direccionamos con 1 unidad menos a la del registro al que queremos
acceder, de manera que si p.ej. quisiéramos acceder al relé @ 127d, lo haríamos
situando el valor 126d en el byte del campo de dirección. Otros ejemplos:

II.- Explique en qué casos se recomienda usar MODBUS RTU y en qué casos se
recomienda usar MODBUS ASCII (10 puntos)
Modbus RTU — Es la implementación más común disponible para Modbus. Se utiliza en
la comunicación serie y hace uso de una representación binaria compacta de los datos
para el protocolo de comunicación.
Modbus ASCII — Se utiliza en la comunicación serie y hace uso de
caracteres ASCII para el protocolo de comunicación. El formato ASCII utiliza un
checksum de control de redundancia longitudinal (LRC). Los mensajes Modbus ASCII
están entramados por los dos puntos principales (":") y la nueva línea (CR/LF).

III.- Si se conecta un PLC a una pantalla HMI, por modbus ascii sobre RS485,
complete la tabla con los parámetros de configuración para cada uno (10 puntos)

Parámetro PLC HMI


Comunicación Serial RS485 RS485
Baudios 9600 9600
Nº de Bit 8 8
Bit de Parada * 1 1
Bit de Stop 1 1
Parámetros Modbus
Dirección 2 1
Modo Slave Máster
Detección de errores LRC LRC

IV.- En la misma conexión del problema anterior, describa como podría la pantalla
HMI, activar una salida del PLC, en función a la información del datagrama
MODBUS (10 puntos)

Se debe configurar el HMI como Maestro y asignarle una dirección de Esclavo al


PLC. En el PLC se crea un registro, una marca, y se instruye que lo que este en este
registro sea copiado en la salida del PLC, esto porque por defecto no se puede tener
acceso directo al área de entradas y salidas del PLC por medio de comunicación
Modbus. La marca creada tendrá una dirección Modbus, preestablecida, que es la que
utilizará el HMI para direccionar la función a realizar. En la pantalla se configura la
dirección Modbus de la marca del PLC y se envía la función de escritura a través de un
Bit, ON-OFF, para activar esta marca y mover el registro, Bit, a la salida configurada en
el PLC.
En función de la información de la trama Modbus en modo ACSII
ARRANQUE DIRECCIÓN FUNCIÓN DATOS COMPROBA FINAL
CIÓN LRC
1 2 2 N CARACTER 2 CARACTER 2 CARÁCTER
CARÁCTER CARACTER CARACTER CRLF

Ejemplo de mensaje enviado de maestro a esclavo nº1 con función de escritura


en el registro nº 3 del valor “27”.

Tx:000066- 3A 30 31 30 36 30 30 30 33 30 30 32 39 43 44
0D 0A
; 01 06 00030029
CD CRLF
Rx:000067- 3A 30 31 30 36 30 30 30 33 30 30 32 39 43
44 0D 0A
; 01 06 00030029
CD CRLF

(Realizado con software “Virtual Serial Ports Emulator”, “Modbus Poll” y “Modbus Slave”)

V.- Explique cómo puedo conocer la dirección de los recursos de un PLC (10
puntos)

En un PLC existen diferentes tipos de memoria y diferentes tipos de datos. Bit,


Word, Dword, floating. Las direcciones de los recursos de Modbus están establecidas
por tabla. En esta tabla cada recurso posee un rango de direcciones y el tipo de datos
que utiliza, de esta manera se protocolariza la comunicación entre diferentes
dispositivos. Cada dispositivo, que permita comunicación Modbus tiene su respectiva
tabla de direccionamiento.

VI.- Suponga que tiene conectada una red Modbus ASCII, entre un PLC, una HMI y
un VDF sobre RS485 (10 puntos)
Introducción:
El objetivo de este ejemplo es comunicar entre ellos tres de los dispositivos
fundamentales de la sección de automatización de Delta. Un PLC, una Pantalla Táctil y
un Variador de frecuencia.
Hardware:
1 Variadores de velocidad VFD-L. Comunicacion RS485
1 Pantalla tactial DOP-A57GSTD desde la que se controlará el variador.
1 Automata DVP14SS.
Conexionado
Para conectar el PLC y la pantalla, el mismo cable de programación del PLC sirve, sólo
hay que comprar un conversor de DB9 macho a DB9 Hembra.
Por lo que respecta a la conexión entre el variador y la pantalla deberemos crear un
cable con terminal RJ11 por el lado del Variador y DB9 por el lado de la pantalla,
conectando simplemente los dos polos del RS485.

Configuración:
HMI DOP-A57CSTD
Para configurar las especificaciones de comunicación debemos ir al menú Options -
Configuration.
En la pestaña de Comunication. Allí debemos configurar las características de
configuración de la siguiente forma:
PLC DVP-14SS:
RS-232 (9600, 7, 1, E) en el COM1 para el PLC.
Variador VFD-L:
RS-232 (9600, 7, 1, E) en el COM1 para el PLC.
Las características a cambiar del variador són las siguientes:
2-00 ----------- d4 Dispositivo controlado por RS-485
9-00 ----------- 2 Dirección del Variador (slave 2)
9-01 ----------- d1 Velocidad de transmisión (9600 baudios)
9-04 ----------- d0 Características trama RS-485 (Modbus ASCII, protocolo <7,N,2>)
Programación:
Éste es un programa de ejemplo para demostrar la intercomunicación entre dispositivos
de Delta, por esta razón no tiene demasiada utilidad práctica, la única gracia es poder
controlar mediante la primera pantalla del HMI la velocidad del Inverter, y en la segunda
pantalla poder leer las entradas y salidas del PLC.
De la misma forma utilizamos las salidas del PLC para cambiar la velocidad del VCA
comunicando atraves de la pantalla.
Programación PLC:
EL PLC tiene un programa dónde simplemente al activar las diferentes salidas desde la
pantalla, se copia un valor numerico a un registro (D1) interno del PLC, el cual al pasar
por la pantalla, se copia dicho valor en el registro de frecuencia del variador
(Inverter2001H)
  Programa: Dvp0.dvp
Programación HMI:
El software de programación de la pantalla, es de lo más intuitivo. Simplemente coges el
tipo de objeto que quieres ver, cómo a nosotros nos interesa la velocidad cojeremos un
visor numerico "numeric display" y éste lo configuramos que lea al inverter de la
siguiente forma:

En el pantallazo podemos ver cómo configurar el dispositivo y la dirección dónde esta


asociada la velocidad, y no hay que hacer nada más.
En el caso de encender y apagar el variador,es un poco diferente, ya que se trata de un
bit.
Éste lo cambiaremos de valor mediante una macro.
La macro es una utilidad de programación para hacer pequeños programillas asociados,
no te va a servir para programar una máquina, pero te puede ahorrar mucha memoria de
plc. La forma de crearla es bien simple, primero debemos escoger cuando queremos
que se ejecute la macro, en nuestro caso va a ser al pulsar el boton de Start/Stop
Inverter, y queremos que se ejecute al encender y al apagar el pulsador, así clickamos
en edit on/off macro cómo la figura.
Allí al igual que lo hariamos en un PLC, programamos que el bit se ponga a uno u a dos
según queramos que se encienda o apague.
Para leer las salidas del PLC (las entradas
no se pueden forzar, lógicamente, por eso jugamos con las salidas, pero podrian ser
tranquilamente, marcas internas, temporizadores o contadores) primeramente creamos
una pantalla nueva "new screen" , y luego plantamos una série de pulsadores
asociandolos a las salidas del PLC, la forma de hacerlo es exactamente la misma que
con el variador.

Para entender lo que pasa al pulsar (activar) una de las salidas del PLC, debemos mirar
el programa del PLC, el cual mueve el valor de frecuencia fijo K1000 o K2000 (que
significa 10,00Hz o 20.00Hz) al registro D1.
Nosotros al activar la salida desde la pantalla movemos el valor del registro D1 al
registro interno del variador InverterH2001 el cual representa la frecuencia de
movimiento. Así se demuestra la sencillez de realizar un sistema de escritura lectura a
tres bandas.
Para realizar esta operación utilizamos una vez más las macros, dónde simplemente en
la macro que se ejecuta despues de pulsar el boton "after execute macro" introducimos
la siguiente macro:
(2#2@INVERTER-2001) = (1@D1)
La cual nos traslada la información de D1 a la dirección H2001 del inverter. -- Éspero que la
demo les sea útil, y para cualquier otra pregunta acerca de productos Delta, u otro tipo de
aplicación, contacten con nosotros.

También podría gustarte