FFT of signal from text file

22 visualizaciones (últimos 30 días)
John Smith
John Smith el 19 de Nov. de 2015
Comentada: krn99 el 5 de Jun. de 2017
Hi, I am trying to plot an FFT for an EMG signal which is saved in a text file. I did manage to plot the actual signal, but when I plotted the FFT, the window remained blank. Can someone please highlight what I am doing wrong. Also, How to determine the sampling frequency value (Fs)?
Attached please find the text file containing the EMG signal data. Thanks in advance.
Ts = mean(diff(t)); % Sampling Time
Fs = 1/Ts; % Sampling Frequency
Fn = Fs/2; % Nyquist Frequency
FEMG = fft(EMG)*2/L; % Fourier Transform (Normalised)
Fv = linspace(0, 1, fix(L/2)+1)*Fn; % Frequency Vector
Iv = 1:length(Fv); % Index Vector
figure(1)
plot(Fv, abs(FEMG(Iv)))
grid

Respuesta aceptada

Star Strider
Star Strider el 20 de Nov. de 2015
I don’t see the error in your code, but the code here I wrote (plotting half of the fft) works:
fidi = fopen('John Smith emg.txt', 'rt');
T_EMG = textscan(fidi, '%f%f', 'Delimiter',' ');
t = T_EMG{1};
EMG = T_EMG{2};
L = length(t);
Ts = mean(diff(t)); % Sampling Time
Fs = 1/Ts; % Sampling Frequency
Fn = Fs/2; % Nyquist Frequency
FEMG = fft(EMG)*2/L; % Fourier Transform (Normalised)
Fv = linspace(0, 1, fix(L/2)+1)*Fn; % Frequency Vector
Iv = 1:length(Fv); % Index Vector
figure(1)
plot(Fv, abs(FEMG(Iv)))
grid
  7 comentarios
Star Strider
Star Strider el 28 de Mayo de 2017
My pleasure.
krn99
krn99 el 5 de Jun. de 2017
sir i have used 10hz cutt of freq(fc) high pass and 1000hz fc for low pass FIR filter(4th order). i have used filtfilt function to avoid zero lag. But my doubt is do i want to do divide my cut off frequency with 0.802 for fourth order which is mentioned in Winters and Robertson book. i dont understand their concept. if you know please tell me. Thanks in advance

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Spectral Measurements en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by