Control Systems 2 Lecture 4: Sensitivity function limits Roy Smith 2016-4-13 4.1 Input-output controllability Control design questions: 1. How well can the plant be controlled? 2. What control structure should be used? 3. How might the process be changed in order to improve the the control? Ideally we want some idea of the answers to these questions without an exhaustive trial-and-error design approach. 2016-4-13 4.2 Input-output controllability Can we achieve the control design specifications? I ... with limited actuation authority; I ... in the presence of bounded disturbances; I ... in the presence of sensor noise; I ... in the presence of plant variations; I ... without exact knowledge of the plant. These questions depend only on properties of the plant. 2016-4-13 4.3 Scaling Scale the reference by R(ω): Define the error as e = y − R(ω)r with |r(ω)| ≤ 1. Scale G(s) and Gd (s) such that: Control objective For any disturbance, |d(ω)| ≤ 1, and any reference, |r(ω)| ≤ 1, ... make |e(ω)| ≤ 1 using an input |u(ω)| ≤ 1. For example: ( R R(ω) = 0 2016-4-13 if ω ≤ ωr if ω > ωr 4.4 “Perfect” control Gd (s) y + G(s) d y = G(s)u + Gd (s)d u “Perfect” control gives: y = Rr or e = Rr − y = 0. e = Rr − Gu − Gd d 2016-4-13 4.5 “Perfect” control (feedforward) Error: e = Rr − y = Rr − Gu − Gd d Feedforward solution: u = G−1 (s)Rr − G−1 (s)Gd (s)d Limitations: 2016-4-13 I G(s) has r.h.p. zeros (G−1 (s) is unstable). I G(s) has delays (G−1 (s) is acausal). I G(s) is strictly proper (G−1 (s) is unrealizable). I d is not known, measured, or predicted. I u will have a maximum control frequency. 4.6 “Perfect” control (feedforward) Feedforward solution: u = G−1 (s)Rr − G−1 (s)Gd (s)d Control objective requirements: |G−1 (jω)R(ω)| ≤ 1 =⇒ |G−1 (jω)Gd (ω)| ≤ 1 =⇒ |G(jω)| ≥ |R(jω)| for all ω |G(jω)| ≥ |Gd (jω)| for all ω 2016-4-13 4.7 “Perfect” control (feedback) Feedback solution: e = Rr − y = SRr − SGd d Ideally S(jω) = 0. When S ≈ 0, T ≈ 1, and the control actuation, u, is approximately that generated by “perfect” feedforward control. u = K(Rr − y) = KSRr − KSGd d = G−1 T Rr − G−1 T Gd d Control advantages Correct u (or close to correct) generated: 2016-4-13 I ... without having to invert G(s), I ... without exact knowledge of G(s), I ... without knowing d. 4.8 Sensitivity/complementary sensitivity S(s) + T (s) = = G(s)K(s) 1 + 1 + G(s)K(s) 1 + G(s)K(s) 1 + G(s)K(s) 1 + G(s)K(s) =1 for all s ∈ C. 2016-4-13 4.9 Bode sensitivity integral Given a loopshape, L(s), with: - relative degree of at least 2, - Np poles, pi , in the right-half plane. If the closed-loop is stable then, Np X Z ∞ π real(pi ) ln |S(jω)| dω = i=1 0 0 2016-4-13 if L(s) is unstable if L(s) is also stable 4.10 Bode sensitivity integral Z ∞ 0 ln |S(jω)| dω = 0 5 (stable example) Magnitude 1 10 + 1 log ω (rad/sec) ωB − 0.1 S(jω) 0.01 2016-4-13 4.11 Bode sensitivity integral Z ∞ 0 ln |S(jω)| dω = 0 5 (stable example) Magnitude 10 + 1 − S(jω) 20 ω (rad/sec) ωB 0.1 0.01 2016-4-13 4.12 Bode sensitivity integral imag j |S(jω)| > 1 −1 1 real |1 + L(jω)| L(jω) −j 2016-4-13 4.13 Bode sensitivity integral (with a right-half plane zero) Given a loopshape, L(s), with: - L(s) being proper, - one right-half plane zero at s = z0 , - Np poles, pi , in the right-half plane. If the closed-loop is stable then, Z ∞ 0 Np Y p i + z0 ln |S(jω)|w(z0 , ω) dω = π ln p i − z0 i=1 where the “weighting” function is: w(z0 , ω) = 2016-4-13 z02 2z0 2 1 = . + ω2 z0 (1 + (ω/z0 )2 ) 4.14 Bode sensitivity integral (with a right-half plane zero) Z ∞ 0 ln |S(jω)|w(z0 , ω) dω ≈ Z z0 ln |S(jω)| dω = 0 0 (stable case) Magnitude 2/z0 1/z0 log ω (rad/sec) z0 wz(jω) slope = -40dB/decade I “bad” S performance must happen before s = z0 . I Situation is worse with an unstable pole as well. 2016-4-13 4.15 Bode sensitivity integral (with a right-half plane zero) Lm (s) = 1 s+1 L(s) = Lm (s) 1−s s+1 imag j |S(jω)| > 1 −1 1 real Lm (jω) −j 2016-4-13 L(jω) 4.16 Bode sensitivity integral (with a right-half plane zero) k L(s) = s 2−s s+2 , k = 0.1, 0.5, 1.0, and 2.0. Magnitude 10 k=1 k = 0.5 1 k = 0.1 z0 k = 2 (unstable) 10 log ω (rad/sec) 0.1 0.01 2016-4-13 4.17 Bode sensitivity integral (r.h.p. pole and r.h.p. zero) Z ∞ 0 Np Y p i + z0 ln |S(jω)|w(z0 , ω) dω = π ln p i − z0 As pi −→ z0 2016-4-13 i=1 p i + z0 pi − z0 −→ ∞ 4.18 Interpolation conditions Stable closed-loop S(s) and T (s) For RHP-poles, pi , of L(s), T (pi ) = 1, S(pi ) = 0 for RHP-zeros, zi , of L(s), T (zi ) = 0, S(zi ) = 1 2016-4-13 4.19 Maximum modulus principle Given a function, f (s), analytic in the complex RHP (i.e. stable). Then, sup |f (s)| = sup |f (s)|. s=jω s∈RHP The maximum modulus is achieved on the jω axis. kf (s)kH∞ = sup |f (jω)| ≥ |f (s)| ω 2016-4-13 for all s ∈ RHP. 4.20 Weighted sensitivity peak Suppose G(s) has a RHP-zero, z. Suppose we also have a sensitivity weight, WS (s). Then for a closed-loop stable sensitivity function, S(s), kWS (s)S(s)kH∞ ≥ |WS (z)S(z)| = |WS (z)| (via maximum modulus) (via interpolation conditions) Performance requirements kWS (s)S(s)kH∞ < 1 =⇒ |WS (z)| < 1. 2016-4-13 4.21 Weighted complementary sensitivity peak Suppose G(s) has a RHP-pole, p. Suppose we also have a complementary sensitivity weight, WT (s). Then for a closed-loop stable sensitivity function, T (s), kWT (s)T (s)kH∞ ≥ |WT (p)T (p)| = |WT (p)| (via maximum modulus) (via interpolation conditions) Noise performance (& robustness) requirements kWT (s)T (s)kH∞ < 1 2016-4-13 =⇒ |WT (p)| < 1. 4.22 RHP poles and RHP zeros Suppose G(s) has Nz RHP zeros, zj , and Np RHP poles, pi . Then, kS(s)kH∞ ≥ max cj , Np Y |zj + p̄i | >1 cj = |zj − pi | i=1 kT (s)kH∞ ≥ max di , Nz Y |z̄j + pi | di = >1 |z j − pi | j=1 j i If the RHP pole and zero are close together these bounds are very large. 2016-4-13 4.23 Closed-loop bandwidth with a RHP zero Suppose G(s) has a real RHP-zero, z > 0. kWS (s)S(s)kH∞ ≥ |WS (z)| =⇒ |WS (z)| < 1. Say, WS (s) = s/M + ωB s + ωB A Substituting s = z implies, 1 ωB (1 − A) < z 1 − M For example: 2016-4-13 A = 0, M =2: ωB < z 2 4.24 Closed-loop bandwidth with a RHP pole Suppose G(s) has a real RHP-pole, p > 0. kWT (s)T (s)kH∞ ≥ |WT (p)| =⇒ |WT (p)| < 1. Say, WT (s) = s ωBT + 1 MT Substituting s = p implies, ωBT > p MT MT − 1 For example: MT = 2 implies that ωBT > 2p 2016-4-13 4.25 Hierarchy Difficult control problems (easier to harder): I G(s) stable and no r.h.p. zeros (Bode integral = 0). I G(s) stable and r.h.p. zero (constrained Bode integral = 0, maximum bandwidth limit) I G(s) unstable, no r.h.p. zero (Bode integral > 0, minimum bandwidth constraint) I G(s) unstable, r.h.p. zero and p < z, (Bode integral 0, min. and max. bandwidth constraints) I 2016-4-13 G(s) unstable, r.h.p. zero and z < p (all hope of any performance is gone). 4.26 Notes and references Skogestad & Postlethwaite (2nd Ed.) “Perfect” control sections, 5.1 & 5.4 Bode sensitivity integrals: section 5.2 kS(s)kH∞ and kT (s)kH∞ bounds section 5.3 Bode sensitivity integrals J. Freudenberg & D. Looze, “Right half plane poles and zeros and design trade-offs in feedback systems,” IEEE Trans. Auto. Ctrl., 30(6), pp. 555–565, 1985. 2016-4-13 4.27