Este documento describe diferentes métodos para diseñar filtros FIR (Finite Impulse Response). Explica qué es un filtro FIR, su importancia en procesamiento digital de señales y luego detalla métodos como enventanado, muestreo en frecuencia, Parks-McClellan y algoritmos. Finalmente, muestra cómo diseñar filtros FIR usando MATLAB.
Mata, S. - Kriegsmarine. La flota de Hitler [2017].pdf
Métodos de Diseño de Filtros FIR
1. MÉTODOS DE DISEÑO
DE FILTROS FIR
Procesamiento Digital de Señales
Daniel Castañeda - 1803724
José Rincon - 1803945
Héctor Velásquez - 1803925
Jorge Cáceres - 1803840
2. Para el análisis de señales en
tiempo real, ya que pueden ser
implementados de manera eficiente
en hardware o software
¿QUÉ ES UN
FILTRO FIR?
Un filtro FIR es un tipo de filtro digital
que utiliza una respuesta finita al
impulso para filtrar señales.
Básicamente, esto significa que el
filtro toma una señal de entrada y la
procesa mediante una serie de
operaciones matemáticas para
producir una señal de salida filtrada.
Permite separar o atenuar señales
no deseadas o ruido de una señal
de interés.
Mejora aspectos como la calidad, la
claridad y la inteligibilidad de la
señal.
IMPORTANCIA EN PDS
PDS
01
3. PDS
02
El diseño de un filtro digital, ya sea FIR o IIR, consiste en obtener los coeficientes de la
respuesta al impulso del filtro h(n), de forma analítica o gráfica. Nos vamos a centrar en
este trabajo en los filtros FIR.
La finalidad del diseño de filtros FIR es obtener la respuesta al impulso h(n) de un filtro
FIR óptimo por medio de diferentes técnicas. El filtro también se puede caracterizar por
su función de transferencia H(z):
Donde h(n) es la respuesta al impulso, que se pude representar como una ecuación en
diferencias compuesta por la señal de salida y(n) y por la señal de entrada x(n), de la
siguiente manera:
4. PDS
03
Tabla 1. Tipos de Filtros FIR según el número de coeficientes y la simetría de los mismos.
6. TIPOS
MÉTODO POR VENTANAS
Estas son funciones de amplitud que se multiplican
por la respuesta en frecuencia ideal del filtro para
obtener la respuesta en frecuencia final del filtro FIR.
El uso de una ventana limita la respuesta en
frecuencia del filtro FIR, lo que puede introducir un
compromiso entre el ancho del lóbulo principal y la
atenuación del lóbulo lateral.
Ventana Rectangular
Ventana de Hamming
Ventana Hanning
Ventana Blackman
05
PDS
Ejemplo
7. PDS
06
MÉTODO POR VENTANAS
Tabla 2. Características de las distintas Ventanas y sus parámetros de ancho de banda de transición y
atenuación de banda de corte del filtro diseñado.
8. MÉTODO MUESTREO EN FRECUENCIA
Para realizar el diseño de filtros FIR empleando el
método de muestreo en frecuencia, es necesario
establecer la respuesta en frecuencia del filtro ideal
Hi(w), que variará en función del filtro que se desee
diseñar. Posteriormente, se muestrea dicha respuesta
en frecuencia con N muestras o puntos
uniformemente distribuidos por todo el espectro
digital, obteniéndose así H(k).
07
PDS
Se puede obtener la respuesta al impulso del filtro
diseñado h(n) a partir de la transformada inversa de
H(k). Con este método de diseño, obtenemos un filtro
con respuesta en frecuencia que pasa por los puntos
muestreados; sin embargo, no podemos controlar el
resto de valores de la respuesta. De esta manera, si
representamos la respuesta en frecuencia del filtro
diseñado, después de realizar el proceso de muestreo
y de transformada inversa, observamos que aparece
un rizado entre las muestras, como ocurre en la
Figura, pero los valores de las muestras coinciden con
los originales del filtro ideal.
Respuesta en frecuencia [0,2π] del filtro diseñado (paso alto) y de las muestras de H(k)
9. MÉTODO MUESTREO EN FRECUENCIA
08
PDS
Dada la respuesta en frecuencia del filtro ideal, se elige la longitud deseada y se toman
N muestras equiespaciadas en el intervalo [0,2π].
Se utiliza la transformada inversa de Fourier para determinar h(n).
Método de diseño:
La diferencia entre la respuesta en frecuencia del filtro ideal y la del filtro diseñado es cero en las frecuencias
muestreadas k.
El error de aproximación en el resto de frecuencias depende de la respuesta ideal tomada como referencia.
Transiciones bruscas en dicha respuesta implican mayores errores.
El error es mayor en los límites de las bandas y menor dentro de ellas.
Características del filtro diseñado:
10. MÉTODO MUESTREO EN FRECUENCIA
09
PDS
Una forma de evitar estos efectos es ampliar la zona de transición del filtro ideal, evitando
una caída abrupta y, por consiguiente, obtener una disminución del rizado. Este efecto se
puede apreciar en la Fig. 4, donde la transición entre la banda de paso y la banda de corte
no es abrupta, sino que posee muestras intermedias que, aunque amplían el ancho de
banda de transición, disminuyen considerablemente el rizado.
Respuesta en frecuencia [0,2π] del filtro diseñado (paso bajo) y de las
muestras de H(k) con banda de transición de 0.25π a 0.5π
11. Número de muestras sobre el dominio de la frecuencia,
el cual, representa el número de iteraciones.
Ganancia de los valores de la banda de paso y de
rechazo.
Ubicación de la frecuencia de corte en relación al
número de muestras definido anteriormente.
PDS
10
El método de muestreo en frecuencia es una técnica de
filtrado iterativa, para esto, es necesario definir una cuadrícula
de frecuencia discreta y en base a la banda de paso y de
rechazo, se ajustan los coeficientes del filtro.
Esta técnica se utiliza cuando las especificaciones del filtro
son muy precisas, esto, a su vez, hace que sea más difícil de
implementar en comparación al método de enventanado y
que su respuesta en frecuencia tenga lóbulos menos
pronuncidos.
Figura x. Filtro pasa bajos por
método de muestreo en frecuencia
Figura x. Tomado de: https://www.youtube.com/watch?v=cNDgZkhERd8
PARÁMETROS A TENER EN CUENTA:
MÉTODO MUESTREO EN
FRECUENCIA
12. METODOS ALGORÍTMICOS
11
PDS
En los métodos algorítmicos empleados en este trabajo, los coeficientes de h(n) se representan
por distintos elementos dependiendo cual sea el algoritmo: por partículas en el PSO (Particle
Swarm Optimization), cromosomas en los GAs (Genetic Algorithms) o nidos en el caso del CSA
(Cuckoo Search Algorithm). En cada iteración de los algoritmos, dichas partículas, cromosomas,
nidos… son actualizados. Los valores de aptitud, también denominados valores de error de
aptitud, se recalculan con los nuevos coeficientes (nueva solución).
Para el diseño de filtros empleando algoritmos, la mejor o mejores soluciones de la iteración
actual son elegidas y almacenadas para la siguiente iteración hasta que el criterio de parada es
alcanzado. Posteriormente, se prosiguen las iteraciones hasta que se alcanza el criterio de
parada, es decir, se alcanza el número máximo de iteraciones o se consigue obtener el valor de
error de aptitud mínimo establecido.
Una de las ventajas que tiene el diseño de filtros FIR de fase lineal es que son simétricos y por
tanto sus coeficientes también. Solamente la mitad de los coeficientes son empleados para las
potenciales soluciones de los algoritmos naturalistas que se van actualizando en cada iteración.
Posteriormente, son duplicados para formar la otra mitad de los coeficientes debido a la
naturaleza simétrica de los filtros FIR. Así se reduce la dimensión del problema a la mitad.
13. Se van a definir dos respuestas al impulso que permitirán obtener posteriormente la función
de aptitud.
12
PDS
METODOS ALGORÍTMICOS
Donde Hd, representa la respuesta en frecuencia del filtro diseñado y Hi,representa la
respuesta en frecuencia del filtro ideal, que variará según estemos diseñando un filtro LPF,
BPF, HPF o BSF.
15. Ventajas Desventajas
Precisión de la respuesta en frecuencia.
Mayor complejidad computacional, requiriendo más
tiempo y recursos de procesamiento.
Reducción del número de coeficientes necesarios.
No puede controlar de manera precisa la respuesta en
fase del filtro.
Lóbulos laterales más pequeños en comparación al
método de enventanado.
Aunque tiene lóbulos laterales relativamente pequeños,
necesita de técnicas adicionales de diseño para
disminuirlos más y no opacar la alta precisión de la
respuesta en frecuencia.
MÉTODO DE PARKS - MC CLELLAN
PDS
14
A pesar de su gran similitud con el método de muestreo en frecuencia, el método de Parks-McClellan difiere en
relación al tipo de interpolación que utiliza, más especificamente, aproxima una respuesta en frecuencia basándose
en una interpolación polinómica de los puntos de muestreo(iteración).
18. 17
PDS
EJEMPLO HACIENDO USO DE FIR1
Al diseñar los filtros en Matlab este nos entrega los coeficientes del filtro, con los cuales se pueden llevar a la
implementación por medio del uso de un lenguaje de alto nivel como lo seria c y un micro controlador como
la STM32F767ZI.
19. PDS
EJEMPLO DE IMPLEMENTACION CON MATLAB
18
Aqui se tiene unejemplo en lenguaje c utilizado
para implementar dos filtros diferentes usando la
funcion anteriormente mencionada, la cual nos
entrega los coeficientes que podemos observar
en la parte superior. En el codigo se encuentra un
filtro FIR con los coeficientes del vector B y un IIR
en el vector A; ambos filtros cuentan con orden
20 y tienen su frecuencia de corte en 80Hz y
170Hz.
20. FILTER DESIGNER
PDS
19
Aparte de el uso de los codigos anteriormente mostrados, Matlab cuenta con un entorno especialmente
diseñado para el diseño de estos. El paquete de Filter Designer es una herramienta poderosa que nos
permite calcular los coeficientes del filtro en un par de minutos solo introduciendo los datos relevantes del
filtro deseado: