FFT funciton for vibration data

Hello,
I am working on vibration experiment. I got a data from a vibration sensor and I am trying to compute the FFT for that data. The experiment run several times and the period was different for each time, for example first run was for 3 minute and the second run was 30 second. Now I want to divide the run into equal samples but I have problem with that: I run the following code for all sample:
Fs = 1000; % Sampling frequency
num_samples=length(yvect); % yvect is my data
figure
NFFT1 = 2^nextpow2(num_samples);
Y1 = fft(yvect,NFFT1)/num_samples;
f1 = Fs/2*linspace(0,1,NFFT1/2+1);
plot(f1,abs(Y1(1:NFFT1/2+1)))
The output will be
but when I choose to divide each run to 1s ( 1000 sample ) then I got strange plot from FFT.
and I also saw some people using Y1 = fft(yvect - mean(yvect))/num_samples; and when I use it, it will give noting in the FFT plot. and what is the purpose from using it.

Answers (0)

Categories

Asked:

on 12 Feb 2014

Community Treasure Hunt

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

Start Hunting!