Tabla de contenido:

Grabadora de voz Arduino Nano con micrófono MAX9814: 3 pasos
Grabadora de voz Arduino Nano con micrófono MAX9814: 3 pasos

Video: Grabadora de voz Arduino Nano con micrófono MAX9814: 3 pasos

Video: Grabadora de voz Arduino Nano con micrófono MAX9814: 3 pasos
Video: Como usar el modulo de microfono para arduino 2024, Noviembre
Anonim
Grabadora de voz Arduino Nano con micrófono MAX9814
Grabadora de voz Arduino Nano con micrófono MAX9814
Grabadora de voz Arduino Nano con micrófono MAX9814
Grabadora de voz Arduino Nano con micrófono MAX9814
Grabadora de voz Arduino Nano con micrófono MAX9814
Grabadora de voz Arduino Nano con micrófono MAX9814

Conseguí un micrófono MAX9814 de AZ Delivery en Amazon y quería probar el dispositivo. Por lo tanto, creé este proyecto simple basado en Great Scott's Spy Bug (publicado bajo esta licencia creative commons). Modifiqué bastante la estructura de los proyectos para mejorar la eficiencia y agregar algunas características nuevas. Este es mi primer proyecto de Instructables, por lo que no será perfecto, pero estoy dispuesto a aprender y dispuesto a recibir consejos.

Los resultados de la prueba del micrófono con diferentes ganancias se agregan al final, por lo que si solo desea comparar la calidad de las ganancias de 40dB, 50dB y 60dB, puede saltar hasta allí.

Espero que este proyecto sea útil para las personas que intentan implementar un micrófono en su proyecto. También espero que este proyecto sea lo más accesible posible para los principiantes, así que he agregado muchos comentarios a mi código, pero también estoy feliz de revisar mi trabajo para agregar cualquier aclaración adicional que sea útil. El cableado es muy amigable para los principiantes, pero implementar el software es un poco más complicado.

Ver todos los archivos del proyecto y sugerir mejoras a mi código en mi repositorio de GitHub.

Suministros:

Amazonas:

  • Micrófono MAX9814 con amplificador
  • Tablero de circuitos
  • Arduino Nano (es un paquete de 3, ¡pero solo necesitabas uno!)
  • Lector de tarjetas SD
  • LED
  • Resistencias
  • Botones táctiles
  • Mini cable USB B (para Arduino Nano)
  • Banco de energía USB (usé uno barato comprado localmente)

Paso 1: circuito y explicación del dispositivo

Circuito y explicación del dispositivo
Circuito y explicación del dispositivo

Personalicé mi circuito para que funcione con el dispositivo Arduino Nano, pero puede ejecutar su circuito en diferentes dispositivos Arduino editando los números de pin en la parte superior de mi código (siguiente sección). Para configurar el circuito en su dispositivo, busque "Pinout de Arduino [su modelo]" y debe haber muchas imágenes que ilustren qué funciones puede realizar cada pin (por ejemplo, entrada analógica, SS, MOSI, etc.). La mayoría de los dispositivos también vienen con pines etiquetados. Dibujé este esquema usando el editor EasyEDA pero lo creé usando una placa de prueba sin soldadura ya que quería crearlo lo más rápido posible y quería reconfigurar rápidamente el diseño.

Paso 2: programación

Programación
Programación

Escribí un código simple para grabar el audio en el dispositivo. Usé el código de Great Scott como inspiración, pero cambié la estructura para aumentar la eficiencia y la simplicidad. También eliminé las restricciones sobre la cantidad de archivos que se podían grabar y agregué más comentarios que deberían ayudar a los principiantes a navegar. Descargue el código terminado a continuación y ábralo usando el IDE de Arduino. Descargue los módulos requeridos ("SD.h", "SPI.h" y "TMRpcm.h") usando el administrador de paquetes Arduino (que se muestra en las imágenes de arriba).

La grabación en un archivo WAV en una tarjeta SD es una función avanzada de la biblioteca TMRpcm, por lo que para usarla debe editar el archivo de configuración de la biblioteca. Si bien esto suena desalentador (al menos para mí), solo busca el archivo "pcmConfig.h" usando el explorador de archivos y descomentando algunas líneas de código (luego guardándolo).

  1. En placas Uno o no mega, descomente la línea #define buffSize 128
  2. También descomente #define ENABLE_RECORDING y #define BLOCK_COUNT 10000UL

Una vez completo, regrese al IDE de Arduino, conecte su Arduino, selecciónelo y luego compile y cargue el programa. La apertura del monitor en serie también le dará algunos comentarios durante el tiempo de ejecución.

Paso 3: Proyecto terminado y prueba

Proyecto terminado y pruebas
Proyecto terminado y pruebas

Cuando terminé el cableado y la depuración, probé el proyecto.

ADVERTENCIA al reiniciar el dispositivo se restablecerá el contador de nombre de archivo, lo que provocará que los archivos nuevos sobrescriban los archivos antiguos.

Para usar el dispositivo:

  1. conecte un cable de alimentación USB al Arduino
  2. presione el botón táctil para iniciar la grabación (el LED se iluminará para indicar esto)
  3. presione el botón nuevamente para finalizar la grabación
  4. Repetir cuantas grabaciones sean necesarias.
  5. desconecte el cable de alimentación USB
  6. Retirar la tarjeta SD
  7. Inserte la tarjeta SD en una computadora o teléfono
  8. Abra los archivos en su aplicación de reproducción elegida

El propósito inicial de este proyecto era probar el micrófono MAX9814, por lo que realicé tres pruebas para averiguar el efecto que tenía su amplificador incorporado en el resultado. Mientras producía las grabaciones, utilicé una sinfonía de Mozart como variable de control. Lo escuché en el altavoz de mi teléfono, que mantuve apuntando al micrófono a una distancia constante para las tres grabaciones. La única variable que cambié fue la ganancia del micrófono (ajustado conectándolo a VCC, GND o dejándolo flotando). Se adjuntan los clips de audio resultantes. También combiné el audio de 40dB y 60dB en una sola grabación en la que los 40dB se reproducen en el oído izquierdo y los 60dB en el oído derecho. Esto hace que la diferencia en la calidad sea muy notable y destaca la importancia de la ganancia proporcionada por el módulo MAX9814.

En general, quedé increíblemente satisfecho con los resultados de la grabación, especialmente porque la configuración del dispositivo es una de las más simples que he visto (con solo tres cables y sin componentes externos, incluso un LED simple requiere una resistencia). También hay que tener en cuenta que el Arduino Nano tiene un ADC de 10 bits por lo que cualquier lectura de amplitud solo puede ser uno de los 1024 valores discretos. Debido a su buena calidad de audio, tamaño compacto y consumo de energía insignificante; Espero utilizar el dispositivo en proyectos futuros.

Si no he entrado en suficientes detalles, estaré más que feliz de ayudar y agregar aclaraciones adicionales. Estos son mis primeros Instructables, por lo que cualquier consejo que me den ahora se verá reflejado en todos mis proyectos por venir. Si tiene alguna sugerencia para mejorar mis códigos, me complacerá agregarla a mi proyecto en GitHub y a este Instructables.

Recomendado: