Cuprins:

Înregistrator vocal Arduino Nano cu microfon MAX9814: 3 pași
Înregistrator vocal Arduino Nano cu microfon MAX9814: 3 pași

Video: Înregistrator vocal Arduino Nano cu microfon MAX9814: 3 pași

Video: Înregistrator vocal Arduino Nano cu microfon MAX9814: 3 pași
Video: Sound Sensor Potentiometer Adjustment 2024, Iulie
Anonim
Înregistrator vocal Arduino Nano cu microfon MAX9814
Înregistrator vocal Arduino Nano cu microfon MAX9814
Înregistrator vocal Arduino Nano cu microfon MAX9814
Înregistrator vocal Arduino Nano cu microfon MAX9814
Înregistrator vocal Arduino Nano cu microfon MAX9814
Înregistrator vocal Arduino Nano cu microfon MAX9814

Am primit un microfon MAX9814 de la livrarea AZ pe Amazon și am vrut să testez dispozitivul. Prin urmare, am creat acest proiect simplu construit pe Spy Bug-ul lui Great Scott (publicat sub această licență creative commons). Am modificat destul de mult structura proiectelor pentru a îmbunătăți eficiența și a adăuga câteva caracteristici noi. Acesta este primul meu proiect Instructables, deci nu va fi perfect, dar sunt dispus să învăț și să mă sfătuiesc.

Rezultatele testelor de la microfon cu câștiguri diferite sunt adăugate la final, astfel încât, dacă doriți doar să comparați calitatea câștigurilor de 40dB, 50dB și 60dB, puteți să treceți acolo.

Sper că acest proiect va fi util pentru oamenii care încearcă să implementeze un microfon în proiectul lor. De asemenea, sper să fac acest proiect cât mai accesibil pentru începători, așa că am adăugat multe comentarii la codul meu, dar sunt, de asemenea, fericit să-mi revizuiesc munca pentru a adăuga orice clarificare suplimentară care ar fi utilă. Cablarea este foarte prietenoasă pentru începători, dar implementarea software-ului este puțin mai complicată.

Vizualizați toate fișierele proiectului și sugerați îmbunătățiri la codul meu în depozitul meu GitHub.

Provizii:

Amazon:

  • Microfon MAX9814 cu amplificator
  • Pană de pâine
  • Arduino Nano (Este un pachet de 3, dar ai avut nevoie doar de unul!)
  • Cititor card SD
  • LED-uri
  • Rezistențe
  • Butoane tactile
  • Mini cablu USB B (pentru Arduino Nano)
  • USB power bank (am folosit unul ieftin cumpărat local)

Pasul 1: Circuit și explicația dispozitivului

Circuitul și explicația dispozitivului
Circuitul și explicația dispozitivului

Mi-am personalizat circuitul pentru a funcționa cu dispozitivul Arduino Nano, dar puteți rula circuitul pe diferite dispozitive Arduino editând numerele de pin din partea de sus a codului meu (secțiunea următoare). Pentru a configura circuitul pe dispozitiv, căutați „Arduino [Modelul dvs.] pinout” și ar trebui să existe multe imagini care să ilustreze ce funcții poate îndeplini fiecare pin (de exemplu, intrare analogică, SS, MOSI etc.). Majoritatea dispozitivelor vin, de asemenea, cu știfturi etichetate. Am desenat această schemă folosind editorul EasyEDA, dar am creat-o folosind o placă fără sudură, deoarece am vrut să o creez cât mai repede posibil și am vrut să reconfigurez rapid aspectul.

Pasul 2: Programare

Programare
Programare

Am scris câteva coduri simple pentru înregistrarea audio pe dispozitiv. Am folosit codul lui Great Scott ca inspirație, dar am schimbat structura pentru a spori eficiența și simplitatea. De asemenea, am eliminat restricțiile privind numărul de fișiere care ar putea fi înregistrate și am adăugat mai multe comentarii care ar trebui să ajute începătorii să navigheze. Descărcați codul finit de mai jos și deschideți-l folosind Arduino IDE. Descărcați modulele necesare („SD.h”, „SPI.h” și „TMRpcm.h”) folosind managerul de pachete Arduino (prezentat în imaginile de mai sus).

Înregistrarea într-un fișier WAV pe un card SD este o caracteristică avansată a bibliotecii TMRpcm, astfel încât să îl utilizați trebuie să editați fișierul de configurare al bibliotecii. Deși acest lucru sună descurajant (cel puțin pentru mine), acesta caută doar fișierul „pcmConfig.h” folosind fișierul de explorare și descomentează câteva linii de cod (apoi îl salvează).

  1. Pe plăcile Uno sau non-mega decomentați linia #define buffSize 128
  2. De asemenea, decomentați #define ENABLE_RECORDING și #define BLOCK_COUNT 10000UL

Odată complet reveniți la IDE-ul Arduino, conectați-vă Arduino, selectați-l, apoi compilați și încărcați programul. Deschiderea monitorului serial vă va oferi, de asemenea, un feedback în timpul timpului de rulare.

Pasul 3: Proiect finalizat și testare

Proiect finalizat și testare
Proiect finalizat și testare

După ce am terminat cablarea și depanarea, am testat proiectul.

AVERTISMENT repornirea dispozitivului va reseta contorul de nume de fișier, determinând supraschimbarea fișierelor vechi de fișiere noi.

Pentru a utiliza dispozitivul:

  1. conectați un cablu de alimentare USB la Arduino
  2. apăsați butonul tactil pentru a începe înregistrarea (LED-ul se va aprinde pentru a indica acest lucru)
  3. apăsați din nou butonul pentru a termina înregistrarea
  4. repetați pentru cât de multe înregistrări sunt necesare
  5. deconectați cablul de alimentare USB
  6. Scoateți cardul SD
  7. Introduceți cardul SD într-un computer sau telefon
  8. Deschideți fișierele în aplicația de redare aleasă

Scopul inițial al acestui proiect a fost testarea microfonului MAX9814, așa că am efectuat trei teste pentru a afla efectul pe care amplificatorul său incorporat l-a avut asupra rezultatului. În timp ce produceam înregistrări, am folosit una dintre simfoniile lui Mozart ca variabilă de control. Am redat-o pe difuzorul telefonului pe care l-am ținut îndreptat spre microfon la o distanță constantă pentru toate cele trei înregistrări. Singura variabilă pe care am schimbat-o a fost câștigul microfonului (ajustat conectându-l la VCC, GND sau lăsându-l plutitor). Clipurile audio rezultate sunt atașate. De asemenea, am combinat 40dB și 60dB audio într-o singură înregistrare în care 40dB este redat în urechea stângă și 60dB este redat în urechea dreaptă. Aceasta face diferența de calitate foarte vizibilă și evidențiază cât de important este câștigul oferit de modulul MAX9814.

În general, am fost incredibil de mulțumit de rezultatele înregistrării, mai ales că configurarea dispozitivului este una dintre cele mai simple pe care le-am văzut (cu doar trei fire și fără componente externe - chiar și un LED simplu necesită un rezistor). De asemenea, trebuie luat în considerare faptul că Arduino Nano are un ADC de 10 biți, astfel încât orice citire a amplitudinii poate fi doar una dintre cele 1024 de valori discrete. Datorită calității audio bune, a dimensiunii compacte și a consumului de energie neglijabil; Sper să folosesc dispozitivul în proiecte viitoare.

Dacă nu am intrat în detalii suficiente, aș fi mai mult decât fericit să ajut și să adaug clarificări suplimentare. Acesta este primul meu instructabil, așa că orice sfat pe care mi-l dau acum se poate reflecta în toate proiectele mele viitoare. Dacă aveți sugestii pentru a-mi îmbunătăți codurile, aș fi încântat să le adăug la proiectul meu pe GitHub și în acest manual.

Recomandat: