BC Tes 4171
BC Tes 4171
BC Tes 4171
TESIS
Para optar por el Título Profesional de INGENIERO ELECTRÓNICO
PRESENTADA POR:
ASESOR:
LAMBAYEQUE -PERÚ
2015
UNIVERSIDAD NACIONAL PEDRO RUIZ GALLO
TESIS
Para obtar por el Título Profesional de INGENIERO ELECTRÓNICO
PRESENTADA POR:
ASESOR:
LAMBAYEQUE- PERÚ
2015
DISEÑO E IMPLEMTENTACION DE UN SISTEMA SCADA CON EL PLC MODICON
M340 PARA EL CONTROL PID DE LA PLANTA DE PRESIÓN DE LA ESCUELA
PROFESIONL DE INGENIERfA ELECTRÓNICA DE LA UNIVERSIDAD NACIONAL
PEDRO RUIZ GALLO, UTILIZANDO SOFTWARE LIBRE.
1'
lng. Manuel Javier Ramírez Castro lng. Hugo Javier Chiclayo Padilla
Presidente Secretario
ALONSO PISCOYA
iii
A Dios por derramar muchas bendiciones
en mí y en mi hermosa familia.
MARLONVEGA
iv
AGRADECIMIENTO
Al lng. Víctor Jara Sandoval, nuestro asesor, quien nos apoyó desde el plantea-
miento del proyecto, y estuvo presente en cada paso durante el desarrollo del mismo, dan-
do sus consejos y ayudándonos a sobrellevar cada inconveniente que encontramos en el
proceso.
Al lng. David Aguirre Zapata, quien nos apoyó en et rediseño del software libre
para el sistema SCADA, brindándonos sus conocimientos en programación, relacionado
a códigos de lenguaje JAVA y PHP. A nuestro amigo José Zambrano Campos que nos
apoyó durante gran parte de la realización de las pruebas, brindándonos herramientas,
conocimientos y apoyo incondicional.
A nuestros familiares y amigos, por estar siempre en los buenos y malos momen-
tos de esta investigación, porque gracias a ettos se togró culminar satisfactoriamente este
proyecto de tesis.
LOS AUTORES
V
UNIVERSIDAD NACIONAL PEDRO RUIZ GALLO
FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS
Escuela profesional de Ingeniería Electrónica
TESIS
PRESENTADA POR:
LAMBAYEQUE- PERÚ
RESUMEN
vi
Para el diseño del sistema de control primero se requirió determinar el modelo
dinámico de la planta de presión a controlar, y mediante simulaciones en el ambiente de
MATLAB se logró determinar los parámetros iniciales para 3 tipos de controladores; P, PI,
PI O, que fueron implementados en las pruebas en tiempo real del sistema.
Como fin del proyecto, se logró el objetivo, se implementó el software SCADA libre
y el OPC libre usados, logrando así contrastar el correcto funcionamiento, en sus distintos
controles de la planta de presión de la escuela profesional de Ingeniería Electrónica de la
Universidad Nacional Pedro Ruiz Gallo.
vii
UNIVERSIDAD NACIONAL PEDRO RUIZ GALLO
FACULTAD DE CIENCIAS FÍSICAS Y MATEMÁTICAS
Escuela profesional de Ingeniería Electrónica
Design and implementation óf a SCADA system with the Modicon M340 for PID
control of the plant pressure of the Professional School of Electronic Engineering,
National University Pedro Ruiz Gallo, using free software.
THESIS
BY:
LAMBAYEQUE -PERÚ
ABSTRACT
This thesis is divided into two parts, the first is to develop a control system for the
pressure plant of the professional school of electronic engineering, and the second is to
implement at the pressure plant a monitoring and control software based use of free soft-
ware, with the motto that is compatible with the resources of the school as technology is
con cerned.
viii
For the design of the control system is first required to determine the dynamic
model of the plant pressure control, and through simulations in MATLAB environment was
possible to determine the initial parameters for 3 types of controllers; P, PI, PI O, which were
implemented in the real-time test system.
lb implement the software SCADA certain requirements were raised, the principal
musí be based on the use offree software, that is, without a license and feature compatibility
with any type of PLC, so it can be used in different applications, which is easy handling sin ce
its main purpose is to help student learning.
As the end of the project, the objective was achieved, free software and free SCA-
,_,,, OPC used was implemented, thus achieving the properfunctioning contrast, in its various
plant controls pressure professional school of Electronic Engineering, National University
Pedro Ruiz Gallo.
ix
. --······-------~-------------~-·-------'~-
¡, VH~tWHiBIO,to,O ~~t~Cl0f4~~ ~
l ~· f1'liJHW l!SfJJZ G.~LLtPt }
' ac~-v••oap 1
.r 2 3 FEB 2015 :\
b-1 E l\.ll'E FlOTE 8 A'j
,.._~/'\Cl<"""l' _ _ _.._..,...."""._._...... _ _~~~:..,.:':"'!"".'
TABLA DE CONTENIDOS
LISTA DE FIGURAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
LISTA DE TABLAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1O
CAPÍTULO 1.
INTRODUCCIÓN 11
CAPÍTUL02.
MARCO TEORICO 14
X
2.1.1. Conceptos Básicos de Control Automático 15
xi
2.6.1. Estructura de un PLC ... 47
CAPÍTUL03.
GENERALIDADES 53
3.4.1. NI LabVIEW 66
3.4.2. Matlab . . . . . . .. 66
CAPiTUL04.
xii
MODELADO Y SIMULACIÓN DEL SISTEMA 69
4.6.1. Java . . 92
4.6.2. MySQL 93
xiii
4.6.6. Entorno Operacional . 94
CAPÍTULOS.
CAPÍTUL06.
RESULTADOS . . . . . . . . . . . . . . . . . . . 121
xiv
6.1.1. Control Proporcional (P) . . . . . . . . . . . . . . . . . . . . . . . . . . 121
CONCLUSIONES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
RECOMENDACIONES 129
BIBLIOGRAFIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
ANEXOA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
ANEXO B . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
ANEXO C . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136.
ANEXO D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
XV
LISTA DE FIGURAS
1
2.13. Sobre pico ideal por el método de Ziegler- Nichols. . . . . . . . . . . . . . . . . 29
2.25.Estructura de un PLC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2
3.1. Planta de Presión EPIE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3
3.16.Selección del PLC a utilizar. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4.4. Respuesta del sistema a una entrada binaria aleatoria O- 5000. . . . . . ... . . 74
4
4.1 O. Datos seleccionados para la validación del modelo. . . . . . . . . . . . . . . . . 78
4.21. J,..ugar Geométrico de las Raíces del Sistema con el Controlador tipo P. . . . . . 85
4.24. Lugar Geométrico de las Raíces del Sistema con el Controlador tipo PI. . . . . . 87
5
4.25. Respuesta al escalón unitario del Sistema con el Controlador tipo PI. 87
4.27.Lugar Geométrico de las Raíces del Sistema con el Controlador tipo PID. . . . . 88
6
4.41.Sub Opción Importar Animación del Software SCADA. . . . . . . . . . . . . . . . 109
5.11. Ventana Principal del S CADA, con el Proceso "Controlador" creado. . . . . . . . 118
7
5.13.Ventana del Proceso "Variador" . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
5.14. Pantalla principal del S CADA con los tres procesos creados. . . . . . . . . . . . 119
6.1. Respuesta del Sistema y Ley de Control ante un controlador Proporcional con
Kp=8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
6.2. Respuesta del Sistema y Ley de Control ante un controlador Proporcional con
Kp=48 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.3. Respuesta del Sistema controlador Proporcional con Kp=32, línea azul: Variable
de Proceso, línea roja: Set Point. . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
6.4. Panel Principal mastranto la respuesta del controlador P ante un Set Point de 35. 124
6.5. Respuesta del Sistema y Ley de Control ante un controlador PI. . . . . . . . . . 124
6.6. Respuesta del Sistema controlador PI, línea azul: Variable de Proceso, línea roja:
Set Point. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.7. Panel Principal mastranto la respuesta del controlador PI ante un Set Point de 30. 125
6.8. Respuesta del Sistema y Ley de Control ante un controlador PID. . . . . . . . . 126
6.9. Respuesta del Sistema controlador PID, línea azul: Variable de Proceso, línea
roja: Set Point. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
8
6.10.Panel Principal mastranto la respuesta del controlador PID ante un Set Point de
35. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
9
LISTA DE TABLAS
10
CAPÍTULO 1
INTRODUCCIÓN
Sin embargo, estos módulos son usados de tal manera que no son aprovechados
al cien por ciento para el beneficio de los alumnos. Esto debido a que el software y la aplica-
ción entregada en el proyecto realizado por la Escuela Profesional de Ingeniería electrónica
con Nationallnstrument, resultó dañado durante su uso, y el hecho de reponerlo tendría un
costo muy elevado por la adquisición de nuevas licencias del software. Costo que la escuela
profesional de Ingeniería Electrónica no tiene en sus planes solventarlo. Es así que actual-
mente estos módulos como son la planta de presión, planta de nivel, y otros módulos de
entrenamíento en fa cual se usa un PLC, son usados para aplicaciones sencillas en fa rama
de control y para mostrar algunos instrumentos y equipos usados en plantas industriales.
Es así que surgió la idea de implementar esta aplicación con el PLC MODICON
M340, este PLC actualmente trabaja con la planta de presión y así poder realizar con este
11
software la supervisión y monitoreo de un controlador PID de la planta de presión de dicho
laboratorio.
Con este software libre, evitaremos la dependencia de licencias que son muy cos-
tosas, además el manejo y la interfaz será muy sencilla para todo el alumnado de las EPIE,
también se podrá realizar trabajos, practicas sin ningún tiempo límite.
12
1.3.2. Objetivos Secundarios
3. Diseñar controladores P, PI y PIO para la planta de presión de la EPI E para que pueda
ser usado con fines didácticos.
13
CAPÍTULO 2
MARCO TEÓRICO
14
2.1.1. Conceptos Básicos de Control Automático
• Variables del sistema : son todas las magnitudes, sometidas a vigilancia y control, que
definen el comportamiento de un sistema (Presión, velocidad, temperatura, posición,
etc).
• Señal de referencia: (set point) es una señal de entrada conocida que nos sirve para
calibrar al sistema.
• Unidad de realimentación :está formada por uno o varios elementos que captan la
variable de salida, la acondicionan y trasladan a la unidad de comparación.
15
2.1.2. Representación de un Sistema de Control
Entrada Salida
Sistema
X +o ------?
------?-
X+',' X +o ------'-3>
------?-
X-y
r
X +o+ ----"'"
-----;¡..
X+'y'+Z
ry r y t:
X y= a. x
a -----'3>
X y= x/a
1/a
16
2.1.3. Tipos de Control Automático
El principal inconveniente que presentan los sistemas de lazo abierto es que son
extremadamente sensibles a las perturbaciones. Por ejemplo si en una habitación se ha
17
conseguido una temperatura idónea y se abre una puerta o ventana (perturbación) entraría
aire frío, de manera que el tiempo necesario para obtener dicha temperatura sería diferente.
El controlador está formado por todos los elementos de control y a la planta tam-
bién se le llama proceso.
18
Seña/de
Salida
Seña/de Señal controlada
manda
Señal
realimentada
L - - - - - - 1 Realimentación 1 < - - - - - - - '
El error, o diferencia entre los valores de la entrada y de la salida, actúa sobre los
elementos de control en el sentido de reducirse a cero y llevar la salida a su valor correcto.
Se intenta que el sistema siga siempre a la señal de consigna. El diagrama de bloques
anterior se puede sustituir por el esquema de la Figura 2.6.
Comparador
Variable de
Sata
l"d ·¡ Ide
Seta salida de
desead~ Controlador o regulador
1 Actuador __..,. Planta o c(t)
( Entrada J r(t) _ et regulador y(t) proceso Salida
1
Salida
b(t) medida
Realimentación
Donde:
e(t) es la señal de error
r(t) es la señal de referencia
b(t) es la variable realimentada
19
Pueden suceder dos casos:
1. Que la señal de error sea nula. En este caso la salida tendrá exactamente el valor
previsto.
2. Que la señal de error no sea nula. Esta señal de error actúa sobre el elemento regu-
lador que a su salida proporciona una señal que, a través del elemento accionador,
influye en fa planta o proceso para que la salida alcance el valor previsto y de esta
manera el valor se anule.
Los sistemas en lazo cerrado son mucho menos sensibles a las perturbaciones
que los de lazo abierto, ya que cualquier modificación de las condiciones del sistema afec-
tará a la salida, pero este cambio será registrado por medio de la realimentación como un
error que es en definitiva la variable que actúa sobre el sistema de control. De este modo,
las perturbaciones se compensan, y la salida se independiza de las mismas.
20
Entrada Salida Entrada Salida
Sistema G(S)
r(t) c(t) R{S) C(S}
Figura 2.7: Función de Transferencia, dominio del Tiempo (Izquierda), dominio Complejo
(Derecha).
G( ) = C(s) (2.2)
s R(s)
• Qué valores se podrán aplicar a ciertos parámetros del sistema de manera que éste
sea estable.
1
G(s) = N(s) = bosm + b1sm- + ... + bm-1S + bm (2.3)
D(s) aosn + a1sn- 1 + ... + an-1S +Un
21
Calculando la trasformada inversa se obtiene la respuesta en el tiempo del sistema ante
esa entrada determinada.
(2.4)
Se puede demostrar que para que un sistema sea físicamente realizable, el núme-
ro de polos debe ser mayor, o al menos igual, que el número de ceros. Si fuese al contrario,
esto implicaría que el sistema responde antes de que se produzca el estímulo, lo cual es
físicamente imposible.
Un sistema estable es aquél que permanece en reposo a no ser que se excite por
una fuente externa, en cuyo caso alcanzará de nuevo el reposo una vez que desaparezcan
todas las excitaciones.
Para que un sistema sea estable, las raíces de la ecuación característica o polos
deben estar situadas en el lado izquierdo del semiplano complejo de Laplace, como muestra
la Figura 2.8.
22
+jw
/ Imaginario ¡. ...~ ,:1
~"
"'/Í~estab!& ~·
,.:;_f
·i¡:j'- .!'',i!"('t
,, :.. ~
,.~p.'~
Los polos situados en el origen o sobre el eje imaginario dan lugar a respuestas
continuas o constantes que se consideran inestables. Los polos en la parte derecha del
plano complejo dan lugar a respuestas que crecen con el tiempo y por lo tanto son inesta-
bles. Se dice que un sistema de control es estable cuando aplicando a su entrada una señal
Delta de Dirac t5(t), en la salida aparece una senal decreciente en el tiempo que se hace
cero cuando el tiempo tiende a infinito, como se muestra en la Figura 2.9.
Donde:
1. Amortiguamiento exponencial.
Figura 2.9: Estabilidad de un sistema, señal Delta de Dirac (Izquierda), señal decreciente
en el Tiempo como respuesta a la señal Delta de Dirac (Derecha).
23
2.2.3. Tipos de Sistemas Según sus Polos
24
HEMEROTECA·U.N.P.R.I~
Tabla 2.1: Combinaciones de acciones básicas.
La función de transferencia entre la salida del controlador y(t) y la señal de error e(t), pa-
sando al dominio de Laplace es:
Y(s) _K
(2.6)
E(s) - P
Donde:
Kp se le denomina ganancia proporcional.
(2.7)
25
R(S) Y(S} C{S)
En la práctica no existen controladores que tengan sólo acción integral sino que
llevan combinada una acción proporcional. Estas dos acciones se complementan. La pri-
mera en actuar es la acción proporcional (instantáneamente) mientras que la integral actúa
durante un intervalo de tiempo. Así y por medio de la acción integral se elimina la desviación
remanente (proporcional).
La salida del bloque de control PI responde a la ecuación:
Donde Kp y Ti son parámetros ajustables del sistema. A 'E¡ se le denomina tiempo integral
y controla la acción integral del sistema, mientras Kp controla ambas. Si T¡ es muy grande
la pendiente de la rampa, correspondiente a la acción integral será pequeña, y por tanto,
el efecto de esta acción suave, y viceversa. Analizando el sistema en el dominio de Laplace:
Y(S) , 1
E(S) = Kp(l + ns) (2.9)
Donde:
Kp se le denimona Ganancica proporcional.
Ti se le denomina Tiempo integral.
En la Figura 2.11 se muestra la representación gráfica de un controlador proporcional inte-
gral.
26
R(S) E{S) ( 1 ) Y{S) C(S)
Kp 1> 5 +1 Gp (S)
l ~------~
En el dominio de Laplace:
(2.11)
Donde:
Kp se le denimona Ganancica proporcional.
Ti se le denomina Tiempo integral.
Td se le denomina Tiempo derivativo.
Donde también se puede concluir:
1
Ki = Kp(Ti) (2.12)
Kd = KpTd (2.13)
Donde:
Ki se le denomina Ganancia integral.
Kd se le denomina Ganancia derivativo.
27
Al utilizar los tres términos simultáneamente logramos que el derivativo suavice los
sobre picos introducidos principalmente por el término integral, sin renunciar a la eliminación
del error estacionario.
Las funciones que realizan las acciones de control en un PID, son las que se
muestran en fa Tabla 2.2:
El primer paso para aplicar un controlador consiste en elegir el tipo adecuado (P,
PI, PID), para lo cual se necesita comprender el efecto de las tres acciones y, a ser posible,
tener experiencia sobre el proceso a controlar. El segundo paso es ajustar los parámetros
para que la respuesta del sistema se ajuste a unas determinadas especificaciones.
28
controlador que cumpla las especificaciones en estado transitorio y en estado estable del
sistema en lazo cerrado. Sin embargo, si la planta es tan complicada que no es fácil ob-
tener su modelo matemático, tampoco es posible un enfoque analítico para el diseño de
un controlador PI D. Las técnicas experimentales están especialmente orientadas al mundo
industrial, donde existen grandes dificultades para obtener una descripción matemática, las
técnicas o métodos de ajustes son:
Ziegler y Nichols propusieron unas reglas para determinar los valores de la ga-
nancia proporcional Kp. del tiempo integral Ti y del tiempo derivativo Td. con base en las
características de respuesta transitoria de una planta especifica.
c(t)
o t
29
ni polos dominantes complejos conjugados, la curva de respuesta escalón unitario
puede tener forma de S, como se observa en la Figura 2.14. Si la respuesta no exhibe
una curva con forma de S, este método no es pertinente. Tales curvas de respuesta
escalón se generan experimentalmente o a partir de una simulación dinámica de la
planta.
Linea tangente en el
, c(t) ¡PlUlto de intlexión
~~
..
C(s) Ke-Ls
(2.14)
U(s) Ts + 1
Las técnicas en lazo abierto se suelen usar sólo en procesos lentos tales como control
de temperatura, mientras que en procesos rápidos (caudal, presión) el enfoque en lazo
cerrado es mucho más rápido y seguro.
En la Tabla 2.3 se muestran los parámetros que Ziegler - Nichols propuso para los
distintos controladores.
30
Tabla 2.3: Valores de los distintos controladores para Lazo Abierto.
Donde:
Kcr se le denomina ganancia crítica.
p
cr
= _1:!¡:_
vVcr
Wcr se le denomina frecuencia de oscilaciones sostenidas.
Pcr se le denomina Peiíodo Crítico.
Ziegler y Nichols sugirieron que se establecieran los valores de los parámetros Kp. Ti
y Td de acuerdo con la fórmula que aparece en la Tabla 2.4.
31
Método de Astrom - Hagglund
:,\_,'
. T .·
"-~--\"<'
"'l.
Para calcular las constantes Kp. Ti y Td del controlador PID, se mide la amplitud
de la oscilación de salida A y el periodo del mismo Pcr. Se determina el valor de Kcr dado
por la siguiente ecuación:
- 4d
K cr- (2.15)
1ra
Después se utilizan las fórmulas usadas para Ziegler- Nichols en lazo cerrado, ver
Tabla 2.4.
32
Método de Kayser - Rajka
Este método trabaja similar al método de Astr6m- Hagglund, solo que incorpora
un retardo (Transport Delay) después del relé (Relay). Esto también provoca oscilaciones
controladas en el proceso que permiten la identificación de características dinámicas del
proceso.
--.(~~~
d=2 Transport
Del ay
Para este método se busca obtener una oscilación controlada de salida, propor-
cional a los valores de amplitud del relé d y el valor del retardo Td, para que se cumpla el
siguiente criterio:
(2.16)
(2.17)
Luego calcular Kcr. ver Ecuación 2.15, y después aplicamos las fórmulas de la
Tabla 2.4 para encontrar los parámetros.
33
Método del Lugar Geométrico de las Raíces
El método del lugar geométrico de las raíces es un enfoque gráfico que permite
determinar las ubicaciones de todos los polos en lazo cerrado a partir de las ubicaciones
de los polos y ceros en lazo abierto conforme algún parámetro (por lo general la ganancia)
varía de cero a infinito. El método produce un indicio claro de los efectos del ajuste del
parámetro.
El diseño por el método del lugar de las raíces se basa en redibujar el lugar de las
raíces del sistema añadiendo polos y ceros a la función de transferencia en lazo abierto del
sistema y hacer que el lugar de las raíces pase por los polos en lazo cerrado deseados en
el plano S.
El enfoque del lugar geométrico de las raíces es muy poderoso en el diseño cuan-
do se incorporan las especificaciones en términos de las cantidades en el dominio del tiem-
po, tales como el factor de amortiguamiento relativo y la frecuencia natural no amortiguada
de los polos dominantes en lazo cerrado, el sobrepico máximo, el tiempo de levantamiento
y el tiempo de asentamiento.
Para el desarrollo de este método debemos elegir el controlador a usar, una vez
elegido el controlador, la siguiente tarea es determinar sus parámetros. A continuación se
debe realizar la verificación del desempeño del sistema y en caso de ser necesario reajustar
los parámetros del compensador.
34
de la ganancia, debemos modificar los lugares geométricos de las raíces originales inser-
tando un compensador conveniente. Una vez comprendidos los efectos de la adición de los
polos y/o ceros sobre el lug.ar geométrico de las raíces, podemos determinar con facilidad
las ubicaciones de los polos y los ceros del compensador que volverán a dar una forma
conveniente al lugar geométrico de las raíces. En esencia, en el diseño realizado mediante
el método del lugar geométrico de ias raíces, ios lugares geométricos de ias raíces dei sis-
tema se vuelven a construir mediante el uso de un compensador, a fin de poder colocar un
par de polos dominantes en lazo cerrado en la posición deseada.
jw jw jw
35
el sistema cuando se añade un cero a la función de transferencia en lazo abierto. Ob-
servar que, cuando se agrega un cero al sistema, éste se vuelve estable para todos
los valores de ganancia.
j~
(T
(a) (b)
fT
(e) (d)
36
2.4. Protocolos de Comunicación
Ethernet se tomó como base para la redacción del estándar internacional IEEE
802.3, siendo usualmente tomados como sinónimos. Se diferencian en uno de los campos
de la trama de datos. Sin embargo, las tramas Ethernet e IEEE 802.3 pueden coexistir en
la misma red.
e DOngitud maxima, uisíancia máxima que puede haber entre dos nodos adyaceníes
(sin estaciones repetidoras).
Los elementos de una red Ethernet son: tarjetas de red, repetidoras, concentrado-
ras, puentes, los conmutadores, los nodos de red y el medio de interconexión.
37
2.4.2. Protocolo Serial
El OPC (OLE for Process Control: Object Linking and Embedding for Process Con-
trol) es un estandar de comunicacion en el campo del control y supervisión de procesos
industriales, basado en una tecnologia Microsoft, que ofrece una interfaz comun para comu-
nicación, que permite que componentes de software individuales interaccionen y compartan
datos.
38
La comunicación OPC se realiza a través de una arquitectura Cliente- servidor.
El servidor OPC es la fuente de datos (como un disoositivo hardware a nivel de o!ant2)
y cualquier aplicación basada en OPC puede acceder a dicho servidor para ieeriescribir
cualquier variable que ofrezca el servidor.
~..; una soiüción abierta y tiexibie ai clásico probiema de ios drivers propietarios.
Prácticamente todos los mayores fabricantes de sistemas de control, instrumentación y de
procesos han incluido OPC en sus productos. Tiene como propósito cubrir las necesidades
de acceso en forma estándar de las distintas aplicaciones hacia los dispositivos o base de
datos. Es decir una aplicación X y una Y se podrían comunicar con distintos servidores
A, B, C de diferentes protocolos de comunicación, siempre y cuando estos tengan interfa-
ces OPC las cuales se les puede aprovechar para conectarlas con las aplicaciones, como
rnuestra ia F~gura 2.20.
Aplicación Y
Aplicación X
Interface üPC
Interface OPC
fl
39
Aplicación Aplic~ción dé Aplicación de
Gráfica Tendencias Informes
Figura 2.21: Arquitectura OPC, conexión de diferentes protocolos por medio del OPC.
1. El servidor
40
Sistema de supervisión
do jilr.~rquiil suportor
2. El grupo
3. El elemento
41
OPCGROUP OPCGROUP
El sistema SCADA actúa sobre los dispositivos instalados en la planta, como son
los controladores autómatas, sensores, actuadores, registradores, etc. Además permite
controlar el proceso desde una estación remota, para ello el software brinda una interfaz
gráfica que muestra el comportamiento del proceso en tiempo real. Generalmente se vincu-
la el software al uso de una computadora o de un PLC.
42
2.5.1. Funciones de los sistemas SCADA
43
2.5.2. Tipos de Sistemas SCADA
Los sistemas SCADA pueden dividirse en dos categorías y según estas definirlas:
1. Los sistemas abiertos son aquellos desarrollados para poder ser aplicados a cualquier
tipo de tecnología o dispositivo de control, es decir si se necesita enlazar un equipo
de distintos fabricantes, es necesario solo contar con los drivers que interpreten los
distintos códigos de comunicación utilizados. La principal ventaja de este tipo de sis-
tema es su capacidad de crecimiento conjunto con la planta, es decir nuevos equipos
pueden ser implementados así sean de distintos fabricantes.
2. Los sistemas propietarios son aquellos desarrollados por los propios fabricantes de
equipos o dispositivos de control, los cuales se comunican entre sí con sus propios
drivers; fa principal desventaja de este tipo de software SCADA es la gran dependen-
cia que se tiene del proveedor del sistema.
2. Un sistema SCADA libre por lo general fue creado como un SCADA comercial, con
el transcurso del tiempo se vio que había mayores ventajas en poner estos sistemas
con su código de programación en forma abierta a disposición de distintos desarrolla-
dores alrededor del mundo, los cuales cooperan con su desarrollo, por lo general la
única condición para poder adquirir estos software es comprometerse a que una vez
logrado el objetivo buscado, este conocimiento sea compartido. En las Tablas 2.5 y
2.6 mostramos algunos sistemas comerciales y libres.
44
Tabla 2.5: Lista de Softwares SCADA Comerciales.
¡_~-=~--''-~-'~(;:~~~ ~ ~-~-~·-~~---~--
EPICS National Laboratory Linux Propio
.
. . ,"'=J
.. . .
Modbus, Ethernet
·i
45
Unidades Terminales Remotas (RTU)
(¡,,
46
2.6. Controlador Lógico Programable
PROGRAMAOOR
~ 1<;;;
SENSORES
IJ
ll Jl
~
1
CIRCUITOS DE
C.P.U. I!NTRADA
~
~~~EMORIAS D
JJ! ll 1 CIRCUITOS DE SALIDA ~
47
microprocesadores de 8, 16 ó 32 bits, los cuales tienen capacidad de manejar los
comandos e instrucciones de entradas, los estados de las señales, también proveen
la capacidad de procesamiento lógico, la cual se encarga de resolver lógica booleana,
temporización, secuencia, suma, resta, multiplicación, división y conteo.
• Fuente de Poder: Usualmente los suministros de voltaje de los PLC, requieren fuen-
tes de poder AC; sin embargo, algunos PLC aceptan entradas de fuentes OC, estos
son muy solicitados para aplicaciones en las operaciones de las plataformas de ope-
ración que están mar adentro donde comúnmente se usan las fuentes OC.
Los requerimientos más comunes son las fuentes de 120 VACo 220 VAC, mientras
algunos pocos controladores aceptan 24 VOC.
48
• Unidad de Programación: Es el conjunto de medios, hardware y software mediante
los cuales el programador introduce y depura las secuencias de instrucciones (en uno
u otro lenguaje) que constituyen el programa a ejecutar.
Por su contrucción
• Compacto
Estos PLC tienen incorporada la fuente de alimentación, su CPU y los módulos de en-
trada y salida en un solo módulo principal y permiten manejar desde unas pocas en-
tradas y salidas hasta varios cientos (alrededor de 500 entradas y salidas), su tamaño
es superior a los PLC tipo Nano y soportan una gran variedad de módulos especiales,
tales como entradas y salidas analógicas, módulos contadores rápidos, módulos de
comunicaciones, interfaces de operador, expansiones de E/S, como muestra la Figura
2.26.
JtFJUt~ESOf H.t.'-tJ'~S~'E-
!Ll!t.Hí7~:10'l Q:lli~né~¡ DE
LED"S!T.DIC!OCFE.!
[LLfSTLD~~H PLC
P..lt'"i0t<E
(l)..'I.J1!!'!!~:~.<l>·
! j;!!ti:t r: ®'S
;.sT.t:~O[IE.S~~
rro:o..t.'lQ.t".t.;
1'Hi!\.i.D.:.S:
r~i
• Modular
Estos PLC se componen de un conjunto de elementos, representados en la Figura
2.27 que conforman el controlador final. Estos son:
49
1. Rack
4. Módulos de Comunicaciones
5. CPU
6. Tarjeta de Memoria
7. Fuente de Modulación
De estos tipos de PLC existen desde los denominados Micro PLC que soportan gran
cantidad de entradas y salida, hasta los PLC de grandes prestaciones que permiten
manejar miles de entradas y salidas.
Por su capacidad
50
Por su cantidad de Entradas y Salidas
., Siemens
• ABB
• Allen Bradley
• Schneider Electric
• Festo
• General Electric
• Mitsubishi
• Hitachi
• Omron
51
SIEMENS HITACHI
scp~eider Rockwell
Automation
vEiectric ~ AJ/en-Br.ad/ey
• MITSUBISHI
llñi..ELECTRIC
FEsT·c
Figura 2.28: Principales Marcas de PLC.
52
CAPÍTULO 3
GENERALIDADES
El diseño está compuesto por una parte Externa y una parte Interna:
• Válvula Proporcional
Marca Danfoss, de la gama EV260B. Se trata de una válvula solenoide servoac-
cionada de 2 vías con función de modulación proporcional. Mediante la regulación
continua de la corriente de la bobina, es posible situar la armadura en cualquier posi-
ción del tubo de la armadura y, de este modo, ajustar la bobina entre las posiciones
de cierre completo y apertura completa. La válvula se abre totalmente cuando la co-
rriente de la bobina alcanza su máximo valor. Tiene como bobina de excitación a la
bobina tipo BG024D, con convertidor de señal piloto de 4-20 mA. Se puede observar
la válvula en la Figura 3.2.
• Indicador de Presión
Cuenta con 2 manómetros. Indica la presión en un rango de O a 100 PSI y de O a 700
KPa. Este dispositivo se muestra en la Figura 3.3.
53
.. .. --- ------------,
• ·W 'W"!''ZW
"·~··.
, o •
••1
• Transmisor de Presión
Marca Danfoss, tipo MBS 3000, se trata de un transmisor de presión compacto, con
una señal de salida de 4 a 20 mA, y un rango de medición de Oa 6 bar. Este dispositivo
se muestra en la Figura 3.4.
54
Figura 3.3: Imagen del indicador de Presión.
• Presóstato
De la marca Danfoss, tipo KPI 135. Se trata de un !imitador electromecánico que
verifica que la presión de los fluidos se mantenga dentro de un intervalo de presión
específico. trabaja en un rango de -0,2 a 8 bar. Este dispositivo se muestra en la
Figura 3.5.
• Electrobomba
Cuenta con una electrobomba autocebante de Jaula de ardilla marca Pentax, puede
funcionar con 220 VAC o 380 VAC. Este dispositivo se muestra en la Figura 3.6.
55
~ .,(:J
planta. Estas llaves se presentan en la Figura 3.7, y son todas del mismo tipo. Cuenta
con un tanque de almacenamiento de agua, y un tanque de presión. como se muestra
en la Figura 3.8.
56
Figura 3.8: Imagen de los tanques, tanque de presión (derecha), tanque de almacenamiento
(izquierda).
En el interior encontramos:
• Elementos de Seguridad
El sistema de protección está conformado por una llave térmica monofásica, una llave
términca trifásica, un interruptor diferencial y un guardamotor. Estos dispositivos se
muestran en las Figuras 3.1 O y 3.11
• Variador de Frecuencia
En la Figura 3.12 se muestra el variador Altivar 31 de Telemecanique, variador de
velocidad para motores asíncronos.
57
Figura 3.9: Imagen del Tablero de Control.
Figura 3.1 O: Imagen de los dispositivos de seguridad: Llave térmica monofásica (izquierda),
interruptor diferencial (centro), llave térmica trifásica (derecha).
58
Figura 3.11: Imagen del dispositivo de seguridad: Guardamotor.
59
3.2. PLC Modicon M340
Los módulos de alimentación BMX CPS 2000 de corriente alterna cuentan con una
fuente de alimentación integrada que proporciona una tensión de 24 Vcc. que se emplea para
la alimentación de los sensores. La Figura 3.14 identifica los distintos componentes de un
módulo de alimentación CPS 2000 que se describen a continuación:
2. Botón RESET.
60
4. Conector para la red de entrada (y fuente de alimentación del sensor de 24 Vcc para
los módulos de alimentación BMX CPS 2000 de corriente alterna).
La figura 3.15 muestra al CPU con cada una de sus partes y detallaremos las
funciones que desempeñan a continuación:
1. Panel de visualización.
2. Puerto USB.
4. Puerto serie.
6. Puerto Ethernet.
61
Módulo analógico BMX AMM 0600
a) Voltaje 24 V
Para la programación del PLC se usó el software Unity PRO XL v4. Es una plata-
forma de software Licenciado, diseñado para programar el PLC Modicón M340, y cualquier
62
PLC de la marca Schneider Electric.
1. Se debe crear un nuevo proyecto para lo cual se debe hacer clic en el menú Fichero
- Nuevo. Aparecerá una ventana como muestra la Figura 3.16, en la que se pide
escoger el PLC que se programará. En este caso, el PLC es el Modicom M340, con
CPU BMX P34 2020.
·.-_
Y'e/'lpjtte$ •
·
1 6MX P34 1000 01.00 ' CPU 340·10 1.1odJu> .A"•ili
~;~~~:-:Ii;:;~~:~:~~'i~=~~;~~=;-;:_
Figura 3.16: Selección del PLC a utilizar.
• Configuración
• Movimiento
• Comunicación
• Programas
• Documentación
63
Explorador dt: proyecto!> ~ ·oo
'&3 Vista ...uuetural
~ú.
E~ ---~~ COnfigu••ción
ffi ··· -~ O:BusPLC
-·- LJ; Tipos d~ d~tos d.,rivados
· ·· D,. Tipos d~ FB doriu;odos
B · : Es!,. Y;oJi;obl.s • lns!ancl;os FB
... - ~ V•riables o~m•ntalos
~ V.ariab!Mde-rivadas
·· l!lv Variabl•s d• E/ S dorivadas
.. ·l!l,. Instancias FB ol•mMt•l•s
· f!!\, Instancias FB derivadas
···· · b.,. Movim¡.nto
1±! · ··[1. Comunlcáci6n
¡;' ··· i G!; ~rogr~m•
~ -··· t:i!,. Taro~s
; &; ·~- D,.. MAST
B · · · ts!., Eoontos
D.,. Eve-ntos dE- tE-mporizador
··0., Evontos d• EIS
~
.- --~·
-:;:=.~---··
-~ Proyecto
s-{:<¡cann¡,...""""
"-~ ~~'6;~,.,0400
1 . -·~ (P)(l'):!""q'S2000
l :;:---~-~:~~
1 ---'CI Ethernet
1 - ~ 1 :~N+t0600
1 ' ·- ~ 2:BMl<oa-il202J:
¡ - [1¡ 3
--D '·~pos de datos derivados
-C::J Ti¡>osdefllderiv....
:;_ ---~ v~e:mtMc~Mm
--.e,· y~~
···i!)Y..-sd<>t<edo< ~-'
"~"-:.-!-......'!W-:.·
;~ Ellacilnklca!Mo:ficonNJ«<
¡t.~ Alinertadón
r.t,:~
,.-:- B.micb"
+: Biwlo
r.·~
4. Una vez configurado los módulos del PLC, se debe configurar la red. Para esto se
despliega la carpeta de comunicaciones (en el explorador de proyectos), se hace clic
64
con el botón derecho sobre redes y se selecciona la opción "nueva red".
;f;j€;~- 1
rDrto:c:ioónPóolm&.uo
:=--~ O:~PLC
:tJ --··Tilt O:BMX~OOXI
j Díooooi&nP Másc.ort~PAIIK Dri9Ción.S.p.u•tla
- -GJ TipooJ;derWosderivados ¡ l ·~·: M 1 ·~ 1 ,·;~ ·~~. :'~ (' 1 1:<..
- ·0 T~pO'!IdeFBderivlldo!s
;-.: CJ Variables e lnstaodas FB
, ·- -(2] Movimiento
E: - -~ Commlcad6n
E ---5
Redes CotitVIdónOo-*tedónP
'---!!1!-_t
F.J ~ Programa
8 ~~-t;~ST r r.~
Oned6!\P (m.M.
L~b:;~~~~- ~~
Control
-CJ Scccicnes~
E & Evertas
: - EJ Ewrtosdatenwtzllda
---{J EvertosdeE/S
14-J
- D
-O
l:ib
Tablu de anbGdón
Pantdasdeoper!Mior
Docwnentadón
j ~10i6n::::_.- -- r ""2.' ---J
5. Para terminar con la configuración del autómata, aún deben de asociarse las direccio-
nes de lectura y escritura con las variables correspondientes a sensores y actuadores,
este paso es mostrado en la Figura 3.20.
·~"-
v.-.¡T;,o."DDTI 8-do"""'-l T0o>doDFBI
éj Pruycdo
-Fb _iJ
~ --~~~. .---'---'---'-'-'=----'-"'-'------'--'--=
E:r - -T {j Conf~ocilín ~ Tipo .,. Diecdón .,. Vd«
: :+~ ---~ O:bPLC
· --a llpM • &1:01 detnadot
CJ TlpotdeFBderivadM
B ·5 VllriGblet:elnltondMFD
' ' -er vanat:kselemett<ks
--®Y~derlv.!ldas
--8 varWXesdeE/5~
1 ----m lnsWiclasFBe~etnerta~es
---0 JnstM'IdosFB~iY.,m:
- !?J Movfmlento
r+: - • E) Comunicodón
é ---61
Provrama
'é:-~Ta"MS
~ --f;j MA5T
É -& 5ea:k:nes
-- -llli P'eslm
• ·-----D~SR
S -5 Evertos
- -!::) Ewttosdotorrp;.izoob
----CJ EvertosdeEf5
· EJ TablaJ de anmad6n
·-- !::J Pentaia:deoperlleb
¡t.; --lila ~o~Xión
65
3.4. Software para el cálculo de la función de transferencia
3.4.1. NllabVIEW
Para la investigación de este proyecto de tesis, se utilizó la versión 2013, así como
los siguientes complementos:
• Reporter Generation
3.4.2. Matlab
66
la diferenciación, integración, e incluso !aplace, transformadas inversas de Laplace y series
Taylor.
• Sisotool
• System ldentification
• OPC Seguridad
e Alarmas y Eventos
• lnteroperabilidad máxima
• Modo de simulación
67
• De el grupo de dispositivos seleccionables, escogemos el dispositivo Modbus Ethernet
PLC, este paso se observa en la Figura 3.21.
~
•Sierre1s~.____2___j
~
------------}g
0-,.---------
r.HcWn!!lne:
~·- - - - - - - - - - -
R~r.,_.c fiiiil", """'
$¡,',:,¡,o R.b;,:. ~:;j
ROcoindO,
TillédOutO
'.R.,..;o,tO· R~Dé!.,i. -~""'
""F~o-
,¡o-
Figura 3.22: Ventana de Matrikon para configurar la dirección IP del PLC a conectar.
68
CAPÍTULO 4
MODELADO Y SIMULACIÓN DEL SISTEMA
Esta rutina se muestra en la Figura 4.1 ,la secuencia consiste en utilizar las fun-
ciones básicas de la planta, es decir ponerla en marcha y parada, además de guardar las
variables físicas (SENSOR, VARIADOR, VALVULA, POTENCIOMETRO) en su correspon-
diente espacio de memoria en el PLC (M_SENSOR, M_VARIADOR, M_VALVULA, M_POT),
para facilitar la manipulación de estas.
69
'• .,, . -¡ 101
1 1 2 1 3 1 4 1 5 1 6 T 7 1 8 1 9 11 ~
H'H'~~
1 . UCioH)-
C-~
1-
2
1- W_ TAR
3
f- . . . .
BIT_WOT~
4
8"1"'.
f-
5
1-
~80·~
-·~
-~
6
IHT_TO WORO_TO_INT
f-
7 EH EHO EH EHO
1-
8 SENS~R- ~ W_SEN~OR W_SENSOR IN OUT M_ SENSOR
f- :.
9 •,-
INT_TO WORD_TO_INT
1-
10 ~ITrWOTOR
EH EHO EH EHO
1-
11 t.I_VARW>OR-- ~ W_VAAIAOOR W_VARIADOR IN OUT VARIADOR
1-
12
·_,r--- . -.
IHT_TO WORO_TO_INT
1-
13 EH EHO EH EHO
f-
14
1-
15
f-
·-,== .
lol_VAL.WLA- IN OUT
INT_TO
W_VAL.VULA W_VIol...VU~ IN
. OUT VALVUL.A
\fi'ORD_TO_INT
16 EH EHO EH EHO
f-
..
17 POT.ENCIOM.ETR•O- IN OUT W_POTENCIOM.ETRO W_POT.ENCIOMETR.O- IN OUT M_POTENCIOW.ETRO
1-
•1
70
variables han sido enlazadas a su correspondiente variable en el registro del PLC mediante
la opción "Data Binding" de Labview, como se muestra en la Tablas 4.3:
- . '-
.~:
:~..
,:
~~1'.
.~:
r:
..
o- o-
¡
''
'
~----------
71
m l~.iillH~l
¡-:--
Lo que sería:
y= 10000- X (4.1)
Donde:
y: Señal Procesada
x: Señal inicial
72
4.2.1. Programación en Matlab
73
title('Señal escalonada aleatoria')
xlabel('Tiempo (ms)')
ylabel( 'Amplitud')
subplot(3,1,2)
plot(u3)
title('Señal escalonada aleatoria procesada')
xlabel('Tiempo (ms)')
ylabel('Amplitud')
subplot (3, 1, aY
plot(y3)
title('Respuesta')
xlabel('Tiempo (ms)')
ylabel('Amplitud')
. Sel!aiPRBS
J'§!1111111111111111111:11111111111111111:1111111111:111111111 111111111111111:111111
O 1000 2000 . 3000 .WOO SQOO
1íempn(ms)
6000 7000 8000
~
9000
llllll
10000
~ !l l l l l l l l l l:l l l l l l l l l :l l ~ l l l l l l l l l l l l l l l l
o 1000 2000 3000 4000 5000
1íompn(ms)
6000 7000 8000 9000 10000
.
~~¡ : ' : :
-2000 o 1000 2000 3000 4000 5000
liempn(ms)
6000 7000 8000 9000 10000
Figura 4.4: Respuesta del sistema a una entrada binaria aleatoria O - 5000.
74
SeñalPRBS
~ ·~¡ ~: ~ ~~ ~ ~ ~ ~ ~ ~ ~:~ ~ ~ ~ ~ ~m ~ ~ m~ ~ , ~ ~ ~ ~ ~ ~ ~ ~l
o 1000 2000 31)00 4000 5000
llempo(ms)
6000 7000 6000 9000 10000
~~ "2000 o~1ooo--:::':-::--200030~oo
40oo ~soco~aooo
Jooo----=-='==---sooo~sooo
llempo(ms)
1oooo
~~~
Figura 4.5: Respuesta del sistema a una entrada binaria aleatoria O- 7500.
¡~¡ ~~~~~\f~lj~IJ~Ill1J
o 1000 2000 3000 4000 5000
llempo(ms)
6000 7000 0000 9000 10000
j~t n~~~~~~~~~~~[lrj
0
6000
o 1000 2000 3000 4000 5000
Tiempo (ms)
Respuosta
6000 7000 8000 9000 10000
4000
-g
:a2ooo
1l
D
.,zooo0~1000~2000~3000
4000 ~5000~6000
7000--::-:L::-----8000~9000
10000
Tiempo (ms)
75
4.3. Estimación de la Función de Transferencia de la Planta de
Presión
Así se probó con los tres grupos de datos obtenidos, se obtuvieron las respectivas
funciones de transferencia, y se comprobó si al ser excitada con la misma señal de entrada
respondía de manera similar a la planta real, siendo la función de transferencia obtenida con
el segundo grupo de datos la que más se asemejó, a continuación se describe el proceso:
a) Paso 1: En el menú "lmport data", se selecciona la opción "Data Time", que nos per-
mitirá seleccionar nuestro grupo de datos, se coloca ademas un "Tiempo de Muestreo"
de 0.1 seg, que es el mismo con los que se obtuvieron los datos. En la Figura 4.7 se
muestra la ventana principal con los datos experimentales importados en la herramienta
System identification.
b) Paso 2: En el menú "Process", seleccionamos la opción "Select", que nos perimitirá se-
leccionar que grupo de datos queremos utilizar, seleccionaremos la primera mitad para
la Estimación del modelo, y la segunda mitad para el proceso de Validación. En la Figura
76
4.8 se muestran los datos importados originales en la herramienta System ldentification,
en la Figura 4.9 se muestran los datos de estimación, que fueron obtenidos seleccionan-
do la primera mitad de los datos principales, y en la Figura 4.1 O se muestra los datos de
validación, que fueron obtenidos seleccionando la segunda mitad de los datos principa-
les.
8000 .-------------.----'_nD_ut_an_o_oUlll_ut_s'_!ln_ar-'-~- - - - - - - . -
- Z O Q Q L - - - - - - - - - - - - - . 1 . . . __ _ _ _ _ _ _ _ _ _ _ _...~._
8000 1
r- ¡-- r-
6000 '-
:; 4000 r-
zooo f-
o 1
o 500 1000
Time
,s -
G f) _Kp 1 +TzS
(1 +Tpls)(1 +Tp2s)
(4.2}
Donde: Kp = 1.0244
Tp1 =478.36
Tp2 =2.5272
Tz =188.66
Que equivale a:
G(s) = 0,1599s + 0,0008474 (4.3)
s2 + 0,3978s + 0,0008272
77
rnput and output signals
7000
6000
5000
';;.
4000
3000
2000
8000
,--- r-- r- ,--- r- ~ r- ,- ,--- ,- ,-
6000
.-
"; 4000
2000
1 1
o
o 100 200 300 400 5QO 800
11me
551!0
5000
4500
> 4000
3000
~OQL---~--~---L---~--~---L---~--~---L---~
8000
r-- eL r- - r- r- ,---- ;::=:..!. r- r- r--1 :--, r- .r--"1 .-
6000 -
;; 4000 -
200 o
o 800
500 550 600 650 700 750 850 900 . 950 1000
Time
d} Paso 4: Con la opción "Model Output" podemos visualizar cuanto se ajusta el modelo
estimado a la respuesta real del sistema mediante la opción "Best Fits", que nos muestra
que el modelo obtenido se asemeja en un 77.18%. La Figura 4.12 muestra la compara-
ción entre la señal real y los datos obtenido por el modelo.
78
K [']
K(1 + ~z s) Tp1 L]
(1 + Tp1 .s)(1 + Tp2 s) Tp2 [J
¡ -l ~ ~ _ , ¡ : ____ 1 '¡~~CI_~~'
Tz IJ ~~; _í~rnr)_:
.· 1l ¡ .i :·--o ¡ r - §~-~ .·. r=-J~:~~~~
[íj~
•9 Alito-selet16d
[10elay
.'_) frCf!l iXISÜ'I~ ~
[Jr.teoratCII'
:·: Us.er-detnt'd
-- L = .1 c¡,,. J
4500
4000
3500
3000
2500
1\ ~ \j \ \
2000
500 550 500 550 700 750 800 850 900 1000
Time
Figura 4.12: Comparación entre la señal real y datos del modelo estimado.
e) Paso 5: La opción "LTI Viewer" permite visualizar la respuesta del modelo a una entrada
escalón unitario, como se muestra en la Figura 4.13, mientras que la opción "Zeros and
Poles" permite visualizar el Lugar Geométrico de las raíces del sistema, mostrado en la
Figura 4.14.
79
Step Response
From: ul To: yt
1·4 ,-----.--------.---.,------,-----e; S.yste.;. PU ....... .
, L'O: u1 lo y1
Peak amp!itude >= 1.02 1
. OVershoot (%): O
! Al time (sec) > 3e+003 !
1 --:-:::-:-:::-:-:::-:-::::~:::-:::::-:-:::_-:-"'-:-"'--·"'.·" '"'---"'-:-"'·:-"'-:--:-:-:- :.-
; Systsm: P2Z ;• \ System: P2Z
luo:u1toy1 !1 :m:u1toy1
.g 0.8 Scltlln~ Ttme (se~): 1.63e+003 ; ¡ :Final Va~e: ~~--~~ 1
i i
~ o:;; •
1
/ 1
0.4
0.1
0
o~--~~~o--~~=oo~o--~,~~co~oL--~zo~oo~--2~so~o--~3~oa·o
Tme(sec)
o.a
0.6
-0.6
-o.a
80
uso el comando lsím, que permite simular un sistema a una respuesta dada, este código
'•
se muestra a continuación:
4000
( ( 1
' 1 '
'f
2000/
1 1 i
1000 1
\l '------
--Señal de entrada
- - Respuesta Real
_ ¡____ __.__I_ __,I_ _ _ '---''---.l..-
1000 1 -:~_R_e..;.spu_e_sta_S_imu_l_ad_,a
1 _ _..1.1_ _ _l¡____ _..u...
.J.._
o 100 200 300 400 500 600 700 800 900 1000
81
800 o ,1
r--- .-
' -Señal de entrada
600 o li Ir' -Respuesta Real
1'- I/
~'
( 1
-Respuesta Simulada
400 o ¡,.-- Ir (
1 1
1
~(''l'lr,, 1 \ 1
' '' ~~ ~~ ¡,~
t~
1~
1
1 \
~
1 1
2000 ' 1\. 1\._ 1\ [\
1'-
l\ l\
1\_
l.':: '-- '--- L
1 1 1 1 1 1 1
-2000 1 1
o 100 zoo 300 400 500 600 700 800 900 1000
J Ir -
-
,-
Respuesta Real
Respuesta Simulada
\: ~ tr( { 1~?J ~
4000 ~~ !,(
\
~
Ir' " lií,
2000
~
j' '0''()\1). u ~1 1\ ~ 1\.
lJ-1
o
1 1 1 1 1 1 1 1 1
-2000
a 100 200 3GO 400 500 600 700 8GG 900 IGGG
82
TOOL, en donde es posible agregar Ceros y Polos para modificar el lugar geométricos de
las raíces del sistema.
---- -:7 ---- ---~- 1= I·@J~·
'-----------
Right-click ro bddOf delt1e poles/tm»
~~~.Show=="<=h.=«=tu•::"::•:;";:IJ::'::s.=.,.=;o.,;=·g=n~~~-l'•lp 1
La Figura 4.19 muestra el lugar geométrico de las raíces del sistemaen lazo abier-
to, en donde la ganancia puede ser modificada para obtener los requerimientos planteados.
Así también pueden ser agregados compensadores para cumplir las especificaciones de
comportamiento.
Para el diseño del controlador tipo Proporcional, basta con modificar la ganancia
del compensador C, hasta encontrar el comportamiento del sistema que más se aproxima
a los requerimientos, Figura 4.20.
83
Root Locus Ednor for Open Loop 1 (OL1)
r--------------11--->----------------------
-1
-2
-3
-·
~.4~------1~.2-------1L------0~.8------~0.6-------0L.4------~0.2----~
Real Axis
¡!~-~~-
8 g j., e-
-~--··-----·--·--~- ------------ -·-·----------------- --- ------- ·-··- ---· -----
C.ompmutor
1
!
1
1
Se puede apreciar que el lugar geométrico de las raíces de este sistema con com-
pensador Proporcional no hace posible ubicar los polos deseados cerca a la intersección
de las líneas de requerimientos, por lo que estos no se cumplen con cualquier valor de
84
Roo! Locus Ect~or for Open Loop 1 (OL1)
~:ir o1 - - - - - - - - - - - - - - - - - - - - - - - - - - *
.§
-1
-2
-3
-4
-~9L_-~~---~7---~6---5L--~-4----~~~~--2----1----~
Real Axis
Figura 4.21: Lugar Geométrico de las Raíces del Sistema con el Controlador tipo P.
ganancia.
_¡
1
~1
'1
-i
-¡
Figura 4.22: Respuesta al escalón unitario del Sistema con el Controlador tipo P.
85
Controlador Proporcional Integral (PI)
~[Ccmptnut.orEciito!J~~T~~PiCttl~~!~'-!_ _
Col"l'l!)en»tOJ 1
~~i~: --lf-----} -- 1
1'
i!=====L_______::I="'-="'="'=•"':::~:::·~11:::."":::-"="'::::::';g.~J[il!í!=Hdp=J--------l
'[---------~------------·----·------
. ----------------------~:------------
En la Figura 4.25 podemos apreciar que los requerimientos planteados son cum-
plidos, presenta un error de estado estacionario nulo, un sobrepico de 17.9% y un tiempo
de estabilización de 17.4 s.
86
Roct Locus Edrror !or Open Loop 1 (OL 1)
10~----~----~----~~--------------~----~
2
.~
~ o
""'
_§
1
-2
-4
-6
-e
-10
-12 -10 -8 -6 -4 -2 2
Real A.xis
Figura 4.24: Lugar Geométrico de las Raíces del Sistema con el Controlador tipo PI.
''~,--------~----~--~------~.~.--~----+~--------~------~
r-¡..:¡
Figura 4.25: Respuesta al escalón unitario del Sistema con el Controlador tipo PI.
87
grande sea el valor de los ceros, mas se aproxima al origen el lugar de la raíces. Esto
permite ubicar los polos deseados en lazo cerrado cerca a la intersección de las líneas de
requerimiento, como se aprecia en la Figura 4.27.
1= j GJ l!@i¡l"
FJie Edit Help
~-- --~ - -- ------ ---- -- -- ·--· ----
'------------------------------~
.!1
li
0\
"
É
-1
-2
-3
-4
-5 -4 -3 -2 -1 o
Real Axis
Figura 4.27: Lugar Geométrico de las Raíces del Sistema con el Controlador tipo PI D.
88
pensador PID, en donde el error de estado es estacionario es O, el porcentaje de sobrepico
a disminuido a 6.05 %, y el tiempo de estabilización es de 13.5 s, cumpliendo con los espe-
rado al agregar la acción derivativa.
',.L---~-----7----~----~~--*,----~.~;---L~----*,~----~----,
~(!ttJ
Figura 4.28: Respuesta al escalón unitario del Sistema con el Controlador tipo PI D.
89
4.5.2. Programación del Controlador en Unity Pro
Para la simulación del controlador se realizó una rutina en lenguaje FDB (Diagrama
de Bloques de Funciones), en donde se utiliza el bloque de PIDFF como controlador. En la
Figura 4.29 se muestra la secuencia en Lenguaje FDB del controlador.
La Figura 4.30 muestra el Panel Frontal del Programa, en donde se pueden ver
las variables SeLPoint, Kp, Ti y Td, y los indicadores PV _Presion, Señal de Control. En la
Figura4.31 se muestra el Diagrama de Bloques del programa.
90
He Edl • Vlew ~- ~lile Tools WFdow ~
~ ...------.......,-----,------.
00
...
70
"'·
¡ ...
~-:-~---:--~ 1
1•.' 1 '1 .... ~ 1•• .- 29.2165 1
o :~ ... -~ 8 ~~ -. .. . 10
.
.
. . 1
gÓ·'-r------+-~--"----'--"',
.. i
! ~~~"";
~o ¡A
P.
l
..
70 . . 1
1• ·t; 1 1
:iJ.
·:ro
!1
1
io í
.• P.:o '
11' 1
;:.":1•
"
IDO ~! '1000
91
4.6. Diseño del Sistema SCADA
4.6.1. Java
92
para cálculos, una aplicación gráfica, etc. En resumen cualquier tipo de aplicación se puede
realizar con ella.
4.6.2. MySQL
93
a) Supervisar los procesos mediante indicadores, gráficos (animaciones) en tiempo real.
b) Controlar adecuadamente los mismos y además variar los parámetros de los dispositivos
a los cuales estará conectado, en este caso parámetros del PLC.
e) Se podrá manejar hasta 6 variables por proceso independiente del tipo (Entrada o Salida)
94
los datos del OPC, el driver de comunicación y la dirección IP, por otro lado el proceso po-
see 6 variables como máximo, cada una de ellas posee su nombre, el tipo de variable que
indica si es tipo lnput(Entrada) u Output(Salida), de la misma manera posee valores para
las alarmas que indiquen un alto, bajo y un nivel apagado. Por último posee un indicador de
almacenamiento y de gráfica en tiempo real. Cada variable de los procesos posee datos,
los cuales se almacenan en la base de datos con fecha y su valor correspondiente. Este
modelo se ilustra en la Figura 4.32.
Variable
Proceso
+nombre
+nombre +tipo
+driver
o.. * +para metro
+para metro ---------.<:~~ +alto
+bajo
+apagado
+graficar
+guardar
Dato
+valor
+hora
Como el proceso puede tener muchas variables y la misma variable puede repe-
tirse en otro proceso, se creó una tabla intermedia ProVar para relacionar tanto la tabla
Proceso como la tabla Variable. La tabla variable almacena los datos de las variables, los
cuales son el nombre, tipo, función, alarmas, almacenamiento y graficado.
95
Por último la tabla de datos principal del sistema, posee los campos de valor y
fecha del dato almacenado, esa tabla es la que nos permite hacer los reportes históricos.
Este modelo se ilustra en la Figura 4.33.
El sistema tendría los componentes de base de datos (BD), lógica de negocio (LN),
interfaz gráfica de usuario interna (GUI), además de la interfaz de comunicación para los
distintos protocolos que manejaría el sistema. Dichos componentes estarían relacionados
entre sí. Esta arquitectura se muestra en la Figura 4.34.
96
4.6.10. Diseño de la Lógica de Negocios
Accéss VProceso
-----
+conecta() Rewrte + PintaEstado()
.AbreProceso + ActualizaProceso() +Conecta()
'7
+.lnseitaPrcice5o() - fechalríició + MuestraHistograma()
+ JnsertaDatós(Í -techa Fin +Oculta Histograma()
-----.-··- + liStaPiocesosO + lÍ~Pi:9ceso~() -proceso + OetenHistograma()
Usuªrio ;.,séJétcionaProcesq() + Réportar() + EditarVariables()
+U~rO
+P.a~()
~
+ AbrePri>ceso()
~
·VI!riilé:ipal
/ ,-..,,.,.,,,,,(1
'"""""""'""""'~'
+Desconectar()
+ SetnempoGuardado
+Editar Nombre()
+Guardar()
.creatcir. Proceso·
+ EmitirAliuma()
-nqmbre !· Agregarl'roceso() -no.mbré Histograma
- dJivé~ +Editar Proceso() -driVer.
,grupo + AgregarCompÍinente()· f . - - -grupo
-pahimetrol +IÍeper.tar() - parametrot + M~arHist!)grama()
+AbreProceso()
+ <;t_>ntihu.ár()
~
OPC
-nombre
Variables
/
Imagen Ubre
·Mód~ló
\ <l:o'munlcacion
~ ++ ParteTrama()
+Conecta()
Desconecta()
-tipo
-atto -lniágen
~
+leeDatos()
-bajo
-apagació +mover() '"'"""!'
+ agregárll
Termo~o ~
-graf~r +,91l~iiiar()
"gUardar +agregar{)
Velo,cimetJ'O ...... ·Valvula
+~tValor()
+ Insertar()
+ cre~Termometro() +creaVelocimetro() .+ crea'(alvula()
Clase VPrincipal:
• EmitirAiarma()
El método EmitirAlarma se encarga de emitir avisos de alarma de estados, conexiones
y otros tipos de avisos en el panel principal, este método es invocado por cada sub-
97
proceso en el que se ejecutan los procesos dentro del sistema, es decir cada vez que
una variable cambie de estado o se pierda la conexión, etc. El hilo correspondiente al
proceso llamará dicho método.
• AgregarProceso()
El método Agrega Proceso se encarga de inicializar la ventana de la clase Creator, con
el cual se podrá crear un nuevo proceso al sistema, dicho método es llamado por un
evento de clic en el menú de la ventana principal.
• EditarProceso()
El método EditaProceso se encarga de hacer visible las ventana de los procesos que
se encuentran siendo monitoreados desde la ventana Principal, el método EditaPro-
ceso es llamado por un evento de clic en los componentes de los respectivos procesos
en el panel de VPrincipai.
• AbreProceso()
El método AbreProceso se encarga de Inicializar la ventana AbreProceso para la ini-
cialización de un proceso previamente guardado en la base de datos, dicho método
es llamado por un evento de clic en el menú de la clase VPrincipal.
• AgregarComponente()
El método AgregarComponente es el método que inserta las imágenes libres, mode-
los, visualizadores y procesos al panel principal de la clase VPrincipal, dicho método
es llamado por eventos de clic en los componentes del menú en la clase VPrincipal.
• Reportar()
El método reportar se encarga de inicializar la ventana Reporte en el cual se rea-
lizará una consulta de datos históricos de la base de datos para así presentar una
gráfica del proceso en un intervalo de tiempo elegido por el usuario, dicho método es
llamado por un evento de clic en el menú de la ventana VPrincipal.
Clase Creator:
• Continuar()
El método continuar se encarga de inicializar la ventana Variables para proceder con
el proceso de creación de procesos, específicamente pasar a la parte en donde se
98
configuran las variables del proceso, el método comprueba primero los valores ingre-
sados sean válidos antes de pasar al siguiente paso, dicho método es llamado por un
evento de clic en el botón de la clase Creator.
Clase Variables:
• Insertar()
El método Insertar se encarga de crear un nuevo objeto de la clase Proceso con
los datos obtenidos de la clase Creator y Variables, así como inicializar la ventana
VProceso de cada proceso insertado en el panel de la clase Principal, dicho método
es llamado por un evento de clic en el botón de la clase Variables.
Clase AbreProcesos:
• ListaProcesos()
El método ListaProceso es el método que es llamado al inicializar la ventana Lista-
Proceso, dicho método obtiene todos los procesos de la base de datos y los coloca
en la lista del panel de esa clase, dicho método es llamado por el método constructor
de ListaProceso al momento de inicializar la ventana.
• SeleccionaProceso()
El método selecciona proceso se encarga de obtener los datos del proceso selec-
cionado en la lista de dicha clase y abrirlo con todas sus características previamente
guardadas, dicho método es llamado por un evento de clic en el botón de la clase
AbreProceso.
Clase Access:
• Conecta()
El método conecta se encarga de establecer la comunicación entre el sistema y su
base de datos en el programa Microsoft Access, dicho método es llamado al iniciar el
programa, específicamente es llamado en el método constructor de VPrincipal.
99
• ActualizaProceso()
El método ActualizaProceso se encarga de realizar una sentencia de UPDATE en la
base de datos actualizando todos los datos del proceso seleccionado, dicho método
es llamado por un evento de clic en el menú de la ventana VProceso, específicamente
en ei menú guardar.
• lnsertaProceso()
El método lnsertaPrceso se encarga de realizar la sentencia INSERT en la base de
datos, es decir se encarga de ingresarlos a la base de datos, obviamente antes de
llegar a dicho método la información del proceso es verificada para que su registro
sea válido, dicho método es llamado al igual que el método ActualizaProceso por un
evento de clic en el menú guardar de la clase VProceso.
• lnsertaDatos()
El método lnsertaDato se encarga de guardar los datos relacionados a las variables de
los procesos en la base de datos, dicho método es llamado por un contador de tiempo
de cada proceso al cual el usuario definió previamente el intervalo de guardado.
• ListaProcesos
El método ListaProceso se encarga de obtener la lista de procesos guardados en
la base de datos, dicho método es llamado por el método UstaProceso de la clase
AbreProceso.
• Reportar()
El método Reportar realiza una consulta a la base de datos pidiendo los registros de
los datos de un proceso determinado en un periodo de tiempo determinado, dicho
método es llamado por el método Reportar de la clase Reporte.
• AbreProceso()
El método abre proceso hace una búsqueda en la base de datos de un proceso de-
terminado y extrae sus datos para luego ser utilizados en crear un objeto de la clase
Proceso y ser agregado en el panel de VPrincipal, dicho método es llamado por el
evento de clic del botón de la clase AbreProceso.
100
Clase Reporte:
• Mostrar()
El método Mostrar se encarga de crear el gráfico donde se mostrarán los datos históri-
cos del reporte y además de llamar al método Reportar de la clase BaseDatos, dicho
método es llamado en el constructor de la clase Reporte, es decir al inicializarse la
ventana.
Clase VProceso:
• Conecta()
El método Conecta se encarga de llamar a la clase de comunicación para lograr co-
nectar el proceso con los dispositivos de trabajo, el método Conecta es llamado por
un evento de clic en el botón conectar de la ventana VProceso.
• MuestraHistograma()
El método MuestraHistograma se encarga de llamar al constructor de la clase His-
tograma para poder así crear el histograma en tiempo real y poder monitorear las
variables del proceso, dicho método es llamado por un evento de clic en el menú de
histograma de la ventana VProceso.
• OcultaHistograma()
El método OcultaHistograma se encarga de esconder de la pantalla el histograma del
proceso hasta que el usuario decida mostrarlo nuevamente, dicho método es llamado
por un evento de clic en el menú de histograma de la ventana VProceso.
• DetenHistograma()
El método DetenHistograma se encarga de detener el contador de tiempo que agrega
nuevos datos al histograma, por lo tanto el histograma se quedaría estático hasta que
el usuario decida continuarlo, dicho método es llamado por un evento de clic en el
menú de histograma de la ventana VProceso.
• EditarVariables()
El método EditaVariables se encarga de abrir la ventana Variables de cada proceso
para poder editar los parámetros y los identificadores de comunicación, dicho método
es llamado por un evento de die en el menú de la clase VProceso.
101
• ActivarGuardado()
El método ActivarGuardado se encarga de empezar el contador de tiempo para el
guardado de los datos hasta que el usuario decida detenerlo, dicho método es llamado
por un evento de clic en el menú de guardado de datos en la clase VProceso.
• DesactivarGuardado() .
El método DesactivarGuardado detiene el contador de tiempo que se encarga de guar-
dar los datos de las variables hasta que el usuario desee continuar almacenando,
dicho método es llamado por un evento de clic en el menú desactivar en la clase
VProceso.
• Desconectar()
Se encarga de detener el subproceso de comunicación entre el proceso y los disposi-
tivos hasta que el usuario desee continuar la comunicación, dicho método es llamado
por un evento de clic en el menú desconectar en la clase VProceso.
• SetTiempoGuardado()
El método SetTiempoGuardado se encarga de pedir al usuario que ingrese un periodo
de tiempo, el cual se usará como intervalo de guardado de los datos tomados de la
comunicación y serán guardados en la base de datos, el método es llamado por un
evento de clic en el menú de tiempo de guardado en la clase VProceso.
• EditarNombre()
El método EditarNombre permite al usuario ingresar un nuevo nombre al proceso,
para que se guarde el nuevo nombre hay que hacer clíc en guardar después de editar
el nombre, el método EditarNombre es llamado por un evento de clic en el menú de
editar nombre de la clase VProceso.
• Guardar()
El método Guardar se encarga de guardar la información del proceso en la base de
datos, incluyendo el nombre, las variables, identificadores y todas las configuraciones
realizadas al mismo, dicho método es llamado por un evento de clic en el menú guar-
dar de la clase VPrincipal.
102
Clase Histograma:
• MostrarHistograma()
El método MostrarHistrograma se encarga de preparar el gráfico ya sea el histograma
para los datos en tiempo real o el histograma para los reportes, según sea el tipo de
orden del objeto de dicha clase, el histograma como reporte se pone en el panel de
dicha clase para mostrarlo al usuario. El método MostrarHistograma es llamado por
un evento de clic en el menú de mostrar histograma en VProceso o por un evento de
clic en el botón de aceptar de la clase Reporte.
Clase lmagenlibre:
• Mover()
Se encarga de colocar el objeto de la clase Imagen libre en la posición que se encuen-
tra el mouse dentro del panel de VPrincipal, dicho método es llamado por un evento
de arrastre de ratón dentro del panel de VPrincipal.
• Eliminar()
El método Eliminar se encarga de eliminar la imagen libre del panel VPrincipal en el
caso que así se desee, dicho método es llamado por un evento de clic en el menú eli-
minar del submenú del objeto lmagenlibre.
• Agregar()
El método Agregar se encarga de colocar la imagen libre en el panel de VPrincipal,
dicho método es llamado al crear el objeto lmagenlibre.
• SetValor()
El método SetValor se encarga de darle el valor de la variable que representa la lma-
genlibre en caso de ser del tipo de visualizador para poder así monitorear una variable
desde el panel principal de la clase VPrincipal, dicho método es llamado cada vez que
se recibe un dato en el subproceso de comunicación de la respectiva variable.
103
Clase Modelo:
• SetValor()
El método SetValor se encarga de visualizar el valor asociado a la variable del modelo
correspondiente, dicho método es llamado cada vez que se recibe un nuevo dato de
la variable representada.
• Agregar()
El método Agregar se encarga de colocar el objeto Modelo al panel principal de la
clase VPrincipal para así tener una mejor supervisión del proceso sin tener que abrirlo
y ver el histograma, el método es llamado al inicializarse el objeto Modelo.
Clase Termometro:
• creaTermómetro()
Se encarga de crear el modelo termómetro con sus parámetros de valor mínimo y
máximo, dicho método es llamado al inicializarse el objeto.
Clase Velocimetro:
• creaVelocimetro()
Se encarga de crear el modelo velocímetro con sus parámetros de valor mínimo y
máximo, dicho método es llamado al inicializarse el objeto.
Clase Valvula:
• creaValvula()
Se encarga de crear el modelo valvula con sus parámetros de valor mínimo y máximo,
dicho método es llamado al inicializarse el objeto.
104
Clase OPC:
• Conecta()
Se encarga de establecer la comunicación mediante el protocolo OPC entre un pro-
ceso y un dispositivo conectado al servidor, dicho método es llamado por el método
conectar de la clase VProceso.
• Desconecta()
Se encarga de detener el proceso de comunicación entre el dispositivo conectado y el
proceso, el método es llamado por el método desconectar de la clase VProceso o por
un evento de error en el subproceso de comunicación.
• LeeDatos()
Se encarga de inicializar el subproceso de comunicación por el protocolo OPC, reci-
biendo datos y analizándolos.
JFree Chart
Es una librería de código libre para programación en lenguaje JAVA, con ésta li-
brería es muy sencillo realizar gráficos, cuadros en las aplicaciones, dicha librería posee
una amplia documentación de sus métodos y de la construcción de todos los tipos de gráfi-
cos. La librería puede crear no solo gráficos en 20 sino también en 30, gráficos de barra,
líneas de tiempo, gráficos de pronósticos, etc.
105
La ventaja de su uso es que la librería es "open source .. lo que quiere decir que
es gratis, además dispone de una fácil integración con el lOE Netbeans lo cual facilita el
trabajo
DateChooser
a) En la Figura 4.36 se muestra la pantalla inicial del SCADA, que permite el ingreso al
sistema, con el Usuario y la clave respectiva.
106
Figura 4.36: Pantalla de Bienvenida del Software SCADA.
¡···•<-·~··
e) En la Figura 4.40 se presenta el sub Menú importar imagen, que nos permite cargar al
esquema cualquier imagen en formato png que tengamos almacenado en el equipo
f) En la Figura 4.41 se presenta el sub Menú importar Animación, que nos permite elegir
un visualizador en tiempo real en forma de Termómetro o Velocímetro.
107
::: :: ~- . :: : : : : -~:: : : ::::l
Figura 4.38: Opción Proceso del Software SCADA.
.~ ....·':"'"""' ~~.!::'.'.!;'.-~3..'.~:--:.~~:·-~--:' _
¡.".ji..,....,..... .,._.. i
t)io,._,.-................ _;,1
:;·~...;...- .;
;~.':,-.-~·~-- =~·j
_]
Figura 4.39: Opción Multimedia del Software SCADA.
i) También se encuentra el Menú Reporte, mostrado en la Figura 4.44 que permite visuali-
zar la data de un periodo y el Menú Panel que nos permite cambiar el color de fondo del
esquema.
108
fOC~·~:I"-"'1 0 Tube~i<>Conl.llMJI<>riimldi.pnQ
1O eo<lolr!Rrqo;.,r oo.¡my 0 To~,.r;.,ConV•Md:LP"~I
.e e o<loSlrJ>[lof ocho.po.
;DCodoSuptZQuitt do..png D lliben.wenicnlptrt] j
iD Hotha.JlftiJ QV.oMri.J_¡,frg
________ j
1
jrJM~ror.¡nrg
¡[j lubera~onUwv.pnn --~:.~~:·~-~::J
Nonll• e tre ~chMI: i--~~~ ----.----~~--~--------- ___ -=~------~~------~-=~}
AJc~detipo: §~lo~~~~ ---=--==-~-===~=------¡~1
Abr ~~----ií· ;;;;,,,-;;,;- 1
. ------- -- ~--- ----. l
·=----;----::------::::·-------·--------·-·-·--·---·--
J>f oceso !Moaín.e<b :.!.1".....!""1~..,""21
: lill lr!ÍpGrt<l! hlaQtri 1
- - - · - - - - - ; ~ ·Pul,...dor Am¡jrilln
1
$ Ptti..aoor Rojo
109
Figura 4.44: Opciones Reporte y Panel del Software SCADA.
11 o
CAPÍTULO 5
DISEÑO DE LA EXPERIMENTACIÓN
6q
PIDf_f
La Tabla 5.1 muestra las nuevas variables que se agregaron para el diseño general
111
del controlador.
112
['!!,8riiam ·"' · · .'·:'-. Jii'/50f' ~~~ "~ ...,., .,,~:: :ID'ifLée'ei®'ij[
.~ ..'""·'·'"" -~~,b. <<-"li\(~·,1;,.,... "~~
.. .,.~.~· .... eiíti
ííl .
¡·
1'
. '1
[_,
10
i
'1~
113
r"'rlfl'"-~io!<tQroo.••teo:"~JtoC>
.. -. ·-!??1&: -~.:ffi1N1í~J::lii~fi~~~"-=?J¡t.;=l;~:'if.~7~:--·----
[jJ
i! .. ·
Figura 5.3: Diagrama de bloques de la programación Final en LabView.
Todas las variables se dividieron en 4 grupos, que son Controlador, Válvula, Varia-
dar y O N-OFF.
a) El primer grupo, llamado "Controlador'' contiene las variables, Set point, Kp. Td. Tú
Variable de Proceso. Este grupo contiene todas las variables usadas en el proceso de
Control como se muestra en la Figura 5.4.
b) El segundo grupo "ON- OFF", contiene las variables qe son usadas en el encendido y
apagado de la planta, estas variables son mostradas en la Figura 5.5.
114
-- - - - - -- - -
e) El grupo "Valvula" contiene las variables relacionadas con el accionar de la válvula, estas
son: Valvula, SenaLControl y Valvula..Apertura. Este grupo se muestra en la Figura
5.6.
:·===~-1
'"~-~
~ ahéiNeiWorlt:~eri
d) El grupo "Variador'' sólo contiene la variable Variador, que envía un comando al variador
para modificar su velocidad de giro. Este Grupo es mostrado en la Figura 5.7.
115
5.3. Creación de las Variables en el SCADA
a) Comenzamos creando los procesos en el sistema SCADA, colocando los mismos nom-
bres que se pusieron en el matrikon OPC.
e) Luego se deben de crear las variables del proceso, estas deben ser creadas con los mis-
mos nombres que han sido creadas en matrikon OPC, editamos rango, y seleccionamos
que grafica se guarda con la letra "Y" y las que no vamos a usar con la letra "N", como
se muestra en la Figura 5.9.
d) Después de haber creado las variables, estas se guardan en dicho proceso, en la parte
superiror se encuentran las variables que han sido incluidas en el proceso y en la parte
inferior se muestra un histograma en tiempo real que es posible edita el rango desde la
opción Hístograma. Damos click en la opción Conectar. El resultado se muestra en la
Figura 5.1 O.
116
Figura 5.9: Creación de las variables del proceso "Controlador".
DOin!ro!Ador ~~
f) Para la puesta en marcha y parada de la planta, se usaron las variables del Grupo "ON
-OFF", se escogieron 4 pulsadores, dos para START y dos para STOP, los pulsadores
verdes se configuraron para enviar el comando True mientras los rojos para enviar el
comando False en ambos casos. La manera de Configurar los Pulsadores se presentan
en la Figura 5.15.
g) Para inserta un indicador visual, se importa una animación del Menú, en este caso se
usó la animación velocímetro en donde se tiene que enlazar con una variable de un
Proceso creado y seleccionar un rango. Se crearon 2 animaciones para las variables
Presion y Apertura, que indican la Presión del proceso y el porcentaje de apertura de
la válvula en tiempo real. En la Figura 5.16 se muestra este procedimiento.
117
Figura 5.11: Ventana Principal del SCADA, con el Proceso "Controlador" creado.
118
,IIIY<IIIItol --- • ---- -- - - - - ·• ··-- - - - _ ~'lQti{
Figura 5.14: Pantalla principal del SCADA con los tres procesos creados.
START.Tnw SJART.fal••
119
•
START.lru:e SlART .fal\e
[·..J~
STOP.li'UI!' SIDP.J~\~t
[t[JL•I
STIIIIT.Iw
'
SlllP.lrll'
120
CAPÍTULO 6
RESULTADOS
Los sistemas de control P, PI, y PID diseñados fueron verificados mediante expe-
rimentación. Se llevaron a cabo 3 tipos de experimentos:
121
Experimentación con Labview
Figura 6.1: Respuesta del Sistema y Ley de Control ante un controlador Proporcional con
Kp=B.
122
[:~m Lmmm' m 'm=l• ¡ ¡mm-& m!mm4 >j
·:~m------~--------·-m¡~ mm¡ 1:;_:::·::::_:_ _¡_-:-_¡_ m:::::·::·:¡ _____: ]
o w ~ ~ ~ ~ ro ro ~ ~ ~
Ft o w
t J~
1::
~
J-:
~
Jtt3 it
~
liempo[SJ
ro ro ~
~~
~ ~
Figura 6.2: Respuesta del Sistema y Ley de Control ante un controlador Proporcional con
Kp=48.
Figura 6.3: Respuesta del Sistema controlador Proporcional con Kp=32, línea azul: Variable
de Proceso, línea roja: Set Point.
123
L•-r•
5lAJU.InR GTAAIJ'*..,
!.IIII'.Tn•' !.JUPJ.Jlo,f'
-~•--r• J
Figura 6.4: Panel Principal mastranto la respuesta del controlador P ante un Set Point de
35.
En la Figura 6.5 se puede apreciar que este diseño cumple con las especificacio-
nes, con un error de estado estacionario nulo, porcentaje de sobre pico menor al 20% y
tiempo de estabilización menor a 25 segundos .
r mmmm¡!··m··········m··;¡·············-~---·····-r··-,····
"'10000t······················¡:·:························¡r·······················:E'
- 5000 ....................... .......................:--...................... mm ............ .................. > [ ....................... ]"" ...... ..
1 1
o . . ··----------------------· ----------------------- ·------------------------ ·----------
0 ~ ~ ~ ~ ~ m
~·-~
:;
~ 50
i
:
~~
: '
~
·r·Td ~
:
: ""\/U.\U-mm•
m
:
Figura 6.5: Respuesta del Sistema y Ley de Control ante un controlador PI.
124
Experimento con el Software SCADA
- ~·~
:b_
i"'" }; loo -----,¡
; l"fu~: =_JI ...., ~~ G__ • .JI ....., -'
JI~ :~-:::;:..0:= f I~IA
~.~ a~~~·~·~··
Figura 6.6: Respuesta del Sistema controlador PI, línea azul: Variable de Proceso, línea
roja: Set Point.
•
Figura 6.7: Panel Principal mastranto la respuesta del controlador PI ante un Set Point de
30.
125
6.1.3. Controlador Proporcional - Integral - Derivativo (PID)
En la Figura 6.8 se puede apreciar que este diseño cumple con las especificacio-
nes, con un error de estado estacionario nulo, porcentaje de sobrepico es aproximadamente
15% y tiempo de estabilización menor a 30 segundos.
·,:~t··········••'::=••+= r·······:¡
o m m ~ ®
::f-E~ct3:!!:_:J
~ w ro oo ~ ~
!~ 100l---------------1-----------------~----·----------)
50
l¡ l¡
----~~-0-------------~· · -:·----·--
!¡ _________________';¡___ _________l---·:¡:···--------------[·,---------------··::- -~- - - -_.)·-· _______________
t· ·- - - ~- - -..).- ·¡____________
,- - - - - -,-__- ~
! 0---------·-·-··!_________________20l_________________l_________________40}.. ___________ )50_________________(________________:_ _ ~----'---··----------- 100
0 10 Jo 60 ro oo so
tiempoJSJ
Figura 6.8: Respuesta del Sistema y Ley de Control ante un controlador PID.
126
Experimento con el Software SCADA
1CJ_z.'l;:_c,JI_.~
¡JJt!lmf. ,
Figura 6.9: Respuesta del Sistema controlador PID, línea azul: Variable de Proceso, lfnea
roja: Set Point.
Figura 6.1 O: Panel Principal mastranto la respuesta del controlador PID ante un Set Point
de 35.
127
CONCLUSIONES
• Aunque uno de los objetivos secundarios era desarrollar un controlador PID, durante
las pruebas se verificó que el sistema responde de buena manera ante controladores
tipo P y PI, siendo estos suficientes para realizar un control óptimo.
• Se cumplió con el objetivo secundario consistente en que los dos softwares libres
implementados para este proyecto (SCADA- OPC), deben de ser amigables (de fácil
uso), para que !os alumnos de !a escuela de Ingeniería Electrónica, adquieran nuevos
conocimiento en el área de control.
128
RECOMENDACIONES
129
BIBLIOGRAFÍA
[1] Aguirre Zapata, David, "Desarrollo de un sistema SCADA para uso en pequeñas y
medianas empresas.," 2013.
[2] J.Paulosová, L.Korosi. Desígn of PID Controller for PLC. Technical Report, lnstitute of
Control and lndustriallnformatics, Slovak University of Technology, 201 O.
[6] National-lnstrument. LabVIEW Report Generation Toolkit for Microsoft Office User Gui-
de.
[9] Osario Diana, Flores Roa Camilo, "Obtención del modelo no paramétrico de un sistema
por el método de identificación de respuesta en frecuencia," 2009.
[11] Parra Rasero, Pablo. "Identificación de Procesos: usos de algoritmos en Matlab para
encontrar un modelo por identificación para un proceso de medicición de pH," Tecnura,
(15):24-31 (2011 ).
[12] Ruge, llber A. "Optimización de señal de control en reguladores PID con arquitectura
antireset Wind-up," INGENIUS, (6}:3-8 (2011 ).
130
ANEXO A
Desarrollado por el lng. David Aguirre Zapata como proyecto de tesis, UDEP.
En el año 2008 se desarrolló un proyecto denominado: "Desarrollo e investigación de em-
bebidos (TIC) para aplicación de automatización y control de bajo costo para pequeñas y
medianas industrias", proyecto financiado por el FINCyT (Unidad coordinadora del progra-
ma de ciencia y tecnología) y desarrollado por la Universidad de Piura. Dicho proyecto tenía
varios componentes, entre ellos: El desarrollo de tarjetas programables, software de bajo
nivel y software de alto nivel, entre ellos un sistema SCADA.
131
ANEXO B
Modicon M340
La opción natural
Modicon M340 surge del ingenio de las soluciones Telemecanique.
Nace del profundo conocimiento de Modcon, desde los orígenes de
los controladores programables.
132
Gabinetes "compactos"
Adopw las medidas convenientes de JV!odicon ivi340
y reduzca el ramaiio de sus gabineles.
~ Tnmnño
" Attura: tOo mnt
11 PJOfundidad: 93 nim ¡¡aro su integrOción
en anmarios de 150 ínm.
~ BaMidor adnptable
., 4, 6. S o 12 módulos.
• Función dé inter~mblo en funcionomoenlo
'"Hot S\'lcp• paro un fT'!ilntenimiento s.encmo.
~ Puerioa de comunicsción
• Efija ~lodbus, Ethernet o CANop€n.
,¡
¡.'• ,,
~ ;" ~ l --. l ·, l
133
Pura energía,
un equipo Potente!
Con su increíble me111oria y su aso111broso
rendimiemo, este equipo potencia sus máquinas.
• ¿Dssearia utliLar la pOlencia de los avanzados lenguajeS lEC, pero pierlsa que su
rená.mier.to podria verse electado? Mocicoo M340 &.ita que el sistema se torne lento
sea cual sea el lenguaje lEC que se utilice.
'· -c:c----·, ,.,..,. • ¿Procesan><;nto en muí-segundos? Es seocillo y posible con el sistema oparawo
-- '··~- . mullitarea de MOÓ!Con M340: taro a MAST, tarea FAST y 64 tareas de etentos.
De esta le<ma. a~ptará Mocicon M340 a los aspectos esenciales de su apicadón.
Alto rendimiento .,
.:: : r•
• 71( instnJCCIOneslms rama
• 4 MB do memoria de pcog
"';, •.: ... 1 - _ •••-:
·-. \..
• 70k 'mstrucdooos
-··'
134
> Con alto contenido en exp·e-riénci_a
Oébido a que las iuncic:lnOO tacno16[1(:as son lás q.¡e le ha001 déstacar, Modic:on
M340 le permile SX¡>'Ssaf SUS ~l!OS de vflií ÍÓtrilá'selctlla, siemJire ero
una
rí;spuesta especlázada,
'"__.,-~~.
Ccinl8Je • la oferta de ccotaje de los CIJ!l~Qiadores progra_mables Mod)oon M340 Incluye:
.JIIlJlfÍJL tl 2 mOdt,IDs: 2_ c:anaJes ~ 00 KHz,-Y 8 cana~ de lO KHz. al_lo ra-Jdirriento con
oootajede 32 bis, wadón del ciClo dé l ms, 2 registros de captura y acCiones
rel!ej3s oon un liii~ de ~aslá I'JTerior a 500 ~guildós.
ofreoeií un ftltro en éada éntráda, uro arrplia
!:! :Ser'Jclos aliánzádos coof¡guíables·Q(Je
gana de OPCiones reÍ!eías. gerierá:lar de irrpi>lsos. rewctor de f,Jego mecániéÓ,
1:1 tunclones conÍil¡urableS de modo
de conlejé y medcÍOO, -
• ~lá desmaib á cubrÍr láS necesidades dé aJjÍeado!l>s iaes como: gensradón
de .imliás de estado vaCió de ctesliollitiaaor. i:lasif.éátloo de peQ.¡iiñas piezaS, leva
élec!róri(;á senciil8, con~OI de vé!oddád.
• Modioon M340 OO:eoe ~~es de posle!onamienlo integ~as. fis><1ties y mw
_económicaipara ap~ que ne~ten e)és lrldeper>díoo,tes coordinados
y ejes maestrO(~.
• SiÍl ai\ádir ningfni'mOdu\ó dé éjes.ü Sblu::ión oo tilsa en unábiblio!eca MFB
(bloqueS de funCión de movimiérito) q~e,cum¡\19 E! estándar f'lli;open. B Control
, del sfl!Vodrive y del variador de velocidad sa lleva a cabo medante comandos
de WFB a través de_ CANopen. . . - ,- .
¡¡Los MF8 permlten'c¡ue'!Os vari¡¡cbres de vetoddad Altivar controlaí lá ~d
de los n\otores. o que los váiládores de vElocidad l1i><ium ó taA oóntrolen la pasidÓÍ'l
·de loo motctés Sfnérooos ·si\JShless·.
• Mooioon M:l4b. especialm~nte cf!Sefiado para los iabricMies de máquinas
canpactas,.moduÍares y éomP!éÍas; re®tta mtÍ¡ adecuacfu P<ÍÍa apuCaéloruÍs de
hiáneio dé malena!BS, tranSporté y eni~ seMdaii~: asi OO!m para Jñáquinás
€Spei:ialas y n,;¡de.eias.
• B soltw:ie únity Piil InCluye, óe serie,,una biblioteca de funcioneS de regylación.
B (en¡¡~ede b.klque~ dé funqón 'Fép IEC61131·3perml:e una p-ogramación
compíetamenlegráfiCa.y sumamente fisxl'tÍJe. De eita forma. podrá optirrizar
su'a!QÓéiimo dé rilgtlá:c!Ón y niJ.iai un céniroUotál dé! fuÓcioríámiénto de su lazo.
a :A!:léims dé kis raguládorés PI y PID; 13 biblioteca incluye nuril€r!Ssos blóques
avanzados:
o ,.Oste automá!lcO de AD (sinlonlzaclón au\ornitlca),
o iní(9,8dór eÓn ¡¡,;,¡tSc;oo, titlí;iácl~ de ~eS de primer y segundo Orden.
(J 'régulador dé i!Os o Iom. Pos;ción9s. PI ell eruisnt9,iño. P.!? y ppj .... caicadi..
lntél.igente
135
ANEXO C
TERMINAL DE PROGRAMACIÓN Y
AJUSTES DEL VARIADOR
Vari;~dores ATV31 ......A Los varladores ATV31·.. ···A t!enen un po~enciómetro de referencia. un
botón da marcha 'J un bc:fln da paro!restableclmlento.
PQ!er-ccii:Pltet¡ü·lic. ldt:t~rtti..t
Btj 3C~Ivo "(J el p.1.rt1n~tro fn t1l tl-rnt'l'lü
Ctl-~ toOJ¡gur.ldo como:.AJP (CMSUl~ Ll
p.ag!n::t lO:O)
136
·:woED303042NARet04, Sección 2: Programación
'il6!2004 Terminal de p¡ogramación y ajustes del variador
nSt:: parada libre SI la visualiZación ni"uéslra el códlgó riSt. unií de las siguientes condiciones
pu;¡de estar sucedlendo: ·
1...Con la ·conflgtiraélóli de fabrlca;al enéf!il?ar el varlador de velocidad
·después:de restabl~cár mánualmente una falla o un comando de paro,
de
los comandos marcha adelante, marcha alriis y de paro por
Inyección de= {c.d.) se.deberáh restablecer para poner en marcha el
varlauor:SI no· se. te!ab:eten estos comandos e\ variaclor mostrara el
mensaje_ "nSry.no arrancaré. SI lajunclón de rearranque automático
esta COOflQUia~a no 6S ~etésari1Ú9s19bi9.CEr!OS.
2. Slel ca.na!cle reterencrá o él ca.nEll d.e éontrol es asignado a Modbus o
· . CANopen (consulte la pagina 130), el variador mostrara nSt al
eneégizalló y parmanecera paiailo hasta que el bus de comunicación
envla un comando. ·
3. SI está presente un comando de marcha adelante o marcha atrás,
cuando el variador es energizado y está configurado para un control de
2 6 3 hilos con transición "trn" (consulte la pagina 127). el variador
mostrará nst y no se pondrá en marcha sino hasta que se suspende y
vuelve a emitir el comando de marcha y se proporciona una referencia
de velocidad.
137
ANEXO O
EV260B NPT
Opciones do la bobina
Modelo BK
d]l 11
Modelo BM
mili 11
Modelo BL
sin generador de señales con genArador de se~alas oon generador da señales
settal de control da 300 a 600 mA senal de control do o a 1 o V saflal da control de 4 a 20 mA
Véase pág. 4 Véase pAg. 4 Véase pág. 4
Datos técnicos, bobina Sin generador da señales: 24 V :t10~, tenslén ca rectificarla de onda completa
Tensión Con generador de SE!i'iales: 21-30Vcc
Sqfial da contml Sin generador de señales.: 300-600 mA
Con generador de señales: 4 -20mAo0-10V
Potencta bobina Mllx.20W
Aislamiento del bobinado 400 kn pam 1> !Dial da cc:n1ro1 de o-10 \( 250 a pam llsa!\al de catro1 da 4-2U m\
Resistencia de la bobina 23,5 n a una temperatura amblente de +2CY"G (+68"F)
Aislamiento del bobinado Clase H de confonnldad con el lEC B5
Conexión
Sln generador da sefia(e9: CaJa de termttta(es Pg ra-.5
Con generador da señales: 3 cables núcleo de 2 m. Pg 13.5
Pmlecc:lón da la bolina, lEC 529 IP67
Temperatura ambienta -25"C a +50"C (-13 a 12D"'A
Régimen de trabajo Continuo
DKACV.PD-300.CN2.05
138
NPT EV260B
o
----7 ~
~~
s~
4 20 mA
Tensión: 21-30 V ce
·Dimensiones y peso
139
EV260B NPT
Pedido·
v.iivufa
Con. Material Valor Temperatura .Selección cód. ·Presión d~erencial
NPT junta de lluldo del modelo sln admisible
.bobina
•e:, ~. MIn,. MI\Íl . Mod .. Min. M:lx!)
ESpecificación
IJ:r.ll<IJ ¡m;.'r,¡ ro.r•FJ I'G/~F\
Principal
'trJSQ.li'Ml rturJDSII rtmr/esfl
q,e
"·
-2/a
PTFE·
PTFE
0,9
;0.9. ·o:s
·10 1 +14 .+80/ +17\i
-10 , .. ,4 +!ÍO I+Ü6
EV2608 Sil N14T NCOOO
,EV2608 6B NS8T NCOPO imuao&3·
o32IJB0&2 0,517.3
O,!il7,3
10/145
10 1145
·N- PTFE 1,6_ 1,3 ~1Ó J .;.,4 ·...so i +iTs· EV260B 1oB. N3BT NCOOO '032UÍI064 0.5.17.3 101145
"'1:.·· PTFE 1,6 1;.3 "10 1 +14 .;eo 1 +176 EV260B-10_9 N12T NCOOD 032U8Q65 0.517,3 10/145
.,, PTFE lÍ;5 2;1 .-101 +14 *50 1 +1i6. EV2008·15B N12T NCOilO 032UÍIOIÍ6 .'ó,5!7,3 10/145
,,, PT~E s;o 5,0 -10 1 c;.;4 ·+SO /-+176 EV2608:209 N34T. -NCÓOO 032U8067 o;sn,3 101145
Bobina
D_sscripclón. Tensión. :Senat:<m.cantrol :Especificación Código
8K024.D 018Z6987
0·10·V • ·BM 024-D_ 018Z0290
C<Jn' Ql!llllradcr de sei\ales 21 a 30 V_ e~
4-2omA BL 024 O D1BZ0291
I;IKACV,PD.3ooj~N2,~5.
140