_UTP_PDSf_L5_Transformada Discreta de Fourier.pdf

Share Embed Donate


Short Description

Download _UTP_PDSf_L5_Transformada Discreta de Fourier.pdf...

Description

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones (PD01)

Laboratorio: 5 La Transformada Discreta de Fourier (DFT) y la Transformada Rápida de Fourier (FFT)

Ing. José C. Benítez P.

Índice La Convolución, la Transformada Discreta de Fourier (DFT) y la Transformada Rápida de Fourier (FFT)   

Objetivo La DFT y la FFT DFT

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

2

Objetivo  

Comprender la DTF. Calculo de la DFT mediante la FFT.

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

3

La transformada de Fourier y la FFT  



Una señal periódica puede representarse como suma de ondas sinusoidales. Las que nos interesarán especialmente serán las que tienen unas frecuencias determinadas, y en eso se basa el análisis de Fourier. Las frecuencias elegidas son; la frecuencia que caracteriza la señal que queremos analizar, y sus múltiplos; el doble, el triple…: f, 2f, 3f, 4f, 5f…

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

4

La transformada de Fourier y la FFT 

Y así, cualquier señal podrá descomponerse en una suma como la siguiente:

Esta forma de descomponer una señal en el dominio de la frecuencia se llama la Transformación de Fourier.

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

5

La transformada de Fourier y la FFT 

 



La ventaja de elegir estas funciones, que se llamarán armónicos, es que analizar una señal cualquiera para ver sus componentes con esas frecuencias será una tarea sencilla. La formulación matemática para señales discretas se ha desarrollado en la clase teórica. Veremos la capacidad de Matlab para obtener las componentes no ya de una señal continua, sino de la señal discreta que la representa en forma de muestreo. Esto se llamará la Transformada Discreta de Fourier (DFT), y hay muchas formas de calcularla. La más eficiente es la Transformada Rápida de Fourier (FFT).

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

6

La transformada de Fourier y la FFT 

Matlab tiene implementada una función para calcular una FFT: >>fft(x)

 



En donde x es nuestra señal discreta (secuencia discreta de datos). El resultado numérico de la transformación son números complejos, que tendrán un módulo –que será la amplitud - y un ángulo – la fase - de cada una de las componentes. Además estarán repetidos, dando una serie de datos simétrica. Nos interesa sólo la mitad. Y además estarán multiplicados por N/2, siendo N el número de datos de nuestra serie. Si recuperaremos la última señal que generamos.

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

7

La transformada de Fourier y la FFT Ejemplo: >>t=[0:0.01:1]; >>x1=5*sin(4*pi*t); >>x2=2*sin(8*pi*t+1); >>x=x1+x2; >>plot(t,x)

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

8

La transformada de Fourier y la FFT Si nuestro espacio de tiempo es 1 seg, nuestra frecuencia f es 1/1seg = 1Hz. Si hacemos ahora la fft, y nos quedamos sólo con las amplitudes (con la función abs) podemos escribir: >>y=abs(fft(x));

Lo representaremos ahora con un nuevo tipo de gráfico: un gráfico de barras –bar graphcon la función bar: >>bar(y)

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

9

La transformada de Fourier y la FFT Tal y como se dijo, tenemos los datos repetidos en un gráfico simétrico, nos interesan sólo la mitad, y para ser más concretos, los primeros, porque a partir de un determinado valor son muy pequeños. Podemos representar una parte del gráfico escribiendo >>bar(y(1:20))

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

10

La transformada de Fourier y la FFT Nuestro gráfico tiene dos barras mucho mayores que las anteriores, vamos a ver lo que representa cada una. Nuestras barras representan las amplitudes de la serie:

La que hemos generado es: x = x1 + x2 = 5*sin(4*pi*t)+2*sin(8*pi*t+1)

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

11

La transformada de Fourier y la FFT La que hemos generado es: x = x1 + x2 = 5*sin(4*pi*t)+2*sin(8*pi*t+1)

La primera barra representa A0, la componente continua. Nuestra señal no tenía. La segunda barra representa la amplitud A1, correspondiente frecuencia fundamental f que tampoco existía en la señal que nos hemos generado. Tampoco tenemos en A3.

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

12

La transformada de Fourier y la FFT En cambio si tenemos componentes con frecuencias 2f y 4f, y eso es lo que nos muestra el gráfico.

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

13

La transformada de Fourier y la FFT Como hemos dicho, los valores de amplitudes en el gráfico están multiplicados por N/2, siendo N el número elementos de la secuencia (100 en este caso). Si queremos verlos sólo hay que dividir por N/2.

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

14

La transformada de Fourier y la FFT >>t=[0:0.01:1]; >>x1=5*sin(4*pi*t); >>x2=2*sin(8*pi*t+1); >>x=x1+x2; >>y=abs(fft(x))/50; >>bar(y(1:20))

Los pequeños valores (aprox. cero) en otros armónicos se deben a utilizar pocos puntos para muestrear la señal. El resultado con 1000 puntos es el siguiente gráfico: >> t=[0:.001:1]; >> x1=5*sin(4*pi*t); >> x2=2*sin(8*pi*t+1); >> x=x1+x2; >> y=abs(fft(x))/500; >> bar(y(1:20)) Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

15

La transformada de Fourier y la FFT El resultado con 100 puntos es el siguiente gráfico: El resultado con 1000 puntos es el siguiente gráfico:

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

16

La transformada de Fourier y la FFT Vamos a probar ahora con la misma señal pero con una componente continua >>t=[0:0.01:1]; >>x1=5*sin(4*pi*t); >>x2=2*sin(8*pi*t+1); >>x=3+x1+x2; >> plot(t,x);

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

17

La transformada de Fourier y la FFT >>y=abs(fft(x))/50; >>bar(y(1:20)) Podemos ver a A0 en la barra ahora. Los valores de amplitud de la componente continua están multiplicados por N en lugar de N/2. Por eso aparece con valor 6.

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

18

La transformada de Fourier y la FFT Si ahora en lugar de una componente continua añadimos el término de alta frecuencia que vimos que podía representar ruido >>t=[0:0.01:1]; >>x1=5*sin(4*pi*t); >>x2=2*sin(8*pi*t+1); >>x3=0.5*sin(50*pi*t+1); >>x=x1+x2+x3; >>plot(t,x)

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

19

La transformada de Fourier y la FFT Y ahora vemos sus componentes en la FFT >>y=fft(x); >>A=abs(y)/50; >>bar(A) En el gráfico de barras podemos ver ahora la componente de ruido. Esa componente podrá ser eliminada ahora. La forma más directa es borrarla en la variable y. Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

20

La transformada de Fourier y la FFT Para ello podemos editarla dentro de Matlab haciendo doble click en y. Entraremos en el editor de tablas, con un aspecto similar a una hoja de cálculo, y en él podemos borrar los elementos que representan el ruido, el 26 y el 77. Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

21

La transformada de Fourier y la FFT La nueva fft será ahora >>y=abs(y)/50; >>bar(A);

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

22

La transformada de Fourier y la FFT En un caso real para “limpiar” mejor las componentes de ruido podríamos eliminar también los cercanos (24 al 28, y 75 al 79, se deja como ejercicio).

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

23

La transformada de Fourier y la FFT La nueva fft será ahora >>y=abs(y)/50; >>bar(A);

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

24

La transformada de Fourier y la FFT Una vez eliminados podemos invertir la transformación de Fourier con el comando ifft. El resultado, de nuevo es un número complejo. Nos interesa sólo su parte real >>z=ifft(y); >>plot(real(z)) ¡Hemos filtrado la señal!

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

25

La transformada de Fourier y la FFT Si el muestreo lo hubiésemos hecho con más puntos el resultado sería mejor, pero el obtenido es suficientemente bueno para la mayor parte de las necesidades. >>t=[0:0.005:1]; >>x1=5*sin(4*pi*t); >>x2=2*sin(8*pi*t+1); >>x3=0.5*sin(50*pi*t+1); >>x=x1+x2+x3; >>plot(t,x)

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

26

La transformada de Fourier y la FFT >>y=fft(x); >>bar(abs(y))

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

27

La transformada de Fourier y la FFT >>y(24:28)=[0,0,0,0,0]; >>y(175:179)=[0,0,0,0,0]; >>z=real(ifft(y)); >>plot(z);

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

28

La transformada de Fourier y la FFT FTTs en más de una dimensión. Haremos ahora una breve introducción a la transformación de Fourier en dos dimensiones, que no es más que una extensión de los mismos conceptos. Al igual que cualquier señal puede representarse como suma de ondas sinusoidales, cualquier superficie puede representarse como suma de ondas sinusoidales en dos dimensiones.

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

29

La transformada de Fourier y la FFT Dibujaremos una superficie para ver de qué estamos hablando.

>>t=[0:0.01:1]; >> x1=5*sin(2*pi*t); >> x2=2*sin(8*pi*t+1); >> z=x1'*x2; >> surf(z)

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

30

La transformada de Fourier y la FFT Y al igual que antes, si la superficie está dada por un tabla de datos, podrá ser transformada, haciendo ahora una FFT en dos dimensiones. Esta transformación dará como resultado otra tabla de amplitudes y fases de ondas como la del dibujo, también en 2D.

>>y=fft2(z); >>surf(abs(y))

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

31

DFT

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

32

DFT

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

33

DFT

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

34

DFT

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

35

DFT

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

36

DFT

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

37

DFT

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

38

Ejercicios

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

39

Ejercicios

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

40

Ejercicios

Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

41

Informe de Laboratorio 









El Informe de Laboratorio se presentará con el desarrollo de todos los ejercicios desarrollados y preguntas de ésta presentación. El Informe debe ser básicamente un documento gráfico en lo posible y debe adjuntarse los códigos con los comentarios solicitados. Lo más importante de un Informe de Laboratorio son los conclusiones, comentarios y observaciones. Si han utilizado fuentes adicionales, adjuntarlas en su carpeta personal del Dropbox. El Informe terminado se presentará en su carpeta personal del Dropbox. Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

42

Presentación 



Todas las fuentes, archivos utilizados y el Informe deben presentarse en su carpeta personal del Dropbox, dentro de una carpeta que lleve las iniciales del curso, sus Apellidos, guion bajo y luego el numero de laboratorio. Ejemplo: PDS_PaternoM_L5 Si adjunta fuentes adicionales, debe conservar el nombre original y agregar al final del nombre _L5.

 Las Tareas que no cumplan las indicaciones no serán EVALUADOS por el profesor. Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

43

Agradecimiento

Blog del curso: http://pdsfimmas.blogspot.com Procesamiento Digital de Señales en Sistemas de Información y Telecomunicaciones

44

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF