# Aerospace Final Homework

July 16, 2017 | Author: Kim Cương Phạm | Category: Control Theory, Flight Dynamics (Fixed Wing Aircraft), Cybernetics, Physics & Mathematics, Physics

#### Short Description

Using matlab control system toolbox to design control system for B747 by root locus method...

#### Description

Advanced Course of Aerospace Guidance and Control Homework June 9, 2016 Student No. 15350940

Name: Pham Kim Cuong

Subject 1: Design the bank control law by root locus method and make numerial simulation using the lateral/directional linearized equations of motion for the flight condition 3 of Boeing 747. Answer: Use the MATLAB code as shown in appendix we have the Boeing 747 model during flight condition 3 is:

[ [

−0.12 0 −1 0.04 0.29 0 A= −4.12 −0.98 1.62 −0.016 −0.232 0 0 1 0 0

0 0 0.31 0.18 B= 0.013 −0.92 0 0

]

[

0 A= 0 0 57.2958 0 0 0 57.2958

B=

]

]

[ ] 0 0 0 0

The following commands specify this state-space model as an LTI object and attach names to the states, inputs, and outputs: sys = ss(A,B,C,D); set(sys, 'inputname', {'aileron' 'rudder'},...          'outputname', {'yaw rate' 'bank angle'},...          'statename', {'beta' 'roll' 'yaw' 'phi'});

We can display the LTI model system by typing sys in MATLAB command line. MATLAB responds with:

The model has two inputs and two outputs. The units are radians for beta (sideslip angle) and phi (bank angle) and radians/sec for yaw (yaw rate) and roll (roll rate). The rudder and aileron deflections are in radians as well. Compute the open-loop eigenvalues and plot them in the s-plane.

This model has one pair of lightly damped poles. They correspond to what is called the “Dutch roll mode.” Open-Loop Analysis First perform some open-loop analysis to determine possible control strategies. Start with the time response. Use impulse(sys) in MATLAB command line:

The impulse response confirms that the system is lightly damped. But the time frame is much too long because the passengers and the pilot are more concerned about the behavior during the first few seconds rather than the first few minutes. Next look at the response over a smaller time frame of 40 seconds. Enter impulse(sys,40) command in MATLAB:

Look at the plot from aileron (input 1) to bank angle (output 2). The aircraft is oscillating around a nonzero bank angle. Thus, the aircraft is turning in response to an aileron impulse. The control from rudder has significant effect around the lightly damped Dutch roll mode. To make the design easier, we will design feedback control for controlling from rudder to yaw rate. System12: control from rudder to yaw rate.

Root Locus Design: Plot the root locus for the system12:

This is the root locus for negative feedback and shows that the system goes unstable almost immediately. If, instead, we use positive feedback, we may be able to keep the system stable.

This looks better. Just using simple feedback, we can achieve a damping ratio of 0.7. Let chose K=0.03. Plot the closed-loop impulse response for a duration of 20 seconds, and compare it to the open-loop impulse response.

The closed-loop response settles quickly and does not oscillate much, particularly when compared to the open-loop response. Now close the loop on the full MIMO model and see how the response from the aileron looks.

The yaw rate response is now well damped. We can achieve damping of 0.7 and the stability time is about 25s.

APPENDIX %Create state space model of Boeing 474 in condition 3 clc; clear all; g = 10; U0 = 250; q0 = 244420 alpha0 = 0; gamma0 = 0; theta0 = (alpha0+gamma0)/180*pi(); W0 = U0*alpha0;     Yv = ­0.12; Ydr = 0.014; L_b = ­4.12; L_p = ­0.98; L_r = 0.29; L_da = 0.31; L_dr = 0.18; N_b = 1.62; N_p = ­0.016; N_r = ­0.232; N_da = 0.013; N_dr = ­0.92;   Yb = U0*Yv;   A = [Yb/U0 W0/U0 ­1 g*cos(theta0)/U0;     L_b L_p L_r 0;     N_b N_p N_r 0;     0 1 tan(theta0) 0]; B = [0 0; L_da L_dr; N_da N_dr; 0 0]; C=[0 0 57.3 0;   0 0 0 57.3]; D=[0 0;    0 0]; sys = ss(A,B,C,D); set(sys, 'inputname', {'aileron' 'rudder'},...          'outputname', {'yaw rate' 'bank angle'},...          'statename', {'beta' 'roll' 'yaw' 'phi'});