How to find frequency components from a signal?

44 visualizaciones (últimos 30 días)
SUMIT
SUMIT el 21 de Abr. de 2014
Respondida: Manthan Unecha el 22 de Mzo. de 2023
How to find frequency components from a signal?
  1 comentario
SUMIT
SUMIT el 22 de Abr. de 2014
Actually I want to find frequency components from a gas sensor output signal.. can any one help me..?

Iniciar sesión para comentar.

Respuesta aceptada

Carlos
Carlos el 21 de Abr. de 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 comentarios
Carlos
Carlos el 25 de Abr. de 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 el 15 de Nov. de 2019
I tried this approach and I'm getting 0Hz frequency. Please find attached data. The data duration is 15.763 secs.

Iniciar sesión para comentar.

Más respuestas (1)

Manthan Unecha
Manthan Unecha el 22 de Mzo. de 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