Fourier Transform in Simulink

3 次查看(过去 30 天)
Zjuv9021
Zjuv9021 2019-12-20
Hello,
I'm simply trying to add up an arbitrary number of sine waves and output the frequency chart with the blocks below:
fft.PNG
the matlab function is to perform the fftshift:
function y = fcn(u)
y = fftshift(u)
size(y)
end
But the output of the array plot doesn't seem to make sense, as I've chosen 10 Hz and 20 Hz within the Sine Wave block:
Capture.PNG
The output of the array plot I would suspect should show peaks at both 10 Hz and 20 Hz, but displays something I'm not quite understanding:
Capture2.PNG
Does anyone have any suggestions on something I'm simply missing here?
  2 个评论
Nikhil Sonavane
Nikhil Sonavane 2019-12-23
Can you share your Simulink model so that it is easier for me to reproduce your problem?

请先登录,再进行评论。

回答(2 个)

Ridwan Alam
Ridwan Alam 2019-12-23

Nikhil Sonavane
Nikhil Sonavane 2019-12-26
The Matrix Block used isn't giving desired results as the Sum over field is not configured properly. Change the Sum over field to Specified dimension and select the Dimension as 2. For more information execute the following command in MATLAB command window and execute it-
openExample('dsp/TransformTimeDomainDataIntoFrequencyDomainExample')

Community Treasure Hunt

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

Start Hunting!

Translated by