Loop Shaping
Loop Shaping
Jan Swevers
KULeuven
November 2009
SISO loopshaping control [H04Q7] 0-2
MULTIVARIABLE
FEEDBACK CONTROL
Analysis and design
Sigurd Skogestad
Norwegian University of Science and Technology
Ian Postlethwaite
University of Leicester
copyright 1996 John Wiley & Sons Ltd,
ISBN 0 471 94330 4
SISO loopshaping control [H04Q7] 0-1
Contents
1 Introduction 1-1
1 Introduction
Always keep in mind
Power of control is limited.
Control quality on depends controller AND on plant/process.
Ziegler-Nichols (1943):
In the application of automatic controllers, it is important to realize that controller and
process form a unit; credit or discredit for results obtained are attributable to one as much as
the other. A poor controller is often able to perform acceptably on a process which is easily
controlled. The finest controller made, when applied to a miserably designed process, may not
deliver the desired performance. True, on badly designed processes, advanced controllers are
able to eke out better results than older models, but on these processes, there is a definite end
point which can be approached by instrumentation and it falls short of perfection.
SISO loopshaping control [H04Q7] 1-2
y = Gu + Gd d (1.1)
y : output/controlled variable
u : input/manipulated variable
d : disturbance
r : reference/setpoint
Major difficulties:
nz snz + + 1 s + 0
G(s) = n (1.2)
s + an1 sn1 + + a1 s + a0
For multivariable systems, G(s) is a matrix of transfer functions.
n = order of denominator (or pole polynomial) or order of the system
nz = order of numerator (or zero polynomial)
n nz = pole excess or relative order.
Definition
A system G(s) is strictly proper if G(s) 0 as s .
A system G(s) is semi-proper or bi-proper if G(s) D 6= 0 as s .
A system G(s) which is strictly proper or semi-proper is proper.
A system G(s) is improper if G(s) as s .
SISO loopshaping control [H04Q7] 1-5
scaled:
b dbmax ,
d = d/ u=u
b/b
umax (1.4)
where:
dbmax largest expected change in disturbance
u
bmax largest allowed input change
SISO loopshaping control [H04Q7] 1-6
y = Gu + Gd d; e=yr (1.6)
Often also:
re = rb/b
rmax (1.7)
so that:
r = Re
r where R = rbmax /b
emax (1.8)
SISO loopshaping control [H04Q7] 1-8
d re
? ?
Gd R
r
y
-? -?
u + -
- G e e -e
+ +
Objective:
for |d(t)| 1 and |e
r(t)| 1,
manipulate u with |u(t)| 1
such that |e(t)| = |y(t) r(t)| 1.
SISO loopshaping control [H04Q7] 1-9
d
?
Gd
r - u- G - b?
+ p-y
- K +
ym
b+
+
6n
(b) Two degrees-of-freedom control configuration
SISO loopshaping control [H04Q7] 1-10
w - -z
- P
u v
K
(c) General control configuration
Table 1: Nomenclature
K controller, in whatever configuration. Sometimes broken down into parts. For exam-
ple, in Figure 2(b), K = [ Kr Ky ] where Kr is a prefilter and Ky is the feedback
controller.
Conventional configurations (Fig 2(a), 2(b)):
G plant model
Gd disturbance model
r reference inputs (commands, setpoints)
d disturbances (process noise)
n measurement noise
y plant outputs. ( include the variables to be controlled (primary outputs with refer-
ence values r) and possibly additional secondary measurements to improve control)
ym measured y
u control signals (manipulated plant inputs)
SISO loopshaping control [H04Q7] 1-12
Minimum phase refers to fact that the system has a minimum possible phase
lag for a given amplitude response.
The local slope at 0 is
d ln |G(j)|
N (0 ) = (2.10)
d ln =0
RHP-zeros and time delays contribute additional phase lag to a system when
compared to that of a minimum phase system with the same gain (hence the
term: NON-minimum phase systems).
Consider:
s + a
G(s) = (2.12)
s+a
with a RHP-zero at s = a has a constant gain of 1, but its phase is
arctan(/a)[rad] (and not 0[rad]).
The time delay es has a constant gain of 1, but its phase is [rad].
SISO loopshaping control [H04Q7] 2-4
5
10
0
Magnitude
2
0
10
1
2
5
10 3 2 1 0 1 2 3
10 10 10 10 10 10 10
1 2 3
0
45
Phase
90
135
180
3 2 1 0 1 2 3
10 10 10 10 10 10 10
Frequency [rad/s]
s+1
Figure 3: Bode plot of minimum phase system L1 = 30 (s+0.01) 2 (s+10)
SISO loopshaping control [H04Q7] 2-5
?
Gd
y
-?
r - u- +
+d - K G d q-
6
- +
ym
d
+
+6
y = GK(r y n) + Gd d
or
(I + GK)y = GKr + Gd d GKn (2.1)
Closed-loop response:
y = (I + GK)1 GK r (2.2)
| {z }
T
+ (I + GK)1 Gd d (2.3)
| {z }
S
(I + GK)1 GK n (2.4)
| {z }
T
SISO loopshaping control [H04Q7] 2-7
Control error:
e = y r = Sr + SGd d T n (2.5)
Plant input:
u = KSr KSGd d KSn (2.6)
SISO loopshaping control [H04Q7] 2-8
Note that:
L = GK (2.7)
S = (I + GK)1 = (I + L)1 (2.8)
T = (I + GK)1 GK = (I + L)1 L (2.9)
S+T =I (2.10)
Notation :
Example
3(2s + 1)
G(s) = (2.11)
(5s + 1)(10s + 1)
RHP zero at s = 0.5
Proportional controller K(s) = Kc
Closed loop system is stable for Kc < 2.5, unstable for Kc > 2.5, limit of
instability for Kc = 2.5 (ultimate gain).
2 Kc = 3 (Unstable)
Kc = Ku = 2.5
1.5
Kc = 1.5
1
0.5
Kc = 0.5
0 Pu
0.5
0 5 10 15 20 25 30 35 40 45 50
Time [sec]
|L| |S|
Magnitude
0 |T |
10
B c BT
2
10 2 1 0 1
10 10 10 10
90
6 S
0
6 T
Phase
90
6 L
180
270 2 1 0 1
10 10 10 10
Frequency [rad/s]
Figure 6: Bode magnitude and phase plots of L = GK, S and T when G(s) =
3(2s+1) 1
(5s+1)(10s+1) , and K(s) = 1.136(1 + 12.7s )
SISO loopshaping control [H04Q7] 2-14
Overshoot = A
1.5 Decay ratio =B/A
A B 1.05
1
y(t)
0.95
0.5
tr ts
Time
1
Magnitude 10
0
10 1
GM
1
10 2 1 0
10 10 c 180 10
90
135
Phase
PM
180
225
2 1 0
10 10 10
Frequency [rad/s]
where the gain crossover frequency c is where L(j) first crosses 1 from
above: |L(jc )| = 1.
The phase margin tells how much negative phase (phase lag) we can add to
L(s) at frequency c before the phase at this frequency becomes 180
which corresponds to closed-loop instability.
Typically we require PM larger than 30 or more.
SISO loopshaping control [H04Q7] 2-19
0.5
1 1 L(j180 )
GM
= + Re
1 PM 0.5 1
L(jc )
0.5
L(j)
Figure 9: Typical Nyquist plot of L(j) for stable plant with PM and GM indicated
SISO loopshaping control [H04Q7] 2-20
Typically :
MS 2 (6dB) (2.16)
MT < 1.25 (2dB) (2.17)
| |S| |T | | |S + T | = 1 (2.18)
180 > BT for GM > 2.414, and 180 < BT for GM < 2.414, yielding that
usually 180 BT .
SISO loopshaping control [H04Q7] 2-27
0.5
y(t)
0
0.5
1
0 5 10 15 20 25 30 35 40 45 50
Time [sec]
|S|
0 B 180 BT
10
Magnitude
|T |
1
10
2
10 2 1 0 1 2
10 10 10 10 10
Frequency [rad/s]
Example continued
Fundamental trade-offs:
1. Good disturbance rejection: L large.
2. Good command following: L large.
3. Mitigation of measurement noise on plant outputs: L small.
4. Small magnitude of input signals: K small and L small.
5. Controller must be strictly proper: K and L 0 at high frequencies.
6. Nominal and robust stability: L small.
7. S + T = 1.
SISO loopshaping control [H04Q7] 2-34
peaks.
SISO loopshaping control [H04Q7] 2-40
Note: L(s) must contain all RHP-zeros of G(s). Idea for minimum phase
plant:
c
L(s) = (2.27)
s
c 1
K(s) = G (s) (2.28)
s
i.e. controller inverts plant and adds integrator (1/s).
BUT:
this is not generally desirable, unless references and disturbances affect
the outputs as steps.
this yields a controller that is not realizable if G(s) has a pole excess of
two or larger.
SISO loopshaping control [H04Q7] 2-44
Objectives are:
1. Command tracking: rise time (to reach 90% of the final value) less than 0.3 s
and overshoot less than 5%.
2. Disturbance rejection: response to unit step disturbance should stay within the
range [1, 1] at all times, and should return to 0 as quickly as possible (|y(t)|
should at least be less than 0.1 after 3 s).
3. Input constraints: u(t) should remain within [1, 1] at all times.
1.5 1.5
1 1
y(t)
y(t)
0.5 0.5
0 0
0 1 2 3 0 1 2 3
Time [sec] Time [sec]
Figure 14: Responses with inverse-based controller K0 (s) for the disturbance
process. Note poor disturbance responce
e = y = SGd d, (2.31)
to achieve |e()| 1 for |d()| = 1 (the worst-case disturbance) we require
|SGd (j)| < 1, , or
|1 + L| |Gd | (2.32)
or approximately:
|L| |Gd | (2.33)
Initial guess:
|Lmin | |Gd | (2.34)
or:
|Kmin | |G1 Gd | (2.35)
SISO loopshaping control [H04Q7] 2-48
Summary:
Controller contains the dynamics (Gd ) of the disturbance and inverts the
dynamics (G) of the inputs.
For disturbance at plant output, Gd = 1, we get |Kmin | = |G1 |.
For disturbances at plant input we have Gd = G and we get |Kmin | = 1.
Loop-shape L(s) may be modified as follows:
1. Around crossover make slope N of |L| to be about 1 for transient behaviour
with acceptable gain and phase margins.
2. Increase the loop gain at low frequencies to improve the settling time and
reduce the steady-state offset add an integrator
3. Let L(s) roll off faster at higher frequencies (beyond the bandwidth) in order
to reduce the use of manipulated inputs, to make the controller realizable
and to reduce the effects of noise.
SISO loopshaping control [H04Q7] 2-50
4 1.5
10
L2 ,L3 y1
Magnitude
2 1
10
L1
0.5
10
0
y3
L3 y2
2
L1 ,L2 0
10 2 0 2
10 10 10 0 1 2 3
Frequency [rad/s] Time [sec]
Figure 16: Loop shapes and disturbance responses for controllers K1 , K2 and K3
for the disturbance process
SISO loopshaping control [H04Q7] 2-52
r - Kr -+ c - Ky u-
G - c?
+ -y
-6 +
ym
c
+
+6
n
Idea:
Design Ky : reduce effect of uncertainty: disturbances and modelling erros
Shape Kr to meet the tracking performance specifications.
SISO loopshaping control [H04Q7] 2-54
= Kr = T 1 Tref (2.40)
SISO loopshaping control [H04Q7] 2-55
Remark:
Practical choice of prefilter is the lead-lag network
lead s + 1
Kr (s) = (2.41)
lag s + 1
lead > lag to speed up the response, and lead < lag to slow down the response.
SISO loopshaping control [H04Q7] 2-56
0.5s + 1 1
Kr3 (s) = (2.42)
0.65s + 1 0.03s + 1
where 1/(0.03s + 1) is included to avoid initial peaking of input signal u(t)
above 1.
1.5
y3 (t)
1
y3 (t)(two degrees-of-freedom)
0.5
0
0 0.5 1 1.5 2 2.5 3
Time [sec]
Figure 18: Tracking responses with the one degree-of-freedom controller (K3 ) and
the two degrees-of-freedom controller (K3 , Kr3 ) for the disturbance process
SISO loopshaping control [H04Q7] 2-58
2
10 2
G = Gd yOL
Magnitude
1 yCL
0
10 0
1
2
10 2 0 2 2
10 10 10 0 5 10 15 20
Frequency [rad/s] Time [sec]
The outlined procedure is well suited for relatively simple systems, e.g.
stable plants where L(s) crosses the negative real axis only once.
The procedure can be extended to more complex systems, the effort required
by the engineer is considerably greater.
SISO loopshaping control [H04Q7] 2-60
|L(j)| 1 S L1 ; T 1
|L(j)| 1 S 1; T L
but in the crossover region where |L(j)| is close to 1, one cannot infer
anything about S and T from |L(j)|.
Alternative:
Directly shape the magnitudes of closed-loop S(s) and T (s).
SISO loopshaping control [H04Q7] 2-61
The term H
The H norm of a stable scalar transfer function f (s) is simply the peak
value of |f (j)| as a function of frequency, that is,
kf (s)k = max |f (j)| (2.44)
The symbol H stands for Hardy space, and H is the set of transfer
functions with bounded -norm, which is simply the set of stable and proper
transfer functions.
SISO loopshaping control [H04Q7] 2-62
1
10
Magnitude
|S| |1/wP |
0
10
1
10
2
10 2 1 0 1
10 10 10 10
Frequency [rad/s]
kwP Sk
Magnitude
0 2 1 0 1
10 10 10 10
Frequency [rad/s]
(b) Weighted sensitivity wP S
Figure 20: Case where |S| exceeds its bound 1/|wP |, resulting in kwP Sk > 1
SISO loopshaping control [H04Q7] 2-64
|S(j)| < 1/|wP (j)|, (2.45)
M
0
10
Magnitude
B
1
10
A
2
10 2 1 0 1 2
10 10 10 10 10
Frequency [rad/s]
Figure 21: Inverse of performance weight. Exact and asymptotic plot of 1/|wP (j)|
in (2.47)
(s/M 1/2 + B
2
)
wP (s) = A1/2 )2
(2.48)
(s + B
SISO loopshaping control [H04Q7] 2-66
Remark
The stacking procedure is selected for mathematical convenience as it does
not allow us to exactly specify the bound on the individual transfer functions.
There maximum error between both is at most n, where n is the number of
elements in the stacked requirement.
2 3dB
SISO loopshaping control [H04Q7] 2-68
Remark 2
Let 0 = minK kN k denote the optimal H norm. An important property
of H optimal controllers is that they yield a flat frequency response , that
is, (N (j)) = 0 at all frequencies.
As a result, except for at most a factor n, the transfer functions resulting
from a H mixed sensitivity design will be close to 0 times inverse of the
weighting functions selected by the designer
This gives the designer a mechanism for directly shaping the magnitudes of
S, T , and KS.
SISO loopshaping control [H04Q7] 2-69
Selected wu = 1 and
s/M + B
wP 1 (s) =
; M = 1.5, B = 10, A = 104 (2.53)
s + B A
(s/M 1/2 + B
2
)
wP 2 (s) = 1/2 2
, M = 1.5, B = 10, A = 104 (2.54)
(s + B A )
SISO loopshaping control [H04Q7] 2-70
0
10
Magnitude
10
2
S1 S2
1/wP 1 1/wP 2
4
10 2 1 0 1 2
10 10 10 10 10
Frequency [rad/s]
Figure 22: Inverse of performance weight (dashed line) and resulting sensitivity
function (solid line) for two H designs (1 and 2) for the disturbance process
SISO loopshaping control [H04Q7] 2-71
1.5 1.5
y2 (t) y1 (t)
1 1
y1 (t)
0.5 0.5 y2 (t)
0
0
0 1 2 3 0 1 2 3
Time [sec] Time [sec]
Figure 23: Closed-loop step responses and step disturbance rejection for two al-
ternative H designs (1 and 2)
SISO loopshaping control [H04Q7] 3-1
y = Gu + Gd d (3.1)
For perfect control, i.e. y = r (not realizable) we have feedforward
controller:
u = G1 r G1 Gd d (3.2)
u = KSr KSGd d
or since T = GKS,
u = G1 T r G1 T Gd d (3.3)
S+T =1 (3.4)
1 1 2 Re
1
2
L(j)
Figure 24: |S| > 1 whenever the Nyquist plot of L is inside the circle
SISO loopshaping control [H04Q7] 3-8
where the area of sensitivity reduction (log |S| negative) must equal the area
of sensitivity increase (log |S| positive): the benefits and costs of feedback are
balanced exactly, and an increase in bandwidth must come at the expense of
a larger peak in S.
Peaks in S are unavoidable: if we push the sensitivity function down at some
frequencies, then it will have to increase at others.
Similar to sitting on a Waterbed
SISO loopshaping control [H04Q7] 3-10
|S(j)| > 1
1 Lm (j) Re
1 L(j)
1
Lm (s) = s+1 1.5
1 s+1
L(s) = s+1 s+1 2.0
Figure 25: Additional phase lag contributed by RHP-zero causes |S| > 1
SISO loopshaping control [H04Q7] 3-12
10
1 k = 2.0
Magnitude |S| (unstable)
k = 1.0
k = 0.5
0 k = 0.1
10
1
10 2 1 0 1
10 10 10 10
Frequency
Figure 26: Effect of increased controller gain on |S| for system with RHP-zero at z = 2,
L(s) = ks 2s
2+s
SISO loopshaping control [H04Q7] 3-13
where:
2z 2 1
w(z, ) = 2 2
= (3.8)
z + z 1 + (/z)2
SISO loopshaping control [H04Q7] 3-14
2 slope
z
(log)
Figure 27: Plot of weight w(z, ) for case with real zero at s = z
SISO loopshaping control [H04Q7] 3-15
If L has no RHP-poles, the right hand side of the sensitivity integral is equal
to zero.
If there is a RHP-pole close to the RHP-zero (pi z), then
pi + z
(3.10)
pi z
In practice, it is (nearly) impossible to stabilize such a plant.
SISO loopshaping control [H04Q7] 3-16
Since even the ideal controller cannot remove a delay, the best possible
complementary sensitivity will be T (s) = es .
The corresponding best sensitivity will be:
S = 1 T = 1 es (3.16)
1
10
Magnitude |S|
0
10
1
10
2
= 1/
10 2 1 0 1 2
10 10 10 10 10
Frequency Delay
Figure 28: Ideal sensitivity function (3.16) for a plant with delay
SISO loopshaping control [H04Q7] 3-20
1
|S(j)| in Figure 28 crosses 1 at 3 = 1.05/.
Because here |S| = 1/|L|, we also have that 1/ is equal to the gain crossover
frequency c in L.
In practice, the ideal controller will be worse, so we have the following
upper limit:
c < 1/ (3.17)
SISO loopshaping control [H04Q7] 3-21
Bandwidth limitation I
Magnitude |S|
0
10
1
10
2
z/2
10 2 1 0 1 2
10 10 10 10 10
Frequency 1/z
(a) Real RHP-zero
Magnitude |S|
y/x = 0.1 = 10 = 50
0
10
1
10
y/x = 1
2
10 2 1 0 1 2
10 10 10 10 10
Frequency 1/x
Bandwidth limitation I
For complex pair of RHP-zeros z = x jy, the ideal sensitivity function:
4xs
S(s) = (3.21)
(s + x + jy)(s + x jy)
See figure (b) on the previous slide, yielding the following approximate
bounds:
|z|/4
Re(z) >> Im(z)
B c < |z|/2.8 Re(z) = Im(z) (3.22)
|z| Re(z) << Im(z)
RHP-zeros located close to the origin (|z| small) are bad for control, and it is
worse for them to be located closer to the real axis than the imaginary axis.
SISO loopshaping control [H04Q7] 3-24
However, from (3.14) we have that kwP Sk |wP (z)|, so the weight must
satisfy
|wP (z)| < 1 (3.24)
MT
BT >p (3.31)
MT 1
SISO loopshaping control [H04Q7] 3-26
The presence of the RHP-pole puts a lower limit on the bandwidth in terms
of T : we cannot let the system roll-off at frequencies lower than p.
E.g. MT = 2: BT > 2p, which is approximately achieved if
c > 2p (3.32)
SISO loopshaping control [H04Q7] 3-27
RHP-zero:
c < z/2
RHP-pole:
c > 2p
RHP-pole and RHP-zero:
z > 4p for acceptable performance and robustness.
Sensitivity peaks.
It can be shown that for a plant with a single real RHP-pole p and a single real
RHP-zero z, we always have:
|z + p|
kSk c, kT k c, c= (3.33)
|z p|
SISO loopshaping control [H04Q7] 3-28
For more complex controllers, if the model is exactly known and there are no
non-minimum phase elements, c can be extended to infinity (controller
based on inverse of system model).
In practical cases, due to model order restrictions, and due to model
uncertainty (inverse model does not work then), also the same bound applies:
c < u .
SISO loopshaping control [H04Q7] 4-1
Notation:
a set of possible perturbed plant models (uncertainty set).
Gp
- wI - I
q -?c+ - G -
+
Here I (s) is any stable transfer function which at each frequency is less
than or equal to one in magnitude. Some allowable I (s)s
sz 1 1 0.1
, , 3
,
s+z s + 1 (5s + 1) s2 + 0.1s + 1
SISO loopshaping control [H04Q7] 4-6
u y
wiI iI
c - K -?c+ p - G p-
-6 +
Example:
k
Gp (s) = es , 2 k, , 3 (4.5)
s + 1
Im
= 1 = 2
= 0.01
= 7 = 0.05 Re
= 0.5
= 0.2
Figure 31: Uncertainty regions of the Nyquist plot at given frequencies. Data from
(4.5)
SISO loopshaping control [H04Q7] 4-8
3
1 2
Figure 32: Disc approximation (solid line) of the original uncertainty region
(dashed line). Plot corresponds to = 0.2 in Figure 31
The radius of the disc can be reduced by moving the center (i.e. selecting
another nominal model).
SISO loopshaping control [H04Q7] 4-9
where A (s) is any stable transfer function which at each frequency is not
larger than one in magnitude.
SISO loopshaping control [H04Q7] 4-10
Im
+
Re
G(j)
|wA (j)|
+
Multiplicative uncertainty
Im
G (centre)
|wA |
Re
Figure 34: The set of possible plants includes the origin at frequencies where
|wA (j)| |G(j)|, or equivalently |wI (j)| 1
SISO loopshaping control [H04Q7] 4-13
At frequencies where |wI (j)| > 1, we do not know the phase of the plant,
and tight control is not possible ...
Consider at frequency 0 that |wI (j0 )| > 1. Then there exists a |I | 1
such that Gp (j0 ) = 0.
There exists a possible plant with zeros at s = j0 , and for this plant, at
frequency 0 the input has no effect on the output, so control has no effect.
To conclude: tight control is not possible at frequencies where |wI (j)| > 1.
SISO loopshaping control [H04Q7] 4-14
k 2.5
G(s) = = (4.12)
s + 1 2.5s + 1
T s + 0.2
wI1 (s) = , T =4 (4.13)
(T /2.5)s + 1
s2 + 1.6s + 1
wI (s) = I1 (s) 2 (4.14)
s + 1.4s + 1
SISO loopshaping control [H04Q7] 4-16
Magnitude
0
10
1
10 2 1 0 1
10 10 10 10
Frequency
Figure 35: Relative errors for 27 combinations of k, and with delay-free nominal
plant (dotted lines). Solid line: First-order weight |wI1 | in (4.13). Dashed line:
Third-order weight |wI | in (4.14)
SISO loopshaping control [H04Q7] 4-17
With parametric uncertainty there are three main options for the choice of
nominal model:
A simplified model, e.g. a low-order, delay free model
A model of mean parameter values, G(s) = G(s)
The central plant obtained from a Nyquist plot (yielding the smallest discs).
SISO loopshaping control [H04Q7] 4-18
-1
2 + + 3 + 1
-2
-3
-4
-2 -1 0 1 2 3 4
Figure 36: Nyquist plot of Gp (j) at frequency (dashed region) showing complex
disc approximations using three options for the nominal model: (1) Simplified
nominal model with no time delay, (2) Mean parameter values, (3) Nominal model
corresponding to smallest radius
SISO loopshaping control [H04Q7] 4-19
Option 1 usually yields the largest uncertainty region, but the model is
simple and this facilitates controller design.
Option 2 is most straightforward choice.
Option 3 yields the smallest region, but in this case a significant effort may
be required to obtain the nominal model, which is usually not a rational
transfer function and a rational approximation could be of very high order.
SISO loopshaping control [H04Q7] 4-20
where G0 (s) is fixed and certain. We want to neglect f (s) which may be
fixed or uncertain.
We represent Gp (s) with a multiplicative uncertainty structure around G0 (s):
Gp G0
lI () = maxGp = maxf (s) |f (j) 1| (4.16)
G0 f
SISO loopshaping control [H04Q7] 4-21
Neglected delay:
Let f (s) = ep s , with 0 p max
We want to represent Gp (s) = G0 (s)ep s , with G0 (s) delay-free and
multiplicative uncertainty.
First consider the maximum delay, for which the relative error is
|1 ejmax |: see left plot in figure on following slide.
The relative uncertainty crosses 1 at frequency 1/max , reaches 2 at
frequency /max , and oscillates between 0 and 2 at higher frequencies.
Similar curves are generated for smaller values of the delay, and they also
oscillate between 0 and 2 but at higher frequencies.
SISO loopshaping control [H04Q7] 4-22
0 0
Magnitude
10 10
1 1
10 10
2 1/max 2 1/max
10 10
2 0 2 2 0 2
10 10 10 10 10 10
Frequency Frequency
(a) Time delay (b) First-order lag
Neglected lag
Let f (s) = 1/(p s + 1) where 0 p max .
The resulting lI () is shown in the right plot of the figure in the previous
slide.
1 max s
wI (s) = 1 = (4.19)
max s + 1 max s + 1
SISO loopshaping control [H04Q7] 4-24
c - K p - c?
+ -
G p-
-6 +
Im
1
0 Re
|1 + L(j)|
L(j)
|wI L|
Encirclements are avoided if none of the discs cover 1, and we get from
Figure 39
RS |T | < 1/|wI |, (4.24)
Magnitude
0
10
1
10
T2 (RS)
3 2 1 0 1
10 10 10 10 10
Frequency
By trial and error we find that reducing the gain to Kc2 = 0.31 just achieves RS
as seen from T2 in Fig. 40.
SISO loopshaping control [H04Q7] 4-30
Remark:
The procedure is conservative. For Kc2 the system with the extreme plant
is not at the limit of instability; we can increase the gain to kc2 = 0.58 before
we get instability.
This condition for RS is only a sufficient condition for stability, and a
violation of this bound does not imply instability for a specific element G in
the set.
However, with the controller with Kc2 , there exists an allowed I , and a
corresponding Gp = G(1 + wi I ) which is at the boundary of instability.
SISO loopshaping control [H04Q7] 4-31
By what factor kmax can we multiply the loop gain L0 before we get
instability?
Lp = kp L0 kp [1, kmax ] (4.25)
Complex perturbation
Lp = kp L0 = kL0 (1 + rk ) (4.27)
where
kmax + 1 kmax 1
k = rk = (4.28)
2 kmax + 1
SISO loopshaping control [H04Q7] 4-32
The nominal loop gain is L = kL0 , and RS condition kwI T k < 1, with
wI = rk , yields:
rk kL0
< 1 (4.29)
1 + kL
0
Since both k and rk depend on kmax , this has to be solved iteratively to find
the value for km ax. It is expected that this will be lower than kmax,1 , since
the RS condition assumes to be complex.
SISO loopshaping control [H04Q7] 4-33
u y
wiI iI
c - K -?c+ p - G p-
-6 +
Gp (s) = G(s)(1 + wiI (s)iI (s))1 (4.30)
SISO loopshaping control [H04Q7] 4-34
We see that we need tight control and have to make S small at frequencies
where the uncertainty is large and wiI exceeds 1 in magnitude.
This may be surprising, because we intuitively expect that we have to detune
the controller when we have uncertainty (make S 1).
But, this uncertainty represents pole uncertainty, and at frequencies where
wiI exceeds 1, we allow for poles crossing from the LHP to the RHP, and we
then known that we need feedback in order to stabilize an unstable system.
SISO loopshaping control [H04Q7] 4-35
|1 + L(j)|
1
0 Re
L(j)
|wP (j)|
Figure 42: Nyquist plot illustration of nominal performance condition |wP | <
|1 + L|
SISO loopshaping control [H04Q7] 4-36
- wI - I d
b- K p -+?
b+ - G -+ ?
b+-p wP -yb
-
6
Im
|1 + L(j)|
1
0 Re
L(j)
|wP (j)|
|wI L|
Figure 44: Nyquist plot illustration of robust performance condition |wP | < |1+Lp |
SISO loopshaping control [H04Q7] 4-38
Thus, RP is not a big issue for SISO systems, and this is probably the
main reason why there is little discussion about RP in the classical control
literature. The situation is different for MIMO systems.
|wP S| + |wI T | min{|wP |, |wI |} (4.43)
We cannot have both |wP | > 1 (i.e. good performance) and |wI | > 1 (i.e.
more than 100% uncertainty) at the same frequency.
The RP condition for this problem is closely approximated by the following
mixed sensitivity H condition
wP S
p
= max |wP S|2 + |wT T |2 < 1 (4.44)
w T
T
It can be shown that this condition is within a factor of at most 2 to the
RP condition.
SISO loopshaping control [H04Q7] 4-40
This means that for SISO systems we can closely approximate the
RP-condition in terms of an H problem, so there is little need to make use
of structured singular values (-synthesis).
The RP-condition can be used to derive bounds on the loop shape |L|:
1 + |wP |
|L| > , (4.45)
1 |wI |
at frequencies where |wI | < 1 (low frequencies, tight control), and
1 |wP |
|L| < , (4.46)
1 + |wI |
at frequencies where |wP | < 1 (high frequencies).
SISO loopshaping control [H04Q7] 4-41
- K -?+ -
G -?
+- w
1
z
-
-6 + +
(a)
- w2 - 2 1
- K -?+ -
G -?
+- w
1
-6 + +
(b)
Figure 45: (a) RP with multiplicative uncertainty, (b) RS with combined multi-
plicative and inverse multiplicative uncertainty
SISO loopshaping control [H04Q7] 4-42
RS |1 + Lp | > 0, Lp ,
|1 + L(1 + w2 2)(1 w1 1 )1 | > 0, 1 , 2 ,
|1 + L + Lw2 2 w1 1 | > 0, 1 , 2 ,
SISO loopshaping control [H04Q7] 4-43
5.1.1 Introduction
K(s)
Introduction
Consider from now on that w is a scalar input (SI) and z is a vector output
(MO), e.g. a vector with 3 elements:
z1
z=
z2 (5.1)
z3
Introduction
kN1 (s)k < 1 kN2 (s)k < 1 kN3 (s)k < 1 (5.5)
By selection the proper input and outputs, NP, RS, and RP can be obtained.
SISO loopshaping control [H04Q7] 5-6
z2 z3 w
W1(s)
z1
K(s) G(s)
-
P(s)
z2 z3
W2(s) W3(s)
w z1
V(s) K(s) G(s) W1(s)
-
P
z3 z2
W3(s) W2(s)
W1(s)
z1
K(s) G(s)
-
V(s)
P
w
z1 z2
W1(s) W2(s)
w z3
K(s) G(s) W3(s)
-
P
|S(j)| , Re
|W1 (j)|
|U (j)| , Re
|W2 (j)|
|T (j)| , Re
|W3 (j)|
W1 (j) is large in frequency band where accurate tracking or disturbance
rejection is required.
W2 (j) is constant
W3 (j) is large in frequency band were the model is uncertain. Examples:
Measurement noise: important at high frequencies
Accelerometer: not useable at low frequencies
SISO loopshaping control [H04Q7] 5-19
Results
= 0.93
1/|W1| |KS|
1/|W2| 3 1/|W |
2 10 2
10
1/|W3|
0 2
10 10
2 1
10 10
4
10 2 1 0 1 2
0
10 2
10 10 10 10 10 10
1
10 10
0 1
10
2
10
Frequency [rad/s] Frequency [rad/s]
SISO loopshaping control [H04Q7] 5-22
Results
0
10
2
10 |S|
|T|
1/|W |
1
1/|W |
3
4
10 2 1 0 1 2
10 10 10 10 10
Frequency [rad/s]
Weighted complementary sensitivity functions contribute to robust control by ensuring that the magnitude is constrained to manage peak disturbances and system uncertainties. They must satisfy the condition ∥wT T∥∞ ≥ |wT (p)| for stability, where p is a real RHP pole of G(s). This constraint guarantees the system's robustness against instability and is integral in the design of H∞ optimal controllers to ensure flat frequency responses within desired specifications .
Uncertainties affect loop shaping design for SISO systems by imposing constraints on the loop gain to maintain stability and performance. For robust performance under uncertainties, the loop gain must be carefully shaped, especially in the crossover region, to ensure stability margin requirements are met . Uncertainties, including modelling errors and unmodeled dynamics, limit the achievable gain that can be applied without destabilizing the system, leading to a fundamental trade-off between performance and robustness . High loop gain is desired for good disturbance rejection and command following, but uncertainties require the gain to be reduced to prevent excessive system sensitivity to unmodeled dynamics or disturbances . Additionally, right-half plane zeros and plant delays further complicate the loop shaping design by introducing phase lags that need to be compensated without increasing the loop gain ."}
The H∞ norm is significant in loop shaping control because it provides a measure for the worst-case gain across all frequencies, representing the worst-case impact of disturbances on the system’s output. It is particularly relevant in achieving robust performance by ensuring that the gain does not exceed a critical threshold. The H∞ norm is calculated as the supremum (maximum) of the singular values of the transfer function matrix over all frequencies, often optimized in controller synthesis to minimize the maximum effect of uncontrolled inputs on the system output . Moreover, H∞ control involves shaping the closed-loop transfer functions such as sensitivity (S) and complementary sensitivity (T) to meet performance and robustness specifications . The fundamental loop-shaping design goal is to maximize loop gain within the bandwidth for stability and disturbance rejection while ensuring the controller remains properly scaled for real-world applications ."}
Loop shaping control handles complex systems by requiring considerably greater effort from the engineer compared to simpler systems. For stable plants where the loop transfer function L(s) crosses the negative real axis only once, the outlined procedure is relatively straightforward. However, for more complex systems, the delineated procedures need to be adapted, requiring more intricate adjustments to achieve the desired closed-loop performance .
For closed-loop stability, the weighted sensitivity function must satisfy ∥wP S∥∞ ≥ |wP (z)|, where z is the real right-half plane zero of the plant G(s), and wP(s) is any stable weight function . This requirement ensures that the system can accommodate peak disturbances while maintaining stability, reflecting the tradeoffs in sensitivity shaping .
Right-half plane (RHP) zeros limit the maximum achievable closed-loop bandwidth of a control system. For systems with a real RHP-zero at z, the bandwidth is constrained by the requirement that the crossover frequency ωc be less than half the absolute value of the zero, i.e., ωc < z/2. Complex RHP-z zeros impose similar constraints on bandwidth depending on their real and imaginary parts . Additionally, RHP-zeros introduce additional phase lag, which further limits the phase margin and robustness of the control system, making it difficult to achieve a desired loop gain frequency response . This leads to peaks in the sensitivity function, which are unavoidable when attempting to balance performance and robustness . The presence of RHP-zeros thus imposes a fundamental constraint on the bandwidth and overall achievable performance of the control system .
Robust stability (RS) ensures system stability for all possible plant perturbations within an uncertainty set, typically characterized by avoiding encirclements of the point -1 in the Nyquist plot, ensuring that the condition |wIT| < 1 is satisfied for all frequencies under the given uncertainties . Robust performance (RP), on the other hand, goes further by requiring that the system not only remains stable but also meets specified performance criteria under the same range of uncertainties. This involves satisfying both the nominal performance and robust stability conditions so that the combined metric |wPS| + |wIT| remains below 1 for all frequencies . Therefore, RP includes RS as a prerequisite but adds additional performance requirements .
Weighting functions in H∞ mixed sensitivity design allow the designer to shape the magnitudes of sensitivity functions such as S (sensitivity), T (complementary sensitivity), and KS (input sensitivity) directly by selecting appropriate weighting functions wP, wu, and wI for the mixed sensitivity problem . These functions are used to enforce specifications on different transfer functions and manage trade-offs between performance and robustness . By minimizing the H∞ norm of the weighted sensitivity functions, the designer can ensure that the transfer functions remain close to the inverse of the weighting functions, controlling the level of performance and disturbance rejection the controller achieves . The choice of these functions is crucial as it determines the desired frequency response characteristics of the closed-loop system ."}
The "ideal" controller would fail to manage system delays in scenarios where the plant transfer function G contains time delays because perfect control requires the inversion of G, and any delay within G makes its inverse unrealistic, containing predictions and thus becoming unaccomplishable . Furthermore, the presence of unstable poles or RHP-zeros in the system imposes limitations on disturbance attenuation and complicates feedback inversion, ultimately impacting control performance . The ideal complementary sensitivity (T) is present when S + T = 1, meaning effective disturbance rejection is possible where T is close to 1, and at higher frequencies, T is minimized to suppress noise . However, designs must handle the trade-off between sensitivity S and T through constraints that avoid peaks in S across certain frequencies, the so-called "waterbed effect" .
Inverse multiplicative uncertainty in robust control is used to represent plant uncertainties, especially pole uncertainties. This approach models the plant as \( G_p(s) = G(s)(1 + w_{iI}(s)∆_{iI}(s))^{-1} \), where \( |∆_{iI}(jω)| \le 1 \) for all frequencies . This form of uncertainty is advantageous because it allows for uncertainties involving the location of unstable poles and enables poles to cross between the left-half plane (LHP) and the right-half plane (RHP). By using inverse multiplicative uncertainty, the system can effectively stabilize an unstable system by employing feedback at frequencies where the weight \( w_{iI} \) exceeds 1, which is crucial for managing systems where pole positions are uncertain ."}