Guía 6 1 Facultad: Ingeniería Escuela: Ingeniería Biomédica Asignatura: Procesamiento de Señales Biomédicas Transformada de Fourier Objetivo 1. Aplicar la DFT para identificar frecuencias dominantes en una señal 2. Aplicar el método a una señal biomédica. Recomendaciones 1. Tenga orden y aseo para trabajar. 2. Al finalizar el laboratorio se debe dejar en la misma o mejor condición de la que se encontró (Asegúrese de apagar el Equipo antes de retirarse). Materiales y Equipo Computadora MATLAB R2009b Procedimiento 1. Registre la siguiente información en la ventana de comandos de MATLAB. >> % Definicion parámetros de frecuencia y periodo >> Fs = 1000; >> T = 1/Fs; >> L = 1000; >> t = (0:L-1)*T; >> x = sin(2*pi*5*t) + sin(2*pi*12*t); >> figure(1), plot (t,x) >> title ('Suma de senoides 5 y 12 Hz') >> xlabel ('tiempo (miliseg)') >> X=fft(x); >> Xabs= abs(X); >> figure(2), plot (Xabs(1:100)) >> title ('Espectro frecuencial') Guía 6 >> xlabel ('Frecuencia (Hz)') 2. Cambie las frecuencias de las componentes senoidales a 11 y 20 Hz, y sume una tercera de 8 Hz, y obtenga el espectro de frecuencias. >> x = sin(2*pi*11*t) + sin(2*pi*20*t) + sin(2*pi*8*t); >> figure(3), plot (t,x) >> title ('Suma de senoides 11, 20 y 8 Hz') >> xlabel ('tiempo (miliseg)') >> X=fft(x); >> Xabs= abs(X); >> figure(4), plot (Xabs(1:100)) >> title ('Espectro frecuencial') >> xlabel ('Frecuencia (Hz)') 3. A la señal de senoides generada en el punto anterior, agréguele ruido gaussiano con amplitud de 1, y obtenga nuevamente el espectro de frecuencias. >> noise=rand(size(x)); >> y=x+noise; >> Y=fft(y); >> Yabs=abs(Y); >> figure(5), plot(Yabs(1:100)) >> title('Espectro frecuencial') >> xlabel('Frecuencia (Hz)') 4. A la señal generada en el punto 2, reduzca la amplitud de la señal de 11 Hz a la mitad, y la 8 Hz a un cuarto, y obtenga nuevamente el espectro de frecuencias. >> x = 0.5*sin(2*pi*11*t) + sin(2*pi*20*t) + 0.25*sin(2*pi*8*t); >> figure(6), plot (t,x) >> title ('Suma de senoides 11, 20 y 8 Hz con reduccion de amplitud') >> xlabel ('tiempo (miliseg)') >> X=fft(x); >> Xabs= abs(X); >> figure(7), plot (Xabs(1:100)) >> title('Espectro frecuencial') >> xlabel('Frecuencia (Hz)') 5. Genere una señal dientes de sierra, y obtenga su espectro de frecuencias >> t=0:0.1:8*pi; >> x=sawtooth(t); >> figure(8), plot (x) >> title ('Señal diente de sierra') 2 Guía 6 >> xlabel ('tiempo (miliseg)') >> X=fft(x); >> Xabs= abs(X); >> figure(9), plot (Xabs(1:100)) >> title ('Espectro frecuencial') >> xlabel ('Frecuencia (Hz)') 6. Genere una señal cuadrada, y obtenga su espectro de frecuencias >> t=0:0.1:8*pi; >> x=square(t); >> figure(10), plot (x) >> title ('Señal cuadrada') >> xlabel ('tiempo (miliseg)') >> X=fft(x); >> Xabs= abs(X); >> figure(11), plot (Xabs(1:100)) >> title ('Espectro frecuencial') >> xlabel ('Frecuencia (Hz)') 7. Obtenga 5 conclusiones de todo el procedimiento. Investigación complementaria 1. Investigue como obtener las señales senoidales originales desde el espectro frecuencial utilizando la ifft, utilice la señal en la que se suman 3 senoides. 2. De igual manera, trate de obtener las senoides separadas, manipulando el vector obtenido mediante la fft. 3. Obtenga un espectrograma de una señal de ECG. 4. Obtenga un espectrograma de una señal de EEG. Bibliografía 1. Nakamura, S. Análisis numérico y visualización gráfica con MATLAB, PrenticeHall Hispanoamérica. México DF. 2. http://www.mathworks.com/products/index.html?s_tid=brdcrb 3. www.physionet.org 3
© Copyright 2024