Lect 04 Hand Out
-
Upload
gholamreza-ilkhani -
Category
Documents
-
view
2 -
download
0
description
Transcript of Lect 04 Hand Out
-
Control Theory (035188)lecture no. 4
Leonid Mirkin
Faculty of Mechanical EngineeringTechnion IIT
Outline
Pole-zero cancellations
Modeling uncertainty
Robust stability
Strong stabilization
Anti-windup control
-
Naive shaping of T .j!/
Assume that the ideal closed-loop t.f. is Tref.s/. We may want to askI whether there is C.s/ for which T .s/ D Tref.s/ ?
The answer is easy:
Tref.s/ D L.s/1C L.s/ L.s/ D
Tref.s/
1 Tref.s/ :
Thus, controller
Cref.s/ D 1P.s/
Tref.s/
1 Tref.s/is exactly what were looking for.
Whats behind Cref.s/
Let s0 be pole of P.s/ and let Tref.s0/ 1. Then s0 is zero of Cref.s/, i.e.,I Cref.s/ tends to cancel poles of P.s/.
Let s1 be zero of P.s/ which is not zero of Tref.s/. Then s1 is pole of Cref.s/,i.e.,I Cref.s/ tends to cancel zeros of P.s/.
Thus, to achieve arbitrary Tref.s/I controller should, in general, cancel all poles and zeros of the plant.
-
Pole-zero cancellations: whats legal
Obviously,I only stable pole-zero cancellations are legal.
This implies thatI every RHP zero of P.s/ is also RHP zero of T .s/ (multiplicity included);I at every unstable pole sp of P.s/ the equality
T .sp/ D 1
must hold1 (multiple poles impose additional conditions on di
dsiT .s/).
1This condition also imposes lower bound constraints on !c for unstable systems.
Pole-zero cancellations: what makes sense
Although stable pole-zero cancellations are legal,I not all stable pole-zero cancellations are welcome.
The reason is that, although canceled poles and zeros dont show up in S.s/and T .s/ (as these t.f. depend only on L.s/),I canceled poles and zeros do show up as poles of Td.s/ and Tc.s/,
respectively.
-
Canceled plant poles
Let sp (Re sp < 0) be pole of P.s/ canceled by C.s/. In other words, let
P.s/ D 1sspP1.s/ and C.s/ D .s sp/C1.s/
for some P1.s/ such that P1.sp/ 0 and C1.s/ such that jC1.sp/j
-
What does it mean?
Thus, for each canceled pole sp and zero sz we have:
Td.s/ D 1s sp
P1.s/
1C P1.s/C1.s/ and Tc.s/ D1
s szC2.s/
1C P2.s/C2.s/Typically,I If s is fast, its presence in Td.s/ or Tc.s/ can in general be ignored.I If s is slow, it slows down disturbance response / control input decay.I If s is oscillatory, oscillations show up in d 7! y or r 7! u.
Stable pole-zero cancellations: general conclusions
The following are general rules of thumb:I Fast well-damped poles/zeros can typially be safely canceled.
(though sometimes this can produce spikes)
I Slow well-damped poles/zeros can be canceled with certain care.(there are pros and cons in canceling slow plant poles vs. shifting them by feedback)
I Lightly-damped poles/zeros shall not be canceled (unless you reeeallyknow what youre doing).
-
Outline
Pole-zero cancellations
Modeling uncertainty
Robust stability
Strong stabilization
Anti-windup control
Nobodys perfect
In other words,I any mathematical model is just a (more or less accurate) approximation
of the real world.
-
Robustness
Ability of control system to cope with modeling uncertainty (i.e. to preservestability/performance despite uncertainty) called robustness.
Modeling uncertainty (errors, mismatches) caused byI linearizationI unmodeled high-frequency dynamicsI parametric driftsI element failuresI . . .
Modeling uncertainty: DC motor
DC motor t.f. from input voltage to shaft angle is
P.s/ D Kms..Ls CR/.Js C f /CK2m/
; (1)
where Km is motor constant (= back emf constant), R is armature resistance,L is armature inductance, J is load inertia, and f is load friction.
Typically, L is very small so it is neglected and the motor t.f. becomes
P.s/ D Kms.R.Js C f /CK2m/
;
which is approximation of (1) (which is approximation by itself).
Moreover, load inertia J might get changed and resistance R is sensitive tothermal conditions (motor heating) and thus also might get changed.
-
Modeling uncertainty: DC motor (contd)
What we have is this (assuming 0:9R0 R 1:8R0 and 0:7J0 J 1:3J0):Nichols Chart
OpenLoop Phase (deg)
Ope
nLo
op G
ain
(dB)
225 180 135 90120
100
80
60
40
20
0
20
40
6 dB 3 dB
1 dB 0.5 dB
0.25 dB 0 dB
nominal plantactual plants
Modeling uncertainty: DC motor (contd)
If additional unmodeled delay2 h D 1400
is added, we have:
Nichols Chart
OpenLoop Phase (deg)
Ope
nLo
op G
ain
(dB)
225 180 135 90120
100
80
60
40
20
0
20
40
6 dB 3 dB
1 dB 0.5 dB
0.25 dB 0 dB
nominal plantactual plants
2Due to digital implementation, for example.
-
Modeling uncertainty: DC motor (contd)
Thus, at each frequency, frequency response is a region rather than point:
Nichols Chart
OpenLoop Phase (deg)
Ope
nLo
op G
ain
(dB)
225 180 135 90120
100
80
60
40
20
0
20
40
6 dB 3 dB
1 dB 0.5 dB
0.25 dB 0 dB
=0.1
=1
=10
=100
Frequency-domain modeling
Thus, it makes sense to describe plant frequency response P.j!/ at eachfrequency not as a complex number, but rather as set of its possible values:
P.j!/ 2 P!where P! C is some set for each ! 2 R.
The choice of P! is conceptually nontrivial asI precise P! are complicated and hard to deal with in control design,I easily handleable P! are typically conservative.
In this course, weI sacrifice precision for simplicity.
-
Multiplicative unstructured uncertainty
The idea is to describe P! as disks in Nyquist plane around nominal plant:
Im
Re
P0.j!/
jP0.j!/j`.!
/
1
In other words, P! DnP.j!/ W P. j!/
P0. j!/ 1 `.!/o, where
I P0 is nominal plant and `.!/ 0 is multiplicative uncertainty radius.
Multiplicative uncertainty and controller
C.s/P.s/reu
d
y
ymn
Let P.j!/ 2 P! , where
P! DP.j!/ W
P.j!/
P0.j!/ 1
`.!/
:
Then L.j!/ D P.j!/C.j!/ 2 L! , where
L! DL.j!/ W
L.j!/
L0.j!/ 1
`.!/
; L0.j!/ P0.j!/C.j!/:
Thus,I loop multiplicative uncertainty radius does not depend on controller.
-
Modeling uncertainty: DC motor (contd)
To find `.!/, the following steps can be followed:
1. plotP. j!/P0. j!/
1 for different R 2 0:9R0; 1:8R0 and J 2 0:7J0; 1:3J0;2. find maximum for every frequency, this is `.!/.
We get:
102 101 100 101 102 1030
0.5
1
1.5
2
2.5
Frequency (rad/sec)
Magni
tude
`.!/
Outline
Pole-zero cancellations
Modeling uncertainty
Robust stability
Strong stabilization
Anti-windup control
-
Robust stability
C.s/P.s/reu
d
y
ymn
Let P.s/ be such that P.j!/ 2 P! . Then we say thatI closed-loop system is robustly stable if it is stable for every P 2 P! .
If system is robustly stable, we say that C.s/ robustly stabilizes this system.
Robust stability for multiplicative plant uncertainty
C.s/P.s/reu
d
y
ymn
TheoremLet uncertainty be described as
P! DP.j!/ W
P.j!/
P0.j!/ 1
`.!/
and all P.s/ in this class share the same unstable poles. Then a controllerC.s/ robustly stabilizes the system iff
1. C.s/ stabilizes nominal plant P0.s/ and
2. jT0.j!/j < 1`.!/ , for all !.3
3Here T0.s/ D L0.s/1CL0.s/ is nominal complementary sensitivity transfer function.
-
Robust stability for multiplicative plant uncertainty: proof
When nominal system stable, we only need toI ensure that the critical point does not belong to L! for all !.
The result then follows by straightforward geometry:
Im
Re
L0.j!/
jL0.j!/j`.!
/
j1CL0 .j!/j
1
Robust stability of DC motor control system
Assume, that we use the following lead controller:
C.s/ D !cKm
q.R0J0/2!2c C .R0f CK2m/2
p s C !c
s Cp !c ;
whose purpose is to achieve nominal crossover !c R0fCK2mR0J0 (which is theinverse of the open-loop time constant) and phase margin of 50 (to thisend one can choose D 8).
The following nominal parameters were chosen: Km 30:2 103R0 0:316
L 0:08 103J0 0:1
f 0:05
h 0:0025
-
Robust stability of DC motor control system (contd)
If !c D 15 rad/sec:
Frequency (rad/sec)
Mag
nitu
de (d
B)
102 101 100 101 102 10320
15
10
5
0
5
10
1=`.!/
jT0.j!/j
and system is robustly stable.
Robust stability of DC motor control system (contd)
If !c D 150 rad/sec:
Frequency (rad/sec)
Mag
nitu
de (d
B)
102 101 100 101 102 10320
15
10
5
0
5
10
1=`.!/
jT0.j!/j
and system is still robustly stable.
-
Robust stability of DC motor control system (contd)
If !c D 200 rad/sec:
Frequency (rad/sec)
Mag
nitu
de (d
B)
102 101 100 101 102 10320
15
10
5
0
5
10
1=`.!/
jT0.j!/j
and system is no longer robustly stable.
Bandwidth limitations due to robust stability
Since `.!/ is typically larger at high frequencies, condition
jT0.j!/j < 1`.!/
imposes limitations on the achievable closed-loop bandwidth4 !b.
4And, consequently, on the loop crossover frequency !c.
-
Outline
Pole-zero cancellations
Modeling uncertainty
Robust stability
Strong stabilization
Anti-windup control
Stabilization with stable controllers
C.s/P.s/reu
d
y
ymn
Stable controllers, especially for stable plants, are preferable since we wantto maintain stability duringI sensor / actuator failures.
We say thatI P is strongly stabilizable if it can be stabilized by a stable controller.
-
Parity interlacing property
C.s/P.s/reu
d
y
ymn
P.s/ is strongly stabilizable iff it hasI even number of real poles between every pair of real zeros in RHP
(including C1). This property called the parity interlacing property.
Example 1: Let P.s/ D s1s.s2/ . It has 2 RHP zeros at f1;1g and between
them one pole at 2. Hence it is not strongly stabilizable.
Example 2: Let P.s/ D .s1/2.s2sC1/.s2/2.sC1/3 . It has 5 RHP zeros, 3 of them real atf1; 1;1g. Between 1 and 1 lies 0 poles, while between 1 and1 lie 2 poles
(at 2). Hence this plant is strongly stabilizable.
Inverted pendulum without angle measurement
# Ml lq
em
-y
-u
M : mass of the cartm : mass of the penduluml : length of the pendulumy : position of the cart : angular rotationu : force on the cartg : acceleration of gravity
Linearized transfer function of inverted pendulum from u to y is
P.s/ D ls2 g
Mls2 g.1C m
M/s2:
It has 3 real RHP zeros: fq
gl;1;1g. Between the first two of them P.s/
has one pole, atq
gl.1C m
M/. Thus, pendulum not strongly stabilizable.
-
Outline
Pole-zero cancellations
Modeling uncertainty
Robust stability
Strong stabilization
Anti-windup control
Why unstable controllers?
Although wed prefer to avoid unstable controllers, they still widely used.Reasons:I some plants not strongly stabilizable,I controllers with j!-axis poles may be required
(i.e., integral action required to zero steady-state error to step reference/disturbance)
-
Saturation
The saturation element sata;b defined for a < b as
sata;b.u.t// D
a if u.t/ < a
u.t/ if a u.t/ bb if u.t/ > b
We also denote sata sata;a, with a > 0.
Example:
1
0
1
1:2
sin.
t/
t
sat1!1
0
1
sat 1.1
:2sin.
t//
t
Saturation element is nonlinear system (no superposition). Indeed,
sat1.2 0:6 sin t / 2 sat1.0:6 sin t / D 1:2 sin t:
Saturation in feedback loop
C.s/P.s/reu
d
y
ymn
All actuators saturate. Indeed,
I force, torque,I voltage, current,I flow rate,I . . .
are ultimately limited. We therefore mustI respect the presence of (nonlinear) saturation element
in any feedback loop.
-
Saturation in feedback loop (contd)
C.s/P.s/reu
d
y
ymn
I if u does not saturate, it behaves as standard linear closed-loop system:
C.s/P.s/reu
d
y
ymn
I if u saturates, it behaves as open-loop system:
C.s/aP.s/ reud
y
ymn
Saturation in feedback loop (contd)
C.s/aP.s/ reud
y
ymn
This doesnt look good in general, yet it isI especially problematic when either P.s/ or C.s/ is unstable.
What can be done:I When plant unstable, there is nothing we can do (but to pray:-).I Controllers are in our power, so
1. if possible, it is advisable to avoid the use of unstable controllers;2. if not5, controller should be modified when control signal saturates.
5E.g., plant not strongly stabilizable, integral action required, etc
-
PI controllers and saturation
PI controller transforms tracking error e to control signal u according to
U.s/ D kp1C ki
s
E.s/ or6
(Px.t/ D e.t/u.t/ D kp
kix.t/C e.t/
While u.t/ saturates,I state x.t/ might accumulate big value,
so thatI u.t/ remains saturated even when e.t/ becomes small.
6This is the way in which controller is implemented.
PI controllers and saturation: example
Consider control system with P.s/ D 1s
and C.s/ D 2 sC1s
. We have:
0 5 10 15 20 25 301
0
1
2
3
4
5
6
Command response without saturation
y.t/
u.t/
0 5 10 15 20 25 301
0
1
2
3
4
5
6
Command response with saturation
y.t/
u.t/
-
PI controllers and saturation: example (contd)
The reason becomes apparent when state variable of controller is depicted:
0 5 10 15 20 25 304
2
0
2
4
6
8
Command response with saturation
y.t/
u.t/
x.t/
Indeed, state variable becomes very large by the time error reaches 0, henceI y.t/ continues to grow until x.t/ falls down
to a level, compatible with error itself.
Integrator windup
The effect ofI significant grow of the integrator state during actuator saturation
is called the integrator windup.
Arguably, most remedies for windup effect are based onI preventing integrator state from unstable updating as u saturates.
Possible approaches (sometimes equivalent):I stop updating integrator when u saturates (conditional integration);I implement integral action as interconnection of stable elements, with
some of interconnections opened when u saturates;I add internal controller feedback acting on u sata.u/.
-
Anti-windup scheme with internal feedback
kp
kis
P.s/
1
Tt
reu
d
y
ymn
This scheme works as follows:
I when u doesnt saturate, sata.u/ u D 0 and it works as standard PI;I when u saturates, controller becomes stable:
U.s/ D kp.s C ki/s C kpki=Tt E.s/
kpki=Tt
s C kpki=Tt a:
Tt is called tracking time constant.
PI controllers and saturation: example (contd)
Internal feedback really helps (here Tt D 1):
0 5 10 15 20 25 304
2
0
2
4
6
8
Command response with saturation
y.t/
u.t/
x.t/
0 5 10 15 20 25 304
2
0
2
4
6
8
Command response with anti-windup mechanism
y.t/
u.t/
x.t/
Pole-zero cancellationsModeling uncertaintyRobust stabilityStrong stabilizationAnti-windup control