- •Institute of Aerospace Control Systems
- •Variant 2
- •1. Theoretical information
- •2. Results of MatLab code
- •2.1. Determining of the characteristics of the system
- •2.2. Solving the problem of analytical design of controller (autopilot) for given open-loop system:
- •2.3. Determining the characteristics of closed-loop system with matrix of optimal gains of controller in feedback
2.2. Solving the problem of analytical design of controller (autopilot) for given open-loop system:
Matrix of optimal gains of controller
F =
-0.0069 130.3971 -8.1726 -171.2143 1.7317 -0.0014 1.2540 -0.0001
0.5126 -1.9477 0.0016 1.9525 -0.0376 0.4679 -0.0001 0.0897
Matrix – solution of Ricatti equation
P =
1.0e+03 *
0.0110 -0.0416 0.0000 0.0417 -0.0008 0.0003 -0.0000 0.0000
-0.0416 2.4798 -0.0833 -3.0445 0.0479 -0.0013 0.0065 -0.0001
0.0000 -0.0833 0.0038 0.1059 -0.0014 0.0000 -0.0004 0.0000
0.0417 -3.0445 0.1059 3.7611 -0.0576 0.0013 -0.0086 0.0001
-0.0008 0.0479 -0.0014 -0.0576 0.0012 -0.0000 0.0001 -0.0000
0.0003 -0.0013 0.0000 0.0013 -0.0000 0.0003 -0.0000 0.0000
-0.0000 0.0065 -0.0004 -0.0086 0.0001 -0.0000 0.0001 -0.0000
0.0000 -0.0001 0.0000 0.0001 -0.0000 0.0000 -0.0000 0.0000
Vector, that contains eigenvalues of state matrix of closed-loop system A-BF
E =
-8.0527 + 3.6908i
-8.0527 - 3.6908i
-10.5831
-2.6381 + 3.8414i
-2.6381 - 3.8414i
-4.0481
-0.0052
Closed-loop system with matrix of optimal gains of controller in feedback:
syslqrcl =
a =
x1 x2 x3 x4 x5 x6 x7 x8
x1 0.0027 6.162 0 -9.801 0 0.0288 -0.2326 0
x2 -0.0011 -0.9623 1 -0.0026 0 0 -0.0636 0
x3 -0.0004 -5.692 -1.926 0.0013 0 0.0011 -3.45 0
x4 0 0 1 0 0 0 0 0
x5 0.0349 134.1 0 -134.1 0 0 0 0
x6 0 0 0 0 0 -0.6667 0 0.6667
x7 0.06892 -1304 81.73 1712 -17.32 0.01386 -22.54 0.0005242
x8 -5.126 19.48 -0.01645 -19.52 0.3756 -4.679 0.0006553 -10.9
b =
u1 u2
x1 0 0
x2 0 0
x3 0 0
x4 0 0
x5 0 0
x6 0 0
x7 10 0
x8 0 10
c =
x1 x2 x3 x4 x5 x6 x7 x8
y1 1 0 0 0 0 0 0 0
y2 0 1 0 0 0 0 0 0
y3 0 0 1 0 0 0 0 0
y4 0 0 0 1 0 0 0 0
y5 0 0 0 0 1 0 0 0
y6 0 0 0 0 0 1 0 0
y7 0 0 0 0 0 0 1 0
y8 0 0 0 0 0 0 0 1
d =
u1 u2
y1 0 0
y2 0 0
y3 0 0
y4 0 0
y5 0 0
y6 0 0
y7 0 0
y8 0 0
Continuous-time state-space model.
2.3. Determining the characteristics of closed-loop system with matrix of optimal gains of controller in feedback
a. Eigenvalues of state matrix of closed-loop system and their graphic representation
Elqrcl = -10.5831
-8.0527 + 3.6908i
-8.0527 - 3.6908i
-2.6381 + 3.8414i
-2.6381 - 3.8414i
-0.0052
-0.9708
-4.0481
Fig.7. Graphic representation of eigenvalues
of state matrix of closed-loop system
b. H2-norm for closed loop sytem:
H2lqrcl = 2.8760
c. H∞-norm for closed loop sytem:
Hinflqrcl = 3.6553
d. Transfer functions of closed loop system from all inputs to all outputs:
From 1st input
W11c =
-2.326 s^6 - 37.53 s^5 - 46.71 s^4 + 1341 s^3 + 4401 s^2 + 3026 s + 28.7
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W12c =
-0.636 s^6 - 43.07 s^5 - 419.4 s^4 - 369.1 s^3 - 5.789 s^2 - 3.835 s - 0.03638
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W13c =
-34.5 s^6 - 428.4 s^5 - 699.3 s^4 - 311.5 s^3 - 4.642 s^2 - 0.02891 s
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W14c =
-34.5 s^5 - 428.4 s^4 - 699.3 s^3 - 311.5 s^2 - 4.642 s - 0.02891
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W15c =
-85.37 s^5 - 1151 s^4 + 1199 s^3 + 4.433e04 s^2 + 4.115e04 s + 213.7
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W16c =
0.004369 s^5 + 0.08169 s^4 + 0.5647 s^3 + 1.905 s^2 + 2.134 s - 4.299
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W17c =
10 s^7 + 144.5 s^6 + 512.9 s^5 + 1173 s^4 + 783.8 s^3 + 11.52 s^2 + 5.992 s + 0.05532
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W18c =
0.006553 s^6 + 0.1269 s^5 + 0.9287 s^4 + 3.422 s^3 + 5.106 s^2 - 4.314 s - 4.299
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
From 2nd input
W21c =
0.1908 s^5 + 4.855 s^4 + 51.94 s^3 + 289.8 s^2 + 919.4 s + 1323
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W22c =
-0.0003334 s^5 - 0.0177 s^4 - 0.2213 s^3 - 0.9073 s^2 - 1.905 s - 1.677
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W23c =
-0.01075 s^5 - 0.174 s^4 - 0.7785 s^3 - 1.638 s^2 - 1.333 s + 2.22e-15
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W24c =
-0.01075 s^4 - 0.174 s^3 - 0.7785 s^2 - 1.638 s - 1.333
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W25c =
-0.03805 s^4 - 0.7625 s^3 - 4.537 s^2 - 7.162 s - 3.709
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W26c =
6.667 s^6 + 169.5 s^5 + 1811 s^4 + 1.008e04 s^3 + 3.193e04 s^2 + 4.585e04 s - 198.2
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W27c =
0.005242 s^6 + 0.111 s^5 + 0.9288 s^4 + 4.483 s^3 + 12.94 s^2 + 18.4 s + 2.55
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
W28c =
10 s^7 + 260.9 s^6 + 2886 s^5 + 1.693e04 s^4 + 5.797e04 s^3 + 1.007e05 s^2 + 4.555e04 s - 198.2
-----------------------------------------------------------------------------------------------------
s^8 + 36.99 s^7 + 576 s^6 + 4917 s^5 + 2.51e04 s^4 + 7.799e04 s^3 + 1.294e05 s^2 + 7.155e04 s + 370.3
Continuous-time transfer function.
e. Frequency responses of the closed loop system from all inputs to n-th outputs:
Fig.8.Nyquist plot from 1st input to 1st output
Fig.9.Bode plot from 1st input to 1st output
Fig.10.Nyquist plot from 2nd input to 1st output
Fig.11.Bode plot from 2nd input to 1st output
Conclusions
For uncompensated system we cannot define the H2-norm, because this system has unstable dynamics and H∞-norm is equal to 11.87.
For compensated system H2-norm can be calculated and it is equal to 2.876 and H∞-norm is equal to 3.6553.
So, the accuracy and quality of control and robustness of compensated system is higher, then in uncompensated.
Appendix 1
clc
clear all
%Model of short-range airplane.Longitudinal channel.Approach %mode.State space variables:1)V-velocity, 2)alpha-angle of %attack, 3)q-pitch rate,4)theta-pitch angle, 5)h-altitude, 6)n-%engine's rpm.Control variables: 1)elevator, 2)thrust control.
%State space matrices of the aircraft:
Aair=[0.0027 6.1616 0 -9.8007 0 0.0288;
-0.0011 -0.9623 1 -0.0026 0 0;
-0.0004 -5.6916 -1.926 0.0013 0 0.0011;
0 0 1 0 0 0;
0.0349 134.1 0 -134.1 0 0;
0 0 0 0 0 -0.6667];
Bair=[-0.2326 0;
-0.0636 0;
-3.4498 0;
0 0;
0 0;
0 0.6667];
Cair=eye(6,6);
Dair=zeros(6,2);
n=1;
sysair=ss(Aair,Bair,Cair,Dair);
%Actuator
Ta=0.1;
Aac=[-1/Ta 0;
0 -1/Ta];
Bac=[1/Ta 0;
0 1/Ta];
Cac=eye(2);
Dac=zeros(2);
sysac=ss(Aac,Bac,Cac,Dac);
sys=series(sysac,sysair)
[A,B,C,D]=ssdata(sys)
%From 1st input
[num,den]=ss2tf(A,B,C,D,1)
W11=tf(num(1,:),den)
W12=tf(num(2,:),den)
W13=tf(num(3,:),den)
W14=tf(num(4,:),den)
W15=tf(num(5,:),den)
W16=tf(num(6,:),den)
%from 2nd input
[num0,den0]=ss2tf(A,B,C,D,2)
W21=tf(num0(1,:),den0)
W22=tf(num0(2,:),den0)
W23=tf(num0(3,:),den0)
W24=tf(num0(4,:),den0)
W25=tf(num0(5,:),den0)
W26=tf(num0(6,:),den0)
figure(1)
nyquist(W11)
figure(2)
nyquist(W21)
figure(3)
bode(W11)
figure(4)
bode(W21)
Eol=eig(A)
figure(5)
pzmap(sys),grid on
sysf=ones(2,6)
syscl=feedback(sys,sysf)
Ecl=eig(syscl)
figure(6)
pzmap(syscl),grid on
[Acl,Bcl,Ccl,Dcl]=ssdata(syscl)
H2=normh2(Acl,Bcl,Ccl,Dcl)
Hinf=normhinf(Acl,Bcl,Ccl,Dcl)
%Analytical design of controller (autopilot) for given open-loop system
W=[0.01 0.1 3 0.5 1.5 0.5 0.05 0.05];
R1=diag(W);
R2=[0.5 0;
0 0.4];
[F,P,E]=lqr(A,B,R1,R2)
Clqr=[C; zeros(1,6) 1 0; zeros(1,7) 1];
Dlqr=zeros(8,2);
syslqr=ss(A,B,Clqr,Dlqr);
syslqrcl=feedback(syslqr,F)
[Alqrcl,Blqrcl,Clqrcl,Dlqrcl]=ssdata(syslqrcl)
Elqrcl=eig(syslqrcl)
figure(7)
pzmap(syslqrcl),grid on
H2lqrcl=normh2(Alqrcl,Blqrcl,Clqrcl,Dlqrcl)
Hinflqrcl=normhinf(Alqrcl,Blqrcl,Clqrcl,Dlqrcl)
%from 1st input
[num1,den1]=ss2tf(Alqrcl,Blqrcl,Clqrcl,Dlqrcl,1)
W11c=tf(num1(1,:),den1)
W12c=tf(num1(2,:),den1)
W13c=tf(num1(3,:),den1)
W14c=tf(num1(4,:),den1)
W15c=tf(num1(5,:),den1)
W16c=tf(num1(6,:),den1)
W17c=tf(num1(7,:),den1)
W18c=tf(num1(8,:),den1)
%from 2nd input
[num2,den2]=ss2tf(Alqrcl,Blqrcl,Clqrcl,Dlqrcl,2)
W21c=tf(num2(1,:),den2)
W22c=tf(num2(2,:),den2)
W23c=tf(num2(3,:),den2)
W24c=tf(num2(4,:),den2)
W25c=tf(num2(5,:),den2)
W26c=tf(num2(6,:),den2)
W27c=tf(num2(7,:),den2)
W28c=tf(num2(8,:),den2)
figure(8)
nyquist(W11c)
figure(9)
bode(W11c)
figure(10)
nyquist(W21c)
figure(11)
bode(W21c)
