Está en la página 1de 17

UNIVERSIDAD NACIONAL DE

INGENIERIA
FACULTAD DE INGENIERÍA MECÁNICA

Laboratorio N°4

Control Óptimo

❖ CURSO:
Control moderno y óptimo – MT227
❖ PROFESOR:
Gustavo Mesones Málaga
❖ SECCIÓN:
B.
❖ ALUMNOS:
Vargas Escarcena, Lincol Santiago 20132037C
Quispe Velásquez, Brian Donello 20151032C
Urpeque Castillo, José Ricardo 20151119A

UNI

2018-II
1. Armado de Circuito:

Figura 1. Esquema del circuito de orden 3.

Figura 2. Circuito implementado.


2. Análisis y presentación del modelo en espacio de estados.

Figura 3. Análisis del circuito.

1
𝑋1̇ = ∗ (−2 ∗ 𝑋1 − 𝑋2 + 𝑋3 + 𝑢)
𝐶1 ∗ 𝑅
1
𝑋2̇ = 𝐶2∗𝑅 ∗ (−𝑋1 − 2 ∗ 𝑋2 + 𝑋3 )

1
𝑋3̇ = ∗ (−𝑋2 )
𝐶3 ∗ 𝑅

SOFTWARE

3. Análisis de la planta sin control.

Para esta parte se hará uso de un script de Matlab donde se observará la estabilidad del
sistema.

Ev_sistsolo

clear all;close all; clc;


%DEFINCION DE SISTEMA
syms s
%Valores de los componentes
R=10^4;
C1=10^-6;
C2=10^-6;
C3=10^-6;

A=[-2/(R*C1) -1/(R*C1) 1/(R*C1);-1/(R*C2) -2/(R*C2) 1/(R*C2);0 -1/(R*C3) 0];


B=[1/(R*C1); 0; 0];
C=[0 0 1];
D=0;
%Funcion transferencia
FT=C*(inv(s*eye(3)-A))*B + D;
disp('Funcion Transferencia')
pretty(FT)
[NUM,DEN]=ss2tf(A,B,C,D);
%Estabilidad
disp('Raices de la ecuacion caracteristica')
roots(DEN)
disp('Rango de A')
rank(A)
%Controlabilidad matriz Ctr
Ctr=[B A*B (A^2)*B];
disp('Determinante de Ctr')
det(Ctr)
disp('Rango de Ctr')
rank(Ctr)
%Observabilidad matriz Obs
Obs=[C; C*A; C*(A^2)];
disp('Determinante de Obs')
det(Obs)
disp('Rango de Obs')
rank(Obs)
%Analisis de la salida con entrada onda cuadrada
C3=[0 0 1];
[NUM,DEN]=ss2tf(A,B,C3,D);
H3 = tf(NUM,DEN);
C2=[0 1 0];
[NUM,DEN]=ss2tf(A,B,C2,D);
H2 = tf(NUM,DEN);
C1=[1 0 0];
[NUM,DEN]=ss2tf(A,B,C1,D);
H1 = tf(NUM,DEN);
[u,t] = gensig('square',5,20,0.001);
figure(1)
lsim(H1,H2,H3,u,t)
title('Sistema Original')
legend('X1', 'X2', 'X3')
figure(2)
t1=0:0.001:4;
step(H1,H2,H3,t1)
title('Señales ampliadas')
legend('X1',’X2’,’X3’)

Resultados del script Ev_sistsolo

Como se puede apreciar en los resultados obtenidos por el código de Matlab se obtiene la
siguiente función transferencia:

𝟏𝟎𝟎𝟎𝟎𝟎𝟎
𝑭𝑻 =
𝒔𝟑 + 𝟒𝟎𝟎 ∗ 𝒔𝟐 + 𝟒𝟎𝟎𝟎𝟎 ∗ 𝒔 + 𝟏𝟎𝟎𝟎𝟎𝟎𝟎
Al calcular las raíces del denominador se obtienen los siguientes polos:

𝑆1 = −261.8034 , 𝑆2 = −100, 𝑆3 = −38.1966


Los cuales son reales negativos por lo que se encuentran a la izquierda del eje imaginario
y cumplen con el criterio de estabilidad. De igual manera al obtener el rango de la matriz A
nos da como resultado el orden del sistema por lo que se deduce que es estable.

−200 −100 100


𝐴 = [−100 −200 100]
0 −100 0
𝑅𝑎𝑛𝑔𝑜(𝐴) = 3 → 𝐸𝑙 𝑠𝑖𝑠𝑡𝑒𝑚𝑎 𝑒𝑠 𝑒𝑠𝑡𝑎𝑏𝑙𝑒.
Para el análisis de controlabilidad de este sistema se utilizará los conocimientos adquiridos
en clase que establecen que:

𝐶0 = [𝐵 𝐴𝐵 𝐴2 𝐵 … 𝐴(𝑛−1) 𝐵 ]
𝐷𝑒𝑡(𝐶0 ) ≠ 0 → 𝐸𝑙 𝑠𝑖𝑠𝑡𝑒𝑚𝑎 𝑒𝑠 𝑐𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑙𝑒.
Calculando la matriz C0 se obtiene:

100 −20000 5000000


𝐶0 = [ 0 −10000 4000000]
0 0 1000000
𝐷𝑒𝑡(𝐶0 ) = −10^12 → 𝐸𝑙 𝑠𝑖𝑠𝑡𝑒𝑚𝑎 𝑒𝑠 𝑐𝑜𝑛𝑡𝑟𝑜𝑙𝑎𝑏𝑙𝑒 𝑝𝑜𝑟 𝑠𝑒𝑟 𝑑𝑖𝑠𝑡𝑖𝑛𝑡𝑜 𝑑𝑒 𝑐𝑒𝑟𝑜.
Para el análisis de observabilidad de este sistema se utilizará los conocimientos adquiridos
en clase que establecen que:

𝐶
𝐶𝐴
𝑂0 = 𝐶𝐴2

[𝐶𝐴(𝑛−1) ]
𝐷𝑒𝑡(𝑂0 ) ≠ 0 → 𝐸𝑙 𝑠𝑖𝑠𝑡𝑒𝑚𝑎 𝑒𝑠 𝑜𝑏𝑠𝑒𝑟𝑣𝑎𝑏𝑙𝑒
Calculando la matriz O0 se obtiene:

0 0 1
𝑂0 = [ 0 −100 0 ]
10000 20000 −10000
𝐷𝑒𝑡(𝑂0 ) = 10^6 → 𝐸𝑙 𝑠𝑖𝑠𝑡𝑒𝑚𝑎 𝑒𝑠 𝑜𝑏𝑠𝑒𝑟𝑣𝑎𝑏𝑙𝑒 𝑝𝑜𝑟 𝑠𝑒𝑟 𝑑𝑖𝑠𝑡𝑖𝑛𝑡𝑜 𝑑𝑒 𝑐𝑒𝑟𝑜.
Acción integral

Según conceptos vistos en clase para saber si un sistema contiene o no un integrador es


necesario observar los valores propios de la matriz A, que son las raíces del sistema:

𝑺𝟏 = −𝟐𝟔𝟏. 𝟖𝟎𝟑𝟒 , 𝑺𝟐 = −𝟏𝟎𝟎, 𝑺𝟑 = −𝟑𝟖. 𝟏𝟗𝟔𝟔

Como se puede observar no contiene un “cero” como raíz entonces requiere de acción
integral.

Figura 4. Señales de la planta original.

Figura 5. Todas las señales para una mejor visualización.


4. Aplicando control óptimo.

Para esta parte se usara el criterio de LQR en Matlab se aplicará el comando “lqr”.

close all; clear all; clc;


%DEFINCION DE SISTEMA
%Valores de las resistencias y los condensadores
R1=10^4;
C1=10^-6;
A=[-2/(R1*C1), -1/(R1*C1) , 1/(R1*C1);
-1/(R1*C1), -2/(R1*C1) , 1/(R1*C1);
0 , -1/(R1*C1) , 0 ];
B= [1/(R1*C1); 0 ; 0];
C= [0 0 1];
D= 0;

% Modelo ampliado
Ai=[A, zeros(3,1);
-C, 0];
Bi=[B;0];
Ci=[C 0];
Qy=20;
Qz=1000;
R=10;
Qhat=[C'*Qy*C, zeros(3,1);
zeros(1,3), Qz];
% Qhat=[1e4 0 0 0; 0 1e3 0 0; 0 0 10 0; 0 0 0 6e5];
%Lqr
[K ,P ,e]=lqr(Ai,Bi,Qhat,R);
z=(1/R)*Bi'*inv((Ai-Bi*K)');
z1=z(1:3);
G=z*P;
Gp=G(:,4:4);

Kx=K(1:3);
Kz=K(4);
Kr=Gp-z1*C'*Qy;
Af= [A-B*K(1:3),-B*K(4);
-C, 0 ];
Bf= [0;0;0;1];
Cf= [C,0];
Df=0;
disp('los valores de K son')
disp(K)
%Para salida X3
C3=[0 0 1 0];
[NUM,DEN]=ss2tf(Af,Bf,C3,Df);
H3 = tf(NUM,DEN);
figure(1)
[u,t] = gensig('square',5,20,0.001);
lsim(H3,u,t)
title('X3')
%Para salida X2
C2=[0 1 0 0];
[NUM,DEN]=ss2tf(Af,Bf,C2,Df);
H2 = tf(NUM,DEN);
figure(2)
[u,t] = gensig('square',5,20,0.001);
lsim(H2,u,t)
title('X2')
%Para salida X1
C1=[1 0 0 0];
[NUM,DEN]=ss2tf(Af,Bf,C1,Df);
H1 = tf(NUM,DEN);
figure(3)
[u,t] = gensig('square',5,20,0.001);
lsim(H1,u,t)
title('X1')
%Para salida Xi
CC=[0 0 0 1];
[NUM,DEN]=ss2tf(Af,Bf,CC,Df);
H0 = tf(NUM,DEN);
figure(4)
[u,t] = gensig('square',5,20,0.001);
lsim(H0,u,t)
title('Xi')
%Todas las "X's" en Step
figure(5)
amp=2;
t=0:0.005:0.3;
u=amp*exp(0*t);
x0=[0 0 0];
[y,x]=lsim(A,B,C,0,u,t,x0);
subplot(2,1,1)
plot(t,x(:,1),t,x(:,2),t,x(:,3))
title('Sist Original')
axis([0,t(end),-1,2.5])
legend('x1','x2','x3')
grid

subplot(2,1,2)
x1=[0 0 0 0];
[y1,x1]=lsim(Ai,Bi,Ci,0,u,t,x1);
plot(t,x1(:,1),t,x1(:,2),t,x1(:,3))
title('Sist Controlado')
axis([0,t(end),-1,2.5])
legend('x1','x2','x3')
grid
%Todas las "X's" en general
figure(6)
[u,t] = gensig('square',5,20,0.001);
lsim(H1,H2,H3,H0,u,t)
title('Todas las señales general')
legend('X1', 'X2', 'X3', 'Xi')
Los valores de K son:

𝐾1 = 0.2364 𝐾2 = −0.5006 𝐾3 = 0.7623 𝐾𝑖 = −10.0000

A continuación, se mostrarán las señales con el control aplicado al sistema:

Figura 6. Señal X1 con control aplicado.

Figura 7. Señal X2 con control aplicado


Figura 8. Señal X3 con control aplicado

Figura 9. Todas las señales en un mismo gráfico.


Figura 10. Comparación del sistema antes y después del control aplicado.
5. Diseño en SIMULINK

REALIMENTACIÓN

ACCIÓN
INTEGRAL

-
U X1
X2
X2

PLANTA

Figura 11. Diseño del diagrama de bloques de la planta y la acción de control


Figura 12. Variables de estado observadas en el scope
6. Diseño en PROTEUS

Figura 13. Diseño del circuito en con el programa Proteus versión 8.6

Figura 14. Variables de estado observadas con el analizador analógico de Proteus


7. Resultados obtenidos en el circuito implementado

Figura 15. Circuito electrónico implementado

Figura 16. Entrada y variable X1 observada en el osciloscopio.


Figura 17. Entrada y variable X2 observada en el osciloscopio.

Figura 18. Entrada y variable X3 observada en el osciloscopio.


8. OBSERVACIONES

• Durante el diseño electrónico del circuito con el control aplicado se observó que es
muy necesario tener en cuenta la selección de componentes electrónicos tales como
las resistencias y las capacitancias, ya que esto puede afectar a la corriente que
circula por el circuito en conjunto.

• Es necesario antes de implementar el circuito es recomendable implementar parte


por parte (planta, integrador, sumador, restador etc.) para garantizar un correcto
funcionamiento del circuito.

9. CONCLUSIONES

• La aplicación del control optimo mediante el uso de LQR fue constatada en el


laboratorio, la matriz K obtenida por este método permitió que las señales del
sistema alcancen el modelo teórico.

También podría gustarte