MATLAB Answers

How to plot the frequency spectrum in simulink

129 views (last 30 days)
!ntel
!ntel on 11 Oct 2013
Commented: !ntel on 16 Oct 2013
Hello, I am learning matlab and I am trying to plot a frequency spectrum of a simple sine wave in simulink but the problem is i could not get the actual frequency spectrum that I expect... I am using power spectral density to view the frequency spectrum. Will it work fine or am I using a wrong instrument.
This is my simulink model to plot the and view the frequency spectrum of a simple sine wave and sine wave characterstics are as:
My Matlab version in R2012a. Here when I keep the 'W' as 35 rads/sec but I am getting the frequency spectrum as follows:
So here I expect the impulse or peak in the Power Spectral Density graph at 35 but it is showing at 25 Could any one solve this issue for me.
If I am doing wrong by using this instrument to view the Frequency spectrum, please guide me...
Thanks in advance...

Accepted Answer

Jonathan LeSage
Jonathan LeSage on 15 Oct 2013
Edited: Jonathan LeSage on 15 Oct 2013
By default, the "Power Spectral Density" (PSD) block is set to have a sample time of Ts = 0.1 seconds. You should open the PSD block and lower the sampling time (Ts = 0.05 seconds or less should be sufficient at this frequency). Upon running your Simulink code again, you should see the peak where you originally anticipated it to be!
The sinusoidal input that you are providing to the PSD block has a frequency of 35 rad/s or approximately 5.6 Hz. The default sample time of Ts = 0.1 seconds equates to a sampling rate of 10 Hz. To prevent aliasing (where a signal losses information), you should always ensure that sampling rates are double the signal frequencies. This condition is known as the Nyquist rate .
Hope this helps!

More Answers (0)

Community Treasure Hunt

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

Start Hunting!