I have a very simple task but am not being successful.
I have a PWM generator in simulike runing at a certain frequency and certain duty cycle.
I want to take the fourier analysis of it and plot it in a scope.
What i expect to see is the DC component of the perioid signal... (i think?)
So if i have a period signal PWM signal with a magnitude of say 5 and duty cycle of .5 i expect to see a DC of 2.5 out on my scope.
How can i acomplish this? I have tried a few different blocks in simulink but im not getting what im expecting.
Perhaps my expecatations are wrong.

Antworten (1)

Pat Gipper
Pat Gipper am 22 Apr. 2024

0 Stimmen

I put it in a Matlab Fcn block and it seems to work. See the attached file for details.

3 Kommentare

Robert Scott
Robert Scott am 22 Apr. 2024
What are those blocks providing the feedback called?
Pat Gipper
Pat Gipper am 22 Apr. 2024
Bearbeitet: Pat Gipper am 22 Apr. 2024
The memory block on the bottom, "io" retains a pointer into the top memory block, "buffer", where the latest sample of the input "u" is stored. "buffer" is a circular memory for storing the block of data for calculating the FFT. I tried to store this information within the Matlab function, but it was extremely unhappy with this attempt. I also wanted to make the FFT length a variable, and this was also problematical. I gave up on this for now and am just using a 32 (or was it 64, I forget?) point fixed length FFT.
You can find memory in the discrete selection of Simulink.
Pat Gipper
Pat Gipper am 22 Apr. 2024
Bearbeitet: Pat Gipper am 22 Apr. 2024
Were you able to open the attached file "fft_fcn.slx"? It was written using Matlab/Simulink 2024a build.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Simulink finden Sie in Hilfe-Center und File Exchange

Produkte

Version

R2022b

Gefragt:

am 20 Apr. 2024

Bearbeitet:

am 22 Apr. 2024

Community Treasure Hunt

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

Start Hunting!

Translated by