Está en la página 1de 12

¾ Transformada Discreta de Fourier : DFT (FFT)

Serie de Fourier de secuencias Transformada de Fourier de secuencias

Sea ~
⎧⎪ ~ M arbitrario.
x [n] una secuencia periódica de la cual x[n] es un período,
x[n] = ⎨ x[n] M ≤ n ≤ M + N −1
⎪⎩0 en cualquier otro valor

Puede demostrarse que ⎛ 2π ⎞ donde los ak son los coeficientes de la SF de y X(Ω) es la TF de x[n]
Nak = X ⎜ k ⎟
⎝ N ⎠
Nak corresponde a muestras de la TF de un período. La relación se cumple, independientemente del M elegido.

La DFT no debe ser confundida con la Transformada de Fourier. La DFT se obtiene muestreando la TF!!! La gran diferencia
con la Serie de Fourier es que los puntos muestras no necesariamente coinciden con la frecuencia “natural” Ωo de la señal
periódica.
` Para el análisis se supondrá que se sólo se dispone de un conjunto finito de N muestras
uniformemente espaciadas de la señal ˜x[n]. En general N no tiene porqué coincidir con el período N0
de la señal ˜x[n]. La señal que se analiza no es entonces ˜x[n], sino v[n], donde
Desarrollo gráfico de la DFT:
Cantidad entera de períodos dentro de la
ventana
Desarrollo gráfico de la DFT:
Cantidad no entera de períodos dentro de la ventana
Ejemplo:

% Ejemplo DFT
n=0:63;
v=cos(2*pi*n/14)+(3/4)*cos(4*pi*n/15);
vf=fft(v)/64;
stem(n,abs(vf))

0.4

0.35

0.3

0.25

0.2

0.15

0.1

0.05

0
0 10 20 30 40 50 60 70
n1=0:127;
v1=cos(2*pi*n1/14)+(3/4)*cos(4*pi*n1/15);
v1f=fft(v1)/128;
stem(n1,abs(v1f))

0.5

0.45

0.4

0.35

0.3

0.25

0.2

0.15

0.1

0.05

0
0 20 40 60 80 100 120 140
VENTANAS

¾ Rectangular: w[n] = 1 0 ≤ n ≤ N −1 1

⎧ 2n
⎪ 0 ≤ n ≤ N −1
¾ Bartlett: w[n] = ⎨ N − 1
0.75

(triangular) 2n N −1
⎪2 − ≤ n ≤ N −1
⎩ N −1 2
0.5

1⎡ ⎛ 2π n ⎞⎤
¾ Hanning: w[n] = ⎢1 − cos⎜ ⎟⎥ 0 ≤ n ≤ N −1
2⎣ ⎝ N − 1 ⎠⎦ 0.25

⎛ 2π n ⎞
¾ Hamming: w[n] = 0.54 − 0.46 ⋅ cos⎜ ⎟ 0 ≤ n ≤ N −1
⎝ N −1⎠ 0
0 125 256 381 512

⎛ 2π n ⎞ ⎛ 4π n ⎞
¾ Blackman: w[n] = 0.42 − 0.5 ⋅ cos⎜ ⎟ + 0.08 ⋅ cos⎜ ⎟ 0 ≤ n ≤ N −1
⎝ N −1⎠ ⎝ N −1⎠
⎡ 2 2⎤
⎛ N − 1 ⎞ ⎡ ⎛ N − 1 ⎞ ⎤
I 0 ⎢ω a ⎜ ⎟ − ⎢n − ⎜ ⎟⎥ ⎥ I0 (x) = función de Bessel de orden cero
⎢ ⎝ 2 ⎠ ⎣ ⎝ 2 ⎠⎦ ⎥
¾ Kaiser: w[n] = ⎣ ⎦ 0 ≤ n ≤ N −1 de primera clase.
⎡ ⎛ N − 1 ⎞⎤ ωa = factor de selectividad ⎛ N −1⎞
4 < ωa ⎜ ⎟<9
I 0 ⎢ω a ⎜ ⎟⎥ ⎝ 2 ⎠
⎣ ⎝ 2 ⎠⎦
⎛N 1⎞ ⎛N 1⎞
¾ Algoritmo: A1 = K ⋅ sinc⎜⎜ 1 − ⎟⎟T0 + K ⋅ sinc⎜⎜ 1 + ⎟⎟T0 A1 2
⎝ T0 T ⎠ ⎝ T0 T ⎠ 2 N1 + N 22
⎛ T0 ⎞ A
⎜ ⎟ = 2A
⎛N 1⎞ ⎛N 1⎞ ⎝T ⎠ 1 +1
A2 = K ⋅ sinc⎜⎜ 2 − ⎟⎟T0 + K ⋅ sinc⎜⎜ 2 + ⎟⎟T0 A2
⎝ T0 T ⎠ ⎝ T0 T ⎠
%espectro de ventanas con Matlab
n=-5:0.001:5;

hwifR=1*sinc(n); %ventana rectangular

hwifHam=1/0.54*(0.54*sinc(n)+0.23*sinc((n-1))+0.23*sinc((n+1)));%ventana de Hamming

hwifHan=1/0.5*(0.5*sinc(n)+0.25*sinc((n-1))+0.25*sinc((n+1)));%ventana de Hanning

hwifBl=1/0.42*(0.42*sinc(n)+0.25*sinc((n-1))+0.25*sinc((n+1))+0.04*sinc((n-2))+0.04*sinc((n+2))); %Blackman

plot(n,20*log10(abs(hwifR)))
hold on
pause
plot(n,20*log10(abs(hwifHam)),'r')
pause
plot(n,20*log10(abs(hwifHan)),'g')
pause
plot(n,20*log10(abs(hwifBl)),'k')

h=gca;
set(h,’Ylim',[-100 0])

También podría gustarte