Você está na página 1de 34

ARO 405

Aircraft Stability and Control

“Analyzing the Control of a Boeing 747 Aircraft”

Submitted by:
Andrew Cho
Daniel Boebinger
Minwoong Chae
Muhammad Khanqadri
Section 02

Aerospace Engineering Department


California State Polytechnic University, Pomona
10 June 2015
Executive Summary

The stability and control of a Boeing 747 aircraft was studied and analyzed in order to
generate stable flight conditions and to examine its flying qualities. The aircraft’s
physical properties, flight data and control derivatives were utilized in order to create
multiple control systems at three flight conditions: climb, cruise and approach. The
project was mainly focused on the cruise condition, since it is at a higher altitude and
susceptible to external disturbances by the atmosphere. After determining the stability
and control coefficients, a MATLAB® program was utilized to find longitudinal and
lateral-directional dynamic models for each specific conditions. From these state-space
models, transfer functions generated responses for different flight controls (i.e. aileron,
rudder, elevator, or combination). Simulink ® was then used to generate the control
system block diagrams, in an attempt to augment the stability of the aircraft at cruise
condition. In general, Boeing 747 aircraft fell in the Level 1 and Level 2 rule for
longitudinal and lateral-directional flying qualities, and is classified as a Class I
aircraft.

1
Table of Contents

Executive Summary……………………………………….……………………………………….………………….Pg 1

Table of Contents………………………………………………………………………..…………………………….Pg 2

Objectives…………………………………………………….……………………………………….…………………..Pg 3

Results and Discussion……………………………………….………………………………………………………Pg 4

Summary…………………………………………………………………………………………………………………Pg 20

Appendix…………………………………………………………………………………………………………………Pg 21

2
Objective

The purpose of this project was to deal with analyzing the stability and control
system of a Boeing 747 aircraft as well as studying the methods to increase its
stability by designing models to meet certain requirements. Stability and control
derivatives were calculated after being given the aircraft’s geometry and flight data
for the following three conditions: climb, cruise and approach. Using MATLAB®
program, state space equations were found for longitudinal and lateral directional
modes that enabled to find various parameters such as their transfer functions.
After finding the transfer functions, Simulink models were designed for controllers
such as heading command, roll command and coordinated turn systems.

3
Results and Discussion

Data for the Boeing 747-200 is given on Appendix, and this data was inputted

into MATLAB as shown in the Appendix for each flight condition: approach, low cruise,

and low cruise. . With all these values inputted and verified, State Space Models were

built based on the attached document (Appendix B) written by Dr. Bhandari. The values

used in the State Space Models were the following values shown below.

For the approach flight condition, the values are:

𝑢̇ 𝑢
−0.0124 −0.0173 0 −0.1441 0
𝑢0 𝑢
−29.5041 −105.99 214.644 −4.7595] 0 −6.5565
𝛼̇ = [ 0.1578 −5.6812 −3.5493 0.0145 𝛼 + [−0.3997] 𝛿𝑒
𝑞̇ 𝑞
0 0 1 0 [𝜃] 0
[ 𝜃̇ ]

𝛽̇ −0.0890 0 −1 0.1441 𝛽 0 0.0148


𝑝̇ −1.2824 −1.0159 0.3946 0 𝑝 0.2419 0 𝛿
=[ ] [𝑟] + [ ] [ 𝑎]
𝑟̇ 0.2669 −0.1428 −0.2316 0 0.0120 −0.1639 𝛿𝑟
[𝜙] ̇ 0 1 0 0 𝜙 0 0

For the low cruise conditions, the state-space models were found to have the following
values:

𝑢̇ 𝑢
−0.0039 0.0012 0 −0.0478 0
𝑢0 𝑢0
−43.9415 −354.1522 662.3052 −1.4045 −25.5659
𝛼̇ = [ 0.0169 −1.3028 −.5417 0
] 𝛼 + [ −1.6937 ] 𝛿𝑒
𝑞̇ 𝑞
0 0 1 0 [ 𝜃]
0
[ 𝜃̇ ]
−0.1068 0 −1 0.0478 𝛽
𝑝
= [−2.7218 −0.8422 0.3220 0 ] [𝑟]
.9967 −0.0236 −0.2540 0
0 1 0 0 𝜙
0 0.0142
+[ 0.2211 0.1361 ] [𝛿𝑎 ]
0.0112 −0.6229 𝛿𝑟
0 0

4
Finally, the state-space models for the high cruise flight conditions were calculated to be
the following:

𝑢̇ 𝑢
−0.0200 −0.0149 0 −0.0369 0
𝑢0 𝑢
−21.6925 −344.6636 863.4238 −1.3484] 0 −18.5936
𝛼̇ = [ −0.0910 −1.6171 −0.4039 0 𝛼 + [ −1.2128 ] 𝛿𝑒
𝑞̇ 𝑞
0 0 1 0 [𝜃] 0
[ 𝜃̇ ]

𝛽̇ −0.0640 0 −1 0.0369 𝛽 0 0.0043


𝑝̇
= [−1.2537 −0.4751 0.2970 0 𝑝
] [𝑟] + [ 0.1848 0.0660 ] [𝛿𝑎 ]
𝑟̇ 1.0148 0.0109 −0.1794 0 −0.0135 −0.4591 𝛿𝑟
[𝜙] ̇ 0 1 0 0 𝜙 0 0

The five dynamic modes, phugoid and short period for longitudinal, roll, spiral,

and Dutch- roll were determined. These modes are described by the corresponding

eigenvalue and the natural frequencies along with damping ratios were calculated for the

second-order modes (short period, phugoid, and Dutch-roll). For the first- order modes,

roll and spiral, the time constant was calculated. These values for the cruise condition are

presented along with the Eigen values in Table 1 below.

Table 1- Longitudinal Directional Dynamics for Low Cruise

Damping
Eigenvalue Natural Frequency (rad/s) Time Constant (s)
Ratio

−3.52𝐸02 1 3.52𝐸02 2.84E-03

−3.00 1 3.00 3.33E-01

−6.06𝐸 − 04 + 5.34𝐸 − 02𝑖 1.13E-02 5.35E-02 1.65𝐸03

The damping ratios, natural frequencies, and time constants were also calculated
for each dynamics mode in the low cruise and high cruise flight conditions. For both of
these flight conditions, however, the phugoid and spiral dynamics modes were found to

5
be unstable. Therefore, the time to double was then calculated instead of time constant for
the spiral mode. The dynamic mode attributes are presented in Table 2 for low cruise
conditions and in Table 3 for approach conditions.

Table 2 – Attributes of the dynamics modes for altitude flight conditions

Damping Ratio Natural Frequency (rad/s) Time Constant (s) Time to Double (s)

−1.05𝐸02 1 1.05E02 9.51E-03

−1.25 1 1.25 8.00E-01

8.616E-03+ 1.24E- -6.54E-02 1.25𝐸 − 01 -1.23E02


01i

Table 3 – Attributes of the dynamics modes for high cruise flight conditions

Damping Ratio Natural Frequency (rad/s) Time Constant (s) Time to Double (s)

−3.41𝐸02 1 3.41E02 2.94E-03

−4.51 1 4.51 2.22E-01

-1.28E-02 1 1.28𝐸 − 02 7.79E01

-4.86E-03 1 4.86E-03 2.06𝐸02

The open loop response of the aircraft in low cruise condition to step inputs in

elevator, aileron, and rudder were of our interest so that it could be determined where

stability augmentation systems would be required. The response to the elevator input can

be observed in Figure 1. The settling times get larger and there is a larger amount of

error. Figures below show the aircraft’s response to aileron and rudder steps. The slow

responses and large errors are apparent issues in the analysis when the plots are observed.

Figures/Plots

6
Figure 1: Open Loop Step response to elevator, aileron, and rudder for low cruise

flight

Condition

Six transfer functions at the cruise flight conditions were of particular interest for

the development of the command systems. From the longitudinal state-space model, the

pitch angle-to-elevator and altitude-to-elevator transfer functions were calculated to be

the following:

𝜙 −1.332𝐸(−015𝑠 3 ) − 1.69𝑠 2 − 0.8628𝑠 − 0.003468


(𝑠) = 4
𝛿𝑒 𝑠 + 1.187𝑠 3 + 1.598𝑠 2 + 0.004608𝑠 + 0.004558

7
𝜓 −0.03864𝑠 3 − 1.716𝑠 2 − 0.003087𝑠 + 0.005394
(𝑠) = 4
𝛿𝑒 𝑠 + 1.187𝑠 3 + 1.598𝑠 2 + 0.004608𝑠 + 0.004558

From the lateral-directional state-space model, the bank angle-to-aileron, heading angle-

to-aileron, heading angle-to-rudder, and yaw rate-to-rudder transfer functions were

determined. The calculated equations are as follows:

𝜙 −8.882𝐸(−16)𝑠 3 + 0.2211𝑠 2 + 0.08341𝑠 + 0.2573


(𝑠) =
𝛿𝑎 𝑠 4 + 1.203𝑠 3 + 1.335𝑠 2 + 1.057𝑠 + 0.0177

𝜓 −4.25𝐸(−17)𝑠 3 + 0.01058𝑠 2 − 0.00309𝑠 + 0.0123


(𝑠) =
𝛿𝑎 𝑠 5 + 1.203𝑠 4 + 1.335𝑠 3 + 1.057𝑠 2 + 0.0177𝑠

𝜓 −0.6229𝑠 3 − 0.5802𝑠 2 − 0.04352𝑠 − 0.07456


(𝑠) = 5
𝛿𝑟 𝑠 + 1.203𝑠 4 + 1.335𝑠 3 + 1.057𝑠 2 + 0.0177𝑠

𝑟 −0.6229𝑠 3 − 0.5802𝑠 2 − 0.04352𝑠 − 0.07456


(𝑠) = 4
𝛿𝑟 𝑠 + 1.203𝑠 3 + 1.335𝑠 2 + 1.057𝑠 + 0.0177

Using the final value theorem, which associates the Laplace Transform to the

original time domain function, the steady state values were found to be 0.0789 for the

bank angle-to-aileron transfer function, where the input is a unit step. For both the

heading angle-to-rudder and heading angle-to-aileron transfer functions, the final value

approached infinity. These transfer functions also mapped onto their own respective root

locus plots. Figures show the root locus of each of the above transfer functions. In

addition to the root loci, bode plots were generated for each of the transfer functions. The

gain and phase margins are displayed on these Bode plots, where applicable.

8
Figure 2: Open Loop Root Locus Plots for low cruise flight condition

9
Figure 3: Bode Plots for low cruise flight condition

10
The Simulink models used to simulate each system can be found below along

with a table that shoes the zeros and poles for the Roll Command System. The steady

state error of 0% was met when observing the plots it is easy to see that.

Table 4 – Closed loop Zeros and Poles for Roll Command System

Roll Command System


Zeros Poles
−4.791 −5.1344
−0.2087 −0.2089
−0.266 ± 2.0402𝑖 −0.2682 ± 2.0386𝑖
−7.8986 ± 28.473𝑖

Below, the Simulink diagram and plots are given for roll command, climb, and

altitude hold, coordinate turn, heading angle hold, and also Yaw damper. The

longitudinal and lateral direrctional flying handling qualities for the aircraft were

determined during approach, low cruise, and high cruise flight conditions. The flying

handling qualities decided were based from Robert C. Nelson’s Flight Stability and

Automatic Control, Assuming that each flight condition was classified as category B. For

cruise, the phugoid and short period modes each met the criteria for level 1 performance.

The roll, spiral, and Dutch-roll modes all are characterized as level 1 as well and for

approach, the phugoid mode is again unstable. The phugoid mode has level 3

performance, but the short period, roll, spiral, and Dutch-roll modes all are level 1

performance.

11
Roll command

12
Climb: using Simulink

13
14
Altitude Hold

15
16
Coordinate Turn

Coordinate turn Vs. Time

17
Heading Angle Hold

Heading angle vs. Time

18
Yaw Damper

19
Summary

The objective of this project was to analyze the stability and control parameters of

the Boeing 747-200. This was done using MATLAB and steady state models of the

longitudinal and lateral- directional dynamics of the aircraft in approach, low cruise, and

high cruise were developed. The transfer functions were then calculated for pitch angle to

elevator, altitude to elevator, bank angle to aileron, heading angle to aileron, heading

angle to rudder, and yaw rate to rudder. The satisfied PID gains for the roll command

system were 50, 10, and 10 for kp, ki, kd. The criteria for the system roll command system

were met with the selected PID gain values. The roll command system had a settling time

of 5.47 seconds, Rise time of 0.666 seconds and overshoot of 5.87%. The criteria for the

Climb were met with the selected PID gain values, for low cruise the rise time was 1.73

seconds with an overshoot of 6.28% and a settling time of 4.44 seconds. The criteria for

the altitude were met with the selected PID gain values ,for the altitude hold the rise time

was 1.7*10^3 seconds with an overshoot of 5.01% and a settling time of 5.8*10^3

seconds. For the designed altitude hold system, the gain values were -8, 0, and -5 for kp,

ki, and kd. Its feedback gain was -50,000. Based on the longitudinal and lateral-

directional results, the Boeing 747-200 was given flying handling qualities based from

Robert C. Nelson’s Flight Stability and Automatic Control. The aircraft was found to

have Level 1 flying qualities for all dynamics modes in cruise flight. For both low cruise

and high cruise flight conditions, every mode has Level 1 flight qualities except for the

phugoid mode, which has a Level 3 flying quality.

20
Appendix

MATLAB Codes:

clear;
%ARO 405-02%
%Aircraft Stability and Control Project%
%Group15%

%Boeing 747-200%

%For Matrices:
% column 1 = Approach, column 2 = Cruise (low), column 3 = Cruise
(high)%

g=32.2;%Acceleration due to Gravity%


%Reference Geometry%
S=5500;
cbar=27.3;
b=196;

%Flight Condition Data%


h=[0 20000 40000];%Altitude%
M=[0.198 0.650 0.900];%Mach Number%
U1=[221 673 871];%TAS%
qbar=[58.0 287.2 222.8];%Dynamic Pressure%
CGovercbar=[0.25 0.25 0.25];%C.G. location over mean geometric chord%
alpha1=[8.5 2.5 2.4];%Angle of attack in degrees%

%Mass Data%
W=[564000 636636 636636];%Weight%
Ixx=[13700000 18200000 18200000];%Mass Moment of Inertia%
Iyy=[30500000 33100000 33100000];%Mass Moment of Inertia%
Izz=[43100000 49700000 49700000];%Mass Moment of Inertia%
Ixz=[830000 970000 970000];%Mass Moment of Inertia%

%Steady State Coefficients%


C_L=[1.76 0.40 0.52];
C_D=[0.2630 0.0250 0.0450];
C_T_x=[0.2630 0.0250 0.0450];
C_m=[0 0 0];
C_m_tau=[0 0 0];

%Longitudinal Coefficients and Stability Derivatives (Stability Axes,


%Dimensionless)%
C_D_0=[0.0751 0.0164 0.0305];
C_D_u=[0 0 0.22];
C_D_alpha=[1.13 0.20 0.50];
C_tau_x_u=[-0.5523 -0.055 -0.950];
C_L_0=[0.92 0.21 0.29];
C_L_u=[-0.22 0.13 -0.23];

21
C_L_alpha=[5.67 4.4 5.5];
C_L_alphadot=[6.7 7.0 8.0];
C_L_q=[5.65 6.6 7.8];
C_m_0=[0 0 0];
C_m_u=[0.071 0.013 -0.09];
C_m_alpha=[-1.45 -1.00 -1.60];
C_m_alphadot=[-3.3 -4.0 -9.0];
C_m_q=[-21.4 -20.5 -25.5];
C_m_T_u=[0 0 0];
C_m_T_alpha=[0 0 0];

%Longitudinal Control and Hinge Moment Derivatives (Stability Axes,


1/rad)%
C_D_delta_e=[0 0 0];
C_L_delta_e=[0.36 0.32 0.30];
C_m_delta_e=[-1.40 -1.30 -1.20];
C_D_i_h=[0 0 0];
C_L_i_h=[0.75 0.70 0.65];
C_m_i_h=[-3.0 -2.7 -2.5];

%Lateral-Directional Stability Derivatives (Stability Axes,


Dimensionless)%
C_l_beta=[-0.281 -0.160 -0.095];
C_l_p=[-0.502 -0.340 -0.320];
C_l_r=[0.195 0.130 0.200];
C_y_beta=[-1.08 -0.90 -0.90];
C_y_p=[0 0 0];
C_y_r=[0 0 0];
C_n_beta=[0.184 0.160 0.210];
C_n_T_beta=[0 0 0];
C_n_p=[-0.222 -0.026 0.020];
C_n_r=[-0.360 -0.280 -0.330];

%Lateral-Directional Control and Hinge Moment Derivatives (Stability


Axes,
%Dimensionless)%
C_l_delta_a=[0.053 0.013 0.014];
C_l_delta_r=[0 0.008 0.005];
C_y_delta_a=[0 0 0];
C_y_delta_r=[0.179 0.120 0.060];
C_n_delta_a=[0.0083 0.0018 -0.0028];
C_n_delta_r=[-0.113 -0.100 -0.095];

%PART 1%
LongA_A=zeros(4,4);%Longitidinal State-Space C Matrix for Approach%
LongB_A=zeros(4,1);%Longitidinal State-Space D Matrix for Approach%
LatA_A=zeros(4,4);%Lateral State-Space C Matrix for Approach%
LatB_A=zeros(4,2);%Lateral State-Space D Matrix for Approach%
LongA_L=zeros(4,4);%Longitidinal State-Space C Matrix for Low Cruise%
LongB_L=zeros(4,1);%Longitidinal State-Space D Matrix for Low Cruise%
LatA_L=zeros(4,4);%Lateral State-Space C Matrix for Low Cruise%
LatB_L=zeros(4,2);%Lateral State-Space D Matrix for Low Cruise%
LongA_H=zeros(4,4);%Longitidinal State-Space C Matrix for High Cruise%

22
LongB_H=zeros(4,1);%Longitidinal State-Space D Matrix for High Cruise%
LatA_H=zeros(4,4);%Lateral State-Space C Matrix for High Cruise%
LatB_H=zeros(4,2);%Lateral State-Space D Matrix for High Cruise%
for i=1:1:3
%Summary of Longitudinal Derivatives%
Xu(1,i)=-(C_D_u(1,i)+2*C_D_0(1,i))*qbar(1,i)*S/(W(1,i)/g*U1(1,i));
Xw(1,i)=-(C_D_alpha(1,i)-C_L_0(1,i))*qbar(1,i)*S/(W(1,i)/g*U1(1,i));
Xdeltae(1,i)=-C_D_delta_e(1,i)*qbar(1,i)*S/(W(1,i)/g);%Assumption%
Zu(1,i)=-(C_L_u(1,i)+2*C_L_0(1,i))*qbar(1,i)*S/(W(1,i)/g*U1(1,i));
Zw(1,i)=-(C_L_alpha(1,i)+2*C_D_0(1,i))*qbar(1,i)*S/(W(1,i)/g*U1(1,i));
Zwdot(1,i)=-C_L_alphadot(1,i)*cbar*qbar(1,i)*S/(2*U1(1,i)^2*W(1,i)/g);
%C_z_alphadot=-C_L_alphadot%
Zalpha(1,i)=U1(1,i)*Zw(1,i);
Zalphadot(1,i)=U1(1,i)*Zwdot(1,i);
Zq(1,i)=-C_L_q(1,i)*cbar*qbar(1,i)*S/(2*U1(1,i)*W(1,i)/g);%C_Z_q=-
C_L_q%
Zdeltae(1,i)=-C_L_delta_e(1,i)*qbar(1,i)*S/(W(1,i)/g);
%C_Z_delta_e=-C_L_delta_e%
Mu(1,i)=C_m_u(1,i)*qbar(1,i)*S*cbar/(U1(1,i)*Iyy(1,i));
Mw(1,i)=C_m_alpha(1,i)*qbar(1,i)*S*cbar/(U1(1,i)*Iyy(1,i));
Mwdot(1,i)=C_m_alphadot(1,i)*cbar^2*qbar(1,i)*S/(2*U1(1,i)^2*W(1,i)/g);
Malpha(1,i)=U1(1,i)*Mw(1,i);
Malphadot(1,i)=U1(1,i)*Mwdot(1,i);
Mq(1,i)=C_m_q(1,i)*cbar^2*qbar(1,i)*S/(2*U1(1,i)*Iyy(1,i));
Mdeltae(1,i)=C_m_delta_e(1,i)*qbar(1,i)*S*cbar/Iyy(1,i);

%Summary of Lateral-Directional Derivatives%


Ybeta(1,i)=qbar(1,i)*S*C_y_beta(1,i)/(W(1,i)/g);
Yp(1,i)=qbar(1,i)*S*b*C_y_p(1,i)/(2*W(1,i)/g*U1(1,i));
Yr(1,i)=qbar(1,i)*S*b*C_y_r(1,i)/(2*W(1,i)/g*U1(1,i));
Ydeltaa(1,i)=qbar(1,i)*S*C_y_delta_a(1,i)/(W(1,i)/g);
Ydeltar(1,i)=qbar(1,i)*S*C_y_delta_r(1,i)/(W(1,i)/g);
Nbeta(1,i)=qbar(1,i)*S*b*C_n_beta(1,i)/Izz(1,i);
Np(1,i)=qbar(1,i)*S*b^2*C_n_p(1,i)/(2*Izz(1,i)*U1(1,i));
Nr(1,i)=qbar(1,i)*S*b^2*C_n_r(1,i)/(2*Izz(1,i)*U1(1,i));
Ndeltaa(1,i)=qbar(1,i)*S*b*C_n_delta_a(1,i)/Izz(1,i);
Ndeltar(1,i)=qbar(1,i)*S*b*C_n_delta_r(1,i)/Izz(1,i);
Lbeta(1,i)=qbar(1,i)*S*b*C_l_beta(1,i)/Ixx(1,i);
Lp(1,i)=qbar(1,i)*S*b^2*C_l_p(1,i)/(2*Ixx(1,i)*U1(1,i));
Lr(1,i)=qbar(1,i)*S*b^2*C_l_r(1,i)/(2*Ixx(1,i)*U1(1,i));
Ldeltaa(1,i)=qbar(1,i)*S*b*C_l_delta_a(1,i)/Ixx(1,i);
Ldeltar(1,i)=qbar(1,i)*S*b*C_l_delta_r(1,i)/Ixx(1,i);
end

%Longitudinal State-Space Model%


%Approach%
LongA_A(1,1)=Xu(1,1);
LongA_A(1,2)=Xw(1,1);
LongA_A(1,4)=-g*cos(alpha1(1,1)*pi/180)/U1(1,1);
LongA_A(2,1)=U1(1,1)*Zu(1,1);
LongA_A(2,2)=Zalpha(1,1);
LongA_A(2,3)=U1(1,1)+Zq(1,1);
LongA_A(2,4)=-g*sin(alpha1(1,1)*pi/180);

23
LongA_A(3,1)=U1(1,1)*Mu(1,1);
LongA_A(3,2)=Malpha(1,1);
LongA_A(3,3)=Mq(1,1);
LongA_A(4,3)=1;
LongB_A(1,1)=Xdeltae(1,1)/U1(1,1);
LongB_A(2,1)=Zdeltae(1,1);
LongB_A(3,1)=Mdeltae(1,1);
%Cruise (Low)%
LongA_L(1,1)=Xu(1,2);
LongA_L(1,2)=Xw(1,2);
LongA_L(1,4)=-g*cos(alpha1(1,2)*pi/180)/U1(1,2);
LongA_L(2,1)=U1(1,2)*Zu(1,2);
LongA_L(2,2)=Zalpha(1,2);
LongA_L(2,3)=U1(1,2)+Zq(1,2);
LongA_L(2,4)=-g*sin(alpha1(1,2)*pi/180);
LongA_L(3,1)=U1(1,2)*Mu(1,2);
LongA_L(3,2)=Malpha(1,2);
LongA_L(3,3)=Mq(1,2);
LongA_L(4,3)=1;
LongB_L(1,1)=Xdeltae(1,2)/U1(1,2);
LongB_L(2,1)=Zdeltae(1,2);
LongB_L(3,1)=Mdeltae(1,2);
%Cruise (High)%
LongA_H(1,1)=Xu(1,3);
LongA_H(1,2)=Xw(1,3);
LongA_H(1,4)=-g*cos(alpha1(1,3)*pi/180)/U1(1,3);
LongA_H(2,1)=U1(1,3)*Zu(1,3);
LongA_H(2,2)=Zalpha(1,3);
LongA_H(2,3)=U1(1,3)+Zq(1,3);
LongA_H(2,4)=-g*sin(alpha1(1,3)*pi/180);
LongA_H(3,1)=U1(1,3)*Mu(1,3);
LongA_H(3,2)=Malpha(1,3);
LongA_H(3,3)=Mq(1,3);
LongA_H(4,3)=1;
LongB_H(1,1)=Xdeltae(1,3)/U1(1,3);
LongB_H(2,1)=Zdeltae(1,3);
LongB_H(3,1)=Mdeltae(1,3);

%Lateral-Directional State-Space Model%


%Approach%
LatA_A(1,1)=Ybeta(1,1)/U1(1,1);
LatA_A(1,2)=Yp(1,1)/U1(1,1);
LatA_A(1,3)=-(1-Yr(1,1)/U1(1,1));
LatA_A(1,4)=g*cos(alpha1(1,1)*pi/180)/U1(1,1);
LatA_A(2,1)=Lbeta(1,1);
LatA_A(2,2)=Lp(1,1);
LatA_A(2,3)=Lr(1,1);
LatA_A(3,1)=Nbeta(1,1);
LatA_A(3,2)=Np(1,1);
LatA_A(3,3)=Nr(1,1);
LatA_A(4,2)=1;
LatB_A(1,2)=Ydeltar(1,1)/U1(1,1);
LatB_A(2,1)=Ldeltaa(1,1);

24
LatB_A(2,2)=Ldeltar(1,1);
LatB_A(3,1)=Ndeltaa(1,1);
LatB_A(3,2)=Ndeltar(1,1);
%Cruise (Low)%
LatA_L(1,1)=Ybeta(1,2)/U1(1,2);
LatA_L(1,2)=Yp(1,2)/U1(1,2);
LatA_L(1,3)=-(1-Yr(1,2)/U1(1,2));
LatA_L(1,4)=g*cos(alpha1(1,2)*pi/180)/U1(1,2);
LatA_L(2,1)=Lbeta(1,2);
LatA_L(2,2)=Lp(1,2);
LatA_L(2,3)=Lr(1,2);
LatA_L(3,1)=Nbeta(1,2);
LatA_L(3,2)=Np(1,2);
LatA_L(3,3)=Nr(1,2);
LatA_L(4,2)=1;
LatB_L(1,2)=Ydeltar(1,2)/U1(1,2);
LatB_L(2,1)=Ldeltaa(1,2);
LatB_L(2,2)=Ldeltar(1,2);
LatB_L(3,1)=Ndeltaa(1,2);
LatB_L(3,2)=Ndeltar(1,2);
%Cruise (High)%
LatA_H(1,1)=Ybeta(1,3)/U1(1,3);
LatA_H(1,2)=Yp(1,3)/U1(1,3);
LatA_H(1,3)=-(1-Yr(1,3)/U1(1,3));
LatA_H(1,4)=g*cos(alpha1(1,3)*pi/180)/U1(1,3);
LatA_H(2,1)=Lbeta(1,3);
LatA_H(2,2)=Lp(1,3);
LatA_H(2,3)=Lr(1,3);
LatA_H(3,1)=Nbeta(1,3);
LatA_H(3,2)=Np(1,3);
LatA_H(3,3)=Nr(1,3);
LatA_H(4,2)=1;
LatB_H(1,2)=Ydeltar(1,3)/U1(1,3);
LatB_H(2,1)=Ldeltaa(1,3);
LatB_H(2,2)=Ldeltar(1,3);
LatB_H(3,1)=Ndeltaa(1,3);
LatB_H(3,2)=Ndeltar(1,3);

%PART 2%
eig(LatA_L)
eig(LongA_L)

%PART 3%
%Calculate Eigenvalues Damping Ratios, and Natural Frequencies%
damp(LatA_A)
damp(LatA_L)
damp(LatA_H)
damp(LongA_A)
damp(LongA_L)
damp(LongA_H)
%For Tau (Time constant) use graphical results%

25
%Part 4%
C=eye(4);
D1=zeros(4,1);
D2=zeros(4,2);

figure(1)
subplot(1,3,1)
step(LongA_L,LongB_L,C,D1,1)
subplot(1,3,2)
step(LatA_L,LatB_L,C,D2,1)
subplot(1,3,3)
step(LatA_L,LatB_L,C,D2,2)

%Part 5%
[numLong,denLong]=ss2tf(LongA_L,LongB_L,C,D1,1);
[numLat1,denLat1]=ss2tf(LatA_L,LatB_L,C,D2,1);
[numLat2,denLat2]=ss2tf(LatA_L,LatB_L,C,D2,2);

%Part 6%
fvBankAileron=numLat1(4,4)/denLat1(1,4);
fvHeadAileron=0;%numLat1(3,4)/denLat1(1,4);
fvHeadrudder=0;%numLat2(3,4)/denLat2(1,4);

%Part 7%
j=1;
for i=1:3:10
figure(2)
subplot(4,3,i)
rlocus(tf(numLong(j,:),denLong))
subplot(4,3,i+1)
rlocus(tf(numLat1(j,:),denLat1))
subplot(4,3,i+2)
rlocus(tf(numLat2(j,:),denLat2))
j=j+1;
hold
end

%Part 8%
j=1;
for i=1:3:10
figure(3)
subplot(4,3,i)
bodeplot(tf(numLong(j,:),denLong))
subplot(4,3,i+1)
bodeplot(tf(numLat1(j,:),denLat1))
subplot(4,3,i+2)
bodeplot(tf(numLat2(j,:),denLat2))
j=j+1;
hold
end

26
Simulink Diagrams:

Roll command

27
Climb

28
Altitude Hold

29
Coordinate Turn

30
Heading Angle Hold

31
Yaw Damper

32
33

Você também pode gostar