stringtranslate.com

Diseño de filtro

El diseño de filtros es el proceso de diseñar un filtro de procesamiento de señales que satisfaga un conjunto de requisitos, algunos de los cuales pueden ser contradictorios. El objetivo es encontrar una realización del filtro que cumpla cada uno de los requisitos en un grado suficiente para que sea útil.

El proceso de diseño de filtros puede describirse como un problema de optimización en el que cada requisito contribuye a una función de error que debe minimizarse. Ciertas partes del proceso de diseño se pueden automatizar, pero normalmente se necesita un ingeniero eléctrico experimentado para obtener un buen resultado.

El diseño de filtros digitales es un tema engañosamente complejo. [1] Aunque los filtros se entienden y calculan fácilmente, los desafíos prácticos de su diseño e implementación son importantes y son objeto de investigaciones avanzadas.

Requisitos de diseño típicos

Los requisitos típicos que se consideran en el proceso de diseño son:

La función de frecuencia

Un parámetro importante es la respuesta de frecuencia requerida . En particular, la pendiente y complejidad de la curva de respuesta es un factor decisivo para el orden y la viabilidad del filtro.

Un filtro recursivo de primer orden solo tendrá un único componente dependiente de la frecuencia. Esto significa que la pendiente de la respuesta de frecuencia está limitada a 6 dB por octava . Para muchos propósitos, esto no es suficiente. Para lograr pendientes más pronunciadas, se requieren filtros de orden superior.

En relación con la función de frecuencia deseada, también puede haber una función de ponderación adjunta , que describe, para cada frecuencia, qué tan importante es que la función de frecuencia resultante se aproxime a la deseada. Cuanto mayor sea el peso, más importante será la aproximación.

Ejemplos típicos de función de frecuencia son:

Retraso de fase y grupo.

La respuesta al impulso

Existe una correspondencia directa entre la función de frecuencia del filtro y su respuesta al impulso: la primera es la transformada de Fourier de la segunda. Eso significa que cualquier requisito sobre la función de frecuencia es un requisito sobre la respuesta al impulso, y viceversa.

Sin embargo, en ciertas aplicaciones puede ser la respuesta al impulso del filtro la que sea explícita y el proceso de diseño luego apunta a producir una aproximación lo más cercana posible a la respuesta al impulso solicitada dados todos los demás requisitos.

En algunos casos puede incluso ser relevante considerar una función de frecuencia y una respuesta impulsiva del filtro que se eligen independientemente una de otra. Por ejemplo, es posible que deseemos una función de frecuencia específica del filtro y que el filtro resultante tenga un ancho efectivo lo más pequeño posible en el dominio de la señal. Esta última condición se puede realizar considerando una función muy estrecha como la respuesta de impulso deseada del filtro, aunque esta función no tenga relación con la función de frecuencia deseada. El objetivo del proceso de diseño es entonces realizar un filtro que intente cumplir ambos objetivos de diseño contradictorios tanto como sea posible. Un ejemplo es el audio de alta resolución en el que la respuesta de frecuencia (magnitud y fase) para señales de estado estable (suma de sinusoides) es el requisito principal del filtro, mientras que una respuesta de impulso sin restricciones puede causar una degradación inesperada debido a la dispersión temporal de las señales transitorias . [2] [3]

Causalidad

Para que sea implementable, cualquier filtro dependiente del tiempo (que funcione en tiempo real) debe ser causal : la respuesta del filtro sólo depende de las entradas actuales y pasadas. Un enfoque estándar es dejar este requisito para el paso final. Si el filtro resultante no es causal, puede volverse causal introduciendo un cambio de tiempo (o retraso) apropiado. Si el filtro forma parte de un sistema más grande (que normalmente lo es), este tipo de retrasos deben introducirse con cuidado, ya que afectan el funcionamiento de todo el sistema.

Los filtros que no funcionan en tiempo real (por ejemplo, para el procesamiento de imágenes) pueden no ser causales. Esto, por ejemplo, permite el diseño de filtros recursivos de retardo cero, donde el retardo de grupo de un filtro causal es cancelado por su filtro no causal hermitiano.

Estabilidad

Un filtro estable asegura que cada señal de entrada limitada produzca una respuesta de filtro limitada. Un filtro que no cumpla este requisito puede, en algunas situaciones, resultar inútil o incluso perjudicial. Ciertos enfoques de diseño pueden garantizar la estabilidad, por ejemplo, utilizando únicamente circuitos de alimentación directa, como un filtro FIR. Por otra parte, los filtros basados ​​en circuitos de retroalimentación tienen otras ventajas y, por tanto, pueden ser preferidos, incluso si esta clase de filtros incluye filtros inestables. En este caso, los filtros deben diseñarse cuidadosamente para evitar inestabilidad.

Localidad

En determinadas aplicaciones tenemos que trabajar con señales que contienen componentes que pueden describirse como fenómenos locales, por ejemplo impulsos o pasos, que tienen una duración determinada. Una consecuencia de aplicar un filtro a una señal es, en términos intuitivos, que la duración de los fenómenos locales se extiende por el ancho del filtro. Esto implica que a veces es importante mantener el ancho de la función de respuesta al impulso del filtro lo más corto posible.

Según la relación de incertidumbre de la transformada de Fourier, el producto del ancho de la función de respuesta al impulso del filtro y el ancho de su función de frecuencia debe exceder una cierta constante. Esto significa que cualquier requisito sobre la localidad del filtro también implica un límite en el ancho de su función de frecuencia. En consecuencia, puede que no sea posible cumplir simultáneamente los requisitos sobre la localidad de la función de respuesta al impulso del filtro así como sobre su función de frecuencia. Este es un ejemplo típico de requisitos contradictorios.

Complejidad computacional

Un deseo general en cualquier diseño es que el número de operaciones (sumas y multiplicaciones) necesarias para calcular la respuesta del filtro sea lo más bajo posible. En determinadas aplicaciones, este deseo es un requisito estricto, por ejemplo debido a recursos computacionales limitados, recursos energéticos limitados o tiempo limitado. La última limitación es típica de las aplicaciones en tiempo real.

Hay varias formas en las que un filtro puede tener diferente complejidad computacional. Por ejemplo, el orden de un filtro es más o menos proporcional al número de operaciones. Esto significa que al elegir un filtro de orden bajo, se puede reducir el tiempo de cálculo.

Para filtros discretos, la complejidad computacional es más o menos proporcional al número de coeficientes del filtro. Si el filtro tiene muchos coeficientes, por ejemplo en el caso de señales multidimensionales tales como datos de tomografía, puede ser relevante reducir el número de coeficientes eliminando aquellos que estén suficientemente cerca de cero. En los filtros multivelocidad, el número de coeficientes se aprovecha de sus límites de ancho de banda, donde la señal de entrada se reduce (por ejemplo, a su frecuencia crítica) y se aumenta después del filtrado.

Otro tema relacionado con la complejidad computacional es la separabilidad, es decir, si un filtro se puede escribir como una convolución de dos o más filtros más simples y cómo. En particular, esta cuestión es importante para los filtros multidimensionales, por ejemplo, los filtros 2D que se utilizan en el procesamiento de imágenes. En este caso, se puede obtener una reducción significativa en la complejidad computacional si el filtro se puede separar como la convolución de un filtro 1D en la dirección horizontal y un filtro 1D en la dirección vertical. Un resultado del proceso de diseño del filtro puede ser, por ejemplo, aproximar algún filtro deseado como un filtro separable o como una suma de filtros separables.

Otras Consideraciones

También hay que decidir cómo se va a implementar el filtro:

Filtros analógicos

El diseño de filtros analógicos lineales se trata en su mayor parte en la sección de filtros lineales .

Filtros digitales

Los filtros digitales se clasifican en una de dos formas básicas, según cómo responden a un impulso unitario :

Frecuencia de muestreo

A menos que la frecuencia de muestreo esté fijada por alguna restricción externa, seleccionar una frecuencia de muestreo adecuada es una decisión de diseño importante. Una tasa alta requerirá más en términos de recursos computacionales, pero menos en términos de filtros anti-aliasing . La interferencia y los golpes con otras señales del sistema también pueden ser un problema.

Antialiasing

Para cualquier diseño de filtro digital, es fundamental analizar y evitar efectos de aliasing . A menudo, esto se hace agregando filtros anti-aliasing analógicos en la entrada y salida, evitando así cualquier componente de frecuencia por encima de la frecuencia de Nyquist . La complejidad (es decir, la inclinación) de dichos filtros depende de la relación señal-ruido requerida y de la relación entre la frecuencia de muestreo y la frecuencia más alta de la señal.

Bases teóricas

Partes del problema de diseño se relacionan con el hecho de que ciertos requisitos se describen en el dominio de la frecuencia mientras que otros se expresan en el dominio del tiempo y que pueden entrar en conflicto. Por ejemplo, no es posible obtener un filtro que tenga al mismo tiempo una respuesta de impulso arbitraria y una función de frecuencia arbitraria. Otros efectos que se refieren a las relaciones entre el dominio del tiempo y la frecuencia son

El principio de incertidumbre

Como lo establece el límite de Gabor , un principio de incertidumbre, el producto del ancho de la función de frecuencia y el ancho de la respuesta al impulso no puede ser menor que una constante específica. Esto implica que si se solicita una función de frecuencia específica, correspondiente a un ancho de frecuencia específico, se establece el ancho mínimo del filtro en el dominio de la señal. Viceversa, si se da el ancho máximo de la respuesta, esto determina el ancho más pequeño posible en la frecuencia. Este es un ejemplo típico de requisitos contradictorios en los que el proceso de diseño de filtros puede intentar encontrar un compromiso útil.

El teorema de extensión de la varianza

Sea la varianza de la señal de entrada y sea la varianza del filtro. La varianza de la respuesta del filtro, , viene dada por

= +

Esto significa e implica que la localización de diversas características, como pulsos o pasos en la respuesta del filtro, está limitada por el ancho del filtro en el dominio de la señal. Si se requiere una localización precisa, necesitamos un filtro de pequeño ancho en el dominio de la señal y, según el principio de incertidumbre, su ancho en el dominio de la frecuencia no puede ser arbitrariamente pequeño.

Discontinuidades versus comportamiento asintótico

Sea f(t) una función y sea su transformada de Fourier. Hay un teorema que establece que si la primera derivada de F que es discontinua tiene orden , entonces f tiene una desintegración asintótica como .

Una consecuencia de este teorema es que la función de frecuencia de un filtro debe ser lo más suave posible para permitir que su respuesta al impulso tenga una caída rápida y, por lo tanto, una anchura corta.

Metodología

Un método común para diseñar filtros FIR es el algoritmo de diseño de filtros Parks-McClellan , basado en el algoritmo de intercambio Remez . Aquí el usuario especifica una respuesta de frecuencia deseada, una función de ponderación para los errores de esta respuesta y un orden de filtro N. Luego, el algoritmo encuentra el conjunto de N coeficientes que minimizan la desviación máxima del ideal. Intuitivamente, esto encuentra el filtro que está lo más cerca posible de la respuesta deseada, dado que solo puede usar N coeficientes. Este método es particularmente fácil en la práctica y al menos un texto [4] incluye un programa que toma el filtro deseado y N y devuelve los coeficientes óptimos. Un posible inconveniente de los filtros diseñados de esta manera es que contienen muchas ondulaciones pequeñas en la(s) banda(s) de paso, ya que dicho filtro minimiza el error máximo.

Otro método para encontrar un filtro FIR discreto es la optimización del filtro descrita en Knutsson et al., que minimiza la integral del cuadrado del error, en lugar de su valor máximo. En su forma básica, este enfoque requiere que se especifique una función de frecuencia ideal del filtro junto con una función de ponderación de frecuencia y un conjunto de coordenadas en el dominio de la señal donde se ubican los coeficientes del filtro.

Una función de error se define como

donde es el filtro discreto y es la transformada de Fourier de tiempo discreto definida en el conjunto de coordenadas especificado. La norma utilizada aquí es, formalmente, la norma habitual sobre espacios. Esto significa que mide la desviación entre la función de frecuencia solicitada del filtro, y la función de frecuencia real del filtro realizado . Sin embargo, la desviación también está sujeta a la función de ponderación antes de que se calcule la función de error.

Una vez establecida la función de error, el filtro óptimo viene dado por los coeficientes que minimizan . Esto se puede hacer resolviendo el problema de mínimos cuadrados correspondiente. En la práctica, la norma debe aproximarse mediante una suma adecuada sobre puntos discretos en el dominio de la frecuencia. Sin embargo, en general, estos puntos deben ser significativamente mayores que el número de coeficientes en el dominio de la señal para obtener una aproximación útil.

Optimización simultánea en ambos dominios.

El método anterior se puede ampliar para incluir un término de error adicional relacionado con una respuesta de impulso de filtro deseada en el dominio de la señal, con una función de ponderación correspondiente. La respuesta al impulso ideal se puede elegir independientemente de la función de frecuencia ideal y en la práctica se utiliza para limitar el ancho efectivo y eliminar los efectos de timbre del filtro resultante en el dominio de la señal. Esto se hace eligiendo una función de respuesta al impulso de filtro ideal estrecha, por ejemplo, un impulso, y una función de ponderación que crece rápidamente con la distancia desde el origen, por ejemplo, la distancia al cuadrado. El filtro óptimo aún se puede calcular resolviendo un problema simple de mínimos cuadrados y el filtro resultante es entonces un "compromiso" que tiene un ajuste óptimo total a las funciones ideales en ambos dominios. Un parámetro importante es la fuerza relativa de las dos funciones de ponderación, que determina en qué dominio es más importante tener un buen ajuste en relación con la función ideal.

Ver también

Referencias

  1. ^ Valdez, ME "Filtros digitales". Redes GRM . Consultado el 13 de julio de 2020 .
  2. ^ Historia, Mike (septiembre de 1997). "Una explicación sugerida para (algunas de) las diferencias audibles entre el material de audio con una frecuencia de muestreo alta y una frecuencia de muestreo convencional" (PDF) . dCS Ltd. Archivado (PDF) desde el original el 28 de noviembre de 2009.
  3. ^ Robjohns, Hugh (agosto de 2016). "Precisión en el dominio del tiempo MQA y calidad de audio digital". soundonsound.com . Sonido sobre sonido. Archivado desde el original el 10 de marzo de 2023.
  4. ^ Rabiner, Lawrence R. y Gold, Bernard, 1975: Teoría y aplicación del procesamiento de señales digitales (Englewood Cliffs, Nueva Jersey: Prentice-Hall, Inc.) ISBN 0-13-914101-4 

enlaces externos