You are on page 1of 41

Filtros Digitales Filtros Digitales

FIR FIR
( (Finite Finite Impulse Response) Impulse Response)
Prof. Juan Mauricio Villanueva
jmauricio12@gmail.com
1
Estructuras para Sistemas FIR
‡ Ecuación de diferencia de un sistema FIR de orden M
‡ Función de transferencia
‡ La respuesta al impulso
1
0
[ ] [ ]
M
k
k
y n b x n k

=
=
¿
1
0
( )
M
k
k
k
H z b z

=
=
¿
2
, 0 1
[ ]
0,
n
b n M
h n
en otro caso
e e
|
=
,
|
Estructuras FIR: Forma Directa I
1
0
[ ] [ ]
M
k
k
y n h x n k

=
=
¿
3
Diseño de Filtros Digitales FIR
‡ El diseño de filtros, implica la selección de una secuencia
finita que representa la respuesta al impulso de un filtro
ideal
‡ Los filtros FIR siempre son estables, y con fase lineal
(atraso en el tiempo)
‡ Métodos comunes para el diseño de filtros FIR:
± Ventanas, usando la respuesta al impulso de los filtros ideales
± Muestreo en frecuencia
± Diseño iterativo basado en restricciones óptimas
4
Diseño de Filtros FIR por Transformada
de Fourier
‡ Para una respuesta ideal de un filtro pasa-bajo
5
6
Función de Transferencia:
Simetria
Diseño de Filtros FIR por Transformada
de Fourier
7
Función de Transferencia (simetria):
Diseño de Filtros FIR por Transformada
de Fourier
8
Diseño de Filtros FIR por Transformada de Fourier
Problema 1
‡ Calcular los coeficientes del Filtro Pasa-Bajo FIR con 3-tap,
con frecuencia de corte 800 Hz y frecuencia de muestreo
8000 muestras/seg
9

800
2 2
8000 5
2 1 3
0 (0)
sin sin 0.2
0 ( )
c
c
s
c
c
f
rad
f
M tap
Para n h
n n
Para n h n
n n
T
; = T = T =
+ =
;
= ÷ =
T
; T
{ ÷ = =
T T
10
Problema 1
‡ Respuesta en Frecuencia
11
Problema 1
‡ En general, el filtro FIR con coeficientes simetricos tiene
una respuesta de Fase Lineal, dado por
12
Problema 1
‡ Magnitud y Fase
13
Problema 1
14
Problema 1
15
Problema 1
fc = 800;
fs = 8000;
M = 1;
tap = 2*M+1;
omega = 0:0.001:pi;
hertz = omega*fs/(2*pi)
moduloH = 20*log10(abs(0.2+0.3742*cos(omega)));
for i = 1:length(omega)
if (0.2+0.3742*cos(omega(i)))>0
faseH(i) = -M*omega(i);
elseif (0.2+0.3742*cos(omega(i)))<0
faseH(i) = -M*omega(i)+pi;
end
end
figure
plot(hertz,moduloH)
axis([0 4000 -80 0]),grid
figure
plot(hertz,faseH*180/pi), grid
16
Problema 1
0 500 1000 1500 2000 2500 3000 3500 4000
-80
-70
-60
-50
-40
-30
-20
-10
0
Hz
|
H
|

d
B
0 500 1000 1500 2000 2500 3000 3500 4000
-140
-120
-100
-80
-60
-40
-20
0
20
40
60
Hz
g
r
a
d
o
s
‡ Magnitud y Fase
‡ Para M = 1 (2M + 1 = 3 tap)
‡ Para M = 8 (2M + 1 = 17 tap)
17
Problema 1
Problema 2
‡ Calcular los coeficientes del Filtro Pasa-Banda FIR con 5-
tap, con frecuencia de corte inferior 2000 Hz, frecuencia de
corte superior 2400, y frecuencia de muestreo 8000
muestras/seg
18

2 1 5
2000
2 2
8000 2
2400 3
2 2
8000 5
0
( )
sin sin
0 2 2
L
L
s
H
H
s
H L
H L
M tap
f
rad
f
f
rad
f
n
h n
n n
n n
+ =
T
; = T = T =
T
; = T = T =
; ;
|
=

T
=
,
; T ; T

{ e e

T T |
Problema 2
‡ Calculo de los coeficientes:
19
Problema 2
‡ Función de Transferencia:
‡ Respuesta en Frecuencia:
20




2 3 4
2 2 2
2 2 2
2
0.09355 0.01558 0.1 0.01558 0.09355
0.09355 0.01558 0.1 0.01558 0.09355
2cos( )
0.09355( ) 0.1 0.01558( )
j j j j j
j j j j j j
jx jx
j j j j j j
j j
H e e e e e
H e e e e e e
e e x
H e e e e e e
H e e
; ; ; ; ;
; ; ; ; ; ;

; ; ; ; ; ;
; ;
= +
= +
+ =
= + + +
= 0.1871cos(2 ) 0.1 0.03116cos( ) ; + ;
‡ Magnitud y Fase
21
Problema 2

2
0.1871cos(2 ) 0.1 0.03116cos( )
j j
H e e
; ;
= ; + ;


0.1871cos(2 ) 0.1 0.03116cos( )
2 0.1871cos(2 ) 0.1 0.03116cos( ) 0
2 0.1871cos(2 ) 0.1 0.03116cos( ) 0
j
j
H e
si
H e
si
;
;
= ; + ;
; ; + ; "
|
. =
,
;+ T ; + ;
|
0 500 1000 1500 2000 2500 3000 3500 4000
-80
-70
-60
-50
-40
-30
-20
-10
0
Hz
|
H
|
d
B
‡ Se realiza el truncamiento de la respuesta al impulso ideal
h[n] por una ventana w[n]:
[ ] [ ] [ ]
w
h n h n w n =
( ) ( ) ( )
w
H F H F W F = -
22
Multiplicación en
tiempo discreto
Convolución en la
Frecuencia
Diseño de Filtros FIR por el Método de Ventanas
VENTANA
Boxcar
Blackman
Barlett
Hanning
Hamming
‡ Características de las Funciones Ventana
23
M n M e e
[ ] 1 w n =
[ ] 1
n
w n
M
=
[ ] 0.5 0.5cos
n
w n
M
T
¨ ¸
= +
¦
' '
[ ] 0.54 0.46cos
n
w n
M
T
¨ ¸
= +
¦
' '
2
[ ] 0.42 0.5cos 0.08cos
n n
w n
M M
T T
¨ ¸ ¨ ¸
= + +
¦ ¦
' ' ' '
Diseño de Filtros FIR por el Método de Ventanas
‡ Proceso de Diseño:
1. Obtener los coeficientes del Filtro FIR utilizando el Método
de la Transformada de Fourier
2. Multiplicar los Coeficientes del Filtro FIR por la secuencia
de la ventana seleccionada
3. Aplicar el atraso a la respuesta truncada de M
muestras
24
Diseño de Filtros FIR por el Método de Ventanas
( ) ( ) ( ) ,...., 0,1,....,
w
h n h n w n n M M = =
( ) 0,1,..., 2
n w
b h n M Para n M = =
( )
w
h n
Problema 3
‡ Diseñar un filtro FIR pasa-bajo de 3-tap, con frecuencia de
corte de 800 Hz y frecuencia de muestreo 8000
muestras/seg, utilizando la ventana de Hamming.
25

800
2 2
8000 5
2 1 3
0 (0)
sin sin 0.2
0 ( )
c
c
s
c
c
f
rad
f
M tap
Para n h
n n
Para n h n
n n
T
; = T = T =
+ =
;
= ÷ =
T
; T
{ ÷ = =
T T
26
Problema 3
‡ Calculo de los coeficientes del filtro FIR
27
Problema 3
‡ Calculo de los coeficientes de la Ventana de Hamming
28
Problema 3
‡ Multiplicando los coeficientes del filtro FIR con los
coeficientes de la Ventana de Hamming
29
Problema 3
‡ Atrasando la respuesta truncada por M = 1
‡ Función de Transferencia
1 2
0 1 2
( ) H z b b z b z

= + +
30
Problema 3
‡ Respuesta en Frecuencia
31
Comparación de la Respuesta en Frecuencia
32
Especificaciones de Diseño de Filtros FIR Pasa-Bajo
Usando la Ventana de Hamming
‡ Especificaciones de la Respuesta en Frecuencia
‡ Banda de Transición Normalizada
stop pass
s
f f
f
f

A =
33
Especificaciones de Diseño de Filtros FIR Pasa-Bajo
Usando la Ventana de Hamming
‡ La Longitud del Filtro es dada por
‡ Ripple en la banda pasante
‡ Ripple en la banda de parada
‡ Frecuencia de Corte
2
pass stop
c
f f
f
+
=
34
Especificaciones de Diseño de Filtros FIR Pasa-Bajo
‡ Diseñar un filtro FIR pasa-bajo, utilizando la ventana
rectangular, con las siguientes especificaciones:
‡ Banda de transición normalizada
35
Problema 4
8000 /
s
f muestras seg =
‡ Usando una ventana ventana rectangular rectangular, el Ripple en la banda
pasante es de 0.74 dB y la atenuación en la banda de parada
es de 21 dB
‡ La selección de esta ventana satisface los requerimientos de
ripple en la banda pasante de 1 dB y atenuación en la banda
de parada de 20 dB.
36
Problema 4
‡ La longitud del Filtro es:
‡ Se escoge un valor mayor N=25 para garantizar las
especificaciones de diseño.
‡ Frecuencia de Corte
37
Problema 4
1850 2150
2000
2
c
f Hz
+
= =
‡ La longitud del Filtro 25-tap
‡ Frecuencia de Corte fc = 2000 Hz
‡ Frecuencia de muestreo fs = 8000 muestras/seg
‡ Ventana Rectangular
‡ Diseñar el Filtro FIR pasa-bajo usando el método de
ventanas
38
Problema 4
‡ Frecuencia de corte normalizada
39
Problema 4

2000
2 2
8000 2
2 1 25
12
12 12
0 (0)
sin sin 0.5
0 ( )
c
c
s
c
c
f
rad
f
M tap
M
n
Para n h
n n
Para n h n
n n
T
; = T = T =
+ =
=
e e
;
= ÷ =
T
; T
{ ÷ = =
T T
‡ Calculo de coeficientes (M=12)
40
Problema 4
(0) 0.5
(1) 0.3183 ( 1)
(2) 0 ( 2)
(3) 0.106 ( 3)
(4) 0 ( 4)
(5) 0.0636 ( 5)
(6) 0 ( 6)
(7) 0.0454 ( 7)
(8) 0 ( 8)
(9) 0.0353 ( 9)
(10) 0 ( 10)
(11) 0.0289 ( 11)
(12) 0 ( 12)
h
h h
h h
h h
h h
h h
h h
h h
h h
h h
h h
h h
h h
=
= =
= =
= =
= =
= =
= =
= =
= =
= =
= =
= =
= =
fc = 2000;
fs = 8000;
M= 12;
tap = 2*M+1;
i=1;
for n=-12:12
if n==0
h(i)=(pi/2)/pi;
else
h(i)=sin(0.5*pi*n)/(n*pi);
end
i= i+1;
end
freqz(h,1,tap,fs)
41
Problema 4
0 500 1000 1500 2000 2500 3000 3500 4000
-1500
-1000
-500
0
Frequency (Hz )
P
h
a
s
e

(
d
e
g
r
e
e
s
)
0 500 1000 1500 2000 2500 3000 3500 4000
-60
-40
-20
0
20
Frequency (Hz )
M
a
g
n
i
t
u
d
e

(
d
B
)

Estructuras para Sistemas FIR
‡ Ecuación de diferencia de un sistema FIR de orden M

y[n] ! § bk x[ n  k ]
k !0

M 1

‡

Función de transferencia

H ( z ) ! § bk z  k
k !0

M 1

‡ La respuesta al impulso

b ®n , h[ n] ! ¯ 0, °

0 e n e M 1 en otro caso
2

Estructuras FIR: Forma Directa I
y[n] ! § hk x[n  k ]
k !0 M 1

3

Diseño de Filtros Digitales FIR
‡ El diseño de filtros, implica la selección de una secuencia finita que representa la respuesta al impulso de un filtro ideal ‡ Los filtros FIR siempre son estables, y con fase lineal (atraso en el tiempo) ‡ Métodos comunes para el diseño de filtros FIR:
± Ventanas, usando la respuesta al impulso de los filtros ideales ± Muestreo en frecuencia ± Diseño iterativo basado en restricciones óptimas

4

Diseño de Filtros FIR por Transformada de Fourier ‡ Para una respuesta ideal de un filtro pasa-bajo 5 .

Diseño de Filtros FIR por Transformada de Fourier Función de Transferencia: Simetria 6 .

Diseño de Filtros FIR por Transformada de Fourier Función de Transferencia (simetria): 7 .

Diseño de Filtros FIR por Transformada de Fourier 8 .

c ! 2T ! 2T ! rad 8000 5 fs 2 M  1 ! 3 tap .c Para n ! 0 p h(0) ! T sin . con frecuencia de corte 800 Hz y frecuencia de muestreo 8000 muestras/seg fc 800 T .Problema 1 ‡ Calcular los coeficientes del Filtro Pasa-Bajo FIR con 3-tap.

c n sin ..

2Tn Para n { 0 p h(n) ! ! nT nT 9 .0.

Problema 1 10 .

Problema 1 ‡ Respuesta en Frecuencia 11 .

dado por 12 .Problema 1 ‡ En general. el filtro FIR con coeficientes simetricos tiene una respuesta de Fase Lineal.

Problema 1 ‡ Magnitud y Fase 13 .

Problema 1 14 .

Problema 1 fc = 800. M = 1.3742*cos(omega(i)))>0 faseH(i) = -M*omega(i).2+0. elseif (0. grid 15 . for i = 1:length(omega) if (0.grid figure plot(hertz. tap = 2*M+1. hertz = omega*fs/(2*pi) moduloH = 20*log10(abs(0.001:pi.2+0.faseH*180/pi). fs = 8000.3742*cos(omega(i)))<0 faseH(i) = -M*omega(i)+pi. omega = 0:0.3742*cos(omega))).moduloH) axis([0 4000 -80 0]). end end figure plot(hertz.2+0.

Problema 1 ‡ Magnitud y Fase 0 -10 -20 0 -30 |H | dB -40 -50 -60 -100 -70 -80 -120 0 500 1000 1500 2000 Hz 2500 3000 3500 4000 -140 grados -20 -40 -60 -80 60 40 20 0 500 1000 1500 2000 Hz 2500 3000 3500 4000 16 .

Problema 1 ‡ Para M = 1 (2M + 1 = 3 tap) ‡ Para M = 8 (2M + 1 = 17 tap) 17 .

L ! 2T ! 2T ! rad fs 8000 2 fH 2400 3T . con frecuencia de corte inferior 2000 Hz.Problema 2 ‡ Calcular los coeficientes del Filtro Pasa-Banda FIR con 5tap. H ! 2T ! 2T ! rad fs 8000 5 . ® H  . y frecuencia de muestreo 8000 muestras/seg 2 M  1 ! 5 tap fL 2000 T . frecuencia de corte superior 2400.L ± T ± h( n) ! ¯ sin ± .

. H T  sin .

L T ± nT nT ° n!0 n{0 2e ne 2 18 ..

Problema 2 ‡ Calculo de los coeficientes: 19 .

Problema 2 ‡ Función de Transferencia: ‡ Respuesta en Frecuencia: H .

! 0.  0.09355  0.e j.01558e  j 3.09355e  j 4 . H .  0.01558e  j.1e  j 2 .  0.

. ! e  j 2 .e j.

 0.01558e j. e jx  e  jx ! 2 cos( x ) H .01558e  j.09355e j 2.  0.0.  0.09355e  j 2 .1  0.

. ! e  j 2 .e j.

 e j. )  0. ) H .01558(e j.1  0.0.09355(e j 2.  e  j 2.

e j. . ! e  j 2 .

) 20 .03116 cos(.1871cos(2.)  0.1  0.0.

Problema 2 ‡ Magnitud y Fase H .

. ! e  j 2 .e j.

1  0.)  0.) H .03116 cos(.0.1871cos(2.

03116cos(.03116cos(.1  0.)  0.e j.1871cos(2. ’H .) " 0 ® 2.)  si  0.1871cos(2. ! 0.1  0.)  0.

e ! ¯  ° 2.)  0.1  0.1871cos(2. 0 -10 -20 -30 |H | dB -40 -50 -60 -70 -80 0 500 1000 1500 2000 Hz 2500 3000 3500 4000 21 .03116cos(.  T si  0.) 0 j.

Diseño de Filtros FIR por el Método de Ventanas ‡ Se realiza el truncamiento de la respuesta al impulso ideal h[n] por una ventana w[n]: Multiplicación en tiempo discreto Convolución en la Frecuencia hw [n] ! h[n]w[n] H w ( F ) ! H ( F ) W ( F ) 22 .

08cos © w[n] ! 0.5  0.54  0.Diseño de Filtros FIR por el Método de Ventanas ‡ Características de las Funciones Ventana VENTANA Boxcar Blackman Barlett Hanning Hamming M e n e M w[n] ! 1 ¨ nT ¸ ¨ 2 nT ¸  0.46 cos © ¹ ªM º 23 .5 cos © ¹ ªM º ¨ nT ¸ w[n] ! 0.42  0.5 cos © ¹ ¹ ªM º ª M º w[ n] ! 1  n M ¨ nT ¸ w[n] ! 0.

M hw (n) 3... Aplicar el atraso a la respuesta truncada muestras bn ! hw (n  M ) Para n ! 0. Obtener los coeficientes del Filtro FIR utilizando el Método de la Transformada de Fourier 2...Diseño de Filtros FIR por el Método de Ventanas ‡ Proceso de Diseño: 1. 2 M de M 24 ..1....1.. 0..... Multiplicar los Coeficientes del Filtro FIR por la secuencia de la ventana seleccionada hw (n) ! h(n) w(n) n !  M ..

fc 800 T .Problema 3 ‡ Diseñar un filtro FIR pasa-bajo de 3-tap.c Para n ! 0 p h(0) ! T sin . con frecuencia de corte de 800 Hz y frecuencia de muestreo 8000 muestras/seg. c ! 2T ! 2T ! rad 8000 5 fs 2 M  1 ! 3 tap . utilizando la ventana de Hamming.

c n sin ..

0.2Tn Para n { 0 p h(n) ! ! nT nT 25 .

Problema 3 ‡ Calculo de los coeficientes del filtro FIR 26 .

Problema 3 ‡ Calculo de los coeficientes de la Ventana de Hamming 27 .

Problema 3 ‡ Multiplicando los coeficientes del filtro FIR con los coeficientes de la Ventana de Hamming 28 .

Problema 3 ‡ Atrasando la respuesta truncada por M = 1 ‡ Función de Transferencia H ( z ) ! b0  b1 z 1  b2 z 2 29 .

Problema 3 ‡ Respuesta en Frecuencia 30 .

Comparación de la Respuesta en Frecuencia 31 .

Especificaciones de Diseño de Filtros FIR Pasa-Bajo Usando la Ventana de Hamming ‡ Especificaciones de la Respuesta en Frecuencia ‡ Banda de Transición Normalizada (f ! f stop  f pass fs 32 .

Especificaciones de Diseño de Filtros FIR Pasa-Bajo Usando la Ventana de Hamming ‡ La Longitud del Filtro es dada por ‡ Ripple en la banda pasante ‡ Ripple en la banda de parada ‡ Frecuencia de Corte fc ! f pass  f stop 2 33 .

Especificaciones de Diseño de Filtros FIR Pasa-Bajo 34 .

con las siguientes especificaciones: f s ! 8000 muestras / seg ‡ Banda de transición normalizada 35 . utilizando la ventana rectangular.Problema 4 ‡ Diseñar un filtro FIR pasa-bajo.

74 dB y la atenuación en la banda de parada es de 21 dB ‡ La selección de esta ventana satisface los requerimientos de ripple en la banda pasante de 1 dB y atenuación en la banda de parada de 20 dB.Problema 4 ‡ Usando una ventana rectangular. 36 . el Ripple en la banda rectangular pasante es de 0.

‡ Frecuencia de Corte 1850  2150 fc ! ! 2000 Hz 2 37 .Problema 4 ‡ La longitud del Filtro es: ‡ Se escoge un valor mayor N=25 para garantizar las especificaciones de diseño.

Problema 4 ‡ ‡ ‡ ‡ La longitud del Filtro 25-tap Frecuencia de Corte fc = 2000 Hz Frecuencia de muestreo fs = 8000 muestras/seg Ventana Rectangular ‡ Diseñar el Filtro FIR pasa-bajo usando el método de ventanas 38 .

c Para n ! 0 p h(0) ! T sin . c ! 2T ! 2T ! rad fs 8000 2 2 M  1 ! 25 tap M ! 12 12 e n e 12 .Problema 4 ‡ Frecuencia de corte normalizada fc 2000 T .

.c n sin .

0.5Tn Para n { 0 p h(n) ! ! nT nT 39 .

0353 ! h( 9) ! h( 10) h(10) ! 0 h(11) ! 0.3183 ! h( 2) h(2) ! 0 h(3) ! 0.0454 ! h( 7) ! h( 8) h(8) ! 0 h(9) ! 0.0289 ! h(11) ! h( 12) h(12) ! 0 40 .Problema 4 ‡ Calculo de coeficientes (M=12) h(0) ! 0.106 ! h( 3) ! h( 4) h(4) ! 0 h(5) ! 0.0636 ! h( 5) ! h( 6) h(6) ! 0 h(7) ! 0.5 ! h( 1) h(1) ! 0.

-60 0 500 tap = 2*M+1. -20 fs = 8000. end i= i+1.fs) M agni tude ( dB ) P ha s e (degrees ) 1000 1500 2000 2500 F requenc y (H z ) 3000 3500 4000 1000 1500 2000 2500 F requenc y (H z ) 3000 3500 4000 41 . -40 M= 12.1. i=1.5*pi*n)/(n*pi).tap. 0 for n=-12:12 -500 if n==0 -1000 h(i)=(pi/2)/pi.Problema 4 20 0 fc = 2000. end freqz(h. -1500 else 0 500 h(i)=sin(0.