UNIVERSIDAD NACIONAL MAYOR DE SAN
MARCOS
(Universidad del Per, DECANA DE AMRICA)
FACULTAD DE INGENIERIA ELCTRICA Y
ELECTRNICA
DESARROLLO DE LA SERIE DE
FOURIER
Curso
MEDICIONES ELECTRNICAS
Profesor
Ing. UNSIHUAY TOVAR, Roberto
Alumno
MANDUJANO CORNEJO, Vittorino
Cdigo
09190091
2011
TEMA 2: DESARROLLO DE LA SERIE DE FOURIER
I.
OBJETIVO:
Haciendo uso de Matlab, verificar la serie Trigonomtrica y
Exponencial de Fourier y desarrollar los ejercicios del cuestionario.
II.
PROCEDIMIENTO
1. Desarrolle la serie trigonomtrica de Fourier de la funcin:
A ; en 0 t
f ( t )=
A ; en 0 t
Grafique la serie de Fourier en el Matlab.
SOLUCIN
La funcin f(t) es una funcin impar cuya serie de Fourier es:
( 4A ) [ sen ( t ) + 13 sen ( 3 t )+ 15 sen ( 5 t ) + 71 sen (7 t )+ 19 sen ( 9 t ) + ]
f ( t )=
Y su programacin en Matlab es:
>> Fs=1000;
>> t=(1:100)/Fs;
>> f=(8/pi)*(sin(w*t)+(1/3)*sin(3*w*t)+(1/5)*sin(5*w*t)...
+(1/7)*sin(7*w*t)+(1/9)*sin(9*w*t));
>> plot(t,f)
>> grid
2. Desarrolle la serie trigonomtrica de Fourier de la siguiente
funcin
A ; en 0 t
f ( t )=
A ; en 0 t
Dado que f(t) es una funcin par cuya serie de Fourier est
dada por:
( 4A ) [cos ( t ) 13 cos ( 3 t ) + 15 cos ( 5 t ) 17 cos ( 7 t ) + 19 cos ( 9 t )+ ]
f ( t )=
SOLUCIN
La funcin f(t) es una funcin impar cuya serie de Fourier es:
>> Fs=1000;
>> t=(1:100)/Fs;
>> w=2*pi*10;
>> f=(8/pi)*(cos(w*t)-(1/3)*cos(3*w*t)+(1/5)*cos(5*w*t)...
-(1/7)*cos(7*w*t)+(1/9)*cos(9*w*t));
>> plot(t,f)
>> grid
3. De acuerdo al problema 2, la expresin general de la serie
trigonomtrica de Fourier para la funcin f(t) par, esta dado
por:
( 4A ) ( 1n ) sen ( n2 ) cos (nt)
f ( t )=
Desarrolle mediante la instruccin de control de flujo FOR de
Matlab
SOLUCIN
>> Fs=100;
>> t=(-100:100)/Fs;
>> w=2*pi;
>> A=2;
>> f=0;
>> for n=1:1000;
f=f+(4*A/(n*pi))*(sin(n*0.5*pi))*cos(n*w*t);
end
>> plot(t,f)
>> xlabel('t(seg)')
>> ylabel('AMPLITUD')
>> title('FUNCIN PAR ONDA CUADRADA')
>> grid
>> axis([-1 1 -3 3])
TEMA 3
: DESARROLLO DE LA TRANSFORMADA
RPIDA DE FOURIER
I.
OBJETIVO
Haciendo uso de Matlab, desarrollar la transformada de funciones
no peridicas y la transformada Rpida de Fourier FFT de seales
muestreadas y mostrar las grficas correspondientes en el
dominio del tiempo y la frecuencia.
II.
PROCEDIMIENTO
1. Desarrolle la transformada de Fourier usando Matlab cuya
expresin es:
>> N=128;
>> t=linspace(0,3,N);
>> f=2*exp(-20*t);
>> figure(1)
>> plot(t,f)
>> xlabel('Time, seg'), ylabel('f(t)'), grid
>> axis([0 0.3 0 2]);
>> Ts=t(2)-t(1);
>> Ws=2*pi/Ts;
>> F=fft(f);
>> Fp=F(1:N/2+1)*Ts;
>> W=Ws*(0:N/2)/N;
>> figure(2)
>> plot(W,abs(Fp),'+')
>> xlabel('Frequebcy,Rad/s'),ylabel('|F(W)|')
>> %Verifique la grfica de la Transformada de Fourier
desarrollada:
>> N=128;
>> t=linspace(0,3,N);
>> Ts=t(2)-t(1);
>> Ws=2*pi/Ts;
>> W=Ws*(0:N/2)/N;
>> Fa=2./(20+j*W);
>> figure(3)
>> plot(W,abs(Fa))
>> xlabel('Frecuency, Rad/s'), ylabel('|F(W)|')
2. Desarrolle la transformada rpida de Fourier de una seal
muestreada
X ( k ) = X (n) e2 nkj/ 4 , k=0,1,2,3
Cuyo desarrollo est dado por el siguiente programa
>> n=[0,1,2,3,4,5];
>> Xn=[1,2,3,4,5,6];
>> Xk=fft(Xn);
>> Xmag=abs(Xk);
>> Xphase=angle(Xk);
>> figure(1)
>> plot(n,Xmag),axis([0 5 0 23]);
>> figure(2)
>> stem(n,Xmag)
>> figure(3)
>> stem(n,Xphase)
3. Para la suma de dos seales sinusoidales contaminado con
ruido desarrolle la grfica en el dominio del tiempo y su
respectiva transformada de Fourier.
>> t=0:0.001:0.6;
>> x=sin(2*pi*50*t)+sin(2*pi*120*t);
>> y=x+2*randn(size(t));
>> figure(4)
>> plot(y(1:50))
>> Y=fft(y,512);
>> pyy=Y.*conj(Y)/512;
>> f=1000*(0:255)/512;
>> figure(5)
>> plot(f,pyy(1:256))
4. Desarrolle la transformada de Fourier de la suma de tres
seales sinusoidales
>> Fs=100;
>> t=(1:100)/Fs;
>> s1=5*sin(2*pi*t*5);
>> s2=10*sin(2*pi*t*15);
>> s3=7*sin(2*pi*t*30);
>> s=s1+s2+s3;
>> figure(1)
>>
>>
>>
>>
>>
plot(t,s);
S=fft(s,512);
w=(0:255)/256*(Fs/2);
figure(2)
plot(w,abs([S(1:256)]));
5. Desarrolle la grfica de la funcin de muestreo Sa(x)
>> fplot('5*sin(x)./x',[-30 30 -2 6])
>> title('Fplot of f(x)=5.sin(x)/x')
>> xlabel('x')
6. DISEE UN ECUALIZADOR DIGITAL usando el comando
ELLIP de Filtros IIR y grafique las ondas en el dominio del
tiempo y su respectiva transformada de Fourier. Dibuje el
esquema de bloques correspondiente del ecualizador
resultante.
FILTROS Y ECUALIZADOR DIGITAL Cuya solucin es:
>> Fs=8000;
>> t=(1:8000)/Fs;
>> f1=sin(2*pi*t*500);
>> f2=sin(2*pi*t*1500);
>> f3=sin(2*pi*t*3000);
>> f4=sin(2*pi*t*4000);
>> s=f1+f2+f3+f4;
>> figure(1)
>> plot(t,s)
>> axis([0 0.01 -4 4]);
>> [b,a]=ellip(4,0.1,40, [100 1000]*2/Fs);
>> [H,w]=freqz(b,a,512);
>> figure(2)
>> plot(w*Fs/(2*pi), abs(H));
>> sf1=filter(b,a,s);
>> figure(3)
>> plot(t, sf1);
>> xlabel('Tiempo(seg)');ylabel('FORMA DE ONDA VS TIEMPO')
>> axis([0 0.01 -4 4]);
>> S1=fft(s,513);
>> SF1=fft(s,513);
>>w=(0:255)/256*(Fs/2);
>>figure(4)
>>plot(w,abs([S1(1:256)+SF1(1:256)]));
>>xlabel('FRECUENCIA(Hz)');ylabel('MAG. DE TRANSF. DE
FOURIER')
[b,a]=ellip(4,0.1,40,[1000 2000]*2/Fs);
[H,w]=freqz(b,a,512);
figure(5)
plot(w*Fs/(2*pi),abs(H));
sf2=filter(b,a,s);
figure(6)
plot(t,sf2);
xlabel('Tiempo(seg)');ylabel('FORMA DE ONDA VS. TIEMPO')
axis([0 0.01 -4 4]);
S2=fft(s,513);
SF2=fft(sf2,513);
w=(0:255)/256*(Fs/2);
figure(7)
plot(w,abs([S2(1:256)+SF2(1:256)]));
xlabel('FRECUENCIA(Hz)');ylabel('MAG. DE TRANSF. DE FOURIER')
[b,a]=ellip(4,0.1,40,[2500 3000]*2/Fs);
[H,w]=freqz(b,a,512);
figure(8)
plot(w*Fs/(2*pi),abs(H));
sf3=filter(b,a,s);
figure(9)
plot(t,sf3);
xlabel('Tiempo(seg)');ylabel('FORMA DE ONDA VS. TIEMPO')
axis([0 0.01 -4 4]);
S3=fft(s,513);
SF3=fft(sf3,513);
w=(0:255)/256*(Fs/2);
figure(10)
plot(w,abs([S3(1:256)+SF3(1:256)]));
xlabel('FRECUENCIA(Hz)');ylabel('MAG. DE TRANSF. DE FOURIER')
[b,a]=ellip(4,0.1,40,[3500 4500]*2/Fs);
[H,w]=freqz(b,a,512);
figure(11)
plot(w*Fs/(2*pi),abs(H));
sf4=filter(b,a,s);
figure(12)
plot(t,sf4);
xlabel('Tiempo(seg)');ylabel('FORMA DE ONDA VS. TIEMPO')
axis([0 0.01 -4 4]);
S4=fft(s,513);
SF4=fft(sf4,513);
w=(0:255)/256*(Fs/2);
figure(13)
plot(w,abs([S4(1:256)+SF4(1:256)]));
xlabel('FRECUENCIA(Hz)');ylabel('MAG. DE TRANSF. DE FOURIER')
zf5=0.8*sf1+0.5*sf2+1.2*sf3+0.4*sf4;
figure(14)
plot(t,zf5);
xlabel('Tiempo(seg)');ylabel('FORMA DE ONDA VS. TIEMPO')
axis([0 0.01 -4 4]);
S5=fft(s,513);
ZF5=fft(zf5,513);
w=(0:255)/256*(Fs/2);
figure(15)
plot(w,abs([S5(1:256)+ZF5(1:256)]));
xlabel('FRECUENCIA(Hz)');ylabel('MAG. DE TRANSF. DE FOURIER')
7. Verifique la respuesta en frecuencia de otros filtros: Modifique
su variables como ancho de banda o atenuacin de los 4 filtros
f=[0 .4 .4 .6 .6 1];
H=[0 0 1 1 0 0];
fs=1000;
fhz=f*fs/2;
figure(1)
plot(fhz,H),title('Desired Frequency Response')
xlabel('Frequency (Hz)'),ylabel('Magnitude')
N=8;
[Bh,Ah]=yulewalk(N,f,H)
n=256;
hh=freqz(Bh,Ah,n);
hy=abs(hh);
ff=fs/(2*n)*(0:n-1);
figure(2)
plot(fhz,H,ff,hy)
title('Actual vs. Desired Frequency Response')
xlabel('Frequency (Hz)'),ylabel('Magnitude')
Bh = [0.0237 0.0000 -0.0198
-0.0194 -0.0000 0.0236]
0.0000
0.0239
0.0000
Ah = [ 1.0000 0.0000 2.2748
1.1053 0.0000 0.2304]
0.0000
2.2605
0.0000
N=4;passband=[.4 .6];ripple=1;
[Bb,Ab]=butter(N,passband);
[Bc,Ac]=cheby1(N,ripple,passband);
h=[abs(hh) abs(freqz(Bb,Ab,n)) abs(freqz(Bc,Ac,n))];
figure(3)
plot(ff,h)
title('Yule Walk, Butterworth and Chebyshev filters')
figure(4)
plot(ff(2:n),20*log10(h(2:n,:)))
title('Yule Walk, Butterworth and Chebyshev filters')
xlabel('Frequency (Hz)'),ylabel('Magnitude in dB')
CUESTIONARIO FINAL
1. Dada la expresin de la serie de Fourier trigonomtrica,
desarrolle la grafica de f(t). Usando el criterio del problema 3.
Dada la serie:
f ( t )=
sen (n 0 t)
A
2
n
Fs=100;
t=(-100:100)/Fs;
w=2*pi;
A=2;
f= A/2;
for n=1:1000;
f=f-((1/n)*sin(n*w*t));
end;
plot(t,f);
xlabel('t(seg)')
ylabel('AMPLITUD')
grid
2. Desarrolle la serie exponencial de fourier, si f(t)=Asen(pi*t).
Grafique
Fs=100;
t=(0:200)/Fs;
A=2;
f=(2*A)/pi;
for n=1:1000;
f=f+((4*A)/pi)*(1/(1-4*n*n))*cos(4*n*pi*t)
end;
plot(t,f);
xlabel('t(seg)')
ylabel('AMPLITUD')
grid
3. Programe en Matlab la siguiente serie:
cos ( nt)
,n :impar
2 n2
n=1
f ( t )=4 A
Fs=100;
t=(0:400)/Fs;
A=2;
f=0;
for n=1:1000;
f=f+8*cos((2*n-1)*pi*t) /((2*n-1) *(2*n-1))
end;
plot(t,f);
xlabel('t(seg)')
ylabel('AMPLITUD')
grid
4. Grafique la serie exponencial de la funcin
f ( t )= Ae2 t , t [ 0,1 ]
Fs=100;
t=(0:400)/Fs;
A=2;
f=0;
for n=-1000:1000;
f=(1-exp(-2*pi*n-2))/(1+pi*n)
end;
plot(t,f);
xlabel('t(seg)')
ylabel('AMPLITUD')
grid
5. Presentar informe del desarrollo de los ejercicios planteados
y los propuestos en el cuestionario
6. Desarrolle la transformada rpida de Fourier de la funcin
Sa(t)
N=500;
t=linspace(-20,20,N);
a=(pi*t*20);
b=sin(a);
sinc=b./a;
f=2*sinc;
figure(1)
plot(t,f)
grid
ts=t(2)-t(1);
ws=2*pi/ts;
F=fft(f);
fp=F(1:N/2+1)*ts;
w=ws*(0:N/2)/N;
figure(2)
plot(w,abs(fp))
grid
7. Si
e jt +e jt
(
)
f t=
2
Determine su transformada rpida de Fourier
N=1000;
t=linspace(-2,2,N);
f=0.5*exp(i*pi*t)+0.5*exp(-1*i*pi*t);
figure(1)
plot(t,f)
grid
ts=t(2)-t(1);
ws=2*pi/ts;
F=fft(f);
fp=F(1:N/2+1)*ts;
w=ws*(0:N/2)/N;
figure(2)
plot(w,abs(fp))
axis([0 200 0 2.5])
grid
8. Dado f(t)=Asenwt. Desarrolle su transformada rpida de
Fourier.
f (t ) Asen( .t )
N=1200;
t=linspace(0,3,N);
f=20*sin(20*t);
figure(1)
plot(t,f)
grid
ts=t(2)-t(1);
ws=2*pi/ts;
F=fft(f);
fp=F(1:N/2+1)*ts;
w=ws*(0:N/2)/N;
figure(2)
plot(w,abs(fp))
grid
axis([0 300 0 25])
9. Desarrolle la transformada de Fourier de la seal muestreada
m=(0, 1, 2, 3) y Xm=(2, 3, 4, 5)
m=[0,1,2,3];
Xm=[2,3,4,5];
xk=fft(Xm);
xmag=abs(xk);
xphase=atan2(imag(xk),real(xk));
figure(1)
plot(m,xmag)
grid
figure(2)
stem(m,xmag);
grid
figure(3)
stem(m,xphase);
grid
10.
Explique en detalle la transformada discreta de Fourier
DFT. Desarrolle 3 ejemplos de la transformada, funciones
discretas y su aplicacin en el procesamiento de seales.
11.
Qu es la transformada rpida de Fourier FFT?
Desarrolle 5 ejemplos
En matemticas, la transformada discreta de Fourier o DFT es un tipo de
transformada discreta utilizada en el anlisis de Fourier. Transforma una
funcin matemtica en otra, obteniendo una representacin en el dominio
de la frecuencia, siendo la funcin original una funcin en el dominio del
tiempo. Pero la DFT requiere que la funcin de entrada sea una secuencia
discreta y de duracin finita. Dichas secuencias se suelen generar a partir
del muestreo de una funcin continua, como puede ser la voz humana. Al
contrario que la transformada de Fourier en tiempo discreto (DTFT), esta
transformacin nicamente evala suficientes componentes frecuenciales
para reconstruir el segmento finito que se analiza. Utilizar la DFT implica
que el segmento que se analiza es un nico perodo de una seal perodica
que se extiende de forma infinita; si esto no se cumple, se debe utilizar una
ventana para reducir los espreos del espectro. Por la misma razn, la DFT
inversa (IDFT) no puede reproducir el dominio del tiempo completo, a no ser
que la entrada sea peridica indefinidamente. Por estas razones, se dice
que la DFT es una transformada de Fourier para anlisis de seales de
tiempo discreto y dominio finito. Las funciones sinusoidales base que surgen
de la descomposicin tienen las mismas propiedades.
La secuencia de N nmeros complejos x0, ..., xN1 se transforma en la
secuencia de N nmeros complejos X0, ..., XN1 mediante la DFT con la
frmula:
donde i es la unidad imaginaria y es la N-sima raz de la unidad. (Esta
expresin se puede escribir tambin en trminos de una matriz DFT; cuando
se escala de forma apropiada se convierte en una matriz unitaria y Xk
puede entonces ser interpretado como los coeficientes de x en una base
ortonormal.)La transformada se denota a veces por el smbolo , igual que
en
La transformada inversa de Fourier discreta (IDFT) viene dada por
Una descripcin simple de estas ecuaciones es que los nmeros complejos
Xk representan la amplitud y fase de diferentes componentes sinusoidales
de la seal de entrada xn. La DFT calcula Xk a partir de xn, mientras que la
IDFT muestra cmo calcular xn como la suma de componentes sinusoidales
con una frecuencia de k / N ciclos por muestra. Escribiendo
las ecuaciones de este modo, estamos haciendo un uso extensivo de la
frmula de Euler para expresar sinusoides en trminos de exponentes
complejas, lo cual es mucho ms sencillo de manipular. Del mismo modo,
escribiendo Xk en forma polar, obtenemos una sinudoide de amplitud Ak / N
y fase k a partir del mdulo y argumento complejos de Xk,
respectivamente:
donde atan2 es la forma bi-argumental de la funcin arcotangente. Ntese
que el factor de normalizacin que multiplica a la DFT y la IDFT (que son 1 y
1/N) y los signos de los exponentes se colocan meramente por convenio, y
varan dependiendo de la aplicacin. El nico requisito para este convenio
es que la DFT y la IDFT tengan exponentes de signo opuesto y que el
producto de sus factores de normalizacin sea 1/N. Una normalizacin de
para ambas DFT y IDFT hace las transformadas unitarias, lo cual
tiene ciertas ventajas tericas, pero suele ser ms prctico a la hora de
efectuar operaciones numricas con el ordenador efectuar el escalado de
una sla vez (y un escalado unitario suele ser conveniente en otras
ocasiones).
(El convenio del signo negativo en el exponente suele ser adecuado porque
significa que Xk es la amplitud de una "frecuencia positiva" 2k / N. De
forma equivalente, la DFT se suele considerar como un filtro adaptado:
cuando se busca una frecuencia de +1, se correla la seal de entrada con
una frecuencia de 1.)
En adelante, los trminos "secuencia" y "vector" sern considerados
equivalentes.
En matlab existe un programa fftgui.m que se puede utilizar para hallar la
Transformada Discreta de Fourier.
Entre las diversas aplicaciones de la Transformada Discreta de Fourier
tenemos:
a)La estimacin espectral consistente en la deteccin de seales
enmascaradas por ruidos o interferencias, y con muchos campos de
aplicacin como son las comunicaciones digitales, sistemas radar, control
predictivo, etc.
b)La determinacin de la salida temporal de un SLIT cuando la entrada o la
respuesta impulsional del sistema son secuencias de longitud considerable.
c)La identificacin de la funcin de transferencia de sistemas a partir de su
comportamiento frecuencial.
1.DFT de un impulso de unidad en x (1):
x = [1 zeros(1,11)];
fftgui(x)
1. El transformar es bastante diferente si el impulso de
unidad est en x (2):
x = [0 1 zeros(1,10)];
fftgui(x)
2. x = [ones(1,25),-ones(1,25)];
fftgui(x)
3. Transformada de la funcin sin[n]
>> t=-10:10;
x=sin(x);
fftgui(x)
4. Transformada de la funcin Sinc(n)
>> t = linspace(-2,2,50);
x = sin(2*pi*t)./(2*pi*t);
fftgui(x)
2. Qu es la transformada rpida de Fourier FFT?
En la frmula de la Transformada Discreta de Fourier obtener X(k) para un
k determinado requiere aproximadamente N sumas complejas y N
productos complejos, ya que:
Para k = 0, 1, ..., N-1. Si lo que se desea es obtener X(0), X(1), ..., X(N-1)
entonces se necesitarn un total de aproximadamente N 2 sumas complejas
y N2 productos complejos. Esto quiere decir que los requerimientos
computacionales de la DFT pueden ser excesivos especialmente si el
tamao de N es grande.
La FFT aprovecha la periodicidad y simetra del factor W para el clculo del
Transformada Discreta de Fourier. La periodicidad de W implica:
Y su simetra implica:
La FFT descompone la DFT de N puntos en transformadas ms pequeas.
Una DFT de N puntos es descompuesta en dos DFTs de (N/2) puntos. Cada
DFT de (N/2) puntos se descompone a su vez en dos DFTs de (N/4) puntos y
as sucesivamente. Al final de la descomposicin se btienen (N/2) DFTs de
2 puntos cada una. La transformada ms pequea viene determinada por la
base de la FFT.
Para una FFT de base 2, N debe ser una potencia de 2 y la transformada
ms pequea es la DFT de 2 puntos. Para implementar la FFT se puede
utilizar el comando fft de Matlab.
Ejemplos:
t = 0:0.001:0.6;
x = sin(2*pi*50*t)+sin(2*pi*120*t);
y = x + 2*randn(size(t));
figure(1)
plot(1000*t(1:50),y(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (milliseconds)')
Y = fft(y,512);
Pyy = Y.* conj(Y) / 512;
f = 1000*(0:256)/512;
figure(2)
plot(f,Pyy(1:257))
title('Frequency content of y')
xlabel('frequency (Hz)')
t = 0:0.001:0.6;
x = cos(2*pi*50*t)+cos(2*pi*120*t);
y = x + 2*randn(size(t));
figure(1)
plot(1000*t(1:50),y(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (milliseconds)')
Y = fft(y,512);
Pyy = Y.* conj(Y) / 512;
f = 1000*(0:256)/512;
figure(2)
plot(f,Pyy(1:257))
title('Frequency content of y')
xlabel('frequency (Hz)')
t = 0:0.001:0.6;
x = cos(2*pi*50*t)+sin(2*pi*120*t);
y = x + 2*randn(size(t));
figure(1)
plot(1000*t(1:50),y(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (milliseconds)')
Y = fft(y,512);
Pyy = Y.* conj(Y) / 512;
f = 1000*(0:256)/512;
figure(2)
plot(f,Pyy(1:257))
title('Frequency content of y')
xlabel('frequency (Hz)')
t = 0:0.01:0.6;
x = tan(2*pi*50*t)+cos(2*pi*120*t);
y = x + 2*randn(size(t));
figure(1)
plot(1000*t(1:50),y(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('time (milliseconds)')
Y = fft(y,512);
Pyy = Y.* conj(Y) / 512;
f = 1000*(0:256)/512;
figure(2)
plot(f,Pyy(1:257))
title('Frequency content of y')
xlabel('frequency (Hz)')
12.
Explique sobre los fundamentos de los filtros digitales
FIR y IIR
FILTRO FIR
FIR es un acrnimo en ingls para Finite Impulse Response o Respuesta
finita al impulso. Se trata de un tipo de filtros digitales cuya respuesta a una
seal impulso como entrada tendr un nmero finito de trminos no nulos.
Expresin matemtica de los filtros FIR
Para obtener la salida slo se basan en entradas actuales y anteriores. Su
expresin en el dominio n es:
En la expresin anterior N es el orden del filtro, que tambin coincide con el
nmero de trminos no nulos y con el nmero de coeficientes del filtro. Los
coeficientes son bk.
La salida tambin puede expresarse como la convolucin de la seal de
entrada x(n) con la respuesta impulsional h(n):
Aplicando la transformada Z a la expresin anterior:
Estructura
La estructura bsica de un FIR es:
En la figura los trminos h(n) son los coeficientes y los T son retardos.
Pueden hacerse multitud de variaciones de esta estructura. Hacerlo como
varios filtros en serie, en cascada, etc.
Polos y ceros
Estos filtros tienen todos los polos en el origen, por lo que son estables. Los
ceros se presentan en pares de recprocos si el filtro se disea para tener
fase lineal.
Caractersticas
Los filtros FIR tienen la gran ventaja de que pueden disearse para ser de
fase lineal, lo cual hace que presenten ciertas propiedades en la simetra de
los coeficientes. Este tipo de filtros tiene especial inters en aplicaciones de
audio. Adems son siempre estables.
Por el contrario tambin tienen la desventaja de necesitar un orden mayor
respecto a los filtros IIR para cumplir las mismas caractersticas. Esto se
traduce en un mayor gasto computacional.
FILTRO IIR
IIR es una sigla en ingls para Infinite Impulse Response o Respuesta infinita
al impulso. Se trata de un tipo de filtros digitales en el que, como su nombre
indica, si la entrada es una seal impulso, la salida tendr un nmero
infinito de trminos no nulos, es decir, nunca vuelve al reposo.
Expresin matemtica de los filtros IIR
La salida de los filtros IIR depende de las entradas actuales y pasadas, y
adems de las salidas en instantes anteriores. Esto se consigue mediante el
uso de realimentacin de la salida.
Donde los a y b son los coeficientes del filtro. El orden es el mximo entre
los valores de M y N.
donde M y N son los terminos que determinan la cantidad de polos y ceros
en la funcin de transferencia.
Aplicando la transformada Z a la expresin anterior:
Estructura
Hay numerosas formas de implementar los filtros IIR. La estructura afecta a las
caractersticas finales que presentar el filtro como la estabilidad. Otros parmetros a
tener en cuenta a la hora de elegir una estructura es el gasto computacional que presenta.
Polos y ceros
Este tipo de filtros presenta polos y ceros que determina la estabilidad y la
causalidad del sistema.
Cuando todos los ceros y polos estn en el interior de la circunferencia
unidad se dice que es fase mnima y el sistema es estable y causal. Si todos
los ceros estn en el exterior es fase mxima.
Si algn polo est fuera de la circunferencia unidad el sistema es inestable.
Caractersticas
Las principales diferencias respecto a los filtros FIR es que los IIR pueden
cumplir las mismas exigencias que los anteriores pero con menos orden de
filtro. Esto es importante a la hora de implementar el filtro, pues presenta
una menor carga computacional.
Este tipo de filtros puede ser inestables, an cuando se diseen para ser
estables.
En principio no pueden disearse para tener fase lineal pero se pueden
aplicar algunas tcnicas como el filtrado bidireccional para lograrlo.