control inteligente nrc: 2033 diseño de · pdf filediseño de controlador...

13
CARRERA DE INGENIERÍA EN ELECTRÓNICA EN AUTOMATIZACIÓN Y CONTROL CONTROL INTELIGENTE NRC: 2033 Profesor: Ing. Víctor Proaño Elaborado por: Johanna Almachi Denis Flores Diego Soria Carlos Vaca 03 DE JULIO DE 2014 DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM

Upload: hoanganh

Post on 13-Feb-2018

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

CARRERA DE INGENIERÍA EN ELECTRÓNICA EN AUTOMATIZACIÓN Y

CONTROL

CONTROL INTELIGENTE NRC: 2033

Profesor:

Ing. Víctor Proaño

Elaborado por:

Johanna Almachi Denis Flores Diego Soria Carlos Vaca

03 DE JULIO DE 2014

DISEÑO DE CONTROLADOR NEURONAL PARA LA

UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM

Page 2: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 1

Contenido

I. Tema ............................................................................................................................................. 2

II. Objetivos ....................................................................................................................................... 2

III. Descripción del Modelo Matemático del Sistema ..................................................................... 2

IV. Identificación de la Planta ......................................................................................................... 3

V. Obtención de parámetros de entrenamiento ............................................................................... 5

VI. Control utilizando redes neuronales inversas ........................................................................... 8

VII. Resultados Prácticos ............................................................................................................... 11

VIII. Conclusiones ........................................................................................................................... 12

Page 3: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 2

I. Tema

Diseño de controlador neuronal para la unidad Air Flow Temperature Control System

II. Objetivos

Diseñar un controlador con redes neuronales y verificar la funcionalidad del

controlador.

Realizar el experimento del control neuronal con modelo inverso para la unidad “Air

Flow Temperature Control System”.

Realizar el experimento y representar gráficamente los resultados para distintos

valores de referencia.

III. Descripción del Modelo Matemático del Sistema

La unidad Air Flow Temperature Control System es un sistema que existe un intercambio de masa y

energía con el ambiente puesto que al cambiar las perturbaciones mediante la placa se varía el

intercambio de calor entre aire caliente y aire frío.

Ilustración 1. Unidad Air Flow Temperature Control System.

Las variables que tienen relación con nuestro sistema son:

La masa de aire

El volumen

La densidad y presión

La temperatura (variable por la niquelina).

La propagación del calor en la planta se realiza mediante conducción, por convección y radiación.

El objetivo es conocer la forma en que responde la temperatura de salida, a los cambios en el voltaje de la niquelina en la entrada. El flujo de calor en el sistema de temperatura se da por convección, es decir, se transfiere energía entre una superficie, que es la niquelina, y un fluido que se mueve sobre esta que en este caso es el aire. Mediante el ventilador se fuerza al aire a fluir a través de la niquelina y el conducto, a esto se lo denomina convección interna forzada y la transferencia de calor.

Page 4: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 3

Dentro de la planta el aire es calentado por conducción mediante una niquelina allí ascenderá por

convección y se pondrá en contacto con el ventilador cediendo parte de su calor al aire frío

volviendo hacia el ventilador para que posteriormente sea enviado de forma laminar (todas las

moléculas pasan ordenadamente dentro del tubo) al tubo en donde se verá afectado también por

fenómenos de convección y radiación de la niquelina.

Ilustración 2. Diagrama de Bloques del Sistema

Como se puede observar en la ilustración 2 se obtiene el modelo matemático de primer orden

característico de un sistema intercambiador de temperatura, el mismo que se verá afectado por la

resistencia térmica que es controlada mediante las perturbaciones en la entrada de flujo del aire

ambiente y de la capacitancia térmica que será afectada por la potencia de la niquelina como se

explicó en la interpretación física de la planta.

IV. Identificación de la Planta

Para el modelamiento de la planta se recurrió a un procedimiento experimental, siguiendo los pasos

que se detallan a continuación:

Adquisición de datos.

Identificación del modelo matemático de la planta.

El modelo que se ha definido seguir para la planta de temperatura es de primer orden como se

muestra en la figura a continuación.

Ilustración 3. Modelo de Primer Orden a Seguir.

Mediante el modelo mostrado podemos lograr representar la dinámica de la planta en su casi

totalidad, de esta manera pudiendo proseguir a la identificación de sus constantes K y tau.

Para la obtención de dichos parámetros se utiliza la herramienta ident de MATLAB mediante la cual

al ingresar los datos tomados en el laboratorio por parte del Ing. Víctor Proaño con un valor en la

entrada de 4 voltios y con un periodo de muestreo de 0.1 segundos obtenemos los parámetros y

procedemos a la respectiva comparación con los datos reales.

Los datos nos muestran una dinámica del proceso como se muestra en la siguiente figura, siendo el

eje X el tiempo y el eje Y la temperatura de salida.

Page 5: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 4

Ilustración 4. Datos Obtenidos de la Planta con 4 Voltios de entrada en 200 segundos.

Tenemos que considerar que los datos tomados parten a partir de 22.8 Grados Centígrados que se

los considerará como temperatura Ambiente.

En la Herramienta ident ingresamos los datos y obtenemos los parámetros del modelo.

Ilustración 5. Ingreso de datos obtenidos a ident.

Con los datos provistos a ident procedemos a obtener el modelo de primer orden y se obtiene los

siguientes parámetros

Ilustración 6. Parámetros obtenidos para el modelo de temperatura.

Page 6: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 5

Parámetros:

Con dichos valores procedemos a comparar si los datos se cumplen reemplazando los valores en el

modelo de simulink como se muestra en la figura a continuación.

Ilustración 7. Simulación de la planta con los parámetros obtenidos

Con este resultado obtenido podemos empezar a trabajar con la obtención de los patrones de

entrenamiento, se puede decir que el modelo aprueba el comportamiento de los datos obtenidos en

un 90% y es altamente aceptable.

V. Obtención de parámetros de entrenamiento

Se utiliza el modelo matemático en lazo abierto para obtener los valores objetivos.

Planta

Ilustración 8. Simulación de la planta con los parámetros obtenidos

Para obtener estos valores objetivos, se ha desarrollado el siguiente algoritmo en Matlab:

Código Matlab

Especificación de los rangos de operación de la temperatura y el voltaje

tempP=25:1:65; %Temperatura de referencia uP=0:0.1:5; %Estado inicial

Page 7: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 6

Generación de los patrones p=combvec(tempP,uP); %Parámetros de entrada

%Identificación de los parámetros for i=1:length(p) temp0=p(1,i); u=p(2,i); sim('planta',0.5); dtemp(i)=temp.signals.values(length(temp.signals.values))-temp0; i end

plot(dtemp) title('Variación de temperatura [°C]');

Tm(1,:)=dtemp;

Entrenamiento de la Red

net=newff(minmax(p), [4 1], {'tansig', 'purelin'}, 'trainlm'); net.trainParam.show=50; net.trainParam.lr=0.05; net.trainParam.epochs=400; net.trainParam.goal=1e-7;

[net tr]=train(net,p,Tm);

a=sim(net,p);

figure(2) plot(a(1,:)) title('Variación de temperatura [°C]');

Ilustración 9. Resultados obtenidos – variación de temperatura.

Ilustración 10. Simulación de la Red Neuronal

Como observamos en la figura la red alcanza entrenarse en 167 iteraciones y tener el error mínimo

estableció de igual manera al hace clic en el botón performance obsemanos el proceso de

entrenamiento de la red la cual fue entrenada exitosamente.

0 500 1000 1500 2000 2500-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6Variación de temperatura [°C]

0 500 1000 1500 2000 2500-1

-0.8

-0.6

-0.4

-0.2

0

0.2

0.4

0.6Variación de temperatura [°C]

Page 8: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 7

Ilustración 11. Entrenamiento de la Red Neuronal

Creación de la red

gensim(net,50e-3)

Ilustración 12. Bloque Red Neuronal

Comparación con el modelo de la planta

En la figura 13, se muestra el diagrama Simulink donde se compara la Red Neuronal creada y

entrenada con el modelo de la planta para verificar su funcionamiento.

Ilustración 13. Comparación Red Neuronal – Planta

En la figura 14 se muestra el comportamiento de la red en trenada para como la planta antes

modelada.

Page 9: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 8

Ilustración 14. Resultados obtenidos de la comparación Red Neuronal – Planta

VI. Control utilizando redes neuronales inversas

El control por modelo inverso es una técnica, que busca cancelar la dinámica de la planta al colocar

un elemento en cascada con ella, en este caso una red neuronal, siendo este una aproximación

matemática del inverso de la planta.

Para diseñar el controlador neuronal inverso como su nombre lo dice invertimos los patrones de

entrenamiento y el target

% %% Controlador Neuronal Inverso

Pm1(1,:)=p(1,:); %Entrada T0 Pm1(2,:)=Tm; % Variacion de Temperatura Tm1(1,:)=p(1,:); % Señal control

Entrenamiento de la red del controlador cet = newff(minmax(Pm1),[4 1],{'tansig' 'purelin'},'trainlm'); Y = sim(cet,Pm1); cet.trainParam.epochs = 50; cet.trainParam.goal=1e-7; cet = train(cet,Pm1,Tm1); Y = sim(cet,Pm1);

Page 10: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 9

Como observamos el entrenamiento de la red del controlador es exitoso con 4 neuronas y una salida.

Ilustración 15.Entrenamiento de la Red Neuronal

Para poder realizar pruebas usamos el comando gensim (cet) para tener el bloque de la red neuronal como tal luego realizamos el modelo de simulación.

Ilustración 16. Simulación de la planta con el controlador.

V. Resultados de simulación

Después de obtener este modelo en simulink realizamos las respectivas pruebas donde el valor de temperatura de Set Point es de color amarillo y el valor de temperatura de la planta es de color morado y la señal de control de la red neuronal es de color verde claro cómo podemos observar en las figura presentadas a continuación el tiempo de establecimiento es pequeño aproximadamente de 30 segundos y el error en estado estacionario es muy pequeño por lo que procedió a realizar las pruebas de este controlador en junto con la planta física real.

Page 11: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 10

SP = 30 grados

Ilustración 17. Resultados de simulación del sistema con una referencia de 30 grados.

SP = 40 grados

Ilustración 18. Resultados de simulación del sistema con una referencia de 40 grados.

SP = 50 grados

Ilustración 19. Resultados de simulación del sistema con una referencia de 50 grados.

Page 12: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 11

VI. Resultados Prácticos

Al poder realizar las pruebas prácticas en laboratorio el día 3 de Julio del 2014, se obtuvo resultados

exitosos en el desempeño del controlador mediante redes neuronales, a continuación se muestra el

resultado con una referencia de 40 grados.

La figura 17 muestra la salida de las tres variables involucradas en el sistema, la línea de color

morado es la salida del sistema que como se aprecia se ajusta rápidamente a la línea amarilla que es

la referencia de 40 grados ingresada, finalmente la línea celeste es la salida del control de la red en

voltaje.

Ilustración 20.Resultados prácticos obtenidos en el sistema con una referencia de 40 grados.

El rendimiento es bastante bueno ya que en las pruebas realizadas se obtienen resultados de

referencia aproximadamente a los 30 segundos obteniendo un desempeño exitoso del controlador

implementado, para poder realizar la ejecución del programa solamente se reemplazó el modelo de

primer orden obtenido para simulaciones por el bloque de representación del sistema.

Page 13: CONTROL INTELIGENTE NRC: 2033 DISEÑO DE · PDF filediseÑo de controlador neuronal para la unidad air flow temperature control system 3 de julio de 2014 controlador neuronal inverso

DISEÑO DE CONTROLADOR NEURONAL PARA LA UNIDAD AIR FLOW TEMPERATURE CONTROL SYSTEM 3 de julio de 2014

CONTROLADOR NEURONAL INVERSO Página 12

Ilustración 21. Modelo de Simulink Utilizado para Pruebas Prácticas en el laboratorio.

VII. Conclusiones

Se pudo realizar el controlador inverso mediante redes neuronales para el sistema de

temperatura Air Flow Temperature Control System, empleando un sistema de primer orden,

obteniendo resultados exitosos en la práctica para distintos valores de referencia.

Se pudo observar que al representar la planta en una red neuronal artificial, esta no posee el

comportamiento reflejado al 100% del sistema real, por lo que la generación de patrones de

entrenamiento mediante el modelo obtenido tiene que ser el mejor posible, estableciendo

rangos de trabajo de cada una de las variables adecuadamente.

Mediante la implementación del controlador se pudo comprobar la utilidad de las redes

neuronales en las tareas de control, a pesar de ser este un experimento con un sistema

sencillo no se aprecia al 100% su utilidad, pero por el hecho de lograr la identificación de

sistemas se justifica como una herramienta poderosa en diseño de controladores para

sistemas no lineales, complejos y sin modelos de referencia.

La obtención de parámetros de la planta se pudo plantear de dos maneras distintas, la

utilizada en este trabajo mediante la herramienta ident es una, mientras que al utilizar

comandos para aproximación de funciones en base al error como fminsearch también se

obtiene un modelo con un grado de aproximación superior a 90%.