diseÑo de un algoritmo evolutivo bio-inspirado el cual...
Post on 13-Mar-2020
25 Views
Preview:
TRANSCRIPT
DISEÑO DE UN ALGORITMO EVOLUTIVO BIO-INSPIRADO EL CUAL PERMITA SINTONIZAR UN CONTROLADOR PID CON EL FIN DE
CONTROLAR LA VARIABLE DE PROCESO “FLUJO” EN UN SISTEMA DE CONTROL DE PROCESO AMATROL T5552 UBICADO EN EL
LABORATORIO DE ELECTRÓNICA DE FACULTAD TECNOLÓGICA UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS.
DANNY ALDEMAR JIMENEZ MARTIN
COD: 20151383001
OMAR ANDRES CHIVATA CASTAÑEDA COD: 20151383011
UNIVERSIDAD DISTRITAL “FRANCISCO JOSÉ DE CALDAS”
FACULTAD TECNOLÓGICA INGENIERÍA EN CONTROL
BOGOTÁ D.C. 2017
DISEÑO DE UN ALGORITMO EVOLUTIVO BIO-INSPIRADO EL CUAL PERMITA SINTONIZAR UN CONTROLADOR PID CON EL FIN DE
CONTROLAR LA VARIABLE DE PROCESO “FLUJO” EN UN SISTEMA DE CONTROL DE PROCESO AMATROL T5552 UBICADO EN EL
LABORATORIO DE ELECTRÓNICA DE FACULTAD TECNOLÓGICA UNIVERSIDAD DISTRITAL FRANCISCO JOSÉ DE CALDAS.
DANNY ALDEMAR JIMENEZ MARTIN
COD: 20151383001
OMAR ANDRES CHIVATA CASTAÑEDA COD: 20151383011
MONOGRAFÍA PARA OPTAR POR EL TÍTULO DE INGENIEROS
EN CONTROL
DIRECTOR: MSc. Ing. EDWAR JACINTO GÒMEZ
UNIVERSIDAD DISTRITAL “FRANCISCO JOSÉ DE CALDAS” FACULTAD TECNOLÓGICA INGENIERÍA EN CONTROL
BOGOTÁ D.C. 2017
Nota de aceptación
__________________________________________________
__________________________________________________
__________________________________________________
__________________________________________________
__________________________________________________
__________________________________________________
__________________________________________________
__________________________________________________
______________________________________
Tutor
______________________________________
Jurado 1
______________________________________
Jurado 2
AGRADECIMIENTOS
En el desarrollo de la presente monografía, es imposible no mencionar la
columna principal de nuestro trabajo, el cual es nuestra familia, a ellos, les
agradecemos el apoyo incondicional, la confianza y la formación moral que nos
han brindado siempre, por no desfallecer ante las adversidades que se
presentaron a lo largo de esta etapa académica, que siempre creyeron en
nuestras capacidades de salir adelante con nuestras metas y lograr este sueño
de ser ingenieros; agradecemos también a Dios, por permitirnos estudiar una
carrera profesional y darnos las herramientas necesarias para poder ser
culminada de la mejor manera posible, por darnos salud y sabiduría para
desarrollar con el mejor de los conocimientos esta monografía, que ha sido un
proceso largo de aprendizaje e investigación, de arduas horas de trabajo y
dedicación, pero sin olvidar la gran importancia de la Universidad Distrital por
formarnos como personas integras y profesionales competitivos capaces de
aportar al desarrollo científico y tecnológico de la comunidad y del país,
mediante su programa académico y las diferentes actividades tanto
académicas como sociales desarrolladas durante la carrera. A los profesores
por impartir su conocimiento en las clases y exigir la excelencia académica y en
general a todas las personas que de alguna u otra manera nos colaboraron
siempre con la mejor disposición por atender cualquier inquietud y brindarnos
siempre su ayuda.
A ellos, infinitas gracias.
1. TABLA DE CONTENIDO
2. ÍNDICE DE TABLAS .................................................................................... 7
3. LISTA DE FIGURAS .................................................................................... 8
4. INTRODUCCIÓN ....................................................................................... 10
4.1. Planteamiento del problema ................................................................ 11
4.2. Justificación ......................................................................................... 11
4.3. Objetivos ............................................................................................. 12
4.3.1. Objetivo general ............................................................................ 12
4.3.2. Objetivos específicos .................................................................... 12
5. MARCO DE REFERENCIA ....................................................................... 12
5.1. Estado del arte .................................................................................... 12
5.2. Marco teórico ...................................................................................... 15
5.2.1. Acciones de control ...................................................................... 15
5.2.2. Diseño y análisis de sistemas de control ...................................... 18
5.2.3. Controlador PID ............................................................................ 18
5.2.4. Algoritmos Evolutivos ................................................................... 20
5.2.5. Algoritmos genéticos .................................................................... 21
5.2.6. Sensor .......................................................................................... 27
5.2.7. Actuador ....................................................................................... 28
5.2.8. PLC (Controlador Lógico Programable) ........................................ 28
5.2.9. Protocolos de comunicación ......................................................... 29
6. METODOLOGIA ........................................................................................ 31
6.1. IDENTIFICACIÓN DE LA PLANTA ..................................................... 32
6.1.1. EXPERIMENTO 1 SENAL CUADRADA: IDENTIFICACION ........ 33
6.1.2. EXPERIMENTO 2 SEÑAL ESCALON: IDENTIFICACION ........... 34
6.2. DISEÑO Y SIMULACION DEL ALGORITMO EVOLUTIVO ................ 37
6.3. IMPLEMENTAR DEL ALGORITMO EN EL PLC SIEMENS S7-300 .. 47
6.3.1. Lazo de control de proceso .......................................................... 47
6.3.2. Programación de pid en tia portal v13. ......................................... 53
6.3.3. Comunicación tia portal v13 a matlab via ethernet-opc ................ 56
7. ANALISIS DE RESULTADOS ................................................................... 60
7.1. Prueba 1 primera generación .............................................................. 61
7.2. Prueba 4 generación 40 ...................................................................... 62
7.3. Prueba 3 generación 100 .................................................................... 64
8. COMPARACION ........................................................................................ 67
9. CONCLUSIONES ...................................................................................... 71
10. BIBLIOGRAFIA ....................................................................................... 73
2. ÍNDICE DE TABLAS
Tabla 1. Características. Actuador-sensor
Tabla 2. Caracterización Set-Point
Tabla 3. Resultados primera generación
Tabla 4. Resultados generación 40
Tabla 5. Resultados generación 100
Tabla 6. Tabla de resultados en general
Tabla 7. Tabla de comparación
3. LISTA DE FIGURAS
Fig. 1 Diagrama de lazo de control abierto
Fig. 2 Diagrama de lazo de control cerrado
Fig. 3 Partes y variables de un lazo de control cerrado
Fig. 4 Diagrama de bloques sistema
Fig. 5 Valores de cada acción de un controlador PID
Fig. 6 Esquema de funcionamiento de los algoritmos genéticos
Fig. 7 Ejemplo de la selección por torneo
Fig. 8 Cruce de 1 punto
Fig. 9 Cruce de 2 puntos
Fig. 10 Cruce uniforme
Fig. 11 Sensor de engranajes ovalados
Fig. 12 Metodología
Fig. 13 Respuesta de la planta ante una señal cuadrada
Fig. 14 Datos exportados y graficados en Excel, señal de salida invertida
Fig. 15 Respuesta de la planta ante una señal escalón
Fig. 16 Datos exportados y graficados en Excel, señal de salida invertida
Fig. 17 Función de transferencia Ident
Fig. 18. Resultado de la Identificación
Fig. 19. Respuesta señal escalón función de transferencia
Fig. 20. Salida de la planta a variaciones de la señal de entrada
Fig. 21 Condiciones de diseño para el controlador PID
Fig. 22 Diagrama de bloques para la aplicación del algoritmo a un PID
Fig. 23 Estructura general del algoritmo genético
Fig. 24. Población inicial de 10 individuos, constantes Kp, Ti y Td
Fig. 25. Diagrama de bloques, controlador por planta
Fig. 26. Vector error, fitnnes y adaptabilidad
Fig. 27. Similitud selección por ruleta
Fig. 28. Ruleta y total descendientes
Fig. 29. Cruce uniforme un punto
Fig. 30. Población aplicando selección y cruce
Fig. 31. Mutación
Fig. 32 Diagrama de bloques de un sistema retroalimentado
Fig. 33 Lazo de control
Fig. 34 PLC Siemens S7-300
Fig. 35 Válvula de actuador de diafragma
Fig. 36 Convertidor I/P en el proceso de control
Fig. 37 Partes externas de un convertidor I / P
Fig. 38 Sensor de flujo de rueda de paletas en un sistema de control de flujo
Fig. 38 Diagrama de bloques, sistema de control digital en lazo cerrado
Fig. 40 funcionamiento del algoritmo en el PLC
Fig. 41 PLC S7-300, CPU 313C, V3.3 y sus características
Fig. 42 Configuración de entradas y salidas análogas PLC
Fig. 43 Escalización de señales análogas de entrada al PLC
Fig. 44 Dirección IP del PLC
Fig. 45 Dirección IP del ordenador
Fig. 46 Programación TIA PORTAL
Fig. 47 Etiquetas enlazadas entre TIA PORTAL y KEPSERVER
Fig. 48 Montaje en SIMULINK para la comunicación OPC
Fig. 49 Comunicación en línea entre TIA PORTAL, KEPSERVER y MATLAB
Fig. 50 Respuesta de la planta AG generación1
Fig. 51 Lectura registrada por el osciloscopio generación 1
Fig. 52 Respuesta de la planta AG generación 40
Fig. 53 Lectura registrada por el osciloscopio generación 40
Fig. 54 Respuesta de la planta AG generación 100 línea verde
Fig. 55 Lectura registrada por el osciloscopio generación 100
Fig. 56 Error
Fig. 57 Respuesta del sistema controlador PID Honeywell
Fig. 58 Valor de referencia, set-point PID Honeywell
Fig. 59 Respuesta del sistema controlador PID Honeywell cambio de ref.
4. INTRODUCCIÓN
Los controladores son dispositivos capaces de mantener una variable de
proceso a un determinado valor de referencia. El control automático se ha
convertido en una parte importante e integral en los sistemas de vehículos
espaciales, en los sistemas robóticos, en los procesos modernos de fabricación
y en cualquier operación industrial que requiera el control de temperatura,
presión, humedad, flujo, etc. [1] En la industria los más utilizados son los
sistemas de regulación PID, debido a que es una estrategia de control estable,
compacta, robusta y de fácil implementación que se pueden emplear para
cualquier proceso de lazo cerrado.
En algunas ocasiones puede presentar fallas en su funcionamiento debido a
factores externos como perturbaciones que ingresan al sistema o condiciones
nuevas de funcionamiento. Para realizar su diseño y sintonización existen
diferentes métodos heurísticos convencionales que se basan en modelos
matemáticos para encontrar las mejores constantes de puesta en marcha, la
gran mayoría de lazos de control han sido sintonizados por medio del
procedimiento de prueba y error obteniendo parámetros de buenos resultados.
En esta ocasión se pretende realizar la sintonización de un PID por medio del
desarrollo de un algoritmo evolutivo, con el fin de llevar a cabo una nueva
estrategia capaz de realizar el control de la variable de proceso flujo en la
planta AMATROL T5552 ubicada en el laboratorio de electrónica facultad
tecnológica, representando el modelo de la planta por una función de
transferencia su controlador y lazo de retroalimentación [2]. Inicialmente se
parte de un conjunto de soluciones planteadas aleatoriamente, luego son
elegidas o modificadas de acuerdo a su adaptación con el medio, y por ultimo
evaluadas con el fin de obtener una mejor respuesta al sistema teniendo como
función objetivo el error de estado estacionario.
4.1. Planteamiento del problema
El laboratorio de electrónica de la Universidad Distrital Francisco José de
Caldas facultad tecnológica, cuenta con cuatro plantas de control de procesos
de la línea AMATROL. El sistema T552 nivel y control de flujo de proceso
enseña dos de los tipos más comunes de sistemas de control de procesos flujo
y nivel de líquidos y los conceptos básicos sobre los cuales se basan otros
sistemas [3].Dispone de una válvula proporcional y un sensor de caudal que
transfiere la cantidad de galones por minuto que transitan por el sistema a un
transmisor de flujo que es el dispositivo que finalmente proporcional la
información de salida. Con estos dos elementos y un controlador es posible
enlazar un sistema de control retroalimentado capaz de mantener una cantidad
determinada de flujo de agua, el inconveniente radica en que a la hora de
poner en marcha el sistema es difícil determinar los parámetros de control
debido a que no se saben con exactitud las especificaciones de la planta y al
ajustar un determinado caudal manualmente de manera continua y
supervisada, con el paso del tiempo los elementos del lazo pueden presentar
deterioro debido a que no es una forma automatizada y óptima para su debido
funcionamiento. Para este y muchos otros casos la tarea de sintonización no es
un trabajo sencillo debido a la complejidad del sistema, en la industria no es
viable detener la actividad en una planta para determinar sus características ya
que esto significa parar la producción, en general no es posible efectuar una
sintonización para una persona que no tenga conocimientos profundos en
sistemas de control.
4.2. Justificación
Se considera que es un proyecto enfocado al desarrollo de un algoritmo
evolutivo que tiene como objetivo encontrar un método diferente a los que ya
existen para la sintonización de un controlador PID, de tal manera que
cualquier persona que no tenga amplios conocimientos hacia los sistemas de
control, lo pueda implementar fácilmente, con el fin de determinar una solución
óptima y robusta a perturbaciones que desestabilicen el sistema .Fue utilizado
el software de programación MATLAB para la simulación del algoritmo y un
PLC Siemens S7-300 para su implementación.
4.3. Objetivos
4.3.1. Objetivo general
Proponer un algoritmo evolutivo bio-inspirado el cual permita sintonizar un
controlador PID con el fin de controlar la variable de proceso "Flujo" en un
sistema de control de proceso AMATROL T5552 ubicado en el laboratorio de
electrónica de facultad tecnológica universidad Distrital Francisco José de
Caldas.
4.3.2. Objetivos específicos
1. Realizar la identificación del sistema de control de proceso T5552 de
manera experimental para obtener una expresión matemática que describa
su comportamiento
2. Diseñar y simular el algoritmo evolutivo teniendo en cuenta que los
parámetros a evolucionar sean las constante proporcional, integral y
derivativa
3. Implementar el algoritmo evolutivo propuesto en el controlador lógico
programable PLC Siemens S7-300
4. Comparar los resultados obtenidos sintonizando el controlador mediante el
algoritmo propuesto y otro método de sintonización del mismo controlador
en un sistema de control de proceso AMATROL T5552.
5. MARCO DE REFERENCIA
5.1. Estado del arte
Muchos problemas de optimización que aparecen en los ámbitos de las
ingenierías son muy difíciles de solucionar por medio de técnicas tradicionales
como por ejemplo en el área de control de procesos que trabaja la
sintonización de lazos, mediante varias metodologías como las curvas de
reacción [4], otros métodos son gráficos los cuales se trabajan con ayuda de
una simulación por computadora [5] o algunos métodos matemáticos que se
basan en la ecuación general de un sistema [1], aunque estas metodologías
son frecuentemente utilizadas, en algunos casos no lograr cumplir su función
eficientemente ya sea por perturbaciones ajenas al sistema, por lo que a
menudo se aplican algoritmos evolutivos, entre otras nuevas técnicas como
lógica difusa y algoritmos genéticos, que son métodos de optimización y
búsqueda de soluciones inspirados en la naturaleza, que recogen un conjunto
de modelos basados en la evolución de los seres vivos [6].
Por otro lado, es importante señalar que hacer uso de las técnicas de control
moderno para el diseño e implementación de sistemas de control, permite
mejorar el desempeño alcanzado con las técnicas convencionales de control
brindando la posibilidad de aprovechar de una mejor manera los recursos del
planeta. A manera de ejemplo, es posible mencionar, que un lazo de control
diseñado por medio de lógica difusa para un sistema de aire acondicionado,
presenta un error en estado estacionario inferior al presentado en un
controlador PID [7]; Por otro lado, en la Universidad Tecnológica PETRONAS
de Malasia, se comparó el desempeño de un controlador de lógica difusa (FLC,
por sus siglas en inglés) y un controlador PID, en el control de flujo de una
planta. Con la ayuda de este trabajo, fue posible evidenciar que en este tipo de
procesos, a pesar que los controladores PID presentan un buen desempeño,
los controladores FLC, presentan una mejor estabilidad y un menor tiempo de
establecimiento que los obtenidos con ayuda de los primeros (Para mayor
información [7]).
Aunque varios artículos plantean algunas aplicaciones con controladores
lógicos programables y proponen también una metodología para la
implementación de controladores basados en lógica difusa en un PLC S7-300
empleando el lenguaje de programación SCL (Lenguaje de control
estructurado) de STEP 7 [8]. Esto se realiza mediante la elaboración de la
función difusa la cual es embebida dentro del controlador para realizar el
control de un sistema cualquiera. Este esquema permite a implementación de
controladores adaptativos o auto sintonizados y por ultimo muestran un ejemplo
de aplicación para un sistema de tiempo discreto simulado en el PLC,
empleando un controlador difuso PI [8].
Como búsqueda paralela al tema central de este documento se encuentra que
se han propuesto y en algunos casos implementado, varios proyectos algunos
de algoritmos genéticos aplicados en el área de computación evolutiva con el
objetivo de obtener mejor rendimiento y soluciones a problemas de
optimización con un alto grado de dificultad, otros, como la Universidad
Politécnica de Valencia, en España, donde también empleando algoritmos
genéticos en invernaderos, logran la implementación de un algoritmo genético
en un sistema de control con SCADA, mejorando y optimizando el
funcionamiento de aquel invernadero y estableciendo que la implementación
que lograron está abierta a cualquier invernadero al que se desee optimizar [9].
Los algoritmos genéticos fueron propuestos por el profesor John Holland
(1992), están basados en la selección natural presente en la naturaleza y son
una herramienta potente para la resolución de problemas de optimización [8].
Fuera del área de control de procesos, y mientras el poder de la evolución gana
reconocimiento cada vez más generalizado, los algoritmos genéticos se utilizan
para abordar una amplia variedad de problemas en un conjunto de campos
sumamente diverso, demostrando claramente su capacidad y su potencial.
Como por ejemplo, en la Acústica, donde en el 2002 utilizaron algoritmos
genéticos para diseñar una sala de conciertos con propiedades acústicas
óptimas, maximizando la calidad del sonido para la audiencia, para el director y
para los músicos del escenario. Esta tarea implica la optimización simultánea
de múltiples variables. Comenzando con una sala con forma de caja de
zapatos, el Algoritmo Genético de los autores produjo dos soluciones no
dominadas, Los autores afirman que estas soluciones tienen proporciones
similares al Grosser Musikvereinsaal de Viena, el cual está considerado
generalmente como una de las mejores -si no la mejor- salas de conciertos del
mundo, en términos de propiedades acústicas [10].
En la ingeniería aeroespacial [10], Keane y Brown 1996 utilizaron un AG para
producir un nuevo diseño de un brazo o jirafa para transportar carga que
pudiese montarse en órbita y utilizarse con satélites, estaciones espaciales y
otros proyectos de construcción aeroespacial. El resultado, una estructura
retorcida con aspecto orgánico que se ha comparado con un fémur humano, no
utiliza más material que el diseño de brazo estándar, pero es ligera, fuerte y
muy superior a la hora de amortiguar las vibraciones perjudiciales, como
confirmaron las pruebas reales del producto final. Y sin embargo “Ninguna
inteligencia produjo los diseños. Simplemente evolucionaron'' .Los autores del
artículo comentan además que su AG sólo se ejecutó durante 10 generaciones,
debido a la naturaleza computacionalmente costosa de la simulación, y la
población no se había estancado todavía. Haber proseguido la ejecución
durante más generaciones habría producido indudablemente mayores mejoras
de rendimiento.
5.2. Marco teórico
5.2.1. Acciones de control
En la actualidad en las modernas fábricas e instalaciones industriales, se hace
cada día más necesario de disponer de sistemas de control o de mando, que
permitan mejorar y optimizar una gran cantidad de procesos, en donde la sola
presencia del hombre es insuficiente para gobernarlos. La industria espacial,
papelera, textil, del cemento, etc. son algunos ejemplos de lugares en donde se
necesitan sistemas de control, cuya complejidad ha traído como consecuencia
el desarrollo de técnicas dirigidas a su proyecto y construcción. [11]
Básicamente los sistemas de control se pueden dividir en dos tipos: de lazo
abierto y de lazo cerrado.
Un ejemplo típico de sistema de control en lazo abierto es la regulación de una
lavadora o de los semáforos de una ciudad. En estos sistemas de control se
sigue una secuencia prefijada pero el sistema no toma información del medio
para ver si su acción sobre éste produce los efectos deseados. [12] Por
ejemplo, un semáforo en una calle de acceso a un estadio de fútbol no cambia
su secuencia sea o no día de partido
Fig. 1 Diagrama de lazo de control abierto (archivo del autor)
Un sistema de control en lazo cerrado es aquel que trata de mantener una
relación preestablecida entre una variable de salida y otra de entrada
comprobando las funciones de esas variables y utilizando la diferencia como
modo de control.
Fig. 2 Diagrama de lazo de control cerrado [33].
Antes de analizar los sistemas de control, deben definirse ciertos términos
básicos.
Variable controlada.
La variable controlada es la cantidad o condición que se mide y controla [14].
Señal de control o variable manipulada. La señal de control o variable
manipulada es la cantidad o condición que el controlador modifica para afectar
el valor de la variable controlada.
Normalmente, la variable controlada es la salida del sistema. Controlar significa
medir el valor de la variable controlada del sistema y aplicar la variable
manipulada al sistema para corregir o limitar la desviación del valor medido
respecto del valor deseado.
Fig. 3 Partes y variables de un lazo de control cerrado ()
Procesos o Planta. Una planta es un equipo o un proceso sea físico, químico
o mecánico o en algunos casos una unión entre estos, cuyo objetivo es realizar
una operación determinada [13].
Se llamara planta o proceso a cualquier objeto físico que deba controlarse, por
ejemplo hornos de calentamiento, reactores químicos, entre otros. [14]
Sistemas. Un sistema es una combinación de componentes que actúan juntos
y realizan un objetivo determinado. Un sistema no está necesariamente
limitado a los sistemas físicos. El concepto de sistema se puede aplicar a
fenómenos abstractos y dinámicos. Por tanto, la palabra sistema debe
interpretarse en un sentido amplio que comprenda sistemas físicos, biológicos,
económicos y similares.
Perturbaciones. Una perturbación es una señal que tiende a afectar
negativamente el valor de la salida de un sistema o directamente al proceso. Si
la perturbación se genera dentro del sistema se denomina interna, mientras
que una perturbación externa se genera fuera del sistema y es una entrada [1].
Control. Significa medir el valor de la variable controlada del sistema y aplicar
al sistema la variable manipulada para corregir o limitar la desviación del valor
medido, respecto al valor deseado (Set point) [14].
Control realimentado. El control realimentado se refiere a una operación que,
en presencia de perturbaciones, tiende a reducir la diferencia entre la salida de
un sistema y alguna entrada de referencia, y lo realiza tomando en cuenta esta
diferencia [1].
Especificaciones de comportamiento. Los sistemas de control se diseñan
para realizar tareas específicas. Los requisitos impuestos sobre el sistema de
control se dan como especificaciones de comportamiento diseño de
controladores.
Las especificaciones pueden venir dadas como requisitos en:
La respuesta transitoria, como, por ejemplo, la máxima sobre elongación y
el tiempo de asentamiento en la respuesta a un escalón)
El estado estacionario, como, por ejemplo, el error en estado estacionario
frente a una entrada tipo rampa.
Las especificaciones de un sistema de control se deben dar antes de que
comience el proceso de diseño.
Función de transferencia. La función de transferencia de un sistema descrito
mediante una ecuación diferencial lineal e invariante en el tiempo se define
como el cociente entre la transformada de Laplace de la salida (función de
respuesta) y la transformada de Laplace de la entrada (función de excitación)
bajo la suposición de que todas las condiciones iniciales son cero [1].
5.2.2. Diseño y análisis de sistemas de control
Diseño. Al diseñar un sistema de control se necesita recurrir a un modelo
matemático con el fin de encontrar una función para los controladores que
dadas las entradas de referencia, produzcan señales de control tales que las
salidas del sistema cumplan lo especificado
Análisis. Teniendo el modelo matemático del sistema, es posible estudiar
cómo actúa el sistema real y sacar conclusiones sin la necesidad del sistema
real (ya sea porque todavía no está construido, es caro probarlo o lleva mucho
tiempo)
Algunas características a analizar teniendo el modelo matemático son [14]:
Estabilidad: Se dice que un sistema de control es estable cuando responde de
forma limitada a cambios limitados en la variable controlada
Exactitud: Un sistema es exacto cuando es capaz de mantener el error en un
valor aceptable.
Velocidad de Respuesta: es la rapidez con que la variable controlada se
aproxima a la señal de referencia.
5.2.3. Controlador PID
Un controlador PID es un dispositivo que ejecuta un control sobre una
realimentación de un lazo cerrado, capaz de calcula la desviación o error entre
un valor medido y un valor deseado. Se caracteriza por ser robusto en muchas
aplicaciones y por ser ampliamente utilizado en la industria. La estructura de un
controlador PID es sencilla y practica al momento de ser implementada, por
esta razón también es limitado el rango de plantas donde puede operar de
forma satisfactoria. (Existe un grupo de plantas inestables que no pueden ser
estabilizadas con ningún un miembro de la familia PID) [1].
Estructura del PID
Fig. 4 Diagrama de bloques sistema SISO. [15]
Los miembros de la familia de controladores PID, incluyen tres acciones,
proporcional (P), integral (I) y derivativa (D). Estos controladores son los
denominados P, I, PI, PD y PID
P, Acción de control proporcional:
Se define como el producto entre la señal de error y la constante proporcional,
teniendo en cuenta que es una ganancia variable y al modificar su valor el
tiempo de respuesta del sistema disminuirá, pero posee un rango de operación
limitado y un error de estado estacionario permanente, por esta razón con un
controlador proporcional la variable a controlar nunca llegara a la referencia
requerida [1].
I, Acción de control integral:
El controlador integral tiene como finalidad disminuir y eliminar el error de
estado estacionario generado por el modo proporcional, opera cuando existe
una diferencia entre la variable a controlar y el punto de referencia, integrando
esta variación en un tiempo determinado [4], [1].
PI, Acción de control proporcional - integral:
Con un control proporcional, es necesario que exista error para tener una
acción de control distinta de cero. Con acción integral, un error pequeño
positivo siempre nos dará una acción de control creciente, y si fuera negativo
la señal de control seria decreciente. Este razonamiento sencillo nos muestra
que el error en régimen permanente será siempre cero.
Muchos controladores industriales tienen solo acción PI. Se puede demostrar
que un control PI es adecuado para todos los procesos donde su
comportamiento es de primer orden. Lo que puede demostrarse en forma
sencilla, por ejemplo, mediante una entrada al escalón
PID, Acción de control proporcional-integral-derivativa:
Esta acción combinada reúne las ventajas de cada una de las tres acciones de
control individuales. Teniendo en cuenta que en la acción derivativa la
respuesta del control se basa en la velocidad de cambio del error. Por esta
razón, este tipo de acción se caracteriza porque tiene un comportamiento
eficaz durante periodos transitorios, sin embargo amplifica las señales de ruido
y puede provocar un efecto de saturación en los actuadores del sistema [1].
Adicionalmente es importante tener en cuenta que a partir de los valores de
cada una de las constantes correspondientes a las acciones de control, se
obtienen diferentes comportamientos, como se muestra en la siguiente tabla
Fig. 5 Valores de cada acción de un controlador PID para diferentes comportamientos. [7]
5.2.4. Algoritmos Evolutivos
Los algoritmos evolutivos son técnicas de optimización y búsqueda de
soluciones, que toman como inspiración la evolución en distintos sistemas
biológicos. La idea fundamental de estos algoritmos es mantener un conjunto
de individuos que representan una posible solución del problema. Estos
Individuos se mezclan y compiten entre sí [5], siguiendo el proceso de
selección natural en el cual los que mejor se adapten al entorno sobreviven al
paso del tiempo y a medida que siguen su proceso de evolución, se logra
encontrar la solución más óptima al problema. Cada ciclo o cada
transformación en la cual estos individuos se someten a diferentes
transformaciones, se denomina Generación, proceso que se basa en una
búsqueda aleatoria enfocada hacia el resultado.
Los algoritmos evolutivos han tenido una adopción muy rápida tanto en la
industria como en el ámbito civil o militar. Actualmente, muchos centros de
investigación dedican ya importantes inversiones dentro de sus presupuestos a
la aplicación de técnicas de inteligencia artificial en general y de computación
evolutiva en particular [5].
5.2.5. Algoritmos genéticos
Es considerada una técnica de modificación del estilo evolutivo en general, el
cual modela el proceso de evolución como una sucesión de frecuentes cambios
en los genes, basado en el proceso de selección natural. Como ya se ha
mencionado anteriormente, trabaja sobre un conjunto de posibles soluciones
llamada población, compuesta por individuos que están conformados por una
serie de posiciones que representan cada una de las variables involucradas en
los procesos de optimización y que son llamados cromosoma [16]. A medida
que avanzan las generaciones, se crean nuevos individuos llamados hijos
utilizando estrategias y operadores matemáticos como lo son el cruce y la
mutación (empleadas generalmente de forma aleatoria [16]).
El proceso de selección se realiza sobre los valores de evaluación que
inicialmente obtiene cada individuo, de esta manera el que tenga mayor
calificación tendrá más posibilidades de reproducirse en el proceso,
manteniendo constante el número de individuos de la población.
Fig. 6 Esquema de funcionamiento de los algoritmos genéticos [16].
Algunos de los siguientes conceptos son utilizados o mencionados en la
genética y estructura equivalente a los algoritmos genéticos
Cromosoma: es la molécula única de ADN, unida a histonas (proteínas
básicas) y otras proteínas que se condensa durante la mitosis (proceso de
división celular- reparto equitativo del material hereditario) y la meiosis (proceso
de fragmentación —divisiones pequeñas), formando una estructura compacta
[17].
Gen: especifica la herencia de un carácter; está formado por una secuencia de
aminoácidos de una o más cadenas de ARN (ácido ribonucleico: interviene en
diferentes neuronas, en la expresión de la información genética), que realizan
diferentes funciones en la cadena [17].
Función de aptitud: es un tipo especial de función que cuantifica la
optimalidad de una solución. Se traduce en un cromosoma óptimo para que sus
bases sean combinadas con cualquier otra técnica para la producción de una
nueva generación que sea mejor a las anteriores [17].
Genotipo: Conjunto completo de cromosomas
Fenotipo: Individuo en particular, Organismo resultante.
Operadores Evolutivos
Dentro del algoritmo, existen y pueden ser utilizadas diferentes técnicas
matemáticas y computacionales, también llamadas operadores genéticos que
son aplicadas para el paso de una generación a la siguiente. Algunos de estos
operadores son:
Operadores de selección
Los operadores de selección serán los encargados de escoger que individuos
van a disponer de oportunidades de reproducirse y cuáles no. Se ha de otorgar
un mayor número de oportunidad de reproducción a los individuos más aptos
[18] con respecto a la evolución y calificación inicial. Es importante resaltar que
se debe dar una posibilidad de reproducirse a los individuos menos aptos ya
que estos contienen material genético útil en el proceso de reproducción. Los
mayormente utilizados son:
Selección por ruleta
Es uno de los operadores más utilizados en la historia de los algoritmos
genéticos. A cada uno de los individuos de la población se le asigna una parte
proporcional a su ajuste de una ruleta, de tal forma que la suma de todos los
porcentajes sea la unidad. Los mejores individuos recibirán una porción de la
ruleta mayor que la recibida por los peores [18]. La ruleta se juega generando
un número aleatorio entre cero y uno y ubicando al individuo en la región que
le pertenezca en ese valor de acuerdo a las proporciones realizadas. A este
individuo se le asigna un descendiente.
Selección por torneo
Se efectúa mediante un torneo (comparación) entre un pequeño subconjunto
de individuos elegidos al azar desde la población [18]. El cromosoma más apto
es seleccionado para pasar a la siguiente generación. Cuando participan
muchos individuos en cada torneo algunos de los peores pueden tener
oportunidades de reproducción.
Fig. 7 Ejemplo de la selección por torneo [18],
Operadores de cruzamiento
El cruzamiento es una herramienta utilizada para introducir e intercambiar
información entre los cromosomas. La idea principal del cruce en tomar los
individuos previamente seleccionados y obtener una descendencia que
comparta sus genes. Al compartir las características de los individuos
correctamente es posible que estos sean los causantes de proporcionar una
solución aproximada. Existen multitud de operadores de cruce. Sin embargo los
más empleados son los siguientes:
Cruce de 1 punto
Son seleccionados al azar dos individuos de manera aleatoria, para generar
dos segmentos diferenciados en cada uno de ellos [19], se intercambian los
fragmentos con el fin de obtener nuevos descendientes, de esta manera ambos
sucesores heredan información genética de los padres
Fig. 8 Cruce de 1 punto [18]
Cruce de 2 puntos
Es similar a la dinámica manejada por el cruce de un punto, en vez de cortar
por un único punto al cromosoma de los padres se realizan dos cortes.
Teniendo en cuenta que ninguno de estos puntos de corte coincidan en el
extremo de los cromosomas para garantizar que se originen tres segmentos.
Para generar la descendencia se escoge el segmento central de uno de los
padres y los fragmentos laterales del otro padre [18].
Fig. 9 Cruce de 2 puntos [18]
Estudios resaltan que el cruce de dos puntos aporta mejores resultados que el
cruce de un punto, cabe resaltar que se pueden añadir más puntos de cruce
(cruce múltiplo), logrando que el espacio de búsqueda sea explorado más a
fondo, pero en la mayoría de los casos reduce el rendimiento del algoritmo
genético.
Cruce uniforme
La técnica implica la generación de una máscara de cruce con valores binarios.
Si en una de las posiciones de la máscara hay un 1, el gen situado en esa
posición en uno de los descendientes se copia del primer padre. Si por el
contrario hay un 0 el gen se copia del segundo padre. Para producir el segundo
descendiente se intercambian los papeles de los padres, o bien se intercambia
la interpretación de los unos y los ceros de la máscara de cruce [19].
Fig. 10 Cruce uniforme [19]
Operadores de Mutación
La mutación tiene como objetivo lograr que alguno de los genes de un
individuo, varié su valor de forma aleatoria. Si bien el operador de cruce se
encarga de hacer una búsqueda en el espacio de posibles soluciones, es el
operador de mutación el encargado de aumentar o reducir el espacio de
búsqueda en un algoritmo genético y de proporcionar cierta variabilidad
genética de los individuos [20].
Mutación gaussiana
Dado un cromosoma con un gen seleccionado , se le aplica una distribución
normal de media y desviación estándar (parámetro). Dado un
cromosoma como j-ésimo de un gen seleccionado para mutación, se produce
un cromosoma de la siguiente forma:
Donde es una distribución normal con media y desviación estándar
(parámetro). Se puede disminuir el valor de a mediad que aumente el número
de generaciones [20].
Mutación polinomial
Este operador genera soluciones cercanas con una probabilidad más alta con
respecto al individuo seleccionado para la mutación. Utiliza una distribución de
probabilidad polinomial de la siguiente manera:
( )
Siendo , la es igual a:
Y si , entonces resulta:
[ ]
⁄
Mutación Uniforme
Este operador remplaza todo el genoma (conjunto de genes) al azar. Puede ser
utilizado para genes enteros y de coma flotante. Por ejemplo, dada una
población { }, el individuo mutado será: { } donde
es el individuo alterado con un valor entre rangos mínimos y máximos,
usando una distribución uniforme [20].
5.2.6. Sensor
Dispositivo que detecta una determinada acción externa, temperatura, presión,
etc., y la transmite adecuadamente (Diccionario de la real academia de la
lengua española).
Los sensores de flujo (movimiento de fluidos), pueden ser clasificados en
cuatro categorías de acuerdo a la manera en la que miden la salida, estas son:
Diferencial de presión
Velocidad
Volumen
Masa
Sensores de presión diferencial
Dispositivo capaz de medir la diferencia de presión provocada por la inserción
de un elemento en el conducto (tubo) donde se desea calcular la medición [21].
Los más utilizados y algunos con los que cuenta el laboratorio de la universidad
son el tubo de Pitot, tubo de Venturi, y las placas de orificio.
Sensores de flujo de velocidad
Los sensores de flujo de velocidad determinan el caudal volumétrico basado en
la velocidad del fluido del proceso. Incluyen sensores de flujo magnéticos, de
turbina, de ultrasonidos y de vórtice [21].
Sensores de flujo volumétrico
También llamados sensores de desplazamiento positivos, Contienen
típicamente uno o más engranajes giratorios o rotores que miden el flujo,
atrapando una cantidad conocida de fluido de proceso en el sensor. Por lo
tanto, el volumen de fluido que pasa a través del sensor es proporcional al
caudal. Incluyen engranajes ovales, engranajes helicoidales y sensores de
disco de rodamiento. En la figura 25 se puede observar un sensor de flujo de
engranajes ovalado. Cuando los dos engranajes giran, atrapan un volumen
conocido de fluido entre el engranaje y el cuerpo del sensor. Un captador
magnético detecta la rotación de los engranajes ovalados, que generan un
pulso cada vez que el fluido queda atrapado. Un transmisor calcula el caudal
basado en la frecuencia de impulsos [21].
Fig. 11 Sensor de engranajes ovalados [21]
Sensores de flujo de masa
Miden el caudal másico tanto de líquidos como de gases. Incluye el medidor de
coriolis y sensores de flujo térmico. Algunos sensores son capaces de medir el
flujo másico directamente, Independiente de las propiedades físicas del fluido
[21],
5.2.7. Actuador
Dispositivo inherentemente mecánico cuya función es proporcionar fuerza para
mover o “actuar” otro dispositivo mecánico. La fuerza que provoca el actuador
proviene de tres fuentes posibles: Presión neumática, presión hidráulica, y
fuerza motriz eléctrica (motor eléctrico o solenoide). Dependiendo del origen de
la fuerza el actuador se denomina “neumático”, “hidráulico” o “eléctrico” [22].
5.2.8. PLC (Controlador Lógico Programable)
Un controlador lógico programable, más conocido por sus siglas en inglés PLC
(Programmable Logic Controller) o por autómata programable, es una
computadora utilizada en la ingeniería automática o automatización industrial,
para automatizar procesos electromecánicos, tales como el control de la
maquinaria de la fábrica en líneas de montaje o atracciones mecánicas.
Los PLC son utilizados en muchas industrias y máquinas. A diferencia de las
computadoras de propósito general, el PLC está diseñado para múltiples
señales de entrada y de salida, rangos de temperatura ampliados, inmunidad al
ruido eléctrico y resistencia a la vibración y al impacto. Los programas para el
control de funcionamiento de la máquina se suelen almacenar en baterías
copia de seguridad o en memorias no volátiles. Un PLC es un ejemplo de un
sistema de tiempo real «duro», donde los resultados de salida deben ser
producidos en respuesta a las condiciones de entrada dentro de un tiempo
limitado, de lo contrario no producirá el resultado deseado. [23]
5.2.9. Protocolos de comunicación
En informática y telecomunicación, un protocolo de comunicaciones es un
sistema de reglas que permiten que dos o más entidades de un sistema de
comunicación se comuniquen entre ellas para transmitir información por medio
de cualquier tipo de variación de una magnitud física. Pueden ser
implementados por hardware, por software, o por una combinación de ambos.
Ethernet
Ethernet, al que también se conoce como IEEE 802.3, es el estándar más
popular para las LAN, usa el método de transmisión de datos llamado Acceso
múltiple con detección de portadora y detección de colisiones (CSMA/CD).
Antes de que un nodo envíe algún dato a través de una red Ethernet, primero
escucha y se da cuenta si algún otro nodo está transfiriendo información, de no
ser así, el nodo transferirá la información a través de la red. Todos los otros
nodos escucharán y el nodo seleccionado recibirá la información. En caso de
que dos nodos traten de enviar datos por la red al mismo tiempo, cada nodo se
dará cuenta de la colisión y esperará una cantidad de tiempo aleatoria antes de
volver a hacer el envío. Cada paquete enviado contiene la dirección de la
estación destino, la dirección de la estación de envío y una secuencia variable
de bits que representa el mensaje transmitido.
OPC
OPC es un "protocolo" de comunicaciones abierto que permite la comunicación
entre aplicaciones informáticas y que permite la interoperabilidad entre
diferentes fabricantes de software y hardware [24].
La arquitectura de una red que trabaja con el standard OPC siempre consta al
menos de 3 partes.
- Dispositivo o aplicación (hardware o software). De cualquier marca o
fabricante, el cual genera o contiene los datos que queremos obtener.
Podemos estar hablando de un PLC, un DCS, una Base de Datos, un
fichero de Excel, un RTU, un Switch, un Router o cualquier otro
hardware o software que contenga datos [25].
- Servidor OPC específico para este Hardware o Software. Un
Servidor OPC es un software que "conoce" el lenguaje propietario del
Hardware o Software de dónde se sacarán los datos.
- Cliente OPC. Un Cliente OPC es un software que tiene implementadas
las especificaciones estándar y que puede comunicarse con cualquier
Servidor OPC. Al ser OPC un protocolo abierto, cualquier Cliente OPC
puede conectarse con cualquier Servidor OPC sin importar
desarrolladores ni fabricantes. Un Cliente puede ser una aplicación en
Visual Basic, un SCADA ya que todos incorporan esta funcionalidad, una
aplicación tipo Lab View, etc.
6. METODOLOGIA
Para el diseño y la implementación de este proyecto, se llevaron a cabo una
serie de pasos empezando por la caracterización del sistema, seguido por el
diseño y la simulación del algoritmo en Matlab y por último la validación,
comparación e implementación utilizando un PLC Siemens de la gama S7-
300,procedimiento explicada en la figura 12.
Fig. 12 Metodología (Archivo del autor)
IDENTIFICACIÓN
DE LA PLANTA
Para la identificación de la planta, fue aplicada una
señal escalón al sistema, donde se recopiló la
información suficiente para obtener una expresión
matemática (Función de Transferencia)
DISEÑO DEL
ALGORITMO
Se realizó el diseño del algoritmo en Matlab, para
realizar combinaciones entre un controlador P, PI y
PID por medio de una estrategia evolutiva.
IMPLEMENTACIÓN
DEL ALGORITMO
Una vez desarrollado el algoritmo, se procedió con
la implementación del mismo por medio de la
comunicación OPC.
VALIDACIÓN
Fueron llevadas a cabo varias pruebas con diferentes
generaciones que demuestran la sintonización del
controlador por medio de las constantes Kp, Ti y Td
generadas por el AG.
COMPARACIÓN
Una vez realizados varios experimentos sobre la
variable de proceso, se procedió con a comparación
de los resultados obtenidos con el AG y otro método
de sintonización.
6.1. IDENTIFICACIÓN DE LA PLANTA
La forma clásica de modelar sistemas lineales es utilizar funciones de
transferencia para representar la relacion entrada-salida entre variables [27].
Las señales de prueba que se usan regularmente son funciones escalón,
rampa, parábola, impulso, etc. Con estas señales, es posible realizar con
facilidad análisis matemáticos y experimentales de sistemas de control, ya que
son funciones de tiempo muy simples [27]. Para obtener los datos de la planta
y realizar la identificación del sistema, se aplicó una señal escalón de
diferentes magnitudes a la válvula proporcional la cual permite variar el caudal
entre 0 GPM Y 0.7 GPM. La información fue registrada con ayuda del
osciloscopio marca RIGOL DS1052-E que permite exportar los datos en un
formato de texto plano para posteriormente ser procesados en un ordenador.
Fueron realizadas diferentes pruebas variando la señal de referencia como se
mencionó anteriormente, con el fin de obtener el modelo más aproximado
posible. Cabe resaltar que la acción de la válvula es inversamente proporcional
a la medida del sensor, es decir cuando el actuador recibe una señal de 4ma,
la válvula abre y permite el flujo de agua, el trasmisor arroja 20ma de salida y
viceversa. Al accionar el actuador con 20ma cierra el flujo de agua y el
trasmisor corrobora 4ma en su señal de salida
Tabla1. Características. Actuador-sensor
Elemento
Señal de entrada
flujo
Señal de salida
(sensor)
Válvula
4ma
permite el paso
de agua
20ma
Válvula
20ma
No permite el
paso de agua
4ma
6.1.1. EXPERIMENTO 1 SENAL CUADRADA: IDENTIFICACION
Inicialmente se generó una onda cuadrada en el controlador lógico
programable PLC con un periodo de 4 segundos, señal aplicada al actuador.
Se ubicó una de las sondas del osciloscopio a la entrada del sistema (CH1) y la
otra a la salida del mismo (CH2). De esta manera fue posible comprobar que el
sistema responde de la misma forma en los diferentes ciclos repetitivos de la
señal de entrada.
Fig. 13 Respuesta de la planta ante una señal cuadrada (archivo del autor)
Fig. 14 Datos exportados y graficados en Excel, señal de salida invertida (archivo del autor)
6.1.2. EXPERIMENTO 2 SEÑAL ESCALON: IDENTIFICACION
Para una entrada de tipo escalón, señal aplicada a la válvula proporcional, se
observó una respuesta del sistema monótona, sin oscilaciones, aproximada a
un sistema de primer orden con retardo.
Fig. 15 Respuesta de la planta ante una señal escalón (archivo del autor)
Fig. 16 Datos exportados y graficados en Excel, señal de salida invertida (archivo del autor)
0
1
2
3
4
5
6
7
-4 -2 0 2 4 6 8 10
Entrada señal escalon VS Salida
Entrada Salida
Como se observa en la figura 16 y la ayuda de Excel es posible determinar la
función de transferencia del sistema, donde K es la ganancia de la planta que
relaciona la salida respecto a la entrada cuando estas dos variables se
estabilizan, T es la constante de tiempo que se refleja cuando la amplitud de la
salida alcanza el 63.2% de la señal.
Para corroborar los datos, fue utilizado el TOOLBOX de Matlab ident,
herramienta creada para la construcción de modelos matemáticos de sistemas
dinámicos a partir de datos de entrada - salida medidos [28]. La ecuación
matemática resultante obtuvo una correlación del 85.62% con un tiempo de
muestreo de 1.4641ms
Fig. 17 Función de transferencia Ident (archivo del autor)
La ecuación 8 describe la función de transferencia discreteada por el método
de retenedor de orden cero, expresión utilizada en el diseño y simulación del
algoritmo
Fig. 18. Resultado de la Identificación (archivo del autor)
Fig. 19. Respuesta señal escalón función de transferencia (archivo del autor)
Durante un periodo determinado de tiempo fue posible variar la señal escalón
de entrada y constatar a la salida de la planta que en diferentes escalas de
referencia el sistema respondió de una manera constante sin presentar ningún
cambio. De esta manera fue posible inferir que con el controlador
implementado, a variaciones bajas del set point puede presentar fallas en la
sintonización.
Fig. 20. Salida de la planta a variaciones de la señal de entrada (archivo del autor)
6.2. DISEÑO Y SIMULACION DEL ALGORITMO EVOLUTIVO
Los algoritmos evolutivos trabajan con una población de individuos que
representan soluciones candidatas a un problema, su característica
fundamental radica en los métodos utilizados para la generación de soluciones
empleando un conjunto de operadores con el fin de encontrar el resultado a lo
que se requiere. Existen ciertas modificaciones sobre el esquema general
como es el caso de los algoritmos genéticos, los cuales modelan el proceso de
evolución como una sucesión de frecuentes cambios en los genes, con
soluciones análogas a cromosomas. Opera con una población de cadenas
binarias para la representación del problema, y el espacio de soluciones
posibles es explorado aplicando transformaciones, tal y como se observa en los
organismos vivientes: cruce, inversión y mutación.
Para el desarrollo del algoritmo fueron utilizadas diferentes estrategias
evolutivas que corresponde a otra modificación de la estructura en general
diseñada para resolver problemas de optimización discretos y continuos,
principalmente experimentales y considerados difíciles [16]. Su codificación es
en vectores de números reales que representan las posibles soluciones de
problemas numéricos. Utiliza recombinación o cruce (crossover aritmético),
mutación y la operación de selección, elimina las peores soluciones de la
población y no genera copia de aquellos individuos con una aptitud por debajo
de la aptitud promedio, orientado para calcular las mejores constantes de
ganancia proporcional, tiempo integral y tiempo derivativo con el fin de
minimizar el error de estado estacionario, y determinar el controlador sin
oscilaciones, Condiciones de diseño que se pueden apreciar en la figura 21.
Fig 21 Condiciones de diseño para el controlador PID [29]
En la figura 22 se puede observar de una manera más ilustrativa el diagrama
de boques que se tiene para la aplicación del algoritmo evolutivo a un
controlador PID.
Fig. 22 Diagrama de bloques para la aplicación del algoritmo a un controlador PID [2]
Inicialmente se creó una población inicial de 3 parámetros (constante
proporcional, integral y derivativa) y 10 individuos, generada de forma aleatoria.
Durante cierta cantidad de iteraciones o también llamadas generaciones, esta
población fue evaluada, usando la función fitness, luego mediante un operador
de selección por ruleta fueron elegidos los individuos más aptos para lograr la
solución del problema, seguido de esto se realza un cruce de un punto y una
mutación uniforme, y por ultimo un remplazo o reinserción de la población
actual. Después de terminada el número de iteraciones se selecciona al
individuo con mayor desempeño, el cual representa la solución más óptima.
Procedimiento desarrollado en Matlab, viable en la tarea de sintonización de
controladores PID, simulada y evaluada a través de métodos de inteligencia
computacional. [2]
Fig. 23 Estructura general del algoritmo evolutivo (archivo del autor)
La población inicial fue creada en codificación de tipo numérico real como se
muestra en la figura 24 con el comando rand de Matlab, el cual establece cierta
cantidad de números aleatorios uniformemente distribuidos [30], para obtener
la función fitness y por ende la adaptabilidad fue necesario realizar los
siguientes pasos:
1) Declarar la función de transferencia de la planta (previamente obtenida en el
proceso de identificación) discretizada por el método de retenedor de orden
cero y la ecuación característica del algoritmo PID que utiliza el bloque
CONT_C, discretizada por el método de invariancia al impulso. De acuerdo con
el manual del fabricante estipulado para los modelos S7-300 y S7-400 la
respuesta del controlador en el tiempo esta descrita por la siguiente expresión
⁄
Donde:
Es la magnitud manipulada en modo automático del regulador
Es la amplitud del escalón del error de regulación normalizado
Es la ganancia del regulador
Es el tiempo de acción de integral
Es el tiempo de acción derivativa
Es el factor de acción derivativa
Que resulta similar al controlador digital PID utilizado comúnmente con algunas
variaciones, como se muestra en la ecuación 9 en el dominio de Laplace
(
)
Discretizada por el método de invariancia al impulso, se tiene:
(
)
Con
2) Obtener la ganancia proporcional, tiempo integral y tiempo derivativo que
corresponden a cada parámetro de los individuos de la población, para ser
evaluados en el algoritmo PID
Fig. 24. Población inicial de 10 individuos, constantes Kp, Ti y Td de izquierda a derecha (archivo del
autor)
3) Establecer la ecuación general resultante de multiplicar la función de
transferencia del controlador y la planta
Fig. 25. Diagrama de bloques, controlador por planta [37]
(
)
4) Definir la función de transferencia en lazo cerrado (feedback)
5) Simular la respuesta temporal del sistema a una entrada escalón de la
función de transferencia resultante del paso anterior.
6) Determinar el error cuadrático medio correspondiente a la raíz cuadrada de
la resta entre la señal escalón de entrada y la salida del sistema. Todo esto
elevado al cuadrado.
√
7) Generar la evaluación fitness y su adaptación en el medio, con el error
obtenido en el paso anterior
Es importante resaltar que los métodos de discretizacion fueron evaluados con
un tiempo de muestreo de , periodo de ciclo del bloque PID del PLC.
Cada individuo obtiene cierta puntuación al ser evaluado con respecto a la
solución requerida, esta evaluación se denomina vector fitness y es
inversamente proporcional al error hallado, de esta manera, a medida que el
error disminuye, el cromosoma va obtener una mejor calificación. La función
adaptabilidad determina cuantos hijos se merece cada padre de la población y
que aptitud tienen para reproducirse, proporcional a la cantidad de individuos
creados inicialmente. De manera que al sumar el vector de adaptación, el
resultado será igual al número de sujetos creados en la población inicial.
Fig. 26. Vector error, fitness y adaptabilidad (archivo del autor)
Al extraer la parte entera de la parte decimal del vector adaptabilidad, se tiene
la cantidad de hijos heredados por cada padre en la posición correspondiente.
Sin embargo, en el ejemplo que se muestra en la figura 26, el total de hijos
equivale a seis y la cantidad de padres tiene que ser igual a cantidad de hijos
adquiridos. Por esta razón fue importante implementar el método de selección
por ruleta el cual escoger los mejores individuos de la población y determina
cuales de estos tienen derecho a tener más descendientes para así completar
la población total. La ruleta consiste en asignar a cada individuo una parte
proporcional con base a los decimales restantes. De tal manera que la suma de
todos los porcentajes situados será trecientos sesenta, haciendo una similitud
a una circunferencia partida por su medida en grados como se muestra en la
figura 27.Los mejores individuos recibirán una porción de la ruleta mayor que la
recibida por los peores [19],
Fig. 27. Similitud selección por ruleta (archivo del autor)
Para jugar la ruleta, se crea un número aleatorio entre cero y trescientos
sesenta y ubica al individuo correspondiente en la región que le pertenezca en
ese valor de acuerdo a las proporciones realizadas, a este sujeto se le asigna
un hijo y se vuelve a jugar hasta que el número total de descendientes sea
igual al tamaño de la población.
Fig. 28. Ruleta y total descendientes (archivo del autor)
Después de haber seleccionado y ordenado los individuos más aptos para la
solución del problema, estos son recombinados para producir la descendencia
que se insertara en la siguiente generación [19]. Este operador produce otros
individuos que comparten genes de los anteriores y serán nuevos puntos en el
espacio de búsqueda del algoritmo. Para esta ocasión se implementó un cruce
uniforme de un punto el cual consiste en recombinar de forma aleatoria las
constantes del mismo parámetro. En la figura 29 se muestras más
detalladamente.
Fig. 29. Cruce uniforme un punto (archivo del autor)
En la figura 30 se puede observar la población después de haber pasado
primero por la selección e inmediatamente por el operador cruce
Fig. 30. Población aplicando selección y cruce (archivo del autor)
La mutación consiste en escoger un gen de un individuo y variar su valor de
forma aleatoria, esto permite salir de los mínimos o máximos globales y tener
otro espacio de búsqueda, generando una evolución constante de la población
y obtener una solución más aproximada. Se utilizó un operador de mutación
tipo uniforme el cual selecciona un gen de un individuo y le suma un valor entre
-0,5 y 0,5 multiplicado por un parámetro que va disminuyendo a medida que el
proceso evoluciona.
Fig. 31. mutación (archivo del autor)
Después de realizada la mutación, se busca obtener un conjunto de individuos
aptos para la solución del problema [2]. De esta manera el mejor individuo de
cada generación es seleccionado antes de que toda la población sea
reinsertada al ciclo iterativo.
6.3. FUNCIONAMIENTO DEL ALGORITMO EN EL PLC SIEMENS S7-300
6.3.1. Lazo de control de proceso
La arquitectura utilizada para el proceso fue un sistema de control de lazo
cerrado retroalimentado, en el cual la acción de control depende de la salida
[31]. Utiliza un sensor para detectar la respuesta real y compararla con la señal
de referencia (Set-Point) que es el valor deseado.
Fig. 32 Diagrama de bloques de un sistema retroalimentado [31]
Fig. 33 Lazo de control (archivo del autor)
El PLC utilizado, fue el SIMATIC S7-300, con CPU 313C, El cual cuenta con un
módulo externo de comunicación CP 343-1 Lean, que permite conectar el
controlador a Industrial Ethernet por medio de los acreditados servicios de
comunicaciones. El bloque compacto posee varias características, algunas de
estas son:
CPU compacta con entradas y salidas digitales y analógicas integradas
Variedad de funciones matemáticas y tecnológicas que facilitan la
programación.
Conexión a todos los sistemas de bus convencionales: ETHERNET,
PROFINET, Industrial Wireless, PROFIBUS, Modbus RTU, Modbus TCP/IP
entre otros
Funciona con una Micro Memory Card (MMC) como memoria de datos
Y de programa
Fig. 34 PLC Siemens S7-300 [34]
Válvula proporcional
La válvula proporcional (actuador) de accionamiento por diafragma cumple con
la función de regular el flujo de agua de salida por medio de su apertura y cierre
en proporción a una señal neumática de entrada. Es utilizada en diversas
aplicaciones de control de fluidos como petróleos y combustibles, se
caracteriza por su bajo costo, seguridad y menor tiempo de operación.
Fig. 35 Válvula de actuador de diafragma [32]
La entrada neumática de la válvula que varía entre 3 y 15 psi, Es previamente
acondicionada por un convertidor I/P el cual recibe una señal analógica
eléctrica 4-20 ma, Su función principal es poder interconectar el bucle
electrónico como se muestra en la figura 36.
Fig. 36 Convertidor I/P en el proceso de control [32]
Fig. 37 Partes externas de un convertidor I / P [32]
La relación entre la entrada y la salida del convertidor I / P es lineal [32], de
manera que a una señal de ingreso de 4 ma, suministra como resultado una
presión de aire de 3 psi. Lo mismo ocurre cuando existe una señal en la
entrada de 20 ma, proporciona 15 psi en su salida.
Sensor
El dispositivo utilizado para realizar la medición del flujo de agua, maneja
ruedas de paletas giratorias con el fin de determinar la tasa de flujo que
transita. Las ruedas de paleta generan pulsaciones eléctricas enviadas al
transmisor digital el cual las convierte en una señal análoga 4-20 ma utilizada
dentro del control del lazo de proceso. Generalmente utilizado en aplicaciones
de bajo caudal, menor a 5 GPM.
Fig. 38 Sensor de flujo de rueda de paletas en un sistema de control de flujo [32]
Transmisor de flujo
Es el encargado de convertir las pulsaciones del sensor de flujo en una señal
analógica continua. La mayoría de estos dispositivos poseen pantalla de lectura
digital y teclas de programación que le permiten al usuario ajustar ciertos
parámetros para realizar una correcta interpretación de la señal proporcionada
por el sensor
Tabla 2. Caracterización Set-Point
Set-Point (%) Gpm
10 0,075
20 0,15
30 0,23
40 0,3
50 0,36
60 0,45
90 0,66
100 0,7
Últimamente, han aumentado el uso de controladores digitales en diferentes
aplicaciones por ventajas de flexibilidad y optimización de resultados. Sin
embargo, la mayoría de las plantas o procesos físicos involucran señales en
tiempo continuo; por lo tanto, si los sistemas de control incluyen controladores
digitales, se hace necesaria la conversión y el uso de señales continuas
definidas para todo instante de tiempo, y señales cuantificadas u digitales
definidas únicamente para un instante con una tasa o frecuencia de muestreo
determinada (número de muestras por unidad de tiempo). Es importante
mencionar que muchos sistemas de control digital están basados en técnicas
de diseño en tiempo continuo [36].
En la figura 39 se observa como una parte del sistema es un proceso digital y
la otra parte del mismo es un proceso continuo., sistemas muestreados
mediante el empleo de la transformada z, y otro continuo mediante la
transformada de Laplace, Para los cuales se deben unificar el proceso. A los
efectos de poder realizar todo el estudio del sistema empleando sólo la
transformación z, puede analizarse el comportamiento temporal de la variable
de salida y(t) a través de muestras tomadas cada T segundos [37].
Fig. 39 Diagrama de bloques, sistema de control digital en lazo cerrado [37]
Para llevar a cabo el funcionamiento del algoritmo evolutivo en el PID del PLC,
fue utilizada la ecuación característica del bloque discreto (11 en conjunto con
la ecuación de la función de transferencia en lazo cerrado (feedback) (16),
basados en el diseño de un controlador con error cero de estado permanente.
Con el fin de evaluar los individuos, aplicar los operadores e implementar las
constantes en el dispositivo al término de las iteraciones o también llamadas
generaciones
Fig. 40 funcionamiento del algoritmo en el PLC (archivo del autor)
6.3.2. Configuración bloque pid en tia portal v13.
El software TIA Portal es un programa que permite la programación de PLC’s
de la amplia gama de Siemens, además proporciona varias herramientas que
ayudan al momento de realizar un control continuo. Estas herramientas varían
dependiendo del PLC a utilizar, puesto que la diferencia de características y
recursos que posee cada dispositivo son limitadas.
En la imagen 38 se muestra la amplia gama de PLC’s que posee Siemens,
como el S7-1200, S7-1500 entre otros, este proyecto fue desarrollado con el
controlador S7-300 - CPU 313C, V3.3 disponible en el laboratorio de la
universidad
Fig. 41 PLC S7-300, CPU 313C, V3.3 y sus características (archivo del autor).
Teniendo en cuenta que el transmisor de la válvula proporcional de flujo y el
transmisor del sensor de flujo, transmiten la señal de instrumentación en
corriente (4-20mA), se deben configurar las entradas y salidas análogas del
PLC igual (4 - 20mA), Así como se muestra en la figura 39.
Fig. 42 Configuración de entradas y salidas análogas PLC (archivo del autor).
Después de realizada la lectura de las variables análogas, se efectuó un
tratamiento adecuado a la señal, puesto que ingresa al sistema en una escala
de 4-20ma y en el programa se ve reflejada como una variable tipo word que
varía en un valor entre 0 y 27648. De esta manera, para una entrada de 4mA
(0) será igual a 0% y 20mA (27648) a 100% como se muestra en la figura 41
La entrada análoga, es parametrizada con la variable IW754 de tipo WORD,
ingresa al bloque Move, cuya función es copiar el valor de entrada IW754 a la
variable MW12 de tipo INT para después ser escalizada con el bloque SCALE,
que toma el valor de la variable MW12 con valores entre 0 y 27648 y lo escaliza
a valores entre 0% y 100% correspondientemente. Este procedimiento se
realizó para la variable manipulada (set point) y la variable controlada (sensor).
Fig. 43 Escalizaciòn de señales análogas de entrada al PLC (archivo del autor).
Para obtener el control de lazo de proceso, con el PLC S7-300, CPU 313C, se
utilizó la herramienta CONT_C, que permite regular procesos técnicos con
magnitudes continuas de entrada y salida. Mediante parametrización de
variables booleanas se pueden activar o desactivar funciones parciales del
regulador PID para adaptarlo al control que se desea realizar, para mayor
información de las características y configuración de este bloque ver (MANUAL
CONT_C). Los parámetros principales de este bloque son:
variable manipulada (set point), parametrizada en la variable MD28.
variable controlada (sensor), parametrizada en la variable IW754
Parámetro Gain (Kp), parametrizado en la variable MD32
Parámetro TI (Ki), parametrizado en la variable MD36
Parámetro TD (Kd), parametrizado en la variable MD40
Señal de Salida, LMN_PER, parametrizado en la variable MW32
Error, parametrizado en la variable MD24.
Con la configuración adecuada de los parámetros Gain, Ti y Td, es posible
lograr que el bloque controlador corrija de manera eficaz y en el menor tiempo
el error de estado estacionario y responda eficientemente a las perturbaciones;
Si estos parámetros, (la ganancia proporcional, integral y derivativo) se
establecen de forma incorrecta es probable que el bloque no realice la
sintonización de la variable dentro del proceso
6.3.3. Comunicación tia portal v13 a matlab via ethernet-opc
Para efectuar la comunicación entre el software TIA PORTAL, donde se realizó
la adquisición y acondicionamiento de las señales análogas para la
implementación del controlador PID, y el software matemático MATLAB,
soporte donde se desarrolló la programación del algoritmo evolutivo, fue
utilizado un servidor OPC (Kepserver), que funciona como puente entre los 2
programas para el intercambio de información como estados de las variables,
el cual requirió los siguientes pasos
Fig. 44 Dirección IP del PLC (Archivo del autor)
1. Verificar la arquitectura del PLC con el módulo de comunicación (PLC S7-
300 con CPU 313-C y un módulo de comunicación CP 343-1 LEAN).
2. Asignar dirección IP y máscara sub-red al módulo de comunicaciones
(Dirección IP asignada al PLC).
Fig. 45 Dirección IP del ordenador (Archivo del autor)
3. Verificar la dirección IP y mascara de subred del PC en las propiedades de
conexión de área local, verificando la configuración de una red "privada".
Direcciones IP
IP del PLC: 192.168.0.5
IP tarjeta de red del ordenador: 192.168.0.11
4. Configurar la interface PG/PC en el panel de control (procedimiento llevado
a cabo al detalle en el anexo 2 al final del documento) para crear un punto
de acceso y así poder programar el PLC directamente desde el computador
por medio del módulo de comunicación a través del protocolo Ethernet, Con
esta acción, la tarjeta de red del PC queda seleccionada como interface de
programación PG/PC-PLC (en vez del PC Adapter cuando se utiliza el
Interface MPI) y como punto de acceso S7ONLINE (STEP7) -> TCP/IP ->
Tarjeta de red.
5. Después de realizados los pasos anteriores, se procede con la
programación del PLC, en línea con el programa.
Fig. 46 Programación TIA PORTAL (Archivo del autor)
6. Establecer la conexión con el servidor OPC KepServer y realizar la
configuración correspondiente (Para mayor información revisar anexo 2),
seguido de esto fueron creadas las etiquetas para enlazar las variables
conectadas a la OPC. Las etiquetas fueron configuradas con la misma
dirección que tenían las variables en el programa creado en Tia Portal, tal y
como se observa en la figura 45.
Fig. 47 Etiquetas enlazadas entre TIA PORTAL y KEPSERVER (Archivo del autor)
7. Configurar el cliente servidor OPC, en este caso Simulink/Matlab, creando
un proyecto nuevo en Simulink y agregando los siguientes elementos como
se muestra en la figura 46
a. OPC configuration. Elemento en el cual se hace la configuración de la
conexión entre Matlab y el servidor OPC KepServer.
b. OPC read. Permite realizar la lectura de una variable que se encuentre
agregada en el servidor OPC.
c. Constant. Simula el valor de una constante en la hoja de trabajo de
Simulink, en este caso como el Algoritmo evolutivo se ejecuta en un
Script y las variables quedan guardadas en el Workspace, fue colocado
el nombre de la variable en el elemento constant para que el valor fuera
leído automáticamente en la hoja de trabajo de Simulink. Las variables
“c_p”, “c_i”, “c_d”, son las Constantes Proporcional, Integral y Derivativo
que genera el Algoritmo evolutivo para la sintonización del Controlador
PID.
d. Gain. Ganancia que multiplica la entrada por un valor constante
(ganancia).
e. OPC write. Permite la escritura OPC de alguna variable que se
encuentre en el servidor OPC.
f. Display. Permiten la visualización de un valor de entrada o salida.
Fig. 48 Montaje en SIMULINK para la comunicación OPC (Archivo del autor)
8. activar la comunicación del servidor OPC, dar clic en QUICK CLIENT
(KepServer).
9. Verificar la escritura y lectura de variables entre el TIA PORTAL y MATLAB.
Fig. 49 Comunicación en línea entre TIA PORTAL, KEPSERVER y MATLAB (Archivo del autor)
La comunicación es muy versátil y permite comunicar software de distintas
empresas, en este caso, fue posible conectar Siemens con Matlab y lograr
establecer el intercambio de valor de estado de las constantes Kp, Ti y Td
que lograron sintonizar la variable de proceso.
7. ANALISIS DE RESULTADOS
El algoritmo diseñado en Matlab fue simulado en línea con el programa Tia
portal que es el software utilizado para la programación del PLC e
implementación del algoritmo, para todas las pruebas se consideró una
población inicial de 10 individuos y 100 iteraciones. Fueron tomadas en
cuenta la generación 1, la generación 40 y la generación 100 para el
análisis de los resultados. Al término de cada una de las generaciones el
mejor individuo fue transmitido por medio de la comunicación OPC e
incorporado en la estructura PID del PLC, los resultados fueron registrados
en el osciloscopio RIGOL DS1052-E del laboratorio de electrónica de la
universidad.
7.1. Prueba 1 primera generación
Tabla 3. Resultados primera generación
Fig. 50 Respuesta de la planta con controlador sintonizado por AG generación 1 (Archivo del autor)
Algoritmo Evolutivo
Kp Ti Td
Generación 1 0.532 85.383 1.283
Tiempo de retardo Indet
Ess TIA PORTAL Indet
Ess Matlab Indet
Set-Point 0.55 Gpm - 80 %
Fig. 51 Lectura registrada por el osciloscopio generación 1 (Archivo del autor)
En los resultados de la primera generación, se evidencia un individuo que en
simulación muestra una respuesta indeterminada a los diferentes parámetros
evaluados. Con las constantes implementadas en el controlador es posible
constatar una respuesta con oscilaciones permanentes lo que reflejan la no
sintonización del controlador.
7.2. Prueba 2 generación 40
Tabla 4. Resultados generación 40
Algoritmo Evolutivo
Kp Ti Td
Generación 1 0.1671 84.7311 0.1205
Tiempo de retardo 840 ms
Ess TIA PORTAL 0.31 %
Ess Matlab 0.1289
Set-Point 0.55 Gpm - 80 %
Fig. 52 Respuesta de la planta con controlador sintonizado por AG generación 40 (Archivo del autor)
Fig. 53 Lectura registrada por el osciloscopio generación 40 (Archivo del autor)
En la generación 40, fue posible corroborar la sintonización del controlador
tanto en la simulación como en la lectura hecha por el osciloscopio, pero no
genera los mejores resultados respecto al mínimo error de estado estacionario
y tiempo de retardo.
7.3. Prueba 3 generación 100
Tabla 5. Resultados generación 100
Fig. 54 Respuesta de la planta con controlador sintonizado por AG generación 100 línea verde
(Archivo del autor)
Algoritmo Evolutivo
Kp Ti Td
Generación 1 0.1824 62.3278 -0.3133
Tiempo de retardo 600 ms
Ess TIA PORTAL 0.21 %
Ess Matlab 0.0890
Set-Point 0.55 Gpm - 80 %
Fig. 55 Lectura registrada por el osciloscopio generación 100 (Archivo del autor)
En la generación 100 se observa una mejora de la respuesta del sistema con
respecto a la prueba 2, tanto en la simulación como en la lectura de
osciloscopio el tiempo de retardo, tiempo de estabilización y error de estado
estacionario disminuyeron. A medida que avanzan las iteraciones
(generaciones) es posible percibir que el error calculado por la simulación en
Matlab disminuye como se muestra en la figura 54
Fig. 56 Error (Archivo del autor)
Tabla 6. Tabla de resultados en general
Tabla de resultados general
Generación 1
Generación 40
Generación 100
La señal azul (CH2) es la referencia y la amarilla (CH1) es la respuesta de
controlador
8. COMPARACION
El lazo de control fue sintonizado mediante al algoritmo propuesto con el PLC
Siemens S7-300 y el controlador PID que por defecto tiene incorporado el
controlador universal Honeywell UDC3500 que trae la planta Amatrol T5552
usando el método de autotuning (sintonización automática) SP+PV, el cual
realiza la sintonización siempre que el SP (Set point), es modificado haciendo
un ajuste adaptativo ante una perturbación del proceso igual o superior al 0,3%
del intervalo calculando los parámetros de ganancia, tiempo integral y tiempo
derivativo [35]. Con el fin analizar el comportamiento del sistema con respecto
a los dos métodos propuestos.
Inicialmente fue necesario configurar algunos parámetros de entrada en el
controlador Honeywell como se muestra en la tabla 7
Tabla 7. Parámetros de configuración PID Honeywell
GRUPO DE
CONFIGURACION PARÁMETRO DEFINICIÓN AJUSTE
INPUT 1
IN1 TYPE
Determina el tipo
de entrada para
la Input 1.
4 – 20 ma
XMITTER1
Caracteriza la
entrada del
controlador para
una señal lineal
LINEAR
IN1 HIGH
Valor máximo de
escalizacion
para la entrada
del sensor
70.0
IN1 LOW
Valor mínimo de
escalizacion
para la entrada
del sensor
0.0
BIAS IN1
Parámetro
utilizado para
compensar la
entrada ante un
deterioro del
sensor
0.0
ALGORITHM CONT ALG
Algoritmo que
permite
seleccionar el
tipo de control
que mejor se
ajusta al proceso
PID A: Aplica las
tres acciones de
control:
Proporcional,
integral y
derivativa
TUNING ACCUTUNE
Calcula
automáticamente
los ajustes
proporcional,
integral y
derivativo para el
bucle de control
SP+PV: realiza
la sintonización
siempre que el
SP es cambiado
haciendo un
ajuste adaptativo
NOTA: El rango de unidades del set-point será limitado por los valores
ingresados en los parámetros IN1 HIGH e IN1 LOW.
Una vez configurados los parámetros., fue asignado un punto de set-point
(60.0) que es aproximadamente el mismo set point con el que se evaluó las
generaciones del algoritmo evolutivo (80%), ajustando el controlador de modo
manual a modo automático para efectuar la auto sintonización. La respuesta se
muestra en la figura 55
Fig. 57 Respuesta del sistema controlador PID Honeywell (Archivo del autor)
Se evidencia un tiempo de respuesta óptimo, generando máximo sobre impulso
y oscilaciones antes de llegar a la referencia, con un error de estado
estacionario de aproximadamente el 0 % en el momento en que el sistema se
estabiliza.
Fig. 58 Valor de referencia, set-point PID Honeywell (Archivo del autor)
La siguiente prueba realizada fue cambiar el punto de referencia y observar el
comportamiento del controlador, como se muestra en la figura 56
Fig. 59 Respuesta del sistema controlador PID Honeywell cambio de ref. (Archivo del autor)
Como se evidencia que ante un cambio de referencia, el controlador tiende a
entrar en un periodo de oscilaciones permanentes mientras calcula las mejores
constantes para su sintonización, de igual manera alcanza la referencia con un
error de estado estacionario aproximadamente del 0%.
Tabla 7. Tabla de comparación
Algoritmo evolutivo Auto-tuning
PLC Siemens S7-300 PLC Honeywell
Mejor Respuesta del sistema
Retardo 600 ms No determinado
Oscilaciones No tiene oscilaciones Se evidencian oscilaciones ante un cambio de referencia
Error de estado estacionario
0.21 %
0.012 %
Constantes KP = 0.1824 KP = 0.323
TI = 62.3278 TI = 0.02
TD = -0.3133 TD = 0.17
Tiempo de
estabilización
7,8 segundos
16,3 segundos
Máximo Sobre
impulso
0%
20%
OFF-LINE, necesita detener el proceso para obtener
función de transferencia de la planta para calcular
constantes.
ON-LINE, Obtiene constantes sin
necesidad de detener el proceso.
VENTAJAS
Al obtener las constantes en off-line, se evita un deterioro de las partes mecánicas del
lazo de control como la
Al trabajar ON-LINE, se evita detener el proceso
ya que en algunos casos no es posible
válvula. para realizar la identificación.
DESVENTAJAS
No es viable en algunos casos ya que es necesario
detener el proceso para realizar la identificación.
Presenta oscilaciones mientras calcula las
constantes del controlador, y esto
genera un desgaste considerable en la parte
mecánica de los actuadores.
9. CONCLUSIONES
Para lograr una identificación de la planta de forma experimental de la manera
más aproximada posible, se deben tomar varias mediciones variando la
referencia aplicando varias señales de identificación como señales escalón o
señales cuadradas y tomando la mayor cantidad de datos posibles, es decir,
que el periodo de muestreo de la señal sea el más pequeño posible para lograr
una resolución adecuada, de esta manera es posible corroborar la información
con ayuda de un software y obtener un modelo óptimo de la planta, pero cabe
decir, que se obtiene un modelo matemático experimental de la planta, dado en
una función de transferencia, por medio de este modelo se realizan
simulaciones, que algunos casos al ser implementada en la planta real, no dan
los mismos resultados que en las simulaciones, ya que algunos elementos del
lazo de control como la válvula, sensor o bomba, poseen desgastes mecánicos,
que son muy difíciles de cuantificar en la identificación.
En el desarrollo del algoritmo evolutivo, es importante concluir que los recursos
de memoria, procesador entre otros que posee el PLC S7-300, CPU 313C, no
son suficientes para implementar directamente el código dentro de este, ya que
el desarrollo computacional que genera este algoritmo es muy grande, por lo
tanto, se recomienda utilizar el algoritmo desarrollado con la aplicación
explicada en esta monografía de la manera en que se utilizó, ejecutando el
algoritmo en un PC y efectuando el control PID solo con las variables obtenidas
con el algoritmo.
Inicialmente el algoritmo se trabajó con una codificación binaria, proceso que
no dio resultado, en este trabajo, debido a que el cambiar un bit o gen de un
individuo puede variar su valor significativamente, por esta razón se trabajó con
una compilación real, que permite realizar las operaciones de selección, cruce
y mutación del algoritmo sin dañar demasiado los individuos; Como también si
en el algoritmo evolutivo se determina un tiempo de iteración infinito, se puede
garantizar encontrar una solución mínima total de acuerdo al resultado que se
pretenda, teniendo en cuenta que este mínimo total estaría dado en
simulaciones.
El algoritmo fue capaz de identificar los individuos que generaban una
respuesta indeterminada del sistema. Por esta razón fueron restringidos dentro
del proceso iterativo.
Las constantes generadas con el algoritmo evolutivo, fueron desarrolladas con
el fin de obtener una respuesta del controlador que obtuviera un error de
estado estacionario cero, así implicara, hacer que la planta respondiera un
poco más lento, al hacer esto, garantizamos que el lazo de control llegue
siempre a la referencia, no genere oscilaciones ni máximos sobre impulsos, ya
que estos dos últimos, efectúan un deterioro mecánico considerable en la
acción de la válvula proporcional en su accionamiento por diafragma, cuestión
que no es considerada por el método autotuning que posee la planta, pero que
como ingenieros en control si se deben tener en cuenta.
10. BIBLIOGRAFIA
[1] K. Ogata, Ingeniería de control moderna, 5 Ed, PEARSON EDUCACIÓN, S.A., Madrid, 2010.
[2] B. Jaimes, J. Galindo, J. Camperos. ” Desarrollo de una herramienta en Matlab para Sintonización de Controladores PID, utilizando algoritmos genéticos basado en técnicas de optimización multiobjetivo” Centro de Formación CIES, Tecnoparque Colombia Nodo Ocaña, Regional Norte de Santander. Mayo. 2014.
[3] AMATROL (2017, Febrero 15), sistema de control de procesos T5552. Disponible en: http://www.amatrol.com/coursepage/t5552/.
[4] A. Escobar, «Diseño de controladores heurísticos,,» Universidad Distrital Francisco José de caldas plataforma Moodle curso control analogo., Bogotá, Colombia, 2016.
[5] J. Gutiérrez, «Análisis e implementación de algoritmos evolutivos para la optimización de simulaciones en ingeniería civil,» Depto. Ingeniería informática, Universidad católica san Antonio, Guadalupe (Murcia), 2014.
[6] M. Virginia., Controladores PID, Universidad Nacional de Quilmes, Argentina, 2002.
[7] J. C. L. Hernandez, «SISTEMAS DE CONTROL BASADOS EN ALGORITMOS GENÉTICOS Y LÓGICA DIFUSA PARA LA APLICACIÓN EN PROCESOS INDUSTRIALES,» Pontificia Universidad Javeriana, facultad de ingeniería, departamento de electrónica, Diciembre 2014. [En línea]. Available: http://repository.javeriana.edu.co/bitstream/10554/16431/1/LopezHernandezJuanCamilo2015.pdf. [Último acceso: Noviembre 2016].
[8] M. Felipe, «Autómatas Programables: Introducción al Estándar IEC-61131,» Entornos integrados de automatización. Ingeniería de sistema y automática, 2016.
[9] F. Rubio, «Monitorización y Control de Invernaderos,» Instituto de automática e informática industrial, Zaragoza, 4 mayo 2005. [En línea]. Available: http://www.esi2.us.es/RIC/JZaragoza05/JZaragoza02.pdf. [Último acceso: Febrero 2017].
[10] A. Marczyk, «Algoritmos genéticos y computación evolutiva,» University of Leeds. , 2014. [En línea]. Available: http://the-geek.org/docs/algen/. [Último acceso: Febrero 2017].
[11] M. A. Perez, A. Perez Hidalgo y E. Perez Berenguer, «INTRODUCCION A LOS SISTEMAS DE CONTROL Y MODELO MATEMÁTICO PARA SISTEMAS LINEALES E INVARIANTES EN EL TIEMPO,» Universidad Nacional de San Juan Departamento de Electrónica, San Juan, Argentina, 2008.
[12] I.E.S "POETA CLAUDIO RODRÍGUEZ", «Sistemas de control: Elementos componentes, variables, función de transferencia y diagrama funcional.,» [En línea]. Available: https://docs.google.com/viewer?docex=1&url=http://iespoetaclaudio.centros.educa.jcyl.es/sitio/upload/Sistemas_de_control.pdf. [Último acceso: Febrero 2017].
[13] L. Nuñez, «Lazos de Control,» [En línea]. Available: http://materias.fi.uba.ar/6509/Estrategias%20de%20control%202009.pdf. [Último acceso: Febrero 2017].
[14] P. C. Rubio, «DEFINICIONES REFERENTES A LA TEORIA DE CONTROL,» Marzo 2008. [En línea]. Available: https://es.slideshare.net/ptah_enki/definiciones-de-control-326816. [Último acceso: Febrero 2017].
[15]
M. A. Hipedinger, «Aplicación de la Transformada de Laplace en sistemas de control,» Universidad Nacional del Sur, Argentina, Marzo 2014. [En línea]. Available: https://docs.google.com/viewer?docex=1&url=http://lcr.uns.edu.ar/fvc/NotasDeAplicacion/FVC-HipedingerMarcos.pdf. [Último acceso: Febrero 2017].
[16]
A. Andaluz. Algoritmos Evolutivos y Algoritmos Genéticos, Accedido en marzo 2017 [Online]. Available: http://www.it.uc3m.es/~jvillena/irc/practicas/estudios/aeag.
[17] P. Cruz, Inteligencia artificial con aplicaciones a la Ingeniería, 1 Ed, Alfaomega Grupo editor, S.A. México, Julio 2010.
[18] V. Arroyo, “Modelo de un algoritmo genético con selección discriminatoria de individuos bajo un esquema de ponderación de probabilidades de mutación” Tesis de Ingeniería informática, Universidad Católica san Pablo, Diciembre de 2013
[19] M. Gestal. (2013). Introducción a los Algoritmos Genéticos. Accedido marzo 2017 [Online]. Available: http://cmapspublic2.ihmc.us/rid=1KNKN1H44-V8CC04-1M4K/Algoritmos%20de%20Terminos.pdf.
[20] H. Sosa, S. Villagra, “Operadores de Mutación en Algoritmos Genéticos Celulares Aplicados a Problemas Continuos“. Universidad Nacional de la Patagonia Austria, Departamento de ciencias exactas y naturales, Caleta Olivia, 2013.
[21] SISTEMAS DE CONTROL DE PROCESOS, Medición básica del flujo y control, Amatrol, 2011.
[22] Vildósola, E. Actuadores. Chile: Soltex Chile. Recuperado de: http://www.aie.cl/files/file/comites/ca/abc/actuadores.pdf
[23] A. ELECTRONICS, «¿Qué es un PLC?,» ABC Innovación y Tecnología, [En línea]. Available: http://www.abcinnova.com/articulos-e-informacion/18-ique-es-un-plc-y-que-beneficios-tiene.html. [Último acceso: Marzo 2017].
[24] Matrikon, «¿Qué es un servidor OPC,» Honeywell International Inc., 2016. [En línea]. Available: http://matrikonopc.es/opc-servidor/index.aspx. [Último acceso: Febrero 2017].
[25] «¿QUÉ ES OPC?,» vBulletin Solutions, Inc, 2008. [En línea]. Available: http://www.infoplc.net/foro/showthread.php?43-Que-es-OPC. [Último acceso: Febrero 2017].
[26] Matrikon, «¿Qué es un servidor OPC,» Honeywell International Inc., 2016. [En línea]. Available: http://matrikonopc.es/opc-servidor/index.aspx. [Último acceso: Febrero 2017].
[27] B.C. Kuo, Sistema de control automático, 7 ed, Prentice-Hall Inc. 1996.
[28] MATLAB, Mathworks (2017, Febrero 20), Crear modelos de sistemas dinámicos lineales y no lineales a partir de datos de entrada-salida medidos.
Disponible en : https://www.mathworks.com/products/sysid.html
[29] Tema v, Respuesta temporal. Accedido en Febrero 2017 [Online]. Available: http://www.epistemus.uson.mx/cartas/Biography_IEEE.pdf
[30] MATLAB, Mathworks (2017, marzo 2), rand, Números aleatorios uniformemente distribuidos. Disponible en: https://www.mathworks.com/help/matlab/ref/rand.html
[31] R. Hernández, Introducción a los sistemas de control, 1 ed, PEARSON EDUCACIÓN, México, 2010
[32] SISTEMAS DE CONTROL DE PROCESOS, Elementos de control finales, Amatrol, 2011.
[33] G. Edeso, “Ejemplos de control en lazo cerrado”, Accedido Abril 2017 [En línea]. Available: http://guinea-edeso.blogspot.com.co/2012/02/ejemplos-de-control-en-lazo-cerrado.html
[34] SIMATIC S7-300 Controlador lógico programable (PLC), El PLC modular universal para sistemas de Automatizacion ,2011.[En línea]. Available: https://facso.wikispaces.com/file/view/S7-300.pdf
[35] Honeywell, UDC3500 Universal Digital Controller Product Manual, Fort Washington, PA 19034. September 2006
[36] K. Ogata, Sistemas de control en tiempo discreto, 2 Ed, PRENTICE HALL HISPANOAMERICANA, S.A. Madrid, 1996.
[37] J. Taconi, J. Mantz, A. Solsona, R. Ojeda. «ANALISIS Y DISEÑO DE SISTEMAS DE CONTROL DIGITAL,» Laboratorio de Electrónica Industrial Control e Instrumentación (LEICI), Facultad de Ingeniería – UNLP. [En línea]. Available:https://catedra.ing.unlp.edu.ar/electrotecnia/cys/ pdf/apunte_muestre o.pdf [Último acceso: Mayo 2017].
top related