ECE4510/5510: Feedback Control Systems. 5 1 STABILITY ANALYSIS 5.1: Bounded-input bounded-output (BIBO) stability Asystemmaybe stable, neutrallyormarginallystable, or unstable. This can be illustrated using cones: Stable Neutral Unstable The cone in the stable configuration can be perturbed by nudging it from any direction, and its position will not change much. The cone in the neutral configuration can be nudged in the axial direction without changing its position much, but if it is nudged in the radial direction, it will roll and its position will change a lot. (The stability of a neutral system depends on the input.) The cone in the unstable position can be nudged from any direction, and its position will change a lot. We want stability because we don t want a small input (e.g., possibly disturbance, or a small change in the reference input) to cause the output to grow without bound (seem to become uncontrolled ). In system analysis, there are many ways to mathematically define and evaluate whether a system is stable.
ECE4510/ECE5510, STABILITY ANALYSIS 5 For LTI systems, all are basically the same, and equivalent to bounded-input bounded-output or BIBO stability. If the system s input is bounded by some positive constant 1 u(t) < 1 t then BIBO stability guarantees that the output will also be bounded by some (possibly different) positive constant y(t) < t. In the time domain, So, y(t) < iff stability. y(t) y(t) 1 h(τ)u(t τ)dτ h(τ)u(t τ)dτ h(τ) u(t τ) dτ h(τ) dτ. h(τ) dτ <. ThisisonetestforBIBO u(t) C y(t) Stable? Note: (h(t) 1(t)). Integrating the absolute value of a function can be very tricky. Sometimes it s easier to integrate a simpler function that gives an upper bound instead. Consider h(t) exp( t) sin(πt)1(t). IsthissystemBIBOstable?
ECE4510/ECE5510, STABILITY ANALYSIS 5 3 The blue line in the figure is h(t); and the green dotted line is h(t). To determine stability, we need to integrate to find the area under the green dotted line if this area is finite, then the system is stable. Finding the exact answer for this integral is hard. But,theintegral under the green dotted line is less than the integral under the red line. So, if the integral under the red line is finite, the system is stable. 0 e t dt e t 0 1. So, we have determined that the system is BIBO stable, and we didn t need to integrate a very challenging piecewise function. We can also evaluate BIBO stability in the Laplace domain: H(s) Y (s) R(s) m 1 (s z i) n 1 (s p m n. i) (assume poles unique) h(t) n k i e pit 1(t) i1 h(τ) dτ < iff R(p i )<0 i. (If poles are not distinct, h(t) will have terms for an mth order root. k (m 1)! t m 1 e p it h(t) h(t) exp( t)
ECE4510/ECE5510, STABILITY ANALYSIS 5 4 Same condition.) h(τ) dτ < iff R(p i )<0; Laplace-domain condition for stability: All poles in the transfer function must be in the open left hand plane. (i.e., none on jω axis.) EXAMPLE: T (s).ist(s) stable? s + 3s + T (s) (s + 1)(s + ), Roots at s 1, s. Stable! EXAMPLE: T (s) 10s + 4.IsT(s) stable? s 3 + s 11s 1 10(s +.4) T (s) (s + 1)(s 3)(s + 4), Roots at s 1, s +3, s 4. Unstable! EXAMPLE: T (s) s.ist(s) stable? s + 1 s T (s) (s j)(s + j), Roots at s ±j. MARGINALLY stable. Use input sin(t). Y (s) s 1 s + 1 s + 1 s (s + 1) y(t) 1 t sin(t)... unbounded. MARGINALLY stable unstable (bounded impulse response, but unbounded output for some inputs.)
ECE4510/ECE5510, STABILITY ANALYSIS 5 5 5.: Routh Hurwitz stability (cases 0 and 1) Factoring high-degree polynomials to find roots is tedious and numerically not well conditioned. Want other stability tests, and also MARGINS of stability. (1) Routh test () Root locus (3) Nyquist test (4) Bode stability margins Can you tell this is an important topic? In 1868, Maxwell found conditions on the coefficients of a transfer function polynomial of nd and 3rd order to guarantee stability. It became the subject of the 1877 Adams Prize to determine conditions for stability for higher-order polynomials. Routh won this prize, and the method is still useful. Routh test case 0 Consider the denominator a(s). nd order: a(s) s + a 1 s + a 0 (s p 1 )(s p ) s (p 1 + p )s + p 1 p. 3rd order: a(s) s 3 + a s + a 1 s + a 0 (s p 1 )(s p )(s p 3 ) [ ][ ] s (p 1 + p )s + p 1 p s p3
ECE4510/ECE5510, STABILITY ANALYSIS 5 6 s 3 (p 1 + p + p 3 )s + (p 1 p + p 1 p 3 + p p 3 )s p 1 p p 3. TREND: Stability none of the coefficients a i can be 0. Does this trend continue? a n 1 ( 1) sum of all roots. a n sum of products of roots taken two at a time. a n 3 ( 1) sum of products of roots taken three at a time.. a 0 ( 1) n product of all roots. Conclusions: 1. If any coefficient a i 0, notallrootsinlhp.. If any coefficient a i < 0, atleastonerootinrhp. TEST: If any coefficient a i 0, systemisunstable. EXAMPLE: a(s) s + 0s + 1. From conclusion (1), not all roots in LHP. Roots at s ±j. Marginally stable. EXAMPLE: a(s) s 3 + s 11s 1. From conclusion (), at least one root is in RHP. Roots at s 1, s 4, s +3. Unstable. EXAMPLE: a(s) s 3 + s + s + 8.
ECE4510/ECE5510, STABILITY ANALYSIS 5 7 We don t know yet if this system is stable or not. 1 Roots at s, s ± j 15.Unstable,buthowdowefindout without factoring? Routh test case 1 Once we have determined that ai > 0 i, weneedtorunthefull Routh test ( case 0 doesn t really count). Very mechanical, not intuitive. Proof difficult. Start with characteristic polynomial (denominator of closed-loop transfer function), a(s) s n + a n 1 s n 1 + +a 1 s + a 0. Form Routh array. First two rows are coefficients directly copied from a(s); Remaining rows are calculated as shown. s n a n a n a n 4 s n 1 a n 1 a n 3 a n 5 s n b 1 b s n 3 c 1 c. s 1 j 1 s 0 k 1 b 1 1 a n 1 b 1 a n 1 c 1 1 b 1 c 1 b 1 a n a n 1 a n a n 1 a n 1 a n a n 3 a n 4 a n 5 a n 3 b 1 b a n 1 a n 5 b 1 b 3 TEST: Number of unstable roots number of sign changes in left column.
ECE4510/ECE5510, STABILITY ANALYSIS 5 8 EXAMPLE: a(s) s 3 + s + s + 8. s 3 1 s 1 8 s 1 6 s 0 8 b 1 1 Two sign changes (1 6, EXAMPLE: a(s) s + a 1 s + a 0. s 1 a 0 c 1 1 6 1 1 (8 ) 6 1 8 1 8 6 0 1 (0 + 6 8) 8 6 6 8) TworootsinRHP. s 1 a 1 s 0 a 0 b 1 1 a 1 Stable iff a1 > 0, a 0 > 0. 1 a 0 a 1 0 1 (0 a 0 a 1 ) a 0 a 1 EXAMPLE: a(s) s 3 + a s + a 1 s + a 0. s 3 1 a 1 s a a 0 s 1 a 1 a 0 a s 0 a 0 b 1 1 a 1 a 1 a a 0 1 (a 0 a 1 a ) a c 1 1 b 1 a a 0 b 1 0 a 1 a 0 a 1 ( a 0 b 1 ) a 0. b 1 Stable iff a > 0, a 0 > 0, a 1 > a 0 a.
ECE4510/ECE5510, STABILITY ANALYSIS 5 9 5.3: Routh Hurwitz stability (cases and 3) Routh test case In the process of filling in the Routh array, we sometimes find an element in first column 0. This leads to a divide by zero computation in a subsequent step, which has an indeterminate result. Solution: Replace the zero in the left column with ±ɛ as ɛ 0. (Will get same result for +ɛ and ɛ.) EXAMPLE: a(s) s 5 + s 4 + s 3 + 4s + 11s + 10. b 1 1 1 4 1 (4 4) 0 s 5 1 11 s 4 4 10 s 3 0 6 new s 3 ɛ 6 s 1 ɛ 10 s 1 6 s 0 10 If ɛ>0, twosignchanges. If ɛ<0, twosignchanges. Two poles in RHP. b 1 c 1 1 ɛ c 1 ɛ d 1 ɛ 1 e 1 1 6 1 11 10 4 ɛ 6 10 ɛ 0 ɛ 6 1 10 ɛ 1 10 ɛ 6 0 1 (10 ) 6 1 1 (1 4ɛ) ɛ ɛ 1 (0 10ɛ) 10 ɛ ɛ 7 (10ɛ + 1 ɛ ) 6 1 (0 60) 10 6
ECE4510/ECE5510, STABILITY ANALYSIS 5 10 Routh test case 3 Sometimes an entire row in Routh array 0. This means that polynomial factors such that one factor has conjugate-mirror-roots, which can be configured as shown in the figure: I(s) I(s) I(s) R(s) R(s) R(s) In any case, system is unstable. ButhowmanyRHProots? Complete Routh array by making polynomial a1 (s) from last non-zero row in array. Poly has every second order of s only!! We do this in a reverse fashion from how we entered a(s) into the array in the first place. It turns out that a1 (s) is a factor of the original a(s). Itismissingsome orders of s, soisnotstable(by case0.) We want to see if it has roots in the RHP or only on the jω-axis. Replace zero row with coefficients from da 1 (s) ds and continue.
ECE4510/ECE5510, STABILITY ANALYSIS 5 11 EXAMPLE: a(s) s 4 + s 3 + 3s + s +. s 4 1 3 s 3 1 0 s 1 s 1 0 new s 1 s 0 No sign changes in Routh array. So, no RHP roots. Roots of a 1 (s) at s ±j. Marginally stable. b 1 1 1 1 3 1 b 1 1 1 1 0 c 1 1 1 1 1 d 1 1 1 0 1 0 a 1 (s) s + da 1 (s) s ds EXAMPLE: a(s) s 4 + 4 (Hard). s 4 1 0 4 s 3 0 0 new s 3 4 0 s 0 4 new s ɛ 4 s 1 16 ɛ s 0 4 Two sign changes. Therefore RHPpoles.Othertwo poles are mirrors in LHP. a 1 (s) s 4 + 4; b 1 1 1 0 4 4 0 b 1 4 1 4 4 0 c 1 1 4 0 ɛ ɛ 4 d 1 ɛ 16 ɛ 4 16 0 ɛ 0 4 da 1 (s) ds 16 ɛ 4 4s 3.
ECE4510/ECE5510, STABILITY ANALYSIS 5 1 5.4: Routh test as a design tool Consider the system: R(s) s + 1 s(s 1)(s + 6) Y (s) T (s) Y (s) R(s) 1 + s+1 s(s 1)(s+6) s+1 s(s 1)(s+6) (s + 1) s(s 1)(s + 6) + (s + 1) We might be interested in knowing for what values of the system is stable. Compute the denominator of the transfer function: Perform the Routh test s 3 1 6 s 5 s 1 4 30 5 s 0 a(s) s(s 1)(s + 6) + (s + 1) s 3 + 5s + ( 6)s +. b 1 1 1 6 5 5 c 1 1 b 1 5 b 1 0 1 ( 5( 6)) 5 (4 30)/5. 1 b 1 ( b 1 ) For stability of the closed-loop system, > 0, and > 30/4. Step response for different values of.
ECE4510/ECE5510, STABILITY ANALYSIS 5 13 Amplitude.5 1.5 1 0.5 0 5 13 7.5 EXAMPLE: R(s) 0.5 0 4 6 8 10 1 [ 1 + 1 ] T I s Time (sec.) 1 (s + 1)(s + ) Y (s) T (s) Y (s) R(s) T I s+ T I s(s+1)(s+) 1 + T I s+ T I s(s+1)(s+) a(s) TI s 3 + 3T I s + T I ( + )s +. T I s + T I s(s + 1)(s + ) + T I s +. s 3 T I T I ( + ) s 3T I s 1 T I ( + ) 3 s 0 b 1 1 3T I T I T I ( + ) 3T I c 1 1 b 1 3T I b 1 0 T I( + ) 3 1 ( b 1 ) b 1
ECE4510/ECE5510, STABILITY ANALYSIS 5 14 For stability of the closed-loop system, > 0 and TI > 0 and T I > 3( + ). Alternately, < 0 and TI < 0 and T I < for < < 0, (or 3( + ) instead T I > for < but this is a contradiction since the 3( + ) quotient is positive and T I is negative by assumption). 1.5 Amplitude 1 0.5 3, T I 0.5 1, T I 0.5 1, T I 0 0 4 6 8 10 1 Time (seconds)
ECE4510/ECE5510, STABILITY ANALYSIS 5 15 5.5: Advanced applications of the Routh test Note that the Routh test is not specifically a controls recipe. It is a geometric algorithm. It counts the number of roots of a polynomial that have R(s i ) 0. Modification #1 Suppose we want to ensure a settling-time specification (or some form of robust stability), so we want R(s i ) σ for all poles. Routh test doesn t apply directly; but, perform a change of variables: Let p s + σ.then,s i < σ corresponds to p i < 0. So, we can perform a Routh test on a(p) instead of a(s). EXAMPLE: Let T (s).forwhatvaluesof are all poles to s + 4s + the left of s 1? Note, σ 1, andweletp s + 1 or s p 1. T (p) (p 1) + 4(p 1) + p p + 1 + 4p 4 + p + p + 3. So, a(p) p + p + ( 3). FormtheRoutharray: p 1 ( 3) p 1 p 0 ( 3) If > 3, therealpartofallpolesof T (s) are less than 1. 5 4 3 1 0 1 Imaginary axis 1.5 1 0.5 0 0.5 1 1.5 Root locus Real axis 3
ECE4510/ECE5510, STABILITY ANALYSIS 5 16 Modification # When working with digital control systems, the complex frequency domain is represented by z insteadof s, and a system is stable if all poles of T (z) have magnitude strictly less than 1. The stability region is the unit circle in the z-plane. The Routh test does not apply directly. But, we can perform the change of variables (where α>0) z 1 + αs or s 1 ( ) z 1, 1 αs α z + 1 which is known as the bilinear transformation. We can show that this transformation maps the inside of the unit circle in the z-plane to the left-half s-plane. Let z re jθ.wehavestabilityifz < 1. So,wewanttoshowthatr < 1 produces R(s) <0. Substituting into the change of variables s 1 ( re jθ ) 1 1 ( re jθ 1 α re jθ + 1 α re jθ + 1 jr sin θ {}}{ 1 r 1 + re jθ re jθ α r + 1 + re jθ + re jθ. Note that: } {{ } r cos θ )( re jθ ) + 1 re jθ + 1
ECE4510/ECE5510, STABILITY ANALYSIS 5 17 When r 1, s is purely imaginary (translating the unit circle into the jω axis) When r < 1, therealpartofs is less than zero (translating the inside of the unit disc into the left-half s-plane) When r > 1, therealpartofs is greater than zero (translating the outside of the unit disc into the right-half s-plane). EXAMPLE: Let T (z) z + ( 0.5). We can see from inspection (for this simple example) that 0.5 < < 1.5 will result in a pole location that is between z 1 and z +1. But, let s perform the bilinear transformation and the Routh test. Choose α 1. T (s) T (z) z 1+s 1 s 1+s 1 s Form the (trivial) Routh array: + ( 0.5) (1 s) 1 + s + ( 0.5)(1 s) (1 s) (1.5 )s + ( + 0.5). s 1 (1.5 ) s 0 ( + 0.5) So, we have stability when < 1.5 and when > 0.5, asexpected.
ECE4510/ECE5510, STABILITY ANALYSIS 5 18 5.6: Internal stability BIBO stability requires that the output be bounded for every possible bounded input. However, a system may be input-output stable and still have unbounded internal signals. The issue is internal stability. Consider the following diagram: W (s) R(s) E(s) D(s) U(s) G(s) Y (s) We can find the following four transfer functions: Y (s) R(s) Y (s) W (s) D(s)G(s) 1 + D(s)G(s) G(s) 1 + D(s)G(s). U(s) R(s) D(s) 1 + D(s)G(s) U(s) W (s) 1 1 + D(s)G(s). For internal stability, all four of these transfer functions must be stable. EXAMPLE: Let G(s) 1 s 1 Then, Y (s) R(s) and D(s) s 1 s + 1. D(s)G(s) 1 + D(s)G(s) s 1 (s 1)(s+1) 1 + s 1 (s 1)(s+1)
ECE4510/ECE5510, STABILITY ANALYSIS 5 19 s 1 (s 1)(s + 1) + (s 1) 1 s + 1 + 1 1 s +. This system passes the test for BIBO stability. However, which is unstable. Y (s) W (s) G(s) 1 + D(s)G(s) 1 s 1 1 + s 1 (s 1)(s+1) s + 1 (s 1)(s + 1) + (s 1) s + 1 (s 1)(s + ), Therefore, this system is not internally stable. In this case, any (even very tiny) amount of disturbance will cause the output y(t) to grow without bound. The feedback will not help. This brings up the point that it is important to avoid bad cancellations of pole-zero pairs! We cannot stabilize a system by canceling an unstable pole with a compensator zero. We will see the same idea again from a different perspective when we look at root-locus design.