Real-Time frequency analysis of acceleration data
3 次查看(过去 30 天)
显示 更早的评论
Hi,
I am using Simulink Desktop Real-Time environment for reading a 3-axis acceleration sensor. The data is sampled in 2kHz and contains the magnitude of the acceleration. For each of the axis I would like to perfom some kind of FFT with the last 4 received values and find the dominant frequencies.
One criterium is that the frequencies in each axis should be comparable such that I can find "the" frequency of the measurements over all axis.
Does anyone have an idea on how to achieve this?
Thanks in advance,
Max
EDIT: I should have been clearer: I am working in Desktop Real-Time, but in external mode.
0 个评论
采纳的回答
Jan Houska
2021-9-10
Hi Max,
you can use blocks from the DSP System Toolbox library. There is a Buffer block that packs single data samples to buffers usable for computing the FFT, and then there is a FFT block that actually computes the FFT. Both these blocks are supported with Simulink Desktop Real-Time.
But if the number 4 is not a typo, this is way too short a buffer for FFT. You cannot get any meaningful frequency information from just 4 samples. The buffer must be significantly longer to get any useful results.
Good Luck, Jan
3 个评论
Jan Houska
2021-9-20
Hi Max,
I believe that both the Buffer and FFT blocks do support code generation. Is there any error you are getting when trying to use these blocks in external mode? Please beware that the FFT buffer length should be a power of two for best performance. Code generation may even require the buffer length to be a power of two.
Good Luck, Jan
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Target Computer Setup 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!