Está en la página 1de 29

scola cnica uperior nginyeria

Departament dEnginyeria Electrnica

4.- DISEO DE FILTROS IIR


4.1.- Introduccin.

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

donde el orden es igual al mximo de M y N.


La funcin de transferencia en Z del filtro es:
M

b
k =0
k z k
H ( z) = N

a
k =0
k z k

No todo sistema que tenga esta forma es IIR. Por ejemplo:


1 z 5
y (n) = y (n 1) + 0.2 x (n) 0.2 x (n 5) H ( z ) = 0.2
1 z 1
es aparentemente un filtro IIR pues presenta trminos recursivos, sin embargo vemos que sta
no es sino una forma distinta de representar el sistema:
y (n) = 0.2 x (n) + 0.2 x (n 1) + 0.2 x (n 2) + 0.2 x (n 3) + 0.2 x (n 4)
que es claramente de fase lineal.
Comparado con un FIR, un filtro IIR requiere un orden mucho menor para cumplir las
especificaciones de diseo, sin embargo estos ltimos no pueden disearse para tener fase
lineal. Existen tcnicas de compensacin de fase mediante la utilizacin de filtros pasa todo,
sin embargo esto aumenta la longitud total del filtro. Si no es necesario que el sistema sea
causal (no funcionar en tiempo real) se puede conseguir fase lineal mediante filtros IIR
realizando un filtrado BIDIRECCIONAL este consiste en filtrar la seal, invertir el orden de
las muestras obtenidas y volver a filtrar de nuevo. La seal obtenida no tendr distorsin de
fase. (Matlab instruccin filtfilt())

4.1 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

Existen dos filosofas de diseo de filtros IIR.


INDIRECTA Se basa en aplicar a filtros analgicos diseados previamente, transformaciones
que los conviertan en digitales con las mismas caractersticas. Hay tres mtodos
fundamentales:
Diseo por impulso invariante
Diseo por analoga o aproximacin de derivadas
Diseo por transformacin bilineal
DIRECTA Se propone el diseo de filtros digitales imponiendo una serie de condiciones a
la respuesta para determinar los coeficientes. Nos centraremos en dos mtodos
simples como son:
Diseo por la aproximacin de Pad
Diseo por aproximacin de mnimos cuadrados.

Tambin podemos considerar como mtodo directo aunque de uso limitado el diseo por
ubicacin de ceros y polos.

4.2.- Localizacin de ceros y polos en filtros IIR.

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.

4.2 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

Es sencillo verificar que si un sistema tiene un cero en el exterior de la circunferencia unidad



1
( zk = a a > 1 ) y ste se sustituye por su recproco conjugado ( z k' = a > 1 ), el
a
sistema tiene la misma respuesta en frecuencia en mdulo multiplicado por un factor constante
igual al modulo de cero, (probar como Ejercicio), si bien la respuesta en fase s experimenta
cambios.
Un sistema de FASE MNIMA tambin se define como aquel que experimenta un cambio de
fase neto nulo; es decir, ( ) (0) = 0

4.3.- Mtodos de diseos de filtros IIR a partir de prototipos analgicos.

4.3.1.- Aproximacin del impulso invariante.

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

su respuesta impulsional ha(t) es:


N N
ha (t ) = Ak e sk t hd (n) = Ak e sk nT
k =1 k =1

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 ) .

Comparando H (s ) y H (z ) observamos que por cada polo en sk tenemos un polo en


sk T
zk = e
Veamos qu efecto tiene esta transformacin sobre la posicin de los polos al pasar del
dominio de Laplace al Z.

4.3 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

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.

4.3.2.- Aproximacin de derivadas (Analoga).

Se basa en establecer una analoga entre el operador diferencial en el dominio de


Laplace y el Z.
En sistemas analgicos, el diferencial es: H(s)=s
En sistemas discretos podemos realizar una primera aproximacin de la derivada que
es la llamada backward difference y que se define como:
dy ( t ) y ( nT ) y ( nT T ) y ( n ) y ( n 1)
= =
dt t = nT T T

con lo que su transformada Z es:

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

4.5 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

= 0 = 0 z =1
= 0 = + z = 0
= 0 = z = 0 +
<0 z <1

Extrado de: The Circuits and Filters Handbook. Editor Wai-Kay Chen

Como se observa, la limitacin es evidente puesto que, partiendo de filtros analgicos


estables, no pueden disearse filtros pasa alta, al no poder ubicar polos fuera del crculo
sombreado.

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,

4.6 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

Extrado de: The Circuits and Filters Handbook. Editor Wai-Kay Chen

no da lugar a un mtodo de inters puesto que filtros analgicos estables no siempre da


lugar a filtros digitales estables.

4.3.3.- Transformacin bilineal.

Ninguno de los mtodos anteriores parece resolver de forma adecuada la


transformacin del dominio analgico al digital. Veamos qu condiciones debera cumplir
una transformacin para ser ptima:
1. Dada una funcin real y racional en S, la funcin resultante en Z, ser tambin
racional y con coeficientes reales.
2. Dado un filtro analgico estable, el filtro digital resultante tambin lo ser (el
semiplano izquierdo del dominio de Laplace debe transformarse dentro del crculo
de radio unidad en el dominio Z).
3. En particular, interesa una funcin reactancia que haga corresponder al eje
imaginario del plano de Laplace, la circunferencia de radio unidad.
4. Dado un orden del filtro analgico, el filtro digital resultante ser del mismo orden.
Existe una relacin que cumple todas estas condiciones, la llamada transformacin
bilineal:

2 1 z 1 2 z 1
s= =

T 1 + z 1 T z + 1

4.7 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

As como en la transformacin del impulso invariante el filtro analgico y digital tienen la


misma respuesta impulsional, la transformacin bilineal asegura que ambos filtros tienen
una respuesta aproximadamente idntica ante cualquier excitacin.
Uno de los procedimientos para justificar esta expresin es obtener el equivalente digital de
un integrador analgico.
1 1 t 0
H ( s) = h(t ) = L 1 {H ( s )} = =
s 0 t < 0
La salida ante una excitacin cualquiera viene dada por y (t ) = x(t ) h(t )

La convolucin continua viene dada por:


t
y (t ) = x( )h(t ) d para 0 < < t1 , t 2 tenemos:
0

t2 t1

y (t2 ) y (t1 ) = x( )h(t2 ) d x( )h(t1 ) d


0 0

t2

como 0 < < t1 , t 2 h(t2 ) = h(t1 ) = 1  y (t2 ) y (t1 ) = x( ) d


t1

Si aproximamos esta integral utilizando el mtodo de los trapecios:


1
y (t2 ) y (t1 ) (t2 t1 )x(t1 ) + (t2 t1 )(x(t2 ) x(t1 ) )
2
t t
y (t2 ) y (t1 ) 2 1 ( x(t2 ) + x(t1 ) )
2
Si hacemos t2 = nT t1 = nT T

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:

4.8 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

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

De estas expresiones deducimos que:


> 0 r >1
= 0 r =1
< 0 r <1
Es decir;

4.9 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

El semiplano izquierdo ( < 0 ) se transforma en el interior de la circunferencia


unidad, luego un sistema analgico estable da lugar a un sistema digital estable.
El eje imaginario ( = 0 ) se transforma en la circunferencia unidad

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:

ENUNCIADO: Se desea disear un filtro digital pasa-baja de orden 1, con frecuencia de


corte de 1 kHz, frecuencia de muestreo 10 kHz y ganancia en continua de 5
mediante la T. Bilineal.
G 0
El filtro analgico correspondiente es: H ( s ) = , con 0=21000 y G=5
s + 0
Si aplicamos directamente la transformacin, el filtro digital resultante ser un pasa-
baja pero su frecuencia de corte no estar en 1 kHz si no que se transformar segn la
ecuacin anteriores. Por tanto, si lo que queremos es obtener un filtro digital con Fc=1 kHz

4.11 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

he de partir de un filtro analgico con la frecuencia de corte adecuada que es la resultante


de resolver:
2 2 2 1000 / 10000 2
= tg = tg = tg (0.1 )
T 2 T 2 T
con lo cual:
2
tg (0.1 )
5
T 5 tg (0.1 ) ( z + 1)
H ( z) = =
+ tg (0.1 ) (tg (0.1 ) + 1) z + (tg (0.1 ) 1)
2 z 1 2

T z +1 T
la ganancia en continua es:
H ( z) z =1
=5

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.

Ampliacion de la banda pasante


20 15
F. Digital
0 14.5 F. Analogico
|H()|(dB)

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
/ /

4.12 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

4.3.4.- Transformada Z adaptada. (Matched Z transformation)

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

realizamos la transformacin a digital de acuerdo al mtodo utilizado por el impulso


invariante para transformar cada uno de los polos. Da lugar a una expresin del tipo

(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.

4.3.5.- Mapeado de polos y ceros (Pole/Zero mapping)

La transformacin bilineal, si hacemos los clculos manualmente es tediosa de aplicar, por


lo que se suele recurrir a una aproximacin ms sencilla. Dada H(s)

(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

4.13 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

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

Ejemplo: Utilizando la transformacin Pole Zero mapping, obtn el filtro digital


correspondiente al ejemplo anterior. Fs=10kHz, Fc=1kHz, G=5
5 0
Sabemos que H ( s ) = , con 0=21000 . El sistema tiene un cero en el infinito y un
s + 0

polo en s = 0 que en el plano z se corresponden con un cero en zk = 1

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)

4.14 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

Resumen: Transformaciones Continuo/Discreto

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

4.4.- Mtodos directos de diseo de filtros IIR.

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.

4.4.1.- Aproximacin de Pad.

Dado un sistema con funcin de transferencia:


M
bk z k +
k =0
H (z) = N
= h( k ) z k
k =0
1+ ak z k
k =1

pretendemos obtener los L=M+N+1 coeficientes, {ak} y {bk}, a partir de la minimizacin de


algn criterio de error. ste mtodo se plantea minimizar la suma de los errores cuadrticos
entre la respuesta impulsional ideal (deseada) y la real:
U
= [ hd (n) h(n)] 2
n= 0

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

4.16 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

Planteemos el problema a travs de la ecuacin en diferencias:


N M
y (n) = ak y (n k ) + bk x(n k )
k =1 k =0

cuando x(n)=(n), tenemos:


N M
h(n) = ak h(n k ) + bk (n k )
k =1 k =0

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

h(n) = a1h(n 1) a 2 h(n 2) ...a N h(n N ) + bn 0n M

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

El grado de fiabilidad de este mtodo depende del nmero de coeficientes seleccionado.


Aproxima perfectamente cuando el sistema buscado presenta una funcin de transferencia
H (z ) racional y sabemos el nmero de ceros y polos (orden del numerador y denominador),
lo que, en la prctica resulta problemtico.

4.17 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

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.

Ejemplo: consideremos que el filtro buscado tiene la respuesta funcin de transferencia

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.

4.18 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

M=3 N=3 M=3 N=4 M=3 N=5

1 1 1

0.8 0.8 0.8

0.6 0.6 0.6

0.4 0.4 0.4

0.2 0.2 0.2

0 0 0
0 0.5 1 0 0.5 1 0 0.5 1

M=4 N=3 M=4 N=4 M=4 N=5

1 1 1

0.8 0.8 0.8

0.6 0.6 0.6

0.4 0.4 0.4

0.2 0.2 0.2

0 0 0
0 0.5 1 0 0.5 1 0 0.5 1

Extrado de: Tratamiento Digital de Seales. J.G. Proakis

El mtodo de la aproximacin de Pad consigue un ajuste perfecto entre la respuesta


impulsional del filtro obtenido y la del filtro real en los L=M+N+1 puntos utilizados. Slo
funciona adecuadamente para filtros con muchos ceros y polos
4.19 FILTROS DIGITALES
M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

4.4.2.- Aproximacin por mnimos cuadrados (Mtodos Prony y de Shanks).

Un mtodo alternativo para disear filtros IIR es afrontar el problema de la minimizacin


de la diferencia al cuadrado entre la respuesta del filtro ideal y la real, es decir, plantear el
problema de la identificacin de sistemas. La figura siguiente muestra dicha estructura. La
idea es determinar los coeficientes del sistema H(z) de manera que colocado en cascada con el
sistema que queremos modelizar obtengamos como resultado una seal (y(n)) que en el
dominio temporal debera ser un impulso, cuando la modelizacin es exacta. Si definimos
como criterio de error la suma de y 2 (n) , una podemos obtener los coeficientes imponiendo
de dicho error sea mnimo.
Supongamos el caso ms simple de considerar un filtro con solo polos:
b0
H (z) = N
1+ ak z k
k =1

Consideremos un esquema de ecualizacin de sistemas:


(n) hd(n) y(n) (n)
Hd(z) 1/H(z)
+ -

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,

4.20 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

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

Expresin que puede escribirse en forma matricial como: a = r, donde:


es la matriz de correlacin de NxN elementos
a es un vector Nx1 que contiene los coeficientes del filtro
r es el vector de correlacin con Nx1elementos, r = -rdd(n)
El sistema de ecuaciones puede resolverse haciendo: a = -1r.
4.21 FILTROS DIGITALES
M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

Es fcil ver que la matriz es simtrica ya que el vector de autocorrelacin es simtrico


( rdd (l ) = rdd (l ) 0 l N 1)

La expresin matricial a = -1r se denomina Ecuacin de Yule-Walker, y el procedimiento


utilizado para su resolucin es el algoritmo de Levinson-Durbin (funcin levinson(), en
Matlab)
En un caso real, disponemos de un nmero finito, L, de muestras de hd(n), que debera ser
mucho mayor que el orden del filtro, N. Por ello, se debe trabajar con estimadores de la
correlacin:
L k
rdd (k ) = h ( n) h ( n k )
n=0
d d 0k N

con lo que: 1 r
a=

Ejemplo: Mtodos directos de diseo IIR


Consideremos que el sistema buscado tiene la siguiente funcin de transferencia. Utilizando el
mtodo anterior vamos a determinar los valores de los coeficientes para varios rdenes.

1
H ( z) =
1 2.6 z + 2.78 z 1.48 z 3 + 0.34 z 4
1 2

Resolvemos con Matlab

L=50; %Nmero de muestras de las respuesta impulsional


consideradas.
b=1
a=[1 -2.6 2.78 -1.48 0.34];
h=impz(b,a,L); %Vector de muestras hd(n)
r=xcorr(h,none); %vector de autocorrelacin [-L:L]
r=r(L:end); %Cogemos desde lag=0
orden=2; % Repetimos para rdenes 2,3,4,5
A=levinson(r,orden) %El vector A contiene los coeficientes del
%filtro
%Tambin se puede hacer directamente con lpc, a partir de h(n)

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

4.22 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

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.

Una aproximacin alternativa emplea el concepto de prediccin lineal por mnimos


cuadrados, y da lugar a las mismas ecuaciones que fueron descritas anteriormente. Veamos su
esquema:

(n) H(z)=b0/1+akz-k h(n)

Hd(z) hd(n)

Esta aproximacin permite extender el tratamiento al anlisis de un sistema con ceros y


polos:

4.23 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

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

hd (n k ) n > M para estimar hd (n) .


Definimos el predictor lineal de hd(n) como:
N
hd (n) = ak hd (n k ) n>M
k =1

de forma que la suma del cuadrado de los errores de prediccin sern:

+ + 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:

4.24 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

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

La respuesta de H1(z) frente a una entrada impulsional es:


N
v(n) = a k v(n k ) + (n) n0
k =1

Con {v(n)} excitamos un filtro con solo ceros:


M
H 2 (z) = bk z k
k =0

cuya respuesta es:


M
hd (n) = bk v ( n k )
k =0
con lo que la secuencia de error resulta:
M
e(n) = hd (n) hd (n) = hd (n) bk v(n k )
k =0

Considerando como error el sumatorio de la secuencia de error al cuadrado:

+ 2
M
= hd (n) bk v (n k )
n = 0 k =0

4.25 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

que minimizando respecto a bk, conduce a:


+ M +

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

utilizando la aproximacin de Pad y la de Prony y Shanks


Solucin:
0.9 + 0.28 z 1 0.9 + 0.2775 z 1 0.9 + 0.2880 z 1
H ( z ) Pad = H ( z ) Pr ony = H ( z ) Shanks =
1 0.8 z 1 1 0.8028 z 1 1 0.8028 z 1

4.5.- Transformaciones en frecuencia.


El diseo de filtros digitales se suele centrar en filtros pasa-baja. Anlogamente al
procedimiento empleado para el diseo analgico, sobre este filtro se llevarn a cabo
transformaciones en frecuencia para obtener un filtro con la respuesta en frecuencia deseada.
Si consideramos los mtodos de diseo a partir de prototipos analgicos tenemos dos opciones
para llevar a cabo dichas transformaciones:

1. Obtener un filtro analgico con las caractersticas deseadas, realizando las


transformaciones en frecuencia en el dominio analgico, y luego aplicar alguno de los
mtodos de paso a filtro digital.
4.26 FILTROS DIGITALES
M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

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

4.27 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

Las transformaciones digitales son:


P. Baja P. Baja
1 z 1 a nueva frecuencia de corte
z
1 a z 1 sin[( ') / 2]
a=
sin[( + ') / 2]

P. Baja P. Alta z 1 a nueva frecuencia de corte


z 1
1 a z 1 cos[( + ') / 2]
a=
cos[( ') / 2]

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

8.4.- Discusin entre filtros FIR e IIR.

Para concluir el captulo presentaremos, a modo de resumen, una tabla comparativa entre
los filtros FIR e IIR:

4.28 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010
scola cnica uperior nginyeria
Departament dEnginyeria Electrnica

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.

4.29 FILTROS DIGITALES


M. MARTNEZ, L. GMEZ, A. J. SERRANO, J. VILA, J. GMEZ
CURSO 2009-2010

También podría gustarte