Lecture Outline Systeem- en Regeltechniek II Lecture 8 – Frequency Domain Design Previous lecture: Bode plots, non-minimum-phase systems. Robert Babuška Today: • Bode’s gain-phase relation. Delft Center for Systems and Control Faculty of Mechanical Engineering Delft University of Technology The Netherlands • Neutral stability. • Gain and phase margin, performance specs. • Controller design. e-mail: r.babuska@dcsc.tudelft.nl www.dcsc.tudelft.nl/˜babuska tel: 015-27 85117 Robert Babuška 1 Delft Center for Systems and Control, TU Delft Robert Babuška Frequency Domain Methods Bode Diagrams 0 data (experiment) Phase (deg); Magnitude (dB) Bode plot -20 -30 -40 -5 0 -1 0 0 -1 5 0 -1 10 frequency response 2 Bode’s Gain-Phase Relation -10 transfer function Delft Center for Systems and Control, TU Delft 10 0 10 1 Frequency (rad/sec) Nyquist plot For any stable minimum-phase system, phase ∠G(jω) is uniquely related to magnitude |G(jω)|: Z 1 ∞ dM W (u)du ∠G(jω0) = π ∞ du where M = ln |G(jω)|, u = ln ω/ω0, W (u) = ctanh|u/2|. For a constant slope, we can approximate the above by: ∠G(jω0) ' n • Now we now how to sketch and plot Bode diagrams. • The next step is analysis of system properties and design. Robert Babuška Delft Center for Systems and Control, TU Delft π 2 where n is the slope ( 1 for 20 dB /dec, 2 for 40 dB /dec, etc). 3 Robert Babuška Delft Center for Systems and Control, TU Delft 4 Consequence of the Gain-Phase Relation Bode Plot: Closed-Loop Stability For open loop stable minimum-phase system, it is sometimes sufficient to look at the magnitude only. R(s) + E(s) - C(s) U(s) G(s) Y(s) This property can be used to derive a simple design rule for control. But first, we must be able determine, from the Bode plot, whether the system is stable! L(s) = G(s)C(s) Can we infer closed-loop stability from a Bode plot of the loop transfer function L(s)? Robert Babuška Delft Center for Systems and Control, TU Delft 5 Proportional Controller: Loop Transfer K>1 Y (s) = K G(s) E(s) For the Bode plot, the following holds: ∠G(jω) = ∠ (KG(jω)) (K is a real number) |G(jω)| = |K| · |G(jω)| (multiplication by a gain) 10 Delft Center for Systems and Control, TU Delft K<1 -2 10 0 10 2 10 4 shift the magnitude response of G(jω) by 20 log(K) phase does not change |G(jω)| dB = |K| dB + |G(jω)| dB Robert Babuška 6 Delft Center for Systems and Control, TU Delft Proportional Controller: Loop Transfer Magnitude L(s) = Robert Babuška 7 Robert Babuška Delft Center for Systems and Control, TU Delft 8 Example: DC Motor DC Motor: Open-Loop Bode Plot G(s) = Transfer function: Kt θ(s) = V (s) s[(Ls + R)(Js + b) + Kt2] J damping (friction) b = 0.1 Nms back emf Kt = 0.01 Nm/A resistance R = 1Ω inductance L = 0.5 H magnitude (dB) inertia of the rotor = 0.01 kg · m2 50 0 −50 −100 −150 −2 10 10 Delft Center for Systems and Control, TU Delft 9 Influence of Proportional Gain L(s) = KG(s) = 0 10 10 1 10 2 −100 −200 −300 −2 10 Robert Babuška −1 0 phase (deg) G(s) = 2 θ(s) = V (s) s(s + 10)(s + 2) 10 Robert Babuška −1 0 10 frequency (rad/sec) 10 1 10 2 10 Delft Center for Systems and Control, TU Delft Let’s See Whether Root Locus Helps . . . K ·2 s(s + 10)(s + 2) 15 10 Imag Axis 5 Use Matlab: sisotool(’bode’,G) 0 −5 −10 OK, the magnitude moves up and down with the gain and the phase does not change . . . −15 −12 −10 −8 −6 −4 Real Axis −2 Basic properties of RL: ∠G(s) = −180◦ . . . but, is there anything on the Bode plot that would hint on the stability of the closed loop? Robert Babuška Delft Center for Systems and Control, TU Delft 11 0 and 2 |KG(s)| = 1 Neutral stability: |KmaxG(jω)| = 0 dB and ∠G(jω) = −180◦ Robert Babuška Delft Center for Systems and Control, TU Delft 12 Back to the Bode Plot Point of Neutral Stability 100 magnitude (dB) System is stable if: |KG(jω)| < 0 dB at ∠G(jω) = −180◦ magnitude (dB) 100 0 −200 −1 10 10 0 10 1 2 3 10 −100 phase (deg) −100 −200 −300 −1 10 10 Robert Babuška 0 1 10 frequency (rad/sec) 2 0 10 1 10 2 10 3 −100 −200 −300 −1 10 3 10 10 0 10 0 phase (deg) 0 −200 −1 10 −100 Kmax|G(jω)| 10 13 Delft Center for Systems and Control, TU Delft Crossover Frequency and Stability Margins Robert Babuška 10 0 1 10 frequency (rad/sec) 10 Delft Center for Systems and Control, TU Delft 2 10 3 14 Crossover Frequency and Stability Margins 50 0 • The crossover frequency ωc is the frequency for which the loop TF has gain 0 dB. Gain margin -50 -100 • The gain margin (GM) is the factor (or amount dB) by which the loop gain can be raised before instability occurs. -150 0 -100 • The phase margin (PM) is the amount (in degrees) by which the phase exceeds 180◦ at ωc. Phase margin -200 -300 -2 10 Robert Babuška 10 -1 10 0 10 Delft Center for Systems and Control, TU Delft 1 2 10 15 Robert Babuška Delft Center for Systems and Control, TU Delft 16 Importance of Stability Margins Robustness: Example The margins tell us how far the closed-loop system is from the point of neutral stability. This indicates the robustness w.r.t. uncertainty in the plant model: • Gain margin: by what factor the total process gain can increase. • Phase margin: by how much the phase can decrease. Suppose our model is: 10 L̂(s) = 2 s + 0.4s + 1 while the true plant is: L(s) = and performance: • Phase margin: related to closed loop damping (overshoot). Relatively small mismatch in terms of step-response behavior, major difference in terms of closed-loop stability! • Crossover frequency: related to response speed (bandwidth). Robert Babuška 17 Delft Center for Systems and Control, TU Delft 10 (s2 + 0.4s + 1)(0.1s + 1) Robert Babuška Bode Plot of Model and True Plant Delft Center for Systems and Control, TU Delft 18 Closed-Loop Bandwidth Bode Diagram Bandwidth = frequency up to which the input is “well reproduced” at the output of the closed-loop system. 50 Magnitude (dB) 0 Defined as frequency ωbw at which the magnitude has an attenuation of 0.707 (3dB) – corresponds to 0.5 power gain. −50 −100 0 -3 dB −90 Magnitude −150 0 Phase (deg) System: G1 Phase Margin (deg): 7.59 Delay Margin (sec): 0.0401 At frequency (rad/sec): 3.3 Closed Loop Stable? Yes −180 System: G2 Phase Margin (deg): −10.1 Delay Margin (sec): 1.89 At frequency (rad/sec): 3.23 Closed Loop Stable? No −270 −1 10 Robert Babuška 0 10 1 10 Frequency (rad/sec) 10 2 Delft Center for Systems and Control, TU Delft 10 3 19 Robert Babuška Delft Center for Systems and Control, TU Delft 20 Bandwidth and Crossover Frequency Phase Margin and Overshoot The larger PM, the larger damping (less overshoot): Typically: ωc ≤ ωbw ≤ 2ωc ζ≈ The required speed of response (e.g., the settling time or rise time) can be expressed in terms of ωc. Recall: tr = 1.8/ωn PM 100 this holds up to PM = 60◦ See the Franklin et al. for a graphical relationship between the overshoot and PM (page 357). (for second-order dominant response). Robert Babuška Delft Center for Systems and Control, TU Delft 21 Robert Babuška Recall Specs for Second-Order Systems tr = tp = ts = Delft Center for Systems and Control, TU Delft 22 More Complex Plants 18 . ωn • System unstable for small K and stable for large K , e.g.,: π L(s) = K(s + 2) s2 − 1 ω n 1− ζ2 4.6 ζωn Mp = e − for • Conditionally stable systems (unstable for small and large K , stable for some intermediate values), e.g.,: ± 1% πζ 1− ζ L(s) = 2 K(s + 2) (s + 10)2(s + 1)(s − 1) In the sequel, we consider systems with no poles in RHP. Robert Babuška Delft Center for Systems and Control, TU Delft 23 Robert Babuška Delft Center for Systems and Control, TU Delft 24 The Basic Idea Bode Plots: Homework Assignments • Adjust the proportional gain to get the required crossover frequency and/or steady-state tracking error. • Read Sections 6.1 through 6.6, except for the Nyquist criterion. • If needed, use the derivative action to add phase in the neighborhood of ωc in order to increase the phase margin. • If needed, use the integral action to increase the gain at low frequencies in order to guarantee the required steady-state tracking error. Robert Babuška Delft Center for Systems and Control, TU Delft 25 • Work out examples in these sections and verify the results by using Matlab. • Reproduce the derivation of the frequency response as given on the overhead sheets. • Work out a selection of problems 6.3 through 6.9 and verify your results by using Matlab. Robert Babuška Delft Center for Systems and Control, TU Delft 26