How to find transfer function of real world system?

In summary, a linear system's transfer function can be found by inputting a function with a certain frequency and reading the output, or by measuring the time domain response to an impulse and taking the Fourier transform. However, this method may not be feasible in real life as it requires idealized waveforms and may not accurately represent the system's true behavior. The presence of a mixer adds complexity to the process as it is a nonlinear component.
  • #1
perplexabot
Gold Member
329
5
Hey all!
I am trying to figure out how one goes about to try and find the transfer function (impulse response) of a real life system. Assuming the system is LTI.

This "system" I speak of is a channel that is comprised of components such as linear amps, a mixer (can we even assume a mixer is linear? If I'm not mistaken a mixer exists due to the nonlinearities of nature) and a DAC.

I know to find the transfer function (or impulse response) of a system (theoretically speaking) one should find Vo(ω) / Vi(ω) (or input a delta function and find the output in the case of the impulse response. I know this is not possible since the delta function is only an ideal construct).

One question I have is, for finding Vo(ω) / Vi(ω), do we just input a function (say a sin wave, sin(ω1) ) with a certain frequency and read the output, say fo? Is the transfer function then = fo / sin(ω1)?

The only way I can think of that seems to make sense to me is to sweep through the frequencies that seem important to me (or the system) through the input and study the output. This will give me a plot (or a set of data points) that represents the transfer function would it not?

I apologize if my post seems all over the place, but I thought I would let you know my process of thought.

Basically, my question is:
"How do you find the transfer function of a real world system, assuming the system is LTI?"

Thank you : )
 
Engineering news on Phys.org
  • #2
There is a whole body of study called system identification. Search for that and you'll find lots of literature.
 
Last edited by a moderator:
  • Like
Likes MarcoBarbatoPd and perplexabot
  • #3
perplexabot said:
The only way I can think of that seems to make sense to me is to sweep through the frequencies that seem important to me (or the system) through the input and study the output. This will give me a plot (or a set of data points) that represents the transfer function would it not?

Yes - in principle, you are right.
However, it is important to record not only "data points" (magnitudes) but, of course, also the corresponding phase deviations between input and output.
Therefore: The transfer function of a linear system is
H(jw)=Vout(jw)/Vin(jw)=|Vout(w)/Vin(w)|*exp(j*phi).

As an example: If the input voltage is sinusoidal Vin=1*sin(2Pi*f*t) (volts), the output voltage (magnitude, phase shift) is identical to the complex transfer function H(jw).
 
  • Like
Likes perplexabot
  • #4
If you measure the time domain response to an impulse you have the time domain equivalent of the frequency response. That is, the Fourier transform of the impulse response is the frequency response of the system(and vice versa). (assume complex numbers, so you are really talking frequency and phase.)

Likewise, if you measure the frequency response (and phase) and take the inverse Fourier transform (in the proper data representation), you then have the impulse response.

You can also measure the step response and derive the impulse response from that.

The mixer is a wrinkle. For example a 100Mhz mixer mixing to 10 Mhz going through an IF stage and filter. You put in a 100Mhz step, and get a 10MHhz step response output. The 10MHz envelope represents the step response for the RF, mixing and IF system. You can also sweep the 100Mhz and look at the frequency and phase response at different points.
 
  • Like
Likes perplexabot
  • #5
LvW said:
Yes - in principle, you are right.
However, it is important to record not only "data points" (magnitudes) but, of course, also the corresponding phase deviations between input and output.
Therefore: The transfer function of a linear system is
H(jw)=Vout(jw)/Vin(jw)=|Vout(w)/Vin(w)|*exp(j*phi).

As an example: If the input voltage is sinusoidal Vin=1*sin(2Pi*f*t) (volts), the output voltage (magnitude, phase shift) is identical to the complex transfer function H(jw).
Thank you! I guess I will expand on this thought.

meBigGuy said:
If you measure the time domain response to an impulse you have the time domain equivalent of the frequency response. That is, the Fourier transform of the impulse response is the frequency response of the system(and vice versa). (assume complex numbers, so you are really talking frequency and phase.)

Likewise, if you measure the frequency response (and phase) and take the inverse Fourier transform (in the proper data representation), you then have the impulse response.
I know of this already ; ) But thank you regardless!

meBigGuy said:
You can also measure the step response and derive the impulse response from that.
Hmmmm. So I know through literature that finding the impulse response (which I know is the inverse Fourier of the Transfer Function) of a system requires sending an impulse through the input and to study the resulting output (or as you say sending in a step and studying the resulting output). Are these methods feasible in real life? As in, are they achievable? Can we indeed find the transfer function of a real world system by sending in these idealized waveforms (steps and impulses)? Do close approximations of these waveforms work instead?

I know that impulse functions require the superposition of infinite sin waves of all frequencies (in Fourier analysis). So technically, the method of sweeping through frequencies at the input and studying the output (as mentioned in the OP) seems to be an approximation of the impulse response. (right?)

meBigGuy said:
The mixer is a wrinkle. For example a 100Mhz mixer mixing to 10 Mhz going through an IF stage and filter. You put in a 100Mhz step, and get a 10MHhz step response output. The 10MHz envelope represents the step response for the RF, mixing and IF system. You can also sweep the 100Mhz and look at the frequency and phase response at different points.
Thank you!
 
Last edited:
  • #6
perplexabot said:
This "system" I speak of is a channel that is comprised of components such as linear amps, a mixer (can we even assume a mixer is linear? If I'm not mistaken a mixer exists due to the nonlinearities of nature) and a DAC.
A property of a linear system is that its output will only contain the frequency components of its input. In other words, a linear system can't output a signal at a different frequency than what you're feeding it, which makes a mixer a nonlinear element, i.e. a transfer function can't capture the input-output relationship of any system containing a mixer.

perplexabot said:
The only way I can think of that seems to make sense to me is to sweep through the frequencies that seem important to me (or the system) through the input and study the output. This will give me a plot (or a set of data points) that represents the transfer function would it not?
Manually sweeping over some frequency range of interest with a signal generator (usually around crossover/resonance frequencies) and recording the small-signal frequency response is a time-honoured, and usually very effective, method of designing controllers for a large class of systems. You typically don't bother with the transfer function then, since you already have the frequency response, and that's all you need for a large segment of design methods in classical control theory.

Alternatively, if you have the equipment, you can feed the system a test signal that approximates a flat amplitude spectrum over the bandwidth of the system (chirp, "white" noise, PRBS signals etc.), and run the output through a spectrum analyzer.

perplexabot said:
Basically, my question is:
"How do you find the transfer function of a real world system, assuming the system is LTI?"
No physical system has the input-output relationship of a transfer function, but it can be a good approximation under the right circumstances, so it really depends on what you want to use the transfer function for. Thankfully, you don't typically need a very accurate model of a system in order to control it well (that's the beauty of negative feedback).

Very often, you can assume a model order based on the appearance of, for instance, the step response of the system, i.e. does the system have first- or second-order characteristics? Time constant, percent overshoot, damping factor etc. That should allow you do get a decent estimate of the low-frequency behavior of the system, which is usually all you need to enforce stability and robustness, barring any significant high-frequency resonances.
 
  • Like
Likes donpacino and perplexabot
  • #7
Hewlett=Packard in the 1960's was a great company . They made analyzers to do what you ask.

Here's an appnote that somebody had the good judgement to preserve.

http://literature.cdn.keysight.com/litweb/pdf/5953-5136E.pdf

upload_2015-8-6_14-42-18.png


Similar articles were published in the "Hewlett Packard Journal" ca 1970. I remember my awe as a young engineer upon reading them.
 
  • Like
Likes perplexabot
  • #8
I guess a network analyzer would be the class piece of equipment to totally analyze your system.

http://cp.literature.agilent.com/litweb/pdf/5989-1420EN.pdf
 
Last edited by a moderator:
  • Like
Likes perplexabot
  • #9
I will be teaching control theory soon to a group of practical, rather than academic students. The main problem I had before was making the students realize that transfer functions represented real life physical things. Does anyone know if there is a list of these physical "things" (motors, heaters etc.) along with the transfer function that describes them? I haven't been able to find one that doesn't go into mathematical detail- this detail has the effect of losing the students.
 
  • #10
Frank H said:
Does anyone know if there is a list of these physical "things" (motors, heaters etc.) along with the transfer function that describes them?
Several years ago I was teaching control theory to students. According to my experience it was a good thing to support all the theoretical stuff with some real-world examples like
* x-y plotter (DC motor within a servo loop),
* PLL (good example to show the relation between linear and non-linear behaviour)
* AGC (good example for disturbing loop behaviour).
 
  • Like
Likes perplexabot
  • #11
Frank H said:
I will be teaching control theory soon to a group of practical, rather than academic students. The main problem I had before was making the students realize that transfer functions represented real life physical things. Does anyone know if there is a list of these physical "things" (motors, heaters etc.) along with the transfer function that describes them? I haven't been able to find one that doesn't go into mathematical detail- this detail has the effect of losing the students.

Why use a speed control for a car as an example?
You can incorporate basic feedback, PI controller, relate it to the real world, do conversions (wheel speed -> car speed) etc. Most students should be able to pick up on it, since it is a physical thing that most people have dealt with. The actual math you show can be very simple (make a magic block that converts the accelerator pedal to car acceleration). Then they only need to worry about acceleration, speed and distance.

Another example that can be fun is to make a controller to parallel park a car. Make a model in simulink or MATLAB that will show the car driving around. Choose what "sensors" the car has, and have the students build a parking algorithm. You can show what
 
  • Like
Likes perplexabot
  • #12
Excite it with a sinewave , swept over a few decades, plot magnitude and phase response on log log paper (that's a Bode Plot)

show them how each break point is a pole or zero

and how natural is the progression from Bode Plot to poles & zeros to the fraction you seek


old jim
 
  • Like
Likes perplexabot

What is a transfer function and why is it important?

A transfer function is a mathematical representation of the relationship between the input and output of a system. It is important because it allows us to analyze and understand the behavior of a system, and make predictions about its response to different inputs.

What are the steps to find the transfer function of a real world system?

The steps to find the transfer function of a real world system are as follows:1. Collect data on the input and output of the system.2. Plot the data on a graph to visualize the relationship between the input and output.3. Determine the order of the system by counting the number of energy storing elements.4. Use mathematical techniques such as Laplace transforms or differential equations to derive the transfer function.5. Validate the transfer function by comparing its predictions to the actual behavior of the system.

What are some common challenges in finding the transfer function of a real world system?

Some common challenges in finding the transfer function of a real world system include:1. Nonlinear behavior of the system.2. Uncertainty in the input and output data.3. Complexity of the system, especially if it has multiple inputs or outputs.4. Time-consuming and tedious mathematical calculations.5. Difficulty in validating the transfer function due to external disturbances or changes in the system over time.

What are some techniques for simplifying the process of finding transfer function of a real world system?

Some techniques for simplifying the process of finding the transfer function of a real world system include:1. Using linearization techniques to approximate nonlinear behavior.2. Using advanced mathematical software or tools to perform calculations.3. Breaking down complex systems into smaller, more manageable subsystems.4. Gathering more accurate and precise data through experimentation.5. Collaborating with other experts or researchers in the field.

How can the transfer function of a real world system be used in practical applications?

The transfer function of a real world system can be used in practical applications in a variety of ways, including:1. Designing and optimizing control systems for the system.2. Predicting the response of the system to different inputs.3. Identifying and diagnosing potential issues or failures in the system.4. Developing mathematical models for the system for further analysis.5. Improving the overall performance and efficiency of the system.

Similar threads

  • Electrical Engineering
Replies
3
Views
793
  • Electrical Engineering
Replies
30
Views
4K
  • Electrical Engineering
Replies
2
Views
2K
  • Engineering and Comp Sci Homework Help
Replies
2
Views
1K
  • Electrical Engineering
Replies
1
Views
2K
Replies
11
Views
2K
  • Engineering and Comp Sci Homework Help
Replies
16
Views
946
  • Engineering and Comp Sci Homework Help
Replies
3
Views
1K
  • Engineering and Comp Sci Homework Help
Replies
5
Views
1K
Replies
6
Views
2K
Back
Top