How can I achieve to show the natural frequencies with FFT on sensor data?

3 ビュー (過去 30 日間)
stamatia panagiotopoulou
stamatia panagiotopoulou 2019 年 6 月 13 日
コメント済み: David Goodmanson 2019 年 6 月 19 日
Hello,
I have a dataset of timeseries of digital inclinometers and I want to extract the natural frequency of the structure. Currently, my code is where sgfxM8 is the filtered x inclination :
xi=sgfx-mean(sgfx)
freq = 0:Fs/length(xi:Fs/2; %frequency array for FFT
xdft = fft(xi); %Compute FFT
xdft = 1/length(xi).*xdft; %Normalize
xdft(2:end-1) = 2*xdft(2:end-1);
but the result is very close to 0 Hz. Is there any other option? Thanks in advance.
\
The frequencies are between 0-0.002 Hz.
  6 件のコメント
stamatia panagiotopoulou
stamatia panagiotopoulou 2019 年 6 月 18 日
編集済み: stamatia panagiotopoulou 2019 年 6 月 18 日
Dear David,
Thank you for your time and you are correct to all your comments. The noise you observed is from vechiles and the the data recording is not uniform for monitoring reasons (observe traffic periods). Yes, I am excepting low frequencies but not the exact frequency. I probably did not apply correct the median filter to remove spike noise at first.
Do you have any suggestion on that? I think I have to remove all the data are 3 times the standard deviation and then apply the median filter. Could you advise about that?
Thank you again.
David Goodmanson
David Goodmanson 2019 年 6 月 19 日
Hi stamatia,
First, what kind of frequencies are you looking for? With a 10 sec sampling interval (and only for part of the time), the maximum frequency you can get to is, realistincally, about 0,02 Hz, if that.

サインインしてコメントする。

回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by