Sie sind auf Seite 1von 17

TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-1-de16


LABORATORIO N 2

Transformada de Tiempo
Discreto de Fourier

C CU UR RS SO O : : PROCESAMIENTO DIGITAL DE SEALES

D DO OC CE EN NT TE E : : I IN NG G. . D DU UB BE ER R P PE ER RE EZ Z P PE ER RE EI IR RA A

Autor : Moreno Garca Jos
Saenz Paredes Csar
Salazar Cueva Juan Pablo

CICLO : VIII

T Tr ru uj ji il ll lo o P Pe er r
2 20 00 07 7


TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-2-de16

Transformada de Tiempo Discreto de Fourier

1. Autores :

Moreno Garca Jos
Saenz Paredes Csar
Salazar Cueva Juan Pablo

2. Introduccin:

En matemticas, la transformada de Fourier discreta, designada con frecuencia por la
abreviatura DFT (del ingls discrete Fourier transform), y a la que en ocasiones se
denomina transformada de Fourier finita, es una transformada de Fourier ampliamente
empleada en tratamiento de seales y en campos afines para analizar las frecuencias
presentes en una seal muestreada, resolver ecuaciones diferenciales parciales y realizar
otras operaciones, como convoluciones.

Sin embargo, a la hora de realizar operaciones tenemos los mismos problemas que en
las series de Fourier ya que seguimos tratanto con seales continuas o con series de
datos de longitud infinita. La electrnica nos obliga a trabajar con un nmero finito de
datos discretos que adems tienen una precisin finita.

De lo que se trata es de conseguir discretizar las variables continuas y de limitar el
nmeros de muestras en los dos dominios (temporal y frecuencial). Esto nos lleva a
definir las series discretas de Fourier y la Transformada Discreta de Fourier (DFT).

3. Objetivos

Calcular la Transformada de Fourier de Tiempo Discreto ( DTFT ) y su inversa en
MATLAB.
Realizar la Transformada Discreta de Fourier ( DFT ) y su inversa
experimentalmente en MATLAB.
Realizar la convolucin para 2 seales.
Diferenciar Convolucin Lineal y Convolucin Circular

TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-3-de16

4. Fundamento Terico

Para esto debemos entrar al Matlab y empezar un nuevo script. En este script que
estamos implementando vamos a crear la siguiente funcin, la cual es sencilla y solo
consta de las siguientes lneas:

La transformada discreta de Fourier (DFT) est definida como:

donde:

Donde T es el periodo de muestreo y f
s
es la frecuencia de muestreo.
La transformada inversa se define como:


Ahora podemos calcular el espectro de una seal arbitraria: La Transformada de Fourier
Discreta (DFT) calcula el espectro en N frecuencias igualmente espaciadas de una
longitud- N secuencias. Una edicin que nunca se presenta en el "clculo" anlogo,
como la realizada por un circuito, es cuanto trabajo toma realizar la operacin de
procesamiento de seal como la filtracin. En computacin, esta consideracin traslada
del nmero de pasos bsicos de computacin requeridos para realizar el proceso.

El nmero de pasos, conocidos como, la complejidad, se vuelve equivalente a cuanto
tiempo toma el clculo (que tanto tiempo tenemos que esperar para una respuesta). La
complejidad no esta atada a computadoras especificas o lenguajes de programacin,
TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-4-de16

pero a cuantos pasos son requeridos en cualquier clculo. As, un procedimiento con
complejidad indicada dice que el tiempo tomado ser proporcional a alguna cantidad
de datos utilizados en el clculo y en la cantidad demandada.

Por ejemplo, considerar la formula para la transformada discreta de Fourier. Para cada
frecuencia que elijamos, debemos multiplicar cada valor de la seal por un nmero
complejo y sumar los resultados. Para una seal valorada-real, cada multiplicacin real-
por-complejo requiere dos multiplicaciones reales, significa que tenemos 2N
multiplicaciones para realizarse.

Para sumar los resultados juntos, debemos mantener la parte real y la imaginaria
separadas. Sumando N nmeros requiere N1 sumas. Constantemente, cada frecuencia
requiere 2N+2(N1) =4N2 pasos bsicos de realizar. Como tenemos N frecuencias, el
nmero total de operaciones es N(4N2) .

El espectro de amplitud es la magnitud de cada componente en la DFT, | |. El
espectro de la energa es el cuadrado de los componentes en el espectro de amplitud:

Propiedades de la transformada discreta de Fourier (DFT) Linealidad

Es decir, la transformada de Fourier de una seal h(n) multiplicada por un escalar es
la transformada de Fourier de la seal, , multiplicada por el escalar .

Del mismo modo, la transformada de Fourier de la suma de dos seales, h(n) y g(n), es
la suma de las transformadas de Fourier de ambas seales.

Traslacin en el tiempo (retardo)

Esto es, si una seal es desplazada k, la transformada discreta de Fourier sufre un
desplazamiento de fase de k.

Traslacin de frecuencia

TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-5-de16

Similar a la anterior, multiplicar la seal por e
in
o
introduce un desfase de
o
en la
transformada de Fourier.

Convolucin

La convolucin de dos seales en el dominio temporal da como resultado una
transformada de Fourier que es la multiplicacin de las transformadas de Fourier de las
dos seales originales. De igual forma, multiplicar dos seales en el dominio temporal
da como resultado una convolucin en el dominio frecuencial.

Entrada de valor real

Si h(n) es real, como ocurre en la mayora de procesos de lenguajes, H(e
i
) es
simtrica. De igual forma, si h(n) es par, es decir h(n) = h(-n) entonces H(e
i
) es real.

Las transformadas de Fourier de valores reales pueden obtenerse dos veces ms rpido
(estn presentes nicamente la mitad de los nmeros complejos).

5. Materiales

Pc con Matlab 2006-a
















TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-6-de16

6. Procedimiento

La transformada de tiempo discreto de Fourier se obtiene usando como base la siguiente
ecuacin:



Para esto debemos entrar al Matlab y empezar un nuevo script. En este script que
estamos implementando vamos a crear la siguiente funcin, la cual es sencilla y solo
consta de las siguientes lneas:

function X=dft(x,N)
x1=zeros(1,N);
x1(1:length(x))=x;
n=0:N-1;
k=n;
WN=exp(-j*2*pi/N);
WNnk=WN.^(n'*k);
X=x1*WNnk;

Ahora la grabamos y con esto ya disponemos en Matlab de una funcin la cual nos
realiza las transformadas de Fourier. En el desarrollo del informe vamos a ponerle el
nombre de dft.m

Tambin vamos a necesitar de la Transformada Inversa de Fourier la que se obtiene
usando como base la siguiente ecuacin.



Ahora tambin debemos colocar la siguiente ecuacin como una funcin en un nuevo
script de Matlab, una vez dentro ingresamos las siguientes lneas de cdigo.

function x=idft(X,N)
X1=zeros(1,N);
X1(1:length(X))=X;
n=0:N-1;
k=n;
WN=exp(j*2*pi/N);
WNnk=WN.^(n'*k);
x=X1*WNnk/N;



TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-7-de16

Primer Ejercicio :

El primer ejercicio de este informe es como una continuacin del informe anterior se
nos pide calcular la transformada de Fourier de:



Para lo cual usando el Matlab ingresamos el siguiente script

M=512;
N=50;
n=0:N;
k=0:M-1;
x=0.9.^n;
X=x*exp(-j*6*pi*n'*k/M);
subplot(2,1,1)
plot(6*pi*k/M,abs(X))
title('Magnitud de X(w)')
xlabel('Frecuencia en pi unidades')
subplot(2,1,2)
plot(6*pi*k/M,angle(X))
title('Angulo de X(w)')
xlabel('Frecuencia en pi unidades')

Con este script obtenemos la transformada de Fourier para la funcin:



Pero ahora variando un poco el enunciado se nos pide hallar la Transformada de Fourier
de la funcin:


Ahora para esta funcin vamos a modificar nuestro script en la quinta lnea, y nos va
quedar asi:

M=512;
N=50;
n=0:N;
k=0:M-1;
x=(0.9*exp(-j*pi/2)).^n;
X=x*exp(-j*6*pi*n'*k/M);
subplot(2,1,1)
plot(6*pi*k/M,abs(X))
title('Magnitud de X(w)')
xlabel('Frecuencia en pi unidades')
subplot(2,1,2)
plot(6*pi*k/M,angle(X))
title('Angulo de X(w)')
xlabel('Frecuencia en pi unidades')
TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-8-de16

Segundo Ejercicio:

Se nos pide ahora hallar la transformada discreta de Fourier y
entonces procedemos a ingresar el siguiente script

n=0:44;
x=cos(2*pi*3/44*n)
subplot(2,1,1)
stem(n,x)
X=dft(x,64)
subplot(2,1,2)
k=0:64-1;
stem(k,abs(X))

Vemos que k=0:64-1 son los valores que va tomar k, entonces para este caso 63 nos
varia la densidad de los espectros que se obtienen, para el mismo problema vamos a
probar con k=0:511 y k=0:1023. De esta manera vamos a poder comparar los diferentes
resultados obtenidos.

n=0:44;
x=cos(2*pi*3/44*n)
subplot(2,1,1)
stem(n,x)
X=dft(x,512)
subplot(2,1,2)
k=0:512-1;
stem(k,abs(X))

n=0:44;
x=cos(2*pi*3/44*n)
subplot(2,1,1)
stem(n,x)
X=dft(x,1024)
subplot(2,1,2)
k=0:1024-1;
stem(k,abs(X))













TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-9-de16

Tercer Ejercicio:

Para este tercer ejercicio vamos a realizar la convolucin





Bueno para realizar esta convolucin necesitamos del siguiente script el cual nos realiza
ambas convoluciones

x=[1 2 3 2 1 -1 -2]
h=[1/4 1/2 1/2 1/4]
y1=conv(x,h)
subplot(2,1,1)
stem(y1)
X=dft(x,8);
H=dft(h,8);
Y2=X.*H;
y2=idft(Y2,8)
g=real(y2)
subplot(2,1,2)
stem(g)

g=real(y2) para solo obtener los valores reales de y2 y no salga problemas en la grfica
final, y asi eliminar el valor complejo que es 0i. Ahora vamos a realizar para una salida
de 10 valores en la convolucin

x=[1 2 3 2 1 -1 -2]
h=[1/4 1/2 1/2 1/4]
y1=conv(x,h)
subplot(2,1,1)
stem(y1)
X=dft(x,10);
H=dft(h,10);
Y2=X.*H;
y2=idft(Y2,10)
subplot(2,1,2)
g=real(y2)
stem(g)










TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-10-de16

7. Anlisis de datos y resultados:

7.1 Anlisis de Grficas:

EJERCICIO 1



Figura1: Transformada Discreta de Fourier

0 2 4 6 8 10 12 14 16 18 20
0
2
4
6
8
10
Magnitud de X(w)
Frecuencia en pi unidades
0 2 4 6 8 10 12 14 16 18 20
-1.5
-1
-0.5
0
0.5
1
1.5
Angulo de X(w)
Frecuencia en pi unidades
TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-11-de16


Figura2: Transformada Discreta de Fourier para la variante


Para el anlisis podemos ver que tiene una transformada de
Fourier similar en grfica a


Pero varia la frecuencia que tiene un desfase que podemos notar en las
grficas.








0 2 4 6 8 10 12 14 16 18 20
0
2
4
6
8
10
Magnitud de X(w)
Frecuencia en pi unidades
0 2 4 6 8 10 12 14 16 18 20
-1.5
-1
-0.5
0
0.5
1
1.5
Angulo de X(w)
Frecuencia en pi unidades
TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-12-de16

EJERCICIO 2


Figura3: Transformada discreta de Fourier para 64


En esta grfica podemos notar que la densidad no es tan grande, y vemos las 64
seales que nos da la transformada discreta de Fourier para k=0:63
0 5 10 15 20 25 30 35 40 45
-1
-0.5
0
0.5
1
0 10 20 30 40 50 60 70
0
5
10
15
20
TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-13-de16


Figura4: Transformada discreta de Fourier para 512


En esta grfica podemos notar que la densidad aumenta considerablemente, y vemos
que con 512 seales que nos da la transformada discreta de Fourier para k=0:511, ya
no podemos diferencias las 512.

0 5 10 15 20 25 30 35 40 45
-1
-0.5
0
0.5
1
0 100 200 300 400 500 600
0
5
10
15
20
25
TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-14-de16


Figura5: Transformada discreta de Fourier para 1024

En esta grfica podemos notar que la densidad mucho mayor aun, no se puede
diferenciar las 1024, imposible solo vemos un poco los tamaos de las seales que
nos da la transformada discreta de Fourier para k=0:1023















0 5 10 15 20 25 30 35 40 45
-1
-0.5
0
0.5
1
0 200 400 600 800 1000 1200
0
5
10
15
20
25
TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-15-de16

EJERCICIO 3


Figura6: Convolucin discreta y circular


En estas 2 graficas podemos observar que hemos conseguido lograr obtener los valores
similares en ambas convoluciones aunque los 2 primeros valores son incorrectos, no
coinciden pero todos los dems valores son iguales, porque hemos filtrado la parte
imaginaria. Aca tenemos que la seal de la convolucin ha sido de 8 valores que pasan
a ser analizadas.

1 2 3 4 5 6 7 8 9 10
-2
-1
0
1
2
3
4
1 2 3 4 5 6 7 8
-2
-1
0
1
2
3
4
TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-16-de16



Figura7: Convolucin discreta y circular

En estas 2 graficas podemos observar que hemos conseguido lograr obtener los valores
similares en ambas convoluciones aunque los 2 primeros valores son incorrectos, no
coinciden pero todos los dems valores son iguales, porque hemos filtrado la parte
imaginaria. En diferencia con la anterior aca hemos tomado 10 valores en el anlisis de
la convolucin


1 2 3 4 5 6 7 8 9 10
-2
-1
0
1
2
3
4
1 2 3 4 5 6 7 8
-2
-1
0
1
2
3
4
TRANSFORMADA DE FOURIER EN TIEMPO DISCRETO

PRODIS0UPAO-Pagina-17-de16


8. Conclusiones recomendaciones

Se verific la utilizacin del comando dtft para hallar Transformada de Fourier de
Tiempo Discreto.
Se observ que a rangos mas pequeos de muestreo la seal se aproxima ms a su
valor real.
Se verific la utilizacin del comando dft para hallar Transformada Discreta de
Fourier y su inversa con comando idft.
Se observ que en intervalos pequeos el error en la cuantificacin es mas pequeo.
Se apreci que cuando se aumenta ts aumenta la resolucin y tambin el aumento
de densidad al aumentar N (N: nmero de muestras).

9. Referencias

http://www.arrakis.es/~ppriego/fourier/fourier.htm
http://www.monografias.com/trabajos11/serfour/serfour.shtml
http://www.wikilearning.com/que_es_la_transformada_de_fourier_discreta-
wkccp-20455-1.htm
http://es.wikipedia.org/wiki/Transformada_r%C3%A1pida_de_Fourier

Das könnte Ihnen auch gefallen