Вы находитесь на странице: 1из 17

Un filtro digital es un algoritmo matemtico basado en multiplicaciones y sumas, donde

el trmino digital hace referencia al sistema que realiza las operaciones.


En la comparacin con los filtros analgicos, podemos encontrar las siguientes ventajas:
En algunos tipos de filtros digitales, la estabilidad est garantizada.
No hay problemas de adaptacin de impedancias.
Algunos filtros consiguen una linealidad de fase excelente.
No precisan ajustes ni se degradan con el tiempo.
Varias seales de entrada o canales pueden ser filtradas sin necesidad de aadir ms
circuitera.
En la prctica, la precisin de los filtros analgicos est limitada. Por ejemplo, para
conseguir niveles de atenuacin de 60 70 dB en la banda eliminada debemos emplear
filtros activos especiales. En los filtros digitales la precisin viene limitada por la longitud
de palabra que se utilice.
Son fcilmente reproducibles.
Se pueden emplear en la regin de muy bajas frecuencias (til en aplicaciones
biomdicas).
Pueden modificar el rango de trabajo cambiando la frecuencia de muestreo.

Como desventajas cabe destacar las siguientes:


Limitacin de velocidad: el ancho de banda de las seales con que pueden operar es
mayor para filtros analgicos que para digitales. En situaciones de tiempo real vamos a
encontrar limitaciones con los convertidores A/D restringiendo la frecuencia mxima de

muestreo.
Adems, la velocidad del filtro digital va a depender de la velocidad del sistema digital de
procesamiento que se emplee y del nmero de operaciones aritmticas que aparezcan en el
algoritmo.
Efectos de la longitud de palabra finita: en el sistema digital aparecern, entre otros,
ruidos debidos a la cuantificacin de la seal de entrada del convertidor A/D, y al
redondeo/truncamiento ocurrido durante los clculos. Cuantos ms lazos recursivos haya,
ms se acumulan dichos ruidos, pudiendo llevar al sistema a la inestabilidad.

ETAPAS EN EL DISEO DE FILTROS DIGITALES


El diseo de filtros consta de cinco etapas:
1. Especificacin de los requisitos de filtro.
2. Clculo de los coeficientes del filtro (aproximacin).
3. Representacin del filtro empleando una estructura (realizacin).
4. Anlisis de los efectos de la longitud de palabra finita.
5. Construccin del filtro empleando software y/o circuitera.
Representacin del filtro empleando una estructura
La etapa de realizacin implica convertir la funcin de sistema en una estructura
aprovechable. Se emplean con frecuencia diagramas de bloques o flujogramas. La estructura
va a indicarnos el procedimiento computacional que hay que seguir para construir el filtro
digital y va a depender de si deseamos un sistema FIR o IIR.
Estructuras para sistemas IIR
Dada una funcin de un sistema discreto, se pueden obtener una gran variedad de
estructuras equivalentes. Se estudiarn algunas de las ms empleadas.

Formas directas
Se obtienen como reflejo inmediato de las operaciones indicadas en la ecuacin en diferencias.

Este diagrama de bloques puede modificarse sin que cambie la funcin de sistema, de
manera que se obtenga otra estructura equivalente. Por ejemplo, se puede ver el
diagrama de la primera forma directa como la asociacin en cascada de dos sistemas.

La estructura as obtenida, eliminando registros de memoria innecesarios, se


denomina forma Directa II y es cannica con respecto al nmero de registros de
almacenamiento, ya que es el menor posible. Por simplicidad se considera M=N.

Esta seccin cannica es la ms popular ya que presenta buenas propiedades con


respecto al ruido de redondeo y requiere un nmero mnimo de elementos de retardo. El
problema estriba en que puede ocurrir desbordamiento ("overflow") en nodos internos de
la red. Para evitarlo es necesario escalar la entrada con respecto a los nodos conflictivos.
Formas indirectas
Las formas directas no resultan tiles cuando el orden de la funcin a realizar es elevado, ya
que su sensibilidad con respecto a la cuantificacin de los coeficientes aumenta
enormemente con el grado de la funcin. Para evitar este problema se suelen descomponer
las funciones del sistema como suma o producto de funciones de primer y segundo orden,
las cuales podrn realizarse segn algunas de las formas directas estudiadas.

Cascada
Se basa en descomponer la funcin del sistema en productos de funciones de primer y segundo
orden. Esta descomposicin no es nica ya que, en primer lugar, se pueden emparejar los polos
y los ceros de diversas maneras y, en segundo lugar, la conexin de los subsistemas se puede
llevar a cabo de distintas formas.
1) Factorizamos los polinomios N(z) y D(z), agrupando las races conjugadas para que no
aparezcan coeficientes complejos.

2) Expresamos H(z) como producto de funciones de segundo orden, donde N es el menor

entero mayor o igual que N/2.

3) Se realizan las funciones H(z) en la forma directa II y se conectan en cascada como indica la
figura.

Hay muchas formas diferentes de emparejar polos y ceros para formar cada una de las H(z).
Tericamente la funcin global es la misma, pero en la prctica (debido a la aritmtica finita)
existen grandes diferencias entre unas y otras. Tambin aparecen distintas realizaciones
segn el orden de conexin de las etapas.
Un criterio de seleccin que reduce la sensibilidad es el siguiente:
Los polos ms prximos a la circunferencia unidad deben emparejarse con los ceros que
tienen ms prximos en el plano Z.
Se debe repetir el punto anterior hasta que todos los polos y los ceros han sido
emparejados.
Las secciones de segundo orden resultantes deben ordenarse situndolas de manera que
los polos se vayan alejando de la circunferencia de radio uno, o en orden inverso.
Esta forma de emparejar los polos y los ceros se basa en la experiencia de diversos autores.
Los picos elevados de ganancia son indeseables, ya que pueden ocasionar saturacin,
amplificando adems el ruido de cuantificacin. Emparejar un polo prximo a la
circunferencia de radio unidad con el cero ms cercano a l puede reducir
considerablemente esos picos de ganancia.

Paralelo
La conexin en paralelo se basa en descomponer la funcin de partida H(z) en suma de
funciones de primer y segundo orden, donde N=N1+2N2 es el grado del denominador y
M es el grado del numerador, de manera que si N>=M , entonces Np =M-N. En caso
contrario, el primer trmino de la sumatoria sera nulo.

El esquema general para una realizacin en paralelo consta de una seccin FIR (que
puede no aparecer) y N secciones IIR de segundo orden conectadas en paralelo.

La realizacin en cascada es ms robusta, siendo la paralela ms rpida. Para sistemas IIR con
los ceros de la funcin de sistema en IzI=1, la realizacin en cascada se puede llevar a cabo
con menos multiplicadores y ms control sobre la posicin de los ceros.
Estructuras para sistemas FIR
Forma directa

Conexin en cascada

Eleccin entre las estructuras


a) Si se trata de un sistema IIR o FIR.
b) La facilidad de construccin. Se puede elegir las estructuras menos complejas porque sean
ms rpidas, ocupen menor espacio o resulten ms baratas.
c) Cmo de sensible es la estructura a los efectos de longitud finita de palabra, ya que en
ocasiones interesa ms obtener estructuras que tengan un buen comportamiento frente a la
limitacin de la longitud de palabra.
Las principales fuentes de degradacin de la respuesta de un filtro son:
a) Cuantificacin de las seales de entrada y reconstruccin de las de salida.
b) Cuantificacin de los coeficientes del sistema.
c) Errores aritmticos de redondeo y/o truncamiento.
d) Errores de desbordamiento, los cuales ocurren al sumar o acumular resultados parciales en un
registro de longitud limitada y cuando el resultado excede del valor mximo representable.

Efectos de Cuantizacin
Cada una de estas formas tienen sus ventajas e inconvenientes en el momento de
realizar el filtro. Uno de los problemas ms importantes que debe tener en cuenta
una realizacin son los efectos de cuantizacin.
Los efectos de cuantizacin se producen al tener obligatoriamente que truncar (o
cuantizar) los coeficientes del filtro y las seales de entrada y salida. Esta
cuantizacin puede dar lugar a que las caractersticas del filtro realizado difieran de
las especificaciones del filtro diseado.
Los efectos de cuantizacin deben ser tenidos muy en cuenta cuando el diseo se
realiza en microprocesadores con aritmtica de punto fijo (por ejemplo, DSPs). En
caso de utilizar micros de 32 bits con aritmtica en punto flotante, los efectos de
cuantizacin pueden ser despreciados.
Dividiremos los efectos de cuantizacin en dos partes: los debidos a la cuantizacin
de las seales (de entrada x[n] o de salida y[n], que incluyen los errores de redondeo
o truncamiento en las operaciones aritmticas) y los debidos a la cuantizacin de los
coeficientes.

Efectos de Cuantizacin de los Coeficientes


Para sistemas de mayor orden es previsible que la sensibilidad de los coeficientes sea
importante, por lo que realizar filtros que contengan polos (filtros IIR) de forma directa
(formas directa I o II) no es aconsejable. Los coeficientes en estas forman no nos dicen
nada acerca de la situacin de sus polos y mucho menos acerca de las consecuencias de
su cuantizacin.
La solucin es, lgicamente, utilizar las formas Paralelo o Cascada para tener un mayor
control sobre la situacin de los polos al cuantizar.
En el caso de filtros FIR (compuesto exclusivamente por ceros), sabemos que se
caracterizan por ser de fase lineal. Esto es debido a que los coeficientes son simtricos
(o asimtricos). Por tanto cuantizar los coeficientes no va a variar la linealidad de fase
del filtro.
Lo que si variar es la magnitud de la respuesta. Se puede demostrar que los ceros de
un filtro FIR o bien estn sobre la circunferencia de radio 1, o estn en parejas con
radios recprocos. Por tanto, en los filtros FIR lo normal es utilizar la forma directa (I o
II). Tambin se podra utilizar la forma en cascada pero se utiliza menos.

Efectos de Cuantizacin
Ejemplos en MATLAB
Dado el filtro digital IIR pasabanda con frecuencias de corte digitales son wp=[0.3 0.5] y las frecuencias en las
que se especifica una atenuacin de 55 dB son ws=[0.2 0.6]. La atenuacin en la banda de paso = 1dB. Verifique
el comportamiento de la respuesta el filtro y su ubicacin depolos y ceros si se recortan los coeficientes a 3
decimales

[N wn]=buttord(wp,ws,65,1)
B =[0.0002 0 -0.0022
0 0.0328 0 -0.0109

0
0

0.0109
0.0022

0 -0.0328 0
0 -0.0002]

0.0655

0 -0.0918

0 0.0918

0 -0.0655

A =[ 1.0000 -4.3399 11.0598 -20.8034 32.4958 -43.5346 51.2002 -53.4433 50.1775 -42.5298
32.6821 -22.7629 14.3965 -8.2353 4.2516 -1.9649 0.8086 -0.2915 0.0909 -0.0237 0.0050
-0.0008 0.0001]
1.4
[H w]=freqz(B,A);

plot(w,abs(H))

1.2

1
Pole-Zero Map
1

0.8

0.8

pzmap(B,A)

0.6

0.6

Imaginary Axis

0.4
0.2

0.4

0
-0.2

0.2
-0.4
-0.6

0
-0.8
-1
-1.5

-1

-0.5

0
Real Axis

0.5

1.5

0.5

1.5

2.5

3.5

B1=round(B*1000)/1000;
A1=round(A*1000)/1000;
B1 =[ 0
-0.0660

0 -0.0020
0 0.0330

0 0.0110
0 -0.0110

0 -0.0330
0 0.0020

0
0

0.0660
0]

0 -0.0920

0.0920

A1 =[ 1.0000 -4.3400 11.0600 -20.8030 32.4960 -43.5350 51.2000 -53.4430 50.1770 -42.5300 32.6820
-22.7630 14.3960 -8.2350 4.2520 -1.9650 0.8090 -0.2910 0.0910 -0.0240 0.0050 -0.0010
0]
[H1 w1]=freqz(B1,A1);
Pole-Zero Map

1.4

pzmap(B1,A1)

plot(w1,abs(H1))

0.8

1.2

0.6

Imaginary Axis

0.4
0.2

0.8
0

0.6

-0.2
-0.4

0.4
-0.6
-0.8
-1
-1.5

0.2
-1

-0.5

0
Real Axis

0.5

1.5

0.5

1.5

2.5

3.5

En la figura , la respuesta para las funciones de Matlab round (rojo), floor (verde) y ceil
(negro) aplicadas a los coeficientes originales.
1.4

1.2

0.8

0.6

0.4

0.2

0.5

1.5

2.5

3.5

Analizar el comportamiento del filtro en la configuracin cascada

[sos,G]=tf2sos(B3,A3,'UP','Inf');
Ht=ones(512,1);
for i=1:M,
Bsos=sos(i,1:3);
Asos=sos(i,4:6);
[H F]=freqz(Bsos,Asos);
Ht=H.*Ht;
end
plot(G*abs(Ht))
Funciones de Matlab relacionadas.

Descomposicin en paralelo (Fracciones simples): [R,P,K] = residuez(B,A)


[B,A] = residuez(R,P,K)
Descomposicin en Cascada:

[SOS,G] = zp2tf(Z,P,K)
[SOS,G] = tf2sos(B,A)
[Z,P,K] = sos2zp(SOS,G)
[B,A] = sos2tf(SOS,G)