Azzera filtri
Azzera filtri

How do i convert time domain data into frequency domain?

12 visualizzazioni (ultimi 30 giorni)
I have vibration data from an accelerometer. In forst image I have plotted timeperiod and amplitude. For doing fft, I did fft(amplitude) X=fft(amplitude); plot(Timeperiod,abs(X),'r'); How can I convert time to frequency.

Risposta accettata

Star Strider
Star Strider il 18 Apr 2017
See the documentation on fft (link), particularly the code between the first (top) two plot figures. That will show you how to calculate the frequency vector and correctly plot the Fourier transform.
  3 Commenti
Star Strider
Star Strider il 19 Apr 2017
My pleasure.
There have been discussions of the legality of copying and posting sections of code here, and I’m not certain if that extends to the documentation. I will remove the code and change this Comment if copying the documentation code is a problem. (I’ve posted my own code that closely resembles this code in several of my Answers, so I doubt it its a problem.)
From the Documentation
Fs = 1000; % Sampling frequency
T = 1/Fs; % Sample time
L = 1000; % Length of signal
t = (0:L-1)*T; % Time vector
% Sum of a 50 Hz sinusoid and a 120 Hz sinusoid
x = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);
y = x + 2*randn(size(t)); % Sinusoids plus noise
figure(1)
plot(Fs*t(1:50),y(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (milliseconds)'
NFFT = 2^nextpow2(L); % Next power of 2 from length of y
Y = fft(y,NFFT)/L;
f = Fs/2*linspace(0,1,NFFT/2+1);
% Plot single-sided amplitude spectrum.
figure(2)
plot(f,2*abs(Y(1:NFFT/2+1)))
title('Single-Sided Amplitude Spectrum of y(t)')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
I added the figure designations to prevent the second plot from overwriting the first when you run this.
noran omar
noran omar il 28 Apr 2019
star strider,
i need to understand why did you devide by the length at 'Y = fft(y,NFFT)/L;' and also why to devide by 2*linspace(0,1,NFFT/2+1) in 'f = Fs/2*linspace(0,1,NFFT/2+1);'. thank you for your help.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Fourier Analysis and Filtering in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by