Anda di halaman 1dari 33

Control Systems I

Lecture 6: Poles and Zeros

Readings:

Emilio Frazzoli

Institute for Dynamic Systems and Control


D-MAVT
ETH Zürich

October 27, 2017

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 1 / 33


Tentative schedule

# Date Topic
1 Sept. 22 Introduction, Signals and Systems
2 Sept. 29 Modeling, Linearization
3 Oct. 6 Analysis 1: Time response, Stability
4 Oct. 13 Analysis 2: Diagonalization, Modal coordi-
nates.
5 Oct. 20 Transfer functions 1: Definition and properties
6 Oct. 27 Transfer functions 2: Poles and Zeros
7 Nov. 3 Analysis of feedback systems: internal stability,
root locus
8 Nov. 10 Frequency response
9 Nov. 17 Analysis of feedback systems 2: the Nyquist
condition
10 Nov. 24 Specifications for feedback systems
11 Dec. 1 Loop Shaping
12 Dec. 8 PID control
13 Dec. 15 Implementation issues
14 Dec. 22 Robustness

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 2 / 33


Today’s learning objectives

Recognize di↵erent ways of writing transfer functions, and why.

Graphical computation of g (s).

Poles and their e↵ects on the response.

Zeros and their e↵ects on the response.

Zeros and derivative action

E↵ects of non-minimum-phase zeros

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 3 / 33


Recap

We know that the time response of a causal LTI system with state-space
model (A, B, C , D) is
Z t
y (t) = Ce At x(0) + Ce A(t ⌧)
Bu(⌧ ) d⌧.
0

Assuming all the eigenvalues of A have negative real part (i.e., the system is
stable), the steady-state response to an input of the form u(t) = e st is
yss (t) = G (s)e st where
1
G (s) = C (sI A) B + D.

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 4 / 33


Di↵erent ways to write transfer functions

For causal, finite-dimensional SISO LTI systems, transfer functions take the
form of proper rational functions, e.g.,

N(s) bn s n + bn 1 s n 1
+ bn 2 s n 2 + . . . + b0
g (s) = = ,
D(s) s n + an 1s
n 1 + ... + a
0

There are other forms that are convenient. The first one, called the partial
fraction expansion, is useful to compute transient responses, and to assess
how much di↵erent modes contribute to the response. It has the form:
r1 r2 rn
g (s) = + + ... + + r0 ,
s p1 s p2 s pn
where p1 , . . . , pn are the ”poles”, i.e., the roots of the characteristic
polynomial det(sI A), i.e., the eigenvalues of A. The numbers r0 , . . . , rn are
called the “residues.”
There are many ways to compute the residues, we will look at one later today.

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 5 / 33


Di↵erent ways to write transfer functions

There are also slightly di↵erent ways to factorize the polynomials at the
numerator and denominator:
Root-locus form: This is useful to compute the value of g (s) “by hand”, and
to use control design techniques like the root locus (next week)

(s z1 )(s z2 ) . . . (s zm )
g (s) = krl
(s p1 )(s p2 ) . . . (s pn )

Bode form: This is useful to use control design techniques like the Bode plot
(in 2-3 weeks)
s s s
( z1
+ 1)( z2
+ 1) . . . ( zm
+ 1)
g (s) = kBode s s s
( p1
+ 1)( p2
+ 1) . . . ( pn
+ 1)

In the above formulas, z1 , . . . , zn are called the “zeros” of g (s), and are the
roots of the numerator.

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 6 / 33


Example – Computing g (s) via factorization

Consider an LTI system with transfer function


s +1
g (s) = 2
s 3 + 4s 2 + 6s + 4

What is the steady-state response to an input u(t) = sin(t) (i.e., s = j)? We


know that
yss (t) = |g (j)| sin(t + \g (j))

We could substitute s j in the transfer function and compute g (j), but


that is not a nice/insightful calculation. Let’s use graphical methods instead.
Factorize the transfer function, and write in the root-locus form: with some
creative eyeballing (or using matlab) we can find that the 3 poles of g (s) are
at { 2, 1 ± j}.

s +1
g (s) = 2 .
(s + 2)(s + 1 + j)(s + 1 j)

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 7 / 33


Computing the magnitude of g (s)

Since |a · b| = |a| · |b|, we can write

|s + 1|
|g (s)| = 2
|s + 2| · |s + 1 + j| · |s + 1 j|

Graphically, |s p| is the length of the vector from p to s.

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 8 / 33


Computing the magnitude of g (s)
Im

Re

From the graph, we find:


p p
2 2 2
|g (j)| = 2 p p = ⇡ 0.5657.
5· 5·1 5
E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 9 / 33
Computing the phase (argument) of g (s)

Since \(a · b) = (\a) + (\b), we can write

\g (s) = \(2) + \(s + 1) \(s + 2) \(s + 1 + j) \(s + 1 j)

Graphically, \(s p) is angle formed by the vector from p to s with the real
axis.

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 10 / 33


Computing the phase of g (s)
Im

Re

From the graph, we find:


\g (j) = 0 + 45 arctan(1/2) arctan(2) + 0 = 45 .

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 11 / 33


Putting the results together
The steady-state response of an LTI system with transfer function
s +1
g (s) = 2 3
s + 4s 2 + 6s + 4
to an input of the form u(t) = sin(t) is given by
yss (t) ⇡ 0.5657 sin(t 45 ).
Linear Simulation Results
1
y
0.8

0.6

0.4

0.2
Amplitude

-0.2

-0.4

-0.6

-0.8

-1
0 5 10 15 20 25 30 35
Time (seconds)

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 12 / 33


What is the e↵ect of poles and zeros?

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 13 / 33


Transient response to special inputs

In order to understand the e↵ect of poles and zeros, it is useful to apply some
other standard “test inputs” to a system to evaluate its transient behavior
(vs. the steady-state one).

Typical “test inputs’ include:

Unit impulse u(t) = (t).


This
R " is not really a function, but a mathematical construct such that
(t) dt = 1 for any " > 0.
0 Rt
In particular, 0 f (⌧ ) (⌧ ) d⌧ = f (0), for any t > 0.

Unit step input u(t) = 1, for t 0. (Note this is the same as u(t) = e 0t .)

Other less used test inputs include the “unit ramp” u(t) = t and higher order
ramps.

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 14 / 33


Impulse response

Assume D = 0, x(0) = 0, and u(t) = (t). Then:


Z t
yimp (t) = Ce A(t ⌧)
B (⌧ ) d⌧ = Ce At B
0
.

The impulse response is the same as the response to an initial condition


x(0) = B.

Remember: the initial-condition response is given by simple exponentials for


real eigenvalues, and sinusoids with exponentially-changing magnitude for
complex-conjugate eigenvalues.

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 15 / 33


Unit step response

Assume D = 0, x(0) = 0, u(t) = 1 = e 0t , for t 0, and that A is invertible.


Then: Z t
ystep (t) = Ce A(t ⌧)
B d⌧ = CA 1
B Ce At B
0

1
The steady-state response is given by yss (t) = G (0) = CA B.

For a scalar system, the step response then is simply computed as

ystep (t) = yss (t)(1 e at ),

i.e., the step response is the steady-state response minus the scaled impulse
response.

The impulse response totally defines the response of a system (it is in fact
the inverse Laplace transform of the transfer function)!

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 16 / 33


First-order system

A system with state-space model (A = a, B = b, C = c, D = 0)

The transfer function is


r
g (s) =
s +a
with r = bc.

The response to an unit impulse (or to an initial condition x(0) = b) has the
form
y (t) = re at .

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 17 / 33


Higher-order system

If we write the partial fraction expansion of g (s), assuming no repeated


poles, we get
r1 r2 rn
g (s) = + + ... + .
s p1 s p2 s pn

The response to an impulse will then be

y (t) = r1 e p1 t + r2 e p2 t + . . . rn e pn t .

The e↵ect of the poles is then clear: each pole pi generates a term of the
form e pi t in the impulse response (and step response, etc.)

As we know, these are simple exponentials if the pole pi is real, and are
sinusoids with exponentially-changing amplitude for complex-conjugate pole
pairs.

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 18 / 33


Response shapes as function of pole location
Im

Re

Each pole pi = i + j!i with residue ri determines a term of the impulse


response.
Each term’s magnitude is bounded by ri e i t and oscillates at frequency !i .

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 19 / 33


E↵ects of zeros on the response

How can we compute the residues ri ? A convenient approach is the


“cover-up” method.

For a non-repeated pole pi this takes the form

ri = lim (s pi )g (s)
s!pi

which in practice means “remove the factor (s pi ) from the denominator


and compute g (pi ) only considering the other terms.

While the exponents in the terms of the response only depend on the poles
pi , the residues are a↵ected by the zeros zi .

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 20 / 33


Example
Consider
1
g (s) = .
(s + 1)(s + 1 + j)(s + 1 j)
Im

Re

Using the cover-up method we get

1 1/2 1/2
g (s) = + + .
s +1 s +1+j s +1 j

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 21 / 33


Example - impulse response
Impulse Response
1
p1
p2,p3
combined
0.8

0.6
Amplitude

0.4

0.2

-0.2
0 1 2 3 4 5 6 7
Time (seconds)

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 22 / 33


Example — adding a zero near a pole
Consider
s +1+"
g (s) = .
(s + 1)(s + 1 + j)(s + 1 j)
Im

Re

Using the cover-up method we get

" 1/2j 1/2j


g (s) ⇡ + + .
s +1 s +1+j s +1 j

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 23 / 33


Example - impulse response
Impulse Response
0.35

0.3

0.25

0.2
Amplitude

0.15

0.1

0.05

-0.05
0 1 2 3 4 5 6 7
Time (seconds)

A zero can reduce the residue (i.e., the e↵ect) of a nearby pole.

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 24 / 33


Pole-zero cancellation

What if a zero matches a pole exactly?


s +1 1
g (s) = = .
(s + 1)(s + 1 + j)(s + 1 j) (s + 1 + j)(s + 1 j)

One of the poles has been cancelled by the zero. E↵ectively its residue is
zero, i.e.,
0 1/2j 1/2j
g (s) = + + .
s +1 s +1+j s +1 j

Recall from the modal (diagonal) form that the residue is also given by
ri = bi ci ; if the residue is zero, the i-th mode is either uncontrollable,
unobservable, or both.
This is ok if the i-th mode (i.e., pi ) is stable, but a big problem if it is
unstable.
Avoid unstable pole-zero cancellation!

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 25 / 33


More e↵ects of zeros...

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 26 / 33


Integrator
R Rt
u(t) y (t) = 1
u(⌧ ) d⌧

If the input is u(t) = e st , then the output will be y (t) = 1s e st .

Hence, the transfer function of an integrator is


1
G (s) = .
s

You can verify from the state-space model:

ẋ(t) = u(t), y (t) = x(t) ) A = 0, B = 1, C = 1, D = 0,

and
1 1
G (s) = C (sI A) B +D =s .

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 27 / 33


Di↵erentiator

d du(t)
u(t) dt y (t) = dt

If the input is u(t) = e st , then the output will be y (t) = se st .

Hence, the transfer function of an integrator is

G (s) = s.

Note that you cannot obtain this from a state-space model, because a
di↵erentiator is not a causal operator!

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 28 / 33


Zeros as derivative action

If we have a transfer function g (s) = (s + z)g̃ (s), we can decompose it into

g (s) = z g̃ (s) + s g̃ (s)

If the impulse response of g̃ (s) is given by ỹ (t), and the impulse response of
g (s) is y (t), then remembering that s is the transfer function of a
di↵erentiator, we can write

y (t) = z ỹ (t) + ỹ˙ (t).

In other words, the zero is e↵ectively adding a derivative term to the output.
This typically has an “anticipatory e↵ect”.

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 29 / 33


With and without a zero / derivative

Impulse Response Impulse Response


1 0.35
p1
p2,p3
combined 0.3
0.8

0.25

0.6
0.2
Amplitude

Amplitude
0.4
0.15

0.1
0.2

0.05
0

-0.2
0 1 2 3 4 5 6 7 -0.05
Time (seconds) 0 1 2 3 4 5 6 7
Time (seconds)

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 30 / 33


Non-minimum-phase zeros

We know that poles with positive real part result in an unstable system. (The
output diverges over time.)
What happens when zeros have positive real part?
The stability of the system is preserved (since the growth/decay of the terms
in the response is not a↵ected by the zeros — only the respective residues)
However, a zero in the right half plane e↵ectively means a “negative”
derivative action. This is the opposite of anticipatory — indeed the output
will tend to move in the “wrong” direction initially.
These are called non-minimum phase zeros and are typically very bad news
for control engineers, they make our work much harder.
(Typically the presence of non-minimum-phase zeros depends on the choice
of the output — to make your life easier, choose another output and/or
move the sensors!)

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 31 / 33


Minimum-phase vs. non-minimum-phase zeros
Impulse Response
0.4
no zero
z = -1
z=+1
0.3

0.2
Amplitude

0.1

-0.1

-0.2
0 1 2 3 4 5 6 7
Time (seconds)

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 32 / 33


Today’s learning objectives

Recognize di↵erent ways of writing transfer functions, and why.

Graphical computation of g (s).

Poles and their e↵ects on the response.

Zeros and their e↵ects on the response.

Zeros and derivative action

E↵ects of non-minimum-phase zeros

E. Frazzoli (ETH) Lecture 6: Control Systems I 27/10/2017 33 / 33

Anda mungkin juga menyukai