H* ROBUST CONTROL SYSTEM DESIGN
by
Richard Kwangsop Huh
.S., University of Colorado at Denver, 1988
A thesis submitted to the
Faculty of the Graduate School of the
University of Colorado at Denver
in partial fulfillment
of the requirements for the degree of
Master of Science
Electrical Engineering
1994
This thesis for the Master of Science
degree by
Richard Kwangsop Huh
has been approved for the
Department of
Electrical Engineering
by
Miloje S. Radenkovic
Date
Marvin F. Anderson
Huh, Richard Kwangsop (M.S., Electrical Engineering)
77 Robust Control System Design
Thesis directed by Assistant Professor Miloje S.
Radenkovic
ABSTRACT
This thesis presents the application of 77 optimal
control. Controllers are designed using 77 optimal
control design techniques described in Robust Control
Toolbox [6] and Feedback Control Theory [7]. The
mathematical properties as well as the derivation of the
77 algorithm are discussed.
Computer simulation case studies using 77 robust
control design methods are presented to substantiate
theory. The emphasis is on formulating the 77 control
design problem such that the resulting controller
provides robustness with reasonable control effort. The
simulations show the performance of the algorithms for
some practical systems.
Signed:
Miloje S. Radenkovic
in
ACKNOWLEDGMENTS
I would like to thank Martin Marietta Technologies
Inc., for sponsoring my graduate work at the University
of Colorado at Denver through their program for study
under company auspices.
Dr. Miloje Radenkovic, my thesis advisor, provided
me with inspiration as well as help and guidance
throughout my thesis research.
An acknowledgment should also go out to all my
family and friends for their support and patience.
IV
CONTENTS
List of Symbols.....................................vii
CHAPTER
1. INTRODUCTION.......................................1
2. HInfinity Robust Control System Design............4
2.1 Infinitynorm Computation....................4
2.2 Performance................................ 5
2.3 Robust Stability............................11
2.4 Robust Performance..........................15
2.5 MixedSensitivity Formulation...............19
2.6 HInfinity Optimal Control Synthesis
Method..................................... 28
3. Simulation Examples and Results...................32
3.1 Benchmark Problem...........................32
3.2 Flexible Body Rocket System.................48
3.3 Hydraulic Actuator..........................64
3.4 Aircraft Lateral Dynamics...................78
4. Conclusion...................................... 93
v
APPENDIX
MATLAB Input Files for
A Benchmark problem.............................94
B Flexible Body Rocket System..................101
C Hydraulic Actuator.......................... 108
D Aircraft Lateral Dynamics....................115
REFERENCES............................................122
VI
List of Symbols
d
e
r
u
y
F
G
G
G(s)
MIL
L
R
S
T
P(s)
plant disturbance
tracking error
reference or command input
control signal, controller output
plant output
controller
nominal plant, system's transfer function
perturbed plant
Laplace transform of transfer function G
peak amplitude on the Bode magnitude plot of G
loop transfer function GF
control transfer function from reference r to
control input u
sensitivity function: error transfer function
from reference r to tracking error e
complementary sensitivity function: equal to
liS' (output transfer function from r to y)
Hm synthesis model
vu
Kl
w;
m
l
pow(e)
a
P
co norm
rpf
SUD Â£
P
T
y\u\
w*i
performance specification weighting function
for sensitivity function S{s)
R(s)weighting transfer function for closedloop
transfer function from r to u
robustness specification weighting function for
complementary sensitivity function T{ s)
power signal e
robust performance level
uncertainty level
least upper bound of its absolute value
a prefiltered input
2norm measure of the energy of r
supremum of tracking error measure 2norm of e
set of plant
closedloop transfer function from ul to yl
infinity norm of T
maximum singular value
singular value: /=1,2,3,...n1
additive plant perturbation
VUl
multiplicative plant perturbation
A uncertainty to act as a factor on the perturbation magnitude of
P* control Riccati equation
sR observer Riccati equation
^max greatest eigenvalue
r iteration function to compute the optimal H"
IX
CHAPTER 1
INTRODUCTION
In this thesis a robust controller will be looked at
using an H" optimality criterion. The systems presented
herein are linear and timeinvariant.
The // optimal control theory represents an
important advance in control technology. Among the
modern control theories developed in 1980's, H optimal
control theory is no doubt the most successful. It
offers a direct and efficient methodology for designing
highly practical robust multivariable control systems
[3]. Generally speaking, the notion of robustness means
that some characteristic of the feedback system holds for
every plant in the set p. A controller F provides
robust stability if it provides internal stability for
every plant in p. Given a synthesis model P(s) (Figure
1.1): H* design finds a controller, F, with two
important properties;
1. Guaranteed stable for nominal plant.
2. Maximum gain, from inputs to the outputs is <1.
ul
G(s)
M2 y2
F(s) 4
Figure 1.1 Hw synthesis model control system block
diagram
The objective of this thesis is to develop insight
into formulating a robust control problem within the H
control design framework and to improve upon the control
design. Towards this goal a collection of several
problem results of case studies are presented to
illustrate H robust controller design which minimizes
the Hwnorm of a predesignated closedloop transfer
matrix. The //"norm is the largest singular value of a
transfer matrix. Simulations are developed with mixed
sensitivity formulation of the robust control design
which penalizes both sensitivity S and complementary
sensitivity T [6]. The theory is developed in the input
output framework, while computational procedures are
presented in the statespace framework. Theory dealing
2
with performance and robust stability are discussed in
detail. This thesis is organized as follows. The oonorm
computations are first discussed. The performance of the
H* control design is then presented followed by robust
stability and robust performance. Next the H optimal
control synthesis with the emphasis on formulating the
problem will be discussed. The resulting controller is
robust with reasonable control effort and controller
complexity. The first computer simulation presented is a
twomass spring system ACC Benchmark problem with non
colocated sensor and actuator [1]. The second model
consists of a flexible body rocket system with rigid body
coupled with a bending mode to simulate a launch vehicle
problem. The third plant model consists of a hydraulic
actuator model control system. The fourth and final
control system design model is an aircraft lateral
dynamics system [7].
3
CHAPTER 2
HInfinity Robust Control System Design
2.1 Infinitynorm Computation
Performance of a control system may be specified in
terms of the size of certain signals of interest [7].
For example, the performance of a tracking system could
be measured by the size of the error signal. Consider
systems that are linear, timeinvariant, and finite
dimensional. In the time domain an input(w)output(,y)
model for such a system has the form of a convolution
equation,
y = g*u,
that is,
y(t) = j g(t r)u{T)dz.
" co
Where g is the system impulse response.
The oonorm of a signal is the least upper bound of
its absolute value. For example, the oonorm of (le,)l(f)
equals 1. Here 1(f) denotes the unit step function. To
4
compute oonorm, this requires a search. Set up a fine
grid of frequency points,
{1,...,n>.
Then an estimate for IG^ is
A
Here G is the Laplace transform of G.
Alternatively, one could find where GOg>) is maximum
by solving the equation
2
O>) = o.
This derivative can be computed in the closed form
A
because G is rational. It then remains to compute the
roots of a polynomial.
The system is analyzed for its ability to track a single
reference signal ra step or a ramp asymptotically as
time increases.
2.2 Performance
Consider a set of reference signals and a bound on
the steadystate error. This performance objective will
be quantified in terms of a weighted norm bound [7]. Let
5
L denote the loop transfer function LiGF. The transfer
function from reference input r to tracking error e is
called the sensitivity function. The name sensitivity
function comes from the following idea. Let T denote the
transfer function from r to y as shown in Figure 2.1i
T=
GF
l + GF *
command
r +
<21
error
e
F(s)
control
u
G(s)
y
>
controller
plant
Figure 2il Block Diagram of the Feedback Control System
One way to quantify how sensitive T is to variations in G
is to take the limiting ratio of a relative perturbation
in T.(i.e., AT/T) to a relative perturbation in G
(i.e., AG/G). Thinking of G as a variable and T as a
function of it, we get
6
A TIT dT G
ag>o AG/G dG T
The right hand side is easily evaluated to be S. In this
way, iS' is the sensitivity of the closedloop transfer
function T to an infinitesimal perturbation in G.
Now we have to decide on a performance
specification, a measure of goodness of tracking. This
decision depends on two things: what we know about r and
what measure we choose to assign to the tracking error.
Usually, r is not known in advance. Few control systems
are designed for one and only one input [7]. Rather, a
set of possible rs will be known or at least postulated
for the purpose of design.
Lets first consider sinusoidal inputs. Suppose
that r can be any sinusoid of amplitude < 1 and we want e
to have amplitude < e. Then since S is the error transfer
function, the performance specification can be expressed
as
7
The maximum amplitude of e equals the oonorm of the
transfer function. Or if we define the weighting
function W\(s) = \je, then the performance specification is
The situation becomes more realistic and more
interesting with a frequencydependent weighting
function. Assume that W\(s) is realrational, so any
poles or zeros in Re s>0 can be reflected into the left
halfplane without changing the magnitude. Let us
consider four scenarios giving rise to an norm bound on
fViS. The first three require W\ to be stable [7].
1. Suppose that the family of reference inputs is
defined as all signals of the form r = WirPf, where rPf,
a prefiltered input, is any sinusoid of amplitude
< 1. Thus the set of r's consists of sinusoids with
frequencydependent amplitudes. Then the maximum
amplitude of e equals
2. The equation
8
is a measure of the energy of r. Thus we may think of
Hm as energy spectral density, or energy spectrum.
Suppose that the set of all r's is
{r.r = WrPf,\\rPf\2
that is,
{JrU&yW^jajfdo) < 1 j .
Thus, r has an energy constraint and its energy
spectrum is weighted by \l\Wi(j(D)f. For example, if W\
was a bandpass filter, the energy spectrum of r
would be confined to the passband. More generally,
W\ could be used to shape the energy spectrum of the
expected class of reference inputs. Now suppose
that the tracking error measure is the 2norm of e.
Then
suplHL = sup{^/>/2:/>/2 < 1} = fML,
so M. <1 means that e2
above.
9
3. This scenario is like the preceding one except for
signals of finite power. We see that flj'K.S'lk equals
the supremum of pow(e) (power signal of e) over all
rPf (prefiltered input) with pow{rpf) <* 1 [7]. So W\
could be used to shape the power spectrum of the
expected class of r's.
4. In several applications, for example aircraft
flightcontrol design, designers have acquired
through experience desired shapes for the Bode
magnitude plot of S'. In particular, suppose that
good performance is known to be achieved if the plot
of /5'(ya>) lies under some curve. We could rewrite
this as
W<W0<, Vo,
or in other words, W'T.S'[o< 1.
There is a nice graphical interpretation of the
bound jW/i
w, pa)
1 + L(j(o)
<1,
Vo.
10
The last inequality says that at every frequency, the
point L{jco) on the Nyquist plot lies outside the disk of
center 1, with radius as shown in Figure 2.2.
Figure 2.2 Performance specification
2.3 Robust Stability
The notion of robustness can be described as
follows. Suppose that the plant transfer function G
belongs to a set p. Consider some characteristic of the
feedback system, for example, that it is internally
stable. A controller F is robust with respect to this
characteristic if this characteristic holds for every
plant in p. The notion of robustness therefore requires
a controller, a set of plants, and some characteristic of
system.
11
A controller F provides robust stability if it
provides internal stability for every plant in p. We
might like to have a test for robust stability, a test
involving F and p. Or if p has an associated size, the
maximum size such that F stabilizes all of p might be a
useful notion of stability margin.
The Nyquist plot gives information about stability
margin. Note that the distance from the critical point
1 to the nearest point on the Nyquist plot of L equals
mu*
distance from 1 to Nyquist plot = inflZ(yffl)
01
= \xÂ£\\ +L(joci)\
1 1_1
l_SPl + L(jo)).
= 1C
Thus if 1, the Nyquist plot comes close to the
critical point, and the feedback system is nearly
unstable. However, as a measure of stability margin this
distance is not entirely adequate because it contains no
frequency information. More precisely, if the nominal
12
plant G is perturbed to G, having the same number of
unstable poles as has G and satisfying the inequality
G(ja>)F(ja>) G(jo))F(jo))
V*y,
then internal stability is preserved (the number of
encirclements of the critical point by the Nyquist plot
does not change). But this is usually very conservative;
for instance, larger perturbations could be allowed at
frequencies where G(j(o)F(j(0) is far from the critical
point.
Now we look at a typical robust stability test, one
for the multiplicative perturbation model. Assume that
the nominal feedback system is internally stable for
controller F. Introduce the complementary sensitivity
function
T=lS=
L
1+ L
GF
1+ GF *
Consider perturbed plant transfer functions of the form
G = (1 + AW3)G. Here lf3 is a fixed stable transfer function,
the weight, and A is a variable stable transfer function
satisfying [lAl^ < 1. The main purpose of A is to account
for phase uncertainty and to act as a scaling factor on
13
the magnitude of the perturbation. For multiplicative
uncertainty model, the controller F provides robust
stability iff 1^7]^ < 1. The key equation is
1+(1 + A^3)L = (1 + Z)(1 + AW3r).
Since
[A^7i<r37
the point 1 + AWfT always lies some closed disk with center
1, radius < 1. The condition < 1 has a nice
graphical interpretation. Note that
W3(J
<1, V
1 +L(Jta)
o W, < 1 + Va>.
The last inequality says that at every frequency, the
critical point, 1, lies outside the disk of center
L(jaj), with radious f^(y
Figure 2.3 Robust stability
14
2.4 Robust Performance
Now we look into performance of the perturbed plant.
Suppose that the plant transfer function belongs to a set
p. The general notion of robust performance is that
internal stability and performance, of a specified type,
should hold for all plants in p.
When the nominal feedback system is internally
stable, the nominal performance condition is FfTjSoo< 1 and
the robust stability condition is j?ii1Sco< 1. If P is
perturbed to {\ + AW3)P, S is perturbed to
1 _ S
1 + (1 + AW3)L~ 1 + AW3T'
Clearly, the robust performance condition should
therefore be
1*5*1
w,s
li+A^rll
<1, VA.
Here A must be allowable. The next equation gives a test
for robust performance in terms of the function
which is denoted ^1S'j + ^7,.
15
A necessary and sufficient condition for robust
performance is
(2.i)
Assume (2.1), or equivalently,
IML and
wxs
l\W3T\
<1.
co
(2.2)
Fix A. In what follows, functions are evaluated at an
arbitrary point jo), but this is suppressed to simplify
notation. We have
\ = \\ + &W3TkW3l\<\\ + kW3l\ + \W3T\
and therefore
lF^7j <l + Af^7j.
This implies that
wxs > wxs
oo 1 + A W3T
This and (2.2) yield
WXS
1 + A W3T
Assume that
<1.
IML<1 and
wxs
1 + A W3T
<1,
VA.
Pick a frequency a> where
(2.3)
16
wxs
1\W3T\
is maximum. Now pick A so that
i;7l=i+ArJ7l.
The idea here is that A (J(o) should rotate W^jafyT^jaj) so
that A(jco)W2(jo})T(jo)) is negative real. Now we have
WXS
i
i
wxs
l + AJr37]
. Wxs
1 + A WJ
3 oo
So from this and (2.3) there follows (2.2) .
The robust performance condition says that the robust
performance level 1 is achieved. More generally, let's
say that robust performance level a is achieved if
llfrj71L
Noting that at every frequency
WXS
WXS
l + AW3T
max
4Â£1
1 + A WJ
i M
we get that the minimum a equals
17
w,s
1 M
co
Alternatively, we may wish to know how large the
uncertainty can be while the robust performance condition
holds. To do this, we scale the uncertainty level; that
is, we allow A to satisfy
uncertainty level ft is permissible if
Hwi
wxs
1 + A WJ
< 1, VA.
Again, noting that
max
AS1
w,s
1+/3A W3T
w's =i.
1
we get that the maximum f$ equals
W3T
il wx
Suppose that the loop transfer function L has a zero
z in Re5>0. Then
This is a direct consequence of the maximum modulus
theorem
0S(r) = ffi(z)S(z) < MfJ(K(S)S(S) = WSL
18
So a necessary condition that the performance criterion
jff
In words, the magnitude of the weight at a right half
plane zero of G or F must be less than 1.
Similarly, suppose that L has a pole p in Rej>0.
Then
IML
so a necessary condition for the robust stability
criterion ^7jB)
2.5 MixedSensitivity Formulation
Consider the multivariable feedback system shown in
Figure 2.4. In order to quantify the multivariable
stability margins and performance of such systems, you
can use the singular values of the closedloop transfer
function matrices from r to each of the three outputs e, u
and y.
def
S(s)=(l + L(s)r
def
R(s) = F(s)(I + L(s)r
def
T(s) = L(s)(I + L(s))i = I S(s)
19
where L(s) = G(s)F(s).
Figure 2.4 Block diagram of the multivariable
feedback control system
The two matrices S(s) and T(s) are known as the
sensitivity function (closedloop error transfer function
from r to e) and complementary sensitivity function
(closedloop output transfer function from r to y),
respectively. The matrix R{s) (closedloop control
transfer function from r to u) has no common name. The
singular value Bode plots of each of the loop transfer
function matrices S, R, and T play an important role in
robust multivariable control system design. The singular
r .
values of the loop transfer function matrix L(s) are
important because L determines the matrices S(s) and T(s).
The singular values of S determine the disturbance
attenuation since S is in fact the closedloop transfer
20
function from disturbance d to plant output y. Thus a
disturbance attenuation performance specification may be
written as
(24)
where ^1(y) is the desired disturbance attenuation
factor. Allowing W\(j
singular value Bode plots of R(s) and of T(s) are used to
measure the stability margins of multivariable feedback
designs in the face of additive plant perturbations (A^)
(Figure 2.5) and multiplicative plant perturbations (Aw),
respectively.
Let us consider how the singular value Bode plot of
complementary sensitivity T(s) determines the stability
margin for multiplicative perturbations Am The
multiplicative stability margin is, by definition, the
"size" of the smallest stable Am(s) which destabilizes
the system in with Aa= 0.
21
PERTURBED PLANT
Figure 2.5 Additive/multiplicative uncertainty
Taking to be the definition of the "size" of
AM(jco), you have the following stability theorem [6];
Robustness Theorem Is Suppose the system in Figure
2.5 is stable with both Aa and Am being zero. Let
Aa=0. Then the size of the smallest stable Am(s)
for which the system becomes unstable is
^(Aa/()= 1 .
o(TUa)))
The smaller is ~d(T(jo))), the greater will be the size
of the smallest destabilizing multiplicative
perturbation, and hence the greater will be the
stability margin.
A similar result is available for relating the stability
margin in the face of additive plant perturbations Aa(s)
22
to R(s). Let us take o(Aa (ja)) to be our definition of the
"size" of AA^jcS) at frequency 0). Then, you have the
following stability theorem [6].
Robustness Theorem 2: Suppose the system is stable
when A a and Am are both zero. Let Am = 0. Then the
size of the smallest stable A^(s) for which the
system becomes unstable is
<*Aa(Jo>)) = _ .
o(R(JG}))
As a consequence of Theorems 1 and 2, it is common
to specify the stability margins of control systems
via singular value inequalities such as
(2.5)
~5(T(jm)) <\W{'fjm)\ (2.6)
where (y<^) and ^(7fi,) are the respective sizes of
the largest anticipated additive and multiplicative
plant perturbations.
It is common practice to lump the effects of all plant
uncertainty into a single fictitious multiplicative
perturbation Am, so that the control design requirements
may be written
23
1
> Im (Jto)\, OI (T(jof)) < Wf1 Ua>)\.
oi(S(Ja>))
It is not uncommon to see specification on
disturbance attenuation and multiplicative stability
margin expressed directly in terms of forbidden regions
for the Bode plots of en(L(jG))) as "singular value loop
shaping" requirements.
Here is an important point to note for control
system designers. In choosing design specifications W\
and Wi the 0 db crossover frequency of the singular value
Bode plot of W{~] must be sufficiently below 0 db
crossover frequency of Wf1 or the performance
requirements (2.4) and (2.6) will not be achievable;
more precisely, we require
^W:\j(0)) + G{W{\j6>))> 1 V0 (2.7).
The MixedSensitivity approach of the robust control
system design is a direct and effective way of achieving
multivariable loop shaping. In the mixedsensitivity
problem formulation, nominal disturbance attenuation
specifications and stability margin specifications
equations (2.4) and (2.6) are combined into a single
infinity norm specification of the form
24
ML<1 (2.8)
where Tm is the closedloop transfer function from ul to
yl in Figure 2.6 and
ms
MT
(2.9).
AUGMENTED PLANT P(s)
CONTROLLER
Vi
Figure 2.6 Weighted mixed sensitivity problem
This is the mixedsensitivity cost function, so called
because it penalizes both sensitivity S and complementary
sensitivity T.
Note that if you augment the plant G(s) with the
weights and as shown in Figure 2.6, then wrap
the feedback F(s) from output channel yi back to input
channel ui, the resulting nominal (i.e., Am = 0) closed
25
loop transfer function is precisely the Tym(s) given by
(2.9) The Robust Control Toolbox function augtf [6]
perforins this plant augmentation.
The mixed sensitivity cost function has the
attractive property that, it provides a much simplified,
and nearly equivalent, alternative to the canonical
robust control problem for the case of the robust
sensitivity problem. It turns out that if (2.8) is
strengthened very slightly to
& IL < 1/V2
then robust sensitivity performance can be guaranteed;
that is,
> Wi{j<
for every multiplicative uncertainty Am satisfying
o(AmUcd)) ^ \W%U
This is because in this case the Tym associated with the
corresponding canonical robust control problem becomes
simply
Tyirn
WSl
WiT
26
For any S(s) and T(s), it may be shown that [6]
[wsl
\.mT\ oo ' imr J
ms
iWsTi
This relationship simplifies the robust control synthesis
problem by achieving a mixed sensitivity design with the
transfer function matrix
Jytm
rwsi
WiT\
27
2.6 HInfinitv Optimal Control Synthesis Method
The H optimal control synthesis method is available
in the Robust Control Toolbox [6] to design a robust
stabilizing feedback control law such that the robustness
inequality 7^ioi< 1 is satisfied. The method of H
synthesis tool for designing robust design problem can be
formulated as follows:
Given a statespace realization of an "augmented plant"
P(s) find a stabilizing feedback control law
M2 (5) = F(s)y2(s)
such that the norm of the closedloop transfer function
matrix 7^ is small. Such problem addressed by the
Robust Control Toolbox is H Optimal Control [6]:
min7yim
The standard H* control problem is sometimes also called
the H Small Gain problem.
There are several important properties of Hm controllers
worth mentioning [6]:
1. The // optimal control cost function Tyim is all
pass, i.e., o[7^(ii] = l for all coeR.
28
2. An Hv "suboptimal" controller has order equal
to that of the augmented plant (nstate). An H
optimal controller can be computed having at most
(n1) states.
3. In any weighted mixed sensitivity problem
formulation, the Hcontroller always cancels the
stable poles of the plant with its transmission
zeros [3]*
4. In the weighted mixed sensitivity problem
formulation [2], any unstable pole of the plant
inside the specified control bandwidth will be
shifted approximately to its j
once the feedback loop is closed with Hw controller.
Property 1 means that designers can ultimately achieve
very precise frequencydomain loopshaping via suitable
weighting strategies [6]. For example, you may augment
the plant with frequency dependent weights Wi, and W3.
Then, if there exists a feasible controller that meets
the frequency domain constraints, the software hinf [6]
will find one that ultimately "shapes" the signals to the
inverse of the weights. This enables the to achieve
the best results. If you impose demanding design
29
requirements then the minimal achievable H norm may be
greater than one, in which case no solution exists to the
standard H00 control problem in which the goal is to find
a controller for which 7Jiui ^ < 1. The theory gives four
conditions for the existence of a solution to the
standard Hm control problem [5]:
1. There must exist a constant, feedback control law
F(s) = "constant matrix" such that the closedloop D
matrix satisfies ~o(D) < 1.
2. Control Riccati i^>0. The H" fullstate
feedback control Riccati equation must have a real,
positive semidefinite solution PR. The software
ascertains existence of the Riccati solution by
checking that the associated hamiltonian matrix does
not have any y'oaxis eigenvalues. Positive
semidefiniteness of the solution is verified by
checking, equivalently, that the // fullstate
feedback controllaw is asymptotically stabilizing
[5]; this circumvents numerical instabilities
inherent in directly checking positive
s emide f initenes s.
30
3. Observer Riccati SR> 0. The Riccati equation
associated with the observer dual of the H full
state feedback control problem must have a real,
positive semidefinite solution SR. Again the
results of [5] are used to avoid numerical
instabilities.
4. AnwC^ji) <1 The greatest eigenvalue of the
product of the two Riccati equation solutions must
be less than one.
All of these four conditions must hold for there to
exist a feedback control law which solves the standard Hw
control problem.
31
CHAPTER 3
Simulation Examples and Results
3.1 Benchmark Problem
Plant Description:
Consider a twomass spring system shown in Figure 3.1
which is a generic model of an uncertain dynamical system
with a rigidbody mode and a vibration mode.
Figure 3.1 The benchmark problem
It is assumed that for the nominal system, ml=m2=l and
k=l with appropriate units and time in units of second.
A control force acts on body 1 and the position of body 2
is measured, resulting in a noncolocated control
problem. Use Lagranges equation to derive the dynamic
equations of the spring coupled masses.
II **3 1 X] z, X2 ~ Z2
o II 1 ^15 o^ V V V v
*1 x2 *2 *4
T = ^(mxz2+m2z2) x3 = Z, *4 = Z2
v=h(z2Zly x3 = z, *4 =*2
L = \k(mx%+m1z21) ^k(z2zx)2
^ = k(z2zx) OZ\ cL dzi k(z2zx)
cL "^r=7'z> CZl cL ^r=^2 CZl
d ( dL\ d / cL dt '^dzi ) = m2z2
mxzx k(z2zx) myi2 +k(z2 z,)
m\ *3 ~ k(X2 *1 ) = 0
m2x4+k(x2xl) = 0
= J;(X2~*l)
m,
4 = _k(azl
m2
This system can be represented in statespace form ass
33
Xl 0 0 10 Xl 0 0
Xl 0 0 0 1 X2 0 0
&3 k/mi k/m 0 0 Xl + 1/ml (u+wi) + 0
X4 k/m k/m 0 0 X4 0 1//H2
where xi and xi are the positions of body 1 and body 2,
respectively; u the control input acting on body 1; y the
sensor output; wi and wi the plant disturbances acting on
body 1 and body 2, respectively.
Figure 3.2 Nichols plot of the openloop plant
34
Phase (deg) Gain (db)
Figure 3.3 Bode plot of the openloop plant
35
Figure 3.4 Impulse response of the plant
Nichols and Bode plots of the openloop plant are
shown in Figures 3.2 and 3.3, repectively. Figure 3.4
shows the impulse response of the plant and it is
unstable. Now we have to design a controlgain linear
feedback controller of the form
X=AX+Bu
y=CX+Du
with the following properties:
1. The closedloop system is insensitive to high
frequency sensor noise.
36
2. Reasonable performance/stability robustness and
reasonable gain/phase margins are achieved with
reasonable bandwidth.
3. Reasonable control effort (e.g., peak control
input) is used.
4. Reasonable controller complexity (e.g.,
controller order) is needed.
The singular value design specifications are:
1. Performance spec.: Minimize the sensitivity
function as much as possible. Sensitivity function
(S) (Figure 3.5) specification;
0.1 *(s2 +25+1)
(i+Wio))
2. Robustness spec.: 20 db/decade rolloff and at
least 20 db at 10 rad/sec. Complementary
sensitivity function (IS) (Figure 3.5)
specification
37
Figure 3.5 Bode plot of weighting functions
Note that because is an improper transfer
function (i.e., has more zeros than poles), it
cannot be realized in statespace form; but M(s)G(s)
is proper. This particular ^(s) ensures that the
matrix P(s) is full rank as required by hinf [6].
38
The hinf function solves the smallgain infinity
norm robust control problem; i.e., find a
stabilizing controller F(s) for an augmented system
P(j) such that the closedloop transfer function
satisfies the infinitynorm inequality
7yim 1^ SUp Omax (Tyiui (j(0)) < 1
Because has no statespace realization, the M
file augtf [6] can be directly employed here [2].
1. Find a stabilizing controller F(s) such that the
infinity norm of transfer function Tyim is minimized
and is less than or equal to one. The Tyiui singular
value Bode plot associated with each design will
indicate how close the design is to the
specifications. The Robust Control toolbox function
hinfopt [6] automates this iteration. Hinfopt
performs H "yiteration" to compute the optimal Ha>
controller using the loop^shifting twoRiccati
formulae of hinf [6]. The output gamopt is the
optimal "y" for which the cost function Tym can
achieve under a preset tolerance [6].
39
Figure 3.6 H design cost function Tyim
As shown in Figure 3.6, the cost function gets
pushed to the "allpass limit" (i.e., to 0 db), the
sensitivity function S shown in Figure 3.7 gets
pushed down more and more, consequently the
complementary sensitivity function T shown in Figure
3.8 approaches to its associated weighting function
Wf'
40
Figure 3.8 Hm design comp, sensitivity function & 1jWi
41
2. The resulting controller shown in Figure 3.9 is
stable, 7th order, strictly proper, and nonminimum
phase.
2.3 6E + 4s6 + 7.47 E + 6 s51.17 E + 7 s4 +1.15.E + 7 s3 + 1.79 E + 7 s2 + 9.38Â£ + 6s + 1.147 E + 5
( e A 5 ts
s' + 2. 4QE + 3s + 9.34E + 4 s3 + 7.71E + 5s*3.45E + 6s* + 9.80E + 6sz +1.19E+ 7s+ 4.85E + 6
with the poles at
s =2364.0, 30.0, 1.473.64i, 1.01.96Â£8/, 4.43.
42
Phase (deg) Gain (db)
Frequency (rad/sec)
Figure 3.9 Bode plot of controller F(s)
43
3. The loop transfer function G(s)F(s) Nichols and
Bode plots are shown in Figures 3.10 and 3.11,
respectively. Reasonable gain and phase margins are
achieved for the nominal system, G.M.= 5.29 db and
P.M.= 5.82 deg.
Figure 3.10 Nichols plot of loop transfer func. G(s)F(s)
44
Phase (deg) Magnitude (db)
Frequency (rad/sec)
Figure 3.11 Bode plot of loop transfer function G(s)F(s)
45
Amplitude
4. The closedloop system step and impulse response
plots are presented in Figures 3.12 and 3.13,
respectively. A stable controller has been designed'
for a spring mass coupled system for robust control
design. Satisfactory robustness, performance has
been achieved with reasonable control effort (e.g.,
peak control input) and controller complexity (e.g.,
controller order).
Figure 3.12 Closedloop system step response
46
Amplitude
Figure 3.13 Closedloop system impulse response
47
3.2 Robust Control Design of Flexible Body Rocket System
Plant Descriptions
For a launch vehicle with rigid body mode, a bending mode
and a gimbaled engine as shown in Figure 3.14, we need to
design a robust autopilot.
Figure 3.14 H" Autopilot design model G(s)
AUGMENTED PLANT P(s)
^yia>
2a
3a 7
AUTOPILOT
Figure 3.15 Block diagram of rocket control system
The airframe model G(s) is shown in Figure 3.14 where:
48
T = Total thrust
Lg = Moment arm from center of gravity to effective
thrust deflection point
I = Moment of inertia
M = Total mass of airframe
A/u = ^ Sf d Cm a
q = Dynamic pressure
Sf = Aerodynamic reference area
amu ~ Relative 1st mode slope at IMU station
hfixs) = Relative 1st mode displacement at gimbal
station
0) 1st structural mode frequency
Â£ = 1st mode damping
49
Figure 3.16 Nichols plot of the openloop plant
50
Phase (deg) Gain (db)
Frequency (rad/sec)
Figure 3.17 Bode plot of the openloop plant
51
Figure 3.18 Impulse response of the plant
Nichols and Bode plot of the openloop plant are
shown in Figures 3.16 and 3.17, respectively. Figure
3.18 shows the impulse response of the plant and it is
unstable. Now we have to design a controlgain linear
feedback controller of the form
X = A X + B u
y=CX+Du
with the following properties:
1. The closedloop system is insensitive to high
frequency sensor noise.
52
2. Reasonable performance/stability robustness and
reasonable gain/phase margins are achieved with
reasonable bandwidth.
3. Reasonable control effort (e.g., peak control
input) is used.
4. Reasonable controller complexity (e.g.,
controller order) is needed.
The singular value design specifications are:
1. Performance spec.: Minimize the sensitivity
function as much as possible. Sensitivity function
(S) (Figure 3.19) specification;
wi 1(s)=
(s2 +205+100)
10000
2. Robustness spec.: 40 db/decade rolloff and at
least 20 db at 100 rad/sec. Complementary
sensitivity function (IS) (Figure 3.19)
specification
. 100000
w3 (s) =
s2
53
Frequency (rad/sec)
Figure 3.19 Bode plot of weighting functions
Note that because Wi(s) is an improper transfer
function (i.e., has more zeros than poles), it
cannot be realized in statespace form; but Ws(s)G(s)
is proper. This particular H'S(.s) ensures that the
matrix of P(s) is full rank as required by hinf [6].
The hinf function solves the smallgain infinity
norm robust control problem; i.e., find a
stabilizing controller F(s) for an augmented system
P(s) such that the closedloop transfer function
satisfies the infinitynorm inequality
54
7yiM 1^ Slip Oinax (Tyiui < 1
Because Wi(s) has no statespace realization, the M
file augtf [6] can be directly employed here [2].
1. Find a stabilizing controller F(s) such that the
infinity norm of transfer function Tywi is minimized
and is less than or equal to one. The Tym singular
value Bode plot associated with each design will
indicate how close the design is to the
specifications. The Robust Control toolbox function
hinfopt [6] automates this iteration. Hinfopt does
H "^iteration" to compute the optimal H00
controller using the loopshifting twoRiccati
formulae of hinf. The output gamopt is the optimal
"y" for which the cost function Tyim can achieve under
a preset tolerance.
55
,SV (db)
Figure 3.20 Hw design cost function Tyun
As shown in Figure 3.20, the cost function gets
pushed to the "allpass limit" (i.e., to 0 db), the
sensitivity function S shown in Figure 3.21 gets
pushed down more and more, consequently the
complementary sensitivity function T shown in Figure
3.22 approaches to its associated weighting function
Wfl.
56
ym
& \/Wi
57
2. The resulting controller shown in Figure 3.23 is
stable, 6th order, strictly proper, and nonminimum
phase.
1.37E + 9s5 5.84E + 10s4 8.06E +1 Is3 6.40Â£ + 12s2 2.72E + 13s4.46Â£ +13
F(S) ;
s6 + 1.40E + 4s53.77Â£ + 6s4 + 1.87E + 9s3 + 5.1 \E + 10s2 + 4.74E + 11s+ 1.47^ + 12
with the poles at
s = L37Â£+4, 1.18Â£+23.39Â£ + 2/, 10.0, 10.0, 8.31.
58
Phase (deg) Gain (db)
Figure 3.23 Bode plot of controller F(s)
59
3. The loop transfer function G(s)F(s) Nichols and
Bode plots are shown in Figures 3.24 and 3.25,
respectively. Reasonable gain margin is achieved
for the nominal system, G.M.= 6.50 db.
Figure 3.24 Nichols plot of loop transfer func. G(s)F(s)
60
Phase (deg) Magnitude (db)
Figure 3.25 Bode plot of loop transfer function G(s)F(s)
Amplitude
4. The closedloop system step and impulse response
plots are presented in Figures 3.26 and 3.21,
respectively. A stable controller has been designed
for a flexible body rocket system for robust control
design. Satisfactory robustness, performance has
been achieved with reasonable control effort (e.g.,
peak control input) and controller complexity (e.g.,
controller order).
Figure 3.26 Closedloop system step response
62
5
In= > Engine Command Out= > IMU Deflection
Figure 3.27 Closedloop system impulse response
63
3.3 Robust Control Design of Hydraulic Actuator
For a hydraulic actuator control system model shown
below we need to design a robust controller.
AUGMENTED PLANT P(s)
la
2a
3a J
controller
Figure 3.28 Block diagram of actuator control system
Figure 3.29 Nichols plot of the openloop plant
64
Phase (deg) Gain (db)
Frequency (rad/sec)
Frequency (rad/sec)
Figure 3.30 Bode plot of the openloop plant
65
Time (sec)
Figure 3.31 Impulse response of the plant
Nichols and Bode plot of the openloop plant are
shown in Figures 3.29 and 3.30, respectively. Figure
3.31 shows the impulse response of the plant and it is
stable. However, we would like to design a robust
controller to get better system margins. We need to
design a controlgain linear feedback controller of the
form
X=AX+Bu
y=CX+Du
with the following properties:
66
1. The closedloop system is insensitive to high
frequency sensor noise.
2. Reasonable performance/stability robustness and
reasonable gain/phase margins are achieved with
reasonable bandwidth.
3. Reasonable control effort (e.g., peak control
input) is used.
4. Reasonable controller complexity (e.g.,
controller order) is needed.
The singular value design specifications are:
1. Performance spec.: Minimize the sensitivity
function as much as possible. Sensitivity function
(5) (Figure 3.32) specification;
i, , (s/30) + l
Wl (s) '
1.25((s/l000)+l)
2. Robustness spec.: 40 db/decade rolloff and at
least 20 db at 1000 rad/sec. Complementary
sensitivity function (IS) (Figure 3.32)
specification
2Els2+\.2E3s+\
\E5s2 +2Â£3s+0.1
67
Figure 3.32 Bode plot of weighting functions
Note that because W3(s) is an improper transfer
function (i.e., has more zeros than poles), it
cannot be realized in statespace form; but M(s)G(s)
is proper. This particular Wi(s) ensures that the
matrix of P(s) is full rank as required by hinf [ 6 ].
The hinf function solves the smallgain infinity
norm robust control problem; i.e., find a
stabilizing controller F(s) for an sugmented system
P(s) such that the closedloop transfer function
satisfies the infinitynorm inequality
68
jlT^lUl II SUp Omax {Tyim (j(i< 1
II llQO
Because W%(s) has no statespace realization, the M
file augtf [6] can be directly employed here [2].
2. Find a stabilizing controller F(s) such that the
infinity norm of transfer function Tyim is minimized
and is less than or equal to one. The Tyim singular
value Bode plot associated with each design will
indicate how close the design is to the
specifications. The Robust Control toolbox function
hinfopt [6] automates this iteration. Hinfopt does
H00 "yiteration" to compute the optimal Hm
controller using the loopshifting twoRiccati
formulae of hinf. The output gamopt is the optimal
"y" for which the cost function Tyim can achieve under
a preset tolerance.
69
Figure 3.33 H design cost function Tym
As shown in Figure 3.33, the cost function gets
pushed to the "allpass limit" (i.e., to 0 db), the
sensitivity function S shown in Figure 3.34 gets
pushed down more and more, consequently the
complementary sensitivity function T shown in Figure
3.35 approaches to its associated weighting function
Wf1.
70
Figure 3.34 Hm design sensitivity function & 1jW\
Figure 3.35 Hw design comp sensitivity function & \/Ws
71
2. The resulting controller shown in Figure 3.36 is
stable, 5th order, strictly proper, and nonminimum
phase.
8.89Â£3s5 + L63Â£: + 6.s41.73Â£' + 9s35.15Â£' + 10s21.18Â£, + 12j+1.68Â£ + 12
5\ 
j5 + \.16E + 4S4 +2.1 IE + 7s34.63E + 9i24.83Â£ +11* + 109E +13
with the poles at
s = l.63E+4, 1.08Â£ + 29.93Â£ + l/, 1.03E + 3, 30.0.
72
Phase (deg) Gain (db)
Figure 3.36 Bode plot of controller F(s)
73
3. The loop transfer function G(s)F(s) Nichols and
Bode plots are shown in Figures 3.37 and 3.38,
respectively. Reasonable gain and phase margins are
achieved for the nominal system, G.M.= 17.75 db and
P.M.= 59.64 deg.
Figure 3.37 Nichols plot of loop transfer func. G(s)F(s)
74
Phase (deg) Magnitude (db)
Frequency (rad/sec)
Figure 3.38 Bode plot of loop transfer function G(s)F(s)
75
4. The closedloop system step and impulse response
plots are presented in Figures 3.39 and 3.40,
respectively. A stable controller has been designed
for a hydraulic actuator system for robust control
design. Satisfactory robustness, performance has
been achieved with reasonable control effort (e.g.,
peak control input) and controller complexity (e.g.,
controller order).
In= > Act Command Out= > Act Deflection
Figure 3.39 Closedloop system step response
76
In= > Act Command Out= > Act Deflection
Figure 3.40 Closedloop system impulse response
77
3.4 Robust Control of Aircraft Lateral Dynamics
One of the most important applications of state
space methods is in the design of control system for
aircraft. The forces and moments on such vehicles are
produced by the motion of the vehicle through the air and
are obtained, in principle by integrating the aerodynamic
pressure over the entire surface of the aircraft. The
aircraft pitch motion is typically controlled by a
control surface called the elevator. The roll is
controlled by a pair of ailerons, and the yaw is
controlled by a rudder. In many cases the system lateral
and longitudinal dynamics are only lightly coupled, and
the control system can be designed for each channel
without regard to the other [7]. Thus in this example
controller using the rudder will be designed for the yaw
channel.
Plant Description:
n Y a Yp D Yr A g . Ya  Yr s
B = B+P+1 r + d+SA+Sr
VH V \V V V V
p = Lpj3+ LpP + Lrr + LaSa +LrSr
r Np/3+ NpP + Nrr + NaSa + Nr Sr
(j, = p
78
p Yp/V Yp/V (Yr/V)1 g/V P Ya/V Yr/V
p __ Lp Lp Lr 0 P La Lr
r Np Np Nr 0 r Na Nr
4 0 1 0 0 $ 0 0
746 .006 .999 .0369 P .0012 .0092
12.9 .746 .387 0 P + 6.05 .952
4.31 .024 .174 0 r .416 1.76
0 1 0 0 $ 0 0
p
r
0 100
0 0 10
P
P
r
0
0 0 5a
+ 0 0 Sr
Figure 3.41 Nichols plot of the openloop plant
79
Phase (deg) Gain (db)
Frequency (rad/sec)
Figure 3.42 Bode plot of the openloop plant
80
Figure 3.43 Impulse response of the plant
Nichols and Bode plots of the openloop plant are
shown in Figures 3.41 and 4.42, respectively. Figure
3.43 shows the impulse response of the plant and it is a
very slow system. The system does get to zero after
running the simulation for long time (beyond 100
seconds). Now we have to design a controlgain linear
feedback controller of the form
81
X=AX+Bu
y=CX+Du
with the following properties:
1. The closedloop system is insensitive to high
frequency sensor noise.
2. Reasonable performance/stability robustness and
reasonable gain/phase margins are achieved with
reasonable bandwidth.
3. Reasonable control effort (e.g., peak control
input) is used.
4. Reasonable controller complexity (e.g.,
controller order) is needed.
The singular value design specifications are:
1. Performance spec.: Minimize the sensitivity
function as much as possible. Sensitivity function
(S) (Figure 3.44) specification;
1 f N (s + l)(s +1)
w\ (s) =
10((s/50) + l)2
2. Robustness spec.: 40 db/decade rolloff and at
least 20 db at 10 rad/sec. Complimentary
sensitivity function (IS) (Figure 3.44)
specification
W3 (j) =
0/30+ 1)2
0.030+1)2
Frequency (rad/sec)
Figure 3.44 Bode plot of weighting functions
Note that because H^O) is an improper transfer
function (i.e., has more zeros than poles), it
cannot be realized in statespace form; but Ws(s)G(s)
is proper. This particular Wi(s) ensures that the
matrix of P(s) is full rank as required by hinf [6].
83
The hinf function solves the smallgain infinity
norm robust control problem; i.e., find a
stabilizing controller F(s) for an augmented system
P(s) such that the closedloop transfer function
satisfies the infinitynorm inequality
II  A
Twin = SUp CTmax (Ty\u\ 6))) < 1
11 ,ICO Q)
Because Wi(s) has no statespace realization, the M
file augtf [6] can be directly employed here [2].
1. Find a stabilizing controller F(s) such that the
infinity norm of transfer function Tyua is minimized
and is less than or equal to one. The Tyim singular
value Bode plot associated with each design will
indicate how close the design is to the
specifications. The Robust Control toolbox function
hinfopt [6] automates this iteration. Hinfopt does
Hm "yiteration" to compute the optimal Hw
controller using the loopshifting twoRiccati
formulae of hinf. The output gamopt is the optimal
"y" for which the cost function Tyun can achieve under
a preset tolerance.
84
Frequency (rad/sec)
Figure 3.45 H design cost function Tym
As shown in Figure 3.45, the cost function gets
pushed to the "allpass limit" (i.e., to 0 db), the
sensitivity function S shown in Figure 3.46 gets
pushed down more and more, consequently the
complementary sensitivity function T shown in Figure
3.47 approaches to its associated weighting function
W3~l.
85
Frequency (rad/sec)
Figure 3.46 Hw design sensitivity function & l/Wi
Figure 3.47 Hm design comp sensitivity function & 1jWs
86
2. The resulting controller shown in Figure 3.48 is
stable, 8th order, strictly proper, and nonminimum
phase.
3.6E + 5i7 2.4E + Is6 4.4Â£ + 8s5 1.9E + 9s4 4.1.E + 9j3 7.3E + 9s2 4.0E + 9s2.4E + 7
ff g\ ____________________________________________________
i8 + 8.4 E + 3 s11.7 E + 7s6ISE + Ss54.9E + 8.S4 + 5.9 E + 8 i3 +3.9 E + Ss2 +1.7E + 8i + 4.7E + 7
with the poles at
s = 5.\5E + 3, 3.20E + 3, 7.27, 1.13Â£15.52Â£1/, 1.23,
10.0El6A5E7i.
87
Phase (deg) Gain (db)
Frequency (rad/sec)
Figure 3.48 Bode plot of controller F(s)
88
3. The loop transfer function G(s)F(s) Nichols and
Bode plots are shown in Figures 3.49 and 3.50,
respectively. Reasonable phase margin is achieved
for the nominal system, P.M.= 7.87 deg.
Figure 3.49 Nichols plot of loop transfer func. G(s)F(s)
89^
Phase (deg) Magnitude (db)
Figure 3.50 Bode plot of loop transfer function G(s)F(s)
90
4. The closedloop system step and impulse response
plots are presented in Figures 3.51 and 3.52,
respectively. A stable controller has been designed
for a aircraft lateral dynamics system for robust
control design. Satisfactory robustness,
performance has been achieved with reasonable
control effort (e.g.f peak control input) and
controller complexity (e.g., controller order).
Figure 3.51 Closedloop system step response
91

PAGE 1
ROBUST CONTROL SYSTEM DESIGN Richard Kwangsop Huh B.S., University of Colorado at Denver, 1988 A thesis submitted to the Faculty of the Graduate School of the University of Colorado at Denver in partial fulfillment of the requirements for the degree of Master of Science Electrical Engineering 1994
PAGE 2
This thesis for the Master of Science degree by Kwangsop Huh has been approved for the Department of Electrical Engineering by Miloje S. Radenkovic Jan T. Bialasiewicz Marvin F. Anderson 199'?' Date
PAGE 3
Huh, Richard Kwangsop (M.S., Electrical Engineering) Hm Robust Control System Design Thesis directed by Assistant Professor Miloje s. Radenkovic ABSTRACT This thesis presents the application of Hm optimal control. Controllers are designed using Hm optimal control design techniques described in Robust Control Toolbox [6] and Feedback Control Theory [7]. The mathematical properties as well as the derivation of the Hm algorithm are discussed. Computer simulation case studies using Hm robust control design methods are presented to substantiate theory. The emphasis is on formulating the Hm control design problem such that the resulting controller provides robustness with reasonable control effort. The simulations show the performance of the algorithms for some practical systems. OJe S. Ra en OV1C 111
PAGE 4
ACKNOWLEDGMENTS I would like to thank Martin Marietta Technologies Inc., for sponsoring my graduate work at the University of Colorado at Denver through their program for study under company auspices. Dr. Radenkovic, my thesis advisor, provided me with inspiration as well as help and guidance throughout my thesis research. An acknowledgment should also go out to all my family and friends for their support and patience. IV
PAGE 5
CONTENTS List of Symbols .................................... vii cHAPTER 1. INTRODUCTION .. 1 2. HInfinity Robust Control System Design........ ..4 2.1 Infinitynorm Computation 4 2.2 Performance 5 2.3 Robust Stability 11 2.4 Robust Performance . . . 15 2.5 MixedSensitivity Formulation . . 19 2.6 HInfinity Optimal Control Synthesis I4E!t:lloci . 28 3. Simulation Examples and Results .32 3.1 Benchmark Problem 32 3.2 Flexible Body Rocket System 48 3.3 Hydraulic Actuator 64 3.4 Aircraft Lateral Dynamics 4 Conclusion ...................................... 9 3 v
PAGE 6
APPENDIX MATLAB Input Files for A Benchmark problem ..... 94 B Flexible Body Rocket System . lOl C Hydraulic Actuator ......... lOB D Aircraft Lateral Dynamics l15 REFERENCES 122 Vl
PAGE 7
List of Symbols d plant disturbance e tracking error r reference or command input u control signal, controller output y plant output F controller G nominal plant, system's transfer function G perturbed plant ,.. G(s) Laplace transform of transfer function G IIG!to peak amplitude on the Bode magnitude plot of G L loop transfer function GF R control transfer function from reference r to control input u s sensitivity function: error function from reference r to tracking error e T complementary sensitivity function: equal to 1S (output transfer function from r toy) P(s) H.., synthesis model VII
PAGE 8
w:1 I w..1 2 w:1 3 pow(e) a p ronorm performance specification weighting function for sensitivity function S(s) R(s)weighting transfer function for closedloop transfer function from r to u robustness specification weighting function for complementary sensitivity function T(s) power signal e robust performance level uncertainty level least upper bound of its absolute value a prefiltered input 2norm measure of the energy of r supremum of tracking error measure 2nor.m of e set of plant closedloop transfer function from ul to yl infinity norm of T Y1U1 maximum singular value singular value: i=1,2,3, n1 additive plant perturbation 'V1ll
PAGE 9
r multiplicative plant perturbation uncertainty to act as a factor on magnitude of the perturbation control Riccati equation observer Riccati equation greatest eigenvalue iteration function to compute the optimal IX
PAGE 10
CHAPTER 1 INTRODUCTION In this thesis a robust controller will be looked at using an Ha:J op.timality criterion. The systems presented herein are linear and timeinvariant. The Ha:J optimal control theory represents an important advance in control technology. Among the modern control theories developed in 1980's, Ha:J optimal control theory is no doubt the most successful. It offers a direct and efficient methodology for designing highly practical robust multivariable control systems [3]. Generally speaking, the notion of robustness means that some characteristic of the feedback system holds for every plant in the set p. A controller F provides robust stability if it provides internal stability for every plant in p. Given a synthesis model P(s) (Figure 1.1) : Ha:J design finds a controller, F, with two important properties; 1. Guaranteed stable for nominal plant.
PAGE 11
2. Maximum gain, from inputs to the outputs is <1. G(s) Figure 1.1 synthesis model control system block diagram The objective of this thesis is to develop insight into formulating a robust control problem within the control design framework and to improve upon the control design. Towards this goal a collection of several problem results of case studies are presented to illustrate robust controller design which minimizes the of a predesignated closedloop transfer matrix.. The is the largest singular value of a transfer matrix. Simulations are developed with mixed sensitivity formulation of the robust control design which penalizes both sensitivity S and complementary sensitivity T [6]. The theory is developed in the inputoutput framework, while computational procedures are presented in the statespace framework. Theory dealing 2
PAGE 12
with performance and robust stability are discussed in detail. This thesis is organized as follows. The oonorm computations are first discussed. The performance of the control design is then presented followed by robust stability and robust performance. Next the optimal control synthesis with the emphasis on formulating the problem will be discussed. The resulting controller is robust with reasonable control effort and controller complexity. The first computer simulation presented is a twomass spring system ACC Benchmark problem with noncolocated sensor and actuator [1]. The second model consists of a flexible body rocket system with rigid body coupled with a bending mode to simulate a launch vehicle problem. The third plant model consists of a hydraulic actuator model control system. The fourth and final control system design model is an aircraft lateral dynamics system [7]. 3
PAGE 13
CHAPTER 2 BInfinity Robust Control System Design 2.1 Computation Performance of a control system may be specified in terms of the size of certain signals of interest [7]. For example, the performance of a tracking system could be measured by the size of the error signal. Consider systems that are linear, timeinvariant, and finite dimensional. In the time domain an input(u)output(y) model for.such a system has the form of a convolution equation, y=g*u, that is, y(t) = J'"' g(tr)u(r)dr. _.., Where g is the system impulse response. The oonorm of a signal is the least upper bound of its absolute value. For example, the oonorm of (1e'}l(t) equals 1. Here l(t) denotes the unit step function. To 4
PAGE 14
compute oonorm, this requires a search . set up a fine grid of frequency points, {OO!ttOOn} 1\ Then an estimate for IIGII.., is 1\ maxiG(jmk >I tsksn Here G is the Laplace transform of G. Alternatively, one could find where IG(jm)l is maximum by solving the equation dlal2 (jOJ)=O. dOJ This derivative can be computed in the closed form lt.. because G is rational. It then remains to compute the roots of a polynomial. The system is analyzed for its ability to track a single reference signal ra step or a ramp asymptotically as time increases. 2.2 Performance Consider a set of reference signals and a bound on the steadystate error. This performance objective will be quantified in terms of a weighted norm bound [7]. Let 5
PAGE 15
L denote the loop transfer function L:=GF. The transfer function from reference input r to tracking error e is 1 S= l+L' called the sensitivity function. The name sensitivity function comes from the following idea. Let T denote the transfer function from r to y as shown in Figure 2.1: command error r + e T= GF l+GF control controller plant y Figure 2.1 Block Diagram of the Feedback Control.System One way to quantify how sensitive T is to variations in G is to take the limiting ratio of a relative perturbation in T (i.e., ATjT) to a relative perturbation in G (i.e. AG/G ) Thinking of G as a variable and T as a function of it, we get 6
PAGE 16
lim llT/T = dT G AG+0 llG/G dG T The right hand side is easily evaluated to be S. In this way, S is the sensitivity of the closedloop transfer function T to an infinitesimal perturbation in G. Now we have to decide on a performance specification, a measure of goodness of tracking. This decision depends on two things: what we know about r and what measure we choose to assign to the tracking error. Usually, r is not known in advance. Few control systems are designed for one and only one iriput [7]. Rather, a set of possible r's will be known or. at least postulated for the purpose of design. Let's first consider sinusoidal inputs. Suppose that r can be any sinusoid of amplitude 1 and we want e to have amplitude < &. Then since S is the error transfer function, the performance specification can be expressed as IISIIIO
PAGE 17
The maximum amplitude of e equals the oonorm of the transfer function. Or if we define the weighting function W1(s) = 1/ e, then the performance specification is The situation becomes more realistic and more interesting with a frequencydependent weighting function. Assume that W1(s) is realrational, so any poles or zeros in Re s>O can be reflected into the left halfplane without changing the magnitude. Let us consider four scenarios giving rise to an bound on W1S. The first three require W1 to be stable [7]. 1. Suppose that the family of reference inputs is defined as all signals of the form r = Wirpf, where rpf a prefiltered input, is any sinusoid of amplitude 1. Thus the set of r's consists of sinusoids with frequencydependent amplitudes. Then the maximum amplitude of e equals jjWISjl..,. 2 The equation 2 I J"' 2 llrll2 =jr{Jw)j dw 2;r _.., 8
PAGE 18
is a measure of the energy of r. Thus we may think of lr(Jm)l2 as energy spectral density, or energy spectrum. Suppose that the set of all rs is that is, { r:1 J "'lr(jw)/w;(Jw)l2 dw :s; 1} 27r <1) Thus, r has an energy constraint and its energy spectrum is weighted by l/IW1Um)l2 For example, if W1 was a bandpass filter, the energy spectrum of r would be confined to the passband. More generally, W1 could be used to shape the energy spectrum of the expected class of reference inputs. Now suppose that the tracking error measure is the 2norm of e. Then so IIWtSII"' < 1 means that llell2 < 1 for all r s in the set above. 9
PAGE 19
3. This scenario is like the preceding one except for signals of finite power. We see that jjW.SII.., equals the supremum of pow(e) (power signal of e) over all rpf (prefiltered input) with [7]. So W1 could be used to shape the power spectrum of the expected class of r's. 4. In several applications, for example aircraft flightcontrol design, designers have acquired through experience desired shapes for the Bode magnitude plot of S. In particular, suppose that good performance is known to be achieved if the plot of jS(Jw)l lies under some curve. We could rewrite this as or in other words, IIW.St) < 1 There is a nice graphical interpretation of the bound IIW.SII.., < 1. Note that IIW.SII < 1 <=> W. (jw) < 1' V w .., 1 +L(jw) 10
PAGE 20
The last inequality says that at every frequency, the point L(jm) on the Nyquist plot lies outside the disk of center 1, with radius IWI (jm)l as shown in Figure 2. 2 L Figure 2.2 Performance specification 2.3 Robust Stability The notion of robustness can be described as follows. Suppose that the plant transfer function G belongs to a set p. Consider some characteristic of the feedback system, for example, that it is internally stable. A controller F is robust with respect to this characteristic if this characteristic holds for every plant in p. The notion of robustness therefore requires a controller, a set of plants, and some characteristic of system. 11
PAGE 21
A controller F provides robust stability if it provides internal stability for every plant in p. We might like to have a test for robust stability, a test involving F and p. Or if p has an associated size, the maximum size such that F stabilizes all of p might be a useful notion of margin. The Nyquist plot gives information about stability margin. Note that the distance from the critical point 1 to the nearest point on the Nyquist plot of L equals liiiSJioo: distance froin 1 to Nyquist plot = infiIL(jw)l 01 = infii + L(jw >I ID [ I ] 1 = II+ L(jw)l Thus if IISIIcc >>I ; the Nyquist plot comes close to the critical point, and the feedback system is nearly unstable. However, as a measure of stability margin this distance is not entirely adequate because it contains no frequency information. More precisely, if the nominal I2
PAGE 22
plant G is perturbed to G, having the same number of unstable poles as has G and satisfying the inequality then internal stability is preserved (the number of encirclements of the critical point by the Nyquist plot does not change). But this is usually very conservative; for instance, larger perturbations could be allowed at frequencies where is far from the critical point. Now we look at a typical robust stability test, one for the multiplicative perturbation model. Assume that the nominal feedback system is internally stable for controller F. Introduce the complementary sensitivity function L :GF T=lS== .. l+L l+GF Consider perturbed plant transfer functions of the form G = (l+Alf;)G. Here If; is a fixed stable transfer function, the weight, and A is a variable stable transfer function satisfying jjAjj.., 1. The main purpose of A is to account for phase uncertainty and to act as a scaling factor on 13
PAGE 23
the magnitude of the perturbation. For multiplicative uncertainty model, the controller F provides robust stability iff < 1. The key equation is = Since the point l+AW3T always lies some closed disk with center 1, radius < 1. The condition < 1 has a nice graphical interpretation. Note that IIW.Jil <1<=> <1 Vw 3 "" l+L{jw) <=> < 11 + L{jw)l, \;/ w. The last inequality says that at every frequency,.the critical. point, 1, lies outside the disk of center L(jw), with radious as shown in Figure 2. 3. 1 Figure 2.3 Robust stability 14
PAGE 24
2.4 Robust Performance Now we look into performance of the perturbed plant. Suppose that the plant transfer function belongs to a set The general notion of robust performance is that internal stability and performance, of a specified type, should hold for all plants in When the nominal feedback system is internally stable, the nominal performance condition is jjWISII.., < I and the robust stability condition is jjWISjl,.,
PAGE 25
A necessary and sufficient condition for robust performance is < 1. (2.1) Assume (2.1), or equivalently, IIW.J11. and < I. (2.2) Fix A. In what follows, functions are evaluated at an arbitrary point but this is suppressed to simplify notation. We have and therefore This implies that w.s > w.s
PAGE 26
is maximum. Now pick A so that = The idea here is that A(j(J)) should rotate so that A(j(J))W,.(j(J))T(j(J)) is negative real. Now we have So from this and (2.3) there follows (2.2). The robust performance condition says that the robust performance level 1 is achieved. More generally, let's say that robust performance level a is achieved if <1 and
PAGE 27
w;s U). Alternatively, we may wish to know how large the uncertainty can be while the robust performance condition holds. To do this, we scale the uncertainty level; that is, we allow ll to satisfy IIAIIU)
PAGE 28
So a necessary condition that the performance criterion IIWISII < 1 be achievable is that the weight satisfy IWI(z)l < 1. In words, the magnitude of the weight at a right halfplane zero of G or F must be less than 1. Similarly, suppose that L has a pole p in Then llw;J1lco I so a necessary condition for the robust stability criterion llw;J1lco < 1 is that the weight fV; satisfy lw;(p)l < 1. 2.5 MixedSensitivity Formulation Consider the multivariable feedback system shown in Figure 2.4. In order to quantify the multivariable stability margins and performance of such systems, you can use the singular values of the closedloop transfer function matrices from r to each of the three outputs e, u and y. def S(s) =(I+ L(s))1 def R(s) = F(s)(I + L(s))1 def T(s) = L(s)(l + L(s))1 =IS(s) 19
PAGE 29
where L(s) = G(s)F(s) command I .. _; plant Figure.2.4 Block diagram of the multivariable feedback control system The two matrices S(s) and T(s) are known as the sensitivity function (closedloop error transfer function from r to e) and complementary sensitivity function (closedloop output transfer function from r toy), respectively. The matrix (closedloop.control transfer tunction from r to u) has no common name. The singular value Bode plots of each of the loop transfer function matrices S,R,and T play an important role in robust multivariable control system design. The singular values of the loop transfer function matrix L(s) are important because L determines the matrices S(s) and T(s). The singular values of S determine the disturbance attenuation since S is in fact the closedloop transfer 20
PAGE 30
function from disturbance d to plant output y. Thus a disturbance attenuation performance specification may be written as G(S(jm)) (j(i})j (2.4) where is the desired disturbance attenuation factor. Allowing WJ(jm) to depend on frequency m. The singular value Bode plots of R(s) and of T(s) are used to measure the stability margins of multivariable feedback designs in the face of additive plant perturbations (dA) (Figure 2.5) and multiplicative plant perturbations (dM), respectively. Let us consider how the singular value Bode plot of complementary sensitivity T(s) determines the stability margin for multiplicative perturbations dM. The multiplicative stability margin is, by definition, the "size" of the smallest stable dM(s) which destabilizes the system in with dA=O. 21
PAGE 31
PERTIJRBED PLANT 6. (s) A e r F(s) r oooouoooooooooooooooooooooooO Figure 2.5 Additive/multiplicative uncertainty Taking a(AMUOJ.)) to be the definition of the "size" of AM(jm), you have the following stability theorem [6]: Robustness Theorem 1: Suppose the system in Figure 2.5 is stable with both AA and AM being zero. Let AA = 0. Then the size of the smallest stable AM(s) for which the system becomes unstable is The smaller is a(TUm)), the greater will be the size of the smallest destabilizing multiplicative perturbation, and hence the greater will be the stability margin. A similar result is available for relating the stability margin in the face of additive plant perturbations 22
PAGE 32
to R(s). Let us take a(AA(jm)) to be our definition of the "size" of AA(j(J)) at frequency m. Then, you have the following stability theorem [6]. Robustness Theorem 2: Suppose the system is stable when AA and AM are both zero. Let AM = 0. Then the size of the smallest stable for which the system becomes unstable is As a consequence of Theorems 1 and 2, it is common to specify the stability margins of control systems via singular value inequalities such as a(R(jm)) a(T(jOJ)) IW3l(j(JJ)I (2.5) (2.6) where and IW3(j(JJ)I are the respective sizes of the largest anticipated additive and multiplicative plant perturbations. It is common practice to lump the effects of all plant uncertainty into a single fictitious multiplicative perturbation AM, so that the control design requirements may be written 23
PAGE 33
IWI {jw)l; Ol(T(jw)) jm1 {jw)j. It is not uncommon to see specification on disturbance attenuation and multiplicative stability margin expressed directly in terms of forbidden regions for the Bode plots of Ol(L(jw)) as "singular value loop shaping" requirements. Here is an important point to note for control system designers. In choosing design specifications Hf and W3 the 0 db crossover frequency of the singular value Bode plot .of u:;1 must be sufficiently below 0 db crossover frequency of or the performance requirements (2.4). and (2.6) will not be achievable; more precisely, we require {jco)) + {jco)) > 1 V co (2.7). MixedSensitivity approach of the robust control system design is a direct and effective way of achieving multivariable loop shaping. In the mixedsensitivity problem formulation, nominal disturbance attenuation specifications and stability margin specifications equations (2.4) and (2.6) are combined into a single infinity norm specification of the form 24
PAGE 34
(2.8) where is the closedloop transfer function from ul to yl in Figure 2.6 and def [ WiS] TYIUI = (2.9). AUGMENTED PLANT P(s) __ .., .. ...,,., .,. ... v; .... .......... ..... Figure 2.6 Weighted mixed sensitivity problem This is the mixedsensitivity cost function, so called because it penalizes both sensitivity S and complementary sensitivity T. Note that if you augment the plant with the weights Wi(.5') and WJ(s) as shown in Figure 2. 6, then wrap the feedback F(s) from output channel )'2 back to input channel uz, the resulting nominal (i.e. llM = 0) closed 25
PAGE 35
loop transfer function is precisely the T;t111 (s) given by (2.9). The Robust Control Toolbox function augtf [6] performs this plant augmentation. The mixed sensitivity cost function has the attractive property that, it provides a much simplified, and nearly equivalent, alternative to the canonical robust control problem for the case of the robust sensitivity problem. It turns out that if (2.8) is strengthened very slightly to IIO> < I/ .fi then robust sensitivity performance can be guaranteed; that is, I 'TIT. ( )j '> YYI }OJ Ui(S(jm))for every multiplicative uncertainty AM satisfying a(AM(j{J))) jWJ(Jw)j This is because in this case the T;tu1 associated with the corresponding canonical robust control problem becomes simply T;tul = [/,/]. 26
PAGE 36
For any S(s) and T(s), it may be shown that [ 6] This relationship simplifies the robust control synthesis problem by achieving a mixed sensitivity design with the transfer function matrix 27
PAGE 37
2.6 BInfinity Optimal Control Synthesis Method The Hm optimal control synthesis method is available in the Robust Control Toolbox [6] to design a robust stabilizing feedback control law such that the robustness inequality II1Ylulll
PAGE 38
2 An HJ "suboptimal" controller has order equal to that of the augmented plant (nstate). An HJ optimal controller can be computed having at most (n1) states. 3. In any weighted mixed sensitivity problem formulation, the HJ controller always cancels the stable poles of the plant with its transmission zeros [3]. 4. In the weighted mixed sensitivity problem formulation [2], any unstable pole of the plant inside the specified control bandwidth will be shifted approximately to its jwaxis mirror image once the feedback loop is closed with HJ controller. Property 1 means that designers can ultimately achieve very precise frequencydomain loopshaping via suitable weighting strategies [6]. For example, you may augment the plant with frequency dependent weights WI, and fVl. Then, if there exists a feasible controller that meets the frequency domain constraints, the software hinf [6] will find one that ultimately "shapes" the signals to the inverse of the weights. This enables the HJ to achieve the best results. If you impose demanding design 29
PAGE 39
requirements then the minimal achievable norm may be greater than one, in which case no solution exists to the standard control problem in which the goal is to find a controller for which
PAGE 40
3. Observer Riccati SR 0. The Riccati equation associated with the observer dual of the fullstate feedback control problem must have a real, positive semidefinite solution SR. Again the results of [5] are used to avoid numerical instabilities. 4. A.max(PRSR)
PAGE 41
CHAPTER 3 Simulation Examples and Results 3.1 Benchmark Problem Plant Description: Consider a twomass spring system shown in Figure 3.1 which is a generic model of an uncertain dynamical system with a rigidbody mode and a vibration u w Figure 3.1 The benchmark problem It is assumed that for the nominal system, m1=m2=1 and k=1 with appropriate units and time in units of second. A control force acts on body 1 and the position of body 2 is measured, resulting in a noncolocated control problem. Use Lagrange's equation to derive the dynamic equations of the spring coupled masses.
PAGE 42
L=TV L = !k(m z2 +m z2)!k(z z )2 2 II 22 2 2 I d(iL) m z dt a1 I I X4 = k (X2 XI ) m2 This system can be represented in statespace form as: 33
PAGE 43
x1 0 0 1 0 0 0 .:b 0 0 0 1 X3 = kjm1 kfm 0 0 X2 0 0 X3 + lfm1 {U+WI)+ 0 W2 X.. k/1112 k/1112 0 0 X4 o ljm2 where XI and are the positions of body 1 and body 2, respectively; u the control input acting on body 1; y the sensor output; WI and w2 the plant disturbances acting on body 1 and body 2, respectively. ,.... .c '0 ..._ = 0 10 0 10 ,::: : : . : : : . . . . I . I I ; I ; I ; I ; ........................... 0 : I ; 100 Phase (deg) 200 Figure 3.2 Nichols plot of the openloop plant 34
PAGE 44
c: .... d 0 .. 00 Q) "0 ..._ Q) 1:1.1 d .c 10 10 100 50 0 50 100 150 2qlQ1 ......... :, ......... : .. 0 0 0 . . ............. 10 Frequency ( rad/sec) 101 : : : : ::: : : : : : : :::::: ............ ........ r .... r .. OTTTlTI" ............ T ...... r .... rrTlTi :1: ::I 'II!If::: .. : : .... : : : : : : : : : ; : : : : : : : : : : : : : : ::: : : : : : : :: 0 0 0 0 r T T r r r r r r 0 0 0 0 : : : : : ::: : : : : : : :: 0 0 0 0 0 0 : : i .... : ... i ... : .. i.; .......... 0 : : : i ... i .. i .. : . . . . . . .. . : : : : : : : : : : . . . . .. . . . . .. . . . . .. . . . . . 10 Frequency ( rad/sec) 101 Figure 3.3 Bode plot of the openloop plant 35
PAGE 45
.g .3 l 15 10 r 5 10 : : . . 20 Time (sec) 30 40 Figure 3.4 Impulse response of the plant Nichols and Bode plots of the openloop plant are shown in Figures 3.2 and 3.3, repectively. Figure 3.4 shows the impulse response of the plant and it is unstable. Now we have to design a controlgain linear feedback controller of the form X=AX+Bu y=CX+Du with the following properties: 1. The closedloop system is insensitive to highfrequency sensor noise. 36
PAGE 46
2. Reasonable performance/stability robustness and reasonable gain/phase margins are achieved with reasonable bandwidth. 3. Reasonable control effort (e.g., peak control input) is used. 4. Reasonable controller complexity (e.g., controller order) is needed. The singular value design specifications are: 1. Performance spec.: Minimize the sensitivity function as much as possible. Sensitivity function (S) (Figure 3.5) specification; 1 0.1*(s 2+2s+1) WI (s)= (l+(s/10))2 2. Robustness spec.: 20 db/decade rolloff and at least 20 db at 10 rad/sec. Complementary sensitivity function (/S) (Figure 3.5) S:l;)ecification w3 1 (s) = 2 *(1 + (s/30)) s/10 37
PAGE 47
40 '"!, i i . . . . . 30 j j j l j l l ............................... ""' ................................ ! ! !fM< ! ! !! .. : : : :::::: : : : :: :: : 20 .. .c "0 '' c:: 10 t\l d ....... ...... ; .. ) ... i .. i .. ..... .... i .. ) ... i .. ;. :: : ....... .... ..!. .l...! .. UH! ......... .i.d .......... .L. ... I .. ..I..!..l..!.ll 1 1 llllll l l ; j 1 1 llll : : : ::::: : : : : : : :::: 0 : : : ::::: : : : : . . ....... : : : :::: r ..... ... rllrnr .... rrrr irr ...... 10 . . . . . . . ...... ....... .. :::......... r: .. rrrr: : 0 0 : : : :::: . . : : : : : 1_001 10 101 102 Frequency ( rad/sec) Figure 3.5 Bode plot of weighting functions Note that because '3(s) is an improper transfer function (i.e., has more zeros than poles), it cannot be realized in statespace form; but WJ(s)G(s) is proper. This particular '3(s) ensures that the matrix P(s) is full rank as required by hinf [ 6]. 38
PAGE 48
The hinf function solves the smallgain infinitynorm robust control problem; i.e., find a stabilizing controller for an augmented system P(s) such that the closedloop transfer function satisfies the infinitynorm inequality t:. IITYIIIIIL, = S':,P O"max {J;nUI {jOJ)) < 1. Because has no statespace realization, the Mfile augtf [6] can be directly employed here [2]. 1. Find a stabilizing controller F(s) such that the infinity norm of transfer function J;nUI is minimized and is less than or equal to one. The J;nUI singular value Bode plot associated with each design will indicate how close the design is to the specifications. The Robust Control toolbox function hinfopt [6] automates this iteration. Hinfopt performs "yiteration". to compute the optimal Hm controller using the twoRiccati formulae of hinf [6]. The output gamopt is the optimal "Y" for which the cost function T;nu, can achieve under a preset tolerance [6]. 39
PAGE 49
> 00 .:.:.;....... ... .... ................................................. 0 : : :: .... .... l j .... ... .... . ............. ... ..... ................ ... .. ................ .... ...... .. ... .... 0 :::: : 00 0 0 ooo : :::: : ... 101 10 101 102 Frequency ( rad/sec) Figure 3. 6 H.., design cost function Tyau As shown in Figure 3.6, the cost function gets pushed to the "allpass limit" to 0 db), the sensitivity function S shown in Figure 3.7 gets pushed down more and more, consequently the complementary sensitivity function T shown in Figure 3.8 approaches to its associated weighting function T.JT1 "J 40
PAGE 50
: : : :::: ....... 20 .. ....... j .... j ... .... u. : ::: . . .... . . .... ....... 0 0.. 0 0000 0 0 0. 0000 : : ::::::: : : : :::::: 0 ...... 0 0. 0000 o 0. 0000 oooo 10 ..... ;oo. 0 0 0 + 0 0 0 0 0 0 0. {. 0 0 0 0 {o ... ;. .. 0 .... .. { o 1 o : : : : :::: /. : : : : ::.. : : : : : : ::: : : : : : :: ....... i HWi l rrnrmrrrnrmrrrnn .. .1":: :::: : : : :::::: : : ::::::: : : : :::: =irtfll'i:=!o\!iooooooo\\====iO:i\i;.;..,.,: .:.;.:.:0''0'ii=i=; j j j j i i = i j 20 30 101 10 101 102 Frequency ( rad/sec) Figure 3. 7 H"' design sensitivity function & 1/Wl 60 40 .. 20 .D 't:l .._ > tZl 0 20 10o2 101 100 10 1 102 Frequency ( rad/sec) Figure 3. 8 H.., design comp. sensi ti vi ty function & If'WJ 41
PAGE 51
2. The resulting controller shown in Figure 3.9 is stable, 7th order, strictly proper, and nonminimum phase. 2.36E + 4s 6 + 7.47E + 6s 5 1.17E + 7s4 + I.ISE + 7s3 + 1. 79E + 7s2 + 9.38E + 6s+ 1.147 + S F(s) = :? + 2.40E + 3s 6 +9.34E + 4s 5 + 7. 71E + Ss4 3.4SE + 6s 3 + 9.80E + 6s 2 + l.l9E + 7s +4.8SE + 6 with the poles at s=2364.0, 30.0, 1.47.64i, 1.0.96E8i, 4.43. 42
PAGE 52
.. . i ...... . . ...... =i= . .. rr= 10 . . ,r = .... = .... = 101 Frequency ( rad/sec) i=i ... .. .. .... Tm ................ ... ................... ..... ' < < n >< ' : n:i :''' r rrrrr .. : : : ::::: 0 0 ....... . . . . I '"" r, .,;;,, .... ,_,!! 10 101 Frequency ( rad/sec) Figure 3.9 Bode plot of controller 43
PAGE 53
3. The loop transfer function G(s)F(s) Nichols and Bode plots are shown in Figures 3.10 and 3.11, respectively. Reasonable gain and phase margins are achieved for the nominal system, G.M.= 5.29 db and P.M.= deg. = ..... ttl. d I I 5 ..... ; .............. I i i 5 ;; ... ............. 15 . . . . . . 0 100 Phase (deg) 200 Figure 3.10 Nichols plot of loop transfer func. 44
PAGE 54
.. .g B 10 20 30 160 .. 170 '0 ........... ..c: 180 Q., ..... ...................... :, ...... :. ....... .; ... ; .. .: .. : .. ; ................ :, .......... ..... 0 . . . . . ..... 0 . . 0 0 0 0 0 rr rrrnr rr 0.. 0 . . . . .. 0 ++ :; . . . 0 0.. 0 . . . . . . . : : : : : : : : : : : : : : : 10 Frequency ( rad/sec) 10 Frequency ( rad/sec) 101 Figure 3. 11 Bode plot of loop transfer function G(s)F(s) 45
PAGE 55
4. The closedloop system step and impulse response plots are presented in Figures 3.12 and 3.13, respectively. A stable controller has been designed'for a spring mass coupled system for robust control design. Satisfactory robustness, performance has been achieved with reasonable control effort (e.g., peak control input) and controller complexity (e.g., controller order). In=> Control Force Out=> Body2 Position 0.5 ; :. 0 0.5 0 10 20 30 40 Time (sec) Figure 3.12 Closedloop system step response 46
PAGE 56
In=> Control Force Out=> Body2 Position 0.5 =:: . . . : : : . . . IU "'0 . . : : ::l . . . .... . 0 0.. 0.5 l:r . . . . . . . . . . . 0 10 20 30 40 Time (sec) Figure 3.13 Closedloop system impulse response 47
PAGE 57
3.2 Robust Control Design of Flexible Body Rocket System Plant Description: For a launch vehicle with rigid body mode, a bending mode and a gimbaled engine as shown in Figure 3.14, we need to design a robust autopilot. TLgjl 8RJGID I s2 Ma/1 OM (')_81MU Th(xs)aiMU /M 8FLEX s2 + 2'Cill' + aP Figure 3. 14 Hrn Autopilot design model G(s) Figure 3.15 Block diagram of rocket control system The airframe model is shown in Figure 3.14 where: 48
PAGE 58
T = Total thrust Lg = Moment arm from center of gravity to effective thrust deflection point I = Moment of inertia M = Total mass of airframe Ma = qSFdCma q = Dynamic pressure SF = Aerodynamic reference area = Relative 1st mode slope at IMU station = Relative 1st mode displacement at gimbal station w = 1st structural mode frequency s = 1st mode damping 49
PAGE 59
10 0 .10 .c "0 ...._ c:: 20 0 30 I : I : I : ............................ : .............................. : ........................ ..... : .............. : : I : : l : l I . : : ............. :!1 i 1 r 0 100 Phase (deg) 200 Figure 3.16 Nichols plot of the openloop plant 50
PAGE 60
'@ .g ......__, 40 Q.) 100 .....
PAGE 61
0 Out=> IMU Deflection 0.2 ................... ; ..................... :. ..................... : ..................... : .................. : : : : . . . . . . : : : : : : . . . QJ 0.4 "'tj ::I .... . . . ...... . . ........ .: ..................... :. ..................... : ..................... : .................. 0 : : : : . . . . 0.. 0.6 . . . . . . 0 0 : 0 0 0 0 0 0 : : : . . . . . . . . . . . 0.8 . o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o I o o o o o o o o o o o o o o o o o o o o o o: o 0 o o o o o o o o o o o o o o o o o o o o o o o 0 o o o o o o o o o o o o . . . . . . . . . . . : : : . . . . 1 0 0.1 0.2 0.3 0.4 0.5 Time (sec) Figure 3.18 Impulse response of the plant Nichols and Bode plot of the openloop plant are shown in Figures 3.16 and 3.17, respectively. Figure 3.18 shows the impulse response of the plant and it is unstable. Now we have to design a controlgain linear feedback controller of the form X=AX+Bu y=CX+Du with the following properties: 1. The closedloop system is insensitive to highfrequency sensor noise. 52
PAGE 62
2. Reasonable performance/stability robustness and reasonable gain/phase margins are achieved with reasonable bandwidth. 3. Reasonable control effort (e.g., peak control input) is used. 4. Reasonable controller complexity (e.g., controller order) is needed. The singular value design specifications are: 1. Performance spec.: Minimize the sensitivity function as much as possible. Sensitivity function (S) (Figure 3.19) specification; 1 (s2 +20s+100) WI (s) = 10000 2. Robustness spec.: 40 db/decade rolloff and at least 20 db at 100 rad/sec. Complementary sensitivity function (/S) (Figure 3.19) specification 1( ) 100000 W3 S =s2 53
PAGE 63
.5 ttl 0 : : : : ::::: : ': : : ::::: : : :: 40 ........ ..... + ........ j .; : 20 0 40 10 ........ . .... 0 . . . . . ..... . . . . : : : ::::: 101 Frequency ( rad/sec) Figure 3.19 Bode plot of weighting functions Note that because WJ(s) is an improper transfer function (i.e., has more zeros than poles), it cannot be realized in statespace form; but WJ(s)G(s) is proper. This particular WJ(s) ensures that the matrix of P(s) is full rank as required by hinf [6]. The hinf function solves the smallgain infinitynorm robust control problem; i.e., find a stabilizing controller F(s) for an augmented system P(s) such that the closedloop transfer function satisfies the infinitynorm inequality 54
PAGE 64
li IITYI'" !!Ill= S':,P O"max Um)) < 1. Because has no statespace realization, the Mfile augtf [6] can be directly employed here [2]. 1. Find a stabilizing controller F(s) such that the infinity norm of transfer function is minimized and is less than or equal to one. The TYI"' singular value Bode plot associated with each design will indicate how close the design is to the specifications. The Robust Control toolbox function hinfopt [6] automates this iteration. Hinfopt does Hill "yiteration" to compute the optimal Hill controller using the loopshifting twoRiccati formulae of hinf. The output gamopt is the optimal "Y" for which the cost function can achieve under a preset tolerance. 55
PAGE 65
0.005 $'0.01 "'0 .._ > tn0.015 O.O?foo ........ . . : .. .. ....... ; .......... : .. . .. . ................................ : : : : : :li1!: : : : ::: 0 . . . : : : ::: ......... t .. : ........ . . : ... . . . . . . . . . . . . . 101 102 Frequency ( rad/sec) Figure 3. 2 0 H.., design cost function As shown in Figure 3.20, the cost function gets pushed to the "allpass limit" (i.e., to 0 db), the sensitivity function S shown in Figure 3.21 gets pushed down more and more, consequently the complementary sensitivity function T shown in Figure 3.22 approaches to its associated weighting function w.1 3 56
PAGE 66
1()3 Frequency ( rad/sec) Figure 3.21 HtrJ design sensitivity function & I/Wi 0 . . . . : : : ::::: 40 30 .. 20 .c "'0 ._. ...... . : ..... ... .. .. .. 1: .. i I, rIJI!:.: 1 ; 10 00 (i : 0 H 11T l. nn; 10 1_0oo 101 102 Frequency ( rad/sec) Figure 3.22 HtrJ design comp sensitivity function & 1/ 57
PAGE 67
2. The resulting controller shown in Figure 3.23 is stable, 6th order, strictly proper, and nonminimum phase. 1.37E +9sS5.84E +lOt'8.06E + lls36.40E + 12s22.12E + 13s4.46E + 13 F(s)= s6 + 1.40E + 4s53.11E + 65" + 1.87E +9s3 + S.llE + 10s2 +4. 14E + lls+ 1.41E + 12 with the poles at s=1.37+4, 1.18E+2.39E+2i, 10.0, 10.0, 8.31. 58
PAGE 68
120 100 ,.... 80 '0 '"' = .... 60 40 1_001 ..... ..... ..... : ., !I : : : : 10 10 1 102 Frequency (rad/sec) Frequency ( rad/sec) Figure 3. 2 3 Bode plot of controller F(s) 59
PAGE 69
3. The loop transfer function G(s)F(s) Nicholsand Bode plots are shoWn in Figures 3.24 and 3.25, respectively. Reasonable gain margin is achieved for the nominal system, G.M.= 6.50 db. 10 5 0 ... .0 '0 ............ c:: 5 t!) 10 15 I : I : : I. : ....................... ::::; ........ ........... .... ....... ; ......... ............... ..... ; ............. l l I I j 'rr : I : : 0 100 Phase (deg) 200 Figure 3. 24 Nichols plot of loop transfer func. G(s)F(s) 60
PAGE 70
...................... .. .. .. .. .. .. .. .. .. . ............. .... ...... .. .. . .. . :7; ....... ::.;: : ....... : .... : ... : . .. ..... .................. ., .. .. .. ...... . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. . .. 10 101 102 103 Frequency ( rad/sec) i:i:IHjjl :.::::, f ... .... c:+.' .. I. ::r I J:[I!ll!. : : ::::: . . . . . . . .... : : : . . . . 10 101 102 1()3 Frequency ( rad/sec) Figure 3. 25 Bode plot of loop transfer function G(s)F(s) 61
PAGE 71
4. The closedloop system step and impulse response plots are presented in Figures 3.26 and 3.27, respectively. A stable eontroller has been designed for a flexible body rocket system for robust control design. Satisfactory robustness, performance has been achieved with reasonable control effort (e.g., peak control input) and controller complexity (e.g., controller order). . . 0. 0. 0 0 0 : 0. 0 0. 0 0 0. 0 0 0.... 0 0 0 : 0. 0 ... 0 . . 0.5 . . . . . . . . . . . . 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0 .... 0.50 . . 0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 0.5 1 1.5 Time (sec). 2 2.5 3 Figure 3.26 Closedloop system step response 62
PAGE 72
"0 ::s ... 0.. 5 4 3 2 1 00 . . .... ,, ...... ", : : . . ..........  . ................ 0.5 1 1.5 Time (sec) 2 2.5 3 Figure 3. 27 Closedloop sy.stem: impulse response. 63
PAGE 73
3.3 Robust Control Design of Hydraulic Actuator For a hydraulic actuator control system model shown below we need to design a robust controller. AUGMENTED PLANT P ( s) f ............................................................... ........ ... ........... ..,. ........................... ........................... ........................................................... 1 > : Y la controller Figure 3.28 Block diagram of actuator control system 10 I I I I : I .. ............. : ........ ......... : ............. 1 .... : ......... : I I . I : I 0 100 Phase (deg) 200 Figure 3.29 Nichols plot of the openloop plant 64
PAGE 74
,........ .D "0 r:: d 30 20 .............. 10 ........ ;: ..... 0 10 ........ ..... 20 .............. 30 10o1 =i . .. ooooooooo#oooooooOoooo.,ooooo . .. . .. 0 . ... :i:i 0 : : : : ... . .. . .. . .. 0 0 . .. . .. 0 0 : : : : 0 0 0 'l' ..... ; ... .. ; . .. . .; .. ; ........... ; ..... . . .. :; ........... ; ..... :: : . . . === . 10 101 Frequency ( rad/sec) 102 ..... jrrrrnrr i : : : ::::: ...... :: IJJrmr I ::r::;;;::::::r:::rinr! : : : : ::::: : : : ::::: : : : :::: ...... j .... ((. ...... .... i ... t .. j. ; .. ; .; .; ; ........... ; ..... : 0 0 0 0 . . . . . . . . . .. : : : ::::: : : : ::::: ...... . . . . . . . .. . ..... n;;;;; ....... n:r::: n+:; 10 101 102 Frequency ( rad/sec) Figure 3.30 Bode plot of the openloop plant 65
PAGE 75
II) '0 ::::2 ..... c.. 14 12 10 8 6 4 2 00 In=> Act Command Out=> Act Deflection ... L ... .r I rft ooooooo.ooo ... ........ o.oo.ooo r ... o ... o ............... ooloo ... ... .. o .. ... ... o ... 00000000. oooool"""o 00 ............. ... !" ........................ to Oo 1 2 Time (sec) 3 4 Figure 3.31 Impulse response of the plant Nichols and Bode plot of the openloop plant are shown in Figures 3.29 and 3.30, respectively. Figure 3.31 shows the impulse response of the plant and it is stable. However, we would like to design a robust controller to get better system margins. We need to design a controlgain linear feedback controller of the form X=A X+Bu y=CX+Du with the following properties: 66
PAGE 76
1. The closedloop system is insensitive to highfrequency sensor noise. 2. Reasonable performance/stability robustness and reasonable gain/phase margins are achieved with reasonable bandwidth. 3. Reasonable control effort (e.g., peak control input) is used. 4. Reasonable controller complexity (e.g., controller order) is needed. The singular value design specifications are: 1. Performance spec.: Minimize the sensitivity function as much as possible. Sensitivity function (S) (Figure 3.32) specification; I .. (s/30) +I WI (s) = l.25((s/l000) +I) 2. Robustness spec.: 40 db/decade rolloff and at least 20 db at 1000 rad/sec. Complementary sensitivity function (1S) (Figure 3.32) specification 1 2E7s2+1.2E3s+1 WJ(s)=15s2 + 2E3s + 0.1 67
PAGE 77
30 20 ,..., 10 .c "'0 ...._, = ca 0 0 10 ........ . . . . 0 0 . . . . 1$pec riTrll : : : :::::: : : ::::::, : : :::: .. l l ! l l ! l i l l'\ I I !! I l :::::::: ::\.:::: Pedonnance spec ci!Wi) i i! i ! i'
PAGE 78
ll IIT,..,.IIco O"max (T,..,.. (jOJ)) < 1. Because ij)(s) has no statespace realization, the Mfile augtf [6] can be directly employed here [2]. 2. Find a stabilizing controller F(s) such that the infinity norm of transfer function is minimized and is less than or equal to one. The singular value Bode plot associated with each design will indicate how close the design is to the specifications. The Robust Control toolbox function hinfopt [6] automates this iteration. Hinfopt does Hco "yiteration" to compute the optimal nco controller using the loopshifting twoRiccati formulae of hinf. The output gamopt is the optimal "Y" for which the cost function Ty.,.. can achieve under a preset tolerance. 69
PAGE 79
0 0.4 = ,... 0.6 .c '0 > 0.8 = Cl:l 1 1.2 111Jo Frequency ( rad/sec) Figure 3. 33 HJ design cost function TYiw As shown in Figure 3.33, the cost function gets pushed to the "allpass limit" (i.e., to 0 db), the sensitivity function S shown in Figure 3.34 gets pushed down more and more, consequently the complementary sensitivity function T shown in Figure 3.35 approaches to its associated weighting function r.:rr1 "3 70
PAGE 80
Frequency ( rad/sec) Figure 3.34 Hm design sensitivity function & VW! 101 102 103 Frequency ( rad/sec) Figure 3. 35 Hm design comp sensitivity function & VWl 71
PAGE 81
2. The resulting controller shown in Figure 3.36 is stable, 5th order, strictly proper, and nonminimum phase. 8.89E Js5 + L63E +6s4I. 73E +9s3S.ISE + 10s 2 1.18E + 12s+ 1.68E + 12 F(s) = ,s5:+L76E_+_4_s4..,...+2.11E+7s=34.63_E_+_9""'s2:4.83E_+_l_l_s +L09E_+_l3with the poles at s= 1.63E +4, 1.08 +2.93 + li, 1.03 +3, 30.0. 72
PAGE 82
. 5 0 30 20 10 0 10 100 !l 50 ..... lbo 101 : : : ::: 0 0 ...... 0 0 0 0 0 0 0 0 . ... 0. :::::::: 0 0 . ..... 0 . ..... 0 0 0 . . . 0 0 =i=ii=i . .... . .... . .. 0 0 0 0 . .. : : : : 0 : 0 .: ........... ..... :... . . . ::: .. . . . . . . .; ........... ; ...... ;; .... . . . . . . 102 Frequency ( rad/sec) ..... . . . . . 103 0... ... r!rr=i= rll ... : 0 0 0 0 . . . . . . 0 . . . : : : . . . . . ::::: : : : ::: : . ... . ::. : '!' : : ::: : :. :. 0 0 0... 0 0. 0 0 0 0... 0 0 0 0 0 0.... 0 0 0 0 . . . . . . . . . . . . . . . . . . . . . ..... . . . . 101 Frequency ( rad/sec) Figure 3.36 plot of controller 73
PAGE 83
3. The loop transfer function G(s)F(s) Nichols and Bode plots are shown in Figures 3.37 and 3.38, respectively. Reasonable gain and phase margins are achieved for the nominal system, G.M.= 17.75 db and P.M.= 59.64 deg. .. .0 '0 '" c:: ca d 10 0 10 I I I I : I ............................ ; .............................. ; ........................ .................. . . . 0 100 Phase (deg) 200 Figure 3.37 Nichols plot of loop transfer func. 74
PAGE 84
20 10 .. ,........_ ..c 0 "CC '"' "CC 10 ::I ....... .... .. s:: bO 20 ::;E . 30 =: 120 .... .. .. ... 0 0 : ::. 0. 0 0 : :. : :: :: :: : .. . ll ...... . . . .. : : :::: :: 0 : ; ... ;., .. ,.<. r ; : : l ........ ....... ::j j I''' i' ::: :::... 0 0 0 0 ....... 0 0 0 0 0 0 0 . . .... \:i : nnjllHtltll 10 .... . . .... . . .... 101 Frequency ( rad/sec) Frequency ( rad/sec) Figure 3. 38 Bode plot of loop transfer function G(s)F(s) 75
PAGE 85
4. The closedloop system step and impulse response plots are presented in Figures 3.39 and 3.40, respectively. A stable controller has been designed for a hydraulic actuator system for robust control design. Satisfactory robustness, performance has been achieved with reasonable control effort (e.g., peak control input) and controller complexity (e.g., controller order). In=> Act Command Out=> Act Deflection ! l 1 ,.... .................. 0.8 i l!j ................... .g 1 I I I .a 0.6 ] 0.4 : j I 0.2 ' i i i i 0.1 0.2 0.3 0.4 0.5 Time (sec) Figure 3.39 Closedloop system step response 76
PAGE 86
In=> Act Command Out=> Act Deflection ! ! 60 : : : : . . . . . . . . : : : : : : : : . . . . 40 : : : : : : : : . . . . . . . . . . 20 ++ji0 ..... ,... i i i i 0 0.1 0.2 0.3 0.4 0.5 Time (sec) Figure 3.40 Closedloop system impulse response 77
PAGE 87
3.4 Robust Control of Aircraft Lateral Dynamics One of the most important applications of statespace methods is in the design of control system for aircraft. The forces and moments on such vehicles are produced by the motion of the vehicle through the air and are obtained, in principle by integrating the aerodynamic pressure over the entire surface of the aircraft. The aircraft pitch motion is typically controlled by a control surface called the elevator. The roll is controlled by a pair of ailerons, and the yaw is controlled by a rudder. In many cases the system lateral and longitudinal dynamics are only lightly coupled, and the control system can be designed for each channel without regard to the other [7]. Thus in this example controller using the rudder will be designed for the yaw channel. Plant Description: Yp fp (Yr ) g YA JR P=P+P+ 1 r+f/J+OA+OR v v v v v v =p 78
PAGE 88
p JP/V YP/V (Yr/V)I gfV p YAjV YR/V p Lp LP Lr 0 p LA LR l%1 = + r Np NP Nr 0 r NA NR 0 1 0 0 rp 0 0 .746 .006 .999 .0369 12.9 .746 .387 0 = 4.31 .024 .174 0 p .0012 .0092 p + 6.05 .952 I I r .416 I. 76 u. 0 1 0 0 rp 0 0 IPI=Io 1 o ol +lo olloA I r 0 0 I 0 r 0 0 On rp I ; I ; I ; 10 ............................ ............................. [.. ..................... .! ..... .............. l j I : 0 10 0 I ; I ; I ; I ; I ; I ; T; 100 Phase (deg) I I 200 Figure 3.41 Nichols plot of the openloop plant 79
PAGE 89
30 0 20 0 0.. .. ................................................ n = 10 ... .. :: :.: :: : ::: :: .. :: ::; .. ...... .c 'C c:: 0 ..... .. . 0.. .. = 0 . . .. . i: .. c:> 10 20 ..... : : :::: :: : . ,., . < .. it t+ +; llljjl.ti. I 3lb2 101 10 101 102 Frequency (rad/sec) 250 200 =\ : ... .... bl.l C1) 'C ... C1) 150 1;12 ..c: : ... 100 Frequency ( rad/sec) Figure 3.42 Bode plot of the openloop plant 80
PAGE 90
1 In=> Rudder Defl Out=> Yaw Rate ! ! 0.5 jtj:j0 .'C ::J ..... .... 0.5 c.. 1 .. l 1.5 ................... ] ...................... ..................... 1 .. ]; I : i i i i 0 10 20 30 40 50 Time (sec) Figure 3.43 Impulse response of the plant Nichols and Bode plots of the openloop plant are shown in Figures 3.41 and 4.42, respectively. Figure 3.43 shows the impulse response of the plant and it is a very slow system. The system does get to zero after running the simulation for long time (beyond 100 seconds). Now we have to design a controlgain linear feedback controller of the form 81
PAGE 91
. X= A X+Bu y=CX+Du with the following properties: 1. The closedloop system is insensitive to highfrequency sensor noise. 2. Reasonable performance/stability robustness and reasonable gain/phase margins are achieved with reasonable bandwidth. 3. Reasonable control effort (e.g., peak control input) is used. 4. Reasonable controller complexity (e.g., controller order) is needed. The singular value design specifications are: 1. Performance spec.: Minimize the sensitivity function as much as possible. Sensitivity function (S) (Figure 3.44) specification; WIJ(s) = (s+ l)(s+ 1) 10((sj50) + 1)2 2. Robustness spec.: 40 db/decade rolloff and at least 20 db at 10 rad/sec. Complimentary sensi ti vi ty function (!S) (Figure 3 4 4) specification 82
PAGE 92
_ 1 (s/30+1)2 w3 (s) = 0.03(s+ 1)2 101 10 101 102 103 Frequency.( rad/sec) Figure 3.44 Bode plot of weighting functions Note that because W3(s) is an improper transfer function (i.e., has more zeros than poles), it cannot be realized in statespace form; but W3(s)G(s) is proper. This particular ijj(s) ensures that the matrix of P(s) is full rank as required by hinf [6]. 83
PAGE 93
The hinf function solves the smallgain infinitynorm robust control problem; i.e., find a stabilizing controller F(s) for an augmented system P(s) such that the closedloop transfer function satisfies the infinitynorm inequality l:J. IIJ;..m Ito =S'!,P Umax (J;..u (jm)) < 1. Because has no statespace realization, the Mfile augtf [6] can be directly employed here [2]. 1. Find a stabilizing controller F(s) such that the infinity norm of transfer function J;..m is minimized and is less than or equal to one. The T,.u. singular value Bode plot associated with each design will indicate how close the design is to the specifications. The Robust Control toolbox function hinfopt [6] automates this iteration. Binfopt does fla> "yiteration" to compute the optimal Ha) controller using the loopshifting twoRiccati formulae of hinf. The output gamopt is the optimal "Y" for which the cost function J;..u can achieve under a preset tolerance. 84
PAGE 94
... "ll 11111111 : :r UII : 1 :n: :::::::::: :::J:l:")1!1::::: ::1::::::1:1. [[[ 11 [1[11 f 11 [ 1111 1 [ f f lni 101 102 103 104 Frequency (rad/sec) Figure 3 4 5 fl> design cost function r,.UI As shown in Figure 3.45, the cost function gets pushed to the "allpass limit" (i.e., to 0 db), the sensitivity function S shown in Figure 3.46 gets pushed down more and more, consequently the complementary sensitivity function T shown in Figure 3.47 approaches to its associated weighting function TI"T1 "3 85
PAGE 95
101 10 101 102 103 104 Frequency ( rad/sec) Figure 3.46 HJ design sensitivity function & 1/W! .... : : ::::::: t l lUl1!W5 l nn 11 """_,111 . . n",, . .. .. "1.,." II > tn . .... . : : : : :::::: :. 10 101 102 103 104 Frequency ( rad/sec) Figure 3.47 HJ design camp sensitivity function & 1/Wl 86
PAGE 96
2. The resulting controller shown in Figure 3.48 is stable, 8th order, strictly proper, and nonminimum phase. 3.6E+Ss1 2.4E+7s6 4.4E+8.r5 1.9E +9s4 4.1E +9s3 1.3E+9s2 4.0E +9s24E+7 F(s) = sll +8.4E +3s7I.7E +7s6L8E + 8.r54.9E + 8s4 + S.9E + 8s3 +3.9E +8s2 + 1.7E + 8s+ 4.7E +7 with the poles at S=5.15E+3, 3.20+3, 7.27, 1.13E1.52E1i, 1.23, 10.0 1.15 7i. 87
PAGE 97
30 20 10 Po1 10 101 102 1()3 Frequency ( rad/sec) ... II.<< rrlr : : :::" :Ilii'I". nii ... ......... i .,: ....... m.i :ii ........ !.J_! !I!! .... :.:: :' : :::::::: : :::::::: : ::::: . . . .. n . ..... . . ..... . ...... .... o o o I o # .. ....... o o o o 0 "' o o o I o o .. .. 0 I o o 0 o 0 ''" o o '" o "'' .. o I o o o o o o 0 o o oo o '"' oo ,,. I . ..... . . ..... . . . . : 0 : : . . ...... : : : : . ..... : : . . . . 10 101 102 103 104 Frequency ( rad/sec) Figure 3.48 Bode plot of controller 88
PAGE 98
3. The loop transfer function G(s)F(s) Nichols and Bode plots are shown in Figures 3.49 and 3.50, respectively. Reasonable phase margin is achieved for the nominal system, P.M.= 7.87 deg. .. .c '0 .._ = a C!l 10 0 . . . I I I I 10 ............................ : ...... ....... : ............... : ....................... .! ..... : ............. 20 4qoo 1 1II I .. .. i "! 0 100 Phase (deg) 200 Figure 3. 49 Nichols plot of loop transfer func. G(s)F(s) 89.)
PAGE 99
= .._ .g ::I .... =s bl) aJ '0 .._ aJ .c: 10 0 10 20 30 Frequency (rad/sec) 50 0 . : .. : .. ; .. ;.;\\iiii:r:\i.:::;i\',iii==O::\ii\\ I I I' !!I : ! I I !Ill ' : i I!,,, I I! !1:, 100 nn n = : = = = = = = n n 01.LL.3___j_.J.....l....LlillJ1 0' Frequency ( rad/sec) Figure 3.50 Bode plot of loop transfer function 90
PAGE 100
4. The closedloop system step and impulse response plots are presented in Figures 3.51 and 3.52, respectively. A stable controller has been designed for a aircraft lateral dynamics system for robust control design. Satisfactory robustness, performance has been achieved with reasonable control effort (e.g., peak control input) and controller complexity (e.g., controller order). 1 ........................ :::.. : 0 : 0 0. 0 0 . . . . . : : . .... .. .. :, ytj ................... j .................. . . 1 2 3 4 5 Time (sec) Figure 3.51 Closedloop system step response 91
PAGE 101
2.5 In=>Rudder Defl Out=> Yaw Rate . 2 0 .. ............. T ..................... f ..................... .................... T ................ .. . . . 1.5 ........... ......................................... ; ..................... ................. II) "'0 :::l .... 1 0.. ......... : 0.5 .................. .................... r ..................... ..................... ................. . 0.50 1 2 3 4 5 Time (sec) Figure 3.52 Closedloop system impulse response 92
PAGE 102
4 Conclusion The synthesis robust control design presented in this thesis demonstrates the applicability of an control synthesis technique to control systems such as twomass spring, flexible body rocket,. hydraulic actuator and aircraft lateral dynamics. The robustness and performance capability of the closedloop system was demonstrated with satisfactory results. It has also been shown through computer simulation that a satisfactory and reasonable controller was designed incorporating weighting functions. A controller design approach which has the potential to considerably reduce the complexity of control implementation over the system envelope and which exploits the robustness properties of the based controller was developed and demonstrated.
PAGE 103
APPENDIX A MATLAB Input File for Benchmark Problem
PAGE 104
%******************************************************** %*** TWOMASS SPRING SYSTEM *** %*** BENCHMARK PROBLEM FOR ROBUST CONTROL DESIGN *** %******************************************************** %File name: cart4.m !del cart4 !del cart4.met diary cart4 clear clg format % Input the nominal system k = 1 m1 = 1 m2 = 1 % Input the plant in state ag = [0 0 1 0 0 0 0 1 k/ml k/ml 0 0 k/m2 k/m2 0 0] bg = [0 0 1/ml 0] I cg = [0 1 0 0] dg = 0 space form % Settling time of about 15 seconds for the nominal system % with m1=m2, k=1. Tset=4/Zetaw Tset=15 ZetaW=4/Tset ag2 = ag + ZetaW*eye(4,4) format long e eig(ag2) format w = logspace(2,4); nikl_ol(ag,bg,cg,dg,1,w,260,[60,40]); 95
PAGE 105
grid title('NICHOLS PLOT OF OPEN LOOP PLANT') xlabel('Phase (deg)') ylabel('Gain (db)') pause meta cart4 clg axis [magp1,phap1]=bode(ag,bg,cg,dg,1,w); magp1=20*log10(magp1); semilogx(w,magp1) title('BODE PLOT OF OPEN LOOP PLANT') xlabel('Frequency (rad/sec)') ylabel( 'Gain (db)') grid pause meta cart4 t = 0:0.1:50; pimpulse=impulse(ag,bg,cg,dg,1,t); plot(t,pimpulse) grid title('IMPULSE RESPONSE OF THE PLANT') xlabel('Time (sec)') ylabel('Amplitude') gtext('Control Force to Position of Body 2') meta cart4 pause % Input the weighting functions. numw1 = conv([l/10 1],[1/10 1]); denw1 = .1*[1 2 1]; numw3 = [1/10 0]; denw3 = 2*[1/30 1]; [magw1,phaw1]=bode(denw1,numw1,w); [magw3,phaw3]=bode(denw3,numw3,w); magw1=20*log10(magwl); magw3=20*log10(magw3); w1 = [numw1;denw1] w2 = [0.01;1] 96
PAGE 106
w3 = [numw3;denw3] semilogx(w,magw1,w,magw3) grid title('BODE PLOT OF WEIGHTING FUNCTIONS') xlabel('Frequency (rad/sec)') ylabel('Gain (db)') gtext ( Performance Spec ( 1 /W1) ) gtext('Robustness Spec (1/W3)') pause metacart4 clg subplot(211) semilogx(w,magp1,w,magw1,w,magw3) grid title('BODE PLOT OF PLANT AND WEIGHTING FUNCTIONS') xlabel('Frequency (rad/sec)') ylabel( 'Gain (db) ) gtext('Open Loop Plant') gtext('Performance Spec (1/W1)') gtext('Robustness Spec (1/W3)') subplot ( 212) semilogx (w, phap1, w, phaw1, w ,phaw3) grid xlabel('Frequency (rad/sec)') ylabel('Phase (deg)') gtext ( Open .Loop Plant ) gtext ( 'Performance Spec ( 1 /W1) ) gtext('Robustness Spec (1/W3)') pause meta cart4 clg pause % Plant augmentation for use in weighted mixedsensitivity H_inf design. [a,b1,b2,c1,c2,d11,d12,d21,d22] = augtf(ag2;bg,cg,dg,w1,w2,w3) format long e % H_inf optimal control synthesis via gammaiteration. [gamopt,af,bf,cf,df,acl,bcl,ccl,dcl] = hinfopt(a,b1,b2,c1,c2,d11,d12,d21,d22,1) 97
PAGE 107
disp(' COMPUTING BODE PLOT OF THE COST FUNCTION I ) svtt = sigma(acl,bcl,ccl,dcl,l,w); svtt = 20*logl0(svtt); semilogx(w,svtt); grid title('HINFINITY DESIGN COST FUNCTION Tylul'); xlabel('Frequency (rad/sec) '); ylabel('SV (db)'); meta cart4 pause disp(' COMPUTING BODE PLOTS OF SENS. & COMP. SENS FUNCTIONS I ) [a,b,c,d] = series(af,bf,cf,df,ag,bg,cg,dg); [acs,bcs,ccs,dcs] = feedbk(a,b,c,d,2); svs = sigma(a,b,c,d,3,w); svs = 20*loglO(svs); svt = sigma(acs,bcs,ccs,dcs,1,w); svt = 20*log10 (svt); semilogx(w,magw1,w,svs); grid DESIGN SENSITIVITY FUNCTION & 1/W1'); xlabel('Frequericy (rad/sec) '); ylabel ( 'SV (db) ) ; gtext ( '1/W1') gtext('Sensitivity Function') meta cart4 pause semilogx(w,magw3,w,svt); title('HINFINITY DESIGN COMP. SENSITIVITY FUNCTION & 1/W3'); xlabel('Frequency (rad/sec)'); ylabel('SV (db)'); grid gtext ( '1/W3 ) gtext('Complementary Sensitivity Function') meta cart4 pause % Find a stabilizing controller F(s). [numf,denf] = ss2tf(af,bf,cf,df,1) format 98
PAGE 108
[ contmag, contpha] = bode ( af, bf ,cf, df, 1, w) ; contmag = 20*log10(contmag); [as,bs,cs,ds] = series(af,bf,cf,df,ag,bg,cg,dg) [agf,bgf,cgf,dgf] = cloop(as,bs,cs,ds,l,l); [GFnum,GFden] = ss2tf(agf,bgf,cgf,dgf,l); [GFmag,GFpha] = bode(agf,bgf,cgf,dgf,l,w); nikl_ol(agf,bgf,cgf,dgf,l,w,260,[60,40]); grid title('NICHOLS PLOT OF LOOP TRANSFER FUNCTION G*F'); xlabel('Phase (deg) '); ylabel('Gain (db)'); pause meta cart4 clg axis ytstep = step(acl,bcl,ccl,dcl,l,t); pause ytimp = impulse(acl,bcl,ccl,dcl,l,t); pause % Find the gain and phase margins [gm,pm,wcp,wcg] = GFmag = 20*loglO(GFmag); Gainmargin = 20*loglO(gm) Phasemargin = pm clg. plot(t,ytstep(:,l)); grid; 2 I ) clg title('STEP RESPONSE OF TOTAL gtext('Input=>Control Force xlabel('Time (sec)'); ylabel('Amplitude'); meta cart4 pause plot(t,ytimp(:,l)); grid; CLOSED LOOP'); Output=>Position of Body title('IMPULSE RESPONSE OF TOTAL CLOSED LOOP'); 99
PAGE 109
gtext('Input=>Control Force, Body 2') clg xlabel('Time (sec)'); ylabel('Amplitude) '); meta cart4 pause subplot(211) semilogx(w,_contmag); grid; Output=>Position of title('BODE PLOT OF CONTROLLER F(s) '); xlabel('Frequency (rad/sec) '); ylabel('Gain (db)') subplot(212) semilogx(w,contpha); grid; xlabel('Frequency (rad/sec) '); ylabel('Phase (deg) ') clg meta cart4. pause subplot(211) semilogx(w,GFmag); grid; title('BODE PLOT OF LOOP TRANSFER FUNCTION G*F'); xlabel('Frequency (rad/sec) '); ylabel('Magnitude (db)'); subplot(212) semilogx(w,GFpha); grid; xlabel('Frequency (rad/sec) '); ylabel('Phase (deg) ') meta cart4 diary off 100
PAGE 110
APPENDIX B MATLAB Input File for Flexible Body Rocket System
PAGE 111
%******************************************************** %*** FLEXIBLE BODY ROCKET SYSTEM *** %*** ROBUST CONTROL DESIGN *** %******************************************************** %File name: rocketl.m !del rocket! !del rocketl.met diary rocket! clear clg format TLg_Iyy = 3.333333; MAlpha_Iyy= def imu = 1.12e4; TPhig_M = 3.87e+4; zeta = 0.5; omega= 7.87; numl = TLg_Iyy; denl = [1 0 num2 = den2 = [l 2*zeta*omega [a_rig b_rig c_rig d_rig] = tf2ss(numl,denl); [a_flex b_flex c_flex d_flex] =tf2ss(num2,den2); [a tot b tot c totd tot] = append(arig,b=rig,c=rig,d_rig, a_flex,b_flex,c_flex,d_flex); m = [1 1]'; f = [0 0;0 0]; n = [1 1]; [ag bg cg dg] interc(a_tot,b_tot,c_tot,d_tot,m,n,f); format long e damp(ag) format 102
PAGE 112
w = logspace(2,4); nikl_ol(ag,bg,cg,dg,l,w,260,[60,40]); grid title('NICHOLS PLOT OF OPEN LOOP PLANT') xlabel('Phase (deg) ') ylabel('Gain (db)') pause meta rocket! clg axis [magpl,phapl]=bode(ag,bg,cg,dg,l,w); magp1=20*log10(magpl); semilogx(w,magpl) title('BODE PLOT OF OPEN LOOP PLANT') xlabel('Frequency (rad/sec)') ylabel('Gain (db)') grid pause meta rocket! t = 0:0.1:30; pimpulse=impulse(ag,bg,cg,dg,l,t); plot(t,pimpulse) grid title('IMPULSE RESPONSE OF THE PLANT') xlabel('Time (sec)') ylabel('Amplitude') gtext('Engine Command to IMU Deflection') meta rocketl pause % Input the weighting functions. numwl = conv( [0 100], [0 100]); denwl = conv([l 10],[1 10]); numw3 = [1 0 0]; denw3 = [0 0 100000]; %numwl = conv([l/300 1],[1/300 1]); %denwl = .Ol*conv([l/10 1],[1/10 1]); %numw3 = [1/30 1]; %denw3 = 40*[1/5000 1]; 103
PAGE 113
[magwl,phawl]=bode(denwl,numwl,w); [magw3,phaw3]=bode(denw3,numw3,w); magw1=20*log10(magwl); magw3=20*logl0(magw3); wl = [numwl;denwl] w2 = [] %[0.01;] w3 = [numw3;denw3] semilogx(w,magwl,w,magw3) grid title('BODE PLOT OF WEIGHTING FUNCTIONS') xlabel('Frequency (rad/sec)') ylabel('Gain (db)') gtext('Performance Spec (1/Wl) ') gtext('Robustness Spec (l/W3) ') pause meta rocket! clg subplot(211) semilogx(w,magpl,w,magwl,w,magw3) grid title('BODE PLOT OF PLANT AND WEIGHTING FUNCTIONS') xlabel('Freqtiency (rad/sec) ') ylabel( 'Gain (dbf') gtext('Open Loop Plant') gtext('Performance Spec (1/Wl) ') gtext('Robustness Spec (1/W3) ') subplot(212) semilogx(w,phapl,w,phawl,w,phaw3) grid xlabel('Frequency (rad/sec) ') ylabel('Phase (deg) ') gtext('Open Loop Plant') gtext('Performance Spec (1/Wl) ') gtext ('Robustness Spec .( 1/W3) ') pause meta rocket! clg pause % Plant augmentation for use in weighted mixedsensitivity H inf design. 104
PAGE 114
[a,bl,b2,cl,c2,dll,dl2,d21,d22] = augtf(ag,bg,cg,dg,wl,w2,w3) format long e % H_inf optimal control synthesis via gammaiteration. [gamopt,af,bf,cf,df,acl,bcl,ccl,dcl] = hinfopt(a,bl,b2,cl,c2,dll,dl2,d21,d22,1) disp(' COMPUTING BODE PLOT OF THE COST FUNCTION ') svtt = svtt = 20*logl0(svtt); semilogx(w,svtt); grid title('HINFINITY DESIGN COST FUNCTION Tylul'); xlabel('Frequency (rad/sec)'); ylabel('SV (db)'); meta rocket! pause disp(' COMPUTING BODE PLOTS OF SENS. & COMP. SENS FUNCTIONS ') [a,b,c,d] = series(af,bf,cf,df,ag,bg,cg,dg); [acs,bcs,ccs,dcs] = feedbk(a,b,c,d,2); svs = sigma(a,b,c,d,3,w); svs = 20*loglO(svs); svt = sigma(acs,bcs,ccs,dcs,l,w); svt = 20*logl0(svt); semilogx(w,magwl,w,svs); grid title('HINFINITY DESIGN SENSITIVITY FUNCTION & 1/Wl'); xlabel('Frequency (rad/sec) '); ylabel('SV (db)'); gtext ( '1/Wl') gtext('Sensitivity Function') meta rocket! pause semilogx(w,magw3,w,svt); title('HINFINITY DESIGN COMP. SENSITIVITY FUNCTION & 1/W3'); xlabel('Frequency (rad/sec) '); ylabel('SV (db)'); grid 105
PAGE 115
gtext ( '1/W3 ) gtext('Complementary Sensitivity Function') meta rocket! pause % Find a stabilizing controller F(s). [numf,denf] = ss2tf(af,bf,cf,df,l) format [contmag,contpha] = bode(af,bf,cf,df,l,w); contmag = 20*log10(contmag); [as,bs,cs,ds] = series(af,bf,cf,df,ag,bg,cg,dg) [agf,bgf,cgf,dgf] = cloop(as,bs,cs,ds,l,l); [GFnum,GFden] = ss2tf(agf,bgf,cgf,dgf,l); [GFmag,GFpha] = bode(agf,bgf,cgf,dgf,l,w); nikl_ol(agf,bgf,cgf,dgf,l,w,260,[60,40]); grid title('NICaOLS PLOT OF LOOP TRANSFER FUNCTION G*F'); xlabel('Phase (deg)'); ylabel( 'Gain (db) ); pause meta rocket! clg axis ytstep = step(acl,bcl,ccl,dcl,l,t); pause ytimp = impulse(acl,bcl,ccl,dcl,l,t); pause % Find the gain and phase margins [gm,pm,wcp,wcg] = margin(GFmag,GFpha,w); GFmag = 20*loglO(GFmag); Gainmargin = 20*loglO(gm) Phasemargin = pm clg plot(t,ytstep(:,l)); grid; title('STEP RESPONSE OF TOTAL CLOSED LOOP'); gtext('Input=>Engine Command Output=>IMU Deflection ) xlabel('Time (sec)'); 106
PAGE 116
clg ylabel('Amplitude'); meta rocket! pause plot(t,ytimp(:,l)); grid; title('IMPULSE RESPONSE OF TOTAL CLOSED LOOP'); gtext('Input=>Engine Command Output=>IMU Deflection') xlabel('Time (sec)'); ylabel('Amplitude) '); meta rocket! clg pause subplot(211) semilogx(w,contmag); grid; title('BODE PLOT OF CONTROLLER F(s) '); xlabel('Frequency (rad/sec) '); ylabel('Gain (db)') subplot(212) semilogx(w,contpha); grid; xlabel('Frequency (rad/sec) '); ylabel('Phase (deg) ') clg meta rocket! pause subplot ( 211 ). semilogx(w,GFmag); grid; title('BODEPLOT OF LOOP TRANSFER FUNCTION G*F'); xlabel('Frequency (rad/sec) '); ylabel('Magnitude (db)'); subplot(212) semilogx(w,GFpha); grid; xlabel('Frequency (rad/sec) '); ylabel('Phase (deg) ') meta rocket! diary off 107
PAGE 117
APPENDIX C Input File for Hydraulic Actuator
PAGE 118
%******************************************************** %*** HYDRAULIC ACTUATOR *** %*** ROBUST CONTROL DESIGN *** %******************************************************** %File name: actuator.m ldel actuator ldel actuator.met diary actuator clear clg axis format num = 9000; den= [1 30 700 1000]; [ag,bg,cg,dg] = tf2ss(num,den); w = logspace(2,4); nikl_ol(ag,bg,cg,dg,1,w,260,[60,40]); grid title('NICHOLS PLOT OF OPEN LOOP PLANT') xlabel('Phase (deg)') ylabel('Gain (db)') pause meta actuator clg axis [magp1,phap1]=bode(ag,bg,cg,dg,1,w); magp1=20*log10(magp1); semilogx(w,magp1) title('BODE PLOT OF OPEN LOOP PLANT') xlabel ( Frequency ( rad/ sec) ) ylabel('Gain (db)') grid pause meta actuator t = 0:0.1:30; pimpulse=impulse(ag,bg,cg,dg,1,t); 109
PAGE 119
plot{t,pimpulse) grid title{'IMPULSE RESPONSE OF THE PLANT') xlabel{'Time (sec)') ylabel('Amplitude') gtext('Actuator Input to Actuator Deflection') meta actuator pause % Input the weighting functions. numw1 = 1.25*[1/1000 1]; denw1 = [1/30 1]; numw3 = .1*conv([1/100 1],[1/100 1]); denw3 = conv([1/1000 1],[1/5000 1]); [magw1,phaw1]=bode(denw1,numw1,w); [magw3,phaw3]=bode(denw3,numw3,w); magw1=20*log10(magw1); magw3=20*log10(magw3); w1 = [numw1;denw1] w2 = [ 0 0 1 ; 1 ] w3 = [numw3;denw3] semilogx(w,magw1,w,magw3) grid title('BODE PLOT OF WEIGHTING FUNCTIONS') xlabel('Frequency (rad/sec) ') ylabel('Gain (db)') gtext ( 'Performance Spec ( 1/W1) ) gtext('Robustness Spec (1/W3) ') pause meta actuator clg subplot.( 211) semilogx(w,magp1,w,magw1,w,magw3) grid title('BODE PLOT OF PLANT AND WEIGHTING FUNCTIONS') xlabel('Frequency (rad/sec) ') ylabel('Gain (db)') gtext('Open Loop Plant') gtext('Performance Spec (1/W1) ') gtext('Robustness Spec (1/W3) ') 110
PAGE 120
subplot(212) semilogx(w,phapl,w,phawl,w,phaw3) grid xlabel('Frequency (rad/sec) ') ylabel('Phase (deg)') gtext('Open Loop Plant') gtext('Performance Spec (1/Wl)') gtext('Robustness Spec (l/W3)') pause meta actuator clg pause % Plant augmentation for use in weighted mixedsensitivity H_inf design. [a,bl,b2,cl,c2,dll,dl2,d21,d22] = augtf(ag,bg,cg,dg,wl,w2,w3) format long e % H inf optimal control synthesis via gammaiteration. [gamopt,af,bf;cf,df,acl,bcl,ccl,dcl] = hinfopt(a,bl,b2,cl,c2,dll,dl2,d21,d22,1) disp(' COMPUTING BODE PLOT OF THE COST FUNCTION I ) svtt = sigma(acl,bcl,ccl,dcl,l,w); svtt = 20*log10(svtt); semilogx(w,svtt); grid title('HINFINITY DESIGN COST FUNCTION Tylul'); xlabel('Frequency (rad/sec) '); ylabel('SV (db)'); meta actuator pause disp(' COMPUTING BODE PLOTS OF SENS. & COMP. SENS FUNCTIONS ') [a,b,c,d] = series(af,bf,cf,df,ag,bg,cg,dg); [acs,bcs,ccs,dcs] = feedbk(a,b,c,d,2); svs = sigma(a,b,c,d,J,w); svs = 20*loglO(svs); svt = sigma(acs,bcs,ccs,dcs,l,w); svt = 20*logl0(svt); semilogx(w,magwl,w,svs); 111
PAGE 121
grid title('HINFINITY DESIGN SENSITIVITY FUNCTION & 1/W1'); xlabel('Frequency (rad/sec)'); ylabel('SV (db)'); gtext ( 1/W1') gtext ( Sensi ti vi ty Function ) meta actuator pause semilogx(w,magw3,w,svt); title('HINFINITY DESIGN COMP. SENSITIVITY FUNCTION & 1/W3'); xlabel('Frequency (rad/sec) '); ylabel('SV (db)'); grid gtext ( 1/W3 ) gtext('Complimentary Sensitivity Function') meta actuator pause % Find a stabilizing controller F(s). (numf,denf] = ss2tf(af,bf,cf,df,1) format (contmag,contpha] = bode(af,bf,cf,df,1,w); contmag = 20*log10(contmag); (as,bs,cs,ds] = series(af,bf,cf,df,ag,bg,cg,dg) (agf,bgf,cgf,dgf] = cloop(as,bs,cs,ds,1i1); [GFnum,GFden] = ss2tf(agf,bgf,cgf,dgf,1); [GFmag,GFpha] = bode(agf,bgf,cgf,dgf;1,w); nikl_ol(agf,bgf,cgf,dgf,1,w,260,[60,40]); grid title('NICHOLS PLOT OF LOOP TRANSFER FUNCTION G*F'); xlabel('Phase (deg)'); ylabel('Gain (db)'); pause meta actuator clg axis ytstep = step(acl,bcl,ccl,dcl,1,t); pause ytimp = impulse(acl,bcl,ccl,dcl,1,t); pause 112
PAGE 122
% Find the gain phase margins [gm,pm,wcp,wcg] = margin(GFmag,GFpha,w); GFmag = 20*log10(GFmag); Gainmargin = 20*log10(gm) Phasemargin = pm clg plot(t,ytstep(:,1)); grid; title('STEP RESPONSE OF TOTAL CLOSED LOOP'); gtext('Input=>Actuator Command Output=>Actuator Deflection ) xlabel('Time (sec)'); ylabel('Amplltude'); meta actuator clg pause plot(t,ytimp(:,1)); grid; title('IMPULSE RESPONSE OF TOTAL gtext('Input=>Actuator Command Deflection' ) xlabel('Time (sec)'); ylabel('Amplitude)'); meta actuator clg pause subplot( 211) semilogx(w,contmag); grid; CLOSED LOOP'); Output=>Actuator title('BODE PLOT OF CONTROLLER F(s) '); xlabel('Frequency (rad/sec) '); ylabel('Gain (db)') clg subplot(212) semilogx(w,contpha); grid; xlabel('Frequency (rad/sec)'); ylabel('Phase (deg) ') meta actuator pause 113
PAGE 123
subplot(211) semilogx(w,GFmag); grid; title('BODE PLOT OF LOOP TRANSFER FUNCTION G*F'); xlabel('Frequency (rad/sec) '); ylabel('Magnitude (db)'); subplot(212) semilogx(w,GFpha); grid; xlabel ( 'Frequency ( rad/ sec) ) ; ylabel('Phase (deg) ') meta actuator diary off 114
PAGE 124
APPENDIX D MATLAB File for Aicraft Lateral Dynamics
PAGE 125
%******************************************************** %*** AIRCRAFT LATERAL DYNAMICS *** %*** ROBUST CONTROL DESIGN *** %******************************************************** %File name: jet3.m !del jet3 ldel jet3.met diary jet3 clear clg axis format % Input the nominal system % Input the plant in state ag [.746 .006 .999 12.9 .746 .387 4.31 .024 .174 0 1 0 bg = [.0012 6.05 .416 0;.0092 cg = [0 1 0 0;0 0 1 0] dg = [0 0;0 0] space form .0369 0 0 0] .952 1.76 [ag,bg,cg,dg] = format long e damp(ag) format w = logspace(2,41; nikl_ol(ag,bg,cg,dg,1,w,260,[60,40]); grid title('NICHOLS PLOT OF OPEN LOOP PLANT') xlabel('Phase (deg) ') ylabel('Gain (db)') pause meta jet3 clg 116 0] I
PAGE 126
axis [magp1,phap1]=bode(ag,bg,cg,dg,1,w); magp1=20*log10(magp1); semilogx(w,magp1) title('BODE PLOT OF OPEN LOOP PLANT') xlabel('Frequency (rad/sec)') ylabel ( 'Gain (db) ) grid pause meta jet3 t = 0:0.1:30; pimpulse=impulse(ag,bg,cg,dg,1,t); plot(t,pimpulse) grid title('IMPULSE RESPONSE OF THE PLANT') xlabel('Time (sec)') ylabel('Amplitude') gtext('Rudder Deflection to Yaw Rate') meta jet3 pause % Input the weighting functions. numw1 10*conv([1/50 1],[1/50 1]); denw1 = conv([1/1 1],[1/1 1]); numw3 = .03*conv([1/1 1],[1/1 1]); denw3 = conv([1/30 1],[1/30 1]); [magw1,phaw1]=bode(denw1,numw1,w); [magw3,phaw3]=bode(denw3,numw3,w); magw1=20*logl0(magwl); magw3=20*logl0(magw3); wl = [numw1;denwl] w2 = [0.01;1] w3 = [numw3;denw3] semilogx(w,magw1,w,magw3) grid title('BODE PLOT OF WEIGHTING FUNCTIONS') xlabel('Frequency (rad/sec) ') ylabel('Gain (db)') 117
PAGE 127
gtext('Performance Spec (1/W1) ') gtext('Robustness Spec (1/W3)') pause meta jet3 clg subplot ( 211 ) semilogx(w,magp1,w,magw1,w,magw3) grid title('BODE PLOT OF PLANT AND WEIGHTING FUNCTIONS') xlabel('Frequency (rad/sec)') ylabel('Gain (db)') gtext('Open Loop Plant') gtext('Performance Spec (1/W1) ') gtext('Robustness Spec (1/W3) ') subplot(212) semilogx(w,phap1,w,phaw1,w,phaw3) grid xlabel ( 'Frequency ( rad/ sec) ) ylabel('Phase (deg) ') gtext('Open Loop Plant') gtext('Performance Spec (1/W1) ') gtext('Robustness Spec (1/W3) ') pause meta jet3 clg pause % Plant augmentation for use in weighted mixedsensitivity H_inf design. = augtf(ag,bg,cg,dg,w1,w2,w3) format long e % H_inf optimal control synthesis via gammaiteration. [gamopt,af,bf,cf,df,acl,bcl,ccl,dcl] = hinfopt(a,bl,b2,cl,c2,d11,dl2,d21,d22,1) disp(' COMPUTING BODE PLOT OF THE COST FUNCTION I ) svtt = sigma(acl,bcl,ccl,dcl,1,w); svtt = 20*log10(svtt); semilogx(w,svtt); grid title('HINFINITY DESIGN COST FUNCTION Ty1ul'); 118
PAGE 128
xlabel('Frequency (rad/sec)'); ylabel('SV (db)'); meta jet3 pause disp(' COMPUTING BODE PLOTS OF SENS. & COMP. SENS FUNCTIONS ') [a,b,c,d] = series(af,bf,cf,df,ag,bg,cg,dg); [acs,bcs,ccs,dcs] = feedbk(a,b,c,d,2); svs = sigma(a,b,c,d,3,w); svs = 20*log10(svs); svt = sigma(acs,bcs,ccs,dcs,1,w); svt = 20*log10(svt); semilogx(w,magw1,w,svs); grid title('HINFINITY DESIGN SENSITIVITY FUNCTION & 1/W1'); xlabel('Frequency (rad/sec) '); ylabel ( 'SV (db) ) ; gtext ( '1/W1 ) gtext('Sensitivity Function') meta jet3 pause semilogx ( w, w, svt) ; title('HINFINITY DESIGN COMP. SENSITIVITY FUNCTION & 1/W3'); xlabel('Frequency (rad/sec) '); ylabel('SV (db)'); grid gtext ( '1/W3 ) gtext('Complementary Sensitivity Function') meta jet3 pause % Find a stabilizing controller F(s). [numf,denf] = ss2tf(af,bf,cf,df,1) format [contmag,contpha] = bode(af,bf,cf,df,l,w); contmag = 20*log10(contmag); [as,bs,cs,ds] = series(af,bf,cf,df,ag,bg,cg,dg) [agf,bgf,cgf,dgf] = cloop(as,bs,cs,ds,1,1); [GFnum,GFden] = ss2tf(agf,bgf,cgf,dgf,1); [GFmag,GFpha] = bode(agf,bgf,cgf,dgf,l,w); 119
PAGE 129
nikl_ol(agf,bgf,cgf;dgf,l,w,260,[60,40]); grid title('NICHOLS PLOT OF LOOP TRANSFER FUNCTION G*F'); xlabel('Phase (deg) '); ylabel('Gain (db)'); pause meta jet3 clg axis ytstep = step(acl,bcl,ccl,dcl,l,t); pause ytimp = impulse(acl,bcl,ccl,dcl,l,t); pause % Find the gain and phase margins [gm,pm,wcp,wcg] = margin(GFmag,GFpha,w); GFmag = 20*loglO(GFmag); Gainmargin = 20*loglO(gm) Phasemargin = pm clg plot(t,ytstep(:,l)); grid; title('STEP RESPONSE OF TOTAL CLOSED LOOP'); gtext('Input=>Rudder Deflection Output=>Yaw Rate') xlabel('Time (sec)'); clg clg ylabel('Amplitude'); meta jet3 pause plot(t,ytimp(:,l)); grid; title('IMPULSE RESPONSE OF TOTAL gtext ( ; Input'=> Rudder Deflection xlabel('Time ylabel('Amplitude) '); meta jet3 pause subplot(211) semilogx(w,contmag); 120 CLOSED LOOP'); Output=>Yaw Rate')
PAGE 130
clg grid; title('BODE PLOT OF CONTROLLER F(s) '); xlabel('Frequency (rad/sec) '); ylabel('Gain (db)') subplot(212) semilogx(w,contpha); grid; (rad/sec)'); ylabel('Phase (deg) ') meta jet3 pause subplot(211) semilogx(w,GFmag); grid; title('BODE PLOT OF LOOP TRANSFER FUNCTION G*F'); xlabel('Frequency (rad/sec) '); ylabel('Magnitude (db)'); subplot(212) semilogx(w,GFpha); grid; xlabel('Frequency (rad/sec) '); ylabel('Phase (deg) ') meta jet3 diary off 121
PAGE 131
REFERENCES 1. Bernstein, D.S., and Wie, B., "A Benchmark Problem for Robust Control Design," Proceedings of the 1990 American Control Conference, 1990. 2. Ching, R. Y., and Safonov, M.G., "CACSD Using the StateSpace Leo Theory A Design Example," Proceedings IEEE Transaction on Automatic Control, AC33, No.5, ,1988. 3. Ching, R.Y., Safonov, M.G., and Tekawy, J.A., "Heo Flight Control Design with Large Parametric Robustness," Proceedings of the 1990 American Control Conference, 1990. 4 Ching, R Y. and Safonov, M.G. "Heo Robust Control Synthesis for an Undamped, NonColocated SpringMass System," Proceedings of the 1990 American Control Conference, 1990. 5. Ching, R.Y., Limbeer, D.J.N., and Safonov, M.G., "Simplifying the Heo Theory via Loop Shifting, Matrix Pencil and Descriptor Concepts," Int. J. Control, 1989. 6. Ching, R. Y. and Safonov, M.G. "Robust Control Toolbox," The Math Works Inc., 1992 7. Doyle, J.C., Francis, B.A., and Tannenbaum, A.R., "Feedback Control Theory," Macmillan, 1992. 8. Francis, B.A., "Lecture Notes in Control and Information Sciences, A Course in Heo Control Theory," SpringerVerlag, 1987. 9. Friedland, B. "Control System Design," McGrawHill, 1986.
PAGE 132
10. Hyde, R.A., and Williams, S.J., "A Comparison of Different Methods in VSTOL Flight Flight Control System Design," Proceedings of the 1990 American Control Conference, 1990. 11. Ruth, M. J. "Robust Control of a Coupled Undersea Vehicle Using J.Lsynthesis," Proceedings of the 1990 American Control Conference, 1990. 123
