Using FFT Methods
Why Use FFT Methods?
Goals For This Lesson
What Is Involved In Using The FFT For Identification?
Using Impulse Response Data?
Step Response
Response To General Inputs
You are at:  Basic Concepts - System Models  - FFT Methods
Click here to return to the Table of Contents
Why Use FFT Methods?

        FFT methods can be used to obtain transfer function models for systems.

Goals For This Lesson

 What are you trying to do in this lesson?

What Is Involved In Using The FFT For Identification?

        Using the FFT to get a transfer function of a system is not really overly complex.

        We will start with a relatively clean set of data.

        The algorithm is as follows.
  1. Load the input data and output data into the mathematical analysis program.
  2. FFT the input data and output data.
  3. Divide the output FFT by the input FFT and take the magnitude.  Since the input for our example is a unit impulse, the input FFT is 1.0.
  4. Plot the result as a Bode' plot.
  5. Treat the resulting Bode' plot as a frequency response - which it really is - and use frequency response methods to fit a transfer function to the calculated Bode' plot.
        Looking at the first step, you should realize that there are different programming environments in which you can do this.  You can load data into: The point is that you have a number of options, and there are several programming environments in which you can load data, and FFT the data you load.  The code to load a set of data into a Mathcad workspace is what we have here.

If we FFT the data in the plot above, and plot the magnitude of the FFT, we get the plot below.
The data plot is repeated at the left.
        This plot has several typical characteristics of FFT magnitude plots.         We can change the plot to a Bode' plot by doing the following.         Here's the plot that results.  This clearly looks like a Bode' magnitude plot.

There are some questions you need to answer about this system.


Enter your answer in the box below, then click the button to submit your answer.  You will get a grade on a 0 (completely wrong) to 100 (perfectly accurate answer) scale.

Your grade is:

        Next you can find the damping ratio for this system.


Enter your answer in the box below, then click the button to submit your answer.

Your grade is:

        Finally, we need to determine the resonant frequency.  First, we need to clarify the horizontal axis and what is being plotted there.  The plot we have been using is plotted with the array index along the horizontal axis.  In other words, our data array was one-dimensional and was just an array of the measured data points.         We're ready to compute the resonant frequency.       Now, we need some data.         So far we haven't had any problems with this technique.  Here's a review of the technique and some questions.

Using Step Response Data

        In this section we are going to use step response data to get a Bode' plot equivalent to evaluate system transfer functions.  Note the following.

        The line of reasoning above is tempting but wrong - as so many things in life seem to be.         Are there any conclusions we can draw from this?         To differentiate data numerically, the simplest approach is the following.

        Now, we can look at how to do the numerical differentiation in Mathcad and Matlab.

Using Step Response Data In Matlab

 Here's a Matlab workspace.

After you have the Bode' plot, then you need to be able to extract the transfer function from that data.  Click here if you want to review getting a transfer function from frequency response data.

        You should also observe the following precautions.

Using Step Response Data In Mathcad

        Here's a Mathcad workspace.  (Actually, a picture of a Mathcad workspace.  It's not live, obviously.)

        Here are the steps in the Mathcad example workspace.

Using General Response Data

        You may now realize that you can use a wide variety of input-output data and calculate a transfer function with FFT techniques.  The algorithm is simple.

Links To Related Lessons Lessons on Getting Models From Data
Send us your comments on these lessons.