You are on page 1of 27

Chaptei 8 – Fiequency Response

 
8‐1 
 
Chapter 8 – Frequency Response 
Goals 
Explain what frequency response is and how it is used to characterize unknown systems 
Explain how to generate a Bode plot from a known transfer function 
Explain how to analyze the Bode plot of an unknown system to determine its transfer function 
Explain how to determine relative stability from a Bode plot 
Explain the analysis of steady‐state error using the Bode plot 
Explain how to design PID controllers using the Bode plot 
Introduction 
So‐called frequency response is another very common method for looking at systems.  Frequency 
response refers to an alternative way of exciting a system (as opposed to step response, where a system 
is subjected to a sudden, constant input).  An unknown system is excited with a sinusoidal input, its 
sinusoidal output is observed, and some conjecture can be made as to what kind of system it is.  The 
word frequency is used because typically the frequency of the input sinusoid is changed, and the output 
is observed over a range of input frequencies.  Thus one use of this method is to characterize unknown 
systems by inputting sine waves of different frequencies and observing the output and its variation with 
frequency. 
But frequency response and the resulting plots of this sinusoidal excitation can also be used to gauge a 
system’s stability, to see its steady‐state error, and to design controllers.  It offers another look at a 
system besides that given by the root locus.  The main from the above sinusoidal input test is a Bode 
plot, which really consists of two plots, a magnitude plot and a phase‐angle plot.  The Bode plot can be 
used to confirm the root locus rendition of the system and vice versa.   
Bode plots 
As stated above, the main graphical tool of the frequency response approach to system analysis is the 
Bode plot.  The Bode plot is a little odd and takes some getting used to.  There is a brute‐force way to 
generate a Bode plot, which is described here.  The system is unknown.   It is a black‐box that will be 
subjected to sinusoid inputs of varying frequency to determine its contents.  The conventional 
frequency‐response experiment is illustrated in Figure 8.1. 
 
Unknown
system
1 A    , ω A     , ω
A    , ω
A    , ω
2
3
1i 1o
1i
2o
3o
1i
1 1
2
2
3
3
Chaptei 8 – Fiequency Response
 
8‐2 
 
Figure 8.1 – Brute‐force frequency response determination 
This figure illustrates several things using the three sample sine waves.  It is normal for the experimenter 
to keep the input sine wave at the same amplitude and then adjust the frequency to a number of 
different settings, usually moving from slow to fast.  In a linear system, the output frequency is the same 
as the input frequency, as shown above.  If the output frequency and the input frequency are not the 
same, then the unknown system is not linear, and frequency response techniques are invalid for further 
analysis.  Note in the above example that in the first trial, the output amplitude is smaller than the input 
amplitude.  In the second trial, the output amplitude is now larger than the input amplitude.  In the last 
trial, the output amplitude is once again smaller than the input amplitude.  You may have experienced 
such a phenomenon yourself when driving a car with unbalanced front tires.  One approaches a certain 
speed, and the steering wheel begins to shake because of the unbalance.  If one drives faster, the 
shaking subsides.  That is resonance, when one is exciting the system at its natural frequency.   
The amplitude or magnitude ratio above is given the symbol M.  So =
A
c
A
i
 .  It is obvious that M is a 
function of ω, the driving frequency.  Less obvious but noticeable upon closer inspection is that the 
input and output sinusoids have a phase shift.  In the first trial, the output is in phase with the input, but 
in the second and third trials, the sinusoid is shifted further and further back in phase.  So the phase 
angle, φ, is also a function of ω.  In trial 1 φ = 0°.  In trial 2 φ = ‐90°.  In the third trial, it is ‐180°.  The 
minus sign indicates that the phase of the output is shifted back.  So, for instance, in trial 2, a peak of the 
output occurs 90° after the peak of the input.  What is 90°?  A full cycle of a sinusoid is 360°, so 90° is 
just a quarter of that.  Figure 8.2 shows what an oscilloscope would look like capturing an input and 
output from a single frequency response test.  With both sinusoids plotted, one can then see and 
interpret the phase shift. 
Chaptei 8 – Fiequency Response
 
8‐3 
 
 
Figure 8.2 – Oscilloscope plot from a single frequency response test 
In this plot, channel 1 is the input and channel 2 the output (always good practice).  Note that the input 
and output frequencies are the same, an indication of a linear system.  The frequency at which this trial 
is made can be determined from the plot as follows.  The period between two adjacent peaks on the 
same curve covers about 6.5 blocks, and each block represents 50 msec, so æ =
2n
6.5·50 mscc
·
[1uuu
mscc
scc
¸ = 19.S roJ¡scc.  But normally the experimenter who produced the above plot is pumping 
the unknown system with a signal generator and is adjusting this frequency directly.  He or she simply 
records it while making the test.   
The curve with the largest amplitude above is on channel 1, so the input.  Since the vertical scale of the 
two channels is the same, it is obvious that there is a magnitude gain of less than 1 for this trial.  The 
input ranges over about 4 vertical blocks.  The peak‐to‐peak amplitude of the output ranges over about 
1.5 blocks, so the magnitude ratio is H =
1.S
4
, = u.S7S or –8.5 decibels (see below).  It takes some 
practice to pick the phase angle off of a screen shot.  If we look at the above, we note that the horizontal 
distance between two adjacent peaks on the same curve is 360°.  So the distance between the first peak 
of the input curve and its next zero crossing is 90°.  If we look at the peak of the output curve relative to 
the peak of the input curve, we see that it occurs about halfway between the input curve’s first peak 
and its next zero crossing, perhaps a little sooner.  So the phase shift is about 43°, or ç = -4S°.  The 
negative sign indicates that the output curve lags the input curve (the output curve’s peak happens after 
the input curve’s).  Both of these measurements could be made more accurately using the cursors on 
the oscilloscope. 
Chaptei 8 – Fiequency Response
 
8‐4 
 
The dependency of M and φ on ω is the key to understanding what is inside the black‐box.  These two 
quantities are plotted against ω in two plots, which together are known as a Bode plot.  The plots are 
aligned vertically, so that both have the same ω scale.  A typical Bode plot is shown in Figure 8.3. 
 
Figure 8.3 – Bode plot made from frequency response tests 
The Bode plot has some unique characteristics.  First, ω is plotted on a logarithmic scale.  This allows one 
to plot a greater range of frequencies than a linear scale would allow.  Note above that the ω‐scale 
ranges from 0.1 rad/sec to 100 rad/sec.  Second, M is plotted in decibels.  A decibel is defined as the 
base‐10 logarithm of a quantity multiplied by 20.  So 20∙log(M) is plotted, not M directly.  The reason for 
this is given below.  φ is plotted directly in degrees.  Above φ ranges from 90° at low frequencies to ‐180° 
at high frequencies. 
This summarizes the normal laboratory procedure followed for characterizing an unknown system using 
frequency response as opposed to step response.  Step response is still a valid method.  In fact often the 
two are used together to confirm what each is showing.  Frequency response provides, however, a finer 
insight into an unknown system’s structure, since it reveals responses frequency by frequency.  Some 
parts of a system may have no response at one excitation frequency but become active at another 
excitation frequency.  The presence of all but the dominant components of a system are usually not 
noticeable in a step response. 
Bode plot from a known transfer function 
Chaptei 8 – Fiequency Response
 
8‐5 
 
The above method for querying an unknown system produces a Bode plot.  Then the Bode plot can be 
interpreted to reveal the components of the unknown system.  To understand how to interpret a Bode 
plot, it is useful know how to generate a Bode plot from a know transfer function.  The procedure for 
doing this is simple, only given and not proven here.  One replaces s in the transfer function with j∙ω.  
Then H = |0(]æ)|, the magnitude of the resulting function and ç = z0(]æ), the angle of the resulting 
function.  An example illustrates this best. 
Example 8.1 
Find M and φ as functions of ω for the transfer function 0(s) =
15·s
2·s+1

Solution: 
One replaces s with j∙ω : 0(]æ) =
15·]o
2·]o+1

Both the numerator and denominator are complex numbers.  The magnitude of a fraction of complex 
numbers is the magnitude of the numerator divided by the magnitude of the denominator.  So  
H = H(æ) =
1S · æ
√4 · æ
2
+1
2
 
At small values of ω , H =
0
1
= u.  At large values of ω , H =
15·o
√4·o
2
=
15
2
.  These values, converted into 
decibels, show where the magnitude plot of the Bode plot starts and ends.   
For φ, the angle of a fraction of complex numbers is the angle of the numerator minus the angle of the 
denominator.  15∙jω is on the imaginary axis for all values of ω , so the angle of the numerator is always 
90°.  In the denominator, if ω is small, the 1 dominates.  It is a positive real number, so it is at an angle of 
0° and φ = 90° (znum -zJcn).  If ω is large, 2∙jω dominates.  It is also on the vertical axis, so its angle is 
also 90°.  Thus at high ω , φ approaches 0°.  Note also that at ω = 0.5 rad/sec, the angle of the 
denominator is 45°.  So φ = 90°‐45°=45°.  φ thus starts off on the left‐hand side of the phase plot at 90°.  
It drops and passes through 45° at ω = 0.5 rad/sec and then approaches 0° at large values of ω.  One can 
confirm this in Matlab with the function bode([15,0],[2,1]).  But to be able to interpret Bode plots, one 
must understand how varying ω changes the value of M and φ. 
Bode plots of common transfer function components 
Analysis similar to this can be made for common transfer function components (gain, integrator, 
differentiator, first‐ and second‐order lags, first‐ and second‐order leads).  (A lag is a first or second 
order component in the denominator—e.g. 0(s) =
1
1·s+1
 .  A lead is a first or second order in the 
numerator—e.g. 0(s) = I · s + 1 .)  If this is done, Table 8.1 results.  This table can then be used to 
interpret Bode plots of unknown systems to see what common components they contain.   Some 
features of common components are worth emphasizing. 
   
Chaptei 8 – Fiequency Response
 
8‐6 
 
Component  Bode plot  Characteristics 
Gain, K 
0
0
20 log K
If K > 1, 20 log K > 0 
If K < 1, 20 log K < 0 
Gain has zero phase.  So when it is added to a 
system, it simply shifts the system’s log mag curve 
up (K>1) or down (K<1). 
Differentiator, s 
0
0
90
1
2
0

d
B
/d
c
d
If K > 1, 20 log K > 0 
If K < 1, 20 log K < 0 
Gain has zero phase.  So when it is added to a 
system, it simply shifts the system’s log mag curve 
up (K>1) or down (K<1). 
Integrator,  
1
s
 
0
0
-90
1
-
2
0
d
B
/
d
c
d
If K > 1, 20 log K > 0 
If K < 1, 20 log K < 0 
Gain has zero phase.  So when it is added to a 
system, it simply shifts the system’s log mag curve 
up (K>1) or down (K<1). 
1
st
‐order lead,  
Ts+1 
0
0
ω = 1/Τ
B
20
d
B/dc
d
90
If K > 1, 20 log K > 0 
If K < 1, 20 log K < 0 
Gain has zero phase.  So when it is added to a 
system, it simply shifts the system’s log mag curve 
up (K>1) or down (K<1). 
1
st
‐order lag, 
1
1s+1
 
0
0
ω = 1/Τ
B
-20
d
B/d
cd
-90
If K > 1, 20 log K > 0 
If K < 1, 20 log K < 0 
Gain has zero phase.  So when it is added to a 
system, it simply shifts the system’s log mag curve 
up (K>1) or down (K<1). 
 
Table 8.1 – Bode plots of common components (part 1) 
   
Chaptei 8 – Fiequency Response
 
8‐7 
 
 
Component  Bode plot  Characteristics 
2
nd
‐order lead,  
1
o
n
2
s
2
+

o
n
s + 1 
0
0
ω
n
4
0

d
B
/
d
c
d
180
Starts out with 0 log mag.  Asymptote starts a 40 
dB/dcd rise at break frequency, which is the natural 
frequency.   
Behavior right around break frequency depends on ζ.   
Phase curve starts at 0 and rises to 180 degrees.  It is at  
90 degrees at break frequency. 
2
nd
‐order lag, 
1
1
n
n
2
s
2
+
2{
n
n
s+1
 
0
0
ω
n
-4
0
d
B
/d
c
d
-180
Starts out with 0 log mag.  Asymptote starts a 40 
dB/dcd rise at break frequency, which is the natural 
frequency.   
Behavior right around break frequency depends on ζ.   
Phase curve starts at 0 and rises to 180 degrees.  It is at  
90 degrees at break frequency. 
 
Table 8.1 – Bode plots of common components (part 2) 
This table shows the asymptotes used to draw Bode plots of these components.  The first‐ and second‐
order leads and lags can deviate from these asymptotes.  Second order systems with low ζ deviate 
significantly from the asymptotes in the neighborhood of ω
n

In general an s in the numerator causes a rise in the magnitude and phase plots.  An s in the 
denominator causes a fall in the magnitude and phase curves as ω increases.  Note that all leads and 
lags start their magnitude and phase plots at 0.  At the break frequency [æ
B
=
1
1
¸ for a first‐order lead 
or lag or the natural frequency for a second‐order lead of lag, the magnitude plot breaks upward (leads) 
or downward (lags).  This rising or falling slope for a first‐order is at the rate of ±20 dB/dcd for a first‐
order and ±40 dB/dcd for a second‐order. 
One can tell a lot by inspecting the starting points of a Bode plot, the left‐hand sides of the plots of an 
unknown function.  If the starting slope of the magnitude curve is 0, then there is no differentiator nor 
integrator present in the system.  If the beginning slope of the magnitude curve is upward, then one 
would conclude there is a differentiator present.  One could determine the beginning slope and tell how 
many integrators are present.  If one integrator is present, the upward slope would be 20 dB/dcd.  If 
instead the upward slope were 40 dB/dcd, then one could conclude that there are two differentiators 
present.  One could confirm this by looking at the left‐hand side of the phase plot.  A differentiator has a 
constant φ of 90°, even on the left‐hand side of the phase plot.  So with one differentiator, the phase 
plot would start at 90° and the magnitude plot would have an initial upward slope of 20 dB/dcd. 
Chaptei 8 – Fiequency Response
 
8‐8 
 
Now we can see why one plots M in decibels and not in normal units in a Bode plot.  An unknown 
system is made up of a number of the components shown in Table 8.1.  Take the example 
0(s) =
16 · (s + S)
s
2
· (s + 1) · (s + 7)
-
16 · (]æ + S)

2
· (]æ + 1) · (]æ + 7)
 
In the phase plot, the phase of the function G(jω) is the sum of the phase angles of the components.  
Thus at low ω, all the ω terms that add to real numbers drop out.  The real number dominates, so for 
low ω, these components have a phase angle of 0.  The 
1
-o
2
= -
1
o
2
  term has a phase of ‐180°.  So the 
phase plots starts out at ‐180°.  The magnitude, however, are not added like the phase angles of the 
components are.  They form products instead of sums.  So 
|0(]æ)| =
16 · √æ
2
+ 9
æ
2
· √æ
2
+ 1 · √æ
2
+ 49
= 16 · ¸æ
2
+ 9 ·
1
æ
2
·
1
þ
2
+1
·
1
þ
2
+49
 
But if we take the log of both sides and multiply both sides by 20 to get decibels 
2u · log(0(]æ)) = 2u · log _16 · ¸æ
2
+ 9 ·
1
æ
2
·
1
þ
2
+1
·
1
þ
2
+49

2u · log(0(]æ)) = 2u · log(16) +2u · log [¸æ
2
+ 9¸ + 2u · log _
1
æ
2
] +· 
So the product turns into a sum, and as decibels one can superimpose the magnitudes of the 
components to get the entire magnitude of the transfer function.  Thus with both the magnitude and 
phase plots, one can simply superimpose the components to get the magnitude (in decibels) and the 
phase plots of the entire transfer function. 
Of course in interpreting the Bode plot of an unknown system, one is seeing the plot of the entire 
system, and one must pick out the components from the whole.  Table 8.1 is key to this, because it 
details how the Bode plots of individual components.   With an understanding of these systems’ 
behavior as ω varies, one can pick the individual components out of the Bode plot of an entire unknown 
system. 
Interpreting a Bode plot of an unknown system to get its transfer function 
Several examples will illustrate how one goes about analyzing the Bode plot of an unknown system to 
get its transfer function experimentally. 
Example 8.2 
Analyze the following Bode plot and suggest the transfer function that produced this plot. 
Chaptei 8 – Fiequency Response
 
8‐9 
 
 
Solution: 
By comparing the plot with the entries of Table 8.1, one can see almost immediately that this is an 
integrator.  The magnitude plot drops steadily each decade by 20 dB, the beginning slope of the 
magnitude plot is not 0 (so it is not a first‐order lag), and the phase angle is a constant 90°.  But is there 
a gain involved?  A pure integrator’s Bode plot crosses the ω axis (0 dB) at ω = 1 rad/sec.  At ω = 1 
rad/sec (10
0
), the magnitude is about 25 dB in this example.  So the magnitude plot has been pushed up 
about 25 dB.  Note that a gain has φ = 0 for all ω, so a gain has no influence on the phase curve.  Thus 
this system is an integrator with a gain.  A gain’s magnitude curve is a straight line at 20∙log(K), so the 
effect of a gain is to displace the magnitude curve upward (if K > 1) or downward (if K<1).  Since the 
magnitude curve has been pushed up by 25 dB at ω = 1 rad/sec,  
2u JB · log(K) = 2S JB 
log(K) =
2S
2u
= 1.2S 
K = 1u
1.25
= 18 
So the suggested transfer function is 
0(s) =
18
s
 
One should always then confirm this conjecture by checking it with the Matlab bode() function—here 
bode([18],[1,0]). 
Chaptei 8 – Fiequency Response
 
8‐10 
 
The role played by the gain is very important, since it is normal in a control loop to adjust the 
controller’s gain.  Adding a gain simply deflects the magnitude curve up or down and has no effect on 
the phase curve.  The ability of the gain curve to change magnitude but have no effect on phase will be 
exploited in designing controllers using Bode plots. 
Example 8.2 
Analyze the Bode plot of Figure 8.3 and conjecture what transfer function produced this plot. 
 
Figure 8.3 – Bode plot made from frequency response tests 
Solution: 
The figure is reproduced here for convenience.  Features to notice are: 
The magnitude plot starts off with an upward slope.  The slope seems to be 20 dB/dcd, so this 
indicative of a differentiator. 
A differentiator with no gain passes through 10
0
 rad/sec at 0 dB.  In the above plot the upward‐
sloping part of the curve passes through 10
0
 at about ‐14 dB.  So there is a gain here also.   
The phase curve starts at 90° and ends at ‐180°, so a total phase shift of 270°.  Each s in the 
denominator (integrator, 1
st
‐order lag) drops the eventual phase angle by ‐90° (a 2
nd
‐order lag 
drops it by ‐180°).   
Chaptei 8 – Fiequency Response
 
8‐11 
 
So it looks like there may be a differentiator and then three s’s in the denominator of the transfer 
function.   This can be confirmed also by inspecting the final slope of the magnitude curve.  It is ‐40 
dB/dcd.  This indicates an excess of two s’s in the denominator. 
Now it is somewhat difficult to ascertain where these terms with s’s in the denominator have their break 
frequencies (1
st
‐order lags) or natural frequency (2
nd
‐order lags).  A lot seems to be happening between 
1 < ω < 10.  There is no evident bump in the magnitude curve, however, which would indicate the 
presence of an underdamped second‐order in the denominator (a 2
nd
‐order lag).  So perhaps for a first 
guess it is useful to speculate that there are three 1
st
‐order lags in this transfer function between 1 and 
10.  Their proximity within this narrow range will make it hard to identify them individually. 
The phase plot of a 1
st
‐order lag shows that at the break frequency (ω
B
) the phase has dropped by ‐45°.  
If one looks for the frequency where the phase is 45° below the starting frequency, one can speculate 
that that ω is the break frequency for the first 1
st
‐order lag.  In the above phase plot, this would be at 
about halfway between 10
0
 and the next vertical line.  10
0
 = 1, and 10
1
 = 10.  So the next vertical line 
after 10
0
 is 2.  The halfway point is not, however, 1.5, since the logarithmic scale is uneven.  So the 
halfway point would be more like 1.3.  We can speculate then that the first 1
st
‐order lag is at ω = 1.3. 
Each 1
st
‐order lag brings in total a ‐90° phase shift to the phase curve.  If the three supposed 1
st
‐order 
lags were all widely separated on the ω‐axis, one could just look on the phase curve where φ was 45°, ‐
45°, and ‐135° to find the three break frequencies.  But apparently the three 1
st
‐order lags are jammed 
together within a narrow range of ω , so the second one becomes active before the effect of the first 
one has subsided.  So ω
B2
 will occur before φ = ‐45°, and ω
B3
 occur before φ = ‐135°.  Thus we are left 
with only the choice of guessing at these break frequencies, then making a Bode plot of the resulting 
transfer function, comparing it with the given plot, and then adjusting it through trial and error until 
there is a match.  Try ω
B1
 = 1.3, ω
B2
 = 6, and ω
B3
 = 12.  These give 1
st
‐order lags of  
1
1
1.3
s+1

1
1
6
s+1
, and 
1
1
12
s+1
 
For the gain, we need  
2u Jb · log(K) = -14 JB 
K = 1u
-14
20
= u.2 
So the first stab at a transfer function is 
0(s) = u.2 · s ·
1
1
1.S
s + 1
·
1
1
6
s + 1
·
1
1
12
s + 1
=
u.2 · s · 1.S · 6 · 12
(s + 1.S)(s + 6)(s +12)
=
19 · s
(s +1.S)(s + 6)(s + 12)
 
The Matlab command sequence 
>>  s = tf( ‘s’ ) 
>> g = 19*s/((s+1.3)*(s+6)*(s+12)) 
Chaptei 8 – Fiequency Response
 
8‐12 
 
>> bode(g) 
 
gives the Bode plot of our conjectured transfer function: 
 
Figure 8.4 – Bode diagram of surmised function 
A comparison of the two plots shows that they are not too far removed from one another, so as a first 
guess, this transfer function is a relatively good match.  One could make further small adjustments to 
refine the fit to the required exactness. 
Stability via Bode plots – gain and phase margin 
Another type of useful diagram in controls is the Nyquist diagram.  Our focus here is on the Bode 
diagram, but you should know what a Nyquist diagram is.  To get the Nyquist Diagram for a transfer 
function G(s) this is what you do.  Just like for the Bode plot, replace the s with jω.  Then you vary the 
frequency, ω, over the range 0→∞. For each ω, you will get a complex number:  G(jω) = [Mag(G(jω)), 
Ang(G(jω)].  Here is where you differ from the Bode Plot.  Instead of making two plots, you make a single 
one, a polar plot.  This is called the Nyquist diagram. 
It's easy to get Nyquist diagrams in Matlab.  You might want to try the following commands: 
>> s = zpk( ' s' )
>> gol = 1/ ( ( s+2) *( s+5) )
>> nyqui st ( g0l )
Chaptei 8 – Fiequency Response
 
8‐13 
 
You can also get a Nyquist diagram inside Matlab's ltiviewer: 
>> s = zpk( ' s' )
>> gol = 1/ ( ( s+2) *( s+5) )
>> l t i vi ew( gol )
Once the viewer comes up, go to the Edit menu and choose “Plot Configurations...”  Stick with the single 
plot (choices on the left).  Then on the right, under “Response Type”, first item, choose “Nyquist”. 
The Nyquist diagram is useful primarily for determining system stability.  What you need to know is this: 
For a stable system (no closed‐loop poles in the right half plane), the open‐loop system will have these 
properties: 
1. When φ = -180°, M should be < 1
2. When M = 1, φ should be > ‐180°
These facts are needed to understand gain and phase margin. 
The gain margin and phase margin are useful for determining relative stability, i.e. not just whether or 
not a system is stable but also how stable the system is. 
20 log   = 0 dB M
φ = 0
φ = ‐180
ω
GM
= phase crossover frequency
‐12.06 dB

Figure 8.5 – Gain margin 
Figure 8.5 shows a portion of a typical Bode Plot for an open‐loop transfer function.  It illustrates what 
the gain margin (G
M
) is.  As was stated in the discussion of Nyquist stability, when φ = ‐180°, M should be 
< 1.  To find G
M
, first find the phase crossover frequency, ω
GM
.  This is the frequency where the phase 
curve passes through ‐180°.  Get the magnitude at that frequency.  In the above plot, G
M
 = 12.06 dB.  
What this means is that at ω
GM
 the actual magnitude is 
M = 10
‐12.06/20
 = 0.2495 
Chaptei 8 – Fiequency Response
 
8‐14 
 
Remember that negative magnitudes on the Bode magnitude plot mean actual values of magnitude that 
are between 0 and 1. 
Also recall that adding a gain to a transfer function only shifts the magnitude curve up (K > 1) or down (K 
< 1).  The added gain does not affect the φ curve because K's φ for all ω > 0. So the above shows that a 
gain of K = 12.06 dB could be added to the system before making it unstable. 
K = 12.06 dB = 10
12.06/20
 = 4.01 
Note that 4.01 * 0.2495 = 1.0. 
The phase margin reflects the second Nyquist stability criterion:  when M = 1, φ should be > ‐
180°. 
20 log   = 0 dB M
φ = 0
φ = −180
φ = ‐143.6
ω
ΦM
= gain  crossover frequency

Figure 8.6 – Phase margin 
Figure 8.6 shows a portion of a typical Bode plot for an open‐loop transfer function.  It illustrates what 
the phase margin (Φ
M
) is.  To find Φ
M
, first find the gain crossover frequency, ω
ΦM
. This is the frequency 
where M = 1.  Recall at M = 1, 20 dB∙log M = 20 log 1 = 0.  So ω
ΦM
 is where the magnitude curve crosses 
the ω‐axis.  Get the phase at that frequency.  In the above plot, φ at ω
ΦM
 is ‐143.6°. The phase margin is 
the amount the phase angle is above φ = -180° at the gain crossover frequency.
Φ
M
= ‐143.6° ‐ (‐180°) = 36.4°
A rule of thumb for good response is G
M
 > 6 dB, 30°< Φ
M
  < 60°. 
Example 8.3 
For the system whose Bode Plot is given below, find 
1) ω
GM

2) ω
ΦM

Chaptei 8 – Fiequency Response
 
8‐15 
 
3) G
M

4) Φ
M


Figure 8.7 – Bode plot of unknown function 
 
 
   
Chaptei 8 – Fiequency Response
 
8‐16 
 
Solution: 

Figure 8.8 – Solution to above example 
For practice you might want to try to determine the transfer function for the system above. 
An alternate way and a non‐graphical way to solve the above problem is first to determine the transfer 
function.  For this example it is  
0
0L
=
S
s(s +1)(s +S)

You can look for the phase crossover frequency and the gain crossover frequency by trial and error.  Put 
your calculator into polar mode, so that answers are displayed in polar format.  Then simply replace s 
with jω, and let ω vary from small values to large values.
Since both the magnitude curve and the phase curve generally slope down to the right, you 
should find the phase crossover frequency first.  Keep trying values of jω until you find out 
where ω = ‐180°.  This is the phase crossover frequency.  Get the magnitude at this point and 
calculate 20 log M.  This is the value M at the phase crossover frequency.  20 log (‐M) is the gain 
margin. 
Keep looking to the right until you find the point where M = 1.  This is the gain crossover 
frequency.  Get the phase at this frequency.  Then 
ω
ΦM
 = 0.8 rad/sec
ω
GM
= 2.2 rad/sec
G
M
 = 20 dB
Φ
M
 = 180 ‐ 138
      = 42 deg
Chaptei 8 – Fiequency Response
 
8‐17 
 
Φ
M
 = φ ‐ (‐180°) 
Performance and gain and phase margin 
There is a direct connection between phase margin and ζ.  We have already seen that there is a direct 
connection between ζ and percent overshoot.  So there is a direct connection between Φ
M
 and %OS.  
The relationship between Φ
M
 and ζ is 
Φ
M
= 9u° - aictan
_
-2ç
2
+ ¸1 + 4ç
4

 
But one can often use a simplification of this unwieldy relationship.  For ζ < 0.6, Φ
M
≈ 100°·ζ. ζ = 0.6
corresponds with %OS = 9.5%, so for all but small overshoot specifications, this simple relationship can 
be used. 
And as we saw in Chapter 4, the relationship between %OS and ζ is 
%0S = c
-_
{·n
_1-{
2
_
× 1uu%   or   ç =
-In (%0S 100% ⁄ )
¸n
2
+In
2
(%0S 100% ⁄ )
 
The speed of a system depends on ζ and ω
n
.  From Chapter 4 we know 
I
P
=
n
o
n
¸1-ç
2
  and  I
S
=
4
ço
n
 
ω
n
 is a function of ζ and the gain‐crossover frequency, ω
ΦM

æ
n
=
æ
4M
_
-2ç
2
+ ¸1 + 4ç
4
 
or 
æ
4M
=
_
-2ç
2
+ ¸1 +4ç
4
· æ
n
 
In practice it is often difficult to separate the two system performance indices %OS and speed.  One 
cannot adjust the phase margin without having an effect on the gain‐crossover frequency and thus the 
speed of the system.  Take the system shown in Figure 8.7 for example.  To increase the phase margin 
using a simple gain adjustment, one lowers the magnitude curve.  This makes the frequency where the 
magnitude crosses 0 dB shift to the left, i.e. to a lower frequency.  But lowering the gain‐crossover 
frequency makes the system slower. 
Seeing steady‐state error on Bode plots 
Chaptei 8 – Fiequency Response
 
8‐18 
 
Unlike the root locus, where the steady state error in a system is very hard to deduce, it can be readily 
seen on a Bode diagram.  Recall from Chapter 6 that the open‐loop transfer function is used to analyze 
steady‐state error (e
ss
) and that the static error constants—K
p
, K
v
, and K
a
—are used to calculate the 
actual steady‐state error.  Recall also that there is a pattern for steady state error.  A type 0 system 
subjected to a step input will have a finite steady state error.  A type 1 system subjected to a step input 
will have e
ss
 = 0 and so on.  The type of the system is the number of free integrators in the open‐loop 
transfer function.  We have seen above that free integrators have a distinctive signature in Bode 
diagrams.  An integrator has a ‐20 dB/dcd slope on the left‐hand side of the Bode magnitude plot and a ‐
90° phase angle for the entire range of ω on the Bode phase plot.  So if the Bode plot of an open‐loop 
system has only non‐zero poles and zeros—i.e. neither poles nor zeros at the origin—the magnitude plot 
will start off with a flat run before breaking up or down.  The phase plot will also begin at 0°.  This is a 
type 0 system.  A type 1 system, with its single free integrator, will thus have a magnitude plot with a ‐20 
dB/dcd slope and a phase plot that starts out at ‐90°.  A type 2 system will have a magnitude plot with a 
starting slope of ‐40 dB/dcd slope and a starting phase angle of ‐180°.   
PID controller design via Bode plots 
Remember that the normal design aims of PID controllers are to minimize or eliminate steady‐state 
error, to reduce percent overshoot, and to set the speed of a system.  Remember also that what one can 
and cannot do often depends on the capabilities of the actuator.  One can, for instance, design a 
controller to produce all of the output commands that will meet any aims set for the system.  But if the 
actuator is too weak to perform these actions, it will simply saturate and do much less than is being 
asked of it.  So during and after all control design, one should then check to see how much the actuator 
is saturating.  If it is saturating often, then one needs to purchase and install a bigger actuator or back 
off the demands being put on the actuator.  Even installing a bigger actuator may not be the answer to 
performance shortfalls.  A bigger actuator also stresses the system, the plant, more.  For example a 
larger hydraulic cylinder will be able to produce more force than a smaller one, thus causing more 
acceleration on the plant.  The internal structure of the device being accelerated may not be designed to 
take such high accelerations.  Thus one must always be aware of the consequences downstream in the 
loop when a larger actuator is installed. 
To design a controller for a system via frequency response, we use the Bode diagram of the open‐loop 
system.  The controller’s contributions are added to this existing system, consisting of actuator, plant, 
and sensor.  Thus it helps to see what each variant of the PID controller contributes to the system.  The 
variants are, of course, P, PI, PD, and PID.  The PID controller, however, is just a PI with D added or a PD 
with I added.   
P controller 
Figure 8.9 shows the Bode diagram for a P‐only controller with K
P
 as the proportional gain.  Since only a 
gain is added and since a gain has φ = 0 for all ω, a P‐only controller only elevates or depresses the 
magnitude plot for the existing system.  The gain margin, G
M
, of the system is defined as the amount of 
Chaptei 8 – Fiequency Response
 
8‐19 
 
gain, in decibels, that could be added to the system before driving it to marginal stability.  Thus when 
designing a proportional controller, one needs to be aware that for the system to remain stable,  
K
P
< 1u
u
M
20
 
 
Figure 8.9 ‐ Bode contribution of a P‐only controller 
As we have seen, a common objective in designing a controller is to let the system have a specified 
percent overshoot (%OS).  And as we saw in Chapter 4, %OS is intimately tied to the damping ratio, ζ:  
%0S = c
-_
{·n
_1-{
2
_
× 1uu%   or   ç =
-In (%0S 100% ⁄ )
¸n
2
+In
2
(%0S 100% ⁄ )
 
There is also a close relationship between phase margin, Φ
M
, and ζ. For ζ < 0.6, Φ
M
 ≈ 100°∙ζ.  ζ = 0.6 
corresponds with %OS = 9.5%, so for all but small overshoot specifications, this simple relationship 
applies.  Thus the design procedure for a P‐only controller for a specified %OS would be as follows: 
1. From the %OS specified, one determines ζ 
2. From this ζ one determines the required Φ
M
 
3. One looks at the existing system and finds the frequency where φ = ‐180° + Φ
M
 
4. One finds the value of M at this frequency 
5. One sets K
P
 so that 20dB∙log(K
P
) raises or lowers the magnitude so that it is 1 at this frequency 
With the adjustment in step 5, one is making this ω the gain crossover frequency, where the phase 
margin is measured. 
PI controller 
As we have seen, a PI controller has the transfer function 
2
0
 
l
o
g
 
M
φ
ω
ω
K
K
P
P
Chaptei 8 – Fiequency Response
 
8‐20 
 
0
PI
(s) = K
P
+
K
I
s
=
K
P
s +K
I
s
= K
P
· _s +
K
I
K
P
] ·
1
s
= K
I
· _
K
P
K
I
s +1] ·
1
s
 
Thus with a PI controller one is adding a gain (KI), a first‐order lead (so a zero), and an integrator (a pole 
at the origin).  The 
1
s
 increases the system type and thus eliminates steady‐state error.  That is normally 
why one uses a PI controller. 
 
 
Figure 8.10 ‐ Bode contribution of a PI controller 
Figure 8.10 shows the Bode plot of a PI controller.  There are several features to notice.  The effect of 
the integrator can be seen by the initial ‐20 dB/dcd slope at the low frequencies, on the left‐hand side of 
the diagram.  One also notes on the phase plot that φ begins at ‐90°, also an artifact of the integrator.  
Thus the controller will bring e
ss
 = 0 to a type 0 system with a step input, the most widespread use of a 
PI controller.  Also noteworthy is the fact that a zero is added, so a first‐order lead.  The frequency K
I
/K
P
 
is important.  It places the action of the lead horizontally on the Bode plot.  It is, indeed, the break 
frequency of the first‐order lead. 
So if the desire is to add I‐control to a system to eliminate its steady‐state error while not changing the 
dynamics of the system—its gain, phase margin, or phase crossover frequency (related to system 
speed)—one could do the following: 
1. Set K
P
 such that K
I
/K
P
 is one decade below the existing gain‐crossover frequency.  The effect on 
phase of a first‐order lead or lag generally occurs over two decades.  So one decade after the 
break frequency the ‐90° phase adjustment of the integrator has been removed. 
2
0
 
l
o
g
 
M
φ
ω
ω
K
K
I
I
1
s
1
s
‐90
K
K
K
K
K
K
s + 1
s + 1
P
P
P
I
I
I
1 100 10 0.1
Composite
Chaptei 8 – Fiequency Response
 
8‐21 
 
2. Set K

 so that the flat, high‐frequency  part of the PI magnitude curve runs along the ω axis.  This 
will make the gain at higher frequencies the same as it is in the uncompensated system.   
A more generic tuning method, one that does not necessarily preserve existing system dynamics, would 
be: 
1. Install the pole at the origin to limit or eliminate steady‐state error. 
2. Look at the Bode diagram of the resulting open‐loop transfer function to see what else needs to 
be done.  Still to be determined is the location of the controller pole and the overall controller 
gain.  Particularly look at the phase plot and see what needs to be done to use the added phase 
of the zero to get the required Φ
M
, which is related to ζ and the %OS of a step input.  From this 
analysis, set the location of the break frequency of the 1
st
‐order lead (the location of the zero).  
This break frequency is then 1/T (=ω
B
). 
3. Add the zero and then check the resulting Bode, i.e. check the phase plot and see where ω
GC
 
needs to be to get the Φ
M
 needed. 
4. At the frequency determined in 3,  note 20dB∙log(M).  This is the gain that needs to be added to 
make the frequency ω
GC
.  Add this frequency.  Check the resulting Bode diagram to see if the 
phase margin is what was specified.  Check the step response to see if the %OS is within 
specifications. 
Of course as always the problem of actuator saturation must be taken into account.  Moving K
I
/K
P
 to the 
left means increasing K
P
, and since the ω‐scale on a Bode plot is logarithmic, moving K
I
/K
P
 one decade to 
the left means increasing K
P
 by a factor of 10.  So due to actuator limitations, it may be impossible to set 
K
I
 so high or move K
I
/K
P
 so far to the left.  One may have to compromise with a reduction in system gain 
and a faster K
I
/K
P
.  The reduction in system gain will depress the existing system’s magnitude plot and 
push the gain‐crossover frequency to the left, which represents an increase in system response time.  
Increasing K
I
/K
P
 means that the phase correction to 0° may not occur soon enough, so the existing phase 
margin of the system may be lowered.  Thus ζ will be lowered, and the %OS will correspondingly 
increase.  As is always the case in controls, you cannot get something for nothing.  Eliminating steady‐
state error often brings with it the consequences that the system speed and its stability suffers. 
PD controller 
The transfer function of a PD controller is 
0

(s) = K
P
+K
Ð
· s = K
Ð
_s +
K
P
K
Ð
] = K
P
· _
K
Ð
K
P
s +1] 
So this is a single zero or first‐order lead with a gain contribution also.  The first‐order lead’s break 
frequency is at K
P
/K
D
.  The Bode plot for this controller is shown in Figure 8.11.  Note that the PD 
controller will raise the right hand end of both the magnitude and phase plots of the existing open‐loop 
system.  By raising the phase plot, one increases the phase margin Φ
M
.  This increases ζ and thus lowers 
%OS.  So the system becomes more stable.  This effect is not so easy to design, because the right‐hand 
end of the magnitude plot is also raised.  This shifts the gain‐crossover frequency ω
ΦM 
to the right.  
Chaptei 8 – Fiequency Response
 
8‐22 
 
Shifting this frequency to the right is beneficial.  Because of the relationship given above between ω
n
 
and ω
ΦM
, this will make the system faster.  But, in itself, moving ω
ΦM
 to the right brings one into a region 
of lower φ, so the phase margin is lower.  Summing this up, adding a PD controller adds phase to the 
high‐frequency end of the existing open‐loop system.  This tends to raise the phase margin, stabilizing 
the system.  But the PD controller also lifts the right‐hand end of the magnitude plot.  This moves the 
gain‐crossover frequency to the right, which speeds the system up.  But since the phase curve generally 
has a negative slope, the benefit to the phase curve contributed by the phase contribution of the PD 
controller is not fully realized.  The example below illustrates this. 
 
Figure 8.11 ‐ Bode contribution of a PD controller 
As far as setting K
P
 and K
D
 goes, a simplifying strategy would be to set K
P
 = 1.  Then set K
D
 so that K
P
/K

is 
in the proper location to lift the phase curve as wanted. 
Example 8.4 
A system has the open‐loop transfer function 
0
0L
(s) =
1Suu
(s + 1)(s +S)(s + 1S)
 
The stability of this system can be gauged using the sequence of Matlab commands: 
>> s = t f ( ‘ s’ )
>> gol = 1500/ ( ( s+1) *( s+5) *( s+15) )
>> mar gi n( gol )
2
0
 
l
o
g
 
M
φ
ω
ω
K
K
P
P
‐90
K
K
K
K
K
K
s + 1
s + 1
D
D
D
P
P
P
1 100 10 0.1
Composite
Chaptei 8 – Fiequency Response
 
8‐23 
 
 
Figure 8.12 ‐ Bode plot of above open‐loop transfer function 
Obviously the system is not very stable.  It is desired to increase the phase margin to 60° while not 
lowering the low‐frequency gain of the system.  To do this, we will design a PD controller.  If one ignores 
the effect of the elevation of the magnitude curve with the PD controller, then we need to add 53° of 
phase at around 9 rad/sec.  If we look at the PD contributions curves given in Figure 8.12, we see that at 
the break frequency of the PD controller, the phase contribution is 45°.  So if we set the break frequency 
at 9 rad/sec, we would get a 45° contribution there.  Since we want at 53°‐contribution, we set the 
break frequency of the PD a little lower than 9 rad/sec, at, say, 3 rad/sec.  Thus the first trial PD 
controller will have K
P
 = 1 to keep the low‐frequency gain as it was in the original system.  Then we set 
K
D
 = 1/3, so that K
P
/K
D
 = 3.  Thus 0

=
1
3
(s + S).  We try this using, again, the Matlab mar gi n( gol )  
function: 
>> gpd = ( 1/ 3) *( s+3)
>> gol pd = gpd * gol
>> mar gi n( gol pd)
 
This produces 
 
Chaptei 8 – Fiequency Response
 
8‐24 
 
 
 
Figure 8.13 – PD‐compensated system of Example 8.4 
 
Thus aiming for a phase elevation of 53° to give a Φ
M
 of 60°, we have come up short.  Because of the 
simultaneous elevation of the magnitude curve, the gain‐crossover frequency has shifted to the right, so 
that it is now about 20 rad/sec instead of the original 9 rad/sec.  This has made the system faster, but 
the phase margin is still too low.  The solution is to set the gain‐crossover frequency lower, thus aim for 
more phase contribution, to compensate for the rightward shift of the gain‐crossover frequency.  The 
problem with this is that this makes the elevation of the magnitude curve even larger too.  In fact as ω
ΦM 
is shifted ever further leftward by lowering K
D
, the increase in the contribution of phase declines while 
the increase in the contribution of magnitude stays the same.  Further trial shifting ω
ΦM
 leftward shows 
that using this method, achieving a Φ
M
 of 60° is impossible.   
 
An alternative methodology would be to allow K
P
 to float too.  As shown, shifting ω
ΦM
 rightward actually 
sped up the system.  If the main goal is to achieve a Φ
M
 of 60°, one could employ now a gain reduction 
to achieve this goal.  By a closer inspection of the Bode plot of this function, one sees that at around 10 
or 11 rad/sec, the phase angle is about ‐120°.  At this frequency the magnitude is about 22 dB.  Thus by 
applying a gain reduction of ‐22 dB, one will achieve a Φ
M
 of about 60°. 
 
2u JB · log(K
P-uddìtìonuI
) = -4 JB 
K
P-uddìtìonuI
= 1u
-
4
20
= u.6S1 
This yields 
Chaptei 8 – Fiequency Response
 
8‐25 
 
 
Figure 8.14 – Alternative method of PD control for Example 8.4 
Thus with a little reduction in low‐frequency gain (K
P
 set to 0.631 instead of 1), we have achieved the 
desired result. 
PID controller 
The PID  controller has the transfer function 
0
PIÐ
(s) = K
P
+
K
I
s
+ K
Ð
· s =
K
Ð
s
2
+K
P
s +K
I
s
 
So the controller contributes two zeros and additionally one pole at the origin.  The controller is actually 
a combination of a PI and a PD.  The pole at the origin is installed to increase the system type and thus 
to limit or eliminate steady‐state error.  The zero is added to stabilize the system, to add phase angle to 
reduce overshoot. 
If the numerator of the above transfer function is analyzed, one can see that the zeros will be at  
s =
-K
P
_ ¸K
P
2
- 4K
Ð
K
I
2K
Ð
 
Thus the zeros added will be complex if 4K
Ð
K
I
> K
P
2
.  Otherwise the zeros will be real as shown in 
Figure 8.15. 
Chaptei 8 – Fiequency Response
 
8‐26 
 
 
Figure 8.15 – Zero/pole map of PID controller 
The Bode plot of the PID controller is shown in Figure 8.16.  Noteworthy features are 
The integrator gives the M plot an initial slope of ‐20 dB/dcd.  The first zero then turns this drop 
into a flat run.  The second zero produces an upward slope of 20 dB/dcd after the second break 
frequency. 
The phase curve starts at ‐90° because of the integrator.  The first zero lifts this by 90° to 0°.  The 
second zero lifts this another 90° to a high‐frequency value of 90°.  This phase‐lift is used to 
increase the phase margin of the system to which the controller is applied.  If the zeros are far 
apart, the flat run of the M plot will be long and the two phase lifts will be distinct.  If the zeros 
are closer together, the flat run will be short and the phase lifts will be somewhat combined 
(one will not be finished before the other begins).   
A gain can be used to raise or lower the flat part of the M plot, as needed.  Recall, adding a gain 
does not affect the phase plot, because the phase contribution of a gain is 0° for all ω.   
The lifting of the magnitude plot by the second zero has a positive effect.  This makes the phase‐
crossover frequency higher because it lifts the right‐hand end of the magnitude curve of the 
existing system.  But since the phase generally decreases with w, this lifting may make the phase 
lower at the higher gain‐crossover frequency, so Φ
M
 is lower.  This scenario is the problem with 
PD control as seen on a Bode diagram.  The problems noted above for PD control generally 
apply to the D part of PID control too. 
Im
Re
‐K  ‐   K   ‐ 4K  K
‐K  +   K   ‐ 4K  K
P
P
P
P
2
2
D
D
D
D
I
I
2K
2K
Chaptei 8 – Fiequency Response
 
8‐27 
 
 
Figure 8.16 – Bode contribution of a PID controller 
Symmetrical Optimum – a frequency‐response‐based PID tuning method 
Problems 
2
0
 
l
o
g
 
M
φ
ω
ω
K
K
‐90
T
T
T
T
1
s
1
s
s + 1
s + 1
s + 1
s + 1
2
2
1
1
1 100 10 0.1
Composite