actividad no16 2do parcial(1)

7
UNIVERSIDAD DE FUERZAS ARMADAS “ESPE” DEPARTAMENTO DE ELÉCTRICA Y ELECTRÓNICA ASIGNATURA: CONTROL INTELIGENTE Actividad 16. Control con red neuronal inversa (2 puntos a nota de parcial) Fecha: 9 de Junio del 2014 Nombre de los alumnos: Dayana Ochoa y Carlos Mendoza NRC: 2055 Objetivo: Desarrollar un controlador con red neuronal inversa para el sistema de dos tanques y compararlo con un controlador PID. Introducción: Encuentre en Internet un artículo referente a control con red neuronal inversa y escriba dos párrafos que permitan caracterizar este tipo de controlador. 1.- Simule un control con red neuronal inversa para el sistema de dos tanques Código del programa H1iniV=[5:2:25]; H2iniV=[5:2:25]; ap1V=[0.5:0.1:1]; ap2V=[0.5:0.1:1]; q0V=[20:3:29]; %Combinacion de valores de vectores : combvec Pm=combvec(H1iniV,ap1V,H2iniV,ap2V, q0V); dh1V=[] dh2V=[] for i=1:length(Pm) % q0=Pm(5,i); H1ini=Pm(1,i); ap1=Pm(2,i); H2ini=Pm(3,i); ap2=Pm(4,i); caudal=Pm(5,i); sim('two_tank_1',[0 1]) dh1=H1-H1ini; dh2=H2-H2ini; dh1V=[dh1V dh1]; dh2V=[dh2V dh2]; mensaje=sprintf('patron no %d de %d',i,length(Pm)) end Tm=[dh1V;dh2V]; Pm1(1,:)=Pm(1,:);%H1in Pm1(2,:)=Tm(1,:);%delta H1 Pm1(3,:)=Pm(3,:);%H2in Pm1(4,:)=Tm(2,:);% delta h2 Pm1(5,:)=Pm(5,:);%q0 Tm1(1,:)=Pm(2,:);%target Tm1(2,:)=Pm(4,:);%target % Aproximacion de funciones P=Pm1; T=Tm1; net = newff(minmax(P),[8 2],{'tansig' 'purelin'}); Y = sim(net,P); net.trainParam.epochs = 50; net.trainParam.goal=1e-5;

Upload: carlos-mendoza

Post on 02-Aug-2015

61 views

Category:

Engineering


7 download

TRANSCRIPT

Page 1: Actividad no16 2do parcial(1)

UNIVERSIDAD DE FUERZAS ARMADAS “ESPE”DEPARTAMENTO DE ELÉCTRICA Y ELECTRÓNICA

ASIGNATURA: CONTROL INTELIGENTE

Actividad 16. Control con red neuronal inversa (2 puntos a nota de parcial)

Fecha: 9 de Junio del 2014Nombre de los alumnos: Dayana Ochoa y Carlos MendozaNRC: 2055

Objetivo: Desarrollar un controlador con red neuronal inversa para el sistema de dos tanques y compararlo con un controlador PID.Introducción: Encuentre en Internet un artículo referente a control con red neuronal inversa y escriba dos párrafos que permitan caracterizar este tipo de controlador.

1.- Simule un control con red neuronal inversa para el sistema de dos tanques

Página 1

Código del programaH1iniV=[5:2:25];H2iniV=[5:2:25];ap1V=[0.5:0.1:1];ap2V=[0.5:0.1:1];q0V=[20:3:29]; %Combinacion de valores de vectores : combvecPm=combvec(H1iniV,ap1V,H2iniV,ap2V, q0V);dh1V=[]dh2V=[]for i=1:length(Pm) % q0=Pm(5,i); H1ini=Pm(1,i); ap1=Pm(2,i); H2ini=Pm(3,i); ap2=Pm(4,i); caudal=Pm(5,i); sim('two_tank_1',[0 1]) dh1=H1-H1ini; dh2=H2-H2ini; dh1V=[dh1V dh1]; dh2V=[dh2V dh2]; mensaje=sprintf('patron no %d de %d',i,length(Pm))endTm=[dh1V;dh2V];Pm1(1,:)=Pm(1,:);%H1inPm1(2,:)=Tm(1,:);%delta H1Pm1(3,:)=Pm(3,:);%H2inPm1(4,:)=Tm(2,:);% delta h2Pm1(5,:)=Pm(5,:);%q0Tm1(1,:)=Pm(2,:);%targetTm1(2,:)=Pm(4,:);%target% Aproximacion de funcionesP=Pm1;T=Tm1;net = newff(minmax(P),[8 2],{'tansig' 'purelin'});Y = sim(net,P);net.trainParam.epochs = 50;net.trainParam.goal=1e-5;net = train(net,P,T);Y = sim(net,P);close allfigure(1)subplot(211)plot(ap1V,'k')subplot(212)plot(ap2V,'k')figure(2)ap1nn= Y(1,:)ap2nn=Y(2,:)subplot(211)plot(ap1nn)subplot(212)plot(ap2nn)hold off

Page 2: Actividad no16 2do parcial(1)

Página 2

Gráficas obtenidas durante el entrenamiento

Bloque entrenado

Diagrama en simulink

Gráfica obtenida del diagrama

Page 3: Actividad no16 2do parcial(1)

2.- Compare su funcionalidad con respecto a un controlador PID

3.- Analice cuatro casos de estudio. Analice el comportamiento de las válvulas, tiempos de respuesta y error de estado estable.

Página 3

Diagrama en simulink del controlador PID

Gráficas comparativasControlador neuronal Controlador PID

a) H1=15; H2=10; caudal=20Control neuronal

Nivel de Tanques Válvula 1 Válvula 2

Control PID

Nivel de Tanques Válvula 1 Válvula 2

Page 4: Actividad no16 2do parcial(1)

Página 4

b) H1=15; H2=20; caudal=20Control neuronal

Nivel de Tanques Válvula 1 Válvula 2

Control PID

Nivel de Tanques Válvula 1 Válvula 2

c) H1=20; H2=20; caudal=20Control neuronal

Nivel de Tanques Válvula 1 Válvula 2

Control PID

Nivel de Tanques Válvula 1 Válvula 2

Page 5: Actividad no16 2do parcial(1)

Análisis

Nosotros Dayana Ochoa y Carlos Mendoza afirmamos que esta actividad es de nuestra autoría y establecemos que para la elaboración de la misma hemos seguido los lineamientos del Código de Ética de la Universidad de las Fuerzas Armadas ESPE

Página 5

d) H1=10; H2=25; caudal=25Control neuronal

Nivel de Tanques Válvula 1 Válvula 2

Control PID

Nivel de Tanques Válvula 1 Válvula 2

Mediante los resultados obtenidos se puede verificar, que el control con red neuronal inversa permite seguir una señal de referencia con un buen tiempo de establecimiento además se ha podido reducir la dinámica de la planta, teniendo una salida lo más parecida posible a la referencia, en comparación con el controlador PID para el control del sistema de dos tanques , su diferencia radica en el desempeño del controlador, siendo que los mejores parámetros de control tiene el controlador con red neuronal inversa, además se puede notar que el controlador con red neuronal inversa tiene un tiempo de establecimiento pequeño relativo al nivel deseado.Con respecto al comportamiento de las válvulas es posible decir de forma general que su comportamiento dependerá de los parámetros modificados por ejemplo para un coeficiente de apertura 1 mayor al de apertura 2, se tiene como se muestra en las figuras que el vaciado del tanque 1 se realiza más rápido por red neuronal que por PID, mientras que el control de Tanque 2, llega a su punto de referencia en menor tiempo en la red neuronal que en el método PID, sin embargo este comportamiento es susceptible a cambios en cuento se modifiquen los parámetros mencionados.