grumman f-14 tomcat control design by: chike udukuuduku001/grumman design.pdf · the goal of this...

12
Grumman F-14 Tomcat Control Design BY: Chike Uduku

Upload: doandang

Post on 19-Aug-2018

237 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

Grumman F-14 Tomcat Control Design

BY:

Chike Uduku

Page 2: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

SECTIONS I. Abstract

II. Design objective

III. Measured Constants

IV. Design

V. Results

VI. Conclusion

VII. Complete Matlab Code

Page 3: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

I. Abstract Designing controllers for fighter jets is a very delicate process with a high degree of accuracy in design being an important requirement. A small error in design could mean the difference between life and death. This paper designs a controller for a Grumman F-14 Tomcat using a state feedback approach.

II. Design Objective The goal of this project was to design a digital controller such that the angle of attack (α) to a pilot stick input of 1 degree was equivalent to the response of a critically damped second order system:

22

2

2 nn

n

ss ωζωω

++

With ζ 0.707 and ωn = 2.49 rad/sec. In addition, the following requirements had to be met:

• Peak time tp ≤ 2sec. • Percent overshoot (P.O) 4.5% ≤• Gain margin GM > 6 dB • Phase margin PM > 45° • Pitch rate (q) response to stick inputs is to fit the lower order system of

22)17.1(ωρω

τ

+++ −

ssesK s

≤ ≤within the bounds of 2.12 ω 3.52 ≤ ≤ 0.5 ρ 0.707 ≤ τ 0.1

• The maximum velocity of the tail surface deflection servo is to be less than 25deg/sec for the 2.0 degree pilot-step input.

• The effects of wind gust from η1 to q and α should be as small as possible.

III. Measured Constants Aircraft Dynamics:

Zδ = -63.9979 ft/(rad*sec2) - force in vertical direction due to displacement of tail surface Mδ = -6.8847(rad*sec2)-1

- pitching moment due to displacement of tail surface (actuator motion) Uo = 689.4ft/sec -longitudinal velocity Mω = -0.005929(ft*sec)-1 -pitching moment due to vertical velocity Zω = -0.6385sec-1 -force in vertical direction due to vertical velocity

Page 4: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

Mq = -0.6571sec-1 -pitching moment due to pitch rate

Tail Servo: τa = 0.05 sec

Wind gust model parameters: σwG = 3 ft/sec (rms gust velocity) a = 2.5348 sec (gust correlation time) b = 64.13ft (reference span) VTO = 690.4 ft/sec (total air speed)

DesignIV. Step 1: Derive the open loop transfer functions for α and q. i.e from α and q to the output of the controller (r).

wZs

qUZb oc =−

δ1)( ( 1 )

qMs

wMMbq

c =−

+1)( ωδ ( 2 )

Substitute ( 2 ) in ( 1 )

wZsMs

wMUMsMbU

Zbq

o

q

coc =

−⎟⎟⎠

⎞⎜⎜⎝

−+

−+

ω

ωδδ

1

)( ωωδ

δ ZswMs

wMUMsMbU

Zbq

o

q

coc −=

−+

−+

⎟⎟⎠

⎞⎜⎜⎝

−−−=⎟

⎟⎠

⎞⎜⎜⎝

−+

q

o

q

oc Ms

MUZsw

MsMU

Zb ωω

δδ )(

( ) wMUMsZs

MUMsZboq

oqc =⎟⎟⎠

⎞⎜⎜⎝

−−−+−

ωωδδ ))((

1)(

α=oU

w But

αωω

δδ =⎟⎟⎠

⎞⎜⎜⎝

−−−

+−

MUMsZsMUMsZ

Ub

oq

oq

o

c

))(()(

⎟⎟⎠

⎞⎜⎜⎝

−−−

+−=

ωω

δδαMUMsZs

MUMsZUb oq

oq

oc ))(()(1

Page 5: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

⎟⎟⎠

⎞⎜⎜⎝

−−−

+−=

+

ωω

δδταMUMsZs

MUMsZUr

s

oq

oq

o

a

))(()(1)1(

1+=

srb

ac τ

But

⎟⎟⎠

⎞⎜⎜⎝

−−−

+−

+=

ωω

δδ

τα

MUMsZsMUMsZ

sUr oq

oq

ao ))(()(

)1(1

Substituting values and making the leading coefficient 1,

016.90412.30296.21862.138856.1

23 +++−−

=sss

srα

Now substitute ( 1 ) in ( 2 ) to solve for q. Following the same process as above:

⎟⎟⎠

⎞⎜⎜⎝

−−−+−

+=

oqa UMZsMsZMZsM

srq

ωω

δωωδ

τ ))(()(

11

16.90412.30296.2134.80694.137

23 +++−−

=sss

srq

Step 2: Figure out poles to give desired α symbol To achieve step 2, we begin by figuring out an appropriate sample period(T). To do this, we analyze the frequency response of the open loop transfer function for α in matlab: >> s = tf('s'); >> trans_alpha = ((-1.856*s)- 138.862)/((s^3)+(21.296*(s^2))+(30.412*s)+90.016); >> figure,bode(trans_alpha),grid on,title('bode plot of alpha in s domain')

Page 6: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

From the bode plot, we observe that an appropriate bandwidth will be about 20Hz. The sampling period is chosen to be 3 times the bandwidth

602=

ΠT

T = 0.1

Based on this T value:

( ) ( ) 1761.0)707.0(1)1.0)(49.2(1 22 =−=−=∠ ζω TZ n

8386.0|| )]1.0)(49.2)(707.0[()( === −− eeZ Tnζω

yx ± Let the desired poles =

( 3 ) 7032.0|| 222 ==+ Zyx

1761.0tan 1 =∠=⎟⎠⎞

⎜⎝⎛− Z

xy ( 4 )

Solving for x and y: Desired poles = 0.8256± 0.1469

Page 7: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

At this point we must realize that the α transfer function being observed is of the third order, so we need one more pole. If we want to get a response close to the second order system specified in the design objectives, then the poles found above must be dominant. Hence, the third pole is placed at Z = 0 so it does not dictate the salient behavior of the α response. As a result: Desired Polynomial = )1469.08256.0)(1469.08256.0( jZjZZ +−−− = ZZZ 70319497.06512.1 23 +− Step 3: Place poles at desired location using state feedback approach Before we do this, we must:

• Discretize the open-loop α transfer function using a zero order hold. • Obtain a state space representation for the open-loop α transfer function. It

will be of the form: A B C D

The following set of codes in matlab help us to do this: >> alphaD = c2d(trans_alphaF,0.1,'zoh');%discretize alpha >> num = [0.01818,0.03185,0.002395];%numerator of disccretized alpha >> den = [1,-1.972,1.127,-0.1189];%denominator of discretized alpha >> [A,B,C,D]=tf2ss(num,den);%state space representation of open loop alpha We are now ready to place our desired poles. From this we will also obtain the state space representation for the closed loop α transfer function. It will be of the form:

A-BK B C D

where K = state feedback gain. >>p = [0.8256+0.1469i 0.8256-0.1469i 0];%desired poles >>K = place(A,B,p); >>sys_mat = A-(B*K);%new system matrix for alpha >>[numer,denom] = ss2tf(sys_mat,B,C,D);% new state space representation for alpha >>alphaD_shifted = ((0.01818*(z^2))+(0.03185*z)+0.002395)/((z^3)-(1.651*(z^2))+(0.7032*z));%numer/denom The step-response of “alphaD_shifted” above is plotted and compared to the step response of the given second order system to determine how close they match. The results will be discussed in the Results section of this report.

Page 8: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

V. Results

Response: Before we examine the step response of the α closed loop transfer function, it is important to note 2 points:

• Due to the fact that the open-loop transfer function for α has a negative gain, it will be out of phase with the response of the specified second order system in the design objectives.

• There appears to be a constant offset of 1.07

07.11−To account for these 2 factors, a pre-filter of is added.

NOTE: The pre-filter must be part of the loop. Placing the pre-filter outside of the loop is not acceptable design practice. >>step_alpha = tf([6.2001],[1,3.52086,6.2001]);%2nd order system in design objective >>trans_alphaF = trans_alpha * (-1/1.07);%pre-filter added >> damp(alphaD_shifted) Eigenvalue Magnitude Equiv. Damping Equiv. Freq. (rad/s) 8.26e-001 + 1.47e-001i 8.39e-001 7.06e-001 2.49e+000 8.26e-001 - 1.47e-001i 8.39e-001 7.06e-001 2.49e+000 0.00e+000 0.00e+000 NaN NaN >>figure,step(step_alpha,'-',alphaD_shifted,'--'),grid on

Page 9: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

As we can see, our design response gives a very good match of the specified 2nd order system response. Peak time: From the graph above, peak time is 1.65s which is < 2s Percentage overshoot:

%41001

104.1=×

−From the graph above, P.O = which is < 4.5%

Gain & Phase Margins: To observe the gain and phase margins, we must plot the open-loop frequency response and not the closed loop. The state space representation of the open-loop transfer function with state feedback is of the form:

A B K D

>>[alphaO_num,alphaO_den]=ss2tf(A,B,K,D); >>alpha_open = ((0.3208*(z^2))-(0.4238*z)+0.1189)/((z^3)-(1.972*(z^2))+(1.127*z)-0.1189);%open loop alpha xfer function(alphaO_num/alphaO_den) >>figure,margin(alpha_open),grid on

We have a gain margin (GM) of 13.8dB and a phase margin (PM) of 107deg which satisfies the design specifications.

Page 10: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

Picth rate (q): Before we analyze the pitch response, the following issues were addressed:

• We must first figure out what values of K ensure that the upper and lower bound bode plots start from 0dB. These values were found to be 12.42 and 4.52 for the upper and lower bound bode plots respectively.

• Just like in the case of α, a pre-filter which is part of the loop will have to be added to account for the negative gain and offset.

>>trans_q = ((-137.694*s)-80.34)/((s^3)+(21.296*(s^2))+(30.412*s)+90.016); >>trans_qF = trans_q * (-1/0.383);%pre-filter >>qD = c2d(trans_qF,0.1,'zoh');%discretized q >>numQ = [0.9892 -0.4274 -0.477];%numerator of disccretized q >>denQ = [1 -1.972 1.127 -0.1189];%denominator of disccretized q >>[M,N,O,W] = tf2ss(numQ,denQ);%state space representation of open loop q >>[numQ1,denQ1] = ss2tf(sys_matQ,N,O,W); >>Qstep1 = tf([7.684 4.52],[1 2.99768 4.4944]);%Lower bound, K = 4.52 >>Qstep2 = tf([21.114 12.42],[1 3.52 12.3904]);%Upper bound, K = 12.42 >>figure,bode(Qstep1,Qstep2,qD_shifted),grid on,title('q responce: q-red, upper bound-green, lower bound-blue')

As we can see, the pitch rate (q) response does not quite fit. We can either add zeroes to the open loop transfer function of q to pull the curve up, or slightly shift

Page 11: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

the existing poles to a different location that is still within the bounds specified in the design objective. I have opted to slightly shift the poles. After slightly shifting, the q response is plotted again:

The q response now satisfies our design objectives.

VI. Conclusion This was a moderately challenging project but gave me an opportunity to test out various theoretical control design procedures. I was able to meet all the requirements specified in the design objectives. There was not enough time however, to analyze the maximum velocity of the tail servo and the effect of wind gust.

VII. Complete MATLAB Code

>>s = tf('s'); >>trans_alpha = ((-1.856*s)-138.862)/((s^3)+(21.296*(s^2))+(30.412*s)+90.016); >>trans_q = ((-137.694*s)-80.34)/((s^3)+(21.296*(s^2))+(30.412*s)+90.016); >>trans_alphaF = trans_alpha * (-1/1.07);%pre-filter >>trans_qF = trans_q * (-1/0.383);%pre-filter >>step_alpha = tf([6.2001],[1,3.52086,6.2001]);%2nd order system in design objective >>Qstep1 = tf([7.684 4.52],[1 2.99768 4.4944]);%Lower bound, K = 4.52 >>Qstep2 = tf([21.114 12.42],[1 3.52 12.3904]);%Upper bound, K = 12.42

Page 12: Grumman F-14 Tomcat Control Design BY: Chike Udukuuduku001/Grumman Design.pdf · The goal of this project was to design a digital controller such that the angle of attack (α) to

>>figure,bode(trans_alpha),grid on,title('bode plot of alpha in s domain') >>figure,bode(trans_q),grid on,title('bode plot of q in s domain') >>z = tf('z',0.1); >>alphaD = c2d(trans_alphaF,0.1,'zoh');%discretize alpha >>qD = c2d(trans_qF,0.1,'zoh');%discretize q >>figure,bode(alphaD),grid on,title('bode plot of alpha in z domain') >>figure,bode(qD),grid on,title('bode plot of q in z domain') >>num = [0.01818,0.03185,0.002395];%numerator of disccretized alpha >>den = [1,-1.972,1.127,-0.1189];%denominator of discretized alpha >>[A,B,C,D]=tf2ss(num,den);%state space representation of open loop alpha >>p = [0.8256+0.1469i 0.8256-0.1469i 0];%desired poles >>K = place(A,B,p); >>sys_mat = A-(B*K);%new system matrix for alpha >>[numer,denom] = ss2tf(sys_mat,B,C,D);% new state space representation for alpha >>alphaD_shifted = ((0.01818*(z^2))+(0.03185*z)+0.002395)/((z^3)-(1.651*(z^2))+(0.7032*z));%numer/denom >>[alphaO_num,alphaO_den]=ss2tf(A,B,K,D); >>alpha_open = ((0.3208*(z^2))-(0.4238*z)+0.1189)/((z^3)-(1.972*(z^2))+(1.127*z)-0.1189);%open loop alpha xfer function >>figure,margin(alpha_open),grid on >>numQ = [0.9892 -0.4274 -0.477];%numerator of disccretized q >>denQ = [1 -1.972 1.127 -0.1189];%denominator of disccretized q >>[M,N,O,W] = tf2ss(numQ,denQ);%state space representation of open loop q >>pq = [0.7772+0.1789i 0.7772-0.1789i 0]; >>L = place(M,N,pq); >>sys_matQ = M-(N*L); >>[numQ1,denQ1] = ss2tf(sys_matQ,N,O,W); >>qD_shifted=((0.9892*(z^2)) - (0.4274*z) - 0.477)/((z^3) - (1.554*(z^2)) + (0.636*z)); >>figure,bode(Qstep1,Qstep2,qD_shifted),grid on,title('q responce: q-red, upper bound-green, lower bound-blue')