Bode Plot Demonstration Program

 Revised 17 July 2002, 15 February 2005, 9 June 2006

 

A topic which frequently proves difficult for undergraduate electrical engineering students is the relationship between the poles and zeros of the transfer function H(s) and the sinusoidal steady-state response.  A generalized transfer function (written as a ratio of polynomials in the Laplace-transform variable s) is:

 

 

where z1zm are the zeros of H(s) and p1pn are the poles of H(s).  The magnitude and phase of the sinusoidal steady-state frequency response may be determined from H(s) by substituting  jw for s.  The magnitude and phase of the sinusoidal steady-state response may be found by:

 

 

Texts often depict a graphical means of computing H(jw) from the magnitudes  and phases of the individual phasors and give a few static examples.  Bode_plot_73 is a Matlab script which illustrates dynamically the derivation of the Bode plot from a transfer function.   Numerator and denominator polynomials coefficients are entered into a graphical user interface.  Coefficients of zero for powers less than the highest power of s must not be omitted.  (Example: the coefficients of s2 + 1000 would be entered as 1 0 1000).  Expressions are also permitted (for example, denominator coefficients 1 2*0.5*2*pi*1000 (2*pi*1000)^2  would represent a second-order transfer function with a natural frequency of 1000 Hz and a damping ratio of 0.5).  The user interface permits selection of the frequency range, the number of frequency steps, linear or logarithmic frequency sweep, and whether to sweep throughout the entire frequency range or to run in a “freeze-frame” mode.   The user clicks a button on the user interface to continue once all data have been entered.

 

The program checks that the transfer function is valid (n is greater than or equal to m) and that the order of the denominator is at least 1. Pole and zero locations are displayed in rectangular form on the command window.  A graphics window appears which is updated at each frequency step.  An example window from an all-pass (phase-shift) network is shown below.  This particular network has a transfer function:

 

.

 

 

The upper-left hand window shows phasors jw, z1, and jw – z1 plotted on the complex s-plane at 100 Hz.  The lower-left hand window shows phasors  jw, p1, and jw – p1 plotted on the complex s-plane.  The right-hand displays show the Bode magnitude and phase plots for the sweep frequencies from the start frequency to the current frequency.      

 

The Bode plot demonstrator is available in .zip format.  Download the archive and extract it to any directory (this directory must be on the Matlab search path or be added to the search path before the program can be run).  Type “bode_demo” to run the program.  

 

Send comments or questions about the Bode plot demonstration program to dbeams@uttyler.edu.