Escolar Documentos
Profissional Documentos
Cultura Documentos
DE UN AVIÓN
ANTONIO MENDOZA VÁZQUEZ
ÍNDICE:
1. Introducción…………………………………………………………………………………………………………..pág 3
2. Filtro de Kalman para estimar el estado del avión. Compruebe la bondad de las estimaciones
a partir del error de estimación de las salidas……………………………………………………………págs.3-7
4. Controlador LQR de seguimiento para el control de la velocidad y altura ante saltos de 5 m/s
y 100 m (como en el apartado 2) pero con una transición en rampa de 300 segundos de
duración……………………………………………………………………………………………………………………..págs9-12
1. INTRODUCCIÓN
Este trabajo consiste en el diseño en variables de estado de un avión. Para ello se va a realizar
el control en regulación y seguimiento de un modelo de avión usando las técnicas de control
óptimo. Nuestras condiciones de vuelo serán V=100 m/s y h=900 m.
En primer lugar, vamos a diseñar un filtro de Kalman, que va a estimar el estado del avión. Una
vez diseñado el filtro de Kalman, procedemos a diseñar un controlador LQR en regulación, y
posteriormente en seguimiento para realizar un control óptimo estocástico sobre el modelo
lineal y no lineal del avión.
Para ello vamos a usar la siguiente estructura en MATLAB y las funciones proporcionadas:
Uk=U0;
% Cálculo/Lectura de la referencia Rk
En el primer paso el estado predicho por el modelo dinámico. En el segundo paso se corrige
con el modelo de observación, de modo que la covarianza del estimador de error se minimiza.
En este sentido, es un estimador óptimo.
En este apartado lo primero que hemos realizado ha sido obtener las condiciones de vuelo X0
y U0 mediante una función proporcionada, y después las matrices de estado en tiempo
continuo Ac, Bc ,Cc, Dc. Una vez obtenidas el siguiente paso ha sido hallar el tiempo de
discretización y el número de muestras. Así, fijando delta=0.5 y t_est=1s. Tenemos que:
𝜋
𝑤𝑛 =
𝛿 ∗ 𝑡𝑒
𝜋 − acos(𝛿)
𝑡𝑠 =
𝑤𝑛 ∗ √1 − 𝛿^2
𝑇𝑑𝑖𝑠𝑐 = 0.1 ∗ 𝑡𝑠. = 0.01;
Así, hallamos las matrices del modelo discreto y aplicamos el algoritmo de Kalman linealizado,
en primer lugar tenemos que nuestro vector de estados x= velocidad, gamma, theta, q, h y las
vaiables de control F y delta e. Así, el código es:
%condiciones iniciales
V0=55;
h0=900;
[X0,U0]=CalcCondVuelo(V0,h0);
%discretizacion
Tm = 0.01;
[Ac,Bc,Cc,Dc] = CalcMdlLin(X0,U0);
continuo = ss(Ac,Bc,Cc,Dc);
discreto = c2d(continuo, Tm);
[Ad,Bd,Cd,Dd] = ssdata(discreto);
[yl,t,xl]=initial(discreto,X0);
Uk=U0;
xant = [0 0 0 0 0]';
Pant = (1e4).*eye(5);
N= 500;
x_plot=[];
Y_plot=[];
for k=0:N
end
Hemos tomado un filtro de Kalman en régimen permanente, vamos a comprobar que el estado
estimado converge al estado real:
Velocidad:
Gamma:
Theta:
Q:
H:
Errores de estimación:
Podemos observar que el estado estimado en todos los casos converge al estado real.
Primeramente, Las técnicas de control óptimo conforman una de las ramas del control
automático más importantes en el desarrollo de las estrategias modernas de control más
utilizadas hoy en día. Se han escrito numerosas monografías dedicadas a su estudio, y se ha
publicado una gran cantidad de artículos en revistas especializadas.
En primer lugar vamos a diseñar la ganancia del controlador con el comando dlqr de MATLAB,
para lo cual, primero tenemos que diseñar las matrices Q y R que la elegiremos así:
Q=diag([0.02,0,1e-5,0,1e-3]);
R=5.*diag([1e-5,0.17]);
Velocidad:
Altitud:
Ahora procedemos a simular el modelo no lineal, cuya cariable yk calcularemos con la función
integra_modelo. Así: los resultados de simulación del modelo no lineal son:
Velocidad real:
Altitud real:
Tras la realización de un controlador LQR para regulación y tras los resultados obtenidos,
llegamos a las siguientes conclusiones:
Un menor tiempo de muestreo nos permite que la actuación del controlador sea mejor, y las
estimaciones proporcionadas por el Filtro de Kalman, tanto para el controlador LQR para el
modelo lineal como no lineal son realmente buenas.
Altitud:
Observamos, que ambas variables siguen a la rampa.
Velocidad:
Altitud real:
Podemos observar que en el modelo no lineal existen grandes oscilaciones, pero, aun así, la
salida sigue a la referencia en rampa.
Tras la realización de un controlador LQR para seguimiento y tras los resultados obtenidos,
llegamos a las siguientes conclusiones:
Para el modelo linealizado, el controlador se comporta de una manera aceptable, excepto por
las oscilaciones. Para el modelo no linealizado, un controlador LQR para seguimiento no es una
solución adecuada, ya que se producen errores muy significativos.