# FFT plot of velocity

2 views (last 30 days)

Show older comments

I have a plot of velocity (mm/s) against time for 15 sec. I want to observe the same in frequency domain. I have done the following code in MATLAB also for the same.

Whether the FFT results also have mm/s as the unit? If I want to get the result in terms of mm/s, what should I do?

How can I get the one-third octave band plots from the FFT above?

Am I approaching this correctly?

[v,T,vT]=xlsread('vib.xls');

t=v(:,1);

y=v(:,2);

fs=750;

t=0:1/fs:(length(y)-1)/fs;

figure(1);

plot(t,y);

title('PLOT OF VELOCITY');

ylabel('Velocity Amplitude');

xlabel('Time (in seconds)');

grid on;

nfft = length(y);

K = fft(y,nfft);

K = K(1:nfft/2);

mx = abs(K);

f = (0:nfft/2-1)*fs/nfft;

figure(2);

plot(f,mx);

grid on;

##### 0 Comments

### Answers (3)

Rick Rosson
on 5 Nov 2015

Edited: Rick Rosson
on 5 Nov 2015

Rick Rosson
on 5 Nov 2015

Edited: Rick Rosson
on 5 Nov 2015

Please try the following experiment:

Fs = 48000;

dt = 1/Fs;

t = (0:dt:0.25-dt)';

A = 5;

x = A*ones(size(t));

N = size(x,1);

df = Fs/N;

f = -Fs/2:df:Fs/2-df;

X = fftshift(fft(x));

figure;

plot(t,x);

grid on;

xlabel('Time (in seconds)');

ylabel('Velocity (in mm/sec)');

title('Time Domain');

figure;

ax(1) = subplot(2,1,1);

plot(f/1000,abs(X)/N);

grid on;

xlabel('Frequency (in kilohertz)');

ylabel('Amplitude (in mm/sec)');

title('Amplitude Spectrum');

ax(2) = subplot(2,1,2);

plot(f/1000,abs(X)/Fs);

grid on;

xlabel('Frequency (in kilohertz)');

ylabel('Amplitude Density (in mm/sec per hertz)');

title('Amplitude Spectral Density');

linkaxes(ax,'x');

zoom xon;

Now try a second experiment:

Fc = 5000;

A = 12;

y = A*cos(2*pi*Fc*t);

Y = fftshift(fft(y));

figure;

plot(t,y);

grid on;

xlabel('Time (in seconds)');

ylabel('Velocity (in mm/sec)');

title('Time Domain');

figure;

ax(1) = subplot(2,1,1);

plot(f/1000,abs(Y)/N);

grid on;

xlabel('Frequency (in kilohertz)');

ylabel('Amplitude (in mm/sec)');

title('Amplitude Spectrum');

ax(2) = subplot(2,1,2);

plot(f/1000,abs(Y)/Fs);

grid on;

xlabel('Frequency (in kilohertz)');

ylabel('Amplitude Density (in mm/sec per hertz)');

title('Amplitude Spectral Density');

linkaxes(ax,'x');

zoom xon;

##### 0 Comments

### See Also

### Categories

### Community Treasure Hunt

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

Start Hunting!