You are on page 1of 19

15

Instituto Politcnico Nacional


Escuela Superior de Ingeniera
Mecnica y Elctrica - Zacatenco
Ingeniera en Comunicaciones y
Electrnica

Comunicaciones Digitales
Profesor: DE LA CRUZ OLIVA ALLAN TAKESHI.

Realizacin de filtros digitales: Mtodo de


Remez (Parks-McClellan)

Uribe Arellano Carlos Antonio

Grupo: 7CM11

Introduccin

Filtrado digital de seales


15

Un filtro digital es un algoritmo implementado en hardware y/o software que


opera sobre una seal de entrada digital (discreta en tiempo y cuantizada en
amplitud) y genera una seal digital de salida, con la finalidad de efectuar un
mejoramiento de la calidad de la seal, por ejemplo removiendo o atenuando
el nivel de ruido, extrayendo informacin de dos o ms seale.

En la Fig. 1 se muestra un diagrama bloque simplificado de un filtro digital que


opera en tiempo real, con entradas y salidas analgicas.

Fig. 1: diagrama a bloques simplificado de un filtro digital

La seal de entrada, limitada en banda, se muestrea peridicamente y se

convierte en una serie de muestras x [ n ] ; n=0,1,2,3. ..

El procesador digital convierte la sucesin de entrada x[n] en una sucesin de


salida y[n] de acuerdo al algoritmo de cmputo. El conversor digital-analgico
convierte la salida digital y[n] a valores continuos en tiempo que son
procesados por un filtro analgico para suavizar la forma de onda y remover
componentes no deseadas de alta frecuencia.

Los filtros digitales juegan un papel muy importante en el procesamiento digital


de seales. En gran nmero de aplicaciones, como compresin de datos,
procesamiento de seales biomdicas, procesamiento de seales de voz,
procesamiento de imgenes, transmisin de datos, audio digital, cancela
miento de ecos telefnicos, se prefieren por sobre los filtros analgicos por uno
o ms de los siguientes motivos:

Los filtros digitales pueden tener caractersticas que son imposibles de


conseguir con filtros analgicos, como por ejemplo una respuesta de
fase exactamente lineal.
El desempeo de los filtros digitales no vara con las condiciones
ambientales (temperatura, humedad, etc.) como s ocurre con los filtros
analgicos, lo que elimina la necesidad de calibrarlos peridicamente.
Si el filtro se implementa utilizando un procesador programable la
respuesta en frecuencia de un filtro digital puede ajustarse a voluntad
15

(filtrado adaptivo). El mismo filtro puede procesar varias seales o


canales de entrada sin necesidad de replicar el hardware.
La precisin con que un filtro digital verifica las especificaciones de
diseo est limitada solamente por la longitud de palabra (bits) utilizada
para representar los coeficientes del filtro y ejecutar las operaciones
aritmticas; con los filtros analgicos es difcil lograr atenuaciones que
excedan los 60 o 70 dB en la banda de rechazo (utilizando componentes
convencionales).
El desempeo de los filtros digitales es repetible de unidad a unidad. Los
filtros digitales pueden utilizarse a muy bajas frecuencias, como las que
se encuentran en aplicaciones biomdicas, donde el empleo de filtros
analgicos es poco prctico por los valores muy elevados de los
componentes pasivos involucrados (capacitores, inductancias). Adems,
los filtros digitales pueden trabajar sobre un amplio rango de frecuencias
simplemente cambiando la frecuencia de muestreo.

Sin embargo, los filtros digitales tambin presentan una serie de desventajas
respecto a los filtros analgicos:

Limitacin de frecuencia. La frecuencia de Nyquist (que fija el ancho de


banda til que el filtro puede procesar) queda definida por el proceso de
conversin (tiempos de conversin del conversor A/D y D/A), velocidad
del procesador, cantidad de operaciones a ejecutar por unidad de
tiempo, etc.
Efectos de longitud finita de palabra. En general, los coeficientes del
filtro implementado sern distintos de los calculados tericamente si la
representacin numrica que se utiliza para implementar el filtro no es
de precisin infinita. No slo influye la cuantizacin de los coeficientes
del filtro, sino tambin el redondeo de las operaciones numricas, la
cuantizacin del conversor A/D y D/A, la truncacin que ocurre al
almacenar los contenidos del acumulador en memoria, etc. Estos
efectos, que se modelan como fuentes de ruido de distribucin uniforme,
pueden limitar seriamente el desempeo de los filtros digitales:
variaciones de ganancia en la banda de paso, menor atenuacin en la
banda de rechazo, y hasta pueden conducir a la inestabilidad en filtros
recursivos de orden elevado.
Tiempos de diseo y desarrollo prolongados. Los tiempos de diseo y
desarrollo de un filtro digital, en especial el diseo del hardware puede
ser muy superior al necesario para el diseo de un filtro analgico. Sin
embargo, una vez que se dispone del hardware o el software necesario,
la misma plataforma puede utilizarse para muchas otras tareas de
filtrado o procesamiento digital de seales con poca o ninguna
modificacin. Adems, el desarrollo de herramientas de CAD avanzadas
15

hacen que el diseo de filtros sea una tarea agradable y sencilla, aunque
an as es necesaria cierta experiencia para aprovecharlas
ntegramente.

Diseo de filtros digitales.

El diseo de un filtro digital involucra los siguientes pasos:

1. Especificacin de los requerimientos del filtro;


2. Eleccin de una aproximacin conveniente y clculo de los coeficientes;
3. Representacin del filtro utilizando una estructura adecuada
(realizacin);
4. Anlisis de los efectos de la longitud finita de palabra en el desempeo;
5. Implementacin en hardware o software.
Estos cinco pasos no son necesariamente independientes, ni necesitan
seguirse en el orden descrito; actualmente, las tcnicas de diseo disponibles
combinan el segundo y parte del tercero y cuarto. Para lograr un filtro eficiente
es necesario iterar entre las distintas etapas, especialmente si, como es
habitual, las especificaciones de diseo dejan cierto grado de libertad al
diseador, o si se desean explorar otras alternativas de diseo.

Especificaciones de diseo

Los requerimientos incluyen la especificacin de;

1. Las caractersticas de las seales: tipo de fuente de seal, interfaz de


entrada-salida, velocidad de procesamiento, ancho de palabra, la mayor
frecuencia de inters.

2. Las caractersticas del filtro: la respuesta en mdulo y/o fase deseadas y sus
tolerancias, la velocidad de operacin, el modo de filtrado (en lnea o fuera de
lnea).

3. La forma de implementacin: como una rutina de alto nivel en una


computadora, o un programa especfico para un DSP.

4. Otras restricciones al diseo, como por ejemplo el costo del filtro.

Es posible que inicialmente el diseador no cuente con toda la informacin


necesaria para especificar completamente el filtro, pero cuanto ms detalles se
conozcan ms sencillo ser el proceso de diseo.
15

Frecuentemente, los requisitos del filtro digital se especifican en el dominio de


la frecuencia, y para el caso de los filtros selectivos en frecuencia, estas
especificaciones toman la forma de bandas de tolerancia.

En la banda de paso, el mdulo de la respuesta admite una variacin mxima


de p, y en la banda de rechazo se pretende que la ganancia no exceda s . Es
frecuente especificar estas cotas en dB.

El ancho de la zona de transicin determina qu tan abrupto es el filtro. En


esta regin se espera que el mdulo de la respuesta en frecuencia decrezca
montonamente desde la banda de paso a la banda de rechazo.

Fig2: Bandas de tolerancia para un filtro pasa bajas.

Los principales parmetros de inters son

Desviacin en la banda de paso: p


Desviacin en la banda de rechazo: s
Frecuencia de corte de la banda de paso: p
Frecuencia de corte de la banda de rechazo: s .
As (atenuacin en la banda de rechazo): 20 log10 s
Ap (ondulacin en la banda de paso): 20 log 10 (1 + p)

Realizacin

Convertir una funcin de sistema H(z) en un conjunto de ecuaciones a


diferencias que se ejecutarn como un algoritmo en un procesador. El conjunto
de ecuaciones tambin se conoce como la estructura del filtro.
15

Matemticamente las distintas realizaciones producen el mismo resultado


sobre la seal a filtrar; sin embargo en el momento de la implementacin la
sensibilidad a la variacin de los coeficientes, propagacin del ruido de
redondeo o de truncacin, organizacin y/o requerimientos de memoria en un
procesador en particular, etc., suelen decidir la eleccin de una estructura
particular.

Implementacin

Una vez que se han calculado los coeficientes del filtro, elegido una estructura
adecuada, y verificado que las especificaciones se satisfacen despus de
considerar la degradacin causada por la cuantizacin de coeficientes y de las
variables a la longitud de palabra elegida(8 o 16 bits), la ecuacin a diferencias
debe implementarse como una rutina de software o en hardware.

Cualquiera sea el mtodo de implementacin, cada muestra de la salida y[n]


del filtro debe calcularse de acuerdo a la ecuacin a diferencias que involucra
multiplicaciones, sumas y restas, y retardos.

De modo que para implementar un filtro se necesitan los siguientes bloques


bsicos:

Memoria (ROM o RAM) para almacenar los coeficientes del filtro


Memoria RAM para almacenar las muestras actuales y pasadas de la
entrada x[n], x[n 1], ..., x[n M], y la salida y[n], y[n 1], ..., y[n N]
Multiplicadores en hardware rutinas de multiplicacin (bibliotecas de
software)
Sumador o unidad aritmtico-lgica.

Fig.3. Representacin en diagrama a bloques de un filtro FIR.

En el procesamiento en tiempo real se requiere que el filtro genere una


muestra de la seal de salida ante cada muestra de la seal de entrada, lo que
implica que el cmputo completo de la ecuacin a diferencias debe
15

completarse en el intervalo de tiempo entre una y otra muestra de la seal de


entrada.

El procesamiento en tiempo real necesita de hardware que en la actualidad es


producido por varios fabricantes, como Motorola, Texas Instruments, Analog
Devices, Burr Brown, etc. Cada DSP incluye memoria RAM y ROM o FLASH,
multiplicadores rpidos, unidades aritmticas lgicas flexibles, mtodos de
direccionamiento poderosos, etc. y algunas unidades incluyen los conversores
A/D y D/A necesarios para procesar seales del mundo exterior

Mientras que los mtodos de las ventanas y muestreo en frecuencia son


simples y poderosos, pero tienen desventajas, ya que no se pueden especificar
p y s de forma precisa. Los valores de 1 y 2 no se pueden elegir
independientemente. (En el mtodo de las ventanas 1=2, y en el mtodo del
muestreo en frecuencia en el mejor de los casos existen mtodos para
optimizar respecto de 2), adems el rizado no se distribuye uniformemente en
las bandas. Esto lo podemos observar en la fig. 4.

Fig.4. Resultado de filtros por mtodo de muestreo en frecuencia.

Varias tcnicas de diseo en computadora existen, y que permiten control


ptimo de todas las bandas y rizos.
15

Realizacin de filtros digitales por Mtodo de Remez.

Si el error se distribuye uniformemente podemos disear filtros que verifican


las especificaciones con menor orden. El mtodo que lleva a cabo esta
distribucin del error se denomina Mtodo de diseo de filtros ptimos de
rizado constante o Mtodo de remez.

Es un algoritmo que hace uso de que siempre es posible tener una funcin de
error:
r1
E ( f ) =D ( f ) c k cos ( 2 kf )
k=0

Donde:

E ( f ) : Minimo de error

D ( f ) : Maximo de error

C k son loscoeficientes del filtro multiplicada por una seal armnica .

Se plantea el diseo del filtro como un problema de aproximacin de


Tchebyshev, para ello se propone un criterio de diseo ptimo, en el sentido de
que el error de aproximacin entre la respuesta en frecuencia ideal y la real se
reparte uniformemente en cada banda, pasante y atenuada minimizando el
error mximo en cada una de ellas.

Fig. 5. Caracteristicas del filtro a realizar por mtodo de Remez.


15

El filtro resultante presenta, pues, rizado en ambas bandas.

Para su diseo consideramos 5 caractersticas:

N el orden del filtro.


p: lmite superior de la banda pasante.

s: lmite inferior de la banda atenuada.

1: mximo rizado de la banda pasante.


2: mnima atenuacin de la banda atenuada.

La paricin sobre los valores para cualquier conjunto de terminado de r+1

puntos de frecuencia
f m , m=1,2,3,,r+1, en otras palabras, el conjunto de

ecuaciones lineales queda:


r1
D ( f )= c k cos (2 k f m)+(1)m
k=0

Tienen la solucin nica para los coeficientes


C k , k=0,1,2,3,,r+1 y la

amplitud , de la oscilacin sobre las frecuencias determinadas


fm .

En la aplicacin del algoritmo de remez fue desarrollado por Parks y McClellan,


el conjunto F de frecuencias sobre el cual la aproximacin est hecha es una
rejilla de igual de igual espaciamiento con un nmero de frecuencias
aproximadamente igual a 10 veces la longitud del filtro.
15

Fig. 6. Filtro pasa bajas especificaciones del mtodo de remez.

Si F consiste consiste nicamente de la r+1 frecuencias


fm en la ecuacin
anterior, entonces el problema de aproximacin se resolviera en un solo paso.
Los coeficientes
C k , en la ecuacin anterior seran los coeficientes del mejor

acercamiento y el error mximo sobre F seria (valor absoluto de ).

Esta conclusin sigue directamente desde el teorema de alternancia, donde


fm son las frecuencias extremas y es la amplitud de la oscilacin. El error
sobre una frecuencia extrema seria y el error sobre la prxima frecuencia
extrema seria . Adems, cuando F contiene r+1 frecuencias.

| |
r 1
max D(f ) c k cos ( 2 kf ) =| |
k=0

Estas son las condiciones para que


f m sean frecuencias extremas.

En la mayora de las aplicaciones prcticas F contiene ms de r+1 frecuencias.


El problema en este caso est en encontrar cual subconjunto de r+1
frecuencias extremas.

El algoritmo de remez comienza con un conjunto de pruebas de frecuencias y


sistemticamente cambia frecuencias hasta que el conjunto de frecuencias
extremas se encuentre. Las frecuencias usadas en el prximo conjunto de
pruebas son r+1 frecuencias donde el peso de error E( f ) tiene la magnitud
ms grande.

Dado un conjunto de pruebas de frecuencias

T ={f 1, f 2, , f r+1 }

El algoritmo de remez se basa en los siguientes cuatro cmputos bsicos:

fm
1. Resuelva las ecuaciones lineales D ). Esta solucin tiene un error que

oscila con la amplitud


k , sobre el conjunto de frecuencias de prueba

para
kn ite-racin.
2. Interpolacin para encontrar la respuesta en frecuencia sobre la rejilla
entera de frecuencias.
15

3. Bsqueda sobre la rejilla entera de frecuencias para ver si (y donde) la


magnitud del error es ms grande que la magnitud de
k , encontrada

en el paso 1.
4. Si el valor mximo del error de la magnitud encontrado en el paso 3 es
igual a
k , se detiene, si no toma r+1 frecuencias donde el error logra

su mxima como el nuevo conjunto de pruebas de frecuencias extremas


e iniciar de nuevo con el paso 1.

r 1
Donde P ( )= c k cos ( 2 kf )
k=0

Fig. 7. Diagrama de flujo para un filtro pasa banda.

Es frecuentemente ms fcil pensar en el problema de acercamiento desde un


punto de vista de polinomios. El problema de acercamiento al dominio de la
frecuencia y el problema del polinomio puede mostrarse que es equivalente
por usar el cambio de variables:

x=cos (2 f )

1
cos ( x)
f=
2

Con este cambio de variable;


15

r 1
A ( f ) =Q(f ) c k cos ( 2 kf )
k=0

Llega a ser, con Q(f )=1 ,

r1

( )
1
cos ( x )
=S ( f )= c k cos ( k cos ( x))
1
A
2 k=0

r1
S ( f ) = d k k
k=0

La funcin cos ( k cos1 ( x )) es desde luego un polinomio y los polinomios de

Chebyshev
c k (x), tiene la forma:

1
c k =cos ( k cos ( x ) )

En resumen, el mtodo de remez se encarga de desplegar los coeficientes que


se necesitan para el diseo de un filtro. El procedimiento del mtodo es muy
complejo, pero muy eficiente, por lo que han generado formas de cmputo
para la bsqueda de estos coeficientes a travs del mtodo de remez, en
donde se requiere:

Un vector de frecuencias, el cual indican el inicio y el final del filtro.


Un vector de amplitud, donde se indica el tipo de filtro que se desea
(pasa bajas, pasa altas, etc.).
Un vector de peso que sirve para los rizos que se desea tener por
bandas.

El mtodo analizado en este apartado se ve como un criterio de diseo ptimo


en el sentido de que el error de aproximacin ponderado entre la respuesta en
frecuencia deseada y la obtenida se distribuye en forma equitativa a lo largo de
la banda de paso y la banda de rechazo del filtro. Este mtodo, minimiza el
error mximo.
15

Estos filtros se disean en Matlab mediante la instruccin remez(). Como paso


previo a su utilizacin es necesario hacer una estimacin del orden del filtro
que verifica estos requisitos mediante la instruccin remezord().

Fig. 8. Filtro realizado en Matlab por mtodo de remez.

Veamos el resultado de disear un filtro FIR pasa-baja de fase lineal y rizado


constante con las siguientes especificaciones:

Fp=200 Hz , Fs=250 Hz , Fm=1000 Hz , 1=0.1 y 2=0.01


15

%Ejemplo - Diseo de filtros FIR usando el algoritmo de Parks McClellan

clear

close all

N=input('Por favor introduzca el orden del filtro: ');


15

%intente N = 10, 50, 100

f = [0 0.3 0.4 0.6 0.7 1]; a = [0 0 1 1 0 0];

b = firpm(N,f,a);

[h,w] = freqz(b,1,512);

plot(f,a,w/pi,abs(h))

grid

title(['Diseo de filtros FIR usando el algoritmo de Parks McClellan, N='


num2str(N)]) xlabel('Frecuencia Normalizada')

legend('Ideal','Diseo firpm')
15

Conclusiones.

El mtodo de remez nos ofrece grandes posibilidades, ya que nos permite


controlar el comportamiento del filtro, esto es algo deseado, pues los filtros
digitales suelen tener comportamientos ms adecuados que los filtros
analgicos y este mtodo nos proporciona un comportamiento ms cercano a
las caractersticas que nos proponemos para cada una de las aplicaciones
deseadas, sin embargo perdemos calidad en la respuesta del filtro en las
frecuencias que dejamos pasar, ya que el rizado en la banda de paso podra
modificar gravemente la amplitud de cada muestra, provocando distorsin
como en el caso de procesamiento de la voz.

Gracias a la aplicacin de este mtodo por medio de software podemos


ensayar cada una de los resultados arrojados por el sistema y modificar si es
posible ciertas caractersticas que podran mejorar el diseo e implementacin
del filtro. Para el caso en que no sea de importancia el rizado en la banda de
paso, el mtodo ptimo nos asegura una buena transicin, buen rechazo y una
cantidad de coeficientes relativamente baja.
15

En caso que no deba existir rizado en la banda de paso, el mtodo por


ventanas o frecuencia puede ser preferido, siempre teniendo en cuenta que el
orden del filtro se incrementar y que la atenuacin en la banda de rechazo no
ser tan grande.

Concluimos entonces que este mtodo es adecuado, dependiendo de lo que se


pretenda lograr con el filtro y de los recursos con que se disponga. Permite un
control total de las caractersticas del filtro en cuanto a frecuencias, ganancias
y longitud.

Sugerencias para la clase.

Dado que en clases nos presentaron varias formas de realizar el modelado de


filtros como lo fueron, filtros con respuesta al impulso, respuesta al escaln,
quisiramos motivar a nuestros compaeros a investigar ms a fondo sobre
todo los requerimientos que necesitamos analizar antes de disear un filtro.

Pues presentamos una pequea investigacin en clase sobre los mtodos que
podemos utilizar y cada una de sus caractersticas, sin embargo creemos que
debimos analizar ms a fondo y relacionar esta investigacin con lo aprendido
en la materia y otras en particular, pues se nos presentaron las formulas y
algoritmos que debemos usar, pero para para poder analizar de forma ms
15

detallada tenemos que tener en cuenta ciertos criterios, criterios que no se


lograron mostrar a lo largo de nuestras presentaciones y por lo tanto no
logramos interpretar de manera correcta el porqu de estos estos mtodos y
cual mtodo elegiramos, y por lo tanto nuestra justificacin sobre el mtodo
seleccionado.

As que para motivar el inters de la clase les presentamos el siguiente link, el


cual contiene informacin bsica sobre el diseo de filtros digitales,
requerimientos e implementacin, as como ejemplos de donde se efectan
estos diseos.

http://www.ingelec.uns.edu.ar/pds2803/Materiales/Cap07/07-Cap07.pdf

Referancias.

http://catarina.udlap.mx/u_dl_a/tales/documentos/lem/jauregui_v_jj/capitulo2.p
df

http://ocw.uv.es/ingenieria-y-arquitectura/filtros-
digitales/tema_3._diseno_de_filtros_fir.pdf

http://dspace.ups.edu.ec/bitstream/123456789/418/15/UPS-CT001878.pdf

http://www.fimee.ugto.mx/profesores/arturogp/documentos/Filtrado
%20Digital/Lectura%203_Filtrado_Digital.pdf
15

http://repositorio.uis.edu.co/jspui/bitstream/123456789/3610/2/116679.pdf

You might also like