Why do the plots using the Spectrum Analyzer block in Simulink not agree with the Bode plot of a continuous system?

3 次查看(过去 30 天)
I would like to use the "Simulink Extras -> Additional Sinks -> Spectrum Analyzer" block to compute the frequency response of my Simulink model so that I can compute an equivalent linear system.
However, I see a difference between the phase response computed by the Spectrum Analyzer and the actual phase response of the system. I have connected a "Simulink -> Sources -> Band-Limited White Noise" block to the input of a "Simulink -> Continuous -> Transfer Function" block which is configured to be a first-order lag, and then the phase lag shown by the spectrum analyzer is rolling off to minus infinity instead of approaching 90 degrees as expected.

采纳的回答

MathWorks Support Team
编辑:MathWorks Support Team 2022-12-26
The discrete-time spectrum analyzer coupled with a discrete-time input is not well suited to the task of identification of a continuous-time system.
If instead of using a white noise input, a continuous chirp signal is used, the spectrum analyzer shows a better approximation of the transfer function. This is because a discrete-time white noise signal is sampled and held (ZOH) when it is passed as an input to a continuous transfer function. Therefore, the output signal is the same as the output of the transfer function for a continuous white noise passed through the equivalent ZOH transfer function. Hence the spectrum of the output signal is not the same as when a continuous time white noise signal is fed to a continuous time transfer function. In essence in the above case the spectrum analyzer is displaying the frequency response of a ZOH and a first order continuous time transfer function connected in series. The ZOH causes a roll off in the phase.
There are several products which are better suited than the Spectrum Analyzer block for obtaining a linear estimate of a non-linear Simulink model.
First, Simulink has the ability to linearize a model. This can be done with functions such as LINMOD, LINMOD2, etc... For more information, execute the following command at the MATLAB prompt:
doc linmod
or visit the following URL:
https://www.mathworks.com/help/simulink/ug/linearizing-models.html
Second, Simulink Control Design is an add-on to Simulink which has enhanced linearization features and includes the Simulink Control Design GUI. More information is available at the following URL:
Finally, there is the System Identification toolbox which allows you to retrieve system parameters based on measured input and output. More information is available at the following URL:

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Linear Model Identification 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by