You are on page 1of 71

EE 3CL4, §3

1 / 78
Tim Davidson

Transfer
functions

Open loop
Stability &
Performance
EE3CL4:
Closed loop
Stability &
Introduction to Linear Control Systems
Performance

Open loop vs
Section 3: Fundamentals of Feedback
closed loop

Step resp.:
2nd-order
G(s) Tim Davidson
A taste of
pole-placement
design
Extensions
McMaster University
Steady-state
error
Winter 2018
Summary and
plan
EE 3CL4, §3
2 / 78
Tim Davidson Outline
Transfer
functions 1 Transfer Function (review)
Open loop
Stability &
Performance
2 Open loop control
Closed loop Stability & Performance
Stability &
Performance

Open loop vs
3 Closed loop control
closed loop
Stability & Performance
Step resp.:
2nd-order
G(s) 4 Open loop control vs closed loop control
A taste of
pole-placement
design
Extensions
5 Step resp.: 2nd-order G(s)
Steady-state A taste of pole-placement design
error
Extensions
Summary and
plan
6 Steady-state error

7 Summary and plan


EE 3CL4, §3
4 / 78
Tim Davidson Transfer function
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop
• Y (s) = G(s)U(s)
Step resp.:
2nd-order
G(s) • Stability (more details later):
A taste of
pole-placement
design
Extensions
the output y (t) is bounded for all bounded inputs u(t)
Steady-state
error if and only if
Summary and the poles of G(s) are in the open left half plane
plan

• Note that in this setting u(t) is an arbitrary input, not


necessarily the unit step function
EE 3CL4, §3
6 / 78
Tim Davidson Open loop control
Transfer
Somewhat of an oxymoron, but this is conventional terminology
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.: • Denote input to process by U(s)


2nd-order
G(s)
A taste of
pole-placement • Y (s) = G(s)U(s) = G(s)Gc (s)R(s)
design
Extensions
nG (s) nC (s)
Steady-state • If G(s) = dG (s) and Gc (s) = dC (s) ,
error

Summary and Y (s) nC (s)nG (s)


plan = Gc (s)G(s) =
R(s) dC (s)dG (s)

• Key quantity, error: E(s) = R(s) − Y (s)


EE 3CL4, §3
7 / 78
Tim Davidson Stability & Performance
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance
 
Open loop vs
closed loop
• E(s) = 1 − Gc (s)G(s) R(s) − G(s)Td (s)
Step resp.:
2nd-order 1
• For good tracking want Gc (s) ≈ G(s)
G(s)
A taste of
pole-placement

• One design strategy: with G(s) = ndG (s) , Gc (s) = ndC (s)
design
Extensions
G (s) C (s)
Steady-state
error • Put poles of Gc (s) near zeros of G(s), and
Summary and put zeros of Gc (s) near poles of G(s)
plan • Known as “pole-zero cancellation”
• That strategy very sensitive to knowledge of G(s)
• Problematic if G(s) has zeros in the right half plane
EE 3CL4, §3
8 / 78
Tim Davidson Stability & Performance
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &  
Performance
• E(s) = 1 − Gc (s)G(s) R(s) − G(s)Td (s)
Open loop vs
closed loop

Step resp.:
2nd-order
• Controller cannot mitigate effect of Td (s)
G(s)
A taste of
• No capability for disturbance rejection
pole-placement
design
Extensions
• If G(s) and Gc (s) are stable, so is the “open loop”.
Steady-state
error What if G(s) is not stable?
Summary and Y (s)
plan • In theory, controller can stabilize by pole-zero
R(s)
cancellation
• but difficult to implement to sufficient accuracy
• cannot stabilize TY (s)
d (s)
EE 3CL4, §3
9 / 78
Tim Davidson Stability & Performance
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
• In practice, we rarely model G(s) accurately, and it may
Performance
change with age, temperature and many other effects
Open loop vs
closed loop
• What if G(s) not perfectly known?
Step resp.:
Y (s)
2nd-order • Let T (s) = R(s) (when Td (s) = 0)
G(s)
A taste of
pole-placement
• Let actual process transfer function be G(s) + ∆G(s)
design
Extensions • What is the ratio of relative error in T (s) due to relative
Steady-state error in G(s) for small errors?
error
∆T (s)/T (s)
Summary and • That is, what is lim∆G(s)→0 ∆G(s)/G(s)
plan
• Can show (prove for yourself) that this “sensitivity” = 1
• That means that for small errors the relative error in
T (s) is the same as the relative error in G(s);
we can’t design Gc (s) to make it smaller
EE 3CL4, §3
11 / 78
Tim Davidson Closed loop control
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state • Error: E(s) = R(s) − Y (s)


error
 
Summary and
plan • Measured error: Ea (s) = R(s) − H(s) Y (s) + N(s) .

• In the general case, Ea (s) 6= E(s).

• When H(s) = 1 and N(s) = 0, Ea (s) = E(s).


EE 3CL4, §3
12 / 78
Tim Davidson The output signal
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
What is the output Y (s)? (Calculate yourself for practice)
pole-placement
design
Extensions
Gc (s)G(s)
Steady-state Y (s) = R(s)
error 1 + H(s)Gc (s)G(s)
Summary and
plan
G(s)
+ Td (s)
1 + H(s)Gc (s)G(s)
H(s)Gc (s)G(s)
− N(s)
1 + H(s)Gc (s)G(s)
EE 3CL4, §3
13 / 78
Tim Davidson The error signal, H(s) = 1
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop What is the error E(s) = R(s) − Y (s)?
Step resp.:
2nd-order To simplify things, consider the case where H(s) = 1
G(s)
A taste of
pole-placement
design
1
Extensions
E(s) = R(s)
Steady-state 1 + Gc (s)G(s)
error
G(s)
Summary and − Td (s)
plan 1 + Gc (s)G(s)
Gc (s)G(s)
+ N(s)
1 + Gc (s)G(s)

Recall, Ea (s) = E(s) only if H(s) = 1 and N(s) = 0.


EE 3CL4, §3
14 / 78
Tim Davidson Loop gain, H(s) = 1
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Define loop gain: L(s) = Gc (s)G(s)
Extensions

Steady-state
error
1 G(s) L(s)
Summary and E(s) = R(s) − Td (s) + N(s)
plan 1 + L(s) 1 + L(s) 1 + L(s)

What do we want?
EE 3CL4, §3
15 / 78
Tim Davidson Stability, H(s) = 1
Transfer
functions 1 G(s) L(s)
E(s) = R(s) − Td (s) + N(s)
Open loop 1 + L(s) 1 + L(s) 1 + L(s)
Stability &
Performance

Closed loop
Stability &
Performance • Stability: bounded inputs lead to bounded errors
Open loop vs
closed loop • For simplicity, let Td (s) = 0, N(s) = 0
Step resp.:
2nd-order nG (s) nC (s) nC (s) nG (s)
G(s) • G(s) = dG (s) ; Gc (s) = dC (s) ; L(s) = dC (s) dG (s)
A taste of
pole-placement
design • Hence,
Extensions
1 dC (s)dG (s)
Steady-state =
error 1 + L(s) dC (s)dG (s) + nC (s)nG (s)
Summary and
plan
• =⇒ closed loop poles are roots of dC (s)dG (s) + nC (s)nG (s)
• These can be in left half plane even if G(s) is unstable,
but they can also be in the right half plane if G(s) is stable
EE 3CL4, §3
16 / 78
Tim Davidson Performance: s-domain,
Transfer H(s) = 1
functions

Open loop
Stability &
Performance

Closed loop
1 G(s) L(s)
E(s) = R(s) − Td (s) + N(s)
Stability &
Performance 1 + L(s) 1 + L(s) 1 + L(s)
Open loop vs
closed loop

Step resp.: What else do we want, in addition to stability?


2nd-order
G(s) • Good tracking: E(s) depends only weakly on R(s)
A taste of
pole-placement
design
=⇒ L(s) large where R(s) large
Extensions

Steady-state
error • Good disturbance rejection:
Summary and
plan
=⇒ L(s) large where Td (s) large

• Good noise suppression:


=⇒ L(s) small where N(s) large
EE 3CL4, §3
17 / 78
Tim Davidson A taste of loop shaping,
Transfer H(s) = 1
functions
Possibly easier to understand in pure freq. domain, s = jω
Open loop
Stability &
Performance
Recall that L(s) = Gc (s)G(s),
Closed loop G(s): fixed; Gc (s): controller to be designed
Stability &
Performance

Open loop vs • Good tracking: =⇒ L(s) large where R(s) large


closed loop
|L(jω)| large in the important frequency bands of r (t)
Step resp.:
2nd-order
G(s)
A taste of
pole-placement
• Good dist. rejection: =⇒ L(s) large where Td (s) large
design
Extensions
|L(jω)| large in the important frequency bands of td (t)
Steady-state
error
• Good noise suppr.: =⇒ L(s) small where N(s) large
Summary and
plan |L(jω)| small in the important frequency bands of n(t)

Typically, L(jω) is a low-pass function. How big should |L(jω)| be?


Any constraints? Stability! Any others?
EE 3CL4, §3
18 / 78
Tim Davidson Inherent constraints, H(s) = 1
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.: 1
2nd-order Define sensitivity: S(s) =
G(s) 1 + L(s)
A taste of
pole-placement
design
L(s)
Extensions Define complementary sensitivity: C(s) =
1 + L(s)
Steady-state
error

Summary and E(s) = S(s)R(s) − S(s)G(s)Td (s) + C(s)N(s)


plan

Note that S(s) + C(s) = 1.


Trading S(s) against C(s), with stability,
is a key part of the art of control design
EE 3CL4, §3
19 / 78
Tim Davidson Performance: time-domain
Transfer
functions
• Difficult for arbitrary inputs
Open loop
Stability &
Performance
• In classical control techniques, typically assessed via
Closed loop
Stability &
Performance • nature of transient component of step response
Open loop vs • how fast does system respond?
closed loop
• how long does it take to settle to new operating point
Step resp.:
2nd-order • steady-state error for constant changes in position, or
G(s)
A taste of velocity or acceleration; that is steady-state error for
pole-placement
design
• step input; ramp input, parabolic input
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
20 / 78
Tim Davidson Trade-off example
Transfer
Disk drive system
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
5000Ka
Extensions
Y (s) = R(s)
Steady-state s3 + 1020s2
+ 20000s + 5000Ka
error
s + 1000
Summary and + 3 2
Td (s)
plan s + 1020s + 20000s + 5000Ka

Coarsely design Ka to balance properties of step response


and response to step disturbance
EE 3CL4, §3
21 / 78
Tim Davidson Responses for Ka = 10
Transfer
functions
Disturbance step response and step response
Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
Low gain:
plan
• steady-state disturbance might not be negligible
• slow transient response for step input
EE 3CL4, §3
22 / 78
Tim Davidson Responses for Ka = 10, 100
Transfer
functions Disturbance step response and step response
Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error
Medium gain:
Summary and
plan • steady-state disturbance much reduced
• faster transient response for step input,
but now some overshoot
EE 3CL4, §3
23 / 78
Tim Davidson Responses for
Transfer Ka = 10, 100, 1000
functions
Disturbance step response and step response
Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error High gain:
Summary and • steady-state disturbance almost completely rejected
plan
• fast transient response for step input,
but now significant overshoot
• Actually can show by Routh Hurwitz technique (later)
that loop is unstable for Ka ≥ 4080
EE 3CL4, §3
24 / 78
Tim Davidson Robustness
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
• What if G(s) is not perfectly known?
2nd-order
Y (s)
G(s) • How does T (s) = R(s) change as G(s) changes?
A taste of
pole-placement
design
Extensions
• As in open loop case, look at ratio of relative error in T (s)
Steady-state due to a relative error in G(s), for small errors,
error ∆T (s)/T (s)
lim∆G(s)→0 ∆G(s)/G(s)
Summary and
plan
• For an open loop system this sensitivity is 1
• For the closed loop system, with H(s) = 1,
1
this sensitivity is S(s) = 1+Gc (s)G(s)
• Now can design controller to manage sensitivity
EE 3CL4, §3
26 / 78
Tim Davidson Open loop vs closed loop
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop
Error: E(s) = R(s) − Y (s); Loop gain: L(s) = Gc (s)G(s),
Step resp.:
2nd-order
G(s)
A taste of
Open loop, with process input Gc (s)R(s) + Td (s)
pole-placement
design  
Extensions

Steady-state
Eol (s) = 1 − L(s) R(s) − G(s)Td (s)
error

Summary and
plan
Closed loop, with H(s) = 1,
1 G(s) L(s)
Ecl (s) = R(s) − Td (s) + N(s)
1 + L(s) 1 + L(s) 1 + L(s)
EE 3CL4, §3
27 / 78
Tim Davidson Advantages of feedback
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design • Can mitigate disturbances
Extensions

Steady-state
error • Can stabilize (most) unstable processes
Summary and
plan • Can mitigate errors in the model of process
EE 3CL4, §3
28 / 78
Tim Davidson Price of feedback
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order • more components than open loop
G(s)
A taste of
pole-placement
design • introduces noise, but can “shape” the response
Extensions

Steady-state Gc (s)G(s)
error • less gain: 1+G instead of Gc (s)G(s)
c (s)G(s)
Summary and
plan • potential for instability even when G(s) is stable

More complicated to analyze and design,


but often advantages are worth the price
EE 3CL4, §3
30 / 78
Tim Davidson A second-order system
Transfer
Now examine, in detail, a particular class of second order
functions systems
Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan

G(s) ωn2
Y (s) = R(s) = 2 R(s)
1 + G(s) s + 2ζωn s + ωn2
EE 3CL4, §3
31 / 78
Tim Davidson Step response
Transfer • What is the step response?
functions
• Set R(s) = 1/s; take inverse Laplace transform of Y (s)
Open loop
Stability &
ωn2
Performance • Y (s) = 
Closed loop
s s2 +2ζωn s+ωn2
Stability &
Performance • For the case of 0 < ζ < 1,
Open loop vs
closed loop
1 −ζωn t
y (t) = 1 − e sin(ωn βt + θ)
Step resp.: β
2nd-order p
G(s) where β = 1 − ζ 2 and θ = cos−1 ζ.
A taste of
pole-placement
G(s)
design • Recall pole positions of 1+G(s) (ignore the zero):
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
32 / 78
Tim Davidson Typical step responses, fixed ωn
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
33 / 78
Tim Davidson Typical step responses, fixed ζ
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
34 / 78
Tim Davidson Key parameters of
Transfer (under-damped) step response
functions
p
Open loop With β = 1 − ζ 2 and θ = cos−1 ζ,
Stability &
Performance
1 −ζωn t
Closed loop y (t) = 1 − e sin(ωn βt + θ)
Stability &
Performance
β
Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
35 / 78
Tim Davidson Peak time and peak value
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
1 −ζωn t
design
Extensions
y (t) = 1 − e sin(ωn βt + θ)
β
Steady-state
error
• Peak time: first time dy (t)/dt = 0
Summary and
plan • Can show that this corresponds to ωn βTp = π
π
• Hence, Tp = p
ωn 1 − ζ 2
√ 
− ζπ/ 1−ζ 2
• Hence, peak value, Mpt = 1 + e
EE 3CL4, §3
36 / 78
Tim Davidson Percentage overshoot
Transfer
functions

Open loop
Stability &
Performance
Let fv denote the final value of the step response.
Closed loop
Stability &
Percentage overshoot defined as:
Performance

Open loop vs Mpt − fv


closed loop P.O. = 100
Step resp.: fv
2nd-order
G(s)
A taste of
pole-placement
design
Extensions
In our example, fv = 1, and hence
Steady-state
error √ 
1−ζ 2
Summary and P.O. = 100 e− ζπ/
plan
EE 3CL4, §3
37 / 78
Tim Davidson Overshoot vs Peak Time
Transfer This is one of the classic trade-offs in control
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
38 / 78
Tim Davidson Steady-state error, ess
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions
In general this is not zero. (See “Steady-state error” section)
Steady-state
error

Summary and
However, for our second-order system,
plan
1 −ζωn t
y (t) = 1 − e sin(ωn βt + θ)
β

Hence ess = 0
EE 3CL4, §3
39 / 78
Tim Davidson Settling time
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
1 −ζωn t
pole-placement
design y (t) = 1 − e sin(ωn βt + θ)
Extensions β
Steady-state
error • How long does it take to get (and stay) within ±x% of
Summary and final value?
plan
• Tricky.
• Instead, approximate by time constants of envelopes:
1 −ζωn t
1± e
β
EE 3CL4, §3
40 / 78
Tim Davidson 5% settling time
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions
• After 3 time consts, env. error reduced by factor 1/e3 ;
Steady-state becomes ≈ 5% of envelope error at t = 0
error
• In figure, ζ = 0.5, ωn = 1, error bounds at ±0.05:
Summary and
plan Time constant, ζω1 n = 2.
After t = 6, envelopes are almost within ±5%
Response is within ±5%
3
• Hence, Ts,5 ≈ ζω
n
; approx. good for ζ . 0.9
EE 3CL4, §3
41 / 78
Tim Davidson 2% settling time
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions
• After 4 time consts, env. error reduced by a factor 1/e4 ;
Steady-state
error becomes ≈ 2% of envelope error at t = 0
Summary and
plan
• In figure, ζ = 0.5, ωn = 1, error bounds at ±0.02:
After t = 8, envelopes are almost within ±2%
Response is also almost within ±2%
4
• Hence, Ts,2 ≈ ζω
n
; approx. good for ζ . 0.9
EE 3CL4, §3
42 / 78
Tim Davidson Rise time (under-damped)
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state 1 −ζωn t
error y (t) = 1 − e sin(ωn βt + θ)
β
Summary and
plan
• How long to get to the target (for first time)?
• Tr , the smallest t such that y (t) = 1
EE 3CL4, §3
43 / 78
Tim Davidson 10%–90% Rise time
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and • What is Tr in over-damped case? ∞


plan
• Hence, typically use Tr 1 , the 10%–90% rise time
EE 3CL4, §3
44 / 78
Tim Davidson 10%–90% Rise time
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan

• Difficult to get an accurate formula


• Linear approx. for 0.3 ≤ ζ ≤ 0.8 (under-damped),
EE 3CL4, §3
45 / 78
Tim Davidson Design problem
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop
For what values of K and p is
Step resp.:
2nd-order • the settling time ≤ 4 secs, and
G(s)
A taste of
pole-placement
• the percentage overshoot ≤ 4.3%?
design
Extensions

Steady-state
error

Summary and G(s) K ωn2


plan T (s) = = 2 = 2 ,
1 + G(s) s + ps + K s + 2ζωn s + ωn2
√ √
where ωn = K and ζ = p/(2 K )
EE 3CL4, §3
46 / 78
Tim Davidson Pole positions
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability & √
4
Performance

1−ζ 2
Open loop vs
Ts ≈ P.O. = 100 e− ζπ/
closed loop ζωn
Step resp.:
2nd-order
G(s)
A taste of • For Ts ≤ 4, ζωn ≥ 1
pole-placement
design

Extensions • For P.O. ≤ 4.3%, ζ ≥ 1/ 2
Steady-state
error
Where should we put the poles of T (s)?
Summary and
plan
EE 3CL4, §3
47 / 78
Tim Davidson Pole positions
Transfer
functions

ζωn ≥ 1 ζ ≥ 1/ 2
Open loop
Stability &
Performance p
Closed loop s1 , s2 = −ζωn ± jωn 1 − ζ 2 = −ωn cos(θ) ± jωn sin(θ)
Stability &
Performance

Open loop vs
where θ = cos−1 (ζ).
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
48 / 78
Tim Davidson Final design constraints
Transfer
functions √
Open loop
ζωn ≥ 1 ζ ≥ 1/ 2
Stability &
Performance

Closed loop
Stability & √
Performance
p≥2 p≥ 2K
Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
49 / 78
Tim Davidson Caveat
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance • Our work on transient response has been for systems
Open loop vs
closed loop
with
ωn2
Step resp.: T (s) =
2nd-order
G(s)
s2 + 2ζωn s + ωn2
A taste of
pole-placement
design
Extensions • What about other systems?
Steady-state
error

Summary and
plan
EE 3CL4, §3
50 / 78
Tim Davidson Poles, zeros and transient
Transfer response
functions

Open loop
Stability &
Performance
• Consider a general transfer function T (s) = Y (s)
R(s)
Closed loop
Stability &
• Step response: Y (s) = T (s) 1s
Performance

Open loop vs
• Consider case with DC gain = 1; no repeated poles
closed loop
• Partial fraction expansion
Step resp.:
2nd-order
G(s) 1 X Ai X Bk s + Ck
A taste of Y (s) = + +
pole-placement
design s s + σi
i
s + 2αk s + (αk2 + ωk2 )
2
k
Extensions

Steady-state
error

Summary and
• Step response
plan
X X
y (t) = 1 + Ai e−σi t + Dk e−αk t sin(ωk t + θk )
i k
EE 3CL4, §3
51 / 78
Tim Davidson

Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
53 / 78
Tim Davidson Steady-state error
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance
1
Open loop vs E(s) = R(s) − Y (s) = R(s)
closed loop
1 + Gc (s)G(s)
Step resp.:
2nd-order
G(s) If the the conditions are satisfied, the final value theorem
A taste of
pole-placement
design
gives steady-state tracking error:
Extensions
1
Steady-state ess = lim e(t) = lim s R(s)
error t→∞ s→0 1 + Gc (s)G(s)
Summary and
plan
One of the fundamental reasons for using feedback, despite
the cost of the extra components, is to reduce this error.
We will examine this error for the step, ramp and parabolic
inputs
EE 3CL4, §3
54 / 78
Tim Davidson Step, ramp, parabolic
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
55 / 78
Tim Davidson Step input
Transfer 1
functions
ess = lim e(t) = lim s R(s)
Open loop t→∞ s→0 1 + Gc (s)G(s)
Stability &
Performance

Closed loop • Step input: R(s) = As


Stability &
Performance
• ess = lims→0 1+GsA/s = 1+lims→0AGc (s)G(s)
Open loop vs c (s)G(s)
closed loop • Now let’s examine Gc (s)G(s). Factorize num., den.
Step resp.:
2nd-order QM
G(s) K i=1 (s + zi )
A taste of Gc (s)G(s) = QQ
s N + pk )
k =1 (s
pole-placement
design
Extensions

Steady-state where zi 6= 0 and pk 6= 0.


error

Summary and
• Limit as s → 0 depends strongly on N.
plan
• If N > 0, lims→0 Gc (s)G(s) → ∞ and ess = 0
• If N = 0,
A
ess =
1 + Gc (0)G(0)
EE 3CL4, §3
56 / 78
Tim Davidson System types
Transfer
functions

Open loop
Stability &
Performance

Closed loop • Since N plays such a key role,


Stability &
Performance
it has been given a name
Open loop vs
closed loop
• It is called the type number
Step resp.:
2nd-order
G(s) • Hence, for systems of type N ≥ 1,
A taste of
pole-placement
design ess for a step input is zero
Extensions

Steady-state A
• For systems of type 0, ess = 1+G (0)G(0)
error c

Summary and
plan
EE 3CL4, §3
57 / 78
Tim Davidson Position error constant
Transfer
functions A
• For type-0 systems, ess = 1+G (0)G(0)
Open loop c
Stability &

• Sometimes written as ess = 1+KA


Performance

Closed loop posn


Stability &
Performance
where Kposn is the position error constant
Open loop vs
K M
Q
closed loop
• Recall Gc (s)G(s) = i=1 (s+zi )
sN Q
Q
Step resp.: k =1 (s+pk )
2nd-order
G(s)
A taste of
• Therefore, for a type-0 system
pole-placement
design

K M (zi )
Extensions
Q
Steady-state Kposn = lim Gc (s)G(s) = QQ i=1
error s→0
k =1 (pk )
Summary and
plan

• Note that this can be computed from positions of the


non-zero poles and zeros
EE 3CL4, §3
58 / 78
Tim Davidson Ramp input
Transfer
functions

Open loop • The ramp input, which represents a step change in


Stability &
Performance velocity is r (t) = At.
Closed loop
Stability & • Therefore R(s) = sA2
Performance

Open loop vs • Assuming conditions of final value theorem are


closed loop
satisfied,
Step resp.:
2nd-order
G(s) s(A/s2 ) A
A taste of
ess = lim = lim
s→0 1 + Gc (s)G(s) s→0 s + sGc (s)G(s)
pole-placement
design
Extensions
A
Steady-state = lim
error
s→0 sGc (s)G(s)
Summary and
plan

• Again, type number will play a key role.


EE 3CL4, §3
59 / 78
Tim Davidson Velocity error constant
Transfer
functions • For a ramp input ess = lims→0 A
sGc (s)G(s)
Open loop
K M
Q
i=1 (s+zi )
Stability &
Performance • Recall Gc (s)G(s) =
sN Q
Q
k =1 (s+pk )
Closed loop
Stability &
Performance
• For type-0 systems, Gc (s)G(s) has no poles at origin.
Open loop vs Hence, ess → ∞
closed loop

Step resp.:
• For type-1 systems, Gc (s)G(s) has
Q
one pole at the origin.
K z
2nd-order
G(s)
Hence, ess = KAv , where Kv = Q pi k i
k
A taste of
pole-placement
design • Note Kv can be computed from non-zero poles and zeros
Extensions

Steady-state • Suggests formal definition of velocity error constant


error

Summary and Kv = lim sGc (s)G(s)


plan s→0

• For type-N systems with N ≥ 2, for a ramp input ess = 0


EE 3CL4, §3
60 / 78
Tim Davidson Parabolic input
Transfer
functions

Open loop
Stability &
Performance • The parabolic input, which represents a step change in
Closed loop acceleration is r (t) = At 2 /2.
Stability &

• Therefore R(s) = sA3


Performance

Open loop vs
closed loop • Assuming conditions of final value theorem are
Step resp.:
2nd-order satisfied,
G(s)

s(A/s3 )
A taste of
pole-placement A
design
ess = lim = lim 2
s→0 1 + Gc (s)G(s) s→0 s Gc (s)G(s)
Extensions

Steady-state
error

Summary and
plan • Again, type number will play a key role.
EE 3CL4, §3
61 / 78
Tim Davidson Acceleration error constant
Transfer
functions • For a parabolic input ess = lims→0 A
s2 Gc (s)G(s)
Open loop
K M
Q
i=1 (s+zi )
Stability &
Performance • Recall Gc (s)G(s) =
sN Q
Q
k =1 (s+pk )
Closed loop
Stability &
Performance
• For type-0 and type-1 systems, Gc (s)G(s) has at most one
Open loop vs pole at origin. Hence, ess → ∞
closed loop

Step resp.:
• For type-2 systems, Gc (s)G(s) has
Q
two poles at the origin.
K z
2nd-order
G(s)
Hence, ess = KAa , where Ka = Q pi k i
k
A taste of
pole-placement
design • Again, Ka can be computed from non-zero poles and zeros
Extensions

Steady-state • Suggests formal definition of acceleration error constant


error

Summary and Ka = lim s2 Gc (s)G(s)


plan s→0

• For type-N systems with N ≥ 3, for a parabolic input ess = 0


EE 3CL4, §3
62 / 78
Tim Davidson Summary of steady-state errors
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan

The Kp in this table corresponds to Kposn


EE 3CL4, §3
63 / 78
Tim Davidson Robot steering system,
Transfer P control
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs Let’s examine a proportional controller:


closed loop

Step resp.: Gc (s) = K1


2nd-order
G(s)
A taste of
pole-placement
design
Extensions • Gc (s)G(s) = K1 K /(τ s + 1)
Steady-state
error • Hence, Gc (s)G(s) is a type-0 system.
Summary and • Hence, for a step input,
plan

A
ess =
1 + Kposn
where Kposn = K1 K .
EE 3CL4, §3
64 / 78
Tim Davidson Robot steering system,
Transfer P control example
functions

Open loop
Stability &
1
• Let G(s) = s+2 0.5
Performance = 0.5s+1 .
Closed loop
Stability &
Performance • Proportional control, Gc (s) = K1 . Choose K1 = 18.
Open loop vs
closed loop • Since Gc (s)G(s) is type-0:
Step resp.:
2nd-order
• finite steady-state error for a step,
G(s) • unbounded steady-state error for a ramp
A taste of
pole-placement
design
Extensions • In this example, Kp = KK1 = 9
Steady-state
error
• The steady-state error for a step input will be
Summary and 1
plan
1+Kp = 10% of the height of the step.

• For a unit step the steady-state error will be 0.1.


EE 3CL4, §3
65 / 78
Tim Davidson Robot steering system,
Transfer P control example
functions

Open loop
Stability &
Performance • Left: y (t) for unit step input, r (t) = u(t)
Closed loop
Stability & • Right: y (t) for unit ramp input, r (t) = tu(t)
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
66 / 78
Tim Davidson Robot steering system,
Transfer PI control
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance
Let’s examine a proportional-plus-integral controller:
Open loop vs
closed loop
K2 K1 s + K2
Step resp.: Gc (s) = K1 + =
2nd-order s s
G(s)
A taste of
pole-placement

• When K2 6= 0, Gc (s)G(s) = K s(τ


(K1 s+K2 )
design
Extensions
s+1)
Steady-state
error
• Hence, Gc (s)G(s) is a type-1 system.
Summary and • Hence, for a step input, ess = 0
plan
• For ramp input,
A
ess = ,
Kv
where Kv = lims→0 sGc (s)G(s) = KK2
EE 3CL4, §3
67 / 78
Tim Davidson Robot steering system,
Transfer PI control example
functions

Open loop
1
• Same system: G(s) = s+2 0.5
Stability &
Performance
= 0.5s+1 .
Closed loop
Stability &
Performance
• Prop. + Int. control, Gc (s) = K1 + Ks2 = K1 s+K
s
2
.
Open loop vs Choose K1 = 18 and K2 = 20.
closed loop

Step resp.: • Now since Gc (s)G(s) is type-1:


2nd-order
G(s) • zero steady-state error for a step
A taste of
pole-placement • finite-steady state error for a ramp
design
Extensions

Steady-state • In this example Kv = KK2 = 10


error

Summary and
plan
• The steady-state error for a ramp input will be
1
Kv = 10% of the slope of the ramp.

• For a unit ramp the steady-state error will be 0.1.


EE 3CL4, §3
68 / 78
Tim Davidson Robot steering system,
Transfer PI control example
functions

Open loop
Stability &
Performance • Left: y (t) for unit step input, r (t) = u(t)
Closed loop
Stability & • Right: y (t) for unit ramp input, r (t) = tu(t)
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
69 / 78
Tim Davidson Robot steering system,
Transfer PI2I control
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance Let’s examine a PI plus double integral controller:
Open loop vs
closed loop K2 K3 K1 s2 + K2 s + K3
Gc (s) = K1 + + 2 =
Step resp.:
2nd-order
s s s2
G(s)
A taste of
2
• When K3 6= 0, Gc (s)G(s) = K (K1ss2 (τ+K2 s+K3 )
pole-placement
design
Extensions s+1)
Steady-state • Hence, Gc (s)G(s) is a type-2 system.
error
• Hence, for a step input or a ramp input, ess = 0
Summary and
plan • For parabolic input,
A
ess = ,
Ka
where Ka = lims→0 s2 Gc (s)G(s) = KK3
EE 3CL4, §3
70 / 78
Tim Davidson Robot steering system,
Transfer PI2I control example
functions

Open loop
1
• Same system: G(s) = s+2 0.5
Stability &
Performance
= 0.5s+1 .
Closed loop
Stability &
Performance
• Prop. + Int. + double int. control, Gc (s) = K1 + Ks2 + Ks23 .
Open loop vs Choose K1 = 18, K2 = 20, K3 = 20.
closed loop

Step resp.: • Now since Gc (s)G(s) is type-2:


2nd-order
G(s) • zero steady-state error for a step or a ramp
A taste of
pole-placement • finite-steady state error for a parabolic
design
Extensions

Steady-state • In this example Ka = KK3 = 10


error

Summary and
plan
• The steady-state error for a parabolic input would be
1
Kv = 10% of the curvature of the parabola.

• For a unit parabola the steady-state error would be 0.1.


EE 3CL4, §3
71 / 78
Tim Davidson Robot steering system,
Transfer PI2I control example
functions

Open loop
Stability &
Performance • Left: y (t) for unit step input, r (t) = u(t)
Closed loop
Stability & • Right: y (t) for unit ramp input, r (t) = tu(t)
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
72 / 78
Tim Davidson Robot steering system,
Transfer PI2I control example
functions

Open loop
Stability & • y (t) for unit step input, r (t) = u(t), extended time scale
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
73 / 78
Tim Davidson Robot steering system,
Transfer PI2I control example
functions

Open loop • y (t) for unit parabolic input, r (t) = t 2 u(t)


Stability &
Performance
• For this slide only, the gains have been reduced to
Closed loop
Stability & illustrate the effects, K1 = 1.8, K2 = 0.2, K3 = 0.02
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error

Summary and
plan
EE 3CL4, §3
74 / 78
Tim Davidson Transient responses and poles
Should we have been able to predict transient responses from pole (and
Transfer
functions zero) positions? Return to case of K1 = 18, K2 = K3 = 20
Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs
closed loop

Step resp.:
2nd-order
G(s)
A taste of
pole-placement
design
Extensions

Steady-state
error Y (s)
Closed loop transfer functions, T (s) = R(s)
:
Summary and
plan P one real pole, time const. = 1/20 = 0.05s
PI one real pole near the P one; plus another real pole (time
const. ≈ 1s) that is close to a zero
PI2I one real pole near the P one; plus a conjugate pair with
time const. ≈ 2s, angle ≈ 60◦ , but near zeros
EE 3CL4, §3
75 / 78
Tim Davidson Step responses
To highlight the impacts of the different poles, we have done a partial fraction
Transfer expansion of the transfer function and used that to compute the step response
functions

Open loop Y (s)


Stability &
Control T (s) = R(s)
Step Response, for t ≥ 0
Performance
18
Closed loop P = s+20
= 0.9 − 0.9e−20t
Stability &
Performance 18s+20
PI = s2 +20s+20
Open loop vs
17.94 0.0557
closed loop ' s+18.94
+ s+1.056 ' 1 − 0.947e−18.94t − 0.053e−1.056t
Step resp.:
18s2 +20s+20
2nd-order PI2I = s3 +20s2 +20s+20
G(s)
17.89 0.1106(s+0.5578)
A taste of
pole-placement
' s+19.00
+ s2 +0.9971s+1.0525 ' 1 − 0.942e−19.00t . . .
−0.108e−0.498t sin(0.897t + 2.57)
design
Extensions

Steady-state
error Notes:
Summary and • 10% steady state error in the P case; it is zero in other cases
plan
• Second term for each system has a similar decay rate (similar pole
positions)
• Third term in PI case decays much more slowly; third term in PI2I case even
slower (small real parts of these poles)
• Terms related to poles that are near zeros have comparatively small
magnitudes
EE 3CL4, §3
77 / 78
Tim Davidson Summary: Desirable properties
Transfer
functions

Open loop
Stability &
Performance

Closed loop
Stability &
Performance

Open loop vs With H(s) = 1, E(s) = R(s) − Y (s), L(s) = Gc (s)G(s),


closed loop

Step resp.: 1 G(s) L(s)


2nd-order E(s) = R(s) − Td (s) + N(s)
G(s) 1 + L(s) 1 + L(s) 1 + L(s)
A taste of
pole-placement
design
Extensions
• Stability
Steady-state
error • Good tracking in the steady state
Summary and
plan • Good tracking in the transient
• Good disturbance rejection (good regulation)
• Good noise suppression
• Robustness to model mismatch
EE 3CL4, §3
78 / 78
Tim Davidson Plan: Analysis and design
Transfer techniques
functions
Rest of course: about developing analysis and design
Open loop
Stability & techniques to address these goals
Performance

Closed loop • Routh-Hurwitz:


Stability &
Performance • Enables us to determine stability without having to find
Open loop vs the poles of the denominator of a transfer function
closed loop

Step resp.: • Root locus


2nd-order • Enables us to show how the poles move as a single
G(s)
A taste of
pole-placement
design parameter (such as an amplifier gain) changes
design
Extensions • Bode diagrams
Steady-state • There is often enough information in the Bode diagram
error
of the plant/process to construct a highly effective
Summary and
plan design technique
• Nyquist diagram
• More advanced analysis of the frequency response that
enables stability to be assessed even for complicated
systems

You might also like