From ControlsWiki

Jump to: navigation, search

Title: Bode Plots

Authors: Merrick Miranda, Jennifer DeHeck, Chris Bauman, Evan Leonard

Date Presented: October 26, 2006 /Date Revised:



Because it’s impossible to perfectly model a real chemical process, control engineers are interested in characterizing the robustness of the system – that is, they want to tune controllers to withstand a reasonable range of change in process parameters while maintaining a stable feedback system. Bode (pronounced bodee) plots provide an effective means to quantify the system’s stability.

Bode plots describe an open or closed-loop system as a function of input frequency and give a picture of the system’s stability. If all inputs into a system were constant, it would be a relatively simple task to control the system and its output. However, if an input value, such as temperature, varies sinusoidally, then the output should also be describable as a sinusoidal function. In this case Bode plots are a useful tool for predicting the response of the system.

There are two Bode plots used to describe a system. The first graphs amplitude ratio as a function of frequency. The amplitude ratio is the amplitude of the output sine wave divided by the input sine wave. Systems with an amplitude ratio greater than 1 are considered unstable. The second plot graphs phase shift as a function of frequency, where phase shift is the time lag between the output and the input sine curves divided by the period of either of the sine curves and then multiplied by -360° or -2*pi radians to express this shift as an angle.

A description of amplitude ratio, phase shift and frequency response

A good way to understand the physical meaning of amplitude ratio and phase shift and how they change as a function of the frequency of the input stream is through the analysis of a simple system. A well-insulated continuously-stirred tank reactor (CSTR) with an input flow equal to its output flow is a good example (Figure 1). For this description we consider inlet and outlet temperature, but inlet concentration or feed rate could also be used.


Figure 1: CSTR example

If the CSTR is initially at 55˚C, and the inlet flow has a temperature that fluctuates sinusoidally between 50˚C and 60˚C, the outlet temperature will also vary sinusoidally. If the tank is relatively large, and the frequency of the input fluid is very high—it quickly bounces in a range between 50˚C and 60 ˚C such that the outlet will be a sine wave, but with a significantly smaller amplitude than that of the inlet. There isn’t enough time for the input flow to affect the overall temperature before the temperature changes. If the frequency is very low, with a period measured in hours or days, the output would also be a sine wave with temperatures ranging from 50˚C to 60˚C. For this reason, Bode plots are useful because they represent a range of different frequency responses in two plots.

The phase shift describes the time lag between the input change and seeing this change reflected in the output stream. In our example, this is controlled by the flow rate and the volume of the CSTR—the volume of the CSTR divided by the input flow rate is the time constant of the system, and is expressed in units of time. A system with a small CSTR and a high flow rate (and therefore a small time constant/mean residence time) will respond very quickly to changes in flow rate. When a process is in place, flow rate and the volume of the CSTR will be constant, so the time constant of the system will also be constant. As frequency of the input increases, the period of the input decreases and the phase shift becomes larger. This can be seen in the following graphs:


Solid line = input, dashed line = output (graphs adapted from Bequette)

Constructing Bode plots

Bode plots concisely display all relevant frequency input and output information on two plots, amplitude ratio as a functions of frequency and phase shift as a function of frequency. The amplitude ratio plot is log log while the phase angle plot is semilog.

To construct a Bode plot, the engineer would have empirical data showing input and output values that vary as sinusoidal functions of time. For instance, there might be inlet temperature data that varies sinusoidally and the outlet temperature data that also varies sinusoidally. For example, given a heat exchanger that is used to cool a hot stream, we can vary the flow rate of the hot stream and model it sinusodially. (This can be done using ODE's & an Excel model of a heat exchanger.)

Figure 2 below includes inlet flowrate (process fluid stream) varying as a sinusoidal function and the hot temperature exiting the heat exchanger likewise varying as a sinusoidal function. Portions of this graph are not yet at steady-state.


Figure 2: Inlet Flowrate modeled by Fs = 0.1 + 0.1 * SIN( Pi / 4 * t).

Bode plots are constructed from steady-state data. Figure 3 shows part of the steady-state region of the same data used for Figure 2.


Figure 3: Steady-state inlet flow rate and outlet temperatures varying as sunusoidal functions.

To collect a single data point for a Bode plot we will use the information from a single period of the inlet flow rate and the corresponding temperature from the hot exiting stream.

The amplitude ratio, AR, is the ratio of the amplitude of the output sinusoidal curve divided by the amplitude of the input sinusoidal curve


The value of the amplitude ratio should be unitless so if the units of the input frequency and the units of the output frequency are not the same, the frequency data should first be normalized. For example, if the input frequency is in ˚C/min and the output frequency is also in ˚C/min, then AR = ˚C/˚C so it’s unitless and does not need to be normalized. If instead, the input frequency is in liters/min and the output frequency is in ˚C/min, then AR = ˚C/liters. In this case the inlet and outlet frequencies need to be normalized because the ratio AR = ˚C/liters doesn’t say anything about the physical meaning of the system. The value of AR will be completely different if the units of AR were Kelvin/gallon.

To find the phase shift, the periods of the input and output sine curves need to be found. Recall that the period, P, is the length of time from one peak to the next


The phase shift is then found by


Using these values found from multiple perturbations in feed flow rate it is possible to construct the following Bode plots.


Figure 4: Bode Plot (Amplitude Ratio) [Log-Log Plot]


Figure 5: Bode Plot (Phase Shift) [Semi-Log]

Bode Stability Criterion

As previously mentioned, the controls engineer uses Bode plots to characterize the stability of the system. If you were to find that the amplitude ratio is greater than 1 the system would be unstable at that frequency. An important stability criterion is that AR < 1 when phase shift = -180 degrees (or -pi radians). This is called the Bode stability criterion and if it holds for a closed-loop system, then that system will be stable. If this criterion is not satisfied and you were to put a feedback controller on this process, as done in PID tuning via optimization [PID_HeatExchange.xls – Note there are still errors in this file and a link will be provided once the file is operational.], the process would explode due to the response lag. The reason for this is that the system might think temperature is too low when it's actually to high, so it would decrease cooling water rather than increase it. Also, with an AR < 1, an error in input is amplified in the output, so the system will lose control due to amplification of error. This could obviously be a dangerous situation, for example in an exothermic CSTR, which could explode. This can also be seen by following the procedure above for the PID_HeatExchange.xls file.

Rules of Thumb when analyzing Bode plots

Generally speaking, a gain change shifts the amplitude ratio up or down, but does not affect the phase angle. A change in the time delay affects the phase angle, but not the amplitude ratio. For example, an increase in the time delay makes the phase shift more negative for any given frequency. A change in the time constant changes both the amplitude ratio and the phase angle. For example, an increase in the time constant will decrease the amplitude ratio and make the phase lag more negative at any given frequency.

Table 1. Rules of Thumb
Change Effect
Gain Change Amplitude ratio is shifted up or down; no change in phase angle
Time Delay Phase angle changes, but no change in amplitude ratio

Historical Note

Prior to the advent of powerful computer modeling tools, controls engineers would model systems using transfer functions. Readers interested in learning more about how these were used to construct Bode plots should refer to Bequette's Process Control: Modeling, Design, and Simulation (see References). This wiki assumes that the engineer already has data in Excel, etc, that shows the sinusoidal behavior of input and outputs.

Example 1 – Determine the amplitude ratio

You are a controls engineer and wish to characterize a heat exchanger used in a chemical process. One of the many things you are interested in knowing about the system is how the hot outlet temperature responds to fluctuations in the inlet flow rate. Using data for a particular inlet flow rate, you graphed normalized (why?) flow rate and normalized hot outlet temperature vs. frequency (rad/min). Use this graph to determine the amplitude ratio.



Because flow rate units and temperature do not have the same units, these values needed to be normalized before calculating the amplitude ratio. To normalize flow, use the following equation:

Fnorm = (F - Fmin)/(Fmax – Fmin) , where F is the flow rate of a particular data point.

In this problem temperature, T, is in ˚C, so

Tnorm = (T -273.15)/100

To find the amplitude of both wave functions, first recall that the amplitude of a wave is the maximum height of a wave crest (or depth of a trough). For one steady-state wave produced from a column of values in Excel, you could quickly calculate the amplitude by using the max( ) and min( ) Excel functions. [This can be found using Excel help.] If you opted to find the amplitude this way, then the amplitude for a single wave function would be

Amplitude = [max( ) – min( )]/2

Note that this is just one way to find the amplitude of a wave. It could also be found simply by reading the values off the graph of a wave.

Once the amplitudes of the inlet and outlet waves are found, use the values to find the amplitude ratio, AR, as follows:

AR = outlet stream’s amplitude / inlet stream’s amplitude = 0.0486/0.499 = 0.0974

Example 2 – Determine the phase shift

The following graph shows how inlet flow and both the hot and cold outlet temperatures vary as sinusoidal functions of time. This graph was generated using the same data for the heat exchanger of Example 1. Use this graph to find the phase shift between the inlet flow and the hot outlet stream.



Determine the period (P) – This can be done by finding the time from one peak to the next of a given wave. In this case, we want to know the period of the inlet flow rate, so P = 1.14s.

Determine the lag (delta P) – This can be done by finding the time difference between the peak of the inlet flow rate and the peak of the hot outlet stream. (Remember that the hot outlet wave lags the wave of the inlet flowrate). deltaP = 0.87s

Phase shift = 0.87s / 1.14s * -2pi = -4.80

Since we're only concerned with time values for finding the phase shift, the data doesn't need to be normalized.

Multiple Choice

1.) What is the purpose of Bode plots?

a) They look cool!

b) They show system stability.

c) They show how frequency varies with time.

d) They are based on a single frequency vs. time plot.

2.) Bode plots are for which of the following?

a) An open-looped system

b) A closed-looped system

c) Both a and b

d) None of the above

Submitting answers to the multiple choice questions

  • Authors of this wiki, please email the correct answers to (and please remember to indicate which wiki article the answers correspond to).

  • Everyone else, the deadline for submitting your answers is the start of class on Thursday, 10/26.

    You are expected to work on these multiple choice questions under the Honor Code.

    Please use the following link to submit your answers to the above mutiple choice questions:


Bequette, B. Wayne. Process Control: Modeling, Design, and Simulation. pp 172-178, 214-235. Upper Saddle River, N.J. Prentice Hall, PTR 2003.

Liptak, Bela G. Process Control and Optimizaton. Volume 2. Instrument Engineers Handbook. Fourth Edition. CRC Press, Boca Raton Fl. 2003.

Personal tools