Вы находитесь на странице: 1из 79

Tracking and Disturbance Rejection

1/79
Reference tracking by full-information and output-feedback
A substantial generalization: The regulation problem
The regulator equation
Disturbance estimators
Regulation by full-information and output-feedback
Extension to general signal models
The general regulator theory
Detailed discussion of motor example
Related Reading
[KK]: 7.4 [AM]: 3 (examples), 6.4
Tracking
2/79
So far we have concentrated on (asymptotically) steering the state of a
system to an equilibrium, possibly in an optimal fashion according to an
integral quadratic cost criterion.
In practice it is often required to steer some output of the system to
a specic location as desired by a user. Examples:
Pilot: Moving the joystick forward in order to let aircraft tilt forward
to the specied angle.
Car driver: Pushing the gas-pedal to a certain position such that the
car drives with a desired speed.
Manufacturing: Letting a welding robot follow a path on a car body.
Abstract Task: Design a controller such that a specied system
output z follows an external reference signal r as well as possible.
The Classical Tracking Conguration
3/79
Consider the following system H, also called to-be-controlled plant:
H
z u
Suppose that z should follow the external reference signal r. Idea:
Compute the error signal e = r z. If e = 0 no action is required.
If e = 0 then generate a control signal u to drive e back to zero.
This should be achieved with an error feedback controller u = Ke.
The error signal e is the information available to the controller.
The controlled system can clearly be depicted as
H K
+
u z

r e
Example: Water Heater
4/79
With input voltage u, water temperature T and surrounding temperature
S as well as the thermal capacitance C > 0 of water and the thermal
resistance R > 0 of the wall, a simple model is C

T +
1
R
(T S) = u.
For some nominal temperature value S
0
of S (such as 20 degrees Celsius)
set x = T S
0
and d = S S
0
. This leads to the system
x = ax +bu +b
d
d.
with positive constants a, b, b
d
. We intend to control x which motivates
to introduce the following output:
z = cx with c = 1.
Let us emphasize the following interpretations:
u is the control input variable manipulated by the controller.
d is a disturbance input that cannot be inuenced by control.
z is the to-be-controlled signal/output/variable.
Example: Water Heater
5/79
Let us consider the situation that d = 0. We then get
x = ax +bu, z = cx.
The simplest error feedback controller is dened by a constant gain:
u = k(r z).
The controlled system clearly is
x = (a +bkc)x +bkr, z = cx.
Obvious facts:
k stabilize the system i k > a/(bc).
If r = r
0
is a constant reference value, the output converges to
z
0
=
cbk
a +bkc
r
0
.
We have z
0
= r
0
i cbk/(a+bkc) = 1. This cannot be achieved!
Example: Water Heater
6/79
Remedy 1: High-gain feedback
If we let k grow large, the steady-state error
|r
0
z
0
| =

a
a +bkc

|r
0
| can be rendered small.
We cannot obtain exact asymptotic tracking. But still we achieve
+ stabilization and approximate tracking
+ both properties are robust: essentially independent of values of a, b, c
However, this comes along with disadvantages:
large errors lead to large control actions
small tracking errors require high-gain
high-gains could destabilize more complicated systems
Good design framework: H

-synthesis (Robust Control)


High-Gain Feedback: C = 1, R = 10, = 1
7/79
Step responses from reference r to z and u:
0 0.5 1 1.5 2 2.5 3
0
0.2
0.4
0.6
0.8
time
t
e
m
p
e
r
a
t
u
r
e
k = 1
k = 2
k = 5
k = 10
k = 20
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
2
4
6
8
10
time
t
e
m
p
e
r
a
t
u
r
e
Example: Water Heater
8/79
Ingenious remedy 2: Incorporate integral action
Proportional integral (PI) controller with gains k
p
and k
i
:
u(t) = k
p
e(t) +k
i
_
t
0
e() d with e(t) = r(t) z(t).
A state-space description is
x
K
= 0x
K
+ 1(r z), u = k
i
x
K
+k
p
(r z), x
K
(0) = 0.
The controlled system reads as
_
x
x
K
_
=
_
a bk
p
c bk
i
c 0
__
x
x
K
_
+
_
bk
p
1
_
r
z =
_
c 0
_
_
x
x
K
_
If k
p
and k
i
render the controlled system asymptotically stable then
the PI controller achieves exact tracking.
PI Control: C = 1, R = 10, = 1
9/79
Step responses from reference r to z and u for k
i
= 1:
0 0.5 1 1.5 2 2.5 3
0
0.5
1
time
t
e
m
p
e
r
a
t
u
r
e
k = 1
k = 2
k = 5
k = 10
k = 20
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
2
4
6
8
10
time
t
e
m
p
e
r
a
t
u
r
e
Example: Water Heater
10/79
Remedy 3: Assume that both z and r are available for control
We stress that, in practice, this might or might not be possible!
A two-degrees of freedom controller with a static feedback gain
k
p
and a static feedforward-gain k
f
is dened as
u = k
p
(r z) +k
f
r.
Design strategy:
Choose k
p
such that u = k
p
(r z) stabilizes the system.
Adjust k
f
such that the steady-state gain of the system is 1.
Questions:
Under which conditions on the system is this strategy applicable?
How can we generalize to multivariable systems of higher order?
Example: Water Heater
11/79
With u = k
p
(r z) +k
f
r the controlled system clearly is
x = (a +bk
p
c)x +bk
p
k
f
r, z = cx.
Design:
Choose and k
p
= 0 such that (a +bk
p
c) < 0.
Then the steady state-response of z for the controlled system and
with constant r is given by
z =
cbk
p
a +bk
p
c
k
f
r.
Since cb = 0 we can take k
f
for which the steady-state gain is 1.
The choice of k
f
depends on the system parameters. If the controller is
implemented on a system with dierent values of a, b, c, then k
f
will
most probably not be the correct feed-forward gain to achieve tracking.
2-DOF Design: C = 1, R = 10, = 1
12/79
Step responses from reference r to z and u for k
i
= 1:
0 0.5 1 1.5 2 2.5 3
0
0.2
0.4
0.6
0.8
1
time
t
e
m
p
e
r
a
t
u
r
e
k = 1
k = 2
k = 5
k = 10
k = 20
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
2
4
6
8
10
time
t
e
m
p
e
r
a
t
u
r
e
The Tracking Problem
13/79
Let us hence consider a system
x = Ax +Bu
y = Cx +Du
z = C
z
x +D
z
u
with a measurement output y which is available for control, and some
to-be-controlled output z which should track the reference. Note that
z can - but must not - be a copy of y (C = C
z
and D = D
z
)!
Goal: Design a controller which stabilizes the system and for which
z asymptotically tracks all constant reference signals r:
lim
t
[r z(t)] = 0.
In order to be able to stabilize the system we assume from now on that
(A, B) is stabilizable and (A, C) is detectable.
Block Diagram and Controller Structure
14/79
The uncontrolled system can be depicted as
H
z
y
u
We need to specify a controller structure with which the goal should be
achieved. We opt for a general two-degrees of freedom controller
K
y
K
u
K
r
The controlled system is obtained with u = y
K
and u
K
= y as
H
z
u
K
y
r
Tracking by Full-Information Feedback
15/79
We start with the assumption y = x (which amounts to C = I, D = 0).
A linear static full-information controller is described by
u = Fx +Gr =
_
F G
_
_
x
r
_
with to-be-chosen gain matrices F and G. How should they be designed?
The controlled system is described as
x = (A BF)x +BGr, z = (C
z
D
z
F)x +D
z
Gr.
Since the system should be stabilized, we choose F such that ABF
is Hurwitz. Then the steady-state response for constant r is
z = [D
z
(C
z
D
z
F)(A BF)
1
B]Gr.
For asymptotic tracking we would like to guarantee that z = r for all
possible constant reference inputs r. This requires to take G with
[D
z
(C
z
D
z
F)(A BF)
1
B]G = I. ()
Motor Example
16/79
Let us consider the normalized model of a DC-motor ([F] p.20) with the
applied voltage and the shaft-angle as its input and output:
x =
_
0 1
0 1
_
x +
_
0
1
_
u, y = z =
_
1 0
_
x, x =
_

_
.
With a state-feedback gain F satisfying eig(ABF) = {2 i}, the
feedforward gain is G = 5. Simulated responses ((0) = 1, (0) = 0):
0 2 4 6 8 10
10
0
10
Control action
0 2 4 6 8 10
2
0
2
Reference (red) and output
Tracking by Output-Feedback
17/79
If x is not measurable (y = x), we can choose L such that A LC is
Hurwitz and design the observer

x = A x +Bu +L(y y), y = C x +Du


in order to asymptotically reconstruct the state. Then the separation
principle motivates to control the system - with the gains F and G
designed for full-information feedback - as
u = F x +Gr.
The constructed output-feedback controller (based on the measured
signals r and y) stabilizes the system and achieves tracking.
We conclude that the separation principle holds: We can combine a
full-information controller with an observer to obtain an output-feedback
controller that achieves the desired task.
Proof
18/79
The dynamics of the estimation error x = x x are described by

x = x

x = Ax +Bu A x Bu L(y y) = (A LC) x.
Since u = Fx+F x+Gr, the controlled system admits the description
_
x

x
_
=
_
A BF BF
0 A LC
__
x
x
_
+
_
BG
0
_
r,
z =
_
C
z
D
z
F D
z
F
_
_
x
x
_
+D
z
Gr.
Since A BF and A LC are Hurwitz, the closed-loop system is
asymptotically stable. Then note that the reference input does not drive
the estimation error dynamics! Therefore the steady-state value of the
output z is, as for full-information feedback, still simply given by
[D
z
(C
z
D
z
F)(A BF)
1
B]Gr.
Due to the choice of G this indeed equals r.
Motor Example
19/79
Placing the error dynamics eigenvalues at 84i leads to the following
response for output-feedback control:
0 2 4 6 8 10
20
0
20
Control action (fi: blue, of: green)
0 2 4 6 8 10
2
0
2
Reference (red) and output (fi: blue, of: green)
Employed Implementations
20/79
Full-information control:
x = Ax +Bu
z = C
z
x +D
z
u
y = x
G
r u
F

+
z
x
Output-Feedback Control:
x = Ax +Bu
z = C
z
x +D
z
u
y = Cx +Du
G
r u

+
z
y

x=(ALC) x+(BLD)u+Ly
v = F x
My Matlab Code
21/79
A=[0 1;0 -1];B=[0;1];Ch=[1 0];Dh=0;C=Ch;;D=Dh;x0=[-1;0];
p=[-2+i;-2-i];F=place(A,B,p);G=1/(Dh-(Ch-Dh*F)*inv(A-B*F)*B);
L=place(A,C,4*p);
%observer: inputs u,y
ob=ss(A-L*C,[B-L*D L],F,0);xc0=[0;0];
%system for simulation: inputs r,u outputs u,z,r,u,y
z=[0 0];sy=ss(A,[z B],[z;Ch;[z;z];C],[0 1;0 Dh;eye(2);0 D]);
%controller: inputs r u y
co=[G -ob];cl=lft(sy,co); %nice command for closing loops!
t=linspace(0,10,1e3);r=square(t);[y,to]=lsim(cl,r,t,[x0;xc0]);
figure(1);np=2;subplot(np,1,1);plot(to,y(:,1));grid on;
title(Control action)
subplot(np,1,2);plot(to,y(:,2),t,r,r);grid on;
title(Reference (red) and output);
Some Reections
22/79
We obtained a recipe for designing tracking controllers. However, we
have not yet gotten any insights under which conditions the procedure
is successful at all.
Questions to be discussed in the upcoming regulator theory:
What are the precise conditions for the existence of G? Is it depending
on the choice of F whether we can construct G?
Is it possible to design tracking controllers even if r is not measurable?
For example, one can often only measure the tracking error y = zr.
In addition to tracking, can we also reject disturbances?
Can one track other than constant signals? Interesting practical cases
are ramps or sinusoidal signals of a specied frequency.
Solvability Condition
23/79
Note that equation () can be re-written with = (A BF)
1
BG
as (C
z
D
z
F) +D
z
G = I. Hence
(A BF) +BG = 0 and (C
z
D
z
F) +D
z
G = I
which is easily re-arranged to
A +B(GF) = 0 and C
z
+D
z
(GF) I = 0.
With = GF we nally arrive at the so-called regulator equation
_
A B
C
z
D
z
__

_
+
_
0
I
_
= 0.
The existence of a solution to this equation is the precise condition
for the existence of a tracking controller! We already proved necessity.
If and are solutions and F renders ABF Hurwitz, set G = +F
and reverse the arguments to obtain () (which proves suciency).
Example: Water Heater
24/79
The tracking controller on slide 12 was designed without taking a possi-
ble deviation of d from zero into account. Lets see what happens if the
room temperature is not equal to S
0
such that d = 0. The controlled
system then reads as
x = (a +bk
p
c)x +bk
p
k
f
r +b
d
d, z = cx.
If a +bk
p
c > 0, the steady-state response for constant r, d is
z = r +
cb
d
a +bk
p
c
d.
Clearly a nonzero disturbance d spoils the tracking behavior.
Questions:
Can we design a controller that achieves tracking irrespective of d?
If not, does it help if buying a sensor in order to measure d?
A Leap Forward: The Regulation Problem
25/79
Let us now substantially generalize the discussed scenario. Consider
x = Ax +Bu +B
d
d
y = Cx +Du +D
d
d
e = C
e
x +D
e
u +D
ed
d.
This so-called generalized plant has some control input u and a
measurement output y. Moreover it is aected by a generalized
disturbance d and species a performance output e.
Regulation Problem: Design a feedback controller
x
K
= A
K
x
K
+B
K
y, u = C
K
x
K
which stabilizes the controlled system and which achieves regulation
for constant generalized disturbances d:
lim
t
e(t) = 0.
We also say that d is asymptotically rejected from e or suppressed at e.
Block Diagram and Controller Structure
26/79
The uncontrolled system can be depicted as
P
e
y
d
u
The intention is to design a feedback controller
K
y
K
u
K
The controlled system is obtained with u = y
K
and u
K
= y as
P
e d
K
y u
Special Problem 1: Reference Tracking
27/79
The reference tracking problem as on slide 13 for the system
x = Ax +Bu, y =

Cx +

Du, z = C
z
x +D
z
u (System)
is subsumed to the regulation problem for the generalized plant
x = Ax +Bu + 0d
y =
_

C
0
_
x +
_

D
0
_
u +
_
0
I
_
d
e = C
z
x +D
z
u + (I)d.
Here d admits the interpretation as a reference signal. Observe that
d does not directly aect the plants state.
The measurement output is a stacking of

Cx +

Du and d. It could
as well consist of other linear combinations of these signals.
The performance output e is the tracking error C
z
x+D
z
ud. Clearly
C
z
x +D
z
u asymptotically tracks d i e(t) 0 for t .
Special Problem 2: Disturbance Rejection
28/79
The input d is called generalized disturbance since it can consist of
known components (such as reference signals) and real disturbances
that are caused by unknown sources (such as measurement noise).
Then B
d
, D
d
, D
ed
determine how the disturbance aects the state, the
measurement output and the performance output. Some terminology:
B
d
d is often called the process disturbance.
D
d
d is the so-called measurement noise.
D
ed
d is a load disturbance.
Dierent choices of these matrices oer a high modeling exibility. For
example, if only modeling measurement noise one would choose B
d
=
0, D
ed
= 0 and take the components of D
d
= 0 as weights to describe
how much each component of y is aected by the noise d.
SP 3: Reference Tracking with Measurement Noise
29/79
If linear, the controller on slide 14 can be written as
y
K
= K
_
r
u
K
_
=
_
K

K
fb
_
_
r
u
K
_
= K

r +K
fb
u
K
.
The controlled system (u
K
= y and u = y
K
) can be depicted as
System + K

K
fb
r u
z
y
If y is corrupted by measurement noise we get
System + K

K
fb
+
r u
z
y
d
y
Reference Tracking and Disturbance Rejection
30/79
The generalized plant for the conguration on slide 29 with (System) is
clearly given by
x = Ax +Bu,
y =
_

C
0
_
x +
_

D
0
_
u +
_
I 0
0 I
__
d
y
r
_
e = C
z
x +D
z
u +
_
0 I
_
_
d
y
r
_
The measurement output consists of

Cx +

Du + Id
y
and r, while the
generalized disturbance has the components d
y
and r.
In conclusion, if we can solve the regulation problem on slide 25,
we actually provide a solution to a whole variety of in itself relevant
more special control problems (as in the examples).
Seemingly dierent design problems are handled in a unied framework.
Summary on Setup
31/79
d is called generalized disturbance since it can include both user-
specied as well as unknown externals signals that are not inuenced
by control.
y encompasses those signals that are available to the controller for
processing. y can contain components of d in case that these are
available for control.
The generalized plant P on slide 26 encodes information about the
to-be-controlled system and its relation to the desired controller and
system-controller interconnection structure.
Although K on 26 is (formally) a feedback controller, it can consist
of both feedback- and feed-forward components.
Slide 26 depicts a generic abstract design framework that covers a
lot of (and many more than mentioned) interconnection structures.
Main Result: Nominal Regulation
32/79
Its a beautiful coincidence that, despite this substantially higher level of
generality, the previous solution approach extends without much eort.
Theorem 1 Let (A, B) be stabilizable and the regulator equation
_
A B
C
e
D
e
__

_
+
_
B
d
D
ed
_
= 0 (R0)
have a solution. Then there exist static gains F, G such that the full-
information controller u = Fx+Gd solves the regulation problem.
Solvability of the regulator equation is also a necessary condition!
The gains are designed as follows:
Choose any F such that A BF is Hurwitz.
If and are solutions of the regulator equations then set
G := +F.
Alternative Proof for Full-Information Feedback
33/79
The controlled system is
x = (A BF)x +BGd +B
d
d,
e = (C
e
D
e
F)x +D
e
Gd +D
ed
d.
Asymptotic stability: If d = 0 then lim
t
x(t) = 0 for any x(0).
To show regulation let us perform the transformation = x d. Due
to

d = 0 and x = +d the closed-loop system admits the description

= (A BF) + [(A BF) +BG+B


d
]
. .
A+B+B
d
=0
d = (A BF),
e = (C
e
D
e
F) + [(C
e
D
e
F) +D
e
G+D
e
d]
. .
C
e
+D
e
+D
ed
=0
d = (C
e
D
e
F).
Regulation: lim
t
e(t) = 0 for any constant disturbance d and x(0).
Motor Example
34/79
Let the motor on slide 16 be aected by a torque disturbance:
x =
_
0 1
0 1
_
x +
_
0
1
_
u +
_
0
1
_
d, y = e =
_
1 0
_
x.
A full information controller u = Fx +Gd acts as follows:
0 2 4 6 8 10
0
2
4
Disturbance
0 2 4 6 8 10
5
0
5
Control
0 2 4 6 8 10
0.2
0
0.2
Regulated Output
However this controller cannot be implemented - only y is measurable.
Main Result: Nominal Regulation
35/79
Theorem 2 Let (A, B) be stabilizable and (A, C) be detectable.
Moreover suppose that
_
A B
d
C D
d
_
has full column rank (D)
and that the regulator equation (R0) is solvable. Then the regu-
lation problem by output-feedback has a solution.
Stabilizability of (A, B) and detectability of (A, C) are required for con-
structing stabilizing controllers. The role of (D) will become clear in the
constructive proof with an algorithm for controller design.
Note that the to-be-solved regulator equations are identical for full-
information and output-feedback control.
For special congurations the hypothesis are often seen to be always
satised or they admit nice system theoretic interpretations.
Disturbance Estimators
36/79
Since we are only allowed to use y for control, we try to exploit the
separation principle for designing an output-feedback regulator. This
requires to design an observer that asymptotically reconstructs both the
system state x and the disturbance signal d from y. For this purpose we
include the model for the considered class of disturbances

d = 0
in the system dynamics. If neglecting e we get the extended system
_
x

d
_
=
_
A B
d
0 0
_
. .
A
E
_
x
d
_
+
_
B
0
_
. .
B
E
u,
y =
_
C D
d
_
. .
C
E
_
x
d
_
+Du.
The desired observer exists if this extended system is detectable.
Lemma 3 (A
E
, C
E
) is detectable if (A, C) is and if (D) holds.
Proof
37/79
By the Hautus-test we need to check whether
_
_
A I B
d
0 I
C D
d
_
_
has full column rank if Re() 0.
Since (A, C) is detectable, the matrix has full column rank for all = 0
with Re() 0.
For = 0 it is required that
_
_
A B
d
0 0
C D
d
_
_
has full column rank,
which is assured by (D).
Note that detectability of (A
E
, C
E
) also implies that (A, C) is detectable
and that (D) holds.
Motor Example
38/79
Let us design a state- and disturbance estimator for the model on sli-
de 34. The detectability hypothesis is satised. A pole-placing observer
for the extended system with eigenvalues {5, 6, 7} leads to
0 5 10 15 20
50
0
50
State (blue) and estimate (red)
0 5 10 15 20
5
0
5
State (blue) and estimate (red)
0 5 10 15 20
5
0
5
Disturbance (blue) and estimate (red)
Output Feedback Control
39/79
As motivated on slide 36 we design a regulator as follows: Check whether
(A, B) is stabilizable and
__
A B
d
0 0
_
,
_
C D
d
_
_
is detectable;
the regulator equation
_
A B
C
e
D
e
__

_
+
_
B
d
D
ed
_
= 0 is solvable.
If the answers are yes then choose
F, L such that A BF,
_
A B
d
0 0
_
L
_
C D
d
_
are Hurwitz;
G = +F where , satisfy the regulator equation.
Then the following controller solves the regulation problem:
_

x

d
_
=
_
A B
d
0 0
__
x

d
_
+
_
B
0
_
u +L(y y),
u =
_
F G
_
_
x

d
_
, y =
_
C D
d
_
_
x

d
_
+Du.
Proof: Output Feedback Control
40/79
If we merge

d = 0 with the system dynamics we get the extended system
_
x

d
_
=
_
A B
d
0 0
_
. .
A
E
_
x
d
_
. .
x
E
+
_
B
0
_
. .
B
E
u,
y =
_
C D
d
_
. .
C
E
_
x
d
_
+Du,
e =
_
C
e
D
ed
_
. .
C
eE
_
x
d
_
+D
e
u.
The constructed observer-based controller can then be written as

x
E
= A
E
x
E
+B
E
u +L(y y), y = C
E
x
E
+Du, u = F
E
x
E
where we made use of the abbreviations
x
E
=
_
x

d
_
and F
E
=
_
F G
_
.
It is now routine to compute the closed-loop dynamics.
Proof: Output Feedback Control
41/79
With the states x
E
and x
E
= x
E
x
E
they are described by
_
x
E

x
E
_
=
_
A
E
B
E
F
E
B
E
F
E
0 A
E
LC
E
__
x
E
x
E
_
, e =
_
C
eE
D
e
F
E
D
e
F
E
_
_
x
E
x
E
_
.
Note that x
E
= ... and e = ... read more explicitly as
x = (A BF)x + (B
d
+BG)d +BF
E
x
E
,

d = 0,
e = (C
e
D
e
F)x + (D
ed
+D
e
G)d +D
e
F
E
x
E
.
(sub)
We can hence extract the closed-loop interconnection of the original
system and our controller by just canceling

d = 0. This leads to
_
x

x
E
_
=
_
A BF BF
E
0 A
E
LC
E
__
x
x
E
_
+
_
B
d
+BG
0
_
d,
e =
_
C
e
D
e
F D
e
F
E
_
_
x
x
E
_
+ (D
ed
+D
e
G)d.
Lets now check that the controller does the job.
Proof: Output Feedback Control
42/79
Asymptotic stability: Suppose d = 0. Since ABF and A
E
LC
E
are Hurwitz, we infer for arbitrary x(0) and x
E
(0) that
lim
t
x(t) = 0 and lim
t
x
E
(t) = 0.
Regulation: Suppose that d is an arbitrary constant disturbance signal.
Since

x
E
= (A
E
LC
E
) x
E
we then still infer that
lim
t
x
E
(t) = 0.
Hence the controller acts as a state and disturbance estimator in closed-
loop (which is practically relevant for diagnosis purposes)! Finally note
that e in (sub) is e
1
+e
2
where e
1
is the output for x
E
= 0 and e
2
is
z = (ABF)z +BF
E
x
E
, e
2
= (C
e
D
e
F)z +D
e
F
E
x
E
, z(0) = 0.
Due to the full-information arguments, e
1
(t) 0 for t . Since
z(t) 0 (Lemma 4) and thus e
2
(t) 0 we infer e(t) 0 for t .
Proof: Output Feedback Control
43/79
Lemma 4 Let A be Hurwitz and suppose that lim
t
v(t) = 0.
Then all solutions of x = Ax +v satisfy lim
t
x(t) = 0.
Motor Example
44/79
Let us design an output-feedback controller for the motor example on
slide 38 that rejects the torque disturbance from e = . All hypothesis
are satised. A regulating controller leads to the following results:
0 5 10 15 20
0
2
4
Disturbance
0 5 10 15 20
5
0
5
Control
0 5 10 15 20
0.5
0
0.5
Regulated Output
Motor Example
45/79
Suppose that, in addition to disturbance rejection, should as well track
a reference signal. This can be subsumed to our problem and, still, all
hypothesis are satised. We obtain the following simulation results:
0 5 10 15 20 25
5
0
5
Disturbance and Reference (red)
0 5 10 15 20 25
10
0
10
Control
0 5 10 15 20 25
2
0
2
Tracked Output
My Matlab Code
46/79
A=[0 1;0 -1];B=[0;1];Bd=[0 0;1 0];
Ch=[1 0];Dh=0;Dhd=[0 -1];
C=[1 0;0 0];D=[0;0];Dd=[0 0;0 1];
X=-inv([A B;Ch Dh])*[Bd;Dhd];Pi=X(1:2,:);Ga=X(3:end,:);
p=[-2+i;-2-i];F=place(A,B,p);G=Ga+F*Pi;
Ae=[A Bd;zeros(2,4)];Be=[B;zeros(2,1)];Ce=[C Dd];Fe=[F -G];
L=place(Ae,Ce,[-10 -11 -12 -13]);
z=[0 0];sys=ss(A,[Bd B],[Ch;z;C],[z Dh;z 1;Dd D]);
co=ss(Ae-L*Ce-Be*Fe+L*D*Fe,L,Fe,0);
cl=lft(sys,-co)
t=linspace(0,25,1e3);
d=1*(t>0&t<4)+2*(t>4&t<8)+4*(t>8&t<12)+0*(t>12);
r=square(t/1.5);[y,to]=lsim(cl,[d r],t);
Signal Models
47/79
So far the generalized disturbance signal was assumed to be constant.
This signal set is equal to the solution set of the the dierential equation

d = 0.
This system can thus be viewed as a signal model or signal generator.
We are thus lead to immediate generalizations. For example, sinusoidal
signals of frequency are generated by

d = Sd with S =
_
0
0
_
since e
St
=
_
cos(t) sin(t)
sin(t) cos(t)
_
.
Even more generally, we can work with block-diagonal matrices
S = diag
__
0 1
0 0
_
,
_
0
1

1
0
_
, . . . ,
_
0
s

s
0
__
in order to model constants, ramps and sinusoids of frequencies
1
, ...,
s
.
Extension of Design Procedure
48/79
In our development we can replace

d = 0 all throughout by

d = Sd. One
can design stabilizing controllers that achieve regulation for all signals
d(t) = e
St
d
0
with arbitrary unknown d
0
R
dim(S)
under the following hypothesis:
1. Persistent disturbances: S has no eigenvalues in C

.
2. Existence of stabilizing state-feedback gain: (A, B) is stabilizable.
3. Solvability of regulator equation: There exist and with
_
A B
C
e
D
e
__

_

0
_
S +
_
B
d
D
ed
_
= 0. (R)
4. Existence of a state and disturbance estimator:
(A
E
, C
E
) :=
__
A B
d
0 S
_
,
_
C D
d
_
_
is detectable.
Extension of Design Procedure
49/79
Under the given hypothesis a regulator is designed as follows: Choose
F, L such that A BF,
_
A B
d
0 S
_
L
_
C D
d
_
are Hurwitz;
G = +F where , satisfy the regulator equation (R).
Then the controller
_

x

d
_
=
_
A B
d
0 S
__
x

d
_
+
_
B
0
_
u +L(y y),
u =
_
F G
_
_
x

d
_
, y =
_
C D
d
_
_
x

d
_
+Du
stabilizes the system and achieves regulation lim
t
e(t) = 0 for all
generalized disturbances satisfying

d = Sd.
The proof requires hardly any modication of what has been shown.
Remarks
50/79
1. In view of Lemma 4 it makes sense to consider only non-decaying
disturbances - the others are regulated by all stabilizing controllers.
This justies the assumption eig(S) C
0
C
+
.
2. and 3. have been discussed earlier.
4. is too strong. It suces that (A, C) is detectable and that (C
e
D
ed
)
vanishes on the undetectable subspace of the extended system.
In the practically important situation y = e one can fully dispense
with 4. without any additional conditions.
In the design procedure, L needs to be chosen such that
A
E
LC
e
is maximally stable: The unstable subspace of A
E
LC
E
is equal
to the undetectable subspace of (A
E
, C
E
). Such an L can be easily
found after transforming the system into observability normal form.
Motor Example
51/79
Suppose that the disturbance is still constant but that the reference is
cos(t) + sin(t) with arbitrary unknown , R.
This motivates to choose the signal generator
S =
_
_
0 0 0
0 0 1
0 1 0
_
_
since e
St
=
_
_
1 0 0
0 cos(t) sin(t)
0 sin(t) cos(t)
_
_
.
Disturbances are all solutions of

d = Sd. Then d
1
(t) is the constant
torque disturbance and d
2
(t) is the reference signal. Since d
3
(t) is irre-
levant, we are lead to the following generalized plant used for design:
x =
_
0 1
0 1
_
x +
_
0
1
_
u +
_
0 0 0
1 0 0
_
d,
y =
_
1 0
0 0
_
x +
_
0 0 0
0 1 0
_
d,
e =
_
1 0
_
x +
_
0 1 0
_
d.
Motor Example
52/79
Clearly (A, B) =
__
0 1
0 1
_
,
_
0
1
__
is controllable and
(A
E
, C
E
) =
_
_
_
_
_
_
_
_
_
_
_
_
0 1 0 0 0
0 1 1 0 0
0 0 0 0 0
0 0 0 0 1
0 0 0 1 0
_
_
_
_
_
_
,
_
1 0 0 0 0
0 0 0 1 0
_
_
_
_
_
_
_
is observable.
The regulator equation is
_
_
0 1 0
0 1 1
1 0 0
_
_
_

_

0
_
_
_
0 0 0
0 0 1
0 1 0
_
_
+
_
_
0 0 0
1 0 0
0 1 0
_
_
= 0
and has the solution
_

_
=
_
_
0 1 0
0 0 1
1 1 1
_
_
.
Hence we are sure that we can design a regulator!
Motor Example
53/79
We take F and L with eig(ABF) = {2i} and eig(A
E
LC
E
) =
{5, 6, 7, 8, 9}. (These have not been chosen very carefully!)
We obtain the controller
_

x

d
_
=
_
_
_
_
_
_
0 1 0 0 0
0 1 1 0 0
0 0 0 0 0
0 0 0 0 1
0 0 0 1 0
_
_
_
_
_
_
_
x

d
_
+
_
_
_
_
_
0
1
0
0
0
_
_
_
_
_
u +
_
_
_
_
_
19.95 1.43
122.53 17.65
313.9 61.83
0.15 14.05
1.09 47.38
_
_
_
_
_
(y y),
u =
_
5 3 1 4 4
_
_
x

d
_
, y =
_
1 0 0 0 0
0 0 0 1 0
__
x

d
_
.
For simulations this controller is interconnected with the system
x =
_
0 1
0 1
_
x +
_
0
1
_
u +
_
0
1
_
d
1
,
y =
_
1 0
0 0
_
x +
_
0
1
_
d
2
, z =
_
1 0
_
x.
How Did I Solve the Regulator Equation?
54/79
%solve regulator equation with Kronecker algebra
M=[A B;Ch Dh];
n=size(A,1);n1=size(M,1)-n;n2=size(M,2)-n;
As=kron(eye(3),M);
As=As-kron(S,[eye(n) zeros(n,n2);zeros(n1,n) zeros(n1,n2)]);
bs=-vec([Bd;Dhd]);
x=As\bs;
X=reshape(x,3,3);
Pi=X(1:2,:);
Ga=X(3,:);
%check whether indeed satisfied:
M*[Pi;Ga]-[Pi;zeros(1,3)]*S+[Bd;Dhd]
Motor Example
55/79
We arrive at the following nice simulation results:
0 5 10 15 20 25
5
0
5
Disturbance (blue) and Reference (red)
0 5 10 15 20 25
20
0
20
Control
0 5 10 15 20 25
5
0
5
Tracking Output
Motor Example
56/79
If only the tracking error is measurable (y = r) we obtain:
0 5 10 15 20 25
5
0
5
Disturbance (blue) and Reference (red)
0 5 10 15 20 25
0
20
40
Control
0 5 10 15 20 25
5
0
5
Tracking Output
Discussion
57/79
The following observations can be made in case that y = e:
The constructed controller incorporates a model of the generalized
disturbances. Under specic hypothesis it can be shown that this is
a necessary property for a controller to achieve regulation. This fact
is often called the internal-model principle.
If the disturbances are directly measured, a regulator typically places
zeros of the controlled system at the to-be-suppressed frequencies
by rightly balancing the measurements. This can be sensitive to
modeling errors (non-robustness).
If d is not directly measured, the controller typically has poles at the
to-be-suppressed frequencies which creates zeros of the closed-loop
system at those frequencies. Usually, such designs are more robust.
For constant disturbances the controller has integral action!
There exists a systematic way to design robust regulators.
Recap: The Stable Subspace of a Matrix
58/79
For A R
nn
factorize the characteristic polynomial
A
as
A
=
with and having only zeros in C

and C
0
C
+
respectively. Then
E

(A) := ker((A)) and E


0+
(A) := ker((A))
are the generalized eigenspaces of A w.r.t. C

and C
0
C
+
respectively.
E

(A) (E
0+
(A)) is the largest among all subspaces V R
n
such that
AV V and eig(A|
V
) C

(eig(A|
V
) C
0
C
+
).
E

(A) is also called the stable subspace of A. If T


1
is a basis matrix
of E

(A) and T
2
is chosen such that T = (T
1
T
2
) is invertible, we infer
T
1
AT =
_
A
11
A
12
0 A
22
_
with eig(A
11
) C

, eig(A
22
) C
0
C
+
.
Recall that such an (even orthogonal) similarity transformation T can
be computed eectively with the (real ordered) Schur decomposition.
Block-Diagonalization
59/79
Now let eig(A
11
) C

and eig(A
22
) C
0
C
+
. Then we infer
E

_
A
11
A
12
0 A
22
_
= Im
_
I
0
_
=
__
x
1
x
2
_
R
n
| x
2
= 0
_
.
Moreover, the Sylvester equation
A
11
X XA
22
+A
12
= 0
has a unique solution X. It is then easy to see that
E
0+
_
A
11
A
12
0 A
22
_
= R
_
X
I
_
=
__
x
1
x
2
_
R
n
| x
1
Xx
2
= 0
_
.
Furthermore, the similarity transformation
T =
_
I X
0 I
_
block-diagonalizes the block-triangular matrix as follows:
T
1
_
A
11
A
12
0 A
22
_
T =
_
A
11
A
11
X XA
22
+A
12
0 A
22
_
=
_
A
11
0
0 A
22
_
.
A Key Characterization of Output Stability
60/79
With eig(A
11
) C

and eig(A
22
) C
0
C
+
consider the system
x =
_
A
11
A
12
0 A
22
_
x, y =
_
C
1
C
2
_
x.
With X satisfying A
11
X XA
22
+A
12
, transform the system into
z =
_
A
11
0
0 A
22
_
z, y =
_
C
1
C
1
X +C
2
_
z.
In view of the assumed spectral properties, we infer lim
t
C
1
e
A
11
t
= 0.
Moreover, lim
t
(C
1
X +C
2
)e
A
22
t
= 0 i C
1
X +C
2
= 0. Therefore
lim
t
y(t) = 0 holds for all trajectories i C
1
X +C
2
= 0.
This can be expressed in a coordinate-free fashion as follows.
Lemma 5 All trajectories of the system x = Ax, y = Cx satisfy
lim
t
y(t) = 0 i E
0+
(A) N(C).
The Undetectable Subspace
61/79
Denition 6 The undetectable subspace of (A, C) is the largest
A-invariant subspace contained in N(C) such that the restriction of
A to this subspace has all its eigenvalues in C
0
C
+
.
A geometric characterization can be given as follows.
Lemma 7 Let U be the unobservable subspace of (A, C) and E
0+
be the generalized eigenspace of A with respect to C
0
C
+
. The
undetectable subspace of (A, C) then equals U E
0+
.
Rendering the Undetectable Subspace Explicit
62/79
By Theorem IV-8 (observability normal form) and slide 59, x = Ax+Bu,
y = Cx +Du can be transformed by a state-coordinate change into
_
_
z
1
z
2
z
3
_
_
=
_
_
A
11
0 0
A
21
A
22
0
A
31
0 A
33
_
_
_
_
z
1
z
2
z
3
_
_
+
_
_
B
1
B
2
B
3
_
_
u
y =
_
C
1
0 0
_
_
_
z
1
z
2
z
3
_
_
+Du
such that (A
11
, C
1
) is observable, A
22
is Hurwitz, eig(A
33
) C
0
C
+
.
Lemma 8 For (A, C) as above the undetectable subspace is
R
_
_
0
0
I
_
_
=
_
_
_
_
_
z
1
z
2
z
3
_
_
| z
1
= 0, z
2
= 0
_
_
_
.
Proof
63/79
It is trivial to see that the given subspace has the three properties as
required in the denition. The following technique of proof that it is
largest should be remembered since it can be very useful for much more
complicated questions in geometric control. Suppose that V is any sub-
space with all three properties and let V be a basis matrix of V. Then
there exists some M with eig(M) C
0
C
+
and
_
_
A
11
0 0
A
21
A
22
0
A
31
0 A
33
_
_
_
_
V
1
V
2
V
3
_
_
=
_
_
V
1
V
2
V
3
_
_
M,
_
C
1
0 0
_
_
_
V
1
V
2
V
3
_
_
= 0.
Since A
11
V
1
= V
1
M and C
1
V
1
= 0, we infer V
1
= 0 by observability of
(A, C). Hence we get A
22
V
2
= V
2
M. Since eig(A
22
) eig(M) = we
infer from A
22
V
2
V
2
M = 0 that V
2
= 0 (Sylvester equation). Hence
R(V ) = R
_
_
0
0
V
3
_
_
R
_
_
0
0
I
_
_
.
Uncontrolled Generalized Plant
64/79
Consider the generalized plant with signal generator
_
_
x
e
y
_
_
=
_
_
A B
d
B
C
e
D
ed
D
e
C D
d
D
_
_
_
_
x
d
u
_
_
,

d = Sd. (P)
The extended generalized plant is
_
_
_
_
x

d
e
y
_
_
_
_
=
_
_
_
_
A B
d
B
0 S 0
C
e
D
ed
D
e
C D
d
D
_
_
_
_
_
_
x
d
u
_
_
.
Assumptions: (A, B) is stabilizable and (A, C) is detectable. The
signal generator S satises eig(S) C
0
C
+
.
Our goal is to obtain necessary conditions for solvability of the regulation
problem with a general controller x
K
= A
K
x
K
+B
K
u, y = C
K
x
K
.
Controlled Generalized Plant
65/79
If we interconnect the generalized plant with the controller
_
x
K
u
_
=
_
A
K
B
K
C
K
0
__
x
K
y
_
, (C)
we obtain the controlled system with signal generator
_

e
_
=
_
A B
C D
__

d
_
,

d = Sd (CL)
and the extended controlled system
_
_

d
e
_
_
=
_
_
A B
0 S
C D
_
_
_

d
_
.
Here we use the abbreviations
=
_
x
x
K
_
,
_
A B
C D
_
=
_
_
A BC
K
B
d
B
K
C A
K
+B
K
DC
K
B
K
D
d
C
e
D
e
C
K
D
ed
_
_
.
Proof
66/79
After permutation we have
_
_
x
y
e
_
_
=
_
_
A B B
d
C D D
d
C
e
D
e
D
ed
_
_
_
_
x
u
d
_
_
.
Merging with u = C
K
x
K
leads to
_
_
x
y
e
_
_
=
_
_
A BC
K
B
d
C DC
K
D
d
C
e
D
e
C
K
D
ed
_
_
_
_
x
x
K
d
_
_
.
Merging the controller dierential equation with y = ... shows
x
K
=
_
A
K
+B
K
DC
K
B
K
C B
K
D
d
_
_
_
x
K
x
d
_
_
.
Just combining the two leads to
_
_
x
x
K
e
_
_
=
_
_
A BC
K
B
d
B
K
C A
K
+B
K
DC
K
B
K
D
d
C
e
D
e
C
K
D
ed
_
_
_
_
x
x
K
d
_
_
.
Precise Problem Formulation
67/79
Regulation Problem: For the generalized plant (P) determine a
controller (C) such that the controlled generalized plant (CL) has
the following properties:
If d(t) = 0 for all t 0 then all state-trajectories of (CL) satisfy
lim
t
x(t) = 0 and lim
t
x
K
(t) = 0.
Equivalently, A is Hurwitz.
For all trajectories of (CL) the output satises
lim
t
e(t) = 0.
We have provided an extensive motivation for this abstract mathematical
problem formulated for some generalized plant. You should appreciate by
now that this generic problem formulation and solution covers a whole
diversity of concrete questions as appearing in practice.
Modication of Signal Generator
68/79
Suppose that
(A
E
, C
E
) :=
__
A B
d
0 S
_
,
_
C D
d
_
_
is not detectable.
We can then identify the following necessary condition for the solvability
of the regulation problem.
Lemma 9 If the regulation problem admits a solution then the un-
detectable subspace of (A
E
, C
E
) is contained in N(C
e
D
ed
).
If this necessary condition has been veried to be true, we clarify in the
proof that it is possible, without loosing any generality, to reduce the
signal generator such that the detectability property for the resulting
extended system is valid.
In this sense it causes no generality to proceed under the hypothesis
that (A
E
, C
E
) is detectable.
Proof of Lemma 9
69/79
If the undetectable subspace of (A
E
, C
E
) is non-trivial, let X =
_
X
1
X
2
_
be a basis matrix. Then there exists M with eig(M) C
0
C
+
and
AX
1
+B
d
X
2
= X
1
M, SX
2
= X
2
M, CX
1
+D
d
X
2
= 0 (1)
Claim: X
2
has full column rank. If not, then x N(X
2
) implies
AX
1
x = X
1
Mx, 0 = X
2
Mx, CX
1
x = 0
and thus Mx N(X
2
); hence N(X
2
) = {0} is M-invariant; then there
exists some x N(X
2
) \ {0} with Mx = x. We get AX
1
x = X
1
x
and CX
1
x = 0. Since Re() 0 and (A, C) is detectable, we infer
X
1
x = 0 and thus x = 0, a contradiction.
By a coordinate change of the states of the signal generator, we can as-
sume w.l.o.g. that X
2
=
_
0
I
_
. Introduce the corresponding partitions
S =
_
S
11
S
12
S
21
S
22
_
and
_
_
B
d
D
ed
D
d
_
_
=
_
_
B
d1
B
d2
D
ed1
D
ed2
D
d1
D
d2
_
_
.
Proof of Lemma 9
70/79
Then (1) is equivalent to
AX
1
+B
d2
= X
1
M, S =
_
S
11
0
S
21
M
_
, CX
1
+D
d2
= 0.
Let us now assume that the system controlled with (A
K
, B
K
, C
K
) solves
the regulator problem. The extended controlled system then reads as
_
_
_
_
_
_
x
x
K

d
1

d
2
e
_
_
_
_
_
_
=
_
_
_
_
_
_
A BC
K
B
d1
B
d2
B
K
C A
K
+B
K
DC
K
B
K
D
d1
B
K
D
d2
0 0 S
11
0
0 0 S
21
M
C
e
D
e
C
K
D
ed1
D
ed2
_
_
_
_
_
_
_
_
_
_
x
x
K
d
1
d
2
_
_
_
_
.
After the state-coordinate change x = x X
1
d
2
we get
_
_
_
_
_
_

x
x
K

d
1

d
2
e
_
_
_
_
_
_
=
_
_
_
_
_
_
A BC
K
B
d1
0
B
K
C A
K
+B
K
DC
K
B
K
D
d1
0
0 0 S
11
0
0 0 S
21
M
C
e
D
e
C
K
D
ed1
D
ed2
+C
e
X
1
_
_
_
_
_
_
_
_
_
_
x
x
K
d
1
d
2
_
_
_
_
.
Proof of Lemma 9
71/79
For all trajectories of this system we have e(t) 0 for t . This
implies, in particular,
(D
ed2
+C
e
X
1
)e
Mt
0 for t .
Since eig(M) C
0
C
+
, we conclude D
ed2
+C
e
X
1
= 0. This means
_
C
e
D
ed
_
X =
_
C
e
D
ed1
D
ed2
_
_
_
X
1
0
I
_
_
= C
e
X
1
+D
ed2
= 0
which we had to prove. If this condition holds, (A
K
, B
K
, C
K
) solves the
regulation problem for the original system i it does so for the following
modied extended generalized plant with a reduced signal generator:
_
_
_
_

d
1
e
y
_
_
_
_
=
_
_
_
_
A B
d1
B
0 S
11
0
C
e
D
ed1
D
e
C D
d1
D
_
_
_
_
_
_
x
d
1
u
_
_
By construction this system is detectable from y.
Main Result
72/79
Consider the generalized plant P with signal generator
_
_
x
e
y
_
_
=
_
_
A B
d
B
C
e
D
ed
D
e
C D
d
D
_
_
_
_
x
d
u
_
_
,

d = Sd.
Theorem 10 Let (A, B) be stabilizable and
__
A B
d
0 S
_
,
_
C D
d
_
_
be detectable
and suppose that eig(S) C
0
C
+
. Then the regulator problem
has a solution i the regulator equation (R) is solvable.
We have seen how to prove if. The main intention of this last part is
to prove only if.
Proof of Theorem 10
73/79
Let us assume that the system controlled with (A
K
, B
K
, C
K
) solves the
regulation problem. The extended controlled system then reads as
_
_

d
e
_
_
=
_
_
A B
0 S
C D
_
_
_

d
_
with A being Hurwitz. Hence AX XS +B = 0 has a unique solution
X. The coordinate change

= Xd leads to
_
_

d
e
_
_
=
_
_
A 0
0 S
C CX +D
_
_
_

d
_
.
If regulation is achieved we infer CX +D = 0 and thus
_
A
C
_
X
_
X
0
_
S +
_
B
D
_
= 0.
Proof of Theorem 10
74/79
Let us now recall the structure of A, B, C and partition the rows of
X =
_
X
Y
_
accordingly. We get the equations
_
_
A BC
K
B
K
C A
K
+B
K
DC
K
C
e
D
e
C
K
_
_
_
X
Y
_

_
_
X
Y
0
_
_
S +
_
_
B
d
B
K
D
d
D
ed
_
_
= 0
and thus
_
_
AX +BC
K
Y
A
K
Y +B
K
(CX +DC
K
Y )
C
e
X +D
e
C
K
Y
_
_

_
_
X
Y
0
_
_
S +
_
_
B
d
B
K
D
d
D
ed
_
_
= 0
Therefore, = X and = C
K
Y satisfy
_
A +B
C
e
+D
e

_
X
0
_
S +
_
B
d
D
ed
_
= 0
which just is (R).
Internal Model Principle
75/79
Consider the generalized plant with signal generator
_
_
x
e
y
_
_
=
_
_
A B
d
B
C D
d
D
C D
d
D
_
_
_
_
x
d
u
_
_
,

d = Sd
for which the regulated output e equals the measurement output y.
Theorem 11 Let the hypotheses of Theorem 10 be satised. If the
controller (C) solves the regulation problem, it can be transformed
by a state-coordinate change into

x
K
=
_
S

C
K
0

A
K
_
x
K
+
_

D
K

B
K
_
y, u =
_


C
K
_
x
K
.
In this sense A
K
necessarily contains the model S of the signals to be
regulated. This also implies dim(A
K
) dim(S) which leads to a lower
bound on the required state-dimension of any regulator.
Proof of Theorem 11
76/79
We follow the proof of the previous theorem which lead to
_
_
AX +BC
K
Y
A
K
Y +B
K
(CX +DC
K
Y )
CX +DC
K
Y
_
_

_
_
X
Y
0
_
_
S +
_
_
B
d
B
K
D
d
D
d
_
_
= 0
and hence
AX+BC
K
Y XS+B
d
= 0, A
K
Y = Y S, CX+DC
K
Y +D
d
= 0.
Claim: Y has full column rank. If not we have SN(Y ) N(Y ). Hence
we nd an S-eigenvector x N(Y ) to the eigenvalue with Re() 0.
We get (AI)Xx +B
d
x = 0, (S I)x = 0 and CXx +D
d
x = 0.
By the detectability hypothesis we infer x = 0, a contradiction.
By a controllers state-coordinate change we get Y =
_
I
0
_
. Hence
A
K
=
_
S

C
K
0

A
K
_
, B
K
=
_

D
K

B
K
_
, C
K
=
_
C
K
Y

C
K
_
=
_


C
K
_
.
Internal Model Principle
77/79
The controller in Theorem 11 can be written as a series interconnection
_

1
u
_
=
_
S I 0
0 I
_
_
_

1
u
1
u
2
_
_
,
_
_

2
u
1
u
2
_
_
=
_
_

A
K

B
K

C
K

D
K

C
K
0
_
_
_

2
y
_
.
Hence the controlled system can be depicted as
P
e d
_
_

A
K

B
K

C
K

D
K

C
K
0
_
_
_
S I 0
0 I
_
y
u
Internal Model Principle: A design Recipe
78/79
This leads to a general design recipe even for the generalized plant (P)
under the hypotheses of Theorem 10:
Solve the regulator equation (R) to obtain .
Precompensate P to obtain
P
e d
_
S I 0
0 I
_
y
u
Design a stabilizing controller for the precompensated plant.
Then the resulting controller for (P) solves the regulation problem.
Covered in Lecture 7
79/79
Synthesis for performance
Tracking and disturbance rejection, one- and two-degrees of freedom
controller design
Disturbance models
constant disturbances, sinusoidal disturbances
Internal model principle
state-feedback design, the regulator equation, disturbance estimators,
output feedback design
General regulator theory as developed by Francis and Wonham

Вам также может понравиться