Академический Документы
Профессиональный Документы
Культура Документы
PRESENTADO POR:
TUTOR
NELSON HUMBERTO ZAMBRANO CORTES
INTRODUCCIN
En el cuerpo humano se producen una gran cantidad de seales elctricas
provocadas por actividades que tienen su ubicacin en los msculos y nervios que
lo integran. El corazn, por ejemplo, es conductor de un patrn caracterstico de
las variaciones de voltaje. El registro (electrocardiograma, ECG) y anlisis de
estos eventos bioelctricos constituye una fuente de informacin a partir de la cual
se pueden detectar enfermedades cardacas. Mediante tcnicas de anlisis de las
seales electrocardiogrficas.
En el presente trabajo pondremos en prcticas los conceptos bsicos del mdulo
Procesamiento digital de seales, se presenta a continuacin el anlisis de un
archivo descargado que contiene datos de un ECG, Se guardaron alrededor de 16
minutos de informacin a una frecuencia de muestreo de 100 Hz y posteriormente
se recort la seal para obtener 95.000 muestras, Una vez cargada la seal en
Matlab u Octave, dibujar la Fast Fourier Transform (FFT) (Magnitud y fase) de la
seal en funcin de la frecuencia y analizar las grficas obtenidas.
DESARROLLO DE LA ACTIVIDAD
El archivo descargado contiene datos de un ECG. Se guardaron alrededor de 16
minutos de informacin a una frecuencia de muestreo de 100 Hz y posteriormente
se recort la seal para obtener 95.000 muestras. Para cargar y graficar el archivo
en Matlab u Octave se deben ingresar los siguientes comandos:
>> ecg_load_grupoXX = load ('ecg_grupoXX.csv');
>> plot(ecg)
Una vez cargada la seal en Matlab u Octave, dibujar la Fast Fourier Transform
(FFT) (Magnitud y fase) de la seal en funcin de la frecuencia y analizar las
grficas obtenidas.
Fs=100
Ts=1/Fs
x=load ('ecg_grupo07.csv');
n=95000
t=-0.005:Ts:0.005;
figure(1);
plot(x);
title('x(t)= load (ecg_grupo07.csv');
xlabel('Tiempo (t)');ylabel('x(t)');
% Transformada de Fourier
Xt=fft(x,n);
X=fftshift(Xt);
% Magnitud y fase de la transformada
Xm=abs(x); % Magnitud de la transformada
Xf=unwrap(angle(X))*180/pi; % fase de la transformada
% Base de frecuencias
delta_t = t(2)-t(1);
f = ((1:length(t)) - ceil(length(t)/2)) / length(t) / delta_t;
% Representacion en frecuencia
figure,stem(Xm); zoom;
title('Magnitud de transformada de Fourier de x(t)');
xlabel('frecuencia (Hz)');ylabel('|X(jw)|');
figure,stem(Xf); zoom;
title('fase de la transformada de Fourier de x(t)');
xlabel('frecuencia (Hz)');ylabel('fase X(jw)');
Fs=100;
ecg_cargado= load('ecg_grupo_299004_7.csv');
n=length(ecg_cargado);
ecg_recorte=zeros(1,1000); % 10 segundos de la seal
for i=1:1000
ecg_recorte(i)=ecg_cargado(i+20000);
end
filtro=fir1(64, [0.01 0.9] ,'bandpass'); %filtro pasabandas intnetando eliminar el
componente de DC
ecg_filtrado=filter(filtro,1,ecg); %aplicando el filtro a la seal
figure(1)
plot(ecg_recorte)
hold on
plot(ecg_filtrado,'r')
figure (2)
y = ecg_filtrado;
NFFT = 2^nextpow2(n); % Next power of 2 from length of y
Y = fft(y,NFFT)/n;
f = Fs/2*linspace(0,1,NFFT/2+1);
% Plot single-sided amplitude spectrum.
plot(f,2*abs(Y(1:NFFT/2+1)))
title('Espectro Grupo 299004 7')
xlabel('Frecuencia (Hz)')
ylabel('Amplitud')
CONCLUSIONES
REFERENCIAS BIBLIOGRAFICAS