Soy nuevo en el filtro digital, espero poder obtener algunas ideas intuitivas aquí. Así que aquí está la cuestión:
Se va a diseñar un filtro de paso bajo con una frecuencia de corte de 5 Hz. Las señales presentadas tienen una frecuencia máxima de 1kHz. Por lo tanto, una frecuencia de muestreo de 1 MHz satisfará plenamente la teoría de muestreo de Naquist para la parte del filtro digital.
Filtro analógico:
Digamos que quiero implementar un filtro de paso bajo analógico de 5 Hz, necesito esperar al menos 0,2 s, o incluso 10 veces más, para obtener datos precisos, debido al tiempo de carga de los circuitos RC.
Filtro digital:
¿Son las mismas cosas para los filtros digitales? Digamos que quiero implementar un filtro de paso bajo de 10 toques (longitud de datos) con una frecuencia de corte de 5 Hz. La frecuencia de muestreo es de 1 MHz. ¿Puedo obtener datos válidos dentro de 1/(1MHz/10) = 10us tiempo? Eso no me parece muy razonable....
Comentarios necesarios:
En esta aplicación, se diseñarán dos filtros.
En ambos filtros solo queremos saber la DC. La señal de CC está enterrada en grandes ruidos. Se elige una frecuencia de corte de 5 Hz, ya que queremos tener lecturas válidas a 5 Hz. Y una frecuencia de corte más baja significa ruidos más pequeños, pero también se necesita más tiempo para obtener una lectura adecuada.
Un filtro tiene un ancho de banda de 6kHz (no 1MHz, que fue solo un ejemplo). Y estamos planeando sobremuestrearlo con una frecuencia de muestreo de 36kHz. El otro filtro tiene un ancho de banda de 60 Hz y estamos planeando sobremuestrearlo a 1 kHz.
Como se puede observar en la descripción del filtro, queremos ruidos más bajos, lo más bajo posible. Por lo tanto, se espera que los filtros digitales tengan un borde nítido a 5 Hz. Y todos los demás parámetros, como "fase lineal, ondulación pequeña... y etc." no son importantes para nosotros, ya que solo nos preocupamos por las lecturas de CC.
Y estoy bastante confundido por los enormes tipos de filtros digitales. ¿Cómo elegirlos? Digamos, ¿entre FIR e IIR?
Existe una gran flexibilidad en el diseño de un filtro digital. Puede diseñar filtros digitales que se comporten de manera muy similar a los filtros analógicos (como lo describió Andy). También puede construir filtros digitales que pueden ser difíciles de reproducir en analógico, como un filtro de fase lineal o un filtro de media banda. O filtros digitales no lineales como los filtros Median que no tienen equivalencia analógica en los sistemas LTI.
Para sus requisitos de "un filtro de paso bajo nítido", sugeriría un IIR simple de la forma:
salida = (1-a) entrada + salida
cuanto más cerca esté 'a' de 1, menor será la frecuencia de corte de su filtro.
Es posible que tenga un problema con la frecuencia de muestreo de 1 MHz y el corte de 5 Hz porque: a = exp(-2*pi*f/fs) donde f es la frecuencia de corte y fs es la frecuencia de muestreo. Así que para tu ejemplo:
a= exp(-2*pi*5/1E6) = 0.99997
Si realmente necesita una frecuencia de muestreo de 1 MHz (porque sus datos deben ser muestreados por un ADC de 1 MSPS, por ejemplo), entonces un filtro de frecuencia múltiple de 3 etapas es más apropiado. Para esto harías:
ACTUALIZACIÓN BASADA EN NUEVA INFORMACIÓN DE OP: Basado en su información que:
Creo que su mejor opción es un CIC Decimator .
Básicamente, es un filtro digital MA (FIR), compuesto por
un diferenciador en la salida cronometrada a la tasa de salida.
Puede controlar la cantidad de filtrado que obtiene cambiando la tasa de salida.
Por ejemplo, con una tasa de entrada de 36 kHz y una tasa de salida de 5 Hz, esto le da un promedio móvil de 36000/5 = 7200 puntos. En realidad, le gustaría mantener las tasas como proporciones binarias, por lo que M = 13 da 36 kHz de entrada 36 kHz/2 ^ 13 de salida y la longitud de MA es 2 ^ M = 8192
El retardo de grupo de esto será 2^(M-1)/Fin o 113ms para el ejemplo anterior. Esa es una de las desventajas de un circuito tan simple, pero no sería un problema en un sistema cuyo valor de CC varía lentamente.
Hay muchos tipos de filtros, y la respuesta transitoria (dominio del tiempo) está directamente relacionada con la respuesta del dominio de la frecuencia.
Pero no importa si la implementación es analógica o digital; cualquier filtro con una respuesta de frecuencia dada tendrá la misma respuesta transitoria.
Usted elige un diseño de filtro en función de los aspectos de su rendimiento que son más importantes en su aplicación. Algunas arquitecturas tienen bandas de paso de dominio de frecuencia especialmente planas, otras tienen bandas de transición particularmente pronunciadas y algunas están optimizadas específicamente para su respuesta de dominio de tiempo (por ejemplo, sin "timbre"). Es un tema que es demasiado amplio para tratar aquí.
Pasar de un filtro de paso bajo RC simple a un filtro IIR digital de paso bajo es bastante fácil: -
Esta es una demostración de 4 pasos de que no existe una diferencia fundamental en el rendimiento entre un filtro analógico y un filtro IIR digital.
Con respecto a su frecuencia de muestreo de 1 MHz y el corte deseado de 5 Hz, esto hace que el factor (T/CR) sea muy, muy pequeño. Por ejemplo, CR para un filtro LP analógico de 5 Hz será: -
CR = = 0,03183.
Si tiene en cuenta un paso de tiempo de 1us, T/CR se convierte en 3.183E-8. Sin embargo, puede diezmar sensiblemente sus datos en al menos 10 000:1 y trabajar con una frecuencia de muestreo de 100 Hz. Esto hace que los números sean más fáciles, por supuesto.
Si desea conectar en cascada estos filtros para obtener un orden superior, escribí un documento que podría ayudarlo a comenzar. esta aqui _
scott seidman
akellyirl
richieqianle
richieqianle
scott seidman