Design Project, ECE 521, Spring 2013 Control Design for a

advertisement
1
Design Project, ECE 521, Spring 2013
Control Design for a Linearized Aircraft Model
Due Monday, May 13, 4:30 p.m.
A. Introduction
This project is to be an individual effort for each student. All work must be your own. Any questions
about the project should be addressed to Dr. Beale.
A linearized model of the lateral dynamics of an aircraft is described by a continuous-time linear
state-space model with r = 2 inputs, m = 2 outputs, and n = 4 states. The model is given by1
·
x(t) = Ax(t) + Bu(t),
y(t) = Cx(t) + Du(t),
⎡
⎤
−10
0 −10 0
⎢
0 −0.7
9 0 ⎥
⎥,
A=⎢
⎣
0
−1 −0.7 0 ⎦
1
0
0 0
C=
∙
¸
0 1 0 0
0 0 0 1
D=
∙
x(0) = x0 is specified
⎡
0 0
0 0
(1)
⎤
20
2.8
⎢ 0 −3.13 ⎥
⎥
B=⎢
⎣ 0
0 ⎦
0
0
(2)
¸
(3)
⎡
⎤
0.05
⎢ 0 ⎥
⎥
x0 = ⎢
⎣ 0 ⎦
0.25
where the state vector x ∈ <4 is defined as x1 = p (roll rate, rad/sec), x2 = r (yaw rate, rad/sec), x3 = β
(sideslip angle, rad), and x4 = φ (roll angle, rad). The control vector u ∈ <2 is defined as u1 = δa (aileron
angle, rad) and u2 = δr (rudder angle, rad).
The closed-loop system will be achieved through constant full-state feedback with the control law
u(t) = −Kc x(t) + ucom (t)
(4)
x(t) = (A − BKc ) x(t) + Bucom (t)
(5)
λclosed−loop = [−1, − 2, − 5, − 6]
(6)
so the closed-loop state equations are
·
with ucom (t) ∈ <2 . The first element of ucom (t) is zero for all time. The second element equals 0.1 rad
for all time.
The control gain matrix Kc will be chosen to place the closed-loop eigenvalues and eigenvectors. The
locations of the closed-loop eigenvalues will be fixed throughout the project. Different choices of closedloop eigenvectors will produce different gain matrices Kc . The specified locations for the closed-loop
eigenvalues are
The values in the A and B matrices are correct for the specified units (rad and rad/sec) for the state and
control variables. Simulation results may be converted to degrees and degrees/sec if desired for plotting
purposes.
1
W.L. Brogan, Modern Control Theory, Third Edition, Prentice Hall, Englewood Cliffs, NJ, 1991, page 390.
2
B. Tasks to be Performed
1) After verifying that the open-loop system is completely state controllable, use the MATLAB place
function to compute the gain matrix Kc−place that places the closed-loop eigenvalues at the required
locations. Verify that the eigenvalues are placed correctly, determine the closed-loop eigenvectors,
and investigate the linear independence of the eigenvectors. With the specified initial condition for
the state vector, simulate the closed-loop system for 10 seconds to determine the responses of the
states and controls. The MATLAB function lsim is useful for this. Note that lsim produces its outputs
as rows in one or more arrays. You may want to transpose the state array after the simulation is
run so that the state appears as a column vector at each time instant. Also note that the variable U
that is shown in the list of input arguments to lsim is the external input signal ucom (t) and not the
total control signal u(t) shown in Eqns. (1) and (4).
2) Using the results in Task 1 as a standard, compute at least two additional gain matrices. Each of
these gain matrices must place the closed-loop eigenvalues at the locations specified in Eqn. (6)
but produce different closed-loop eigenvectors. One of the gain matrices should be chosen to give
“very bad” performance. The other gain matrix should give comparable—or perhaps even better—
performance than that obtained with the place function. You may choose your own method of
evaluating the quality of the
as long as it is reasonable. I suggest the performance
¢
¡ performance,
index you use be J = Σ xT x + uT u , where xT x and uT u are computed at each time instant
from the simulation and the summation is over the number of time instants. For each of your gain
matrices, investigate the linear independence of the eigenvectors and simulate the closed-loop system
with the specified initial condition. Eigenvectors may be chosen using the following procedure2 .
a) For each closed-loop eigenvalue
λi :
i
h
i) form the matrix Si = λi I − A ... B .
ii) Perform singular value decomposition of Si ⇒ in MATLAB: [u,s,v] = svd(Si );
iii) Keep only the last two columns of v (v has n + r = 6 rows and columns). Those two
columns form a basis for the null space of Si . Create a single vector by forming some
linear combination of those two columns.
b) When Step (a) has been done for all eigenvalues, form modal matrix M from the first 4
elements of each of your four combinations obtained in Step (iii). Form matrix Q from the
last two elements of those four combinations. M will be 4 × 4; Q will be 2 × 4.
c) Gain matrix is Kc = QM −1 .
3) Prepare a typed report that compares your various designs with that obtained from the MATLAB
place function.
a) Discuss the results obtained from the simulations in terms of the linear independence of
eigenvectors, the performances of the three systems in terms of the maximum magnitudes
of the various variables, the values of the performance measures you chose, and the norms of
the gain matrices (MATLAB function norm). Discuss how you chose the linear combinations
for the eigenvector placements in Step 2. Include plots to illustrate the various responses
achieved using the different gain matrices. Plots for the variables may be in radians or in
degrees. The plots should indicate which units are being used, and plots for the different gain
matrices should use the same units.
b) Include in your report a discussion of the closed-loop eigenvalues specified in Eqn. (6). Are
they reasonable or unreasonable? How do they compare with the open-loop eigenvalues, that
is, the eigenvalues of the A matrix?
c) Include in your report a listing of any MATLAB code that you used for your project.
2
Multivariable Control, Placement of Eigenvectors, Prof. Beale, pdf file located on ECE 521 Blackboard website.
Download