Topic #20 16.31 Feedback Control Systems Closed-loop system analysis Bounded Gain Theorem Robust Stability
Fall 2007 16.31 20 1 SISO Performance Objectives Basic setup: d i d o r u y G c (s) G(s) n control error: where e = y r = Sr T n + SGd i + Sd o L = GG c, S = (I + L) 1, T = L(I + L) 1 For good tracking performance of r (typically low frequency), require S(jω) small 0 ω w 1 To reduce impact of sensor noise n (typically high frequency), require T (jω) small ω w 2 Since T (s) + S(s) = I s, then we cannot make both S(jω) and T (jω) small at the same frequencies. Design constraint
Fall 2007 16.31 20 2 SISO Design Approaches There are two basic approaches to design: Indirect that works on L itself Direct that works on S and T Indirect. Note that If L(jω) 1 S L 1 ( S 1), T 1 If L(jω) 1 S 1, T L(T 1) So we can convert the performance requirements on S, T into specifications on L (A) High loop gain Good command following & dist rejection (B) Low loop gain Attenuation of sensor noise. Must be careful when L(jω) 1, require that arg L ±180 to maintain stability
Fall 2007 16.31 20 3 Direct approach works with S and T. Since e = y r, then for perfect tracking, we need e 0 want S 0 since e = Sr +... Sufficient to discuss the magnitude of S because the only requirement is that it be small. Direct approach is to develop an upper bound for S and then test if S is below this bound. 1 S(jω) < Ws (jω) or equivalently, whether W s (jω)s(jω) < 1, ω? Typically pick simple forms for weighting functions (first or second order), and then cascade them as necessary. Basic one: s/m + ω B W s (s) = s + ωb A ω Figure 1: Example of a standard performance weighting filter. Typically have A 1, M > 1, and 1/W s 1 at ω B
Fall 2007 16.31 20 4 Example: Simple system with G c = 1 150 G(s) = (10s + 1)(0.05s + 1) 2 Require ω B 5, a slope of 1, low frequency value less than A = 0.01 and a high frequency peak less than M = 5. s/m + ω B W s = s + ωb A Figure 2: Want SW p < 1, so we just fail the test Graph testing is OK, but what we need is a an analytical way of determining whether W s (jω)s(jω) < 1, ω Avoids a graphical/plotting test, which might be OK for analysis (a bit cumbersome), but very hard to use for synthesis
Fall 2007 16.31 20 5 Limits of Performance When considering performance goals, it is good to keep in mind that there are fundamental limits that must be respected. Captured via Bode s Sensitivity Integral: Given the LTF L(s) for which there are at least 2 more poles than zeros and N p RHP poles at locations p i, then the closed-loop sensitivity function must satisfy: N p ln S(jω) dω = π R(p i ) > 0 0 i=1 Obviously for stable systems/controllers, the constraint reduces to ln S(jω) dω = 0 0 which implies that the area of sensitivity reduction (ln S(jω) < 0) must equal the area of sensitivity increase (ln S(jω) > 0). So the benefits and costs of feedback are balanced. Commonly known as the waterbed effect
Fall 2007 16.31 20 6 Suppose instead that L(s) has at least one more pole than zeros, a RHP zero (could be a real zero at z or a complex pair at z = x ± jy), and N p RHP poles at p i, then the closed-loop sensitivity function must satisfy: ln S(jω) W (z, ω) dω = π ln B 1 p (z) where 0 B p (z) = and if p = q + jr, p = q jr N p p i z p + z 2z W (z, ω) = if z real z 2 + ω 2 x x W (z, ω) = + otherwise x 2 + (y ω) 2 x 2 + (y + ω) 2 Interesting result: If S(jω) α < 1 ω Ω = [0, ω c ], then z RHP ( ) W (z,ω) 1 π W (z,ω) B 1 π π W (z,ω) max S(jω) p (z) ω α where W (z, Ω) = Ω W (z, ω) dω. i=1 Note that max ω S(jω) is large if: ω c is very large, since then W (z, Ω) π α 1 NMP zero and unstable pole close, since (p i +z)/(p i z) 1. Formula captures performance trade-offs/impact associated with RHP poles and zeros in the LTF. i
Fall 2007 16.31 20 7 Figure 3: Waterbed effect for stable L(s) Figure 4: Waterbed effect for NMP L(s). NMP zeros greatly influence the push-pop/waterbed effect, indicating that they have a significant impact on the performance limitations.
Fall 2007 16.31 20 8 Bounded Gain There exist very easy ways of testing (analytically) whether S(jω) < γ, ω Critically important test for robustness SISO Bounded Gain Theorem: Gain of generic stable system ẋ(t) = Ax(t) + Bu(t) y(t) = Cx(t) + Du(t) is bounded in the sense that G max = sup G(jω) = sup C(jωI A) 1 B + D < γ ω if and only if (iff) 1. D < γ ω 2. The Hamiltonian matrix H = [ A + B(γ 2 I D T D) 1 D T C B(γ 2 I D T D) 1 B T C T (I + D(γ 2 I D T D) 1 D T )C A T C T D(γ 2 I D T D) 1 B T has no eigenvalues on the imaginary axis. ] Note that with D = 0, the Hamiltonian matrix is [ ] 1 A γ 2 BB T H = C T C A T Eigenvalues of this matrix are symmetric about the real and imaginary axis (related to the SRL)
Fall 2007 16.31 20 9 So sup ω G(jω) < γ iff H has no eigenvalues on the jω-axis. An equivalent test is if there exists a X 0 such that 1 A T X + XA + C T C + XBB T X = 0 γ 2 and A + γ 1 2 BB T X is stable. This is another Algebraic Riccati Equation (ARE) Typical application: since e = r y, then for perfect tracking, we want e 0 want S 0 since e = Sr +... Sufficient to discuss the magnitude of S because the only requirement is that it be small. Direct approach is to develop an upper bound for S and then test if S is below this bound. 1 S(jω) < Ws (jω) ω? or equivalently, whether W s (jω)s(jω) < 1, ω Note: The state-space tests can also be used for MIMO systems but in that case, we need different frequency domain tests.
Fall 2007 16.31 20 10 Typically pick simple forms for weighting functions (first or second order), and then cascade them as necessary. Basic one: s/m + ω B W s (s) = s + ωb A 10 1 10 0 ω b M 1/W s 10 1 A 10 2 10 2 10 1 10 0 10 1 10 2 Freq (rad/sec) Figure 5: Example of a standard performance weighting filter. Typically have A 1, M > 1, and 1/W s 1 at ω B Thus we can test whether W s (jω)s(jω) < 1, ω by: Forming a state space model of the combined system W s (s)s(s) Use the bounded gain theorem with γ = 1 Typically use a bisection section of γ to find W s (jω)s(jω) max
Fall 2007 16.31 20 11 Continue example: Simple system with G c = 1 150 G(s) = (10s + 1)(0.05s + 1) 2 Require ω B 5, a slope of 1, low frequency value less than A = 0.01 and a high frequency peak less than M = 5. s/m + ω B W s = s + ωb A In this case γ = 1.02, so we just fail the test. 10 1 Sensitivity and Inverse of Performance Weight 10 0 Magnitude 10 1 1/W s S W s 10 2 S γ= 1.0219 10 3 10 2 10 1 10 0 10 1 10 2 Frequency Figure 6: Want W s S < 1, so we just fail the test
Fall 2007 16.31 20 12 Sketch of Proof Sufficiency: consider γ = 1, and assume D = 0 for simplicity Now analyze properties of this special SISO closed-loop system. r u y y 2 G(s) G T ( s) + [ ] [ ] A B C T G(s) := and G (s) = G T A T ( s) := C 0 B T 0 Note that u/r = S(s) = [1 G G] 1 Now find the state space representation of S(s) ẋ 1 = Ax 1 + B(r + y 2 ) = Ax 1 + BB T x 2 + Br ẋ 2 = A T x 2 C T y = A T x 2 C T Cx u = r + B T x 2 [ ] [ ] [ ] [ ] ẋ 1 A BB T x 1 B = ẋ 2 C T C A T + r x 2 0 [ ] u = [ 0 B ] T x 1 + r x 2 poles of S(s) are contained in the eigenvalues of the matrix H.
Fall 2007 16.31 20 13 Now assume that H has no eigenvalues on the jω-axis, S = [I G G] 1 has no poles there I G G has no zeros there So I G G has no zeros on the jω-axis, and we also know that I G G I > 0 as ω (since D = 0). Together, these imply that I G T ( jω)g(jω) = I G G > 0 ω For a SISO system, condition (I G G > 0) is equivalent to which is true iff G(jω) < 1 ω G max = max G(jω) < 1 ω Can use state-space tools to test if a generic system has a gain less that 1, and can easily re-do this analysis to include bound γ.
Fall 2007 16.31 20 14 Issues Note that it is actually not easy to find G max directly using the state space techniques It is easy to check if G max < γ So we just keep changing γ to find the smallest value for which we can show that G max < γ (called γ min ) Bisection search algorithm. Bisection search algorithm (see web) 1. Select γ u, γ l so that γ l G max γ u 2. Test (γ u γ l )/γ l < TOL. Yes Stop (G max 1 2(γ u + γ l )) No go to step 3. 3. With γ = 1 (γ l + γ u ), test if G max < γ using λ i (H) 2 4. If λ i (H) jr, then set γ l = γ (test value too low), otherwise set γ u = γ and go to step 2. This is the basis of H control theory.