Comparar el audio con la grabación anterior en tiempo real

0

Estoy buscando implementar un activador de audio siempre activo para un producto de consumo con requisitos estrictos de tamaño, costo y energía, como el disparador "Ok Google" en la página principal de Google y los teléfonos Android.

La gran diferencia es que el activador lo establece el usuario a través de una grabación de audio anterior. Estoy tratando de descubrir la manera menos eficiente de generar una interrupción en la detección del disparador, sin introducir hardware costoso adicional.

¿Hay una forma estándar de hacer una comparación de audio en tiempo real como esta?

    

1 respuesta

1

Puede utilizar los controles de IDD 1uA para implementar los filtros de paso de banda y paso bajo / paso alto. Pero necesitarás varias, tal vez 10. E incluso con resistencias MegOhm, estás ejecutando 10uA o 20uA.

O puede digitalizar y realizar correlaciones constantemente o, de manera más selectiva, FFT en cada porción de tiempo de 1/20 segundo. Sin embargo, primero debe tener una señal de activación. Por lo tanto, los filtros opamps / paso de banda de baja potencia.

Para detectar voces humanas, use filtros de 1KHz o 100uSec timeconstants. Dadas las capacitancias del nodo de 10pF en transistores bipolares (ignorando el Efecto Miller), podemos tener resistencias de 10MegaOhm y, por lo tanto, etapas de ganancia de 100 nanoAmp, ejecutadas en bipolar.

La ganancia máxima de una etapa bipolar (carga resistiva) es Vdd / 0.026, por lo tanto, lo máximo que se puede obtener de una etapa con una batería de 3v es 3 / 0.026 o aproximadamente 120X. Un par de etapas proporciona una ganancia de más de 80dB, con un ancho de banda de 1KHz. Entonces necesitas un detector de nivel (comparador). Y necesitas un sesgo para todo esto.

Suena como 500nanoAmperes es posible, ancho de banda de 1KHz.

Todo lo que hace es activar la MCU, ante la aparición de una energía fundamental de voz fuerte.

=================================

Ver la voz humana como filtros selectivos que controlan los tonos de salida de la energía de los generadores de impulsos (las cuerdas vocales). A medida que la garganta / boca / nariz se afinan, los tonos de salida tendrán una amplitud creciente con quizás una frecuencia cambiante (o 2, o 3). Pero ... fundamentalmente, la energía vocal se inicia desde la amplitud CERO y muestra una amplitud que aumenta rápidamente. Eso ... el aumento de amplitud ... es nuestra clave. Por supuesto, una abrazadera de trueno o el paso de un automóvil también puede mostrar esta amplitud creciente; la correlación digital examina eso.

Por lo tanto, necesitamos consumir de manera confiable una potencia muy baja y proporcionar un filtro de paso bajo para tonos de voz fundamentales masculinos / femeninos (hasta 1 Khz), detectando la amplitud en una base de ciclo por ciclo (un rectificador de media onda con capacidad de aceleración rápida) y cuando se detectan 10 milisegundos (solo 1 ciclo de una voz masculina a 100 Hz) o quizás 50 milisegundos o amplitudes crecientes, se generará la interrupción.

Aquí está nuestro diagrama de bloques:

simular este circuito : esquema creado usando CircuitLab

Aquí hay un enlace a un libro sobre el procesamiento de señales en modo actual:

    
respondido por el analogsystemsrf

Lea otras preguntas en las etiquetas