Intro to Frequency Domain Design MEM 355 Performance Enhancement of Dynamical Systems Harry G. Kwatny Department of Mechanical Engineering & Mechanics Drexel University
Outline Closed Loop Transfer Functions The gang of four Sensitivity functions Traditional Performance Measures Time domain Frequency domain Stability & Robustness Introduction role of sensitivity functions Nyquist Traditional gain/phase margins
0/4/208 Closed Loop Transfer Functions
Closed Loop Transfer Functons error control d disturbance r - G c u G p y output d 2 reference p c ( ) ( ) Y = G U + D U = G R Y D E = R Y 2 noise
Transfer Functions Output GG G GG Ys () = Rs () D() s + D() s + GG + GG + GG Error p c p p c 2 p c p c p c G GG Es () = Rs () D() s + D() s + GG + GG + GG Control p p c 2 p c p c p c G GG G U() s = R() s D () s D () s + GG + GG + GG c p c c 2 p c p c p c
Gang of Four Outputs Inputs Output Error Control Reference GG p c + GG p c Gc + GG p c + GG p c Disturbance Noise Gp G GG p p c + GG + GG + GG p c GG p c GG p c Gc + GG + GG + GG p c p p c c p p c c
Sensitivity Functions [ ] [ ] [ ] E() s = I + L R() s I + L G D () s + I + L LD () s where L: = GG p [ ] 2 sensitivity function: S: = I + L command error complementary sensitivity c function: For SISO systems Bode derived: dt T dl L = dt dl { 2 [ L] L [ L] } [ L T = + + + = + + [ L] L L] = + = change in command S p L [ + L] [ ] T : = I + L L with respect to change in L L command output transfer function (normalized) output
0/4/208 Traditional Performance Criteria
Traditional Performance ~ Time Domain ultimate error, limit of e(t) as t approaches infinity rise time, T r, usually defined as the time to get from 0% to 90% of its ultimate (i.e., final) value. settling time, T s, the time at which the trajectory first enters an ε-tolerance of its ultimate value and remains there (ε is often taken as 2% of the ultimate value). peak time, T p, the time at which the trajectory attains its peak value. peak overshoot, OS, the peak or supreme value of the trajectory ordinarily expressed as a percentage of the ultimate value of the trajectory. An overshoot of more than 30% is often considered undesirable. A system without overshoot is overdamped and may be too slow (as measured by rise time and settling time).
TTrr rise timettpp peak timettss settling time Traditional Performance ~ Time Domain Cont d y p.4 Im.2 α degree of stability, decay rate /α 2ε 0.8 0.6 ideal region for closed loop poles θ damping ratio θ = sin Re ρ 0.4 0.2 T r T T p s rise time peak time settling time 2 4 6 8 0 2 4 t T r T p T s Time response parameters Ideal pole locations
Bode Plot Given any transfer function describing a SISO system Y s = GsU s ( ) ( ) ( ) Suppose the input is a sinusoid u t = Asin ωt, ( ) ( ) then the output is a sinusoid y t = Bsin ωt+ θ ( ) ( ) B = G jω A, θ = G jω ( ) ( )
Traditional Performance ~ Frequency Domain Sensitivity Complementary sensitivity Desired Altitude - 2 s +.5s+ 0.5 K s disturbance ( 20s+ )( 0s+ )( 0.5s+ ) V-22 Osprey altitude control K=280
Sensitivity Functions, Cont d For unity feed back systems: S is the error response to command transfer function T is the output response to command transfer function ( ) Suppose L s is strictly proper m< n, then lim S( jω ) = lim = ω + L j ω lim S ( jω ) ω 0 ω 0 ( jω ) ω 0 ω 0 ( ω) = lim = + c L( jω ) ( ω) L( jω ) ( ω) L( jω ) L j lim T( jω ) = lim = 0 ω + ω limt 0 type L << type L= 0 L j type L = lim = + c type L= 0 We would like S=0 We would like T= A system is of type p if the transfer function has p free integrators in the denomintor, i.e. m m s + am s + + a0 L( s) = k s p s n p b s n p b ( + n p + + 0) L
Traditional Performance ~ Frequency Domain Bandwidth Definitions Sensitivity Function (first crosses / 2=0.707~-3db from below): { v S j 2 [0, v) } ω = max : ( ω) < ω BS v Complementary Sensitivity Function crosses ω BT 2 from above) = min{ v : T( jω) < 2 ω (, v ) } v Crossover frequency { v L j v } ω = max : ( ω) ω [0, ) c v (highest frequency where T
Example: Osprey Bandwidth Complementary sensitivity Open loop Sensitivity
Interpretation of Bode Plot G( s) Yresponse to input U: E( s) = GsU ( ) ( s) ( ω) = ( ω) ( ω) ( ω) = ( ω) ( ω), ( ω) = ( ω) + U ( jω) Any transfer function: Output Y j G j U j Y j G j U j Y j G j e sin ( ωt) 0.00 t 0. t e MAGNITUDE 0.0 0.05 0. 0.5 5 0 40 MAGNITUDE 0.0 0.05 0. 0.5 5 0 20 20 0 db 0 db 0-20 -40 0.0 0.05 0. 0.5 5 0 rad sec input frequency distribution -0-20 0.0 0.05 0. 0.5 5 0 rad sec
A Fundamental Tradeoff [ ] [ ] Note that + L + + L L= S + T = Making S small improves tracking & disturbance rejection but makes system susceptible to noise S T : ( ) Es () = SsRs () () SsG () s D() s+ TsD () () s Typical design specifications S T ( jω ) < < ω [ 0, ω ] ( jω) << ω [ ω, ] And, there are other limitations. 2 0 2 ω > ω 2
Cauchy Theorem s-plane F(s) F-plane Any function of a complex number can be viewed as a map of points in one complex plane to another Theorem (Cauchy): Let C be a simple closed curve in the s-plane. F s is a rational function, having neither poles nor zeros on C. If C ( ) image of C under the map F s, then Z = P N where N the number of counterclockwise encirclements of the origin by C as s traverses C once in the clockwise direction. C ( ) ( ) C =Image(C) is the Z the number of zeros of F s enclosed by C, counting multiplicities. P the number of poles of F s enclosed by C, counting multiplicities. ( )
Nyquist return difference Sensitivity function Take F(s)=+L(s) (note: F=S - ) Choose a C that encloses the entire RHP Map into L-plane instead of F-plane (shift by -) X s-plane X s-plane L( s) L-plane X R X R X X Typical Nyquist contours Image of Nyquist contour
Nyquist Theorem Theorem (Nyquist): If the plot of L(s) (i.e., the image of the Nyquist contour in the L-plane) encircles the point -+j0 in the counterclockwise direction as many times as there are unstable open loop poles (poles of L(s) within the Nyquist contour) then the feedback system has no poles in the RHP. Z = P N closed loop poles in RHP = open loop poles in RHP - cc encirclements of -
Example X I s-plane R II L( s) L-plane X III ( ) L s = 2 2 ( s+ p)( s + 2ζω0s+ ω0 ) jθ ( ρ ) I: s = jω L jω =, 0 < ω < ( ) 2 2 ( jω + p)( ω + 2ζω0jω + ω0 ) jθ π π II: s = ρe, ρ, = 2 2 L e = 0 III: s = jω, III I jθ 2 j2θ jθ 2 ( ρ e + p )( ρ e + 2ζωρ e + ω ) * X ρ
Example 2 ( ) L s = 2 2 ( + 2ζω0s+ ω0 ) s s X X X I IV III 2 2 ( + j2 0 + 0 ) 2 2 2 ( + 0 + 0 ) * 2 2 2 ( + 0 + 0 ) s-plane R I: s = jω L( jω) =, 0 < ω < jω ω ζω ω ω jθ π π II: s = ρe, ρ, θ = 2 2 jθ L( ρ e ) = 0 jθ j θ jθ ρ ρ e ρ e 2ζω ρ e ω III: s = jω, III I jθ π π IV : s = εe, ε, θ = 2 2 jθ L( ε e ) = jθ j θ jθ ε e ε e 2ζω ε e ω εω II ε 0 2 0 e L( s) jθ L-plane
Example 3 ( ) G s = ( ) ( 2 + 2 0. s+ ) s s >> s=tf( s ); >> G=/(s*(s^2+2*0.*s+)); >> nyquist(g) >> s=tf( s ); >> G=/((s+0.0)*(s^2+2*0.*s+)); >> nyquist(g)
Gain & Phase Margin Gain margin 0 LL jjjj γ m Gain, db 0-0 γ m 0.0 0. frequency 0 Phase margin φ m Phase, deg -80 φ m LL jjjj Nyquist plot L( jω ) Assumption: the nominal system is stable. Bode plot
Robustness From Sensitivity Functions M M Sensitivity peaks are related to gain and phase margin. Sensitivity peaks are related to overshoot and damping ratio. S T = max S( jω) ω = max T( jω) ω Unit circle centered at - Im L plane S > S < = ρ = + L= + ρ ( ) jθ S e L e jθ S - = a a L( jω) Re constant S prescribes circle S = + L
Example: Osprey Sensitivity function plots for K=280, 500, 000 MAGNITUDE 0. 0.5 5 0 50 0 db -20-40 -60 0. 0.5 5 0 50 rad sec
Example: Osprey K=280 5 Increased gain yields higher bandwidth (and reduced settling time) but higher sensitivity peak (lower damping ratio and more overshoot). 2.5-2.5-5 -7.5 2 4 6 8 0 K=000
V-22 with PID disturbance Desired Altitude - K s 2 +.5s+ 0.5 s ( 20s+ )( 0s+ )( 0.5s+ )
V-22 with PID db 20 0 0-0 -20-30 MAGNITUDE 0.05 0. 0.5 5 0 0.05 0. 0.5 5 0 rad sec db 20 0-20 -40-60 MAGNITUDE 0.05 0. 0.5 5 0 0.05 0. 0.5 5 0 rad sec db -40-50 -60-70 -80-90 -00 MAGNITUDE 0.05 0. 0.5 5 0 0.05 0. 0.5 5 0 rad sec db 70 50 60 40 30 20 0 0 MAGNITUDE 0.05 0. 0.5 5 0 0.05 0. 0.5 5 0 rad sec Complementary sensitivity sensitivity
V-22 with PID >> s=tf('s'); >> G=280*((s^2+.5*s+0.5)/s) /((20*s+)*(0*s+)*(0.5*s+)); >> margin(g) Notice that gain margin is negative because system loses stability when gain drops.
V-22 PID+Lead disturbance Desired Altitude - K 2 s s s +.5 + 0.5 + 0. s s+ ( 20s+ )( 0s+ )( 0.5s+ )
V-22 PID+Lead Notice that sensitivity peak is reduced from 20 db to 0 db Complementary sensitivity Sensitivity MAGNITUDE 0.05 0. 0.5 5 0 MAGNITUDE 0.05 0. 0.5 5 0 5 0 db 0-5 -0-5 0.05 0. 0.5 5 0 rad sec db -20-40 -60 0.05 0. 0.5 5 0 rad sec -60 MAGNITUDE 0.05 0. 0.5 5 0 80 MAGNITUDE 0.05 0. 0.5 5 0 db -70-80 db 60 40-90 20 0.05 0. 0.5 5 0 rad sec 0 0.05 0. 0.5 5 0 rad sec Disturbance to output K=50 Command to control
V-22 PID+Lead Gain margin is infinite because the system is never unstable for any K>0.
Summary Need to consider 2-4 transfer functions to fully evaluate performance Bandwidth is inversely related to settling time Sensitivity function peak is related to overshoot and inversely to damping ratio Gain and phase margins can be determined from Nyquist or Bode plots Sensitivity peak is inversely related to stability margin Design tools: Root locus helps place poles Bode and/or Nyquist helps establish robustness (margins) & performance (sensitivity peaks)