MEM 355 Performance Enhancement of Dynamical Systems Frequency Domain Design Harry G. Kwatny Department of Mechanical Engineering & Mechanics Drexel University 5/8/25
Outline Closed Loop Transfer Functions The gang of four Sensitivity functions Traditional Performance Measures Time domain Frequency domain Robustness Nyquist Traditional gain/phase margins
Closed Loop Transfer Functons d r G c u G p y d 2 p c ( ) ( ) Y = G U + D U = G R Y D E = R Y 2
Transfer Functions Con t Output Y() s = I+ Gp() sgc() s Gp() sgc() srs () I+ Gp() sgc() s Gp() sd() s + I+ Gp() sgc() s Gp() sgc() sd2() s Error E() s = I + Gp() s Gc() s R() s I + Gp() s Gc() s Gp() s D() s + I+ Gp() sgc() s Gp() sgc() sd2( s) Control U() s = Gc() s I + Gp() s Gc() s R() s Gc() s I + Gp() s Gc() s Gp() s D() s Gc() s I + Gp() s Gc() s D2() s
Gang of Four Reference Disturbance Noise Output Error Control GG p c + GG p c Gc + GG p c + GG p Gp Gp GG 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 c
Sensitivity Functions [ ] [ ] [ ] E() s = I + L R() s I + L GD () s + I + L LD () s where L: = GK sensitivity function: [ ] S: = I + L 2 { [ L] L [ L] } complementary sensitivity function: For SISO systems Bode derived: dt T dt L = dl L dl T = + + + = [+ L] L + = [ + L] = S L [ + L] 2 [ ] T : = I + L L L
Traditional Performance ~ Time Domain rise time, T r, usually defined as the time to get from % to 9% 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 3% is often considered undesirable. A system without overshoot is overdamped and may be too slow (as measured by rise time and settling time).
Traditional Performance ~ Time Domain Cont d y p.4 Im.2 α degree of stability, decay rate /α 2ε.8.6 ideal region for closed loop poles θ damping ratio θ = sin Re ρ.4.2 2 4 6 8 2 4 t T r T p T s Time response parameters Ideal pole locations
Traditional Performance ~ Frequency Domain db deg MAGNITUDE. 2.2.5 2 5 5-5 - -5..2.5 2 rad êsec PHASE..2.5 2-25 -5-75 - -25-5 -75..2.5 2 rad êsec Complementary sensitivity Desired Altitude - 2 s +.5s+.5 K s disturbance db deg MAGNITUDE..2.5 2 2 - -2-3 -4-5..2.5 2 rad êsec -2-25 -3-35 ( 2s+ )( s+ )(.5s+ ) PHASE..2.5 2..2.5 2 rad êsec Sensitivity V-22 Osprey altitude control K=28
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 G s is strictly proper m< n, then lim S( jω ) = lim = ω + G j ω lim S ( jω ) ω ω ( jω ) ω ω ( ω ) typeg = lim = + G j c << typeg = ( ω ) ( ω ) G( jω ) ( ω ) ( ω ) G j lim T( jω ) = lim = ω + ω limt G j typeg = lim = + G j c typeg =
Traditional Performance ~ Frequency Domain Bandwidth Definitions Sensitivity Function (first crosses / 2=.77~-3db from below): { v S j v } ω = max : ( ω) < 2 ω [, ) BS v Complementary Sensitivity Function (highest frequency where crosses ω BT 2 from above) = min{ v : T( jω) < 2 ω ( v, ) } v Crossover frequency { v L j v } ω = max : ( ω) ω [, ) c v T
Example: Osprey Bandwidth Complementary sensitivity Open loop Sensitivity MAGNITUDE.5..5 5 5 db -5 - -5.5..5 5 rad êsec
Transfer Functions as Maps
Traditional Performance ~ Frequency Domain Sensitivity peaks are related to gain and phase margin. Sensitivity peaks are related to overshoot and damping ratio. M M S T = = max S( jω ) ω max T( jω ) ω Im L plane S > S < L= + ρ ( ) jθ S = ρe = + L e jθ S - = a a L( jω) Re constant S proscribes circle S = + L
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 () () SsGsD () () s+ TsD () () s Typical design specifications S T ( jω ) < < ω [, ω] ( jω) << ω [ ω, ] And, there are other limitations. 2 2 ω > ω 2
Bode Waterbed Formula systems with relative degree 2 or greater: (Waterbed effect) ln S( jω) dω = π p ln T( jω) dω = π 2 ω ORHP poles ORHP zeros i q i -5 - -5 2 3 4 ln S( jω) vs. ω for Osprey -2
Implication of Waterbed Formula ln S ( jω ) pops up here ω push down here (e.g., by increasing gain)
V-22 with PID G@sD= s 2 +.5 s +.5 H.5 s + L s H s + L H2 s + L 2 Im @sd 4 - Desired Altitude - 2 s +.5s+.5 K s disturbance ( 2s+ )( s+ )(.5s+ ) -2-2 - Re @sd
Example: Osprey Sensitivity function plots for K=28, 5, MAGNITUDE..5 5 5 db -2-4 -6..5 5 5 rad êsec
Example: Osprey 2 K=28 - -2-3 -4 5 2 4 6 8 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 K=
Cauchy Theorem 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 is the ( ) 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. ( ) ( ) 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 Take F(s)=+L(s) (return difference, F=S - ) Choose a C that encloses the entire RHP Map into L-plane instead of F-plane (shift by -) s-plane s-plane L( s) L-plane R R 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 -+j 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 I s-plane R II L( s) L-plane ( ) L s = 2 2 ( s+ p)( s + 2ζωs+ ω ) jθ ( ρ ) ( ) 2 2 ( s+ p)( s + 2ζωs+ ω ) jθ 2 j2θ jθ 2 ( ρe + p )( ρ e + 2ζωρe + ω ) * III I: s = jω L jω =, < ω < jθ π π II: s = ρe, ρ, = 2 2 L e = III: s = jω, III I ρ
Example 2 ( ) L s = 2 2 ( + 2ζωs+ ω ) s s X X X I IV III 2 2 ( + j2 + ) 2 2 2 ( + + ) * 2 2 2 ( + + ) s-plane R I: s= jω L( jω) =, < ω < jω ω ζω ω ω jθ π π II: s = ρe, ρ, θ = 2 2 jθ L( ρ e ) = 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 ε 2 e L( s) jθ L-plane
Example 3 G@sD= Hs + L Hs 2 +. s + L MAGNITUDE..2.5 2 5 db - -2.5-3 -4..2.5 2 5 rad êsec Im @gd 4. PHASE..2.5 2 5 deg -5 - -5-2 -25..2.5 2 5 rad êsec -.5 The principle part of the Nyquist plot uses the same data as the bode plot. - -.4 -.2.2.4.6.8 Re @gd 4.
Example 4 G@sD=.2 Hs + L Hs 2 + 2 L s Hs 2 + 2 s + 2L Hs 2 + 2 s + 4L.5 db 2-2 -4-6 -8 MAGNITUDE..5..5 5.5..5..5 5 rad êsec Im @gd 3 - PHASE..5..5 5 -.5-5 deg -2-25 - 3-3..5..5 5 rad êsec -.2 - -.8 -.6 -.4 -.2.2 Re @gd
Example 5 ( ) G s = ( ) ( 2 + 2.s+ ) s s >> G=/(s*(s^2+2*.*s+)); >> nyquist(g) >> G=/((s+.)*(s^2+2*.*s+)); >> nyquist(g)
Gain & Phase Margin γ m Gain, db γ m φ m Phase, deg φ m Nyquist L( jω ) Assumption: the nominal system is stable. Bode
Example 6 ( ) G s = ( s +.5) ( s+ )( s+ )( s 2 +.s+ ) 5 Open-Loop Bode Editor (C) 4 Nyquist Diagram 3 Magnitude (db) -5 - -5 9 G.M.: 2.5 db Freq: 2.42 rad/sec Stable loop Imaginary Axis 2 - Phase (deg) -9-8 -27 P.M.: 27.3 deg Freq:.8 rad/sec -2-2 3 Frequency (rad/sec) -2-3 -4 -.5 - -.5.5.5 2 2.5 Real Axis
V-22 with PID G@sD= s 2 +.5 s +.5 H.5 s + L s H s + L H2 s + L 2 Im @sd 4 - Desired Altitude - 2 s +.5s+.5 K s disturbance ( 2s+ )( s+ )(.5s+ ) -2-2 - Re @sd
V-22 with PID db 2 - -2-3 MAGNITUDE.5..5 5.5..5 5 rad êsec db 2-2 -4-6 MAGNITUDE.5..5 5.5..5 5 rad êsec db -4-5 -6-7 -8-9 - MAGNITUDE.5..5 5.5..5 5 rad êsec db 7 6 5 4 3 2 MAGNITUDE.5..5 5.5..5 5 rad êsec Complementary sensitivity sensitivity
V-22 with PID G@sD= 28 Hs 2 +.5 s +.5 L H.5 s + L s H s + L H2 s + L.5.5 Im @gd -.5 - -2.5-2 -.5 - -.5 Re @gd
V-22 with PID >> s=tf('s'); >> G=28*((s^2+.5*s+.5)/s) /((2*s+)*(*s+)*(.5*s+)); >> margin(g) Notice that gain margin is negative because system loses stability when gain drops.
V-22 PID+Lead G@sD= s 2 +.5 s +.5 H.5 s + L s Hs + L H2 s + L 6 4 2 Im @sd 4-2 -4-6 -2.5-2 -.5 - -.5.5 Re @sd
V-22 PID+Lead Complementary sensitivity MAGNITUDE.5..5 5 Notice that sensitivity peak is reduced from 2 db to db Sensitivity MAGNITUDE.5..5 5 5 db -5 - -5.5..5 5 rad êsec db -2-4 -6.5..5 5 rad êsec -6 MAGNITUDE.5..5 5 8 MAGNITUDE.5..5 5-7 6 db -8 db 4-9 2.5..5 5 rad êsec Disturbance to output K=5.5..5 5 rad êsec Command to control
V-22 PID+Lead.5 5 Hs G@sD= 2 +.5 s +.5 L H.5 s + L s Hs + L H2 s + L.5 Im @gd 2 -.5-2 -2.5-2 -.5 - -.5 Re @gd
V-22 PID+Lead Gain margin is infinite because the system is never unstable for any K>.
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)