Computer Controlled Systems 3rd 1997 Astrom Solutions
Computer Controlled Systems 3rd 1997 Astrom Solutions
Third Edition
Solutions Manual
Karl J. Åström
Björn Wittenmark
This Solutions Manual contains solutions to most of the problems in the third
edition of
Åström, K. J. and B. Wittenmark (1997): Computer controlled Systems –
Theory and Applications, Prentice Hall Inc., Englewood Cliffs, N. J.
Many of the problems are intentionally made such that the students have to
use a simulation program to verify the analytical solutions. This is important
since it gives a feeling for the relation between the pulse transfer function and
the time domain. In the book and the solutions we have used Matlab/Simulink.
Information about macros used to generate the illustrations can be obtained by
writing to us.
It is also important that a course in digital control includes laboratory exercises.
The contents in the laboratory experiments are of course dependent on the avail-
able equipment. Examples of experiments are
P Illustration of aliasing
P Comparison between continuous time and discrete time controllers
P State feedback control. Redesign of continuous time controllers as well as
controllers based on discrete time synthesis
P Controllers based on input-output design
P Control of systems subject to stochastic disturbances.
Finally we would like to thank collegues and students who have helped us to test
the book and the solutions.
Karl J. Åström
Björn Wittenmark
i
Solutions to Chapter 2
Problem 2.1
−ax + bu
The system is described by
ẋ
y cx
Sampling the system using (2.4) and (2.5) gives
b
x( kh + h) e−ah x( kh) + 1 − e− ah
a
u( kh)
y( kh) cx( kh)
−
The pole of the sampled system is exp( ah). The pole is real. For small values
of h the pole is close to 1. If a > 0 then the pole moves towards the origin when
h increases. If a < 0 then the pole moves along the positive real axis.
Problem 2.2
−1 !
Φ e Ah L −1 sI − A L −1
1
s2 + 1
s
1 −
1
s
cos h sin h
−
sin h cos h
Zh
Γ e B ds
As
Zh
sin s
1 cos h
ds
−
cos s sin h
0 0
G ( s)
s2
s+3
+ 3s + 2
s+3
( s + 1)( s + 2)
2
s+1
− s +1 2
Using the Table 2.1 gives
1 − e− − 1 − e−
h 2h
H ( q) 2
q − e− 2 q − e−
h
2h
Now
0 0 0
A2
0 0 0
A3 0
1 0 0
1
then
1 0 0
e Ah I + Ah + A2 h2 /2 + ( ( (
h 1 0
2
h /2 h 1
Zh Zh T T
Γ e B ds
As 1 s s2 /2 ds h h2 /2 h3 /6
0 0
and
0 0 1
H ( q) C ( qI − Φ)− Γ 1
(q − 1) 3
x x
h
x
x x x
h2 /2
h ( q + 1)/2 h( q 1) ( q 1)
2 2
−
h /6
3
−
h3 ( q2 + 4q + 1)
−
6( q 1)3
Problem 2.3
1
Φ e Ah ⇒ A ln Φ
h
a.
y( k) − 0.5 y(k − 1) 6u(k − 1)
y − 0.5q− y 6q− u
1 1
qy − 0.5 y 6u
x( kh + h) 0.5x( kh) + 6u( kh) ẋ( t)
ax( t) + bu( t)
y( kh) x( kh) y( t) x( t)
(discrete-time system) (continuous time system)
Φ eah 0.5
Rh as
Γ e b ds 6
0
ah ln 0.5 ⇒ a − lnh2
Zh h
b ah
eas b ds
b as
a
e
0 a
e −1 6
0
6a 12 ln 2
⇒b
eah −1
h
b.
x( kh + h)
0.5 1
−
0.5
0
0.3
x( kh ) +
−
0.7
u( kh)
y( kh) 1 1 x( kh)
Eigenvalue to Φ :
−
det( sI Φ)
s + 0.5
−1
0 ⇔ ( s + 0.5)( s + 0.3) 0
0 s + 0.3
−
λ 1 0.5 λ 2 0.3 −
Both eigenvalues of Φ on the negative real axis ⇒ No corresponding contin-
uous system exists.
2
c.
y( k) + 0.5 y( k − 1) 6u(k − 1) ⇔
y( k + 1) −0.5 y(k) + 6u(t)
6
H ( q) one pole on the negative real axis.
q + 0.5
⇒ No equivalent continuous system exists.
Problem 2.4
Harmonic oscillator (cf. A.3 and 3.2a).
x( k + 1) Φ x( k) + Γ u( k) cos h sin h
y( k) C x( k)
Φ( h)
− sin h cos h
Γ( h)
−
1 cos h
sin h
a.
π 0 1 1
⇒Φ
h
2
1 0
Γ
− 1
y 1 0x
Pulse transfer operator
H ( q) C ( qI − Φ)− Γ 1
1
q
0
1 −1 1
−
1 q 1
1 q 11 q+1
1
0
q2 +1
1 q −1
2
q +1
z+1 z 1 1
Y ( z) H ( z) U ( z) ⋅
z2 + 1 z 1
2
z +1
+
−z 1 −
π
π
− − −
y( k) sin ( k 1)θ ( k 1) + θ ( k 1) 1 cos k θ ( k 1)
2 2
− −
−
where θ ( k 1) is a step at k 1.
G ( s) [see Probl. 2.2] 1 0
s
1 −1 0
2
−
1
1 s 1 s +1
Y ( s)
1
s( s2 + 1)
1
s
−s 2
s
+1
y( t) 1− cos t
y( kh) 1 − cos k
π
2
b. −
The same way as a. ⇒ y( t) 1 cos t, and y( kh) 1 cos π4 k Notice that −
the step responses of the continuous time and the zero-order hold sampled
systems are the same in the sampling points.
Problem 2.5
Do a partial fraction decomposition and sample each term using Table 2.1:
G ( s)
1
s2 ( s + 2)( s + 3)
− 365 1s + 14 s +1 2 − 19 s +1 3
1 1
6 s2
1 1 − e− 1 1 − e−
1 q+1
− −
2 3
5 1
12 ( q − 1) 36 q − 1 8 q− e 27 q − e−
H ( q) 2
+ − 2 3
3
Problem 2.6
Integrating the system equation
ẋ Ax + Bu
gives
Z +h
kh
x( kh + h) e Ah
x( kh) + e As B δ ( s − kh)u(kh)ds
kh
e Ah
x( kh) + Bu( kh)
Problem 2.7
The representation (2.7) is
x( kh + h) Φ x( kh) + Γ u( kh)
y( kh) C x( kh)
y( kh) C̃ z( kh)
where
Φ
1 h
Γ
2
h /2
Φ̃
2 −1
1
Γ̃
0 1 h 1 0 0
C 1 0 C̃ h2 /2 h2 /2
Φ̃ T Φ T −1 or Φ̃ T T Φ
Γ̃ T Γ
C̃ C T −1 or C̃ T C
t11 2t11 −t 21
4
Problem 2.8
The pulse transfer function is given by
− Φ)−1 Γ
1 0
z − 0.2 2
H ( z) C ( zI
z( z 0.5) 0 − z − 0.5 1
2z − 0.2 2(z − 0.1)
z( z − 0.5) z(z − 0.5)
Problem 2.9
The system is described by
a
ẋ
− b
f
x+
c − d g
u Ax + Bu
(λ + a)(λ + d) − bc λ 2
+ ( a + d)λ + ad − bc 0
which gives
λ − a+d
±
r
(a − d) 2 + 4bc
2 4
The condition that aA bA c, and d are nonnegative implies that the eigenvalues, λ 1
and λ 2 , are real. There are multiple eigenvalues if both a d and bc 0. Using
the result in Appendix B we find that
e Ah α 0 I + α 1 Ah
and
eλ 1 h α 0 + α 1 λ 1 h
eλ 2 h α 0 + α 1 λ 2 h
This gives
λ 1 eλ 2 h −λ e λ1h
α0
−λ − α ah
2
λ1 α0 α 1 bh
Φ
−
2 1
−
eλ 1 h eλ 2 h
α 1 ch α 0 α 1 dh
α1
−
(λ 1 λ 2 ) h
Zh
λ 1 λ2h λ 2 λ1h
β0 α 0 ( s) ds
λ1
1
−λ 2 λ2
e −1 − λ1
e −1
0
Zh
1 1
β1 sα 1 ( s) ds
λ1
1
−λ 2 λ1
λ1h
e −1 − λ 2
eλ2h
−1
0
then
Γ β 0 B + β 1 AB
5
Problem 2.10
−
λ 1 0.0197 eλ 1 h 0.7895
λ2 −0.0129 eλ 2 h 0.8566
Further
α 0 0.9839 α 1 0.8223
and
0.790 0
Φ α 0 I + 12α 1 A
0.176 0.857
β 0 11.9412
β 1 63.3824
0.281
Γ (β 0 I + β 1 A) B
0.0296
H ( q) C ( qI − Φ)−1 Γ 0
q
1
− 0.790 0 − 0.281
1
−0.176 q − 0.857 0.0297
0.030q + 0.026
−
q2 1.65q + 0.68
which agrees with the pulse transfer operator given in the problem formula-
tion.
Problem 2.11
The motor has the transfer function G ( s) 1/( s( s + 1)). A state space represen-
tation is given in Example A.2, where
A
1 0
−
1
B
C 0
1
1 0 0
!
Φ exp( Ah) L −1 ( sI − A)−1 L −1
1
s 0
s( s + 1) 1 s+1
e−h
0
1 − e−h
1
Zh Zh
e B ds
e−s
−
1 e−h
Γ
− e−s
−
h + e−h 1
As
ds
1
0 0
6
a. The pulse transfer function is
H ( z) C ( zI − Φ)− Γ
1
0 1
z e−h
−
0 −1 1 e−h
−
−
1 + e−h z 1
h + e−h 1
− −
0 1
z 1 − 0 1 e−h
−
− −
−
( z e−h)( z 1) 1 e−h z e−h
−
h + e−h 1
−
( h + e − 1) z + (1 − e − he− )
− h − h h
( z − e− )( z − 1)
h
( h + e− − 1) z + (1 − e− − he− )
h h h
z − (1 + e− ) z + e−
2 h h
Now k
Φ k e Ah e Akh
This gives
C Φ k−1 Γ 0
1
e−( k−1) h 0 1 e−h
−
− e− − 1 ( k 1) h
1
h + e−h 1
−
1 − e− 1 − e− −
h ( k 1) h
+ h + e−h −1
h − e− − + e−
( k 1) h kh
d. The poles are in z 1 and z exp(−h). The second pole will move from 1 to
the origin when h goes from zero to infinity.
− − −−
The zero is in
1 e−h he−h
z f ( h)
h + e−h 1
The function f ( h) goes from −1 to 0 when h goes from zero to infinity. See Fig. 2.1.
Problem 2.12
Consider the following transfer operators of infinity order.
1 −sτ
G ( s) e h 1A τ 0.5
s
(τ < h)
ẋ u( t − τ ) 0 ⋅ x + 1 ⋅ u( t − τ ) (infinite order)
7
1
Pole and zero
−1
0 10 20
Sampling period h
Figure 2.1 The pole (solid) and zero (dashed) in Problem 2.11.d as function of the
sampling period.
Zτ Z0.5
Γ1 e −
A( h τ )
e ds B
As
ds 0.5
0 0
⇒ x( k + 1) x( k) + 0.5u( k) + 0.5u( k − 1)
State space model:
x( k + 1) 1 0.5 x( k) 0.5
+
u( k )
0 0
u( k 1 )
x( k)
1 −
u( k) Φ̄ x̄( k)+ Γ̄ u( k)
y( k) 1 0
u( k 1 )
−
The system is of second order.
H ( z) C ( zI − Φ̄)−1 Γ̄ 1
z
0
− 1 −0.5 − 0.5
1
0 z 1
1
z 0.5
0.5 1
0.5
1 0
z( z 1 ) 0 z 1
− 1
z( z 1 ) −
z 0.5
1
−
0.5( z + 1)
−
z( z 1 )
8
Invers transform of H ( z) using Table 2.3 gives
!
0.5( z + 1) − z − z
H ( z)
− 0.5 z +z
− −
1 2
z( z 1 ) | {z z 1} | {z z 1}
1; k≥1 1; k≥2
(
0 k0
⇒ h( kh) 0.5 k1
1 k>1
a. This is the same system as in Example 2.6 but with τ 1.5. In this case we
have d 2 and τ ′ 0.5 and we get
x( k + 1) Φ x( k) + Γ 0 u( k − 1 ) + Γ u( k − 2 )
1
where
Φ e−1 0.37
Γ0 1 − e− 0.39
0.5
Γ1 e− − e− 0.24
0.5 1
z Φ − −Γ −Γ − 0 1
Using Theorem 2.4 and the definition of the z-transform (2.27) we can also
get the pulse response by expanding H ( z) in z−1 , i.e.,
The pulse response is now given by the coefficients in the series expansion.
9
c. There are three poles p1 p2 0 and p3 0.37 and one zero z1 −0.62.
Problem 2.14
Sampling the given differential equation using the same procedure as in Prob-
lem 2.13 gives
a e−α h
Using the definition of τ ′ and with h 1 it follows that d 4 and
τ 3+τ′
Further
Z τ′−
b
h
b3 e−α s b ds
α
1 − e− −
α ( h τ ′)
Zτ ′
b4 e−α ( h−τ ) e−α s b ds
′
b
α
e−α ( h−τ
′)
− e−
αh
e−α ( h−τ )
ab3 + b4 ′
b3 + b4
Thus !
τ′
1 ab3 + b4
ln +h
α b3 + b4
and !
τ 4 − 1
ln a
ln
ab3 + b4
b3 + b4
where it has been used that
α − ln a
Problem 2.15
A( q) q − 0.5q
10 9
d9
Problem 2.16
FIR filter:
H ∗ q−1 b0 + b1 q−1 + ( ( ( + b n q−n
y( k) b0 + b1 q−1 + ( ( ( + b n q−n u( k)
− 1 ) + ( ( ( + b u( k − n)
b 0 u( k ) + b 1 u( k n
⇒ y( k + n) b u( k + n) + b u( k + n − 1) + ( ( ( + b u( k)
0 1 n
⇒ q n y( k) b0 q n + b1 q n−1 + ( ( ( + b n u( k)
b0 q n + b1 q n−1 + ( ( ( + b n b1 q n−1 + ( ( ( + b n
⇒ H ( q) b 0 +
qn qn
n:th order system
B ( q)
H ( q) D +
A( q)
b. Observable canonical form:
−
a1 1 0 ( ( (
0 0 1 ((( 0
0
Φ
−
a2 0 1 ( ( (
0
0 0 1 0
Γ
b1
..
1
.
1
an 0 −
0
0 0
b n
C 1 0 ((( 0 D b0
Problem 2.17
y( k + 2) − 1.5 y(k + 1) + 0.5 y(k) u(k + 1) ⇔
q y( k) − 1.5qy( k) + 0.5 y( k) qu( k)
2
z − 1.5z + 0.5 Y − 0.5z − 1.25z + 0.75z zU − z
2 2
0.5z − 0.5z
2
z
z − 1.5z + 0.5 z − 1.5z + 0.5
Y ( z) 2
+ 2
U ( z)
0.5z( z − 1) z
( z − 1)( z − 0.5) ( z − 1)( z − 0.5)
+ U ( z)
z
z−1
U (step) ⇒
0.5z z 0.5z
2
2 1
z − 0.5 ( z − 1) ( z − 0.5) z − 0.5 ( z − 1) z − 0.5
Y ( z) +
2
+ + 2
Z −1 e−k/T e−1/T 0.5 ⇒ T
z 1
z − e−1/T
;
ln 2
Z −1 z−1 e−( k−1)⋅ln2
z
−
z 0.5
Z −1 Z −1 z−1
− 1) k − 1
1 z
(z − 1) 2 (z 2
( h 1)
⇒ y( k) 0.5e−k⋅ln2 + 2( k − 1) + e− −
( k 1) ln2
y(1)
1.25
y(0) 0.5
−
y( 1) 1
1+
3 5
⋅
2 4
− 14 218
12
Problem 2.18:
Verify that
1 h2 z( z + 1 )
Z
2
( kh)2
−
2( z 1)3
(cf. Table 2.3)
∞ 1
X ∞
h2 X 2 − k h2 −1
F ( z) ( kh)2 z−k k z f z
2 2 2
k0 k0
∞
X
z− k
z
k0
z − 1; differentiate twice
d −k X
−kz− − d z ( z 1) z − −1 −
Σz
−
− −
k 1
dz dz z 1 ( z 1)2 ( z 1)2
X
kz−k
z
⇒(multiply by z)
( z 1)2 −
2 P
2 Σ z− k
d
dz
− −−
P
k( k 1) z−k−2 ( k2 + k) z−k−2
d2 z 2 ( z 1 ) 2 −
2
dz z 1
−
( z 1)4
( z 1)3 − −
2z2
multiplication by z2 gives ⇒ Σ( k2 + k) z−k
−
( z 1)3
.
∞
− − ( z − 1)
X
− k 2 z− k
2z2 z z( z + 1 )
f (z )
−
1
( z 1)3 2 ( z 1)3
0
f ( z−1)
h2 h2 z( z + 1 )
⇒ F ( z)
2 2 ( z 1)3 −
Remark A necessary condition for convergence of f ( z−1) is that f is analytic
jj
for z > 1. In that case there exists a power series expansion and termwise
differentiation is allowed.
Double integrator: The first step is to translate G ( s) to the corresponding pulse
transfer operator H ( z). Use the method of page 58.
The sampled system.
z 1
u( k) step ⇒ U ( z)
z − 1 ⇒ U (s) s
1 1
Y ( s) G ( s) ⋅ 3
s s
h2 z( z + 1 )
⇒ Y ( z)
2 ( z 1)3 − ( Table 3.3)
Y ( z) H ( z) U ( z) ⇒
Y ( z) h2 z( z + 1 ) z 1 −
h2 ( z + 1 )
H ( z)
U ( z)
2 ( z 1) 3 −
⋅
z
2 ( z 1)2 −
cf. example A1: H ( z) C ( zI − Φ)− Γ. 1
13
Problem 2.19
1
sh
e 1 bc
−
H ( z)
z − e−ah
Res s− a
s s+a
1 e−ah 1 −
z − e − ah a −
bc
bc 1 − e− ah
a z − e− ah
−
and we get sh
X 1 e 1 1
H ( z)
ssi
−
z esh
Res
s s( s + 1)
To compute the residue for s 0 we can use the series expansion of ( esh 1)/s −
−
and get
1 e−h 1 h
H ( z)
− −
z e−h ( 1)2
+
z 1
−
( z − 1)( e− − 1) + h( z − e− )
h h
( z − e− )( z − 1)
h
( e− − 1 + h) z + (1 − e− − he− )
h h h
( z − e− )( z − 1)
h
Problem 2.21
s+β
is lead if β < α
s +α
Consider the discrete time system
z+b
z+ a
iω h
e +b cos ω h + b + i sin ω h
arg iω h arg
e +a cos ω h + a + i sin ω h
arctan
sin ω h
b + cos ω h
arctan− sin ω h
a + cos ω h
Phase lead if
sinω h sin ω h
arctan > arctan 0 < ωh < π
b + cos ω h a + cos ω h
sin ω h sin ω h
>
b + cos ω h a + cos ω h
We thus get phase lead if b < a.
14
10
Output
0
0 10 20
Time
Figure 2.2 Simulation of the step response of the system in Problem 2.22 for b −0.9
(upper solid), −0.75 (upper dashed), −0.50 (dash-dotted), 0 (dotted), 0.5 (lower solid),
and 1 (lower dashed).
Problem 2.22
A state space representation of the system is
x( k + 1)
1.1
0.4
−
x+
1
u
1 0 0
1
1 b x( k)
y( k)
b+1
Simulation of the system for b −0.9A −0.75A −0.5A 0A 0.5 and 1 is shown in Fig. 2.2.
Problem 2.23
A state space representation of G ( s) is
ẋ −ax + (b − a)u
y x+u
The assumption that the system is stable implies that a > 0. Sampling this
−
system gives
x( kh + h) e−ah x( kh) + (1 e−ah)
b a
a
−
u( kh)
− a)(1 − e− )/a + 1
(b ah
q − e−
H ( q) ah
q+β
q − e−
ah
b − a
where
β 1 − e− − e−
ah ah
a
b
a
1 − e− − 1
ah
15
The inverse is stable if
b
1
a − e−ah − 1 < 1
or
0<
b
a
(1 − e− ah
)<2
2a
0<b<
−
1 e−ah
For b > 0 we have the cases
z2 −z−10
which has the solution √
1± 5
z12
2
The solution has the form
1+ 5
√ k
1 − √5 k
y( k) c1 + c2
2 2
1 √
c1 √
2 5
( 5 + 1)
1 √
c2 √ ( 5 − 1)
2 5
Problem 2.29
The system is given by
1 − 0.5q− + q− y(k)
1 2
2q−10 + q−11 u( k)
1 ± i 15
√
p12
4
p3...11 0 (multiplicity 9)
−0.5
and the zero
z1
16
Problem 2.30
The system H1 has a pole on the positive real axis and can be obtained by sampling
a system with the transfer function
K
G ( s)
s+a
H2 has a single pole on the negative real axis and has no continuous time equiv-
alent.
The only way to get two poles on the negative real axis as in H3 is when the
continuous time system have complex conjugate poles given by
s2 + 2ζ ω 0 s + ω 20 0
ω 20
i) G1 ( s)
s2 + 2ζ ω 0 s + ω 20
s
ii) G2 ( s)
s2 + 2ζ ω 0 s + ω 20
(1 + α )( q + α ) 1 +α
H ( z)
( q + α )2 q+α
where
α e−ζ ω 0 h
i.e., we get a pole zero concellation. Sampling G2 gives H ( z) 0. This implies
that H3 cannot be obtained by sampling a continuous time system. H4 can be
rewritten as
0.9q 0.8 −
H4 ( q ) 2 +
q( q 0.8) −
The second part can be obtained by sampling a first order system with a time
delay. Compare Example 2.8.
Problem 2.31
We can rewrite G ( s) as
1 1
G ( s) +
s+1 s+3
Using Table 2.1 gives
1 − e− h
1 1 − e−
3h
H ( q)
q − e− h
+ ⋅
3 q − e−
3h
0.0392q − 0.0377
H ( q)
(q − 0.9802)(q − 0.9418)
17
Problem 2.32
ẋ
1 0
1 1
1
x+
0
u( t −τ ) τ 0.2 h 0.3
s−1
−1 −1
Φ L −1 sI − A L −1
0
−
1 s 1 −
1
L −1
s −
1
0
h
e
h h
0
1 1
− −1 he e
( s 1)2 s
h−τ
Z s h−τ Zh−τ
Γ0
es
se
e
s ds
s
se 0
−
0
s
e
ds
0 0
e − −1 −1 + eh−τ
h τ
( h − τ ) eh−τ − eh−τ + 1 1 + ( h − τ − 1) eh−τ
Γ 1 e A( h−τ )
Zτ −s
e
eh−τ 0
−1 + e τ
0
−s
se
ds
( h τ ) eh−τ − e h−τ
1 + (τ − 1) e τ
−
eh−τ ( 1 + eτ )
eh−τ (1 − h + τ ) + ( h − 1) e h
H ( q) C ( qI − Φ)− (Γ 1
0 + Γ 1 q−1 )
where
1.350 0 0.105 0.245
Φ
Γ0
Γ1
0.405 1.350 0.005 0.050
18
Solutions to Chapter 3
Problem 3.1
Jury’s criterion is used to test if the roots are inside the unit circle.
a.
1 −1.5 0.9
0.9 −1.5 1 α 2 0.9
0.19 −0.15
−0.15 0.19 −
α 1 0.15/0.19 0.79 −
0.07
The roots are inside the unit circle since the underlined elements are positive.
(The roots are 0.75 ± 0.58i.)
b.
1 −3 2 −0.5
−0.5 2 −3 1 −
α 3 0.5
0.75 −2 0.5
0.5 −2 0.75 α 2 2 /3
5/12 −2/3
−2/3 5/12 −
α 1 8 /5
−13/20
One of the underlined elements is negative and there is thus one root outside the
unit circle. (The roots are 2.19 and 0.40 ± 0.25i.)
c.
1 −2 2 −0.5
−0.5 2 −2 1 −
α 3 0.5
0.75 −1 1
1 −1 0.75 α 2 1.33
−0.58 0.33
0.33 −0.58 −
α 1 0.57
−0.39
There are two roots outside the unit circle. (The roots are 0.35 and 0.82 ± 0.86i.)
d.
19
1 5 −0.25 −1.25
−1.25 −0.25 5 1 −
α 3 1.25
−0.56 4.69 6
6 4.69 −0.56 −
α 2 10.71
63.70 54.92
54.92 63.70 α 1 0.86
16.47
One root is outside the unit circle. (The roots are −5A −0.5, and 0.5.)
e.
1 −1.7 1.7 −0.7
−0.7 1.7 −1.7 1 −
α 3 0.7
0.51 −0.51 0.51
0.51 −0.51 0.51 α2 1
0 0
0 0
The table breaks down since we can not compute α 1 . There is one of the underlined
elements that is zero which indicates that there is at least one root on the stability
boundary. (The roots are 0.7 and 0.5 ± 0.866i. The complex conjugate roots are on
the unit circle.)
Problem 3.2
The characteristic equation of the closed loop system is
The stability can be determined using root locus. The starting points are z 0A 0.2
and 0.4. The asymptotes have the directions ±π /3 and π . The crossing point −
of the asymptotes is 0.2. To find where the roots will cross the unit circle let
z a + ib, where a2 + b2 1. Then
a2 − 0.6a − b 2
+ 0.08 −K a
b(2a − 0.6) K b
6
If b 0 then
− 0.6a − 1 − a + 0.08 −a(2a − 0.6)
a2 2
4a − 1.2a − 0.92 0
2
The solution is
√ n
0.652
a 0.15 ± 0.0225 + 0.23 0.15 ± 0.502
12
−0.352
This gives K 2a − 0.6 0.70 and −1.30. The root locus may also cross the unit
circle for b 0, i.e. a ±1. A root at z −1 is obtained when
Im
0
−1
−1 0 1
Re
Figure 3.1 The root locus for the system in Problem 3.2.
or
K 1.68
There is a root at z 1 when
K ≤ 0.70
Problem 3.3
Sampling the system G ( s) gives the pulse transfer operator
h
H ( q)
q −1
The regulator is
u( kh) K uc ( kh − τ ) − y(kh − τ ) K e( kh −τ)
where K > 0 and τ 0 or h.
a. When τ 0 then regulator is
u( kh) K e( kh)
Kh + z −10
The system is thus stable if
K < 2/ h
21
When there is a delay of one sample (τ h) then the regulator is
K
u( kh) e( kh)
q
K h + z( z − 1) z − z + K h 0
2
The constant term is the product of the roots and it will be unity when the
poles are on the unit circle. The system is thus stable if
K < 1/ h
K −sτ
Go ( s) e
s
The system is stable if the phase lag is less than π at the cross over frequency
jG (iω )j 1
o c
⇒ ωc K
The system is thus stable if
−π /2 − ω τ > −π c
K <
π /2
∞ τ 0 π
τ 2h τ h
The continuous time system will be stable for all values of K if τ 0 and
for K < π /(2h) when τ h. This value is about 50% larger than the value
obtained for the sampled system in b.
Problem 3.4
The Nyquist curve is Ho ( eiω ) for ω [0A π ]. In this case
1
Ho ( eiω )
− 0.5
eiω
1
cos ω − 0.5 + i sin ω
22
1
Im 0
−1
−1 0 1
Re
Figure 3.2 The Nyquist curve for the system in Problem 3.4.
−
The argument is π /2 for ω π /3(cos ω − 0.5). The following table gives some
values for the real and imaginary parts.
ω ReHo ImHo
0 2 0
π /6 0.97 −1.32
π /3 0 −1.16
π /2 − 0.40 −0.80
2π /3 − 0.57 −0.50
π − 0.67 0
Problem 3.5
Consider the system
1 0
1
x( k + 1) x( k) +
u( k )
1 1 0
y( k) 0 1 x( k)
We have
y(1) x2 (1) 0
y(2) x2 (2) x1 (1) + x2 (1) 1 ⇒ x1 (1) 1
23
Further
1 0 1 1 2
x(2) Φ x(1) + Γ u(1)
+ ⋅1
1 1 0 0 1
x(3)
1 02 1
1 1
1
+
0
− 1
⋅ ( 1)
3
The possibility to determine x(1) from y(1), y(2) and u(1) is called observability.
Problem 3.6
Problem 3.7
The controllability matrix is
1 1 1 1
Wc Γ ΦΓ
1 0 0.5 0
For instance, the first two colums are linearly independent. This implies that Wc
has rank 2 and the system is thus reachable. From the input u′ we get the system
u′ ( k )
1 0
x( k) +
0
x( k + 1)
0 0.5 1
In this case
0 0
Wc
1 0.5
rankWc 1 and the system is not reachable from u′ .
Problem 3.8
a.
0 1 2
0
u( k )
x( k + 1)
0 0 3 x( k) +
1
0 0 0 0
0 1 2
1
0
3
x(1) 0 0 3 1 + u( 0 ) 3 + u( 0 )
0 0 0 1 0 0
1 2 0 3 + u( 0 )
0 3
x(2) 0 3 3 + u( 0 ) u( 1 ) u( 1 )
0
+
0 0 0 0 0 0
u( 0 ) 3−)
⇒ x(2) 0 0 0
T
u( 1 ) 0
24
b. Two steps, in general it would take 3 steps since it is a third order system.
c.
0 1 0
Wc Γ ΦΓ Φ2 Γ
1 0 0
0 0 0
not full rank ⇒ not reachable, but may be controlled.
T
1 1 1 is not in the column space of Wc and can therefore not be reached
from the origin. It is easily seen from the state space description that x3 will be
0 for all k > 0.
Problem 3.11
The closed loop system is
Hc H
y( k) Hcl ( q)uc( k) u c ( k)
1 + Hc H
K
y( k)
q2 − 0.5q + K u (k)
c
Using the conditions in Example 3.2 we find that the closed loop system is
stable if K < 1. The steady state gain is
K
Hcl (1)
K + 0.5
Kq Kq
Hcl ( q)
q( q − −
1)( q 0.5) + K q
q( q2 − 1.5q + 0.5 + K )
Problem 3.12
The z-transform for a ramp is given in Table 2.3, also compare Example 3.13, and
we get
z
U c ( z)
( z 1)2 −
Using the pulse transfer functions from Problem 3.11 and the final value theorem
gives
lim e( k) lim uc ( k) y( k)
k →∞ k →∞ −
lim
z − 1 ( 1 − H ( z) U ( z)
z→1 z
c c
25
2
Output
0
0 25 50
Time
Figure 3.3 The continuous time (solid) and sampled step (dots) responses for the system
in Problem 3.13.
a. To use the final value theorem in Table 2.3 it is required that (1 z−1 ) F ( z) −
does not have any roots on or outside the unit circle. For the proportional
controller we must then look at the derivative of the error, i.e.
lim e′ ( k) lim
z − 1 z − 0.5z + K − K z 0.5
2
k →∞ z→1 z z − 0.5z + K ( z − 1)
2 K + 0.5
The derivative is positive in steady-state and the reference signal and the
output are thus diverging.
b. For the integral controller we get
Problem 3.13
Consider the system
s+1
G ( s)
s2 + 0.2s + 1
The damping of the system is ζ 0.1 and the undamped natural frequency is
ω 0 1. The step response of the system will have an oscillation with the frequency
p
ω ω 0 1 ζ 2 0.99 rad/s − √
The sampled system will not detect this oscillation if h k2π /ω . The frequency
ω will then have the alias ω ′ 0.
Fig. 3.3 shows the continuous time and the sampled step responses when h
2π /ω 6.3148. To formalize the analysis we can sample the system with h
2π /ω . The pulse transfer function is (Table 2.1)
(1 − α )(q − α ) 1 − α
(q − α ) q−α
H ( q) 2
−
where α exp( 0.1h). There is a pole zero cancellation and only the first order
exponential mode is seen at the sampling points.
26
2
Im
0
−1
−2
−3 −2 −1 0 1
Re
Figure 3.4 The root locus when the tank system in Problem 3.14 is controlled with an
integral controller.
Problem 3.14
a. When Hr K then the pulse transfer function for the closed loop system is
K (0.030q + 0.026)
H c ( q)
q2 − 1.65q + 0.68 + K (0.030q + 0.026)
0.056K
H c (1)
0.03 + 0.056K
The steady state error when the input is a unit step is
27
Output 1
0
0 250 500
Time
Figure 3.5 Step response of the system in Problem 3.14 when the proportional controller
is used with K 0.5 (solid), 1 (dashed), and 2 (dash-dotted).
1
Output
0
0 1000 2000
Time
Figure 3.6 Step response of the system in Problem 3.14 when the integral controller is
used with K 0.01 (solid), 0.025 (dashed), and 0.05 (dash-dotted).
c. Fig. 3.5 and 3.6 show the step responses when the proportional controller
with K 0.5, 1, and 2 and the integral controller with K 0.01, 0.025, and
0.05 are used on the tank system.
Problem 3.16
The pulse transfer function for the closed loop system is
H o ( z)
H c ( z)
1 + H o ( z)
28
Using the conditions in Example 3.2 give
0.16 + K < 1
0.16 + K > −1 + 1 + 4K
0.16 + K > −1 − 1 − 4K
This implies
K < 0.84
0.16
K < 0.053
3
K >
2.16
5
−
0.432 −
Since it is assumed that K > 0 we get the condition
for stability.
Problem 3.17
Using (3.17) we find that the transformation is given by
Tc W̃c Wc−1
where Wc is the controllability matrix of the original system and W̃c is the con-
trollability of the transformed system.
3 11
Wc Γ ΦΓ
4 11
− Φ]− Γ 5
z
6
− 1 −2 − 3
1
H ( z) C [zI
−1 z − 2
1
4
39z + 4
−
z2 3z
and 1 3
W̃c Γ̃ Φ̃ Γ̃
0 1
The transformation to give the controllable form is thus
11 −1
1 33 1 1 2
Tc
0 1
4 11
11 4 − 3
0 −1 5
To W̃o−1 Wo
1
6 5 6
3 1
11 22
4 − 4
29
Probem 3.18
a) i Poles are mapped as z esh . This mapping maps the left half
plane on the unit circle.
b) i see a)
c) iii When a system with relative degree > 1, “new” zeros appear
as described on p. 63 CCS.
These zeros may very well be outside the unit circle.
d) iii See Example 2.18 p. 65 CCC
e) ii Sample the harmonic oscillator,
Example A.3 p. 530 CCS.
1 0
For h 2π /ω A Φ
not controllable
0 1
f) ii See e)
g) iii See p. 63, CCS
Problem 3.19
Probem 3.20
1
Ho
q2 + 0.4q
Hr K
a.
Hr Ho K
Htot 2
1 + Hr Ho q + 0.4q + K
The system is stable if, see p. 82,
K <1 )
K > −1 + 0.4 ⇒ −0.6 < K < 1
K > −1 − 0.4
b.
e( k) uc −y
E ( z) 1 −H tot ( z) U c ( z)
If K is chosen such that the closed loop system is stable (e.g. K 0.5) the
final-value theorem can be used.
−z 1 z 1 − K z
−
lim e( k) lim
k→∞ z→1 z
E ( z) lim
z→1 z
1
z2 + 0.4z + K z 1
−
z + 0.4z
2
1.4
lim 0.74A K 0.5
z→1 z2 + 0.4z + K 1.4 + K
30
2
Im
0
−2
−2 0 2
Re
Figure 3.7 The root locus for Problem 3.21b.
Problem 3.21
0.4q + 0.8
y( k)
q2 − 1.2q + 0.5
u( k )
a.
Hr Ho (0.4q + 0.8) K
Htot
1 + Hr Ho
2
q − 1.2q + 0.5 + K (0.4q + 0.8)
(0.4q + 0.8) K
−
q2 + q(0.4K 1.2) + 0.5 + 0.8K
The system is stable if, see p. 82 CCS,
(0.4q + 0.8) K
q3 − 1.2q2 + q(0.5 + 0.4K ) + 0.8K
Using root locus, Fig. 3.7, we can determine that the closed loop system is
stable if
− √
−
0.25 < K <
17 + 489
16
31
Solutions to Chapter 4
Problem 4.1
The characteristic equation of the closed loop system is
det ( zI − (Φ − Γ L)) z − (a
2
− −
+ a22 b2 X2 b1 X1 ) z + a11 a22 −a 12 a21
−a −
11
+ ( a12 b2 22 b1 )X1 + ( a21 b1 a11 b2 )X2
6
To check when ∆ 0 we form the controllability matrix of the system
b a b + a b
12 2
Wc Γ ΦΓ 1
11 1
b2 a21 b1 + a22 b2
and we find that
∆ det Wc
There exists a solution to the system of equations above if the system is control-
lable. For the double integrator with h 1 and dead beat response we have
a11 a12 a22 b2 1, a21 0, b1 0.5, and p1 p2 0.
− −
This gives
X1
X2
( 1)
1
−
0.5
1
0.5
2
− −
1
1
1.5
−
This is the same as given in Example 4.4.
Problem 4.2
In this case the desired characteristic equation is
∆ 0.5
and L is obtained from
X1
0.5 0
1
0.75 0.75
L
−
T
X2 ∆ 0.1 1 0.025 0.1
To check the result we form
−
Φ ΓL
1
0.5 0.1
−
0.1 0.75 0.1 0.25 0
0 0
0.5 0.1
The matrix Φ − Γ L thus has the desired eigenvalues 0.25 and 0.1.
32
0
Output u(0)
−2
0 1 2 3 4 5
Sampling period h
Figure 4.1 u(0) s function of h in Problem 4.3.
Problem 4.3
For the motor in Example A.2 we have
α
Φ
0
Γ
1 −α
1 α − 1
A
h − 1 +α
p1 p2 0.
1
− −
(1 α )2 α ( h 1 + α ) 1 h α
−
1+α
− −
L
− − −
T
∆ 1 α 1 α α
1
−
(1 α )2 (1 + α ) + α 2 (1 h α )
− −
∆ 1 α
−
1
1 α hα 2
− −
∆ 1 α
−
where
∆ (1 α )3 + (1 − − α ) ( h − 1 + α ) h( 1 − α )
2 2
T
If x(0) 1 1 then
−X − X − 1 − α h−(1h−α α+) 1 − α
2
u( 0 ) 1 2 2
This function is shown in Fig. 4.1. We thus want to find h such that
1 − α − hα + 1 − α 1
2
h( 1 − α ) 2
−α) − e− )
or
2(1 2(1 h
h
2α 2 − 2α + 1
2e−2h − 2e− + 1 h
33
1
Output
−1
0 5 10
1
Input
−1
0 5 10
Time
Figure 4.2 Deadbeat control of the motor when xT (0) 1 1 and h 2.21.
k hk+1
0 2
1 2.26
2 2.20
3 2.21
4 2.21
with h 2.21 we get L 0.49 0.51 . Fig. 4.2 shows the response of the
motor controlled with a deadbeat controller when h 2.21. We see that the
system settles after two samples and that the constraint on the control signal is
fulfilled.
Problem 4.4
34
1
Output
0
0 2 4
0
Input
−5
−10
−15
0 2 4
Time
Figure 4.3 The response and the control signal of the system in Problem 4.4 when
T
x( 0 ) 1 0 and L 9.22 3.11 .
p1 −2e−ζωh
cos(ω h
p
1 −ζ 2) −
0.63
p2 e−2ζ ω h 0.21
Problem 4.5
a. In this case
−4.55
4.55
Wo−1
C 0
1
Wo A
CΦ 0.22 1 1 0
0 0
Ω
A
CΓ 0.03
−
Ψ Γ Φ Wo−1 Ω
0.22
−
0.78 0
−
4.55 4.55
0
0.114
0.03 0.22 1 1 0 0.03 0
35
We get
x̂( k) Φ Wo−1
y( k 1)
−
+ Ψ u( k 1 ) −
y( k)
−
3.55 3.55 y( k 1) 0.114
+
−
u( k − 1)
0 1 y( k) 0
j
− K C )x̂(kjk − 1) + Γu(k) + K y(k).
x̂( k + 1 k) (Φ
j
x̂( k k) ( I − K C )(Φ x̂(k − 1jk − 1) + Γu(k − 1)) + K y(k).
In this case we want to find K such that
i. CK 1
ii. −
( I K C )Φ has eigenvalues in the origin. The first condition implies that
k2 1. Further
−
( I K C )Φ
1
−
k1 0.78 0 0.78 0.22k1
k1
− −
0 0 0.22 0 0 0
k1 0.78/0.22 3.55.
j
0
x̂( k k)
3.55
−
x̂( k
− 1jk − 1) + 0.114
u( k − 1 ) +
3.55
y( k)
0 0 0 1
j
Since x̂2 ( k k) y( k) we get
j
x̂( k k)
−
+
3.55 3.55 y( k 1) 0.114
−
u( k − 1)
0 1 y( k) 0
Problem 4.6
From Problem 2.10 we get for h 12
0.790 0 0.281
x( kh + h)
x( kh) +
u( kh)
0.176 0.857 0.0296
y( kh) 0 1 x( kh)
−
The continuous time poles of the system are 0.0197 and 0.0129. The observer −
should be twice as fast as the fastest mode of the open loop system. We thus
choose the poles of the observer in
z e−0.0394⋅12 0.62
36
1
x1 and xe1
0.5
−0.5
0 250 500
1
x2 and xe2
0.5
−0.5
0 250 500
Time
Figure 4.4 The states (solid) and their estimates (dots) for the tank system in Problem 4.6
Problem 4.7
The observer and the controller are described by
j
x̂( k k) ( I − K C )Φ x̂(k − 1jk − 1) + (I − K C )Γu(k − 1) + K y(k)
u( k ) − Lx̂(kjk).
In the state equation both x̂ and y have the time argument k. Introduce
j − K y(k)
ξ ( k) x̂( k k)
then
ξ ( k) ( I − K C )Φ[ξ (k − 1) + K y(k − 1)] + (I − K C )Γu(k − 1)
(I − K C )Φξ (k − 1) + (I − K C )Φ K y(k − 1)
− (I − K C )Γ L[ξ (k − 1) + K y(k − 1)]
( I − K C )(Φ − Γ L)ξ ( k − 1) + ( I − K C )(Φ − Γ L) K y( k − 1)
Φ ξ ( k − 1) + Γ y( k − 1)
o o
The observer and the regulator can thus be written in the form given in the
formulation of the problem.
37
Problem 4.8
The constant disturbance v( k) can be described by the dynamical system
w( k + 1) w( k)
v( k) w( k)
The process can thus be described on the form given in (4.43) with
1
Φ w 1A Φ xw
0
a. If the state and v can be measured then we can use the controller
u( k ) − Lx(k) − L w(k). w
xw w
y( k) C x( k)
Hw ( 1 ) 0
and
Φ −
0.142
ΓL
− −0.114
0.179 0.142
and
Lw 5.356
b. In this case is the state but not the disturbance measurable. The disturbance
can now be calculated from the state equation
u( k ) − Lx(k) − L ŵ(k) w
where Lw is the same as in (a). Compared with the controller in (a) there is
a delay in the detection of the disturbance.
38
0.2 2
Output
Output
0 0
−0.2 −2
0 5 10 15 0 5 10 15
2
Estimate ve
Output
0 2
−2 0
0 5 10 15 0 5 10 15
Time Time
Figure 4.5 The output of the system in Problem 4.8 for the regulators in a) (upper left),
b) (upper right) and c) (lower left and right). The estimate of v is also shown for case c).
Notice the difference in scale in the upper left curve.
c. If only the output is measurable then the state and the disturbance can be
estimated using an observer of the form (4.41)
x̂( k + 1) Φ Φ xw x̂( k) Γ K
+ u( k ) +
ε ( k)
ŵ( k + 1) 0 1 ŵ( k) 0 Kw
ε ( k) y( k) C x̂( k)−
The gain vector can now be determined such that the error goes to zero pro-
vided the augmented system is observable. The error equation is
x̃( k + 1) Φ K C
−
Φ xw x̃( k)
w̃( k + 1)
Kw C − 1
w̃( k)
z3 + ( k 1 − 2.2)z 2
+ (1.05 − 1.7k 1 + k2 + kw) z + 0.7k1 + 0.15 − 0.7k − k
w 2 0.
k1 2.2
k2 −0.6433
kw 3.3333.
u( k ) − Lx̂(k) − L ŵ(k) w
where L and Lv are the same as in (a). The solutions above have the draw-
back that there may be an error in the output due to the disturbance if there
are small errors in the model. Fig. 4.5 show that the output when the con-
trollers in (a), (b) and (c) are used.
39
Problem 4.9
a. The state equation for the tank system when h 12 was given in the solution
to Problem 4.6. The desired characteristic equation is
z2 − 1.55z + 0.64 0
Using the result in Problem 9.1 give
L 0.251 0.8962
−
z3 + ( 2.647 + 0.281X1 + 0.0296X2) z2
+ (2.3240 − 0.5218X − 0.0035X − 0.0296X ) z+
+ (−0.6770 + 0.2408X − 0.0261X − 0.0261X ) 0
1 2 3
1 2 3
Assume that two poles are placed in the desired location and that the third
pole is in p. We get the following system of equations to determine the state
feedback vector.
0.281 0.0296 0
X1
2.647 1.55 p
− −
− 0.5218 − 0.0035 −
0.0296
X2
−
2.3240 + 1.55p + 0.64
0.2408 − 0.0261 −0.0261
X3 0.6770 0.64p
−
−
This gives
X1
3.279 3.028p
X2
5.934 5.038p
−
X3 −
1.617 + 1.617p
40
1
Output
0
0 250 500
Time
Figure 4.6 The stepresponse for the tank process when p 0 (solid) and 0.5 (dashed),
and when Xc 0.
1
Output
0
0 250 500
Time
Figure 4.7 The step response for the tank process when p 0 and when Xc 0 (solid),
3 (dashed) and 6 (dash-dotted).
Problem 4.10
The process is
2 2
1 h h /2 h /2
x( kh + h)
x( kh) +
u( k ) +
v( k)
0 1 h h
w( kh + h)
cos ω o h −
sin ω o h
w( kh)
sin ω o h cos ω o h
v( k) 1 0 w( kh)
41
The augmented system (9.33) is now
2
1 h h2 /2 0 h /2
x( kh + h) 0 1 h 0 x( kh ) h
w( kh + h)
0
0 α − β
w ( kh )
+
0
u( kh)
0 0 β α 0
where α cos ω o h and β sin ω o h. Assume first that the control law is
where
L 1
h2
3
2h
i.e., a dead beat controller for the states. Further if Lw 1 0 we would
totally eliminate v since v and u are influencing the system in the same way.
Compare the discussion in the solution of Problem 4.8.
Since x( kh) and ξ ( kh) cannot be measured we use the observer of the structure
(9.35) where
2
Φ xw
h /2 0
and
α
Φw
−β
h 0 β α
(z −γ) 4
0
If h 1 and ω o 0.1π then for γ 0.5 we get the following system of equations
1 0 0 0
−
k1 4γ + 3.9022
−2.9022 1 0.5 0
k2
−
6γ 2 5.8044
2.9022 −1.9022 0.0245 −
0.1545
kw1
4γ 3
− −
3.9022
−
1 1 −0.4756 − 0.1545
kw2
γ4 1 −
Problem 4.11
We have to determine the feedback vector L such that
42
2
x1 and xe1
0
−2
0 10 20 30
2
x2 and xe2
−2
0 10 20 30
Time
Figure 4.8 (solid) and
The states of the double integrator (dots
their estimates ) when
v( t) sin(ω o t). The controller is defined by L 1 1.5 and Lw 1 0 .
det(λ I − Φ + Γ L) λ 2
−
+ ( 1.6 + X1 )λ + 0.63 − 0.7X 1 + X2
λ2
−1.6 + X
I.e.,
1 0
0.63 − 0.7X 1 + X2 0
or
L 1.6 0.49
The stationary gain of the closed loop system is given by stationary gain of
−
the
m ⋅ C ( I Φ + Γ L)−1 Γ m
To get unit steady state gain we choose m 1
b. The closed loop characteristic equation is stable if (See Example 3.2)
−0.7X
This gives
1 + X2 < 0.37
−1.7X 1 + X2 > −3.23
0.37X1 + X2 > −0.03
43
l2
Deadbeat
1 2 3 l1
−1
The stability area is shown in Fig. 4.9. Assume that the deadbeat control
in a. is used. The closed loop system will be unstable if the feedback from
x1 is disconnected (i.e., if X1 0), but the system will remain stable if x2 is
disconnected (if X2 0).
Problem 4.12
−
λ 0.25 + X1 X2− 0.5
−
λ det(λ I Φ + Γ L) det
− −
2
4 X1 1 λ 2 + 4X2
λ 2 + λ (X1 + 4X2 − 2.25) ≡ λ 2
2 2.25u(0) + u(1)
8 9u(0) + 4u(1)
44
One solution is
u( 0 ) 0
u( 1 ) 2
(λ − 0.2) 2
− 0.4λ + 0.04 0
λ2
λ + k − 0.25 −0.5
det(λ I − Φ + K C ) det
k −1 λ −2
1
2
λ + ( k − 2.25)λ + 0.5k − 2k
2
1 2 1
− 2.25 −0.4
k1
0.5k − 2k 0.04
2 1
45
Solutions to Chapter 5
Problem 5.1
Euclid’s algorithm defines a sequence of polynomials A0 A ( ( ( A An where A0 A,
A1 B and
Ai Ai+1 Qi+1 + Ai+2
If the algorithm terminates with An+1 then the greatest common factor is An . For
the polynomials in the problem we get
A1 z3 − 2z + 1.45z − 0.35.
2
This gives
Q1 z − 0.6
A2 −0.4z + 0.42z − 0.11 −0.4( z − 1.05z + 0.275)
2 2
Q2 ( z − 0.95)/(−0.4)
A3 0.1775z − 0.08875 0.1775(z − 0.5)
Finally
Q3 ( z − 0.55)/0.1775
A4 0
The greatest common factor of A and B is thus z − 0.5.
Problem 5.2
Step 1. You easily see that, with A and Acl being first order polynomials and
B a scalar, you can solve the equation for the closed loop system using scalars
R ( z) r0 and S ( z) s0 :
A( z) R ( z) + B ( z) S ( z) Acl ( z)
( z + a) ⋅ r0 + 1 ⋅ s0 z + α
Solution with higher order observer: The solution above is not the only
one solving the original problem. We can, for example, decide to have another
−
closed loop pole in z β , say.
Step 1. To solve the equation for the closed loop characteristic polynomial we
must increase the order of R by one. This gives
( z + a)( r0 z + r1 ) + 1 ⋅ s0 ( z + α )( z + β )
and the equation system becomes
r0 1 r0 1
ar0 + r1 α + β ⇐⇒ r1 α + β a −
ar1 + s0 α β
−
s0 α β a(α + β − a)
Step 2. Splitting Acl into factors Ao z + β and Ac z + α gives
Ac (1)
T ( z) t0 Ao ( z) Ao ( z) (1 + α )( z + β )
B (1)
47
1
Output
−1
0 25 50
Time
Figure 5.1 The output of the process with y(0) 1, and uc ( k) is 0 for k < 25 and −1
for k > 25. The dots corresponds to the zero order controller, and the crosses to the first
order controller.
Problem 5.3
B m ( z)
H m ( z)
z2 − 1.5z + 0.7
In this case, the process zero is cancelled by the controller, so ( z + 0.7) is not a
factor of Bm . By choosing Bm 0.2z we make the steady state gain Hm (1)
1, and the pole excess in Hm equals the pole excess in H. Cancellation of
process poles and zeros is handled by Algorithm 5.3 or through the following
discussion.
A( z) B + ( z) R̄( z) + B + ( z) B −( z) S ( z) B + ( z) Ācl ( z)
( z2 − 1.8z + 0.81)R̄(z) + S(z) Ā cl ( z)
If R̄ ( z) is a constant r0 , the left hand side is of second order, and so must Ācl
be. With this choice of R̄, the causality condition (deg S ≤ deg R 1) leads
us to set S ( z) s0 z + s1 . Now, we can solve the Diophantine equation above,
since we have 3 indeterminates ( r0 , s0 and s1 ) and 3 coefficients to set:
− −
( z2 1.8z + 0.81) ⋅ r0 + ( s0 z + s1 ) z2 1.5z + 0.7 ⇒
r0 1
r0 1
− 1.8r0 + s0 1.5 − ⇐⇒
s0 0.3
0.81r0 + s1 0.7
s1 0.11 −
48
Thus, we have R ( z) B + ( z) R̄( z) z + 0.7 and S ( z) 0.3z − 0.11. To obtain
the desired
BT B+ B−T 0.2z
H m ( z)
AR + B S
+ 2
B (z 1.5z + 0.7) −
2
z − 1.5z + 0.7
we must select
T ( z) 0.2z
The controller is now
0.2
B m ( z) ( z + 0.7)
H m ( z)
z2 − 1.5z + 0.7
21.7
z −
1.5z + 0.7
The simplest choice, a zero order controller, will not suffice in this case since
it would only give 2 parameters r0 and s0 to select the 3 parameters in the
−
second order polynomial z2 1.5z + 0.7. Thus, we must increase the order of
−
the controller by one and, consequently, add an observer pole which is placed
at the origin, i.e. Ao z and Acl z3 1.5z2 + 0.7z. Letting
R r0 z + r1
S s0 z + s1
0.2
Further T t0 Ao 1.7 z. The controller is thus
c. Fig. 5.2 shows the output and the control signal for the controllers in Case a
and Case b. Case a should probably be avoided because of the ringing in the
control signal.
Problem 5.4
BS Bm
AR + B S Am
49
Output
Output
1 1
0 0
0 20 40 0 20 40
0.2 0.2
Control
Control
0.1 0.1
0 0
−0.1 −0.1
0 20 40 0 20 40
Time Time
Figure 5.2 The output and the control signal for the controllers in Case a (left) and
Case b (right) in Problem 5.3. The ringing in the control signal in Case a is due to the
cancellation of the process zero on the negative real axis.
R B ( Am −B m)
S ABm
R 1( z + α − 1 − α) z − 1
S ( z + a)(1 + α )
The controller contains an integrator. Further the pole of the process is can-
celled.
b. The characteristic polynomial of the closed loop system is
AR + B S ( z + α )( z + a)
jj
The closed loop system will contain an unstable mode if a > 1. The controller
can be written
S A Bm
R
B Am B m −
From this we can conclude that in order to get a stable closed loop we must
fulfill the following constraints.
i. Bm must contain the zeros of B that are outside the unit circle.
ii. Am −
Bm must contain the poles of the process that are outside the unit
circle. The first constraint is the same as for the polynomial design discussed
in Chapter 5.
Problem 5.5
Bm BR
y( k) u c ( k) + v( k)
Am AR + B S
The design in Problem 5.2 gave
R1
S α −a
50
We thus get
BR 1
AR + B S z +α
If v( k) is a step there will thus be a steady state error 1/(1 + α ) in the output.
( z + a)( z − 1) R̄( z) + 1 ⋅ S ( z) A ( z)
cl
If R̄ ( z) is a constant r0 , the left hand side is of second order, and so must Acl
be. With this choice of R̄, the causality condition (deg S ≤ deg R 1) leads
us to set S ( z) s0 z + s1 . Now, we can solve the Diophantine equation above,
since we have 3 indeterminates ( r0 , s0 and s1 ) and 3 coefficients to set:
( z + a)( z − 1) ⋅ r
+ ( s0 z + s1 ) ( z + α )( z + β ) ⇒
0
r0 1
r0 1
(a − 1) r0 + s0 α + β ⇐⇒
−
s0 α + β a + 1
− ar0 + s1 α β
s1 α β + a
we must select
T ( z) (1 + α )( z + β )
The controller is now
u( k ) u( k − 1) − (α + β − a + 1) y(k) − (a + α β ) y(k − 1)
+ (1 + α )u ( k) + β (1 + α )u ( k − 1)
c c
Fig. 5.3 shows the controllers in Problem 5.2 and the controller with an
integrator. The reference value is zero and there is an initial value of the
state in the process. At t 25 a constant load disturbance is introduced. It is
−
assumed that a 0.99, and the design parameters are chosen as α 0.7 −
−
and β 0.5.
Problem 5.6
It is assumed that the design is based on the model H B / A while the true
model is H 0 B 0 / A0 . The pulse transfer operator of the closed loop system is
B0T T /R
Hcl 0 0
A0 R +B S
0 A / B + S/R
51
3
2
Output
0 25 50
Time
Figure 5.3 The output of the process in Problem 5.5 when the controller does not contain
an integrator (dots) and when an integrator is introduced (crosses).
or
S
R
B + Am Ao
BR
− BA
This gives
′ Ao
Bm ′ Ao
Bm
R R
Hcl !
−B −H
A0 + A
B Ao Am Ao Am 1 1
+
B−R
+
B0 BR H0
Ao
′ B−
Bm R 1
⋅ ! Hm !
B− R B−
Am Ao
R
+
Am
1
H0
−H1
1+
Ao Am
1
H0
−H
1
Problem 5.7
R1
S α −a
T 1 +α
1
z + a0
0 1 2 3
Frequency
Figure 5.4 The left hand side of the inequality in Problem 5.7 when z eiω , 0 < ω < π
for a0 −0.955 (dashed), −0.9 (dash-dotted) and 0.6 (dotted). The right hand side of
the inequality is also shown (solid).
ja0
+α − aj < 1
With the numerical values in the problem formulation we get
−1.4 < a 0
< 0.6
f b ( z)
z +α 1 +α
−
(1 + α )( z + a) α a
−
m
z 0.5
− ⋅ 2.5
z 0.9
or
− 0.5 ⋅ 2.5
− −
1 1 z
z 0.9 <
z + a0 z − 0.9
Fig. 5.4 shows for z eiω the left hand side of the inequality for different
values of a0 . The right hand side is also shown.
Problem 5.8
Section 5.6 shows that the control signal is given by (5.52)
H m ( q) (1 + α )( q + a)
u( k ) u c ( k) u c ( k)
H ( q) q+α
We may assume that both the process and the model have a continuous time
correspondence. This implies that a and α are less than zero. Further the desired
jj
model is stable, i.e. α < 1. The control signal is now obtained by studying the
step response of Hm / H, which is a stable first order system. The largest value
53
is then either at the first step or the final value. The magnitude at the first step
can be determined either through the initial value theorem or by using series
expansion and the value is 1 + α . The final value is 1 + a. If α < a then jj jj
the closed loop system is faster than the open loop system and the control signal
is largest at the first step. If the desired response is slower than the open loop
system then the final value is the largest one.
Problem 5.14
ω h 0.1 − 0.6
Identifying with
s2 + 2ζ ω s + ω 2
gives ω 0.1. Thus an appropriate sampling interval is
h1 −6
b. Using Example 2.16 we get sampled data characteristic equation
z2 + a1 z + a2 0
−2e− p
−ζ −1.32
where
ζωh 2 ω h)
a1 cos( 1
a2 e−2ζ ω h 0.5
The poles are in 0.66 ± 0.25i.
Problem 5.15
This solution demonstrates how to use Algorithm 5.3.
−
Data: The process is given by A q2 1.6q + 0.65 and B 0.4q + 0.3. Acl
−
will at least contain Āc q2 0.7q + 0.25, other factors may be added later
on. R d Sd 1 since no given factors are forced into the controller. The
desired response to command signals is assumed to be Hm Bm / Am Bm / Āc
−
0.55/( q2 0.7q + 0.25) (cancelled process zero, Hm (1) 1).
Pole excess condition:
Remark: The fact that we cancel one zero and do not introduce any other zero
in Bm causes the delay from the command signal to be one time unit more
than the delay of the process.
Model following condition:
Degree condition:
54
−
Step 1. A+ 1, A− A q2 1.6q + 0.65, B + q + 0.75 and B − 0.4 achives
cancellation of the process zero, but no cancellation of process poles.
Step 2. Using the degree condition above we may conclude that
A− R d R̄ + B − Sd S̄ Ācl
(q 2
− 1.6q + 0.65)R̄ + 0.4S̄ q − 0.7q + 0.25 2
Since this is of second order, R̄ must be a constant, r0 , say. In order to solve the
identity we must have two more parameters, so we let S̄ s0 q + s1 :
r0 1 r0 1
−1.6r + 0 .4s0 0.7 − ⇐⇒ s0 2.25
−1
0
0.65r0 + 0.4s1 0.25 s1
R Am B + R d R̄ Am ( q + 0.75)
S Am A+ Sd S̄ Am (2.25q − 1)
+
T B̄m A Ācl 1.375 ⋅ Āc
Since, in this case, Am Āc , this factor can (and should) of course be cancelled
in all controller polynomials, giving
R q + 0.75
S 2.25q −1
T 1.375
Problem 5.16
In this case we want to have an integrator in the controller, i.e., R d ( q 1). This −
will increase the degree of the closed loop by one compared to Problem 5.15 (see
(5.42)), which is done by having Āo ( q + ao ), say. This gives the Diophantine
equation
A− R d R̄ + B − Sd S̄ Ācl
(q 2
− 1.6q + 0.65)(q − 1)R̄ + 0.4S̄ (q − 0.7q + 0.25)(q + a )
2
o
( q2 − 1.6q + 0.65)(q − 1) + (s q 0
2
+ s1 q + s2 ) ⋅ 0.4 ( q2 − 0.7q + 0.25)(q + a ) 0
2 0
55
− (0.7a
and
S̄ ( q) 2.5 ( a0 + 1.9) q2 0 + 2) q + 0.25a0 + 0.65
R B ( q − 1) q − 0.25q − 0.75
+ 2
T B̄ Ā 1.375q − 0.34375
m o
Problem 5.17
The minimum degree solution has deg A0 1 and gives a unique solution to the
Diophantine equation. Let us instead use deg A0 2 and deg S deg R 1. This −
gives the equation
( z + 1)( z + 2)( z2 + r1 z + r2 ) + z ⋅ ( s1 z + s0 ) z2 ⋅ z2
R R 0 + Qz
S S0 − Q(z − 1)(z − 2)
where Q is an arbitrary polynomial. Choose for instance Q −1. This gives
R z2− 3z − z z − 4z 2
S 7z + 6 + ( z − 3z + 2) z
2 2
+ 4z + 8
This is also a causal controller. The closed loop systems when using R 0 A S0 , T0
S0 and R A S, T S respectively are
B S0 z(7z + 6)
AR 0 + B S0 z4
BS z( z2 + 4z + 8)
AR + B S z4
56
Solutions to Chapter 6
Problem 6.1
In the first case it is assumed that we have a control structure as in Fig. 6.1.
There are three subsystems each with the transfer function
Ki
Gi ( s)
s + Ki
G1 G2 G3 K1 K2 K3
G
s + K 4 G1 G2 G3 s( s + K 1 )( s + K 2 )( s + K 3 ) + K 1 K 2 K 3 K 4
If either of the gains K i is increased sufficiently much the closed system will
become unstable. Fig. 6.2 shows the response when uc is an impulse and when
K 1 K 2 K 3 1 and K 4 0.1, 0.25, and 0.75.
A disturbance in the process will propagate in the direction of the flow. In the
case of control in the direction opposite to the flow each of the subprocesses has
Raw Final
material x2 x3 product
flow u c x 4 =y
Σ Σ 1
s
K1 Σ 1
s
K2 Σ 1
s
K3
1
s
−1 −1 −1
− K4
Figure 6.1 Block diagram for the control in the direction of the flow in Problem 6.1.
1
Output
0 25 50
Time
Figure 6.2 Impulse response for the control in the direction of the flow when K4 0.1
(solid), 0.25 (dashed), and 0.75 (dash-dotted).
57
uc
x 4 =y
x3 x2
Σ Σ Σ
1 1 1 1
K4 K3 K2 K1
s s s s
1
−1 −1 s −1
Figure 6.3 Block diagram for the control in the direction opposite of the flow in Problem 6.1.
a transfer function of the type Gi . The system is then represented with the block
diagram in Fig. 6.3. Notice the order of the states. The system will remain stable
for all positive values of K i . A disturbance will now propagate in the direction
opposite the flow. A disturbance in uc will now only influence the first subprocess
and will not propagate along with the flow. The reader is strongly recommended to
compare with the case where the disturbance appears at the final product storage
instead.
Problem 6.2
Fig. 6.3 in CCS contains several examples of couplings of simple control loops.
a. Cascade control loops are found for the cooling media flow and for the output
product flow.
b. Feedforward is used for the level control loop where the input flow is used as
a measurable disturbance. The input flow is also used as feedforward for the
cooling of the jacket.
c. Nonlinear elements are used in the flow control loops of the product output
and the coolant flow. The flow is probably measured using differential pres-
sure which is proportional to the square of the flow. The square root device
is thus used to remove the nonlinearity of the measurement device. An in-
tentional nonlinearity is introduced in the selector. Either the temperature
or the pressure is used to control the coolant flow depending on the status of
the process.
58
Solutions to Chapter 7
Problem 7.1
Which frequencies will the signal
where F (ω ) is the Fourier transform of the time continuous signal. The Fourier
transform of sin ω 0 t has its support
(i.e., the set where
6
0) in the two points
it is
±ω 0 . More precisely, it equals π i δ ω + ω 0 − −
δ ω ω 0 . Thus, if the signal
sin ω 0 t is sampled with the sample interval h its Fourier transform will be 0 in 6
the points
±ω + kω s ; k 0A ±1A ±2A ( ( (
For ω 0 2π and ω s 2π /0.2 10π we get the angular frequencies
±2π ± k ⋅ 10π π ±2A ±8A ±12A ±18A ±22A ( ( (
ω 20 gives rise to
±20 ± k ⋅ 10π π ±3.63A ±6.37A ±13.63A ±16.37A ( ( (
Problem 7.2
We have the following specifications on the choice of sampling period and presam-
pling filter:
1. −
All frequencies in the interval ( f 1 A f 1 ) should be possible to reproduce from
the samples of the continuous time signal.
2. We want to eliminate the disturbance with the known and fixed frequency
f 2 5 f 1.
The sampling theorem states that the first specification will be satisfied if and
only if the sample frequency f s is chosen such that
f s > 2 f1
( f s /2 − f ) > f − f /2
1 2 s ⇒ f s > f2 + f1 6 f1
Two cases:
59
1
0 10
a) h=2π/10
0 10 20 30
b) h=2π/20
0 10 20 30
c) h=2π /50
0 10 25 50
Figure 7.1 Folding for different frequencies in Problem 7.5.
1. Filter out the disturbance using an antialiasing filter. Then sample with f s >
2 f 1 . Suppose the disturbance should be attenuated 20 dB without effecting
the datasignal. A n:th order filter gives maximally n ⋅ 20 dB/decade. So to
achieve 20 dB in log ff21 0.699 decades takes n 2.
2. If f s > 6 f 1 , the disturbance does not mix with the data signal. It can instead
be removed using digital filters.
Problem 7.7
The rotation frequency of the wheel ω r 2π r.
The frequency of the camera shutter ω s 2π /h.
The picture will not move if ω r n ⋅ ω s ; for integer values n.
A correct picture will be seen, if ω s > 2ω r according to the sampling theorem.
(The eye acts like a low pass filter).
The wheel will appear to rotate with a frequency lower than r if ω s < 2ω r . See
Fig. 7.3. For instance let ω s 4/3 ω r . Aliasing will give a frequency ω 1/3 ω r.
The wheel then appears to rotate three times slower and in the wrong direction.
If ω s ω r the wheel will appear to stand still. Compare the stroboscope.
60
− 100 100
a) ω s =120
b) ω s =240
− ωs − ω r 0 ω r ωs
1 1
4
3 2 4 t
2 3
Problem 7.9
The signal is
1
u( t) sin(4ω 0 t) cos(2ω 0 t) [sin(6ω 0 t) + sin(2ω 0 t)]
2
Sampling the signal with
2π
6ω 0ωs
h
gives the Nyquist frequency ω N 3ω 0 . Sampling the signal u( t) gives the alias
of sin(6ω 0 t) in ω 0. We thus get the frequencies
f1 0
ω0
f2
π
in the sampled signal.
61
Solutions to Chapter 8
Problem 8.1
The three transformations Euler’s method (forward difference (8.4)), backward
difference (8.5) and Tustin’s approximation (8.6) have different stability proper-
ties. This can be seen by finding how the left half s-plane is transformed into the
z-plane. For Euler’s method we have
z sh + 1
This implies that the stability boundary in the sh-plane (the imaginary axis) is
translated one unit to the right, see Fig. 8.1a. When the backward difference is
used then
1
z
1 sh −
For s iω we get
1
1 −ωh
This represents a circle with radius 0.5 and going through the points 0 and 1, see
Fig. 8.1b.
Finally for Tustin’s approximation with s iω
1 + iω h/2
z
−
1 iω h/2
j zj 1
Now
arg z 2 arctan ω h
The imaginary axis is thus transformed into the unit circle in the z-plane. If a
transfer function is stable in the s-plane it will be translated into a stable discrete
time system if using the backward difference or Tustin’s approximation.
Problem 8.2
a
G ( s) A a>0
s+a
62
a. Using Euler’s method we get
a ah
H ( z)
(z − 1)/h + a z − 1 + ah
This corresponds to the difference equation
y( kh + h) + ( ah − 1) y(kh) ahu(kh).
The difference equation is stable if
jah − 1j < 1
or
0 < h < 2/a.
The approximation may, however, be poor even if the difference equation is
stable.
b. For Tustin’s approximation we get
a ( z + 1) ah/2
H ( z)
2z −1 +a
(1 + ah/2) z + ( ah/2 − 1)
hz+1
ah/2 z+1
1 + ah/2
z+
ah/2 −1
ah/2 + 1
The pole of the discrete time system will vary from 1 to 1 when h vary from −
0 to infinity. The discrete time approximation is always stable when a > 0.
c. Using Tustin’s approximation with prewarping gives
a a/α z+1
H ( z)
α
z −1 +a
1 + a/α
z+
a/α −1
z+1 a/α + 1
where
a
α
tan( ah/2)
Thus
tan( ah/2) z+1
H ( z)
1 + tan( ah/2)
⋅
z+
tan( ah/2) −1
tan( ah/2) + 1
Problem 8.3
The lead network
s+1
Gk ( s) 4
s+2
should be approximated using different methods. At ω 1.6 rad/s it has the
argument 19○ and the gain 2.95.
a. Euler’s method gives
(z − 1)/h + 1 4 z − 1 + h 4 z − 0.75
H E ( z) 4
(z − 1)/h + 2 z − 1 + 2h z − 0.5
63
b. Backward differences
c. Tustin’s approximation
−1 +1
2z
hz+1 z( 1 + h/2 ) − ( 1 − h/2 ) z − 0.778
2 z−1 z( 1 + h) − ( 1 − h) z − 0.6
H ( z) 4
T 4 3.6
+2
hz+1
−1 +1
z
z(1 + 1/α ) − (1 − 1/α ) z − 0.775
α
z+1
z−1 z(1 + 2/α ) − (1 − 2/α ) z − 0.596
HTW ( z) 4 4 3.596
α +2
z+1
where
α
ω1
tan(ω 1 h/2)
7.893
Within two decimals this is the same as in (c).
e. Zero order hold sampling gives
− 4 ⋅ 12 1z −− ee− − e− − (1 − e− − 0.803
− 2h
z 2h
)/2
2h
z
z − e− − 0.607
H Z O H ( z) 4 2h
4 2h
4
z
z+ a
H ( z) K
z+b
K
1 + ab + ( a + b) cos(ω h) + i( b a) sin(ω h) −
1 + b2 + 2b cos(ω h)
j H ( e )j
iω
arg H ( eiω )
64
1
10
Gain
0
10 −2 −1 0 1 2
10 10 10 10 10
30
Phase (deg)
20
10
0 −2 −1 0 1 2
10 10 10 10 10
Frequency (rad/s)
Figure 8.2 The Bode diagrams for the filter in Example 8.3 when h 0.25 continuous
time filter (full); Euler’s method (dashed); backward difference (dotted); Tustin (dash-
dotted).
1
10
Gain
0
10 −2 −1 0 1 2
10 10 10 10 10
30
Phase (deg)
20
10
0 −2 −1 0 1 2
10 10 10 10 10
Frequency (rad/s)
Figure 8.3 The same as Fig. 8.2 but when h 0.05.
Fig. 8.2 shows the Bode diagrams for the continuous time system and for the
Euler, backward and Tustin approximations. Fig. 8.3 is the same as Fig. 8.2 but
with h 0.05. The shorter sampling period gives a better approximation.
65
Problem 8.4
It is assumed that the sample and hold circuit can be approximated by a delay
of h/2 seconds. Further we will allow a decrease of the phase margin of 5○ 15○ . −
This approximately corresponds to a decrease of the damping by 0.05 0.15. A −
time delay of h/2 seconds gives at the crossover frequency a decrease of
180○ ω c h
∆ ϕ ω c h/2[rad]
2π
ωch
0.035
5○ − 15○
This gives
− 0.52
ω c h 0.17
or approximately
ω h 0.15 − 0.5.
c
Problem 8.5
The transfer function of the integral part of the PID-controller (8.22) is
K
GI ( s)
Ti s
Using Euler’s approximation (8.4) gives
Kh
H I ( z)
−
Ti ( z 1)
which is the same integral part in (8.23). The derivative part of (8.22) has the
transfer function
K Td s
G D ( s)
1 + Td s/ N
Using backward difference gives
K Td( z− 1)
zh K T ( z − 1)
T ( z − 1) z( h + T / N ) − T / N
d
HD ( z)
d d d
1+
zhN
K Td z −1
h + Td/ N
z − NhT+ Td
An error will then directly influence the computation of the integral part.
Euler’s approximation gives a delay of one sampling interval before an error
will influence the integral part. The sampling interval is, however, usually
short for digital PID-algorithms.
b. Euler’s approximation for the derivative part gives
K N ( z − 1)
H d ( z)
z − 1 + hN /T d
66
Problem 8.6
Using the bilinear transformation gives
1 h h 1
H T ( z) K 1 +
Ti
2z 1
K 1+
− 2Ti
+
Ti z 1 −
hz+1
h 2h
K 1+
2Ti
1+
(2Ti + h)( z 1) −
This is of the same form as (8.24) with
h
Kd K 1+
2Ti
Tid Ti + h/2
Problem 8.7
The tank process in Problem 2.10 has the transfer function
0.000468
G ( s)
( s + 0.0197)( s + 0.0129)
K 1.85
T 149
1.85 α
z 1 −
+ 0.0067
!
z+1
H r ( z)
z 1
α
−
z+1
1.85(α + 0.0067) 0.0134
α
1+
(α + 0.0067)( z − 1)
Using the rule of thumb from Section 8.2 for choosing the sampling period
gives
−
h 6 20 seconds
The choice h 12 seems to be reasonable. This gives α 0.165 and
0.0778
Hr ( z) 1.925 1 +
z 1 −
67
1
Output
0
0 250 500
Time
Figure 8.4 Step response of the tank process when controlled with a continuous time
(solid) and a discrete time PI controller. The sampling interval is 6 (dash-dotted) and 12
seconds (dashed).
d. Fig. 8.4 shows simulations of the step response of the system controlled with
the continuous time and the approximate discrete time PI-controller when
h 6 and 12 seconds.
Problem 8.9
u( t) Muc ( t) − Lx(t).
A discretization is obtained by sampling uc and x and letting u be constant
between the sampling period points i.e. we get
−
1 3h/2
L̃ L( I + ( A B L) h/2) 2 4
− −2h
h/2 1
− −
2 h 4 4h
M̃ ( I − LB h/2) M 4(1 − h)
c. Fig. 8.5 shows the stepresponse of the system when using the continuous con-
troller and the controllers in a) and b) when h 0.25. It is possible to calcu-
late backwards to find out the corresponding damping and natural frequency
for the controllers in a) and b). A discrete
time state
space representation of
the motor is given in (A.6). Using L X1 X2 gives
68
1
Output
0
0 1 2 3 4 5
Time
Figure 8.5 Stepresponses for the motor in Problem 8.9 when a continuous time (solid),
a discretized (dash-dotted) and a modified discretized state (dashed) feedback controller
is used when h 0.25.
For h 0.25 and L 2 4 we get
Φ
− Γ L 00..336 −0.885
164 0.885
and for h 0.25 and L 1.75 3 we get
Φ
− Γ L 00..392 −0.664
171 0.914
z2 − 1.221z + 0.442 0
and
z2 − 1.305z + 0.471 0.
From the equations given in Example 2.16 we can calculate the corresponding
continuous time systems. For the discretized controller ( L 2 4 ) we
get
ζ 0.71
ω 0 2.31
and for the modified controller ( L 2 h 4 − − 4h ) we get
ζ 0.77
ω 0 1.96
The change in the damping is smaller when the modified controller is used
and the change in the undamped natural frequency is also smaller.
69
Problem 8.10
a. We first want to compute a state feedback such that A − B L has the charac-
teristic equation
s2 + 8s + 32 0.
Assume L X1 X2 then
−
BL
−3 1
A
−X −2 − X
1 2
This gives
L 17 3
L L( I + ( A B L) h/2) −
1 3h/2
h/2
−
17 3
17h/2 1 5h/2
− −
−
17(1 3h) 3 + h
Fig. 8.6 shows the output when using the discrete time controller in a) for
different values of h. The response when using the modified discrete time
controller from b) is shown in Fig. 8.7.
Problem 8.12
h
(I − Ah + K C h)x̂(k) q− x̂(k) + B hu(k) + K hy(k)
1
Introduce
Φ0 (I − Ah + K C h)− 1
1
1+ h+ h 2
1
h −
h
1+h
This gives
−
x̂( k) Φ 0 x̂( k 1) + Φ 0 B hu( k) + Φ 0 K hy( k)
0.81 0.16
−
0.16 0.97
x̂( k 1) +
0.19
−
0.03
u( k ) +
0.19
0.16
y( k)
70
1
Output 0.5
−0.5
0 1 2 3 4
Time
Figure 8.6 The response of the system in Problem 8.10 when the state feedback con-
troller in a) is used with h 0.1 (dashed) , 0.2 (dash-dotted) and 0.3 (dotted). The
response for the continuous-time controller is also shown (solid).
0.5
Output
−0.5
0 1 2 3 4
Time
Figure 8.7 The response of the system in Problem 8.10 when the modified state feedback
controller in b) is used with h 0.1 (dashed), 0.2 (dash-dotted) and 0.3 (dotted). The
response for the continuous-time controller is also shown (solid).
71
Solutions to Chapter 10
Problem 10.1
Problem 10.2
z sin ω h
Y ( z)
z2 − 2z cos ω h + 1
See Table 2.1. Consider a system with
H d ( z) Y ( z)
The impulse response of Hd will thus be sin( khω ). That this is the correct
answer is easily seen by making long division.
he−hz
Y ( z)
−
( z e−h)2
he−hz
H d ( z)
−
( z e−h)2
Problem 10.3
Using the model of the disturbance gives
C ( q)
y( k + m) w( k + m).
A( q)
q m−1 C ( q) A( q) F ( q) + G ( q)
72
If w( k + 1)A ( ( ( A w( k + m) are assumed to be zero then the best prediction of
y( k + m) is
qG ( q)
ŷ( k + m) y( k).
C ( q)
The operator qG ( q)/ C ( q) is casual since deg C deg G + 1.
−
Let A( q) q 0.5, C ( q) q and m 3 then
q2 ⋅ q ( q − 0.5)(q + f q + f ) + g
2
1 2 0
0 −0.5 + f
0 −0.5 f + f
1
0 −0.5 f + g
1 2
2 0
with solution
f 1 0.5 f 2 0.25 g0 0.125
The predictor at k + 3 given data up to and including k is thus
j
ŷ( k + 3 k)
0.125q
q
y( k) 0.125 y( k)
Problem 10.4
Using (10.11) we find that the stationary variance of x fulfils (Φ stable)
P Φ P Φ T + R1
The stationary covariance exists since the system is stable. Since R 1 is symmetric
P is also symmetric. Introduce
p11 p12
P
p12 p22
then
p11
p12
0.4
0
p11
p12
0.4 −0.6 + 1 0
p12 p22
0.6− 0.2
p12 p22
0 0.2 0 2
73
This gives
p11 0.16p11 + 1
p12 −0.24p + 0.08p12
− 0.24p
11
Ex( k + τ ) x( k) T Φτ P
Φτ α 0 I + α 1 Φ
λ τ1 α 0 + α 1 λ 1
λ τ2 α 0 + α 1 λ 2
The solution is
−λ λ (λ − − λ − ) τ 1 τ 1
λ −λ
α0
1 2 1 2
λ −λ
1 2
τ τ
λ −λ
α1 1 2
1 2
and
0.4τ 0
Φ
−3(0.4 − 0.2 )
τ
τ τ
0.2τ
Finally
rx (τ )
1.19 ⋅ 0.4τ −0.31 ⋅ 0.4 τ
−3.57 ⋅ 0.4 τ + 3.27 ⋅ 0.2τ 0.93 ⋅ 0.4τ + 1.68 ⋅ 0.2τ
τ ≥ 0
Problem 10.5
From the state space description we get the input-output description of the process
Problem 10.6
There are two noise sources v1 and v2 that is used to generate y( k). Using Theorem
10.2 we find that the spectral density of y is
φ y H ( z)φ v H T ( z−1)
74
where z eiω
z + a −1
H ( z) C ( zI − Φ)−1 Γ 1
0
1
1 1
z+a
1
z+b
0 z+ b
and 2
σ1 0
φv
2
0 σ2
Thus
σ 2 0 1
φ y z+1 a 1
1
z−1 +a
z+b
0 σ 22 1
z−1 +b
σ 12 σ 22
+
( z + a)( z + a) ( z + b)( z−1 + b)
−1
z+ c
H1 ( z) λ
( z + a)( z + b)
( z + c )( z−1 + c )
φ1 λ2
( z + a)( z−1 + a)( z + b)( z−1 + b)
λ 2 (1 + c 2 ) σ 12 (1 + b2) + σ 22 (1 + a2 )
λ 2 c σ 12 b + σ 2 a
Problem 10.7
The process is
x( k + 1) ax( k) + v( k)
y( k) x( k) + e( k)
This is the same as in Example 10.3 with the exception that Ev( k) e( s) r12δ ( k −
s). The covariance function for x will thus be the same but the covariance of y will
contain an additional term due to the correlation between v and e. From Example
10.3 we know that
rx (τ ) ajτ j
r1
1 a2 −
The covariance of y is
{ } {
r y (τ ) E y( k + τ ) y( k) E [ x( k + τ ) + e( k + τ )] [ x( k) + e( k)] }
−
rx (τ ) + rxe (τ ) + rex (τ ) + re (τ ) rx (τ ) + rxe (τ ) + rxe ( τ ) + re (τ )
−
where it has been used that rex (τ ) rxe ( τ ) in stationarity.
{ } {
rxe (τ + 1) E x( k + τ + 1) e( k) E [ ax( k + τ ) + v( k + τ )] e( k) }
arxe (τ ) + rve (τ )
75
The last term is zero except for τ 0, where it is r12 . The first term is zero for
τ ≤ 0. It is natural that white noise in the future is uncorrelated with the present
value of x. This gives
0 τ ≤ 0
0 τ ≤ 0
rxe (τ ) r12 τ 1
aτ −1 r12 τ ≥ 1
aτ −1 r12 τ >1
r y (τ ) 1−a2 + 0 + 0 + r2
r1
τ 0
τ r1 τ −
a 1−a2 + a r12 + 0 + 0
1
τ >0
(
ajτ j 1−r1a2 + ajτ j−1 r12 6
τ 0
−
r1
1 a2
+ r2 τ 0
The definition of spectral density gives
1 X
∞
φ y (ω ) r y (τ ) e−iωτ
2π τ −∞
1− a
h
r i
− − −
2
1 r1 r r r
1− a a ( e − a)( e− − a) 1 − a 1− a
12 1 12 1
+ + r
2π 2 iω iω 2 2 2
a
(1)
1 r a + r (1 − a ) − r ( e − a)( e− − a) + r a( e − a)( e− − a)
2 iω iω iω iω
a( e − a)( e− − a)
1 12 12 2
2π iω iω
λ 2 ( eiω − c)(e− − c) iω
φ y(ω )
2π ( eiω − a)(e− − a) iω
(2)
⇔
(
r2 (1 + a2 ) + r1 − 2ar 12 λ 2 (1 + c 2 )
r2 a −r 12 λ 2c
A more elegant solution The ouput can be written as
v( k)
y( k) H ( q) 1
e( k)
76
where H ( z) −
1
z a
. The spectral density of y is given by
r r12 H ( z−1 )
1
1
φy H ( z) 1
2π r12 r2 1
( z − a)( z− − a)
2 1 12 2 12 2
2π 1
Problem 10.8
The process can be written as
where
x( k + 1) ax( k) + ( a − c)e(k)
Using Problem 10.7 we find that
− c)
r1 ( a 2
r12 a−c
r2 1
Thus
ajτ j r1
+ ajτ j−1 r12
r y (τ )
1 a2 −
with a 0.7 and c 0.5 we get for τ 0 6
r y (τ ) (0.7)jτ j jτ j 0.36(0.7)jτ j
0.04 0.2
1 − 0.49 + 0.7 (0.7)
For τ 0
( a c )2
r1 −
r y (0)
1 a2 −
1 a2
+ 1 1.08
+ r2
−
The variance can also be obtained from Theorem 10.4.
1 + c 2 2ac −
r y (0) I1
1 a2 − 1.08
where z eiω .
77
Problem 10.9
The variance of the process
q2 + 0.2q b0 q2 + b1 q + b2
y( k)
q2 − 1.5q + 0.7
e( k)
a0 q2 + a1 q + a2
e( k)
B0 1 + (0.2)2 + 0 1.04
B1 2(0.2 + 0) 0.4
B2 0
e1 1.7
and
1.04 ⋅ 1.7 + 0.4 ⋅ 1.5
r y (0) I2
(1 − −
0.49)1.7 1.5 ⋅ 1.5(1 − 0.7) 12.33
The recursive scheme in Section 10.4 can also be used to get
0.1129 1.1765
0.1129 β 0 10.4167
This gives
I2 10.4167 ⋅ 1.1765 + 0.3922 ⋅ 0.2 12.33
These calculations have been performed in high precision and thereafter round-ed.
Problem 10.10
The process is
This gives
−
r y (0) E ( e( k) 2e( k − 1) + 3e(k − 2) − 4e(k − 3)) 2
E e( k)2 + 4e( k − 1) + 9e(k − 2) + 16e(6 − 3)
2 2 2
+ crossterms
1 + 4 + 9 + 16 30
{
E e( k + τ ) e( k) 0 } 6
τ 0
− −
r y (1) 1 ⋅ ( 2) + ( 2) ⋅ 3 + 3 ⋅ ( 4) − −20
−
r y (2) 1 ⋅ 3 + ( 2) ⋅ ( 4) 11 −
−
r y (3) 1 ⋅ ( 4) −4
r y (4) 0 k ≥ 4
78
Problem 10.11
1
Φy
1.36 + 1.2 cos ω
a.
b
H ( z)
z −a
Using Theorem 10.2 we get
2π (1 + a2 ) b2 ⋅ 1.36
2π (2a) −1.2b 2
1 + a2
2a
− 11.36
.2
⇒
2.72
a2 +
1.2
a+1 0
r
1.36 2
a −
1.36
1.2
±
1.2
− 1 −0.6
r
2a √
b
1.2 −
⋅ 2π 2π
P Φ P Φ T + R1
p11 p12 0.3 0.2 p11 p12 0.3 0 1 0
+
p12 p22 0 0.5 p12 p22 0.2 0.5 0 0.5
p11 0.09p11 + 0.12p12 + 0.04p22 + 1
p12 0.15p12 + 0.1p22
p22 0.25p22 + 0.5
1.1385 0.0784
P
0.0784 0.667
79
Problem 10.13
Example 10.4 shows that the filter
b
H ( z)
z −a
gives the spectral density
r1 b2
Φ(ω ) ⋅
2π 1 + a2 2a cos ω −
In this case r1 1. Identify with the desired spectral density gives
1 3 1 1
⋅
2π 5.43 − 5.40 cos ω
2π 1.81 − 1.8 cos ω
80
Solutions to Chapter 11
Problem 11.1
For the system we have
d
dt
Φ( tA kh) −aΦ(tA kh)A Φ( khA kh) 1
and
Zt
Γ( tA kh) e−a( t−s)b ds
b
a
(1 − e− −
a( t kh)
)
kh
The discrete time loss function is obtained from CCS (11.6)-(11.8), which gives
Z
− e−
kh+h
e−2a( s−kh) ds
1
Q1 (1 2ah
)
kh 2a
Z
− − e−
kh+h
e−a( s−kh) (1 e−a( s−kh)) ds
b b
Q12 (1 )
ah 2
kh a 2a2
Z kh+h 2
Q2
kh
b
a2
(1 e − −
a( s− kh) 2
) + ρ ds
2
b2 −ah + e−2ah
b
a2
+ ρ h
2a3
− 3 4e −
Notice that there will be a Q12 term even if Q12c 0.
Problem 11.2
0 1 0
ẋ
x+
u
0 0 1
y 1 0 x
81
Sample the loss function Q1c I Q2c 1 Q12c 0. Using (11.6)-(11.8) we get
Zh Zh
1 01 τ 1 τ h h2 /2
Q1
dτ
dτ
2
τ 1 0 1 τ τ2 +1 h /2 h3 /3 + h
0 0
Zh Zh
1 0 τ 2 /2 τ /2
2
h3 /6
Q12
dτ 3
dτ
τ 1 τ τ /2 + τ h4 /8 + h2 /2
0 0
! !
Zh τ 2 /2 Zh
τ4 h3 h5
Q2 τ /2 τ
2
+ 1 dτ 1 +τ +
2
dτ h + +
τ 4 3 20
0 0
Problem 11.3
The Riccati equation(11.17) gives
− a b bs(sk(k++1)1) 1 − 1A ..A 1
2
s( k) a2 s( k + 1) + 1 2 2
2
kN
u( k ) − L(k)x(k) − ab
b
x( k) − x( k)
a
b2
Problem 11.5
S Φ T S Φ + Q1 −Φ T
S Γ( Q2 + Γ T S Γ)−1 Γ T S Φ
Let
s11 s12
S
s12 s22
For the inventory model we get
− ρ +s s
2
s11 s11 + 1 12
22
82
1
Pole
0.5
0 −2 −1 0 1 2 3 4
10 10 10 10 10 10 10
Control weighting rho
Figure 11.1 The pole in Problem 11.5 as a function of the control weighting ρ .
The solution is p
1+ 1 + 4ρ
s12 s22
2
s11 1 + s12
The feedback vector is
L K (ρ ) 1 1
where p
s12 1 + 1 + 4ρ
K (ρ ) p
ρ + s22 2ρ + 1 + 1 + 4ρ
− 1)(λ + K (ρ )) + K (ρ ) λ (λ − 1 + K (ρ )) 0
(λ
and we get
83
a) 2 b) 2
y(k), u(k)
y(k), u(k)
0 0
−2 −2
0 5 10 0 5 10
c) 2 d) 2
y(k), u(k)
y(k), u(k)
0 0
−2 −2
0 5 10 0 5 10
Time Time
Figure 11.2 The output (solid) and the control signal (dashed) for the system in Prob-
lem 11.5 when a) ρ 0, b) ρ 0.5, c) ρ 5 and d) ρ 25.
or
0 rp2
−ρ r(p 1 + p1 p2 )
2ρ + 1 r(1 + p21 + p22 )
6
Since r Γ T S Γ + Q2 0 then the first equation implies that p2 0 and we get
(
ρ rp1 −
2ρ + 1 r(1 + p21 )
− 2ρ + 1 −2ρ
p
1 + 4ρ
p1
The poles of the closed loop system are thus one at the origin and one at
p1
2ρ + 1
p
−1 + 4ρ −
2ρ
ρ + H ( z) H ( z−1) 0
This gives
0.030z + 0.026 0.030z−1 + 0.026
ρ+
−z2 −
⋅ −2
1.65z + 0.68 z 1.65z−1 + 0.68
0.030z + 0.026 0.030z + 0.026z 2
84
1
Im
0
−1
−1 0 1
Re
Figure 11.3 The closed loop poles in Problem 11.6 when ρ is varying.
or
0.00078z3 + 0.001576z2 + 0.00078z+
ρ (0.68z4 − 2.7720z 3
+ 4.1849z2 − 2.7720z + 0.68) 0
Fig. 11.3 shows the closed loop poles when ρ is varying.
Problem 11.9
Solving LQ-problem for system of higher order than one by hand causes much
work. With numerical packages, like Control toolbox for Matlab, the design is
significantly simplified for the control engineer. The following Matlab-macro il-
lustrates the solution of Problem 11.9, i.e. sampling of the system, sampling of
the loss function and solving the Riccati equation.
alpha=0.001;
k=0.0005;
rho=0.08;
h=5;
A=[0 1; 0 -alpha];
B=[0; k];
Q1c=[1 0; 0 0];
Q12c=[0; 0];
Q2c=rho;
85
10
Gain margin
0
0 510
Control weighting rho
Figure 11.4 The gain margin β min (dashed) and β max (solid) from (11.37).
Problem 11.10
In Problem 11.5 we have determined r, then
ρ 2ρ
p
r 2ρ + 1 + 1 + 4ρ
Equation (11.37) may be used to get the exact values of the gain margin. With
A( z) z2 −z
P ( z) z + p1 z
2
we get
z2 − z + β (z 2
+ p1 z −z 2
+ z) z( z + (β p1 + β − 1)) 0
I.e., the system is stable if
−1 < β p −1 <1 ⇒
1 +β
4ρ
β min 0 ≤ β ≤
−1 + 1 + 4ρ β
p max
Problem 11.11
The system is
x( k + 1) 0.5x( k) + v( k)
y( k) x( k) + e( k)
86
0.5
Pole
0
0 5 10
State weighting r1
Figure 11.5 The pole of the Kalman filter in Problem 11.11 for different values of r1
when r2 1.
P 2 + (0.75r2 − r )P r r
1 1 2
Consider three cases r1 >> r2 , r1 r2 and r1 << r2 . In the first case P r1 and
− −
Φ K C 0. In the second case P 1.13r1 and Φ K C 0.23. Finally if r1 << r2
− −
then P 1.33r1 and Φ K C 0.5. Fig. 11.5 shows Φ K C for different values
of r1 when r2 1.
Additional problem
Suppose that the system in Problem 11.11 has a control signal u( k), i.e. the
system is
x( k + 1) 0.5x( k) + v( k) + u( k)
y( k) x( k) + e( k)
Determine a steady-state LQG-controller when Q1 1, Q12 0 and Q2 ρ .
− 0ρ.25S
2
S 0.25S + 1
+S
0.5S
L
ρ +S
87
which has the solution
− 0.75ρ + 1 + (0.75ρ − 1) + 4ρ
p
2
2.5ρ + 2 + 2 (0.75ρ − 1) + 4ρ
L p
2
Using the Kalman filter from Problem 11.11 and the LQ-controller gives
j j−
x̂( k + 1 k) Φ x̂( k k −
1) + Γ u( k) + K ( y( k) C x̂( k k 1)) j−
j− − j−
Φ x̂( k k 1) + Γ ( L x̂ ( k k 1)) + K ( y( k) C x̂( k k − j − 1))
− − j−
(Φ Γ L K C ) x̂( k k 1) + K y( k)
and thus
U ( q) − L(qI − Φ + Γ L + K C )− K Y (q) 1
or
− LK
q − 0.5 + K + L
H ( q)
reg
Problem 11.12
P ( k + 1) Φ P ( k)Φ T + R 1 − Φ P ( k) C T
( R 2 + C P ( k) C T )−1 C P ( k)Φ T
with
1 1
Φ
0 1
0 0
R1 Γv Γv
T
0 1
C 1 0
we get
−
p11 ( k) p22( k) p12 ( k)2
p11 ( k)
− p p ( k) 1 + p
2
p22 ( k + 1) p22 ( k) + 1 12
11 ( k + 1)
11
Further
k1
p11 ( k) + p12 ( k)
1 2
K ( k)
k>0
k2 p12 ( k) p11 ( k ) 1
88
4 4
p11(k)
p12(k)
2 2
0 0
0 5 0 5
Time 4
p22(k)
2
0
0 5
Time
Figure 11.6 The elements of the variance matrix in Problem 11.12.
and assume that P (0) 3I. Fig. 11.5 shows the elements of the covariance
matrix as a function of time.
Problem 11.14
Introduce the notation
1 1 0 0.5
Φ
A Γ1
A and
Γ2
0 1 1 1
x( k + 3) Φ x( k + 2) + Γ 1 v( k + 2) + Γ 2
Φ 2 x( k + 1) + ΦΓ 1 v( k + 1) + ΦΓ 2 + Γ 1 v( k + 2) + Γ 2
Φ 3 x( k) + Φ 2 Γ 1 v( k) + ΦΓ 1 v( k + 1) + Γ 1 v( k + 2)
+ Φ 2 Γ 2 + ΦΓ 2 + Γ 2
j
j
P ( k + 3 k) Φ 3 P ( k k)(Φ 3) T + 0.01(Φ 2 Γ 1 Γ 1T (Φ 2 ) T + ΦΓ 1 Γ 1T Φ T + Γ 1 Γ 1T )
1 3
0 1
1 0
P ( k k)
3 1
j
+ 0.01
5 3
3 3
89
Problem 11.15
x( k + 1) ax( k) + v( k) cov v 1
y( k) x( k) + e( k) cov e σ
We use the exponential smoothing estimator
j − 1jk − 1) + (1 − α ) y(k)
x̂( k k) α x̂( k
(1 − α ) q
[ x̂( kjk)−x( k)] y( k) − x( k)
q −α
!
(1 − α ) q
v( k) + e( k) −
1 1
q −α q−a q−a
v( k)
α ( q − 1) (1 − α ) q
−
( q − a)( q − α ) q −α
v( k) + e( k)
j 2α 2 1 −α σ
var x̃( k k)
(1 + a)(1 + α )(1 − aα ) +
α +1
σ a(1 + a) + 1
p
−
σ (1 + a)2 + 1
α min
σ a (1 + a) + a 1
2 −
Kalman with direct term
j
x̂( k k) Φ x̂( k − 1jk − 1) + K ( y(k) − C Φ x̂(k − 1jk − 1)
( I − K C )Φ x̂( k − 1jk − 1) + K y( k)
This will have the same form as the exponential smoothing estimator only when
a 1.
Kalman variance
P a2 P + 1
a2 P 2
P +σ
−
−
(1 a2 ) P 1 P + σ a2 P 2 − −
This gives
P
1 − σ (1 − a ) + 1 q1 + 2σ (1 + a ) + σ (1 − a )
2
2 2 2 2
2 2
aP
K
P +σ
j − P P+ σ PP+σσ σa K
2
var x̃( k k) P
90
Problem 11.16
The scalar state equations are
(
x( k + 1) ax( k) + u( k) + v( k) v( k) v1 ( k) + mv ; Ev1 0
y( k) x( k) + e( k) e( k) e1 ( k) + me ; Ee1 0
Let
T
X x mv me
and
a 1 0
1
1
v ( k)
X ( k + 1) 0 1 0 X ( k) +
0 u( k ) +
0 1
0 0 1 0 0
y( k) 1 0 1 X ( k) + e1
with
rank Wo 2
This means that me and mv are not both observable and no Kalman-filter can be
designed. It is, however, possible to design a second order observer with recon-
struction of a linear combination of me and mv . Redefining the state vector X
as
x1
X
m
where
(
x1 x + me
m (a − 1) m + m
e v
gives
a 1 1 1
X ( k + 1)
X ( k ) + u( k ) +
v1 ( k)
0 1 0 0
1
y( k)
X ( k) + e1 ( k)
0
Problem 11.17
The constants a1 and a2 are determined by the following two conditions
1. The correct mean value should be obtained.
91
2. The variance should be minimized.
Condition 1 gives that
a1 + a2 1
The variance of the estimation error is
V E ( x( k) − x̂(k)) 2
− a x(k) − a e (k) − a x(k) − a e (k))
E ( x( k) 1 1 1 2 2 2
2
20a1 − 18 0 ⇐⇒ a1
9
10
j
x̂(0 0) and j
P (0 0) p
This gives
j
x̂( k k)
9p
10p + 9
y1 ( k) +
p
10p + 9
y2 ( k) +
9
10p + 9
x̂( k k j − 1)
If p is large then the weights for y1 and y2 will be those calculated above. In the
example R 1 0 the steady state gain will then be zero since the estimate will
approach the true value of x.
Problem 11.20
x( k + 1)
1.45
0.45
−x( k ) +
1
u( k )
1 0 0
y( k) 0.5 0.38 x( k)
0.25 0.19
Q1 C C
T
0.19 0.1444
Q12 0
Q2 0
The steady state solution is obtained from (11.17). Using Matlab we get the
solution
0.25 0.19
⇒ S
0.19 0.1444
L 2.21 0.45 −
92
An alternative solution is to use (11.40)
1
ρ 0 ⇒ P ( z) zB ( z) 2z(0.5z + 0.38) z( z + 0.76)
b1
Now we have to find L such that
(Φ −
Γ L)
−
0.76 0
1 0
Q1 Q12 0
Q2 ρ
Q0 1
N2
0.5S ( k)
L( k)
ρ + S ( k + 1)
This gives
0.5
S ( N ) S (2) Q0 1 ⇒ L(1)
ρ +1
0.52 ρ 0.53
S (1) ⇒ L(0)
ρ +1 ρ + 1 + 0.52
93
Theorem 11.5 gives
0.5P ( k)
K ( h)
1 + P ( k)
P ( k + 1) 0.25P ( k) − 0.5P(k) K (k)
with P (0) R 0 1. This gives
k P ( k) K ( k)
0 1 0.25
1 0.125 0.056
b. (11.47) ⇒
σ 2 −1 1
p p + 0.01 − p 12
1
1
0
0
2
σ2
+
1
1
p 1 1
1
σ 2 + p p −1 1
1
p2 1 1
0.01
p σ 22 + p 1
σ 12 + σ 22
p2 0.01
σ 12σ 22 + (σ 12 + σ 22 ) p
94
Solutions to Chapter 12
Problem 12.1
The m-step ahead predictor is given by
ŷ( k + m k) j qG ( q)
C ( q)
y( k)
where G is obtained from the identity (12.17) and the variance of the prediction
error is given by (12.19). For m 1 we get
which gives
G ( q ) g0 q + g1 −0.2q + 0.1
The predictor is then given by
q − 1.4q + 0.5
ŷ( k + 1 k) 2
j
E ỹ2 ( k + 1 k) σ 2 4
For m 2
− 0.2
This gives
F ( q) q
G ( q) −0.14q + 0.08
and
j
E ỹ2 ( k + 2 k) σ 2 (1 + f 12) 4.16
For m 3 we get
− 0.2q − 0.14
which gives
F ( q) q2
G ( q) −0.088q + 0.056
j
E ỹ ( k + 3 k) σ 2 (1 + f 12 + f 22 ) 4.24
2
var( y)
− −
(1+1.42+0.52 )(1+0.4)+2( 1.4 1.4 ⋅ 0.5)⋅ 1.2+ 2 ⋅ 0.5(1.22 0.4(1+0.4)) −
22
−
(1 0.42 )(1 + 0.4) + ( 1.2 + 1.2 ⋅ 0.4) ⋅ 1.2 −
4.28
This implies that the prediction variance is almost the same as the variance of y
when m ≥ 3.
95
Problem 12.2
The identity (12.17) is
This gives
c a + f1
0 a f1 + f2
..
.
0 a f m−2 + f m−1
0 a f m−1 + g0
The solution is
f1 c −a
f2 (−a)( c − a)
f3 (−a) ( c − a)
2
..
.
f m−1 ( a) m−2 ( c− − a)
g0 (−a) m 1 − (c − a)
The m-step ahead predictor is
j
ŷ( k + m k)
−
( a) m−1 ( c − a)q y(k)
q+c
j − −
E ỹ( k + m k) σ 2 (1 + ( c a)2 + a2 ( c a)2 + ⋅ ⋅ ⋅ + a2( m−2)( c − a) )
2
−
21 a2( m−1)
−
σ 1 + ( c a)
−
2
1 a2
Problem 12.3
a. The C-polynomial has a zero outside the unit circle. Example 12.1 shows how
the C-polynomial should be changed. It is replaced by
C ∗ ( z) 5z + 1 5( z + 0.2)
q( q + 0.2) ( q − 0.9)(q + f ) + g 1 0
This gives
F ( q) q + 1.1
G ( g ) 0.99
This predictor is
ŷ( k + 2 k) j 0.99q
q + 0.2
y( k)
j
and
E ỹ2 ( k + 2 k) 25(1 + 1.12 ) 55.25
96
Problem 12.4
Using the data given up to time k 7 it is possible to calculate y( k) and zd ( k)
−
z( k) y( k). zd is the deterministic part of z.
k z( k ) y( k) z d ( k)
1 320 10 310
2 320 0 320
3 325 − 5 330
4 330 − 10 340
5 350 0 350
6 370 10 360
7 375 5 370
The prediction of the demand for August through November is
j
ẑ(8 7) zd (8) + ŷ(8 7) j
..
.
j
ẑ(11 7) zd (11) + ŷ(11 7) j
We thus need the 1, 2, 3 and 4 step ahead predictors of y. Those are given by
solving the identity (12.17) and give
m F ( q) G( g )
1 1 0.7q + 0.1
2 q + 0.7 0.59q + 0.07
3 q2 + 0.7q + 0.59 0.48q + 0.06
4 q3 + 0.7q2 + 0.59q + 0.48 0.40q + 0.05
The prediction is
j
ŷ( k + m k)
qG ( q)
C ( q)
y( k) g0 y( k) + g1 y( k − 1)
which gives the predicted values and their standard deviation σ .
Problem 12.5
−q
The polynomials are
A q3 2
+ 0.5q
B q + 0.5
C q3 + 0.8q2 + 0.25q
It is easily seen that C is a stable polynomial, e.g. by the stability triangle. This
is a necessary condition for the minimum variance design method.
The pole excess is
d deg A deg B 2 −
The Diophantine equation is
q d−1 C ( q) A( q) F ( q) + G ( q)
q( q3 + 0.8q2 + 0.25q) ( q3 −q 2
+ 0.5q)( q + f 1 ) + ( g0 q2 + g1 q + g2 )
97
Identifying coefficients of powers of q gives
0.8 −1 + f
0.25 0.5 − f
1
1 + g0
0 0.5 f 1 + g1
0 g2
Problem 12.6
The noise sequence has a non zero mean value. Introduce
e( k) 2 + ε ( k)
u( k) u + ũ( k)
Choose u −0.6 and the problem is reduced to the standard problem. The identity
gives
0.1q
ũ
−
q 0.2
y( k)
and
u( k )
q
0.1q
− 0.2
y( k) − 0.6
Problem 12.7
−a
a. The identity gives
F ( q) q + c
G ( q) a( a − c ) q
and the minimum variance controller is
98
200
Output
100
Problem 12.8
F ( q) 1
G ( q) 3.2q + 0.2
and for d 2
F ( q) q + 3.2
G ( q) 5.64q2 − 2.24q
The minimum variance controller is
u( k ) − B (Gq)(Fq)(q) y(k)
and the minimum variance in the two cases are
d1: Ey2 1
d2: Ey2 1 + 3.22 11.24
b. Fig. 12.1 shows the output of the open loop system for one realization of the
noise sequence. The output is drifting since the A-polynomial contains an
integrator. Fig. 12.2 and Fig. 12.3 shows the output and the control signal
for the same noise realization when the minimum variance controller is used
with d 1 and d 2.
Problem 12.9
a. Assume that
1
H ( z) λ
z+ a
Sending white noise e( k) through this filter gives the spectral density (see
Theorem 10.2)
λ2 1
φ (ω )
2π 1 + a2 + 2a cos ω
99
Output 10
−10
0 50 100 150 200
20
Input
−20
0 50 100 150 200
Time
Figure 12.2 The output and the control signal when d 1 and the minimum variance
controller is used for the process in Problem 12.8.
10
Output
−10
0 50 100 150 200
20
Input
−20
0 50 100 150 200
Time
Figure 12.3 Same as Fig. 12.2 but when d 2.
This implies that λ 1 and a 0.6 gives the desired spectral density. The
process is now described by
1 1 1
y( k)
1 − 0.5q−1 q + 0.6
e( k) + u( k)
q
or
( q2 + 0.1q − 0.3) y(k) (q + 0.6) u(k) + q e(k)
b. Use the controller
u( k ) − K y(k)
100
This gives
− 0.3) y(k) −(q + 0.6) K y(k) + q e(k)
( q2 + 0.1q
q
q + (0.1 + K ) q + (0.6K − 0.3)
y( k) 2
e( k)
Problem 12.10
101
b. From Example 3.2 we find that the closed loop system is stable if
Problem 12.11
y( k) − 1.5 y(k − 1) + 0.7 y(k − 2) u(k − 2) − 0.5u(k − 3) + v(k)
A( q) q − 1.5q + 0.7q
gives
3 2
B ( q) q − 0.5
Note that the process zero (0.5) is stable and well damped. This means that the
process zero can be cancelled without problem. The degree conditions gives
a. v( k) 0; Deadbeat Control
Am ( q) q2
B + ( q) q − 0.5
B − ( q) 1
′ ( q) 1
Bm
Ao ( q) q2
A( z) R 1 ( z) + B − ( z) S ( z) Am ( z) Ao( z)
with solution
r1 1.5
s0 1.5r1 − 0.7 1.55
s1 −0.7r −1.05
1
s2 0
This gives the regulator
u( k )
T ( q)
R ( q)
u c ( k) − RS((qq)) y(k)
where
R ( q) R 1 ( q) B + ( q) ( q + 1.5)( q − 0.5)
T ( q) B m Ao q 2
102
b. v( k) e( k) − 0.2e(k − 1); Minimum variance The polynomial C is given by
C ( q) q − 0.2q 3 2
u( k ) − B (Gq)(Fq)(q) y(k)
where the polynomials F and G are obtained from
q( q3 − 0.2q ) (q − 1.5q
2 3 2
+ 0.7q)( q + f 1 ) + g0 q2 + g1 q + g2
f1 − 1.5 −0.2
0.7 − 1.5 f 1+ g0 0
0.7 f 1 + g1 0
g2 0
with solution
f 1 1.3
g0 1.25
g1 −0.91
g2 0
The minimum variance controller is thus given by
− (q1−.25q0.5)(−q0+.91q
2
u( k ) y( k)
1.3)
CR C R1
y( k) e( k) e( k)
AR + B S Am Ao
q−4 C ( q) R 1 ( q) e( k) C ∗ ( q−1) R ∗1 ( q−1) e( k)
(1 − 0.2q− )(1 + 1.5q− )e(k) (1 + 1.3q− − 0.3q− )e(k)
1 1 1 2
which is a moving average (MA) process. The variance of the output is then
simply calculated as
E ( y2 ) (1 + 1.32 )σ 2 2.69σ 2
103
Output 10
−10
0 50 100 150 200
10
Output
−10
0 50 100 150 200
500
Loss
0
0 50 100 150 200
Time
Figure 12.4 The output and the sum of the square of the output for the two regulators
in Problem 12.11. The deadbeat controller is used in the upper diagram and the minimum
variance controller in the middle diagram. The accumulated loss functions are shown in
the lower diagram, deeadbeat (dashed) and minimum variance (solid).
d. Fig. 12.5 shows the output and the sum of the square of the output for the
regulators in a and b.
Problem 12.12
Introduce the polynomials
A1 ( q) A( q) D ( q)
B1 ( q) B ( q) D ( q)
C1 ( q) A( q) C ( q)
and the noise e1 λ e. The system can then be written as
B1 C1
y( k) u( k ) + λ e1 ( k) (12.1)
A1 A1
u( k ) − B (Gq)(Fq)(q) y(k)
1
1
1
(12.2)
where
q d1−1 C1 ( q) A1 ( q) F1( q) + G1 ( q) (12.3)
Equation (12.3) is equivalent to
q d−1 A( q) C ( q) A( q) D ( q) F1( q) + G1 ( q)
104
where F and G satisfy the equation
q d−1 C ( q) D ( q) F ( q) + G ( q)
− −
with deg F d 1 and deg G deg D 1. We see that if A D the controller
reduces to the normal minimum variance controller.
Problem 12.13
In this case
A( q) q + a
B ( q) b
C ( q) q + c
D ( q) q
d1
q + c q ⋅ 1 + g0
⇒ g0 c
Problem 12.15
We have
1
− −
1 0.5q−1
y1 ( k)
−
1 0.7q−1
u ( k 1 ) +
−
1 0.7q−1
e( k)
q−1
y2 ( k) y1 ( k)
1 + α q−1
∗
∗
1
A1 A∗
B
u ( k −2 ) +
C∗
A∗
−e( k 1 )
1 − 0.5q−
− e( k − 1)
1
1
(1 + α q− )(1 − 0.7q− ) (1 + α q− )(1 − 0.7q− )
1
u ( k
1
2 ) + 1 1
−
To normalize the notations it is convenient to introduce a new noise ε ( k) e( k 1).
a. Assume that y1 can be measured. The minimum variance controller for y1 is
then
u( k ) −0.2 y (k)
1
Ey21 1
− α 2.78
1
Ey22 2
1
105
c. The minimum variance controller for y2 when y2 is measurable is obtained
by using the identity
1 − 0.5q−
1
(1 + α q−1 )(1 − 0.7q− )(1 + f q− ) + q− ( g
1
1
1 2
0 + g1 q−1 )
This gives
F ∗ ( q−1) 1 + q−1
G ∗ ( q−1) 0.94 − 0.56q− 1
− 0.941−+0q.56q
and the controller
−1
u( k ) − 1
y2 ( k)
This gives
y2 ( k) (1 + q−1 )ε ( k) ε ( k − 1) + e(k − 2)
and
y1 ( k) (1 + q−1)(1 + α q−1 ) e( k + 1)
The variances of the two signals are
d. In this case both y1 and y2 are measurable and y1 ( k) will contain more recent
information about the noise process than y2 ( k). It is now only necessary to
predict one step ahead. Introduce the identity
This gives
C∗ B∗
y2 ( k + 2) e( k + 2 ) + u( k )
A∗1 A∗ A∗1 A∗
G1∗ B∗
e( k + 2) + e( k + 1 ) + u( k )
A∗1 A∗ A∗1 A∗
But
ε ( k + 1)
A∗
C∗
y1 ( k) − CB ∗
∗
u( k − 1)
This gives
∗
y2 ( k + 2) ε ( k + 2) +
G1∗
∗
A1 A ∗
A
C ∗
y1 ( k)
B∗
C∗
u( k− − 1) + ABA u(k)
∗
1
∗
G∗
A1 A
B∗
ε ( k + 2) + ∗ 1 ∗ y1 ( k) + ∗ ∗ ∗ C ∗
A1 A C
− G q − u( k )
∗
1
1
∗
1 G1 ∗
ε ( k + 2) + ∗ y1 ( k ) + B u ( k )
C A∗1
u( k ) − AGB
∗
1
∗
1
∗
y1 ( k)
− 11−−00.56q
−1
u( k ) y1 ( k)
.8q− 1
106
With this control law we get
y2 ( k) ε ( k) e( k − 1)
and
Ey21 1 + α 2 1.64
and
Ey22 1
We can thus conclude that the extra measurement will greatly improve the
control of the output of the system.
Problem 12.16
The same arguments can be used in this case as when deriving the normal min-
imum variance controller. Assume that the system has a stable inverse. Also
assume that deg A deg B deg D i.e. that the process can be written as
C∗ B∗ D∗
y( k + d) e ( k + d ) + u ( k ) + v( k)
A∗ A∗ A∗
G∗ B∗ D∗
F ∗ e( k + d) + ∗ e( k) + ∗ u( k) + ∗ v( k)
A A A
F ∗ e( k + d) + ∗
G
A
∗ A
C∗
∗
y( k )
B
C∗
∗
−
u ( k d )
D∗
C∗
v( k − − − d)
B∗ D∗
+ ∗ u( k) + ∗ v( k)
A A
B∗
F ∗ e( k + d) + ∗ y( k) + ∗ ∗ C ∗ q−d G ∗ u( k)
G∗
C A C
−
D∗ ∗
+ ∗ ∗ C
A C
− q−d G ∗ v( k)
1
F ∗ e( k + d) + ∗ ( G ∗ y( k) + B ∗ F ∗ u( k) + D ∗ F ∗ v( k))
C
u( k ) − BGF∗
∗
∗
y( k) − DB ∗
∗
v( k)
Problem 12.17
A( q) y( k) B ( q)u( k) + C ( q) e( k)
A( q) q − 0.9A B ( q) qA C ( q) q − 0.5
LQG-Control: Minimize E ( y2 + ρ u2). Let P ( z) be the closed loop system char-
acteristic equation (12.45)
107
P ( z) contains stable zeros of the right hand expression (Lemma 12.1)
rp1 −0.9ρ
r(1 + p21 ) 1 + 1.81ρ
Am P ( z) z + p1
A o C ( z) z − 0.5
Control law:
u( k ) − RS((qq)) y(k)
where S (0) 0. See computational procedure in Section 12.5.
The Diophantine equation to be solved is
PC AR + B S
or
− 0.5) (z − 0.9)(z + r ) + zs
( z + p1 )( z 1 0
p − 0.5 −0.9 + r + s
This gives
−0.5p −0.9r
1 1 0
1 1
u( k ) − q s+qr
0
1
y( k)
or
CR CR R q + r1
y( k) e( k) e( k) e( k) e( k)
AR + B S PC P q + p1
−
Theorem 10.4 gives
1 + r21 2r1 p1
Var y
1 p21 −
108
The input u is
1
e( k)
ρ p1 Var y Var u
Problem 12.24
From Example 12.16 we get a polynomial description of the process
A( q) y( k) B ( q)u( k) + C ( q) e( k)
where
A( q) q −1
B ( q) h
C ( q) q + c
The minimum variance regulator is given by the Diophantine
PC AR + B S
where
P ( q) q d−1 B ( q) h
The solution is
r0 h
s0 c + 1
and the minimum variance regulator is
u( k ) − c +h 1 y(k)
In LQ − design we use a state-space description of the process (see Example
12.16)
x( kh + h) x( kh) + hu( kh) + v( kh + h) − v( kh)
y( kh) x( kh) + ε ( kh)
To obtain the LQ-controller we have to sample the loss function.
From (11.6) - (11.8) we get
Z h
Q1 1 ⋅ ds h
0
Z h
h2
Q12 s ⋅ ds
0 2
Z h
h3
Q2 s2 ⋅ ds
0 3
109
The Riccati equation is
−
S Φ T S Φ + Q1 LT ( Q2 + Γ T S Γ) L
L ( Q2 + Γ T S Γ)−1 (Γ T S Φ + Q12 )
1 3+ 3 √
−p Φ − Γ L 1 − h h 2 + √3 3 − 2
1
and
P ( z) z + p1
To get the regulator we solve the Diophantine (see p. 481)
PC AR + B S S (0) 0
( q + p1 )( q + c ) ( q − 1)(q + r ) + hs q
1 0
Problem 12.29
The process is described by
A( z) z2 − 1.4z + 0.65
B ( z) z − 0.2
C ( z) z2 + 0.4z
A( z) F ( z) + G ( z) zd−1 C ( z)
z2 − 1.4z + 0.65 + g z + g 0 1 z2 + 0.4z
− 0.65
This gives
G ( z) 1.8z
1.8q − 0.65
The control law is
u− y−
G
q − 0.2
y
BF
b. The dead-beat controller is obtained from the identity
A( z) F ( z) + G ( z) z2
− 0.65
which gives
G ( z) 1.4z
1.4q − 0.65
u−
q − 0.2
y
110
c. Minimum variance control
var( y) 1 ⋅ σ 2 4
Dead-beat control
var( y) (1 + 0.42 )σ 2 4.64
Problem 12.30
C AF + G
This gives
F 1
G −a
and the controller
u − BGF y ay
The closed loop system becomes
y( k) e( k) + ce( k − 1)
and the variance
var( y) 1 + c 2
b. Assume that C ( z) z + ĉ. The minimum variance controller for this model
is given by
F1
G ĉ −a
The closed loop system is now
q+c
y( k) e( k)
q + ĉ
−
(1 + c 2 ) 2c ĉ
var( y)
−
1 ĉ 2
2c
0 < ĉ <
1 + c2
Problem 12.31
The C polynomial has a pole outside the unit circle. Replace C by a new polyno-
mial obtained from spectral factorization
−
The new process is
q2 0.8q
y( k)
−
q2 1.1q + 0.3
ε ( k)
111
a. The 2-step ahead predictor is given by
zm−1 C ( z) A( z) F ( z) + G ( z)
z( z2 − 0.8z) (z − 1.1z + 0.3)(z + f ) + g z + g
2
1 0 1
which gives
F ( z) z + 0.3
G ( z) 0.03z − 0.09
−
and
j
ŷ( k + 2 k)
qG ( q)
C ( q)
y( k)
0.03( q 3)
q 0.8 − y( k)
Problem 12.32
zC ( z) A( z) F ( z) + G ( z)
The solution is
F ( z) z + 1.6
G ( z) 1.92z2 − 1.18z + 0.16
and the controller is
( q − 0.9)( q + 1.6)
u( k )
c. Since B ( z) has a root outside the unit circle we use the procedure in Theorem
12.3. Factor B ( z) as
B ( z) B + ( z) B − ( z)
with B −∗ ( q) monic, so
B + ( z) −2
B − ( z) −0.9q + 1
q d−1 C ( q) B −∗( q) A( q) F ( q) + B − ( z) G ( q)
q3 ( q − 0.1)(q − 0.9) (q − 1.7q + 0.8q − 0.1)( f q + f q + f )
3 2
0
2
1 2
+ (−0.9q + 1)( g q + g q + g )0
2
1 2
112
This gives the system of equations
1 f0
−1 −1.7 f + f
− 1.7 f + f + 1.8g
0 1
0.09 0.8 f 0
0 −0.1 f + 0.8 f − 1.7 f − 2g + 1.8g
1 2 0
0 −0.1 f − 2g
1 2 1 2
2 2
−B G ( q)
− −1.245q + 0.931q − 0.136
2
u( k ) y( k) y( k)
+ ( q) F ( q) q + 0.7q + 2.721
2
or
CF CF F
y( k) − e( k) d−1 − e( k) d−1 −∗ e( k)
AF + G B q CB ∗ q B
q + 0.7q + 2.721
2
q( q 0.9) − e( k)
Var y 94.7
Problem 12.33
0.9q + 1 q( q 0.7) −
y( k)
−
( q 1)( q 0.7)−u( k ) +
( q 1)( q 0.7)
e( k)
− −
Determine the controller from
AR + B S q d−1 C
113
with the solution
r1 0.526
s0 0.526
s1 −0.368
(1 + 0.526q−1) e( k)
CR CR
y( k) e( k)
AR + B S qC
var y( k) (1 + 0.5262)σ 2 1.27σ 2
Compare to Example 12.9 p. 468
20 2
var y( k) σ 1.053σ 2
19
114