Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Tema 4 Diseno de Filtros Iir PDF
Tema 4 Diseno de Filtros Iir PDF
Son sistemas cuya salida depende adems de salidas anteriores y que, estando en reposo,
al ser estimulados con una entrada impulsional su salida no vuelve al reposo, de ah el
calificativo de filtros de respuesta impulsional infinita (IIR). La ecuacin en diferencias
general es de la forma:
y (n) = b0 x(n) + b1 x(n 1) + ... + bM x(n M ) a1 y (n 1) a2 y (n 2) ... a N y (n N ) =
M N
= bk x(n k ) ak y (n k )
k =0 k =1
b
k =0
k z k
H ( z) = N
a
k =0
k z k
Tambin podemos considerar como mtodo directo aunque de uso limitado el diseo por
ubicacin de ceros y polos.
Los filtros IIR ms generales (ARMA) contienen ceros y polos. Si los coeficientes del filtro
son reales, si los ceros o polos son complejos siempre aparecen como pares complejos
conjugados.
La condicin de estabilidad, para sistemas causales implica que los POLOS se encuentran
en el interior de la circunferencia unidad. Los ceros no tienen efecto sobre la estabilidad del
sistema y pueden encontrarse en el interior o en el exterior de dicha circunferencia.
Cuando los ceros y polos de un sistema se encuentran en el interior de la circunferencia unidad
se dice que el sistema es de FASE MNIMA.
Cuando todos los ceros y polos estn en el exterior de la circunferencia unidad se dice que el
sistema es de FASE MXIMA.
En general, cuando tenemos ceros y polos en el exterior y en el interior se dice que el sistema
es de FASE MIXTA.
Se disea un filtro digital IIR cuya respuesta impulsional, h(n), sea la versin muestreada
de la respuesta impulsional del filtro analgico equivalente: hd(n)=ha(nT), con n=0,1,2,...
Veamos el caso de partir de un filtro analgico con N polos simples.
N
Ak
H ( s) =
k =1 s s k
con lo que, considerando que el filtro es causal, la transformada Z del filtro digital queda:
N N
1
H ( z ) = TZ [h(n)] = Ak e sk nT z n = Ak sk T
n = 0 k =1 k =1 1 e z 1
Por tanto, el procedimiento es claro, se detectan los polos del filtro analgico {sk}, se
descompone H (s ) como suma de monomios y se obtiene H (z ) .
Extrado de: The Circuits and Filters Handbook. Editor Wai-Kay Chen
j
/T |r|=1
z=esT
-/T
Caractersticas:
Se mantiene la respuesta impulsional de ambos filtros.
La estabilidad se mantiene (Filtros analgicos estables dan lugar a filtros digitales estables).
La relacin entre frecuencias es lineal ya que:
Analgico: sk = j
z = e s k T = e jT
Digital: = T
z = e j
Inconveniente:
Dado que este mtodo produce un mapeado muchos a uno; se va a producir aliasing.
Esto es sencillo de ver si tenemos en cuenta que estamos muestreando la respuesta impulsional
del filtro analgico. El contenido frecuencial de h(n), es la respuesta en frecuencia del filtro
4.4 FILTROS DIGITALES
M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica
analgico. Sabemos que en los filtros ideales su respuesta no puede ser cero en una banda por
lo que independientemente del valor de T, siempre habr una contribucin de H ( ) que no
verificar el teorema de muestreo. Si la frecuencia de muestreo es s = 2Fs , todas las
frecuencia analgicas por encima de s / 2 producirn aliasing. Para que el mtodo funcione
s
adecuadamente el filtro analgico debe verificar H ( ) 0 > Por esta razn este
2
mtodo no es adecuado para el diseo de filtros pasa-alta ni elimina-banda. Adems, si
tenemos en cuenta los prototipos analgicos considerados, los filtros de Tchebyshev II y los
Elpticos presentarn peor comportamiento debido al rizado en la banda no pasante.
1 z 1
H (z) =
T
con lo que, identificando trminos:
1 z 1 1
s= z=
T 1 sT
Veamos qu efecto tiene esta transformacin sobre la posicin de los polos al pasar del
dominio de Laplace al Z.
1
Si hacemos el cambio s = + j z =
1 ( + j )T
= 0 = 0 z =1
= 0 = + z = 0
= 0 = z = 0 +
<0 z <1
Extrado de: The Circuits and Filters Handbook. Editor Wai-Kay Chen
Otra posibilidad sera plantear alguna otra aproximacin al operador diferencial como
por ejemplo el clculo de la derivada a partir de la forward difference:
dy (t ) y (nT + T ) y (nT ) y (n + 1) y (n)
= =
dt t = nT T T
que genera una relacin de la forma:
z 1
s= z =1+ sT
T
que, observando el efecto que esta transformacin tiene sobre la posicin de los polos al pasar
del dominio de Laplace al Z,
Extrado de: The Circuits and Filters Handbook. Editor Wai-Kay Chen
2 1 z 1 2 z 1
s= =
T 1 + z 1 T z + 1
t2 t1
t2
T
y (nT ) y (nT T ) ( x(nT ) + x(nT T ) )
2
tomando transformadas Z
T 1 + z 1
H ( z) =
2 1 z 1
Comparando con la expresin del integrador analgico obtenemos que la relacin entre las
variables s y z viene dada por:
2
+s
2 z 1
TRANSFORMACIN BILINEAL: s = z=T
T z +1 2
s
T
Dado que hemos obtenido esta expresin considerando el mismo comportamiento del
integrador para cualquier entrada, al filtro digital se le supone el mismo comportamiento.
La diferencia entre el filtro analgico y el digital decrece a medida que T0, ya que la
aproximacin de los trapecios es ms exacta.
Veamos qu efecto tiene esta transformacin sobre la posicin de los polos al pasar del
dominio de Laplace al Z.
Supongamos:
z = r e j y s = + j
entonces:
2 z1 2 r2 1 2 r sin
s= = + j
T z + 1 T 1 + 2 r cos + r 2 1 + 2 r cos + r 2
con lo cual,
2 r2 1 2 2 r sin
= y =
T 1 + 2 r cos + r 2 T 1 + 2 r cos + r 2
O bien
2
2
+ +
2
r=
T
2
= tan 1
+ tan
1
2 2 + 2
+
2
T T
T
T +
= 0 r =1 = 2 tan 1
2
Esta relacin entre frecuencias nos asegura que si 1 < 2 1 < 2 ; es decir un
pasa-baja analgico dar lugar a un pasa-baja digital, y anlogamente con el resto de
prototipos.
Extrado de: The Circuits and Filters Handbook. Editor Wai-Kay Chen
La relacin entre las frecuencias analgica y digitales es no lineal y viene dada por:
T 2 F
= 2 tan 1 = tg donde = 2
2 T 2 Fs
Es decir, se lleva a cabo una compresin de las frecuencias analgicas. Este proceso de
Deformacin es lo que se denomina warping.
Si tenemos que disear un filtro digital con una frecuencia de corte c deberemos partir de
2
un filtro analgico de frecuencia de corte c = tg c , de manera que al realizar la
T 2
transformacin bilineal la frecuencia de corte sea la correcta. El proceso de obtencin de las
frecuencias analgicas adecuadas se denomina prewarping.
4.10 FILTROS DIGITALES
M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica
Como consecuencia de esta relacin no lineal entre frecuencias los filtros diseados por la
Transformacin bilineal vern modificada su respuesta en fase; es decir, si el filtro
analgico presenta fase lineal el filtro digital no la presentar.
=2 tan(/2)/T
1
0.8
0.6
0.4
0.2
/
0.2
0.4
0.6
0.8
1
20 15 10 5 0 5 10 15 20
(rad/s)
T f
= 2 tg 1 donde = 2
2 Fs
La transformacin bilineal realiza un mapeado, entre los dominios de Laplace y Z con
una correspondencia 1 a 1 debido a la compresin de frecuencias (prewarping), por esta
razn no se produce aliasing como ocurre con el mtodo del impulso invariante.
Ejemplo:
y, por tanto:
5 * 0.3249 ( z + 1) 1.2261 (1 + z 1 )
H (z) = H (z) =
1.3249 z 0.6751 1 0.5095 z 1
cuya respuesta en frecuencia aparece en la figura. Observamos que a media que la
frecuencia aumenta la diferencia entre la respuesta del filtro analgico y digital es mayor.
20 14
F. Digital
40 F. Analogico 13.5
13
|H()|(dB)
60
0 0.2 0.4 0.6 0.8 1
/ 12.5
0 12
F. Digital
0.5 F. Analogico
|()|(rad)
11.5
1 11
1.5 10.5
2 10
0 0.2 0.4 0.6 0.8 1 0 0.05 0.1 0.15 0.2 0.25
/ /
Este procedimiento lo podemos considerar como una variacin del impulso invariante.
Dada una funcin de transferencia en el dominio de Laplace, factorizada
M
(s q ) i
H ( s) = G i =1
M
(s p )
i =1
i
(z e )
M
qiT
H ( z ) = bo ( z + 1)
L i =1
L es el nmero de ceros en el infinito de H(s)
(z e )
M
pi T
i =1
Esta transformacin da lugar a filtros digitales estables pero produce aliasing como ocurre
con el mtodo del impulso invariante.
(s q ) i
H ( s) = G i =1
M
(s p )
i =1
i
como la relacin entre s y z para la transformacin bilineal viene dada
por
2
+s
z=T
2
s
T
podemos determinar las posiciones correspondientes de los ceros y los polos en el plano z
2 2
+ qi + pi
zi = T ri = T y obtener la funcin de transferencia en Z como:
2 2
qi pi
T T
M
(z z )
donde el trmino ( z + 1) se origina de los ceros en el infinito.
i L
H ( z ) = bo ( z + 1)
L i =1
M
(z r )
i =1
i
2
+ pi
2 10000 2 1000
y un polo en ri = T = = 0.5219
2
pi 2 10000 + 2 1000
T
Si imponemos adems que la ganancia en continua sea 5 para el filtro digital obtenido es
fcil determinar que el factor de ganancia necesario es G = 1.1953 y
1 + z 1
H ( z ) = 1.1953
1 0.5219 z 1
En las siguientes grficas mostramos los resultados de la respuesta en mdulo y fase del
filtro diseado por este mtodo y mediante la transformacin bilineal.
6 0
Transformacin bilineal Transformacin bilineal
Pole-Zero mapping Pole-Zero mapping
-0.2
5
-0.4
4
-0.6
|()|
|H()|
3 -0.8
-1
2
-1.2
1
-1.4
0 -1.6
0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000
(Hz) (Hz)
Extrado de: The Circuits and Filters Handbook. Editor Wai-Kay Chen
4.15 FILTROS DIGITALES
M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica
Aunque lo incluyamos en el captulo de filtros IIR, los mtodos directos de diseo sirven tanto
para filtros AR, como MA, y en general sistemas ARMA. Estos mtodos se basan en la teora
de la aproximacin, imponiendo restricciones en cuanto a la desviacin de la respuesta en
frecuencia del filtro respecto del filtro ideal. Estos mtodos son especialmente tiles cuando el
filtro se debe obtener a partir de datos experimentales.
El objetivo es determinar los coeficientes del filtro digital en base a minimizar algn
parmetro de diseo. El nmero de procedimientos existentes es muy numeroso por lo que
nicamente analizaremos los ms sencillos.
donde hd(n) es la respuesta deseada del filtro y h(n) la real; U es un lmite superior
seleccionado por el diseador.
En general, h(n) es una funcin no lineal de {ak} y {bk}, sin embargo, si U=N+M, es
posible hacer coincidir perfectamente las respuestas real y deseada para 0 n M+N.
Si hacemos hd (n) = h(n) 0 n M + N , el error cometido ser:
= [h (n) h(n)]
d
2
n = N + M +1
Si vamos dando valores a n y tenemos en cuenta que (n-k)=0 excepto para n=k,
podemos plantear el siguiente sistema de ecuaciones:
N
h ( n ) = ak h ( n k ) n>M (N ecuaciones con N incgnitas)
k =1
Con estas ecuaciones lineales se pueden hallar los coeficientes {ak} y {bk}:
1. Haciendo h(n)=hd(n) con M < n M+N, obtengo {ak}, y
2. Haciendo h(n)=hd(n) con 0 < n M, obtengo {bk}.
El clculo de los coeficientes ak se puede realizar matricialmente de acuerdo con la siguiente
expresin:
h( M + 1) h( M ) h( M 1) . . h( M N + 1) a1
. . . a
2
= . . .
. . .
h( M + N ) h( M + N 1) h( M + N 2) . . h( M ) a N
Matricialmente: a=H-1h(M+1,M+N)
que podemos resolver directamente sin ms que invertir la matriz H. Conocidos los valores de
N
ak , podemos calcular bn = ak h(n k ) 0nM
k =0
n
1
Ejemplo: Supongamos un sistema con una respuesta impulsional hd (n) = 2 u (n)
2
Observando la h(n), deducimos que tiene un solo polo por lo que asumimos una funcin de
transferencia de la forma:
b0 + b1 z 1
H (z) =
1 + a1 z 1
Reproduciendo las ecuaciones anteriores:
h ( n ) = a1 h ( n 1) + b0 ( n ) + b1 ( n 1)
para n > 1, h ( n ) = a1 h ( n 1)
n n 1
1 1 1
igualando h(n) a hd(n), 2 u ( n ) = a1 2 u ( n 1) a1 =
2 2 2
Resolviendo la ecuacin para n=0 obtenemos que b0=2 y para n=1 tenemos que b1=0, con
lo que:
2
H ( z) =
1 0.5 z 1
que es lo que esperbamos obtener.
En el caso ms real de disponer de la respuesta impulsional como una serie de puntos y
desconocer el orden del filtro buscado, podramos plantearnos qu ocurre al considerar
distintos valores para el orden del numerador y denominador.
4.8334 10 3 ( z + 1) 4
siguiente: H d (z) =
(z 2 1.3205 z + 0.6326) ( z 2 1.0482 z + 0.2959)
Podemos aplicar el mtodo anterior, y analizar cual es la funcin de transferencia obtenida
para diversas elecciones de N y M, como se observa en las grficas siguientes.
Obsrvese en la siguiente grfica que la respuesta en magnitud es ms sensible al nmero
de polos que de ceros (aunque acertemos el nmero de ceros la respuesta del filtro diseado
es bastante pobre) y que si sobredimensionamos el orden no aparecen efectos secundarios.
1 1 1
0 0 0
0 0.5 1 0 0.5 1 0 0.5 1
1 1 1
0 0 0
0 0.5 1 0 0.5 1 0 0.5 1
Minimizacin de la suma
de errores al cuadrado
donde modificamos los coeficientes del filtro 1/H(z) para anular el efecto de Hd(z), es decir,
H d (z)
que la salida, y(n), sea lo ms parecida posible a la entrada, (n). (Idealmente =1 e
H ( z)
y ( n) = ( n) )
La ecuacin en diferencias del sistema inverso ser:
1 N
y (n) = hd (n) + a k hd (n k )
b0 k =1
Para n=0,
1 N
1
y (0) = hd (0) + ak hd (0 k ) = hd (0) = 1 b0 = hd (0)
b0 k =1 b0
Para n>0, la salida, y(n) debe ser cero, lo que minimizaremos ser la suma de los errores
al cuadrado:
2
+ +
N
1
= y (n ) = 2
2
hd (n) + ak hd (n k )
n =1 hd (0) n =1 k =1
Para que la funcin de error sea mnima, las derivadas parciales respecto de los coeficientes
del filtro deben ser cero y las derivadas segundas mayores que cero.
=0 para p = 1,2,..., N
a p
2
>0
a p 2
1 +
N
= 2 2 hd (n) + ak hd (n k ) h(n p ) = 0
a p hd (0) n=1 k =1
+ N +
h
n =1
d (n) hd (n p ) + ak hd (n k ) hd (n p ) = 0
k =1 n =1
+
definiendo la variable auxiliar: rdd ( p ) = hd (n) hd (n p )
n =1
N
obtenemos: rdd ( p ) = ak rdd ( p k ) 1 p N
k =1
Si desarrollamos el sumatorio:
rdd (1) rdd (0) rdd (1) . . rdd (( N 1)) a1
r (1) rdd (0) . a
dd 2
= . . .
. . .
rdd ( N ) rdd (( N 1)) rdd (( N 2)) . . rdd (0) a N
con lo que: 1 r
a=
1
H ( z) =
1 2.6 z + 2.78 z 1.48 z 3 + 0.34 z 4
1 2
Orden Coeficientes
1 1, -0.9511
2 1, -1.7821, 0.8737
3 1, 2.3709, 2.0746, -0.6739
4 1, 2.6, 2.78, 1.48, 0.34
5 1, 2.6, 2.78, 1.48, 0.34,0
Orden=1 Orden=2
30 30
|H()| 20 20
|H()|
10 10
0 0
0 0.5 1 0 0.5 1
/ /
Orden=3 Orden=4
40 30
30
20
|H()|
|H()|
20
10
10
0 0
0 0.5 1 0 0.5 1
/ /
El procedimiento anterior slo es vlido para sistemas AR, veamos un mtodo aplicable a
sistemas ARMA.
Hd(z) hd(n)
N M
h( n ) = a k h( n k ) + bk ( n k ) n0
k =1 k =0
N
h(n) = a k h(n k ) + bn 0n M
k =1
N
h ( n) = a k h( n k ) n> M
k =1
Si consideramos que H d ( z ) tiene una estructura similar podemos emplear las salidas
+ + 2
N
[ 2
]
= hd (n) hd (n) = hd (n) + a k hd (n k )
n = M +1 n = M +1 k =1
que, como en el caso anterior, minimizando respecto a los {ak}, obtenemos:
+ N +
hd (n) hd (n p) = ak
n = M +1 k =1
h (n k ) h (n p)
n = M +1
d d
+
definiendo la variable auxiliar: rdd (k , p) = h (n k ) h (n p)
n = M +1
d d
N
obtenemos: rdd (0, p) = ak rdd (k , p ) 1 p N
k =1
Cuando no haya ceros, M se reduce a cero y las expresiones coinciden con las del mtodo
anterior.
Si denotamos por {ak } a los coeficientes calculados, para obtener los coeficientes del
numerador {bk } , que fijan los ceros del filtro, existen varios procedimientos:
APROXIMACIN DE PRONY
Utiliza el mtodo de Pad para el clculo de los coeficientes del numerador. Los
parmetros {bk} se obtienen haciendo h(n)=hd(n) para 0n M, a partir de los valores
estimados para los coeficientes del denominador, {k}:
N
bn = hd ( n ) + a k hd (n k ) 0 n M
k =1
Este mtodo, aunque funciona bien para los trminos del denominador, falla en los del
numerador pues su clculo no se basa en un mtodo de optimizacin.
MTODO DE SHANKS
Shanks propuso una alternativa para determinar los {bk}.
Con los {k} obtenidos segn el procedimiento descrito, sintetizo un filtro con solo polos:
1
H1 ( z ) = N
1 + a k z k
k =1
+ 2
M
= hd (n) bk v (n k )
n = 0 k =0
h ( n) v ( n p ) = b v ( n k ) v ( n p )
n=0
d
k =0
k
n=0
Si definimos
+
rvv (k , p ) = v(n k ) v(n p)
n=0
+
rvh (0, p ) = hd (n) v(n p)
n=0
Tenemos:
M
rvh (0, p ) = bk rvv (k , p ) 0 pM
k =0
Ecuacin anloga para el clculo de los coeficientes bk minimizando el error cuadrtico medio.
Los resultados son mejores que los proporcionados por el mtodo de Prony.
Ejercicio propuesto:
Un sistema desconocido tiene una respuesta impulsional cuyas 5 primeras muestras son
{ }
h(n) = 0.9, 1, 0.8, 0.7, 0.5,... . Obtn un modelo de primer orden para este sistema
2. Transformar el filtro pasa bajo, analgico en uno digital, y luego aplicar unas
transformaciones en frecuencia dentro del dominio digital.
Estos dos caminos solo resultan equivalentes en el caso de emplear la transformacin bilineal
para el paso a filtro digital.
Las funciones de transformacin en el dominio digital deben cumplir las mismas
condiciones que las especificadas para filtros analgicos y tratarse, por supuesto, de filtros
pasa-todo, por tanto tendrn la forma:
1
N
z 1 k
g (z ) = 1
k =1 1 k z
P. Baja P. Banda u l
K = cot tg
l frecuencia inferior de la 2 2
a2 + a1 z 1 + z 2 cos[( u + l ) / 2]
banda
z 1 =
1 + a1 z 1 + a2 z 2 cos[( u l ) / 2]
u frecuencia superior de
2 K
la banda a1 =
K +1
frecuencia de corte del
K 1
filtro pasa-baja a2 =
K +1
P. Baja Elimina Banda a2 + a1 z 1 + z 2 u l
z 1 K = tg tg
l frecuencia inferior de la 1 + a1 z 1 + a2 z 2 2 2
cos[( u + l ) / 2]
banda =
cos[( u l ) / 2]
u frecuencia superior de
2
la banda a1 =
K +1
frecuencia de corte del
1 K
filtro pasa-baja a2 =
1+ K
Para concluir el captulo presentaremos, a modo de resumen, una tabla comparativa entre
los filtros FIR e IIR:
FIR IIR
Son siempre estables An cuando los polos estn situados dentro del
crculo de radio unidad, pueden presentar
inestabilidades si se implementan en sistemas
con aritmtica de coma fija.
Presentan mayor error de cuantizacin en
funcin del nmero de bits empleado para
almacenar los coeficientes y las variables
intermedias.
Pueden disearse para que presente fase lineal,
no distorsionando las caractersticas de fase y
el retardo de grupo
Son ms apropiados cuando deseamos obtener
regiones de transicin estrechas.
Requieren un mayor orden para valores de la
atenuacin y zonas de transicin similares lo
que supone un mayor retardo en la obtencin
de la respuesta y mayor consumo de memoria.
En la actualidad, siguen apareciendo todos los meses mtodos de diseo que se publican
en las revistas especializadas, la proliferacin de mtodos de diseo se justifica por la
diversidad de la casustica que se encuentra en su aplicacin prctica, por ejemplo resulta
obvio el diferente tratamiento que podemos dar a aplicaciones en las que preservar la fase es
vital (audio) frente a otras que slo se preocupan de la magnitud de la respuesta en frecuencia.
Por otro lado, los mtodos de diseo que entraan una elevada carga computacional pueden
resultar inadecuados en sistemas que requieren una variacin de las caractersticas del filtro, y
por tanto de sus coeficientes, en funcin de las condiciones del entorno.