Filtros FIR Ejemplos

12
Filtros FIR  Ejemplos Ejemplos de cálculo 1. Método de las ventanas. 1. Diseñar un filtro FIR pasa-bajos con las características enunciadas posteriormente: Frecuencia de corte de la banda pasante: 1000 Hz Frecuencia de corte de la banda suprimida: 1600 Hz Frecuencia de muestreo y reconstrucción: 8 kHz Atenuación en la banda suprimida: 50 dB Solución: Las ventanas que permiten cumplir con las especificaciones de rizado en la banda suprimida son la de Hamming y Blackman porque permiten una atenuación mayor a 50 dB. Las frecuencias y pulsaciones digitales de corte para la banda suprimida y la pasante son π  π  ω π  π  ω 25 . 0 2 125 . 0 8 1 4 . 0 2 2 . 0 8 6 . 1 = = = = = = = = = =  p  p m  p  p s s m s s f kHz kHz F F f f kHz kHz F F f  El ancho de transición puede calcularse como π  ω ω ω 15 . 0 = = p s  La frecuencia de corte es π  ω ω ω 325 . 0 2 = = + p s c  El orden de la ventana se determina con la fórmula de la tabla de ventanas en función del ancho de transición ∆ω. En caso de elegir la ventana de Hamming π  π  = = 8 53.55 0.15 M  Para que cumpla la especificación de banda pasante se requiere una respuesta al impulso simétrica (el caso antisimétrico corresponde a los transformadores de Hilbert y diferenciadores). Si el orden fuera impar (respuesta al impulso Tipo I) se podría implementar cualquier banda pasante (LP, HP, BP, BS). Incrementando en dos unidades para que N sea un entero impar M=55 La respuesta espectral deseada del filtro ideal tiene la forma ( ) < =       Π = ω ω ω ω ω ω ω ω 0 0 2 2 1 2 1 si si e e e H c M  j c M  j  j d  En el ejemplo analizado la fase es α=(M-1)/2=27, y la frecuencia de corte ωc=0.325π, por lo cual la respuesta es ( ) < = ω π  ω ω ω 0 0 325 . 0 27 si si e e H  j  j d  El filtro ideal tendría una respuesta impulsiva con una cantidad infinita de muestras [ ]       = π  ω π  ω c c d M n senc n h 2 1  Con los valores del ejemplo ( ) [ ] ( ) [ ] ( ) 27 27 325 . 0 325 . 0 27 325 . 0 = = n n sen n senc n hd π  π   La ventana de Hamming es una función dada por [ ] = cc M n si M n n w 0 1 0 1 2 cos 64 . 0 54 . 0 π   Con los valores del ejemplo se obtiene una ventana de 55 muestras [ ] = cc n si n n w 0 54 0 54 2 cos 64 . 0 54 . 0 π   

Transcript of Filtros FIR Ejemplos

Page 1: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 1/12

Filtros FIR Ejemplos

Ejemplos de cálculo

1. Método de las ventanas.

1. Diseñar un filtro FIR pasa-bajos con las características enunciadas posteriormente:

• Frecuencia de corte de la banda pasante: 1000 Hz

• Frecuencia de corte de la banda suprimida: 1600 Hz

• Frecuencia de muestreo y reconstrucción: 8 kHz

• Atenuación en la banda suprimida: 50 dB

Solución: Las ventanas que permiten cumplir con las especificaciones de rizado en la bandasuprimida son la de Hamming y Blackman porque permiten una atenuación mayor a 50 dB.

Las frecuencias y pulsaciones digitales de corte para la banda suprimida y la pasanteson

π π ω

π π ω

25.02125.081

4.022.086.1

=→==

=→==

==

==

p pm

p p

ssmss

f kHz kHz

F F

f

f kHz kHz F F f

El ancho de transición puede calcularse como

π ω ω ω 15.0=−=∆ ps

La frecuencia de corte es

π ω ω

ω 325.02

== + psc

El orden de la ventana se determina con la fórmula de la tabla de ventanas en funcióndel ancho de transición ∆ω. En caso de elegir la ventana de Hamming

π

π

= =853.55

0.15M

Para que cumpla la especificación de banda pasante se requiere una respuesta alimpulso simétrica (el caso antisimétrico corresponde a los transformadores de Hilbert y

diferenciadores). Si el orden fuera impar (respuesta al impulso Tipo I) se podría implementar cualquier banda pasante (LP, HP, BP, BS). Incrementando en dos unidades para que N seaun entero impar

M=55

La respuesta espectral deseada del filtro ideal tiene la forma

( ) <≤=

Π=−−−−

ω

ω ω

ω

ω ω

ω ω

002

21

21

si si eeeH c

M j

c

M j j

d

En el ejemplo analizado la fase es α=(M-1)/2=27, y la frecuencia de corte ωc=0.325 π,

por lo cual la respuesta es

( ) <≤

=−

ω

π ω ω

ω

00325.027

si si e

eH j

j d

El filtro ideal tendría una respuesta impulsiva con una cantidad infinita de muestras

[ ]

−−=

π

ω

π

ω c c d

M nsenc nh

21

Con los valores del ejemplo

( )[ ] ( )[ ]( )27

27325.0325.027325.0 −

−=−=n

nsennsenc nh d

π

π

La ventana de Hamming es una función dada por

[ ] −≤≤−

−=cc

M nsi M

nnw

0

101

2cos64.054.0

π

Con los valores del ejemplo se obtiene una ventana de 55 muestras

[ ] ≤≤−=cc

nsi n

nw 0

54054

2cos64.054.0

π

Page 2: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 2/12

Page 3: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 3/12

Page 4: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 4/12

88

[ ]

[ ] [ ] [ ]

[ ] [ ] [ ]+−

+++

+−

+−

++−

=

= −−

−−

= −−

par M pz z

M k

z k Bk Az

M H

z H

impar M pz z

M k

z k Bk Az

H

z H M

k

M

k

/2

cos2112

10

/2

cos2110

12

1 21

1

11

21

1 21

1

1

2

π

π

En el ejemplo que se analiza, pueden evaluarse A[k] y B[k]

[ ]

[ ]=

==

==

=

===

===

25;...;60

2652

cos2

31;...;274;...;02

cos2

25;...;602652

31;...;274;...;02

1

1

k si

k ók si T

M

k

k ók si M

k

k B

k si k ók si T

k ók si k A

π

π

Y la transferencia resultante es la siguiente

[ ] [ ] [ ] [ ] [ ]

[ ] [ ] [ ] [ ] [ ] [ ]

+−

+++−

+++−

++

++−

+++−

++−

−=

−−

−−

−−

−−

−−

21

1

21

1

21

1

21

1

21

1

1

32

165

cos21

55

164

cos21

44

163

cos21

33...

...

162

cos21

22

16cos21

111

132

1

z z

z B A

z z

z B A

z z

z B A

z z

z B A

z z

z B Az

z z H

π π π

π π

donde se observa que, para todos los bloques de segundo orden, a 0=1 y a 2=1. A su vez,para el k-ésimo bloque, a 1=2cos(2 πk/M).

Page 5: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 5/12

89

Ejemplos de simulación1. Método de las ventanas.

1.1. Analizar la variación del rizado en la respuesta espectral para el caso de un filtro FIRpasabajos con las características enunciadas posteriormente, al utilizar diferentesventanas manteniendo fijo el orden

• Frecuencia de muestreo y reconstrucción: 20 kHz

• Frecuencia de corte: 5000 Hz

• Orden del filtro: 20

• Atenuación en la banda suprimida para el caso de Kaiser: 90 dB

Solución:

%Ejemplo 7.1.1.%Comparacion de las ventanas en el diseno de filtro FIR clc, clear, close all

%EspecificacionesFm=20000; %frecuencia de muestreoFc=5000; %frecuencia de corte

M=20; %orden del filtro A=90; %rizado en dB (Kaiser) puntos=512; %cantidad de puntos para el grafico

%Calculo de parametroswc=2*pi*Fc/Fm; %pulsacion digital de corte

vc=2*Fc/Fm; %frecuencia relativa a Fm/2 usada por Matlab de corte

%parametro beta de Kaiserif(A<=21) beta=0;

elseif (A>=50) beta=0.1102*(A-8.7);

else beta=0.5842*(A-21)^0.4+0.07886*(A-21);

end

%Coeficientes de los filtros enventanados bboxcar=fir1(M-1,vc,boxcar(N)); bhamming=fir1(N-1,vc,hamming(N)); bhann=fir1(N-1,vc,hanning(N));

bbartlett=fir1(N-1,vc,bartlett(N)); bblackman=fir1(N-1,vc,blackman(N)); bkaiser=fir1(N-1,vc,kaiser(N,beta));

%Respuesta espectral de los filtros enventanados[Hboxcar,w]=freqz(bboxcar,1,puntos);[Hhamming,w]=freqz(bhamming,1,puntos);[Hhann,w]=freqz(bhann,1,puntos);[Hbartlett,w]=freqz(bbartlett,1,puntos);[Hblackman,w]=freqz(bblackman,1,puntos);

[Hkaiser,w]=freqz(bkaiser,1,puntos);

%Respuesta espectral del filtro idealHideal=rectpuls(w,2*wc);

%Graficos de la respuesta espectralfigure(1)

plot(w,Hideal,'y-');hold on

plot(w,abs(Hboxcar),'r--') plot(w,abs(Hhamming),'m:') plot(w,abs(Hhann),'g-') plot(w,abs(Hbartlett),'b--') plot(w,abs(Hblackman),'c:') plot(w,abs(Hkaiser),'k-')

legend('Ideal','Boxcar','Hamming','Hann','Bartlett','Blackman','Kaiser')xlabel('\omega,rad/muestra')ylabel('Abs(H(e^j^\omega))')disp('Pulsar una tecla para ver detalle'),pause;

%Zoom para detalle del mismo graficoaxis([0 1.1*wc 0.9 1.1])disp('Pulsar una tecla para ver respuesta impulsiva'),pause;

%Graficos de la respuesta impulsivafigure(2)stem(bboxcar,'r.-')hold onstem(bhamming,'m.:')stem(bhann,'g.-')stem(bbartlett,'b.-')stem(bblackman,'c.:')stem(bkaiser,'ko:')legend('Boxcar','Hamming','Hann','Bartlett','Blackman','Kaiser')xlabel('n')ylabel('h[n]')

Page 6: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 6/12

Page 7: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 7/12

Page 8: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 8/12

92

A2=-60; %rizado en dB de la banda suprimidaDeltaF=20; %ancho de banda de transicion

%Estimacion de parametrosFp=(2*F0-DeltaF)/2; %frecuencia de corte de la banda pasanteFs=(2*F0+DeltaF)/2; %frecuencia de corte de la banda suprimidadelta2=10^(A2/20); %rizado en la banda suprimidadelta1=(10.^(A1/20)-1)./(10.^(A1/20)+1); %rizado en la banda pasanteFc=[Fp Fs]; %Vector de frecuencias de cortedelta=[delta1;ones(1,length(delta1))*delta2]; %Vector de rizado

for i=1:length(A1)[M(i),vc,niveles,W]=remezord(Fc,nivel,delta(:,i),Fm); %parametros remezend

%Grafico del orden en funcion del rizado en dB en la banda pasantefigure(2)

plot(A1,M,'k*',A1,M,'k')grid xlabel('Rizado en la banda pasante, dB')ylabel('Orden del filtro');title('Orden del filtro en funcion del Rizado en dB en la banda pasante')

%A2 variable%Especificacionesclear M

A1=3; %rizado en dB de la banda pasante A2=-20:-10:-100; %rizado en dB de la banda suprimida

DeltaF=20; %ancho de banda de transicionFp=(2*F0-DeltaF)/2; %frecuencia de corte de la banda pasanteFs=(2*F0+DeltaF)/2; %frecuencia de corte de la banda suprimidadelta2=10.^(A2/20); %rizado en la banda suprimidadelta1=(10^(A1/20)-1)/(10^(A1/20)+1); %rizado en la banda pasanteFc=[Fp Fs]; %Vector de frecuencias de corte

delta=[delta1*ones(1,length(delta2));delta2]; %Vector de rizadosfor i=1:length(A2)[M(i),vc,niveles,W]=remezord(Fc,nivel,delta(:,i),Fm); %parametros remez

end

%Grafico del orden en funcion del rizado en dB en la banda suprimidafigure(3)

plot(A2,M,'k*',A2,M,'k')grid xlabel('Rizado en la banda suprimida, dB')ylabel('Orden del filtro');title('Orden del filtro en funcion del Rizado en dB en la banda suprimida')

%Diseno del filtro por el Metodo de Optimizacion del Error bremez=remez(M(5),vc,niveles,W); %coeficientes del filtro

[Bremez,w]=freqz(bremez,1,puntos); %respuesta espectral del filtroBdBremez=20*log10(abs(Bremez)); %amplitud en dB de la respuesta espectral

%Graficofigure(4)

plot(w,BdBremez,'k-')grid xlabel('\omega,rad/muestra')

ylabel('Abs(H(e^(j*\omega))),dB');title('Amplitud de la respuesta espectral del filtro en dB caso intermedio')

Page 9: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 9/12

Page 10: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 10/12

Page 11: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 11/12

Page 12: Filtros FIR Ejemplos

8/6/2019 Filtros FIR Ejemplos

http://slidepdf.com/reader/full/filtros-fir-ejemplos 12/12