Visión Electrónica, vol: nro:3 pág:55-66

DISEÑO E IMPLEMENTACIÓN DE FILTROS DIGITALES

DESIGN ÁND IMPLEMENTATION ,OF DIGITAL FILTERS

OSCAR F. CORREDOR C.

Ingeniero Electrónico, Universidad Distrital Francisco José de Caldas, Bogotá (Colombia). Actualmente, desarrolla su tesis de maestría en modelos de tráfico multimedia en la Web. Docente de la Universidad Distrital Francisco José de Caldas y de la Universidad Cáoperativa de Colombia. Correo electrónico: ofcca@hotmail.cpm

LUIS F. PEDRAZA. M.

Ingeniero Electrónico, Universidad Distrital Francisco José de Caldas, Bogotá (Colombia). Msc. En Teleinformática de la Universidad Distrital, su área de investigación está en modelos de control de tráfico vehicular. Docente de la Universidad Distrital Francisco José de Caldas y de la Universidad Cooperativa de Colombia. Correo electrónico: pedrazaluis2001@yahoo.es

CÉSAR A. HERNÁNDEZ S.

Ingeniero' Electrónico, Universidad Distrital Francisco José de Caldas, Bogotá, Colombia. Docente Investigador de la Universidad Distrital Francisco José de Caldas.Correo electrónico: Lctsubasa@gmail.com

RESUMEN

En este artículo se presenta el diseño cfe filtros FIR mediante el método de las vénth.na's, éldiseñó dé filtitoST II1 mediante la transformación bilineal y la implementación mediante la programación directa, estándar y escalera. Finalmente,se realiza.una comparación entre este tipo de filtros digitales, con ayuda de la herramienta computaciónal MATLAB.

Palabras clave
Filtro, FIR, IIR, banda, ventana, aliasing.

Abstract

In this article th e design of filters FIR by means of the method of the windows.is shown, the= design of filters IIR by means of the bilinear transformation and the implementation by mearks of. the direct, standard and staircase programming. Finally a comparison between this type of digital filters is made, with the help of com Putátional tool MATLAB.

Key words
Filter, FIR, IIR, Band, Window, aliasing.


1. INTRODUCCIÓN

El procesamiento digital de señales .es un área de la electrónica ;que ha tenido grandes avances en los últimos años, debido a los desarrollos tecnológicos del hardware; hoy en día, juega un papel importante en ramas tan diversas como las comunicaciones, el diseño de circuitos, la acústica, el procesamiento de voz, y los sistemas de regeneración y distribución de energía. El filtrado digital de señales tiene la ventaja de ser modificado por medio de software para después ser realizado por el hardware. Con la implementación de estos sistemas se consigue mayor precisión en comparación con los circuitos analógicos y los sistemas de procesamientos de señales analógicas. [1]

En este artículo se pretende mostrar la impcn'tancia en el diseño de los filtros FIR, mediante el uso de ventanas como la Barlett, Hanning, Hamming, Blackman 'y Kaiser, las cuales permiten limitar la respuesta al impulso del filtro [2]. Asimismo, se diseñan los filtros IIR; con base en los filtros analógicos más utilizados como:

El Elip tico, Butterworth y Chebyshev, se analizan las transformaciones en frecuencia para estos filtros y se realiza la conversión a filtros digitales, a partir del método de transformación bilineal. La implementación de los filtros digitales es realizada mediante los métodos de programación directa, programación estándar y programación en escalera [3]. Las características de los filtros FIR e IIR son comparadas desde el punto de vista de diseño e implemeritación, usando para ello la herramienta computacional MATLAB.

2. FILTROS DIGITALES FIR

Un filtro digital de Respuesta Finita al Impulso (FIR) tiene una respuesta al impulso de finita duración, Ll cual se puede expresar matemáticamente como:

Donde N es el ordén del filtro. 'Esta exprésión · indica que el valor de salida actual de un filtro FIR es función de la entrada actual y de las N entradas anteriores. En efecto, el sistema se comporta como una veritana. Equivalentemente, un FIR puede ser descrito mediante su función de transferencia como:

Estos filtros se pueden diseñar para que su respuesta en fase s e a lineal. La linealidad de fase se obtiene si existe simetría en los coeficientes del filtro, es decir:

Usando estas condiciones y a ecuación (3), se Obtiene:

· Secúencia simétrica

· Secuencia antisimétrica

De los tipos de secuencias descritos en las ecuaciones 6, 7, 9 y 10 se puede realizar el siguiente análisis:

Tabla 1. Aplicaciones de las secuencias simétricas.

Por lo tanto, el problema de diseño de filtros FIR es simplemente determinar los N coeficientes h(n) a partir de una especificación de la respuesta en frecuencia deseada (HD(6))) del filtro.

2.1 Diseño de Filtros FIR

Hay diferentes métodós para resolver da aproxmación de filtros no recursivos:

· .El método de las:ventánas basado en series de Fourier.

· El método dél muestreo en frecuencia bajado en el uso de la DFT (o FFT).

· El método de rizadó.constante o algoritmo de intercambio de Remez.

21.1. Método de las ventanas

Este rnétodo se basa en limitar (en un punto N) la respuesta al impulso infinita de un filtro ideal, ya que ésta es infinita en duraCión. Limitar hd(n) a un orden N es equivalerite a multiplicaila 'por una ventana. Es evidente que la multiplicación de la funciób ventana con hd(n) es equivalente a una convolución de Hij(ca) con W(ca) en el dominio de la frecúencia. Limitár la respuesta ar impulso del filtró hace que en él aparezcan rizados u oscilaciones en la respuesta en frecuencia y, además, se obtengan transiciones menos abruptas.

A continuación se muestra una tabla de las ventanas mas utilizadas:

Tabla 2. Ventanas utilizadas en el diseño de filtros FIR

Existe otra ventana también muy utilizada y es Kaiser que viene definida por:

Siendo I0 la función de bessel modificada de orden O. Existen expresiones aproximadas .que permiten seleccionar β ,(parámetro relacionado con la atenuación A) y el orden del filtro N:

Gracias a las anteriores ecuaciones 11 y 12 de la ventana de Kaiser, se puede diseñar un filtro FIR con unas especificaciones dadas (rizados, ancho de la banda de transición y frecuencia de corte del filtro). Por ejemplo, a manera didáctica se diseña un filtro FIR pasa bajos (LP) con las siguientes especificaciones: frecuencia de corte en banda de paso de 1500Hz, ancho de banda de transición de 500Hz, rizado en la banda paso δ1=0.01 y en la banda de corte δ2=0.1. La frecuencia de muestreo es de 8kHz. La respuesta al impulso de un LP ideal está dada por:

Con ayuda de las ecuación (12) se obtiene los siguientes datos: A=0,01 y D=2.232. Como FM = 8000Hz y B = 500Hz, hallamos el orden del filtro N≥35,71. Si se considera un diseño de filtro Tipo II (Simetría Par) y N par entonces N = 36, se . obtiene que β= 3,3959. Usando la frecuencia promedio de corte (1750Hz), ésta se normaliza con respecto a la frecuencia de muestreo, dando como resultado.Con estos datos y utilizando las ecuaciones de las ventanas implementadas en MATLAB (para encontrar sus coeficientes), se obtiene el Filtro FIR. A continuación se muestra la gráfica de la respuesta en magnitud en el dominio de la frecuencia de un FIR con las ventanas planteadas.

Figura 1. Respuesta en frecuencia de un filtro FIR pasa bajo, diseñado por medio de ventanas.

De la figura 1 se puede observar que la respuesta de la ventana Kaiser es la que más se parece a la ventana rectangular con 10dB más de atenuación en sus lóbulos laterales. Por lo tanto, se puede observar que con el uso de las ventanas descritas, hay mayor atenuación en los lóbulos laterales que con respecto a la ventana rectangular, todo esto, a cambio de un ancho de banda de transición más grande. Además, es evidente que si se aumenta el orden del filtro, su ancho de banda de transición se angosta, pero el retardo del filtro se aumenta como se puede ver en la ecuación (3). [2]

Ahora bien, si se desea diseñar cualquier clase de filtro, se deben usar las siguientes transformaciones:

3. FILTROS DIGITALES. IIR

Otro tipo,de filtros digitales son los filtros de Respuesta Infinita al Impulso (IIR). Como su nombre lo indica,.éstos son de infinita duración al impulso, la ecuación general Tiara un filtro IIR es:

Donde la primera parte de la ecuación (14) contiene la muestra presente, la cual es sumada con la segunda parte que corresponde á todas las muestras pasadas de la señal de, entrada, por lo tanto, se dice que el sistema tiene memoria infinita. La representación de la ecuación (14), en' el dominio discreto es:

Son filtros que presentan ceros y polos por lo que pueden ser inestables, a diferencia de los filtros FIR que siempre son estables. La ecuación (15) es la función de transferencia para filtros ARMA (autoregresivo y media en movimiento), donde la respuesta es una suma ponderada de valores pasados y presentes de la entrada.

Para el diseño de este tipo de filtros se realiza el diseño analógico, generalmerite de un prototipo de filtro pasabajo, seguido de una transformación del plano s al plano z. Para lo cual se tienen en cuenta las siguientes especificaciones propuestas en la figura 2:

· δ1 es el rizado de la banda de paso.

· δ2 es el rizado de la banda de corte.

· fp es la frecuencia límite de la banda de paso.

· fs es la frecuencia límite de la banda de corte.

A continuación se definen las características y la función de transferencia de los filtros analógicos:

3.1. Filtros Butterworth

Los filtros Butterworth poseen la característica de tener una curva de respuesta lo mas plana posible a frecuencia cero. La función de transferencia viene dada por:

Donde N es el orden del filtro.

3.2. Filtros Chebyshev

Los filtros Chebyshev presentar un rizado en la banda de paso, pero permiten obtener una atenuación mayor en la banda de detención a un orden más bajo. Su respuesta en frecuencia es:

Siendo TN(x), el polinomio de Chebyshev que se define como:

3.3. Filtros ElĂ­pticos

Son filtros que consiguen estrechar la zona de transición, lo que permite un rizado constante en ambas bandas. Su función de transferencia es:

Donde iN(x) es una función Jacobiana elíptica de orden N, definida por:

Una vez estudiadas las técnicas de diseño de filtros analógicos se retoma el objetivo inicial de este tema, que es transformar las funciones de transferencia de los filtros del plano s al plano z. Hay varios métodos para transformar una función de s en otra función de z. Aquí se enfoca en transformaciones que hagan que la función en z sea también racional. Esto hace que las transformaciones que a continuación se analicen sean sólo aproximaciones [4].

3.4. Transformaciones en frecuencia analógicas

Las ecuaciones de diseño 4, 5 y 7 eran todas para filtros pasabajos. Si se necesita otro tipo de filtro se realiza una transformación en frecuencia sobre el filtro pasabajo. Lo cual se muestra en la tabla 4.

Tabla 4. Transformaciones en frecuencia para filtros analógico

s.

3.5. Impulso invariante

Asegura que el filtro analógico y digital tenga la misma respuesta al impulso. El filtro analógico fáctorizado en fracciones simples queda como el mostrado en la ecuación (21).

A partir de la ecuación (21) sé da ligar al filtró digital, mostrado en la ecuación (22).

Donde S k son los polos y T es el periodo de muestreó. El procedimiento..és deséornpon.er en frac cionesárnples el filtro analogico y trandormar a digital cada una de las fracciones. El problema es que se produce aliasing cuando existen polos a frecuencias altas, lo que hace que el método no resulte adecuado para ,diseñar filtros pasa altos o rechaza banda.

3.6 TransformaCión

Es el método más común para convertir un filtro analógico en digital..Asegurá la estabilidad del filtro digital, y mantiene el orden:J:4a transformación se define mediante la ecuación (23).

Generalmente, para simplificar las Cosas, se deja T=2 seg. Una i particularidád de esta tránsformación es el mapeado no lineal entre las frécuencias analógicas y digitales. La relación entre ambas se muestra en la ecuación (24).

Luego si se qiiiere diseñar un filtro digital de frecuencia de corte w se debe utilizar un filtro analógico, cuya frecuencia de corte sea fp. Esta operación de ajuste de frecuencias se denomina prewarping [5].

4. IMPLEMENTACION DE LOS FILTROS DIGITALES

Las realizacione's y eñ diagraMas de bloques de filtros digitales emplean elementos de retraso, sumadores y multiplicadores. A continuación se estudian algunas estructuras diferentes de reali= zaciones en diagrama's de bloques. Dichas realizaciones en diagramas de bloques se pueden utilizar como base para un diseño de software o hardware. De hecho, una vez que se completa el diagrama de bloques de la realización, la realización física en hardware o software es directa. La forma general de la función de transferencia pulso entre la salida Y(z) y la entrada X(z) de un filtro digital está dada por la ecuación (15). Donde las al y las bi. son para muchos filtros digitales coeficientes réales. A continuación se esbozan cada una de las programaciones de filtros digitales.

41. Programación directa

Considere el filtro digital dado por la ecuación (15). Nótese que la función de transferencia pulso tiene n polos y m ceros. Reordenando la ecuación (15) se puede obtener la ecuación (25).

De la ecuación (13) se obtiene el diagrama de bloques de la figura 3.

Figura 3. Diagrama de bloques por medio de la programación directa.

En este tipo de programación se obtiene la realización del numerador y el denominador de la función de transferencia mediante el conjunto de retrasos por separado. El numerador utiliza un conjunto de m elementos de retraso y el denominador utiliza un conjunto diferente de n retrasos. De esta manera el número total de retrasos utilizados es de m+n.

4.2. Programación estándar

El número de elementos de retraso empleados en la programación directa se pueden reducir de m+n a n (donde n>m). En la práctica se trata de utilizar el número mínimo de elementos de retraso. Mediante el reacomodo de diagramas de bloques, a partir de la ecuación (26).

De la ecuación (26) se tiene:

De la ecuación (27) se presenta el diagrama dé bloques de la figura 4.

Figura 4. Diagrama de bloques de la ecuación (27).

A su vez, de la ecuación (14) se puede deducir.

De la ecuación (28) se presenta el diagrama de bloques de la figura 5.

Figura 5. Diagrama de bloques de la ecuación (28).

De la unión de las figuras 4 y 5 se obtiene la figura 6, la cual da como resultado el diagrama de bloques por medio de la programación estándar. En esta'figura se puede apreciar que el número de retrasos se disminuyo. a.n.

Figura 6. Diagrama de blp, quá pór medio dé la programación estándar.

La programación estándar y directa generan los siguientes errores:

· Error debido a,,lá cuantificación de la serial de entrada en un número finito de niveles discrétos.

· Error debido a la acumulación de errores de redondeo en las operaciones aritméticas en el sistema digital.

· Error en la cuantificación de los coeficientes al y bi, causan error en la localización de polos y ceros.

Estos errores surgen debido a las limitaciones prácticas del número de bits que representan a las muestras de la señal y a los coeficientes. Se corrigen a partir de la programación ,en serie, programación en parálelo programación,en escalera.

4.3. Programación en serie

Consiste en implantar la función de transferencia pulso G(z) como una conexión en serie de funciones de transferencia' pulso de primer y segundo orden. Entonces el filtro digital puede estar dado como una conexión en serie de las componentes de filtros digitales G1(z), G2(z),...,Gp(z).

G(z) .se puede descomponer como se muestra en la ecuación (29).

De la ecuación (29) sé obtienen los diagramas de bloques mostrados en las figuras 7a) y 7b).

Figura 7. a) Representación mediante diagrama de bloques del primer producto de la ecuación (29).
b) Represéntación mediante diagrama de bloques del segundo producto de la ecuación (29).

4.4 Programación en paralelo.

Este segundo enfoque evita el problema de sensibilidad de los coeficientes, expandiendo ala función de transferencia en fracciones parciales. Por lo tanto, G(z) se puede expresar como se plantea en la ecuación.(30).

De la ecuación (31) se plantea el diagrama de bloques de la figura 8.

Figura 8. a) Representación mediante diagrama de bloques de la primera sumatoria de la ecuación (31).
b) Representación mediante diagrama de bloques de la segunda sumatoria de la ecuación (31).

4.5. Programación en escalera

Consiste en implantar una estructura en escalera, esto es, expandir la función de transferencia en la siguiente fracción continuada y programar de acuerdo con esta función, como la planteada en la ecuación (32).

De la ecuación (32) se realiza el diagrama de bloques de la figura 9.

Figura 9. Diagrama de bloques de la ecuación (32).

Este tipo de programación tiene ventajas con respecto a la sensibilidad y a la exactitud de los coeficientes [3].

5. COMPARACION ENTRE FILTROS FIR E IIR

Para realizar la comparación detallada entre las características de los filtro§ IIR y los FIR se utilizó un filtro pasabajo con fp =1500 Hz, fs =3000 Hz, 61 =1dB y 62 = 5dB. Para este caso se utilizó por parte de los filtros IIR el filtro elíptico, butterworth, Chebyshev I y Chebyshev II. Por el lado de los filtros FIR, se utilizo la ventana Hamming. La respuesta en frecuencia para estos filtros se desarrolló con ayuda de Matlab, la cual se observa en la figura 10.

Figura 10. Respuesta en frecuencia de un filtro pasabajo, diseñado mediante filtros IIR y FIR

En la figura 10, la gráfica 1, azul corresponde a la de un filtro elíptico de orden 4, la gráfica 2, verde a la de un filtro Chebyshev I de orden 5, la gráfica 3, morada a la de un filtro Chebyshev II de orden 5, la gráfica 4, roja a la de un filtro Butterworth de orden 9 y la gráfica 5, negra a la de un filtro FIR con ventana Hamming de orden 11.

De la figura 10 se puede observar entonces que el filtro FIR tiene un bajo rizado en la banda de paso y de corte y tiene una buena caída en la banda de transición, comparada con los otros filtros; pero su orden es mayor que el de los filtros IIR, lo que genera mayores retardos en la obtención de la respuesta, debida a los sumadores y multiplicadores y además se genera mayor consumo de memoria .. Aunque los filtros IIR no presentan una atenuación tan alta en la banda de corte o una caída tan abrupta en la banda de transición, son de orden menor que el filtro FIR, por lo que depende exclusivamente de la aplicación que el diseñador quiera darle para su escogencia. [5]

6. CONCLUSIONES

· Los filtros FIR son siempre estables, ya que sólo contienen ceros.

· Los filtros IIR son inestables para señales con componente DC a la entrada, ya que cuentan con polos.

· Los filtros FIR se pueden diseñar para que presenten fase lineal dentro de la banda de paso.

· Un filtro IIR tiene lóbulos laterales menores en la banda de corte que un FIR con los mismos parámetros.

· Los filtros IIR presentan mayor error de cuantificación en función del número de bits empleado para almacenár los coeficientes.

· Los filtros FIR requieren un mayor orden para valores de atenuación y zonas de transición similares, lo que supone un mayor retardo en la obtención de la respuesta y mayor consumo de memoria.

· En los filtros IIR, su implementación involucra menos parámetros, requiere menos memoria y tienen menor complejidad computacional.

REFERENCIAS BIBLIOGRÁFICAS


Creation date: