I.D. Landau A course on robust discrete time control, part1. 2. Part I. Introduction, examples and basic concepts. Part II. Design of robust discrete time controllers.
Robust discrete time control I.D. Landau Emeritus Research Director at C.N.R.S Laboratoire d’Automatique de Grenoble, (INPG/CNRS), France
April 2004, Valencia I.D. Landau A course on robust discrete time control, part1
1
Outline Part I Introduction, examples and basic concepts Part II Design of robust discrete time controllers Part III Special topics
I.D. Landau A course on robust discrete time control, part1
2
Controller Design and Validation Performance specs. Robustness specs.
DESIGN METHOD
MODEL(S)
IDENTIFICATION
Ref. CONTROLLER
+ +
u
y
PLANT
1) Identification of the dynamic model 2) Performance and robustness specifications 3) Compatible robust controller design method 4) Controller implementation 5) Real-time controller validation (and on site re-tuning) 6) Controller maintenance (same as 5)
(5) and (6) require identification in closed-loop
I.D. Landau A course on robust discrete time control, part1
3
Part I Outline • The R-S-T digital controller • Robust control. What is it ? • Examples (4 applications) • Sensitivity functions • Stability of closed loop discrete time systems • Robustness margins • Robust stability • Small gain theorem/ Passivity theorem / Circle criterion • Description of uncertainties and robust stability • Templates for the sensitivity functions
I.D. Landau A course on robust discrete time control, part1
4
The R-S-T Digital Controller CLOCK r(t)
Computer (controller)
u(t)
D/A + ZOH
y(t)
PLANT
A/D
Discretized Plant r(t)
Bm Am
T
+ -
Controller
1 S
u(t)
R
q −d B A
y(t)
Plant Model
q −1 y (t ) = y (t − 1) I.D. Landau A course on robust discrete time control, part1
5
The R-S-T Digital Controller r(t)
Bm Am
+
T
-
1 S R
Controller
u(t) q − d B
y(t)
A Plant Model
−d −1 − d −1 −1 q B ( q ) q B * ( q ) −1 −1 G ( q ) = H ( q ) = = Plant Model: A(q −1 ) A( q −1 ) A(q −1 ) = 1 + a1q −1 + ... + an q −n B(q −1 ) = b1q −1 + ... + bn q −n = q −1 B * ( q −1 ) A
A
R-S-T Controller:
B
B
S (q −1 )u (t ) = T (q −1 ) y * (t + d + 1) − R( q −1 ) y(t )
Characteristic polynomial (closed loop poles):
P(q −1 ) = A( q −1 ) S (q −1 ) + q −d B( q −1 ) R( q −1 ) I.D. Landau A course on robust discrete time control, part1
6
Robust control Robustness of what ? with respect to what ? Robustness of an index of performance with respect to plant model uncertainties. Index of performance : • closed loop stability • time domain performance • frequency domain performance Plant model uncertainties: • low quality design model • uncertainties in a frequency range • variations of the dynamic characteristics of the plant I.D. Landau A course on robust discrete time control, part1
7
Robust control Robust controller : assures the desired index of performance of the closed loop for a set of given uncertainties
Robust closed loop : the index of performance is guaranteed for a set of given uncertainties
I.D. Landau A course on robust discrete time control, part1
8
Robustness of a control system A control system is said to be robust for a set of given uncertainties upon the nominal plant model if it guarantees stability and performance for all plant models in this set.
•To characterize the robustness of a closed loop system a frequency domain analysis is needed • The sensitivity functions play a fundamental role in robustness studies • The study of closed loop stability in the frequency domain gives valuable information for characterizing robustness
I.D. Landau A course on robust discrete time control, part1
9
Robustness. Some questions •How to characterize “model uncertainty”? •How to deal with “model uncertainty” ? •How to characterize “controller robustness” ? Structured (parametric uncertainty)
Model uncertainty Unstructured (specified in the frequency domain)
We will consider the “uncertainties” described in the frequency domain (i.e. effect of parameter uncertainty should be converted in the frequency domain). Important concepts : • nominal model, uncertainty model, family of plant models • nominal stability, robust stability • nominal performance, robust performance I.D. Landau A course on robust discrete time control, part1
10
Nominal model, uncertainty model, family of plant models Nominal model : the model used for design Uncertainty model : the description of the uncertainties in the frequency domain (magnitude, phase) Family of plant models (P): characterized by the nominal plant model and the uncertainty model The different true “plant models” belong to the family P
I.D. Landau A course on robust discrete time control, part1
11
Nominal and robust stability and performance Nominal stability : closed loop as. stable for the “nominal model” Robust stability: closed loop as. Stable for all the plant models belonging to the family (set) P Nominal performance: performance for the “nominal model” Robust performance: performance guaranteed for all plant models belonging to the family (set) P
I.D. Landau A course on robust discrete time control, part1
12
Robust stability and robust performance Robust stability: -1
-1
The closed loop poles remain inside the unit circle (discrete time case) for all the models belonging to the family P
1
r c
1
Robust performance: The closed loop poles remain inside the circle (c,r) for all the models belonging to the family P
• robust performance condition can be translated in a robust stability condition • this is not the only way for solving robust performance design I.D. Landau A course on robust discrete time control, part1
13
Examples to illustrate robust control design • Continuous steel casting • Hot dip galvanizing • Flexible transmission • 360° flexible arm
I.D. Landau A course on robust discrete time control, part1
14
Continuous steel casting
Level to be controlled
Shaking (to prevent adherence)
I.D. Landau A course on robust discrete time control, part1
15
Continuos steel casting Plant (integrator):
A = 1 − q −1 ; B = 0.5q −1 ; d = 2 ; TS = 1s Low frequency disturbances
u(t)
-d
q B A
+
Sinusoidal disturbance (0.25Hz)
+ y(t)
+
Specifications: 1. No attenuation of the sinusoidal disturbance (0.25 Hz) 2. Attenuation band in low frequencies: 0 à 0.03 Hz 3. Disturbance amplification at 0.07 Hz: < 3dB 4. Modulus margin > -6 dB and Delay margin > TS 5. No integrator in the controller I.D. Landau A course on robust discrete time control, part1
16
Hot dip galvanizing. Control of the deposited zinc Finished product
Steel strip
Measurement of deposited mass
Air knife Preheat oven Zinc bath
air
air
zinc steel strip I.D. Landau A course on robust discrete time control, part1
17
Hot dip galvanizing. The control loops Desired deposited zinc mass per cm2
PRBS (± ∆P)
m*
RST controller
Measured deposited zinc mass per cm2
P0
+
Pressure controller
Pressurized Gaz supply
Coating process
+
Measurement delay
m ± ∆m
• important time delay with respect to process dynamics • time delay depends upon the steel strip speed • sampling frequency tied to the steel strip speed • constant integer delay in discrete time • parameter variations of the process as a function of the type of product I.D. Landau A course on robust discrete time control, part1
18
Hot dip galvanizing. Model and specifications Plant model for a type of product :
q −7 (b q −1 ) 1 + a1 q −1 1
Model : TS = 12 sec; b1 = 0.3; a1 = −0.2(− 0.3) )
Specifications (performance) : •Modulus margin: ∆M ≥ 0.5 ∆τ ≥ 2TS •Delay margin: •Integrator
I.D. Landau A course on robust discrete time control, part1
19
Hot dip galvanizing. Performance
I.D. Landau A course on robust discrete time control, part1
20
Control of a Flexible Transmission
The flexible transmission
motor load
axis
Φm d.c. motor
axis position
Position transducer y(t)
Controller
D u(t) A C
I.D. Landau A course on robust discrete time control, part1
R-S-T controller
A D C
Φref
21
Control of a Flexible Transmission Sampling frequency : 20 Hz
A( q −1 ) = 1 − 1.609555q −1 + 1.87644q −2 − 1.49879q −3 + 0.88574q −4 B( q −1 ) = 0.3053q −1 + 0.3943q −2 d =2
Model
Vibration modes:
ω1 = 11.949 rad / sec, ζ 1 = 0.042 ; ω 2 = 31.462 rad / sec, ζ 2 = 0.023 Specifications:
ω 0 = 11 .94 rad / sec, ζ = 0.9 Dominant poles: ω 0 = 11 .94 rad / sec, ζ = 0.8 Tracking:
Robustness margins: ∆M ≥ 0.5 ∆τ ≥ 2TS Zero steady state error (integrator) Constraints on Sup :
Sup
max
≤ 10 dB for f ≥ 0.35 f S = 7 Hz
I.D. Landau A course on robust discrete time control, part1
22
360° Flexible Arm LIGHT SOURCE
RIGID FRAMES
MIRROR
ALUMINIUM
DETECTOR
COMPUTER TACH. POT.
LOCAL POSITION SERVO.
ENCODER
I.D. Landau A course on robust discrete time control, part1
23
360° Flexible Arm
Frequency characteristics
Poles-Zeros Unstable zeros !
(Identified Model)
I.D. Landau A course on robust discrete time control, part1
24
360° Flexible Arm Sampling frequency : 20 Hz A ( q − 1 ) = 1 − 2 .1049 q − 1 + 1 .04851 q − 2 + 0 . 33836 q − 3 + 0 .46 q − 4
Model
− 1 .5142 q − 5 + 0 . 7987 q − 6 B ( q −1 ) = 0 .0064 q −1 + 0 . 0146 q − 2 − 0 .0697 q − 3 + 0 .044 q − 4 + 0 . 0382 q − 5 − 0 . 007 q − 6 d =0
Vibration modes: ω1 = 2.617rad / sec, ζ 1 = 0.018; ω2 = 14.402rad / sec, ζ 2 = 0.025; ω3 = 48.117rad / sec, ζ 3 = 0.038
Specifications: Tracking: Dominant poles:
ω 0 = 2.6173 rad / sec, ζ = 0.9 ω 0 = 2.6173 rad / sec, ζ = 0.8
Robustness margins: ∆M ≥ 0 .5 Zero steady state error (integrator) Constraints on Sup :
∆τ ≥ 2TS
Sup ≤ 15 dB for f < 4 Hz; Sup ≤ 0 dB for 4.5 ≤ f < 6.5 Hz; S up < 15 dB for 6.5 ≤ f < 8 Hz; S up < 10 dB for 8 ≤ f ≤ 10 Hz I.D. Landau A course on robust discrete time control, part1
25
Robust Control. Basic concepts
I.D. Landau A course on robust discrete time control, part1
26
Digital control in the presence of disturbances and noise (disturbance) p(t) r(t) +
T
1/S
-
v(t) + +
u(t)
B/A
y(t)
+
+
PLANT +
R
Output sensitivity function (p y) Input sensitivity function (p u)
+
b(t) (measurement noise)
−1
S yp ( z ) = −1
S up ( z ) =
Noise-output sensitivity function (b y)
−1
S yb ( z ) =
A( z −1 )S ( z −1 ) A( z −1 )S ( z −1 ) + B( z −1 )R( z −1 ) − A( z −1 )R (z −1 ) A( z −1 ) S ( z −1 ) + B( z −1 )R (z −1 ) − B( z −1 ) R( z −1 ) A( z −1 )S ( z −1 ) + B( z −1 ) R( z −1 )
B( z −1 )S ( z −1 ) Input disturbance-output sensitivity function S ( z −1 ) = yv (v y) A( z −1 )S ( z −1 ) + B( z −1 )R( z −1 ) All four sensitivity functions should be stable ! (see book pg.102 - 103) I.D. Landau A course on robust discrete time control, part1
27
All four sensitivity functions must be stable !
z − d B ( z −1 ) −1 Plant model: A ( z ) is unstable −1 A( z ) Supose : R ( z −1 ) = A( z −1 ) (poles compensation by the controller zeros) −1
S yp ( z ) =
A( z −1 ) S ( z −1 ) −1
−1
−1
−1
=
S ( z −1 )
S ( z −1 ) + B ( z −1 ) A( z −1 ) −1 Sup ( z ) = − =− −1 −1 −1 −1 A( z ) S ( z ) + B ( z ) A( z ) S ( z −1 ) + B( z −1 ) B( z −1 ) A( z −1 ) B ( z −1 ) −1 S yb ( z ) = − =− −1 −1 −1 −1 A( z ) S ( z ) + B( z ) A( z ) S ( z −1 ) + B ( z −1 ) B( z −1 ) S ( z −1 ) B( z −1 ) S ( z −1 ) −1 S yv ( z ) = = −1 −1 −1 −1 A( z ) S ( z ) + B( z ) A( z ) A( z −1 )[ S ( z −1 ) + B ( z −1 )] A( z ) S ( z ) + B( z ) A( z ) A( z −1 ) A( z −1 )
Syv is unstable while Syp, Sup,and Syb may be stable if : S ( z −1 ) + B ( z −1 ) = 0 ⇒ z < 1 I.D. Landau A course on robust discrete time control, part1
28
Complementary sensitivity function (disturbance) p(t) r(t) +
T
1/S
-
v(t) + +
u(t)
B/A
+
+
y(t)
PLANT +
R
+
b(t) (measurement noise)
For T = R one has: −1
S yr ( z ) =
B ( z −1 ) R ( z −1 ) −1
−1
−1
−1
A( z ) S ( z ) + B( z ) R( z )
= −S yb ( z −1 )
S yp ( z −1 ) − S yb ( z −1 ) = S yp ( z −1 ) + S yr ( z −1 ) = 1
I.D. Landau A course on robust discrete time control, part1
29
Stability of closed loop discrete time systems The Nyquist is used like in continuous time (can be displayed with WinReg ou Nyquist_OL.sci(.m)) Im H
− jω − jω B ( e ) R ( e ) H OL (e − jω ) = A(e − jω ) S (e − jω )
Critical point
ω=π
-1
-1
S yp = 1 + H (e -jω ) BO
A( z −1 ) S ( z −1 ) + B( z −1 ) R( z −1 ) S yp ( z ) = 1 + H OL ( z ) = A( z −1 ) S ( z −1 ) −1
−1
−1
Re H
H (e -j ω ) BO
ω =0
Nyquist criterion (discrete time –O.L. is stable) The Nyquist plot of the open loop transfer fct. HOL(e-jω) traversed in the sense of growing frequencies (from 0 to 0.5fS) leaves the critical point[-1, j0] on the left I.D. Landau A course on robust discrete time control, part1
30
Stability of closed loop discrete time systems Nyquist criterion (discrete time –O.L. is unstable) The Nyquist plot of the open loop transfer fct. HOL(e-jω) traversed in the sense of growing frequencies (from 0 et f S) leaves the critical point[-1, j0] on the left and the number of encirclements of the critical pointcounter clockwise should be equal to the number of unstable poles in open loop.
Remarks: Im H
ω = 2π
1 unstable pole in Open Loop Stable Closed Loop (a)
ω=π -1 ω=π
ω =0
-The controller poles may become unstable if high performances are required without using an appropriate design method
Re H Stable Open Loop Unstable Closed Loop(b)
-The Nyquist plot from 0.5fS to fS is the symmetric with respect to the real axis of the Nyquist plot from 0 to 0.5fS
ω =0
I.D. Landau A course on robust discrete time control, part1
31
Marges de robustesse The minimal distance with respect to the critical point characterizes the robustness of the CL with respect to uncertainties on the plant model parameters( or their variations) Im H
1 ∆G
1
-1 ∆Μ Crossover frequency
∆Φ
Re H
-Gain margin ∆G -Phase margin ∆φ -Delay margin ∆τ -Modulus margin ∆M
|H OL |=1
ωCR
I.D. Landau A course on robust discrete time control, part1
32
Robustness margins Gain margin ∆G =
1 H BO ( jω 180 )
pour
∠φ (ω180 ) = −180 o
Phase margin ∆φ = 180 0 − ∠φ (ω cr )
∆φ = min ∆ φ i
pour H BO ( jω cr ) = 1
If there several intersections with the unit circle
i
Delay margin ∆τ =
∆φ ω cr
Several intersections points:
∆τ = min i
∆φ i
ω cr i
Modulus margin ∆M = 1 + H BO ( jω ) min =
−1 S yp (
jω )
min
= S yp ( jω ) max
I.D. Landau A course on robust discrete time control, part1
−1
33
Robustness margins – typical values Gain margin : ∆G ≥ 2 (6 dB) [min : 1,6 (4 dB)] Phase margin : 30° ≤ ∆φ ≤ 60° Delay margin : fraction of system delay (10%) or of time response (10%) (often 1.TS) Modulus margin : ∆ M ≥ 0.5 (- 6 dB) [min : 0,4 (-8 dB)] A modulus margin ∆ M ≥ 0.5 implies ∆G ≥ 2 et ∆φ > 29° Attention ! The converse is not generally true The modulus margin defines also the tolerance with respect to nonlinearities I.D. Landau A course on robust discrete time control, part1
34
Robustness margins
Good gain and phase margin Bad modulus margin
Good gain and phase margin Bad delay margin
I.D. Landau A course on robust discrete time control, part1
35
Modulus margin and sensitivity function
∆M = 1 + H OL ( z ) min = S yp ( z ) min = ( S yp ( z ) max ) = −1
−1
−1
−1
A( z ) S ( z ) −1 −1 −1 −1 A( z ) S ( z ) + B( z ) R( z ) max −1
−1
S yp (e − jω ) dB
max
−1
−1
pour z −1 = e − j 2πf
dB = ∆M −1dB = − ∆M dB
-1
S yp S yp
= - ∆M
max
0
ω -1
S yp
S yp
= - S yp
min
= ∆M
max
I.D. Landau A course on robust discrete time control, part1
36
Robust stability To assure stability in the presence of uncertainties (or variations) on the dynamic chatacteristics of the plant model HOL – nominal F.T.; H’OL –Different from HOL (perturbed) Robust stability condition (sufficient cond.):
H OL′ ( z −1 ) − H OL ( z −1 ) < 1 + H OL ( z −1 ) = S yp−1 ( z −1 ) = A( z −1 ) S ( z −1 ) + B ( z −1 ) R( z −1 ) P( z −1 ) = ; z −1 = e − jω −1 −1 −1 −1 A( z ) S ( z ) A( z ) S ( z ) dB
Im H -1 1 + H OL ' H OL
(*)
-1
S yp S yp
Re H
= - ∆M
max
0
ω
HOL
-1
S yp
S yp
= - S yp
min
= ∆M
max
Size of the tolerated uncertainity on HOL at each frequency (radius) I.D. Landau A course on robust discrete time control, part1
37
Tolerance to plant additive uncertainty From previous slide :
B ′( z −1 ) R ( z −1 ) B ( z −1 ) R ( z −1 ) R ( z −1 ) − = ⋅ −1 −1 −1 −1 −1 ′ A ( z ) S ( z ) A( z ) S ( z ) S ( z )
H’OL
B′( z −1 ) B ( z −1 ) A( z −1 ) S ( z −1 ) + B ( z −1 ) R ( z −1 ) − < −1 −1 ′ A ( z ) A( z ) A( z −1 )S ( z −1 )
H’
HOL
H
B ′( z −1 ) B ( z −1 ) A( z −1 ) S ( z −1 ) + B ( z −1 ) R ( z −1 ) P ( z −1 ) − < = = S up−1 ( z −1 ) −1 −1 −1 −1 −1 −1 A′( z ) A( z ) A( z ) R ( z ) A( z ) R ( z )
H’
H
S
up
(*)
(**)
dB Limitation of the actuator stress
0 0.5f
e
S up -1 (Size of tolerated uncertainties) I.D. Landau A course on robust discrete time control, part1
38
Tolerance to plant normalized uncertainty (multiplicative uncertainty) From (**), previous slide:
B′( z −1 ) B ( z −1 ) − A′( z −1 ) A( z −1 ) A( z −1 ) S ( z −1 ) + B ( z −1 ) R ( z −1 ) P ( z −1 ) < = = S yb−1 ( z −1 ) −1 −1 −1 −1 −1 B( z ) B( z ) R( z ) B( z ) R( z ) A( z −1 )
The inverse of the modulus of the “complementary sensitivity function” gives at each frequency the tolerance with respect to “normalized (multiplicative) uncertainty” Relation between additive and multiplicative uncertainty:
H '−H H ' = H + ( H '−H ) = H (1 + ) H I.D. Landau A course on robust discrete time control, part1
39
Passivity (Hyperstability) Theorem u1
H1
y1
strictly positive real
-
H2 y2
passive
u2
H1: Strictly positive real transfer function (state x ) H2: linear or nonlinear, time invariant or time-varying
η 2 (0, t1 ) ≥ t∑= 0 y 2T (t )u2 (t ) ≥ −γ 2 ; γ 22 < ∞ ; ∇t1 ≥ 0 t1
2
Then :
lim x(t ) = 0 ; lim u1 (t ) = 0 ; lim y1 (t ) = 0 t →∞ t →∞ t →∞ I.D. Landau A course on robust discrete time control, part1
40
Strictly positive real transfer function (SPR) Frequency domain continuous jω
s
Im H
s =j ω
H(j ω) Re H
σ
discrete Im H
Im z
+j
z
jω
z =e 1
-1
Re H < 0 Re H > 0
j
-
Re H
Re z jω
z =e
jω
H(e )
Re H < 0 Re H > 0
- asimptotycally stable
- Re H (e ) > 0 for all e = 1, (0 < ω < π ) jω
jω
(discrete time case)
Input – output property (time domain)
η1 (0, t1 ) ≥ t∑=0 y1 (t )u1 (t ) ≥ −γ + κ u1 t1
T
2
2
1
2T
; γ 12 < ∞ ; κ > 0 ; ∇t1 ≥ 0
I.D. Landau A course on robust discrete time control, part1
41
Stability criteria for nonlinear time/varying feedback system Im H (e-j ω )
y2 ku2
- k1
Re H (e -j ω )
-1
u2 H (e -j ω )
Im H (e -j ω )
critical circle
u2
β u α u
y2
1 -α
-1
Re H ( z ) > −1 / k ; ∀ z = 1
-1 β
H (e -j ω )
I.D. Landau A course on robust discrete time control, part1
Re H (e -j ω )
Circle criterion 42
Stability in the presence of nonlinearities (tolerance of nonlinearities) Im H ( e -j ω )
critical circle
u
βu αu
H
BO
(z
-1
)
- 1 α
-
-1
-1 β
Re H ( e -j ω )
∆M
H ( e -j ω )
The modulus margin defines the tolerance with respect to nonlinear and/or time varying elements. The tolerance sector is defined by : Min gain: 1 /(1 + ∆M ) Max gain: 1 /(1 − ∆M ) I.D. Landau A course on robust discrete time control, part1
43
The circle criterion : a particular case KM=1 -1
1
Km=-1 H(z) should lie inside the unit circle
The modulus of the H(z) should be smaller than 1 at all frequencies i.e.:
H ( z) ∞ < 1
This is the “small gain theorem” I.D. Landau A course on robust discrete time control, part1
44
Small gain theorem u1
-
S1 ∞ < 1
S2 y2
y1
S1
S2
∞
≤1
u2
S1: linear time invariant (state x)
S1 ∞ < 1 S2:
S2
∞
≤1
Then:
lim x(t ) = 0 ; lim u1 (t ) = 0 ; lim y1 (t ) = 0 t →∞ t →∞ t →∞ It will be used to characterize “robust stability” I.D. Landau A course on robust discrete time control, part1
45
Relationship between passivity theorem and small gain theorem
H −1 S∞= ≤1 H +1 ∞ If S ∞ ≤ 1 ⇒ H = 1 + S is passive 1− S H −1