How to find frequency components from a signal?

30 vues (au cours des 30 derniers jours)
SUMIT
SUMIT le 21 Avr 2014
How to find frequency components from a signal?
  1 commentaire
SUMIT
SUMIT le 22 Avr 2014
Actually I want to find frequency components from a gas sensor output signal.. can any one help me..?

Connectez-vous pour commenter.

Réponse acceptée

Carlos
Carlos le 21 Avr 2014
Your question is perhaps too generic, however to find frequency components of a signal in Matlab the FFT command is braodly used.Have a look here
  10 commentaires
Carlos
Carlos le 25 Avr 2014
Try this
>> x=data;
>> Fs=50;
>>L=length(x);
>>NFFT = 2^nextpow2(L);
>>f = Fs/2*linspace(0,1,NFFT/2+1);
>> x=data;
>> Fs=50;
>> L=length(x);
>> NFFT = 2^nextpow2(L);
>> f = Fs/2*linspace(0,1,NFFT/2+1);
>> Y = fft(x,NFFT)/L;
>> plot(f,2*abs(Y(1:NFFT/2+1)))
title('Single-Sided Amplitude Spectrum of y(t)')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
Prerana Gawale
Prerana Gawale le 15 Nov 2019
I tried this approach and I'm getting 0Hz frequency. Please find attached data. The data duration is 15.763 secs.

Connectez-vous pour commenter.

Plus de réponses (1)

Manthan Unecha
Manthan Unecha le 22 Mar 2023
clear all;
clc;
i=sqrt(-1);
e=exp(1);
F=input('Input X and Y in matrix form (nX2) = ');
Unable to run the 'fevalJSON' function because it calls the 'input' function, which is not supported for this product offering.
tmp=size(F);
N=tmp(1,1)
F_sample=1/(F(3,1)-F(2,1))
x=[];
y=[];
for k=0:1:120
x=[x k];
f=0;
for j=1 : N
f=f + F((j),2)*e^(-i*2*pi*k*(j)/N);
end
f=abs(f);
y=[y f];
end
plot(x,y);
% stem(x,y);

Community Treasure Hunt

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

Start Hunting!

Translated by