¿Sensor de sonido que puede dar retroalimentación sobre la amplitud de diferentes frecuencias?

Estoy tratando de encontrar un sensor de sonido que pueda dar retroalimentación sobre todas las frecuencias de sonido y sus niveles.

Sin embargo, los sensores que encuentro en mi búsqueda solo admiten el nivel de sonido.

¿Es posible obtener el nivel de los rangos de frecuencia individuales de un sensor o se requieren varios sensores?

Soy nuevo en esto, así que no conozco la terminología exacta, pero esencialmente quiero crear algo que pueda responder a un conjunto de diferentes frecuencias de sonido de forma independiente, no solo a qué tan alto es el sonido.

Idealmente, el sensor estaría hecho para trabajar con Arduino, pero no tengo miedo de algo que sea más complicado.

Respuestas (2)

La mejor manera es realizar una FFT en la entrada del micrófono. El software FFT está disponible para Arduino.

Esto parece tener más información disponible y está más cerca de lo que estoy tratando de hacer. Encontré esto y es extremadamente similar a lo que estoy tratando de hacer: blog.makezine.com/archive/2010/10/…

¿Haría un sensor de ecualizador gráfico el trabajo que está tratando de hacer? Sparkfun almacena el MSGEQ , un IC de filtro de 7 bandas que contiene filtros de paso de banda integrados y detección de picos. Deberá conectar un pin de su Arduino a su pin estroboscópico y un pin ADC para leer la amplitud.

El filtro de paso de banda y la detección de picos son, creo, los componentes básicos de su sensor deseado.

Si desea más personalización que eso, probablemente esté buscando hacer un trabajo de DSP en el Arduino. ¿Ya hay una biblioteca para eso?

¡Sí! Eso parece lo que necesito. ¿Qué componente de entrada de audio recomendaría para esto?
Tenga en cuenta que el IC combina todas las salidas en un solo pin. ¿Parece que tienes que golpearlo con una señal de reloj para obtener un valor de CC para cada banda? Entonces, ¿alimentarías ese valor de CC en tus ADC de arduino? Algo complicado para algo que puedes hacer gratis dentro del Arduino con una FFT.
No estoy de acuerdo. Alternar un pin y tomar una lectura de ADC es MUCHO más fácil que hacer una FFT.
Además, esto está limitado a 7 bandas y es una lectura máxima en lugar de una lectura RMS. Una FFT puede hacer tantas bandas como quieras, de la forma que quieras.