Вы находитесь на странице: 1из 25

UNIVERSIDAD DE LAS FUERZAS ARMADAS

ESPE EXTENSIÓN LATACUNGA


DEPARTAMENTO DE ELECTRÍCA Y ELECTRÓNICA
INFORME PRÁCTICA

CÓDIGO DE LA
CARRERA NOMBRE DE LA ASIGNATURA
ASIGNATURA
Electrónica e
1945 CONTROL DE PROCESOS
Instrumentación

Alulema Garzón Juan C.


Bautista Reinoso Gabriela A.
Caicedo Arroyo Jhonathan A.
Castillo Carrión Daniel A.
DURACIÓN
PRÁCTICA N° INTEGRANTES: Chicaiza William D.
(HORAS)
Chuquitarco Alexandra
Guamán Gualpa Jaime S.
Guanoluisa Mendoza Johana F.
Herrera Román Danny F.
Implementación de una red Modbus para
1 TEMA: el control de las plantas: temperatura de 2
flujo de aire.

1 OBJETIVO GENERAL
Conocer la dinámica de los procesos de las estaciones de temperatura de flujo de aire.
1.1 OBJETIVOS ESPECÍFICOS
 Reconocer todos los equipos de la cada una de las estaciones.
 Manipular las válvulas manuales para mantener en un valor de referencia las variables.
 Entender la importancia de la automatización de los procesos industriales.

3 RESUMEN
En la presente práctica se tiene como objetivo conocer la dinámica de los procesos de las estaciones:
temperatura, nivel, presión y flujo mediante la manipulación de válvulas manuales, para así procurar
mantener en un punto estable dichas variables. En la realización de la práctica se verificara la
importancia de contar con un control automático en los procesos industriales.

ABSTRACT
In the present practice, the aim is to know the dynamics of the processes of the stations: temperature,
level, pressure and flow by manipulating manual valves, in order to try to keep these variables stable.
In the realization of the practice will be verified the importance of having an automatic control in the
industrial processes.

3 EQUIPOS E INSTRUCCIONES

A. EQUIPO Y MATERIALES NECESARIOS

 2 Módulos de temperatura por flujo de aire


 PLC S7 200, CPU 224, 226,226
 Cable Modbus
 Módulo EM 235
 Cable PPI
 Conversor serial/USB
 Cables
B. TRABAJO PREPARATORIO
MODBUS
El protocolo de comunicaciones industriales MODBUS fue desarrollado en 1979 por la empresa
norteamericana MODICON y 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.

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.

El objeto del protocolo Modbus es bien sencillo: La transmisión de información entre distintos equipos
electrónicos conectados a un mismo bus. Existiendo en dicho bus un solo dispositivo maestro (Master)
y varios equipos esclavos (Slaves) conectados.

El hecho que se haya extendido su uso hasta convertirse en el protocolo más estandarizado en el sector
industrial se debe a varias razones diferenciales respecto a otros protocolos:

El estándar Modbus es público, lo que permite a los fabricantes desarrollar dispositivos tanto Master
como Slave sin royalties aplicados al protocolo. Este hecho facilita el acceso a la información y
estructura del protocolo que, además, es muy básica pero funcional para su objetivo.
Desde un punto de vista técnico, su implementación es muy sencilla y en consecuencia el tiempo de
desarrollo se acorta considerablemente respecto a otros protocolos en los que se complica la estructura
de las tramas y en consecuencia el acceso a los datos que no están almacenados en estructuras
complejas.
La transmisión de información no está comprometida a ningún tipo de datos. Lo que implica cierta
flexibilidad a la hora del intercambio de información. Que quiere decir esto? Para expresarlo de forma
más clara, si se transmite un dato de 16bits de información su representación no está sujeta a ninguna
restricción, por lo que puede tratarse de un dato tipo Word con signo, un entero sin signo de 16bits o la
parte alta de una representación tipo Float de 32bits, etc.La representación del valor vendrá definida por
la especificación que el fabricante dé del dispositivo, lo que permite la representación de un amplio
rango de valores.

Funcionamiento y elementos de una red ModBUS

El funcionamiento tiene una base muy sencilla: El Master pregunta y los Slaves responden o actúan en
función de lo que este diga.
Un dispositivo conectado al bus ejerce de maestro solicitando información del resto de dispositivos
conectados que ejercen como esclavos y son quienes suministran la información al primero. Según el
estándar Modbus y dada su implementación, en una red Modbus habrá un Master y hasta un máximo
de 247 dispositivos Slaves. Esta limitación está determinada por el simple hecho que en una trama
Modbus la dirección del esclavo se representa con un solo Byte, existiendo algunas direcciones
reservadas para propósitos específicos como broadcast, etc. Todo a su tiempo.

Lo dicho, en una red Modbus todos los dispositivos esclavos deben tener una dirección asignada que
debe estar comprendida entre la 1 y la 247.Desde un punto de vista práctico, no pueden co-existir dos
dispositivos esclavos con la misma dirección Modbus. Dentro de la trama Modbus RTU, la dirección del
esclavo corresponde al primer byte. En una red Modbus el Master no sólo puede ejercer la función de
recompilar información de los esclavos mediante preguntas, sino que puede interactuar con ellos o
alterar su estado, pudiendo escribir además de leer información en cualquiera de ellos.

Con el paso de los años y según la evolución de las redes de comunicaciones entre dispositivos
electrónicos, así como de la conectividad entre dispositivos, han ido apareciendo variantes del protocolo
Modbus que estaba pensado en su inicio para redes implementadas sobre líneas serie. La evolución
más utilizada/conocida es la que se conoce como Modbus TCP, una “versión” del protocolo Modbus
que permite la implementación de este protocolo sobre redes Ethernet i, en consecuencia, aumenta el
grado de conectividad. Está “versión” del protocolo encapsula la trama base del protocolo Modbus en la
capa de aplicación TCP/IP de forma sencilla. Con un poco de tiempo colgaré la estrucura a nivel de byte
de las tramas Modbus RTU y Mobus TCP.

4 ACTIVIDADES A DESARROLLAR

IMPLEMENTACIÓN FÍSICA DE LA RED


1. Realizar las conexiones del diagrama de lazo que se visualiza en la Figura 1.

Figura 1. Diagrama de lazo de la red Modbus


2. Conectar el Cable Modbus al PLC S7 200 CPU 224 y a los PLC S7 200 CPU 226 al
puerto 0 ya que el puerto 1 se lo va a utilizar para el cable PPI, tomar en cuenta que se
debe primero programar el PLC S7 200 CPU 200 para luego conectarlo a la red ya que
solo cuenta con un puerto de comunicación.

Figura 2. Conexión del cable Modbus a los PLC`s


3. Conectar los PLC S7 200 CPU 226 con el cable PPI a la PC, una vez realizado esto conectar
todos los PLC’s a la alimentación.

Figura 3. Conexión del module de temperatura por control de flujo con el PLC (Esclavo)

RECONOCIMIENTO DEL PLC


1. Abrir el STEP 7- Micro/WIN.

2. Conectar físicamente el PLC con la computadora a través del cable PPI y la ayuda de un
conversor de serial a USB.

3. Dirigirse a Comunicación, abrir en el signo más y dar doble clic en Comunicación.


4. Dirigirse a Mi PC, dar clic derecho y abrir las propiedades, dirigirse a Hardware y dar clic en
“Administrador de dispositivos”. Ver en puertos en que puerto se encuentra conectado el PLC.

5. Dirigirse al botón “Ajustar Interface PG/PC” dar clic, dirigirse a propiedades, ahí se debe
elegir el puerto en el que se encuentra conectado el PLC y se acepta todo.

6. Dirigirse “Haga doble clic para actualizar” y dar doble clic y esperar hasta que se
encuentre al PLC y se acepta.
PROGRAMACIÓN DEL MAESTRO
1. Para programar el maestro se tiene que tomar en cuenta que se tienen dos esclavos y que se
requiere realizar una escritura desde el maestro y luego escuchar al primer esclavo, después
realizar lo mismo para el siguiente esclavo. Para poder realizar esto se requiere generar una
señal tren de pulsos con cuatro marcas, cada marca activa los mensajes de la red MBUS_MSG
en cada flanco positivo dando un tiempo adecuado entre la activación de las marcas y por ende
del envío y recepción de los datos.

2. Una vez generado el tren de pulsos ahora procedemos a configurar al maestro para que se
comunique en la red Modbus a través del MBUS_CTRL, se tiene que tomar en cuenta la velocidad
y la paridad que vamos a utilizar para poner los mismo datos en los esclavos.
3. Para realizar el envío y recepción de datos se requiere utilizar del MBUS_MSG, aquí se va a
configurar los siguientes aspectos como son: Slave al cual ponemos el número del esclavo al que
va dirigido el mensaje o del cual recibe el mensaje; RW 0 para lectura y 1 para escritura; Addr la
dirección de inicio de Modbus una diferente para cada mensaje se utiliza direcciones desde la
40001 - 49999 que son de tipo Registro pero utilizamos a partir de la 40002; Count = 1; DataPtr
es el puntero al inicio de la memoria de variables el cuál se calcula con la siguiente fórmula:
Esclavo 1 (Slave 2):
Escritura:
MaxHold >= Addr - 40001 + Count = 40002 - 40001 + 1 = 2
Lectura:

Esclavo 2 (Slave 3):


Escritura:
MaxHold >= Addr - 40001 + Count = 40003 - 40001 + 1 = 3
Lectura

Los bloques quedan configurados de la siguiente manera:


4. Asignamos el valor de la variable VW42 que es leída desde Labview y la enviamos hacia el esclavo
1, en la variable VW2 asignada anteriormente, de igual se asigna el valor de la variable VW46 que
es leída desde el HMI y la enviamos hacia el esclavo 2, en la variable VW6, y la lectura de los dos
esclavos se las variables VD4 Y VD8 para el esclavo 1 y 2 respectivamente, las mismas que son
movidas a otras localidades las cuales serán asociadas al HMI en la Labview

DIRECCIONAMIENTO DE MEMORIA PARA LAS LIBRERÍAS

5. Después de la configuración de la red, se debe especificar la memoria para la librería dentro


de la carpeta para los módulos en el contenedor del programa del Micro/WIN. Hay que tener
en cuenta al reservar la memoria para las librerías que la zona seleccionada no se debe
sobrescribir la zona de memoria de variables para datos (en el maestro: "DataPtr" + "Count",
y en el esclavo: "HoldStart" + "MaxHold").

Figura 2. Direccionamiento de memoria para el protocolo Modbus

Para la comunicación MODBUS, se utilizan los módulos de librería "MBUS_CTRL" y


"MBUS_MSG" en la parte del maestro y los módulos de librería "MBUS_INIT" y "MBUS_SLAVE"
en la parte del esclavo.
Hay que tener en cuenta que los parámetros "Baud" y "Parity" deben ser idénticos y que la
dirección "Slave" del módulo "MBUS_MSG" debe coincidir con el parámetro "Addr" del módulo
"MBUS_INIT".
El ajuste de la velocidad de transferencia para el Port 0 en la vista "Módulo de datos del sistema"
del Micro/WIN es irrelevante para el protocolo MODBUS ("Mode" = "1").
Las siguientes tablas describen el significado y las posibilidades de selección de los parámetros de
los módulos de las librerías:
MAESTRO

MBUS_CTRL
Parámetro Significado Posibilidades de selección
EN Liberación
Mode Indicación del protocolo 0 = PPI, 1 = MODBUS
Baud Velocidad de transmisión en kbit/s 1200, 2400, 4800, 9600, 19200, 38400,
57600, 115200
Parity Paridad 0 = Ninguna, 1 = impar, 2 = par
Timeout Tiempo máximo para la respuesta
del esclavo en ms
Done Aviso de finalización
Error Código de error
MBUS_MSG

Parámetro Significado Posibilidades de selección


EN Liberación
First Activación
Slave Dirección del esclavo
RW "lectura" o "escritura" 0 = lectura, 1 = escritura
Addr Dirección de inicio en MOBDUS 0 ... 128 = Salidas digitales A0.0 .. A15.7
10001 .. 10128 = Entradas digitales
E0
.0
.. E15.7
30001 .. 30092 = Entradas
Count Número de bits (0xxxx, 1xxxx) / analógicas AEW0 .. AEW62
Palabras (3xxxx, 4xxxx) 40001 .. 49999 = Registros

DataPtr Puntero al inicio de la memoria


de variables
Done Aviso de finalización
Error Código de error

PROGRAMACIÓN DEL ESCLAVO 1


6. Para programar al esclavo se requiere configurar el MBUS_INIT y el MBUS_SLAVE, para el
MBUS_INIT se debe configurar: Mode =1 para Modbus; Addr que es la dirección que tiene el
esclavo, es decir su nombre; la velocidad y paridad que debe ser la misma del maestro; Delay =0;
MaxIQ = 128 que es el número de entradas y salidas digitales disponibles; MaxAI que es el
número de palabras analógicas disponibles; MaxHold el cual se calcula con la siguiente fórmula
de acuerdo a la dirección que da el maestro y es el número máximo de entradas de palabras en
los registros; HoldST = &VB0 que indica la dirección de inicio de la memoria de variables
equivalente a la dirección de inicio del puntero 40001.
La siguiente tabla describen el significado y las posibilidades de selección de los parámetros de
los módulos de las librerías:
ESCLAVO 1 y 2

MBUS_INIT
Parámetro Significado Posibilidades de selección
EN Liberación
Mode Indicación del protocolo 0 = PPI, 1 = MODBUS
Addr Dirección del esclavo
Baud Velocidad de transferencia en kbit/s 1200, 2400, 4800, 9600, 19200, 38400,
57600, 115200
Parity Paridad 0 = Ninguna, 1 = impar, 2 = par
Delay Protocolización de la señal en ms
MaxIQ Número de entradas y salidas
digitales disponibles
MaxAI Número de palabras analógicas
disponibles
MaxHold Número máximo de entradas de palabras
en los registros
HoldStart Puntero al comienzo de los registros
(40001)
Done Aviso de finalización
Error Código de error
Las direcciones reales máximas que se pueden utilizar dependen el tipo de CPU y de sus valores
máximos.
MBUS_SLAVE
Parámetro Significado Posibilidades de selección
EN Liberación
Done Aviso de finalización
Error Código de error
PROGRAMACIÓN DEL ESCLAVO 1 y 2
1. Para programar al esclavo se requiere configurar el MBUS_INIT y el MBUS_SLAVE, para el
MBUS_INIT se debe configurar: Mode =1 para Modbus; Addr que es la dirección que tiene el
esclavo, es decir su nombre; la velocidad y paridad que debe ser la misma del maestro; Delay =0;
MaxIQ = 128 que es el número de entradas y salidas digitales disponibles; MaxAI que es el
número de palabras analógicas disponibles; MaxHold el cual se calcula con la siguiente fórmula
de acuerdo a la dirección que da el maestro y es el número máximo de entradas de palabras en
los registros; HoldST = &VB0 que indica la dirección de inicio de la memoria de variables
equivalente a la dirección de inicio del puntero 40001.

Para recibir el set point enviado por el maestro se lo realiza en la localidad de 6, el valor recibido
se la coloca en la localidad 240 para poder enviar los datos al labiew y poder visualizarlo dentro
de un HMI.

Para poder realizar un control PID se realiza un escalado es cual tiene a su entrada un valor de 0
a 5V ell cual equivale de 0 a 32760 bits, esto se identifica de 20 a 70 °C.

Escalamiento del PV del proceso:


𝑇2 − 𝑇1
𝑚=
𝐷𝑡2 − 𝐷𝑡1
70 − 20 50
𝑚= =
32760 − 0 32760
5
𝑚=
3276
𝑇1 − 𝑇0 = 𝑚(𝐷𝑡2 − 𝐷𝑡𝑜)

5
𝑇1 − 20 = (𝐷𝑡2 − 0)
3276
5
𝑇1 = 𝐷𝑡2 + 20
3276

Para poder realizar el envio de PV al momento que el maestro pida una respuesta se lo va a realizar en la
localidad 8, y el PID se lo va a realizar con la lectura de la entrada AIW0 y la salida en VW300 la misma
que va a ser enviada a la AQW0 de plc s7-200.

Mientras para realizar el control se debe enviar un dato de salida de 0 a 100 % que es el process value
cuyo valor en bits es de 0 a 32760.
Escalamiento del CV del proceso:

𝑇2 − 𝑇1
𝑚=
𝐷𝑡2 − 𝐷𝑡1
100 − 0 100
𝑚= =
32760 − 0 32760
10
𝑚=
3276
𝑇1 + 0 = 𝑚(𝐷𝑡2 − 𝐷𝑡𝑜)

10
𝑇1 = (𝐷𝑡2 − 0)
3276
5
𝑇1 = 𝐷𝑡2
3276
CONFIGURACIÓN DEL PID
1. Dirigirse en MicroWIN a Herramientas/ Asistente de operaciones

2. Elegir PID y dar siguiente.

3. Elegir 0 en el lazo del PID


4. Se colocan los rangos inferiores y superiores a los que la estación se encuentra en nuestro caso
son de 20 a 70 °C.

5. Los escalamientos deben ser unipolares como se muestra a continuación.

Para el esclavo 1 los límites son: Ls=16863 y Li=0


Para el esclavo 2 los límites son: Ls=32670 y Li=0
6. Dar clic en siguiente, no se configura nada en esta ventana.

7. Se asigna direcciones de memoria diferentes a las que se utilizan en el programa


8. Se puede cambiar de nombre del PID o dar siguiente

9. Se finaliza el asistente y se puede sacar el bloque PID desde las subrutinas.

CONFIGURACIÓN DEL OPC


1. Se va a utilizar el KEPServer, se lo abre y se da clic en add cannel, para añadir un canal.

2. Se pone el nombre del canal y dar clic en siguiente.


3. Elegir el PLC que se está ocupando S7 200.

4. Elegir el COM en el que se encuentra el PLC y la velocidad a la que se va a trabajar. El COM se


puede ver en Propiedades del Sistema/ Administrador de dispositivos/ Puertos.

5. Dar clic en siguiente.


6. Elegir el Master ID en 0.

7. Finaliza la configuración del canal.


8. Añadir un dispositivo, le damos un nombre y clic en siguiente.

9. Elegir el PLC que se está utilizando.

10. Colocar 2 en Device ID.

11. Dar clic lo demás en siguiente y finalizar la configuración del dispositivo.


12. Crear la tag en la cual se pone el nombre y en la dirección la localidad que se utiliza en el
programa.
13. Crear las demás tags.

14. Dar clic en el martillo OPC, y verificar el estado de conexión y estado de los tags creados.
HMI EN LABVIEW
1. Para la programación se requiere indicadores numéricos para las variables de procesos y
controladores numéricos para las constantes de sintonización.

2. Se da clic derecho en el indicador o controlador numérico y se dirige a propiedades, se va a


Data Binding, se elige ahí DataSocket, Acces Type Read/Write, en browse se elige
DSTP/SERVER

3. Se asignan todas las variables y se corre el programa.


Figura 4. HMI esclavo 2

En el HMI se puede observar que se tiene un error entre el PV y el SP de:


error = PV − SP
error = 58.144 − 57.832
error = 0.312
Esto quiere decir que está dentro de un rango aceptable para el control PID, por lo que la
constantes de sintonización halladas son las adecuadas para realizar el control.
KP = 3.01583
TI = 0.158333
TD = 0.039833

5 CONCLUSIONES Y RECOMENDACIONES

CONCLUSIONES:

 La implementación de una red industrial mediante la utilización de Modbus se simplifica con


la existencia de librerías propias para la programación de los PLC en este caso integradas
en MicroWin.
 La implementación de la red Modbus de acuerdo al número de esclavos que contenga la
red necesita la creación de un tren de pulsos que habilite bien sea la escritura o la lectura
de datos en cada uno de los esclavos y que esto no produzca un colapso de datos.
 Para establecer la comunicación apropiadamente, es necesario que en los esclavos se
realice el cálculo de MaxHold, el mismo que permite comunicar a cada esclavo con el master
y realizar el intercambio de información.
 Para la asociación de tags en el kep server no se debe tomar las mismas localidades que
se utilizan para realizar el intercambio de set point, process value y control value; cuando
se coloca las mismas localidades, existe sobreescritura de datos y conflicto con la
comunicación.

RECOMENDACIONES:
 Conectar al PLC en el puerto 0 para la red Modbus mientras que el puerto 1 se utiliza para
la conexión del PLC con el programador, es decir, el cable PPI.
 Tener en cuenta las localidades de memoria que se utilizan para las constantes de los
controles PID, ya que no se puede utilizar las mismas para realizar operaciones internas
del PLC.
 Se debe comprobar que la asignación de memoria sea correcta para la realización del
proyecto, ya que puede causar conflicto desde el momento de compilación, así como para
la implementación de la comunicación.

6 REFERENCIAS BIBLIOGRÁFICAS Y DE LA WEB


 http://plc-hmi-scadas.com/059.php
 http://plc-hmi-scadas.com/060.php
 http://www.infoplc.net/foro/showthread.php?3643-comunicacion-modbus-s7200
 https://w5.siemens.com/spain/web/es/industry/automatizacion/simatic/Documents/
S7200ManualSistema.pdf

Latacunga 25 de Enero del 2017

Вам также может понравиться