02-04-2011 01:58 PM
I have a response of a system in excel from feeding it a step input. How can I use this data to derive a transfer function that models this response ? Any help would be great
02-04-2011 02:36 PM
Only have time to get you started here.
1. Take the derivative of the step response data to estimate the impulse response. (Normalize in case it was not a unit step)
2. Take the FFT of the impulse response to get the transfer function.
02-04-2011 02:48 PM
Ok. How do i take a derivative of a response of a system. All i have is the response of it in excel.
02-04-2011 02:49 PM
I used a step input
02-04-2011 02:49 PM
In the Mathematics palette there is a numeric derivative VI.
02-05-2011 11:56 AM
If you have access, the best is to use the "System Identification Toolkit", here us online manual:
http://zone.ni.com/reference/en-XX/help/372458C-01/TOC9.htm
and you can use this function:
http://zone.ni.com/reference/en-XX/help/372458C-01/lvsysid/est_transfer_function_model/#instance11
If you also have the System Identification Toolkit, you can do all of this from Signal Express. See this tutorial for more information:
http://zone.ni.com/devzone/cda/tut/p/id/4604
Hope this helps.
02-06-2011 07:53 AM
If you do not have the luxury of the toolkits mentioned by Barp. It is not by any means free. And as I can see it is no free eval versions out. You can do this by your self and some simple programming. When you apply a step function a system, then you will get the step response. In you apply the derivative to this step response, then you will get the impulse response. Take the FFT of the impulse response to obtain the frequency response of the system. Impulse response is a quick way to measure the frequency response of a device. Because an impulse in the time domain is equivalent to all frequencies of a sine wave in the frequency domain. We can use an impulse as an input to derive the frequency response. As you measure the effect of sine waves at all frequencies at one time. To use the impulse response method, you input an impulse into the system and measure the output. Then you take the output measurement and apply a Fast Fourier Transform (FFT). The result is the frequency response of the system. Creating an impulse is difficult in the real word, I will say almost undoable. But using the response method you can derive the impulse response. The basis of the step response method is that the derivative of a step function is an impulse. Like turning on a switch the vertical portion of the step function has an infinite derivative. To use the step response method, input a step pattern with a fast rising edge to your system. Measure the output waveform and take the derivative. The result is the impulse response of the device. Now you can apply the FFT to the impulse response and obtain the frequency response. To do this from your data in the excel sheet should be easy. Giving that the timing information in is provided in the excel sheet. It is also important that you capture the full step response in the step response. No skimping on the data points. And also use an adequate sample rate. Then taking the step response. That is important
Here is some links
http://en.wikibooks.org/wiki/Control_Systems/Transfer_Functions
http://www.ijcaonline.org/volume10/number6/pxc3872002.pdf
02-06-2011 01:52 PM
Coq Rouge
You are mistaken about eval version. We have been having eval versions of almost every toolkit since the platform DVD, in LV 8.6 if I not mistaken. You can get the eval version from :
and after going to Control Design and Simulation option (below) you can get to the set of software that would help in identifying the system:
https://lumen.ni.com/nicif/us/evaltlktcds/content.xhtml
Also, if you are student, you can always verify if your school don't have Site License (which includes System Identification) or you can buy the student edition, which includes an increadible amount of software for less than $70 (sorry for the advertisement, but this is not the first time I hear this misconception about those products...:). Here is the website:
http://www.ni.com/labviewse/select.htm
Of course, if you can't really have access to the software for some reason, those Control Design and the System Identification are based on LabVIEW code and you can recreate your own version of the functions. If you are looking into obtaining the transfer function response (not the coefficients) I would advice you to look on this function first:
http://zone.ni.com/reference/en-XX/help/lv/71/lvwave/Freq_Resp_Func_Mag_Phase/
This obtain the frequency response based on any input/output signal, even relaxing the need to do a step response of your system. The manual helps you understand what it does.
Of course, if you do not have
02-07-2011 04:50 AM
@Barp wrote:
Coq Rouge
You are mistaken about eval version. We have been having eval versions of almost every toolkit since the platform DVD, in LV 8.6 if I not mistaken. You can get the eval version from :
and after going to Control Design and Simulation option (below) you can get to the set of software that would help in identifying the system:
https://lumen.ni.com/nicif/us/evaltlktcds/content.xhtml
I went to the "Control Design and Simulation" kit product page and then Resources->Evaluation Software. Since I could not find anything here. I assumed no demo for the latter tool kit
02-07-2011 09:16 AM
Coq Rouge,
Yes, you are right. It can be misleading... to be able to see the evaluation for other softwares, you have to go under "Related Information" on the "Resources" page, which usually is hidden by bottom part. I forward this feedback to marketing.
Thanks!