Professional Documents
Culture Documents
1 / 55
Tim Davidson
Stability
Condition in terms of
poles
Condition in terms of
denominator
coefficients EE3CL4:
Routh Hurwitz
condition Introduction to Linear Control Systems
Basics
Disk drive example Section 4: Stability and Routh-Hurwitz Condition
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for Tim Davidson
design
Turning control of a
tracked vehicle
McMaster University
Winter 2020
EE 3CL4, §4
2 / 55
Tim Davidson Outline
Stability
Condition in terms of
poles
Condition in terms of 1 Stability
denominator
coefficients
Condition in terms of poles
Routh Hurwitz
condition Condition in terms of denominator coefficients
Basics
Disk drive example
Dealing with zeros
Zeros in first column 2 Routh Hurwitz condition
Zero rows
Basics
Using Routh
Hurwitz for Disk drive example
design
Turning control of a Dealing with zeros
tracked vehicle
Zeros in first column
Zero rows
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros A system is said to be stable if all bounded inputs r (t) give
Zeros in first column
Zero rows rise to bounded outputs y (t)
Using Routh
Hurwitz for
design Counterexamples
Turning control of a
tracked vehicle
• Albert Collins, Jeff Beck (Yardbirds),
Pete Townshend (The Who), Jimi Hendrix,
Tom Morello (Rage Against the Machine),
Kurt Cobain (Nirvana)
• Tacoma Narrows
EE 3CL4, §4
5 / 55
Tim Davidson Conditions for stability
Stability
Condition in terms of
poles
Condition in terms of
denominator
coefficients
Routh Hurwitz Z ∞
condition
Basics
y (t) = g(τ )r (t − τ ) dτ
Disk drive example −∞
Dealing with zeros
Zeros in first column
Zero rows Let r (t) be such that |r (t)| ≤ r̄
Using Routh
Hurwitz for
Z ∞
|y (t)| = g(τ )r (t − τ ) dτ
design
Turning control of a
tracked vehicle
−∞
Z ∞
≤ g(τ )r (t − τ ) dτ
−∞
Z ∞
≤ r̄ g(τ ) dτ
−∞
R∞
Using this: system G(s) is stable iff −∞
g(τ ) dτ is finite
EE 3CL4, §4
6 / 55
Tim Davidson Condition in terms of poles?
R∞
Stability
We want −∞ g(τ ) dτ to be finite
Condition in terms of
poles
Condition in terms of
Can we determine this from G(s)?
denominator
coefficients
We can write a general rational transfer function in the form
Routh Hurwitz
condition Q
Basics
K i (s + zi )
Disk drive example G(s) = N Q Q 2 2 2
Dealing with zeros s k (s + σk ) m (s + 2αm s + (αm + ωm ))
Zeros in first column
Zero rows
Using Routh
Hurwitz for Poles: 0, −σk , −αm ± jωm
design
Turning control of a
tracked vehicle
Assuming N = 0 and no repeated roots, the impulse response is
zero for t < 0 and for t ≥ 0 it is
X X
g(t) = Ak e−σk t + Bm e−αm t sin(ωm t + θm )
k m
R∞
Stability requires −∞ |g(t)| dt to be bounded;
that requires σk > 0, αm > 0
In fact, system is stable iff poles have negative real parts
EE 3CL4, §4
7 / 55
Tim Davidson Marginal stability
Stability
Condition in terms of
poles • Consider integrator: G(s) = 1/s; simple pole at origin
Condition in terms of
• y (t) = t r (λ) dλ
denominator
R
coefficients
−∞
Routh Hurwitz • if r (t) = cos(t), which is bounded,
condition
Basics then y (t) = sin(t). Bounded
Disk drive example
Dealing with zeros
• If r (t) = u(t), which is bounded,
Zeros in first column then y (t) = t. Not bounded
Zero rows
Using Routh
Hurwitz for • Consider G(s) = 1/(s2 + 1), simple poles at s = ±j1
design
Turning control of a • Unit step response: u(t) − cos(t). Bounded
tracked vehicle
• What if r (t) is a sinusoid of frequency 1/(2π) Hz?
Not bounded
Routh Hurwitz
condition We have seen how to determine stability from the poles.
Basics
Disk drive example
Dealing with zeros Much easier than havingR to find impulse response
Zeros in first column ∞
Zero rows and then determining if −∞ |g(τ )| dτ < ∞
Using Routh
Hurwitz for Can we determine stability without having to determine the
design
Turning control of a
tracked vehicle
poles?
Yes! Routh-Hurwitz condition
EE 3CL4, §4
9 / 55
Tim Davidson Routh-Hurwitz condition
Stability p(s)
Condition in terms of
Let G(s) = q(s) , where
poles
Condition in terms of
denominator
coefficients q(s) = an sn + an−1 sn−1 + . . . a1 s + a0
Routh Hurwitz
condition
= an (s − r1 )(s − r2 ) . . . (s − rn )
Basics
Disk drive example
Dealing with zeros
where ri are the roots of q(s) = 0.
Zeros in first column
Zero rows By multiplying out, q(s) = 0 can be written as
Using Routh
Hurwitz for
design
q(s) = an sn − an (r1 + r2 + · · · + rn )sn−1
+ an (r1 r2 + r2 r3 + . . . )sn−2
Turning control of a
tracked vehicle
− an (r1 r2 r3 + r1 r2 r4 + . . . )sn−3
+ · · · + (−1)n an (r1 r2 r3 . . . rn ) = 0
If all ri are real and in left half plane, what is sign of coeffs of sk ?
the same!
EE 3CL4, §4
10 / 55
Tim Davidson Routh-Hurwitz condition
Stability
Condition in terms of
poles
Condition in terms of
denominator
coefficients
Routh Hurwitz
condition
Basics That observation leads to a necessary condition.
Disk drive example
Dealing with zeros
Zeros in first column
Hence, not that useful for design
Zero rows
Routh Hurwitz
condition Construct a table of the form
Basics
Disk drive example
Dealing with zeros
Row n an an−2 an−4 ...
Zeros in first column Row n − 1 an−1 an−3 an−5 ...
Zero rows
Row n − 2 bn−1 bn−3 bn−5 ...
Using Routh
Hurwitz for Row n − 3 cn−1 cn−3 cn−5 ...
design .. .. .. ..
Turning control of a
tracked vehicle . . . . ...
Row 0 hn−1
where
an−1 an−2 − an an−3 −1 an an−2
bn−1 = =
an−1 an−1 an−1 an−3
−1 an an−4 −1 an−1 an−3
bn−3 = cn−1 =
an−1 an−1 an−5 bn−1 bn−1 bn−3
EE 3CL4, §4
12 / 55
Tim Davidson R-H cond: A first look
Stability
Condition in terms of
poles
Now consider the table that we have just constructed
Condition in terms of
denominator
coefficients Row n an an−2 an−4 ...
Routh Hurwitz Row n − 1 an−1 an−3 an−5 ...
condition
Basics
Row n − 2 bn−1 bn−3 bn−5 ...
Disk drive example Row n − 3 cn−1 cn−3 cn−5 ...
Dealing with zeros
Zeros in first column .. .. .. ..
Zero rows . . . . ...
Using Routh Row 0 hn−1
Hurwitz for
design
Turning control of a
tracked vehicle
Loosely speaking:
• Number of roots in the right half plane is equal to the number
of sign changes in the first column of the table
• Stability iff no sign changes in the first column
Routh Hurwitz
condition
Basics p(s)
Disk drive example Let G(s) = q(s) , where
Dealing with zeros
Zeros in first column
Zero rows
q(s) = an sn + an−1 sn−1 + . . . a1 s + a0
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle System is stable iff all poles of G(s) have negative real parts
Routh Hurwitz
condition
Basics
2 Construct a table of the form
Disk drive example
Dealing with zeros Row n an an−2 an−4 ...
Zeros in first column
Zero rows
Row n − 1 an−1 an−3 an−5 ...
Using Routh
Row n − 2 bn−1 bn−3 bn−5 ...
Hurwitz for Row n − 3 cn−1 cn−3 cn−5 ...
design
Turning control of a .. .. .. ..
tracked vehicle . . . . ...
Row 0 hn−1
Procedure provided on the following slides
Stability (poles in LHP) iff all terms in first col. have same sign
EE 3CL4, §4
16 / 55
Tim Davidson Constructing RH table
Stability
Condition in terms of
poles
Condition in terms of
denominator
coefficients
Routh Hurwitz
condition
Basics
Disk drive example
an sn + an−1 sn−1 + an−2 sn−2 + . . . a1 s + a0 = 0
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
Step 2.1: Arrange coefficients of q(s) in first two rows
design
Turning control of a
tracked vehicle
Row n an an−2 an−4 ...
Row n − 1 an−1 an−3 an−5 ...
EE 3CL4, §4
17 / 55
Tim Davidson Interlude
Stability
Condition in terms of
poles
Condition in terms of
denominator
coefficients
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Determinant of a 2 × 2 matrix:
Zeros in first column
Zero rows
a b
Using Routh
c d = ad − cb
Hurwitz for
design
Turning control of a
tracked vehicle
EE 3CL4, §4
18 / 55
Tim Davidson Constructing RH table
Stability
Condition in terms of
poles
Condition in terms of
denominator
coefficients
Step 2.2: Construct 3rd row using determinants of 2 × 2
Routh Hurwitz
condition matrices constructed from rows above
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Row n an an−2 an−4 ...
Zero rows Row n − 1 an−1 an−3 an−5 ...
Using Routh Row n − 2 bn−1
Hurwitz for
design
Turning control of a
tracked vehicle
−1 an an−2
bn−1 =
an−1 an−1 an−3
EE 3CL4, §4
19 / 55
Tim Davidson Constructing RH table
Stability
Condition in terms of
poles
Condition in terms of
denominator
coefficients
Step 2.2, cont: Construct 3rd row using determinants of
Routh Hurwitz
condition 2 × 2 matrices constructed from rows above
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Row n an an−2 an−4 ...
Zero rows Row n − 1 an−1 an−3 an−5 ...
Using Routh Row n − 2 bn−1 bn−3 ...
Hurwitz for
design
Turning control of a
tracked vehicle
−1 an an−4
bn−3 =
an−1 an−1 an−5
EE 3CL4, §4
20 / 55
Tim Davidson Constructing RH table
Stability
Condition in terms of
Step 2.3: Construct 4th row using determinants of 2 × 2
poles
Condition in terms of matrices constructed from rows above
denominator
coefficients
Routh Hurwitz
condition
Basics Row 3 a3 a1
Disk drive example
Dealing with zeros Row 2 a2 a0
Zeros in first column
Zero rows
Row 1 b1 0
Using Routh
Row 0 c1 0
Hurwitz for
design
Turning control of a
tracked vehicle
−1 a3 a1 −1 a2 a0
b1 = c1 = = a0
a2 a2 a0 b1 b1 0
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for Using block diagram manipulation
design
Turning control of a
tracked vehicle
5000 1
G1 (s) = G2 (s) =
s + 1000 s(s + 20)
EE 3CL4, §4
24 / 55
Tim Davidson Closed loop
Stability
Condition in terms of
poles
Condition in terms of
denominator
coefficients
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a Y (s) Ka G1 (s)G2 (s)
tracked vehicle T (s) = =
R(s) 1 + Ka G1 (s)G2 (s)(1 + K1 s)
Ka − 4080
Ka > 0 and K1 >
1020Ka
Note that for 0 < Ka < 4080, any positive K1 will stabilize
the loop, and some negative ones will, too.
For example, Ka = 100 and K1 = 0.05.
That pair gives a 2% settling time of 260ms
EE 3CL4, §4
26 / 55
Tim Davidson Reminder: Construction
Stability procedure
Condition in terms of
poles
Condition in terms of
Row k + 2 p1 p3 p5 ...
denominator
coefficients Row k + 1 q1 q3 q5 ...
Routh Hurwitz Row k r1 r3 r5 ...
condition
Basics
Disk drive example To compute r3 , multiply
Dealing with zeros
Zeros in first column • first element −1 −1
of previous row = q1 by
Zero rows
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Routh table
Zero rows
Using Routh
Row 5 1 2 11
Hurwitz for Row 4 2 4 10
design
Turning control of a Row 3 0← 6 0
tracked vehicle
Row 2 c1 10 0
Row 1 d1 0 0
Row 0 10 0 0
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Using Routh • The coefficients of the auxiliary polynomial appear in the row
Hurwitz for
design above the zero row
Turning control of a
tracked vehicle
• Let k denote the row number of the row above the zero row,
and let ck ,1 , ck ,2 , ck ,3 denote the coefficients in that row. The
auxiliary polynomial is constructed as
a(s) = ck ,1 sk + ck ,2 sk −2 + ck ,3 sk −4 + . . .
• Finally, we replace the zero row by the coefficients of the
derivative of the auxiliary polynomial; i.e., the zero row is
replaced by kck ,1 , (k − 2)ck ,2 , (k − 4)ck ,3
EE 3CL4, §4
32 / 55
Tim Davidson Zero row example
Stability • q(s) = s5 + 2s4 + 24s3 + 48s2 − 25s − 50 = 0
Condition in terms of
poles
Condition in terms of
denominator
• Construct table
coefficients
Row 5 1 24 −25
Routh Hurwitz
condition Row 4 2 48 −50
Basics
Disk drive example Row 3 0 0
Dealing with zeros
Zeros in first column
Zero rows
• Auxiliary polynomial: a(s) = 2s4 + 48s2 − 50
Using Routh
Hurwitz for This is actually a factor of q(s).
design
Turning control of a
tracked vehicle
Using quadratic formula, roots of a(s) are s2 = 1, −25
Hence roots of a(s) are s = ±1, ±j5
da(s)
• ds = 8s3 + 96s.
Replace zero row by these coefficients
Row 5 1 24 −25
Row 4 2 48 −50
Row 3 8 96
EE 3CL4, §4
33 / 55
Tim Davidson Zero row example, cont
Stability • Now complete the table in the usual way
Condition in terms of
poles
Condition in terms of
Row 5 1 24 −25
denominator
coefficients Row 4 2 48 −50
Routh Hurwitz
condition
Row 3 8 96
Basics
Disk drive example
Row 2 24 −50
Dealing with zeros
Zeros in first column
Row 1 112.7 0
Zero rows Row 0 −50
Using Routh
Hurwitz for
design • One sign change in first column.
Turning control of a
tracked vehicle Indicates one root in right half plane.
• Recall a(s) is a factor of q(s).
Indeed, by polyn division q(s) = (s + 2)a(s)
We have seen that roots of a(s) are ±1 and ±j5.
• Hence q(s) does indeed have one root with a positive
real part.
EE 3CL4, §4
35 / 55
Tim Davidson Turning control of a tracked
Stability vehicle
Condition in terms of
poles
Condition in terms of
denominator
coefficients
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Routh Hurwitz
condition
Basics Routh table
Disk drive example
Dealing with zeros
Zeros in first column
Row 4 1 17 Ka
Zero rows Row 3 8 K + 10
Using Routh Row 2 b3 Ka
Hurwitz for
design Row 1 c3
Turning control of a
tracked vehicle Row 0 Ka
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
For positive K ,
• stability region is between the blue solid curves
• desired steady-state error region is above the black
dashed curve and between the blue solid curves
• Design example: K = 70, a = 0.6, marked by + sign
EE 3CL4, §4
40 / 55
Tim Davidson Ramp response
Stability
Condition in terms of
poles
Condition in terms of
denominator
coefficients
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
• Could we have predicted the long settling time and large overshoot?
• We know that the settling time of each component of the response
is related to the real parts of the poles
EE 3CL4, §4
42 / 55
Tim Davidson Closed-loop poles and zeros
Stability
Condition in terms of
poles
Condition in terms of
denominator
coefficients
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
to be stable
EE 3CL4, §4
44 / 55
Tim Davidson Managing settling times, II
Stability • That means we want
Condition in terms of
poles
Condition in terms of
denominator
q̃(s) = q(s − σ)
coefficients
Routh Hurwitz
= an (s − σ)n + an−1 (s − σ)n−1 +
condition
Basics
· · · + a1 (s − σ) + a0
Disk drive example
Dealing with zeros
Zeros in first column
to be stable
Zero rows
Using Routh
• Using binomial theorem, (x + y )n = nk =0 kn x n−k y k , we can
P
Hurwitz for
design
Turning control of a write
q̃(s) = ãn sn + ãn−1 sn−1 + · · · + ã1 s + ã0
tracked vehicle
where kn = (n−k n!
)!k !
Routh Hurwitz • That means that we want poles to the left of −σ = −0.25
condition
Basics
Disk drive example
• q̃(s) ' s4 + 7s3 + 11.375s2 + (K + 2.9375)s + ã0 (K , a),
Dealing with zeros
Zeros in first column
where ã0 (K , a) = Ka − 0.25K − 1.3086
Zero rows
Using Routh
• Routh table
Hurwitz for
design Row 4 1 11.375 ã0 (K , a)
Turning control of a
tracked vehicle
Row 3 7 K + 2.9375
Row 2 b̃3 ã0 (K , a)
Row 1 c̃3
Row 0 ã0 (K , a)
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
EE 3CL4, §4
51 / 55
Tim Davidson Discussion
• Transient times have been reduced, but only a little bit
Stability
Condition in terms of • Unfortunately, not much room to do any better
poles
Condition in terms of
denominator
coefficients
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Routh Hurwitz
condition
Basics
Disk drive example
Dealing with zeros
Zeros in first column
Zero rows
Using Routh
Hurwitz for
design
Turning control of a
tracked vehicle
Routh Hurwitz • However, design problem now has three parameters, not
condition
Basics
two; zero pos’n (−a), gain (K ), and also pole pos’n (−b)
Disk drive example
Dealing with zeros • Hence desired parameter region is a volume, not an area
Zeros in first column
Zero rows
• Routh-Hurwitz procedure and resulting equations for
Using Routh
Hurwitz for boundaries of desired parameter space get even more
design
Turning control of a
complicated
tracked vehicle