Real-Time frequency analysis of acceleration data
조회 수: 8 (최근 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!