Bode Diagram and Stability Consider the linear time-invariant system ( ẋ =Ax + Bu y =Cx + Du where A ∈ Rn×n , B ∈ Rn×m , C ∈ Rp×n and D ∈ Rp×m . Laplace transform yields the following representation ŷ(s) = G(s)û(s) where G(s) = C(sI − A)−1 B + D is a matrix rational function, called transfer function. By Cramér’s rule we see that the poles of G is the eigenvalues of A. We call G(iω) frequency function We can prove that if all poles of G(s) are in the left half-plane we have u(t) = sin(ω0 t) 1 after transient =⇒ y(t) = |G(iω0 )| sin(ω0 t + arg G(iω0 )) Bode diagram A Bode diagram consists of two figures, one showing amplitude curve and the other, phase curve as function of ω: • |G(iω)| amplitude curve in log-log-scale (often in dB) • arg G(iω), phase curve, in lin-log-scale. Why is Bode diagram good? Consider a series connection where G1 (s) = Magnitude Plot, G1 HsL= 1 Magnitude Plot, G2 HsL= s+1 0. Amplitude Amplitude -5. -10. -15. -20. -25. 0.1 1 1 1 , G2 (s) = . Then the Bode diagrams are s+1 s 10 60. 50. 40. 30. 20. 10. 0. -10. -20. 0.001 1 0. -20. 0.001 10 0.01 -60. -80. 10 0. -25. -50. -75. -100. -125. -150. -175. 0.001 0.1 1 10 Frequency 1 Phase Plot, GHsL= s 1 s Hs+1L -100. Phase Phase Phase -40. 1 0.1 Phase Plot, G2 HsL= -20. Frequency 20. -40. 0.01 1 s+1 1 s Hs+1L 60. Frequency 0. 0.1 Magnitude Plot, GHsL= s 40. Frequency Phase Plot,G1 HsL= 1 Amplitude 1.1 -120. -140. -160. 0.01 0.1 Frequency + 1 1 10 0.001 = 0.01 0.1 Frequency 1 10 1. Series connection of systems becomes simple –add the curves 2. It’s easy to draw the graph However, there are reasons to develop a method for drawing Bode diagrams manually. By drawing the plots by hand you develop an understanding about how the locations of poles and zeros effect the shape of the plots. With this knowledge you can predict how a system behaves in the frequency domain by simply examining its transfer function. On the other hand, if you know the shape of transfer function that you want, you can use your knowledge of Bode diagrams to generate the transfer function. 1.2 Drawing of Bode diagram In order to be able to read Bode diagram in design we need to understand how diagram is produced. The first task when drawing a Bode diagram by hand is to rewrite the transfer function so that all the poles and zeros are written in the form (1 + s/ω0 ). The reasons for this will become apparent when deriving the rules for a real pole. A derivation will be done using a simple transfer function, but it is also possible to do a more generic derivation. Let’s rewrite the transfer function: G(s) = 100 1 + s/1 1 + s/1 s+1 = 100 = 0.1 (s + 10)(s + 100) 10(1 + s/10)100(1 + s/100) (1 + s/10)(1 + s/100) The Magnitude Plot One way to transform multiplication into addition is by using the logarithm. Instead of using a simple logarithm, we will use a deciBel (named for Alexander Graham Bell). The relationship between a quantity, Q, and its deciBel representation, X, is given by: X = 20 log10 (Q) So if Q = 100 then X = 40; Q = 0.01 gives X = −40; X = 3 gives Q = 1.41; and so on. If we represent the magnitude of G(s) in deciBels we get 20 log10 (|G(iω)|) = 20 log10 0.1 + 20 log10 |1 + iω/1| − 20 log10 |1 + iω/10| − 20 log10 |1 + iω/100| The advantage of using deciBels (and of writing poles and zeros in the form (1 + s/ω0 )) are now revealed. The fact that the deciBel is a logarithmic term transforms the multiplication of the individual terms to additions. Another benefit is apparent in the last line that reveals just two types of terms, a constant term and terms of the form 20 log10 (|1 + iω/ω0 |). Plotting the constant term is trivial, however the other terms are not so straightforward. These plots will be discussed below. However, once these plots are drawn for the individual terms, they can simply be added together to get a plot for G(s). The Phase Plot If we look at the phase of the transfer function, we see much the same thing: The phase plot is easy to draw if we take our lead from the magnitude plot. First note that the transfer function is made up of four terms. If we want arg H(iω) = arg(0.1) + arg(1 + iω/1) − arg(1 + iω/10) − arg(1 + iω/100) Again there are just two types of terms, a constant term and terms of the form (1 + iω/ω0 ). Plotting the constant term is trivial; the other terms are discussed below. Making a Bode Diagram Following the discussion above, the way to make a Bode Diagram is to split the function up into its constituent parts, plot the magnitude and phase of each part, and then add them up. The following gives a derivation of the plots for each type of constituent part. 2 1.2.1 A simple real pole G(s) = 1 1 . Then G(iω) = . 1 + ωs0 1 + i ωω0 The frequency ω0 is called the break frequency, the corner frequency or the 3dB frequency. Magnitude s 12 |G(iω)| = −20 log10 + ω ω0 2 in dB Let’s consider three cases for the value of the frequency: Case 1. Low frequency case: ω ω0 . We can write an approximation for the magnitude of the transfer function s 2 ω 2 ≈ −20 log10 (1) = 0 −20 log10 1 + ω0 The low frequency approximation is shown in blue on the diagram below. Case 2. High frequency case: ω ω0 . We can write an approximation for the magnitude of the transfer function s s 2 2 ω ω ω −20 log10 12 + ≈ −20 log10 = −20 log10 ω0 ω0 ω0 The high frequency approximation is at shown in green on the diagram below. It is a straight line with a slope of −20 dB/decade going through the break frequency at 0 dB. That is, for every factor of 10 increase in frequency, the magnitude drops by 20 dB. Case 3. The break frequency: ω = ω0 At this frequency s 2 √ ω |G(iω)| = −20 log10 12 + ≈ −20 log10 2 ≈ −3dB ω0 This point is shown as a red circle on the diagram. To draw a piecewise linear approximation, use the low frequency asymptote up to the break frequency, and the high frequency asymptote thereafter. The resulting asymptotic approximation is shown highlighted in pink. The maximum error between the asymptotic approximation and the exact magnitude function occurs at the break frequency and is approximately 3 dB. The rule for drawing the piecewise linear approximation for a real pole can be stated thus: For a simple real pole the piecewise linear asymptotic Bode plot for magnitude is at 0 dB until the break frequency and then drops at 20 dB per decade (i.e., the slope is −20 dB/decade). Phase The phase of a single real pole is given by is given by ω ω arg G(iω) = − arg 1 + i = − arctan ω0 ω0 Let us again consider three cases for the value of the frequency: Case 1. Low frequency case: ω ω0 . At these frequencies We can write an approximation for the phase of the transfer function arg G(iω) ≈ − arctan 0 = 0rad 3 The low frequency approximation is shown in blue on the diagram below. Case 2. High frequency case: ω ω0 . We can write an approximation for the phase of the transfer function arg G(iω) ≈ − arctan(∞) = −π/2rad The high frequency approximation is at shown in green on the diagram below. It is a straight line with a slope at −90◦ . Case 3. The break frequency: ω = ω0 . At this frequency arg G(iω) = − arctan 1 = −π/4rad This point is shown as a red circle on the diagram. A piecewise linear approximation is not as easy in this case because the high and low frequency asymptotes don’t intersect. Instead we use a rule that follows the exact function fairly closely, but is also arbitrary. Its main advantage is that it is easy to remember. The rule can be stated as Follow the low frequency asymptote until one tenth the break frequency (0.1ω0 ) then decrease linearly to meet the high frequency asymptote at ten times the break frequency (10ω0 ). This line is shown above. Note that there is no error at the break frequency and about 5.7◦ of error at one tenth and ten times the break frequency. Example 1. A simple pole at 10 radians per second. The low frequency asymptote is the dashed blue line, the exact function is the solid black line, the cyan line represents 0. Example 2. A double pole at 30 radians per second. Note that the slope of the asymptote is 1 −40 dB/decade and the phase goes from 0 to −180◦ : G(s) = (1+s/30) 2 1.2.2 A real zero The piecewise linear approximation for a zero is much like that for a pole Consider a simple zero: G(s) = 1 + ωs0 4 Magnitude The development of the magnitude plot for a zero follows that for a pole. Refer to the previous section for details. The magnitude of the zero is given by ω |G(iω)| = 1 + i ω0 Again there are three cases: 1. At low frequencies, ω ω0 , the gain is approximately zero. 2. At high frequencies, ω ω0 , the gain increases at 20 dB/decade and goes through the break frequency at 0 dB. 3. At the break frequency, ω = ω0 , the gain is about 3 dB. The rule for drawing the piecewise linear approximation for a real zero can be stated thus: For a simple real zero the piecewise linear asymptotic Bode plot for magnitude is at 0 dB until the break frequency and then increases at 20 dB per decade (i.e., the slope is +20 dB/decade). Phase The phase of a simple zero is given by: ω ω arg G(iω) = arg 1 + i = arctan ω0 ω0 The phase of a single real zero also has three cases: 1. At low frequencies, ω ω0 , the phase is approximately zero. 5 2. At high frequencies, ω ω0 , the phase is 90◦ . 3. At the break frequency, ω = ω0 , the phase is 45◦ . The rule for drawing the phase plot can be stated thus: Follow the low frequency asymptote until one tenth the break frequency (0.1ω0 ) then increase linearly to meet the high frequency asymptote at ten times the break frequency (10ω0 ). Example 3. A simple zero at 30 radians per second. The low frequency asymptote is the dashed blue line, the exact function is the solid black line, the cyan line represents 0. 1.2.3 A Complex Conjugate Pair of Poles The magnitude and phase plots of a complex conjugate (underdamped) pair of poles is more complicated than those for a simple pole. Consider the transfer function: G(s) = ω02 = s2 + 2ζω0 s + ω22 1 s ω0 6 2 + 2ζ s ω0 ,0 < ζ < 1 +1 Magnitude. The magnitude is given by |G(iω)| = s 1− ω ω0 1 2 2 + 2ζ ωω0 v u 2 !2 2 u ω ω t = −20 log10 1− + 2ζ in dB ω0 ω0 2 Let’s consider three cases for the value of the frequency: Case 1. At low frequencies, ω ω0 . We can write an approximation for the magnitude of the transfer function |G(iω)| = −20 log10 (1) = 0 The low frequency approximation is shown in red on the diagram below. Case 2. At high frequencies, ω ω0 . We can write an approximation for the magnitude of the transfer function ω |G(iω)| = −40 log10 ω0 The high frequency approximation is at shown in green on the diagram below. It is a straight line with a slope of −40 dB/decade going through the break frequency at 0 dB. That is, for every factor of 10 increase in frequency, the magnitude drops by 40 dB. 7 Case 3. At the break frequency, ω = ω0 . It can be shown that a peak occurs in the magnitude plot near the break frequency. We make the approximation that a peak exists only when 0 < ζ < 0.5 and that the peak occurs at ω0 with height 1/(2ζ). To draw a piecewise linear approximation, use the low frequency asymptote up to the break frequency, and the high frequency asymptote thereafter. If ζ < 0.5, then draw a peak of amplitude 1/(2ζ). Draw a smooth curve between the low and high frequency asymptote that goes through the peak value. As an example ω0 = 10, ζ = 0.1, i.e. G(s) = 5.00 or 14dB. 100 s2 +2s+100 . The peak will have an amplitude of The resulting asymptotic approximation is shown as a black dotted line, the exact response is a black solid line. The rule for drawing the piecewise linear approximation for a complex conjugate pair of poles can be stated thus: For the magnitude plot of complex conjugate poles draw a 0 dB at low frequencies, go through a peak of height, |G(iω0 )| ≈ 1 = −20 log10 (2ζ), in dB 2ζ 8 at the break frequency and then drop at 40 dB per decade (i.e., the slope is −40 dB/decade). The high frequency asymptote goes through the break frequency. Phase The phase of a complex conjugate pole is given by is given by arg G(iω) = − arctan 2ζ ωω0 2 1 − ωω0 Let us again consider three cases for the value of the frequency: Case 1. At low frequencies, ω ω0 . At these frequencies we can write an approximation for the phase of the transfer function arg G(iω) ≈ − arctan(0) = 0rad The low frequency approximation is shown in red on the diagram below. Case 2. At high frequencies, ω ω0 . We can write an approximation for the phase of the transfer function arg H(iω) = −180◦ The high frequency approximation is at shown in green on the diagram below. It is a straight line at −180◦ . Case 3. At the break frequency, ω = ω0 . At this frequency arg G(iω) = −90◦ The asymptotic approximation is shown below, followed by an explanation. 9 A piecewise linear approximation is not easy in this case, and there are no hard and fast rules for drawing it. The most common way is to look up a graph in a textbook with a chart that shows phase plots for many values of ζ. We will use the approximation that connects the the low frequency asymptote to the high frequency asymptote starting at ω = ω5ζ0 and ending at ω = ω0 5ζ If ζ < 0.02, the approximation can be simply a vertical line at the break frequency. The rule for drawing phase of an underdamped pair of poles can be stated as Follow the low frequency asymptote at 0◦ until ω = ω5ζ0 then decrease linearly to meet the high frequency asymptote at −180◦ at ω = ω0 5ζ A Complex Conjugate Pair of Zeros Not surprisingly a complex pair of zeros yields results similar to that for a complex pair of poles. The differences are that the magnitude has a dip instead of a peak, the magnitude increases above the break frequency and the phase increases rather than decreasing. Example: The graph below corresponds to a complex conjugate zero with G(s) = s ω0 2 + 2ζ s ω0 + 1, ω0 = 10, ζ = 0.1 The dip in the magnitude plot will have a magnitude of 0.2 or −14 dB. 10 2 2.1 Bode diagram and stability Some useful concepts • The frequency ωc is called crossover frequency if |G(iωc )| = 1 • ϕm is called phase margin if ϕm = arg G(iωc ) − (180◦ ) • ωp is called phase cross-over frequency if arg G(iωp ) = −180◦ • Am is called amplitude (or gain) margin if Am = 11 1 |G(iωp )| Amplitude (gain) and phase margins Stability margin: |G(iω0 )| = 1, arg G(iω0 ) = −180◦ Amplitude margin: The gain margin is positive and thus the system is stable if the magnitude of G(iω) at the phase crossover is negative in dB. That is gain margin is measured below the 0dB line. If the gain margin is measured above the 0dB line, the gain margin is negative and the system is unstable. Phase margin: The phase margin is positive and the system is stable if the phase of G(iω) at the gain cossover is greater that −180◦ , i.e., the phase margin is measured above the −180◦ 12 axis. If the phase margin is measured below the −180◦ axis, the phase margin is negative and the system is unstable. A system is input/output stable if and only if the phase margin and gain margin are positive We summarize: Stability margin The characteristics of the closed control loop are evaluated with the aid of the Bode plot, using the expressions ”bandwidth” and ”peaking”. Resonant Peak. The resonant peak Gr is the maximum value of |G(iω)]. • Gr is indicative of the relative stability of a stable closed loop system. 13 • A large Gr corresponds to a large maximum overshoot for a step input. • Generally a desirable value for Gr is between 1.1 and 1.5. Resonant Frequency: The resonant frequency ωr is the frequency at which the peak resonance Gr occurs. Bandwidth: The bandwidth BW is the frequency at which |G(iω)| drops to 70.7% or 3dB (20 log10 √12 = −3dB) down from its zero frequency value. • The bandwidth is indicative of the transient response properties in the time domain. • A large bandwidth corresponds to faster rising time, since higher frequencies are more easily passed through the system • Bandwidth is indicative of noise-filtering characteristics and the robustness of the system. Example 4. Second order system: G(s) = Bandwidth is ωn2 s2 + 2ζωn s + ωn2 1 |G(iω)| = q (1 − s (1 − ω2 2 2 ) ωn + (2ζ ωωm )2 1 = √ = 0.707 ⇔ 2 ω2 2 ω 2 √ ) + (2ζ ) = 2 ωn2 ωm Solving this equation and take the positive sign in the solution we get the bandwidth q p ω = ωm (1 − 2ζ 2 ) + 4ζ 4 − 4ζ 2 + 2 To summarize: Bode diagram (open loop) ωc large ϕm small |Go (0)| = ∞ Bode diagram (closed loop) ωB large Gr large |Gc (0)| = 1 Step response (closed loop) fast settling Oscillating, badly dampered no stationary error Here is a comparison between time domain (step response of) and the frequency domain char1 − s/2 acterization of the system (1 + s)(1 + s/2 + s2 14 Bode diagram Step response Cecking th Bode plot You should always make sure that your final plot makes sense at both low and high frequencies. • Low frequency: At low frequency the response is determined by only the differentiators/integrators in the system. If the overall transfer includes a factor sn , thn he slope of the gain curve should be 20ndB/decade and the phase at low frequency should be 90n degrees. • High frequency: The high frequency behavior is determined by the number of poles, P and zeros Z. At high frequency the slope of the gain should be −20(P − Z)dB/decade and the phase should be at −90(P − Z) degrees. Note that the phase check only works when all of the system zeros and pole are in the left half of the s-plane, which is called minimum phase. If poles and zeros in the right half plane e.g. G1 (s) = |G1 (iω)| = |G2 (iω) = 1 s−a 1 and G2 (s) s+a then √ p 1 1 + a2 (the two transfer functions have two identical magnitude response) and arg G1 (iω) = arctan ω a arg G1 (iω) = − arctan ω a i.e. the phase response of the non-minimum phase system is opposite to that of the minimum phae system. 15