How to find Fourier Transform Peaks ?
조회 수: 5 (최근 30일)
이전 댓글 표시
Hi, I am a student in engineering and my project is about identifying frequencies corresponding to vibrations in internal combustion car engines. I have obtained the signal of the vibrations via accelerometer connected to laptop microphone and transformed it in frequency domain via FFT command.
My problem is that I cannot figure the way how to generate a code that would return me the frequencies that present some peak values of the spectrum. For example, my highest vibration is somewhere near to 30 Hz, but how can I instuct Matlab to automatically return precise values?
Does anyone knows codes and functions related to Fourier waveform processing?
Thank you in advance!
댓글 수: 0
답변 (1개)
Matt J
2013년 7월 11일
편집: Matt J
2013년 7월 11일
Rather than using FFTs, I would do something like this
peak = fminsearch(@(f) -abs(dot( exp(-2j*pi*f*yourTimes),yourSamples)),30);
where yourSamples are your time domain signal values and yourTimes are the times in seconds where the samples are recorded.
댓글 수: 0
참고 항목
카테고리
Help Center 및 File Exchange에서 Vibration Analysis에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!