Mi mayor desafío con esta pregunta es su velocidad de caída ridículamente empinada.
Supongo que la señal es indetectable si su ganancia es de -20 dB. Esto significa que, dentro de la banda de transición de 200 Hz, la intensidad de la señal debe disminuir en 20 dB.
Si mis cálculos son correctos, este filtro requiere una tasa de caída de 1200 dB / dec. Eso requiere 60 polos, lo que obviamente no es factible.
Me gustaría usar un filtro activo analógico con ondulación mínima en la banda de paso. Un gran cambio de fase no es demasiado importante.
Una posible solución es usar un filtro de muesca a 5.2 kHz. Sin embargo, las frecuencias por encima del ancho de banda del filtro de muesca todavía no están suficientemente filtradas.
Señale cualquier falla en mi lógica y proponga posibles soluciones. Gracias.
Respuestas:
Ha asumido una reducción de 20 dB / dec por orden de filtro para su filtro. Esto no es cierto para todos los tipos de filtro.
Sea y f s t o p = 5.2 k H z . Entonces f s t o pF0 0= 5 k H z Fs t o p= 5.2 k H z
Eche un vistazo a este filtro elíptico de cuarto orden tomado del artículo de Wikipedia .
Aunque no cumple con sus requisitos, puede ver que es factible. Un filtro elíptico de orden superior puede lograr lo que busca.
Debe tener en cuenta que los filtros elípticos pueden hacer cosas perturbadoras en la fase de la señal. Como no mencionó nada sobre sus restricciones de fase, supuse que un filtro elíptico es adecuado.
fuente
Este tipo de caída brusca requiere un filtro digital. Ni siquiera pienses en lo analógico. Necesita convolucionar la entrada con una función sinc. El ancho de la función sinc (el número de puntos del núcleo) define la atenuación de la banda de detención.
No he hecho los cálculos, pero algunos cálculos muy rápidos (podría ser incorrecto, tu trabajo es correcto) dicen que probablemente necesites unos 100 puntos si tomas muestras a 20 kHz. 200 puntos a 20 kHz significa una velocidad MAC de 4 MHz. Eso es factible, de hecho muy por debajo de lo que los DSP modernos pueden hacer con bastante facilidad. Eso significa que su problema es bastante manejable. Algo así como un dsPIC de la serie E puede hacer esto, y eso es bastante bajo si solo está buscando capacidad DSP.
fuente
Si permite un retraso considerable o procesa una señal grabada, simplemente puede hacer FFT, eliminar componentes no deseados e invertir la transformación. Debe truncar el fft con la función de ventana adecuada para que el timbre sea aceptable.
fuente
Elegiría un chip de códec de audio (ADC + DAC), enrutaría la salida digital ADC a la entrada DAC y establecería la frecuencia de muestreo en 10 kHz.
Estos chips ya incluyen el motor de filtro digital que necesita. Una comprobación rápida de la hoja de datos parece confirmar que obtendrá el rendimiento del filtro que necesita.
fuente
Ya tiene muchas respuestas agradables con buenas soluciones tradicionales, filtros elípticos, (tiempo corto) FFT, etc., por lo que estaba pensando que podría agregar algo del mundo de codificación de subbandas / transformación de wavelet.
La codificación de subbandas significa subdividir el espectro de frecuencia en "contenedores", cada uno de estos contenedores tiene su propio filtro asociado. Las bandas más ajustadas, los filtros más amplios en el dominio del tiempo (naturalmente), pero en áreas donde no necesitamos bandas muy apretadas, podemos escapar con filtros realmente cortos y baratos de calcular.
Las wavelets son funciones que son el resultado de un tipo específico de filtros de subbandas que se generan mediante filtrado iterado seguido de submuestreo.
La idea sería encontrar las subbandas de interés que nos permitirían exprimir más los cálculos, pero aún así obtener una buena granularidad en la banda de interés.
Ejemplo de una descomposición de paquetes de Daubechies 12 tap en tres niveles (Wikipedia):
Luego podemos resumirlos selectivamente para obtener la respuesta que queremos. Y los que no queremos agregar, ¡ni siquiera tenemos que calcular! Necesitaremos unos más delgados más cercanos a la banda de 5-5.2 kHz para poder tener un comportamiento lo suficientemente pronunciado. Pero, por otro lado, lejos de la banda de 5-5.2 kHz, podemos escapar con solo unas pocas subdivisiones.
fuente
Si puede GARANTIZAR una entrada sinusoidal, puede ser suficiente una monoestable de una sola vez (74121). O el reactivable 122/123.
Use un comparador antes del 74121/122/123
Algunas MCU incluyen comparadores analógicos como sus periféricos; una vez convertido a onda cuadrada, puede usar temporizadores, etc. para detectar por encima / por debajo de 5,000Hz, si la MCU tiene un reloj estabilizado por XTAL. No es necesario un monoestable sensible a la temperatura.
fuente