Professional Documents
Culture Documents
Lesson 1
2
3
4
5
System model (mathematical description)
Model inversion
6
Nonlinear systems:
System: Model:
d
x(t) = f (x(t),u(t), p)
Driver dt
y(t)=g(x(t),u(t), p)
m
*
L
Drosseklappe
u λvK :BOSCH LSU4
(Breitband-Sonde)
Uncertainty:
Saugrohr
Motronic
λ 2P
hK
:BOSCH LSF4
Einspritz-
€
(Zweipunkt-Sonde)
ventile
n
y pi,min ≤ p ≤ pi,max ,
λvK λ 2P
hK
Katalysator (Haupt-)Katalysator
i = 1,…N
λhK , NO, CO, (HC, CO2)
€
9
10
11
12
13
Feedback is everywhere
• engineering
• biology
• social systems
• ……
14
15
16
17
18
s
d
19
20
21
22
Lesson 2
23
24
25
error
Fehler
reference
Sollwert e u output
Istwert y
ECU
Regler car
Strecke
r - control
Stellsignal
Te
y
u injectors
throttle
cylinders
33
34
35
36
37
Example „Loudspeaker“
v(t)
38
39
40
41
Lesson 3
43
44
45
Equilibrium condition
h0 ≠ 0 ≠ 0 ⇒ nominal point
Equilibrium:
zg =
Standard:
Choice:
€
48
f0 (x,u)
xe x
∂f 0 ∂f 0
€ ⋅ δx + ⋅ δu
ue ∂x x e ,ue ∂u x e ,ue
€ €
u
δx
€
δu
€
∂f 0 ∂f 0
f 0 (x e + δx,ue + δu) ≈ f 0 (x€
e ,ue ) + ⋅ δx + ⋅ δu
∂x x e ,ue ∂u x e ,ue
=0
49
50
51
≈
52
x(t) = 1+ δx(t) 1
1+ δx(t) = 1+ δx(t) +…
u(t) = 1+ δu(t) 2
Linearized equation:
€ €
53
Equilibrium condition:
therefore:
or:
with:
54
55
Equilibrium condition:
therefore:
or:
56
d
System model: z(t)= f (z(t),v(t)), w(t) = g(z(t),v(t))
dt
€ τ (m, γ , v0 )
€ k(m, v0 )
m
€ €
€
60
61
62
First-order system (n=1, the most simple case):
63
64
Lesson 4
65
.
approximated by: δx(t) = A .δx(t) + b .δu(t)
δy(t) = c .δx(t) + d.δu(t)
P
0
δu .
C z(t)=f(z(t),v(t))
u y
v0 v w
w0-1
uu0e
w(t)=g(z(t),v(t)) δy
yy0
e
66
d
x(t) = A ⋅ x(t) + b ⋅ u(t)
dt
y(t) = c ⋅ x(t) + d ⋅ u(t)
€
67
Main feature:
Key point:
Verify that!
69
A few remarks:
Matrix exponentials are not as simple as scalar ones, i.e,
Proofs see QC
70
initial-value problem:
System output
Qualitative “solutions”?
81
Lyapunov Stability
xn
x(0)
€
x1
€
€
82
Pro memoria I
A vector v that is mapped by a linear mapping A into
a collinear vector λv is called an Eigenvector
(*)
The scalar “gain” λ is an Eigenvalue of A. In general,
both λ and v are complex-valued objects.
T= det(T ) ≠ 0
det(T ) ≠ 0
T ⋅ x˜ (t)= e A⋅t ⋅T ⋅ x˜ (0)
⇒ x˜ (t)= T −1 ⋅ e A⋅t ⋅T ⋅ x˜ (0) €
−1 ⎛ 1 2 2 ⎞
⇒ x˜ (t)= T ⋅ ⎜ I + A ⋅ t + A ⋅ t +…⎟ ⋅T ⋅ x˜ (0)
⎝ 2 ⎠
⎛ −1 −1 1 −1 −1 2 ⎞
⇒ x˜ (t)= ⎜T ⋅T + T ⋅ A ⋅T ⋅ t + T ⋅ A ⋅T ⋅T ⋅ A ⋅T ⋅ t +…⎟ ⋅ x˜ (0)
⎝ 2 ⎠
⎛ ˜ 1 ˜2 2 ⎞ A˜ ⋅t T −1 ⋅A⋅T⋅t
⇒ x˜ (t)= ⎜ I + A ⋅ t + A ⋅ t +…⎟ ⋅ x˜ (0) = e ⋅ x˜ (0) = e ⋅ x˜ (0)
⎝ 2 ⎠
85
λi ⋅t σ i ⋅t jω i ⋅t
λi = σ i + jωi ⇒ e =e ⋅e
σ i ⋅t
=e ⋅ [cos(ωi ⋅ t ) + j sin(ωi ⋅ t )]
87
For therefore x = 0 ⇔ x˜ = 0
det(T ) ≠ 0 x = ∞ ⇔ x˜ = ∞
[T ]ij < ∞ x < ∞ ⇔ x˜ < ∞
Therefore
€ €
89
What if A is not diagonalizable?
region of attraction
91
Example:
“pendulum on a cart”
92
nominal
position
93
nominal
position
94
Lesson 5
95
A = [ 0 1 0
0 0 1
-1 -2 -1]
c = [ 1 1 1]
x0 = [ 1
1
1 ]
t=0:0.01:10;
y=[];
for i=1:max(length(t));
y = [y;c*expm(A*t(i))*x0];
end;
plot(t,y)
96
97
xn
x2
x1
98
xn
x2
x1
99
xn
x2
x1
100
therefore, analyze
101
Definition:
Yields:
102
xn
rr
r1
x2
x1
103
Problem:
Solution:
Pro memoria: characteristic polynomial of A:
Therefore:
104
Main result:
The system {A,b} is completely controllable iff
+
106
107
108
Rank?
109
Rank?
110
111
is in the kernel of
bu =
Controllability OK
115
yes no
yes
no
119
R
O
u y
R R
O O
R
O
120
2
~ ~ ~ ~
1
4
~ ~
~
Ã
b
~
c
121
€
122
d Input/Output Forms
x1 (t) = x 2 (t)
dt
d y(t) = x1 (t)
x 2 (t) = x 3 (t)
dt
d
x 3 (t) = −x1 (t) − 2 ⋅ x 2 (t) − 3⋅ x 3 (t) + u(t)
dt
€
124
I/O description
No coordinates!
125
u
Σ
y
u1, u2 : signals
α, β : real numbers
127
Controller Canonical Form, Example n=3 and m=1
Known IO description of system:
y (3) (t) + a2 ⋅ y (2) (t) + a1 ⋅ y (1) (t) + a0 ⋅ y(t) = b1 ⋅ u (1) (t) + b0 ⋅ u(t)
Realization of ξ(t):
(3) (2)
u ξ ξ ξ (1) ξ
+ ∫ ∫ ∫
- a2
- a1
- a0
129
u d u (1) ζ (3) ζ (2) ζ (1) ζ
dt + ∫ ∫ ∫
- a2
1. - a1 Realization of ζ(t):
- a0
u ξ (3) ξ (2)
ξ (1) ξ d ζ
+ ∫ ∫ ∫ dt
- a2
2.
- a1
- a0
ζ
- a2
3. a1
-
- a0
130
Superposition principle and coordinates
ζ
b1 +
x3 x2 x1
u ξ (3)
ξ (2)
ξ (1)
ξ y
+ ∫ ∫ ∫ b0 +
- a2
- a1
- a0
Lesson 6
137
So far, focus on internal description
Asymp. Stability
Re{λi(A)} < 0 ?
Controllability
Range{ } is the controllable subspace
Observability
Kernel{ } is the not observable
subspace
138
€
s = σ + jω
Function x:
Function X:
Transformation is reversible, no €
“information” is lost.
141
∞ ∞
d
∫ dt
x(t) ⋅ e dt = x(t) ⋅ e |0 − ∫ x(t) ⋅ (−s) ⋅ e dt
−st −st ∞ −st
0 0
∞
= −x(0) + s ⋅ ∫ x(t) ⋅ e dt
−st
= −x(0) + s ⋅ X(s)
Generalization:
143
The Laplace transforms of the
most important signals
Structure of Σ(s)
Therefore:
Therefore:
bm ⋅ s m +…+ b1 ⋅ s + b0
Y (s) = n n−1
⋅U(s) = Σ(s)⋅U(s)
s + an−1 ⋅ s +…+ a1 ⋅ s + a0
147
Relationship between IO and internal description
Same system, two descriptions of IO dynamics
b ⋅ s m˜
+ … + b ⋅ s + b ˜ (s)
b derived using IO
Σ˜ (s) = n˜ m n˜ −1
1 0
=
s + an−1 ⋅ s + … + a1 ⋅ s + a0 a˜ (s) measurements only
Fϕ (t)
R r(t)
⎡ x1 ⎤ ⎡ 0 1 0 0 ⎤ ⎡ x1 ⎤ ⎡0⎤ ⎡ 0 ⎤ ϕ(t)
⎢ ⎥ ⎢ 2 ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥
d ⎢ x2 ⎥ ⎢3ω0 0 0 2ω0 r0 ⎥ ⎢ x2 ⎥ ⎢1⎥ 0
= ⋅ + ⋅ u1 + ⎢ ⎥ ⋅ u M
dt ⎢ x3 ⎥ ⎢ 0 0 0 1 ⎥ ⎢ x3 ⎥ ⎢0⎥ ⎢ 0 ⎥ 2
⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥ ⎢ ⎥
⎣x4 ⎦ ⎣ 0 −2ω0 r0 0 0 ⎦ ⎣ x4 ⎦ ⎣0⎦ ⎣1/ r0 ⎦ measure azimuth
y =[ 0 0 1 0 ]⋅ x
u2 → y
Two zeros at
ζ1/2 = ± 3ω0
Four poles at
π1/2 = ± jω0 , π 3/ 4 = 0
€
150
Transfer Function from radial thruster to azimuth angle:
u1 → y
Therefore minimal realization has order < 4 (here 3) and one
mode does not influence the transfer function.
151
Quick Check: For a system defined by its internal description
⎡ x˙1 ⎤ ⎡+1 3⎤ ⎡ x1 ⎤ ⎡1⎤
⎢ ⎥ = ⎢ ⎥ ⋅ ⎢ ⎥ + ⎢ ⎥ ⋅ u
⎣x˙2 ⎦ ⎣ 0 −1⎦ ⎣x2 ⎦ ⎣1⎦
⎡ x1 ⎤
y = [ 0 1] ⋅ ⎢ ⎥
⎣x2 ⎦
Compute its transfer function Σ(s).
€
Zeros and poles of Σ(s)
Interconnected as follows
u
u1 y1 u2 y2 y
Σ1 Σ2
-
€ € € €
€ €
IO description of new system?
154
Transfer functions (use superposition principle)
Σ1
y1 = Σ1 ⋅ (u − Σ 2 ⋅ y1 ) ⇒ y1 = ⋅u
1+ Σ 2 ⋅ Σ1
Σ 2 ⋅ Σ1
y 2 = Σ 2 ⋅ Σ1 ⋅ (u − y 2 ) ⇒ y2 = ⋅u
1+ Σ 2 ⋅ Σ1
(1+ Σ 2 ) ⋅ Σ1 (1+ Σ 2 ) ⋅ Σ1
y = y1 + y 2 ⇒ y= ⋅u ⇒ Σ=
1+ Σ 2 ⋅ Σ1 1+ Σ 2 ⋅ Σ1
Laplace transformations
€
155
Lesson 7
156
157
Application of Laplace transformation
System equations
Laplace:
Laplace transformation (for each element in x(t))
Solution
158
u(t)=h(t)
y(t) = ? for lim t → ∞
1
= lim s ⋅ Σ(s) ⋅ = lim Σ(s) = Σ(0)
s→0 + s s→0 +
162
QC:
2s + 3
DC gain of Σ(s) = 2
s + 3s + 2
s+3
DC
€ gain of Σ(s) =
−s + 7
€
163
ζ = -2
π = -4, -1±j2
Map: s |Σ(s)|
167
1
U(s) = 2
s +1
€ ϕ3 = 1 ϕ4 = 1
ϕ1 = 1 ϕ2 = 2
Poles:
Parameters:
172
173
Step Response
Y(s)
Substitution:
174
Y(s)
Y(s)
QC
181
Μ(s)
-1
Adj(M)
M
(s)
c Adj(sI-A) b
183
b1s + b0
Σ(s) = 2
s + a1s + a0
⇒ €
⇒
€
€
⇒
184
Result:
185
−∞ < k < +∞
| k |≈ 0 case€
“worst finite zero”
186
k=
187
l α
M d
u
<< C
r
188
Lesson 8
189
Computation of output signals for low-order systems:
Example:
1 1 1
Y (s) = − +
s s + 2 (s +1)2 +1 (p.f.d.)
y(t) = h(t ) ⋅ [1− e−2t + e−t ⋅ sin(t)] (linearity & damping law)
191
Y(s)
k=
194
70o
20o
40o
15o
10o
195
2 −1
Σ(s) = +
s + 1 0.2s + 1
2 ⋅ (0.2s + 1) − (s + 1)
=
(s + 1) ⋅ (0.2s + 1)
0.4s + 2 − s −1
=
(s + 1) ⋅ (0.2s + 1)
−0.6s + 1
=
(s + 1) ⋅ (0.2s + 1)
"no slip"
197
momentary d x(t)=v(t).cos(z(t))
center of model ODE: dt
rotation
d v(t)=u (t)
dt 1
w(t) d y(t)=v(t).sin(z(t))
dt
d z(t)= v(t) . tan(w(t))
dt l
l v(t) d w(t)=u (t)
dt 2
tan(w(t))
z(t) w(t)
y(t)
x(t)
198
Linearization around: Inputs: Output (y-position of front axis):
x0 =v0 . t u1(t) q(t)=y(t)+l. sin(z(t))
v 0 ≠0 (const.) u2(t)
y0 =0
Linearization:
z0 =0
d δx(t)=δv(t)
. Transfer function: δu2(t) δq(t)
dt
w 0 =0 d δv(t)=δu (t) s.l+v0 . v0
1 P(s)=
dt s3 l
A=[0 1 0 0 0 d δy(t)=v .δz(t) • Plant is unstable (5 eigenvalues at 0,
0 0 0 0 0 dt 0
0 0 0 v0 0 partial Jordan form)
0 0 0 0 v0 /l d δz(t)= v0 . δw(t)
0 0 0 0 0 ];
dt l • Plant is not minimal (5 state variables
B=[0 0
d δw(t)=δu (t) but TF third order)
1 0
0 0 dt 2
0 0 • In forward driving 1 minimum phase
0 1];
zero, in backward driving 1 non-
c=[0 0 1 l 0 ]; minimumphase zero
δq(t)=δy(t)+l. δz(t)
d=[0 0];
199
“Experiment”
astab
Σ(s)
200
Explanation
Input:
Output:
201
System astab <=>
therefore
where
202
Therefore
204
Therefore
or, with
Main result
astab
Σ(s)
206
Nyquist Diagram, example
frequency is an
implicit parameter
207
ω 02 ω 02
Σ( jω ) = = 2
( jω ) + 2δjω + ω 0 (ω 0 − ω 2 ) + j(2δω )
2 2
2 2
(ω − ω ) − j(2δω )
2 0
=ω 0 2 22 2 2
= re(ω ) + j ⋅ im(ω )
(ω − ω ) + 4δ ω
0
ω ⋅ [ω − ω
2
0
2
0
2
] −ω 02 2δω
re(ω ) = 2 2 2 2 2
, im(ω ) = 2
(ω 0 − ω ) + 4δ ω (ω 0 − ω 2 ) 2 + 4δ 2ω 2
208
Bode Diagram, example
frequency is an
explicit parameter
209
omega_0=1; !
delta=0.2;!
omega=logspace(-1,1,1000);!
num=omega_0^2;!
den=[1,2*delta*omega_0,omega_0^2];!
[m,phi]=bode(num,den,omega);!
subplot(211);!
semilogx(omega,20*log10(m));!
subplot(212);!
semilogx(omega,phi)!
210
211
212
213
214
s +1 1 1
s2 s(s + 3) s 2 + s +1
€ € €
215
216
Relative Degree
€ € € €
217
218
219
220
221
222
1
Σ(s) =
τ zs + 1
€
223
τ zs + 1
Σ(s) =
1
€
224
Lesson 9
225
226
227
228
Physical interpretation (for a mechanical system, similar for all
other areas of system dynamics)
229
Set of possible TF
Uncertainty “generator”
Uncertainty bound
236
Quick Check:
100 ± 1 mm
satisfies
therefore
239
Step 3: find a low-order bound
240
plant (Strecke)
controller (Regler)
242
Definitions
loop gain
return diference
sensitivity
complementary
sensitivity
243
244
Case n+=n0=0
L(jω)
T(jω) astab?
248
Case n+=n0=0
L(jω)
T(jω) astab?
249
1
Im
kp
s
-
-1
n+=
Re
n0=
L(jω)=
250
251
return difference
Im
-1
Re
254
255
|…|
log ω
256
257
Lesson 10
258
0
259
260
261
262
|L(jω)|
0
log ω
Test plant:
Therefore
264
Interpretation:
Example:
k n(s)
T(s)=
π(s)
266
Re
OL poles (k=0)
OL zeros (k=0)
267
Generalization
|L(jω)|
0
log ω
rule of thumb:
268
Interpretation
269
-sT
e
k
p
270
Simplest case:
k < 0 can be OK
k > 0 not OK
272
273
Generalization
|L(jω)|
0
log ω
rule of thumb:
274
Maximum-Modulus Theorem:
Therefore:
Interpretation:
275
Lesson 11
278
“Good Design”
279
Why Not?
100 dB
|L(jω)|
log(ω)
-100 dB
log(ω)
-45°
Arg{L(jω)}
280
If:
Then:
281
r(t), … = h(t)
283
r e u y
C P
-
CL step response
time
284
285
Step1: CL TD -> CL FD
€ ⇒
286
Step2: CL FD -> OL FD
=>
2
ω 0
L( jω ) =
jω ⋅ ( jω + 2 ⋅ δ ⋅ ω0 )
€
287
insert
cross-over frequency
phase margin
288
289
r e u y
C P
-
290
Specs:
=>
ωc=0.65 rad/s
292
|L(jω)|
|P(jω)|
293
= 0.53
294
295
Frequency-Domain Closed-Loop Specs
Definition:
296
Im
1/S
Smaxmax
L(jω )
Re
-1
€
1+L(jω)
297
There is more …
298
Lesson 12
299
Recap:
t
• rise time
90
• max. overshoot
εˆ
300
Step 1:
Step 2:
{ω0 , δ} → {ωc , ϕ }
Plot results and derive approximations
€
302
“Recipe”
1. Choose desired rise time and maximum
overshoot of the CL system
2. Compute cross-over frequency and phase
margin of the OL system using
€
306
| P( jω c ) | ≈ 10 dB
⇒ k p ≈ −10 dB ≈ 0.3
€
Arg{P( jω c )} = −110
ω c ≈ 0.03
€
⇒ t 90 ≈ 1.7 /0.03 ≈ 56 s
307
(finally …)
log( ω)
0
|P(jω)|
311
-20 dB/dec
ωc
|L(jω)|
312
|C(jω)|
313
Performance OK
Stability?
Robustness?
314
Main assumptions:
• Real plant is well approximated by
Test scenario
317
Interpretation
318
1: Set
= „small“
2:
“measure”
3: Choose
319
320
1 − j⋅arctan {ω }⋅5
P( jω ) = 5 ⋅e
( 1+ ω )
2
€
321
kp*|P(jω)|
|P(jω)|
Arg{P(jω)}
322
d
y
C(s) P(s)
-
323
324
> 0.3
Iterate
Numerical solution:
326
y(t)
LS
1 2 t
ZN
327
T ±10%
328
Lesson 13
329
Lead
Lag
330
Lead
331
Lag
332
333
Recap: How to Design a PID-Controller?
Ziegler-Nichols
€
334
Plant:
Specs:
335
C2(s)=Cl2(s).C(s)
l2
with
336
337
Dangerous!
€
343
Plant
Resulting controller
344
345
346
347
348
349
350
Case 2:
What is wrong?
€
2 (not restricting)
352
First iteration
Choose such
that cross-over frequency is ω c ≈ 0.2 and
loop rolls off with -20 dB/dec around crossover
d
y
C(s) P(s)
-
357
|1+ L2 ( jω ) |
|1+ L1 ( jω ) |
€ | W2 ( jω ) ⋅ L2 ( jω ) |
€
|W 2 ( jω€) ⋅ L1 ( jω ) |
358
Case 3:
u
<<
359
−g −g
P( jω ) = =
−ω ⋅ (−l ⋅ M ⋅ ω − g ⋅ ( m + M )) l ⋅ M ⋅ ω 4 + ω 2 ⋅ g ⋅ ( m + M )
2 2
Im
ω=
P(jω) Re
+
⇒ ω=0+
-1
|P(jω)|
|C(jω)|
|L(jω)|
361
to make controller
realizable
L(jω)
C(jω)
ω=1 ω=1
P(jω)
ω=1
363
Lesson 14
364
1. Extension:
2. Extension:
Characteristic polynomial:
Poles
379
Main Rules
1. The root locus is a set of curves in the complex plane
2. The curves start (k=0) at the poles of the OL system
3. For k approaching infinity, m of the curves approach
the m finite zeros of the OL system
4. The n-m=r other curves go to infinity approaching
straight asymptotes
5. The center of these asymptotes is at σa + j 0
6. The angle of the asymptotes is δi
7. A point in the complex plane is part of the root locus
iff it satisfies the phase condition
380
Angle of asymptotes
i = 1,…,n − m > 0
381
Example:
b(s) s +1
L(s) = =
a(s) (s + 2) ⋅ ( s + 2s + 3)
2
Im
a(s) = 0
b(s) = 0
Re
€
Number of asymptotes =
π1 =
ζ1 =
π2 =
1
π3 = σa = ⋅[ − ]
383
384
i = … −1,0,1,…
€
385
b(s) bm ⋅ (s − ζ1 ) ⋅ (s − ζ 2 )…
L(s) = =
a(s) (s − π 1 ) ⋅ (s − π 2 ) ⋅ (s − π 3 )…
⇒ arg{L(s)} = arg{b(s)} − arg{a(s)}
= [arg{s − ζ1} + …] − [arg{s − π 1} + …]
Im 386
Illustration:
z
z-ζ1
z-π2
γ α
β Re
zero
ζ1
poles π1, π2
γ − (α + β ) = −π
387
388
Plant:
Specs:
3
389
Controller:
⇒ spec 1 OK
spec 2 and 3 to be satisfied by appropriate
choice of the poles of the CL system
2
ω 0
T (s) = 2 2 where (Sect. 10.3)
s + 2δω0 s + ω0
−log(0.02)
δ = δ (εˆ ) = 2 2
≈ 0.78
π + log(0.02)
2π
ω0 = ω0 (δ,t 90 ) = [0.14 + 0.4 ⋅ δ ] ⋅ ≈ 2.2 rad / s
1.3
390
⇒
391
392
C1 (s) = k p = 1 C2 (s) = k p ⋅ (s + ζ ) = s + ζ
393
C1 (s) Im
6
C1 (s) = k p = 1
open-loop pole
k=0 → ∞ 4
open-loop zero
2
€
closed-loop pole
0 desired pole
-2
n-m=2
-4
=0.5(-1-3)=-2
-6
-5 0 Re
394
Im
γ − (α + β ) = −π open-loop zero
2
closed-loop pole
γ α
β 0 desired pole
-2
-4
-6
-10 -5 0 Re
⇒
⇒
395
Outlook:
• Better control system design methods, in
particular for MIMO and nonlinear systems
• Applications
396
State Feedback
397
398
Gain Scheduling
(… how to cope with real-life problems …)
400
Hardware I
401
Hardware II