Sadržaj:

Arduino Nano snimač glasa s mikrofonom MAX9814: 3 koraka
Arduino Nano snimač glasa s mikrofonom MAX9814: 3 koraka

Video: Arduino Nano snimač glasa s mikrofonom MAX9814: 3 koraka

Video: Arduino Nano snimač glasa s mikrofonom MAX9814: 3 koraka
Video: DIY Radar With Ultrasonic Sensor And Chat-GPT Generated Arduino Code | Coders Cafe 2024, Rujan
Anonim
Arduino Nano snimač glasa s mikrofonom MAX9814
Arduino Nano snimač glasa s mikrofonom MAX9814
Arduino Nano snimač glasa s mikrofonom MAX9814
Arduino Nano snimač glasa s mikrofonom MAX9814
Arduino Nano snimač glasa s mikrofonom MAX9814
Arduino Nano snimač glasa s mikrofonom MAX9814

Dobio sam mikrofon MAX9814 od AZ isporuke na Amazonu i htio sam testirati uređaj. Stoga sam stvorio ovaj jednostavan projekt izgrađen na Spy Bug -u Velikog Scotta (objavljen pod ovom licencom Creative Commons). Dosta sam izmijenio strukturu projekata kako bih poboljšao učinkovitost i dodao nekoliko novih značajki. Ovo je moj prvi projekt Instructables pa neće biti savršen, ali voljan sam učiti i otvoren sam za savjete.

Rezultati ispitivanja s mikrofona s različitim dobicima dodaju se na kraju pa ako samo želite usporediti kvalitetu pojačanja od 40 dB, 50 dB i 60 dB, možete preskočiti tamo.

Nadam se da će ovaj projekt biti koristan za ljude koji pokušavaju implementirati mikrofon u svoj projekt. Također se nadam da ću ovaj projekt učiniti što pristupačnijim početnicima pa sam dodao mnogo komentara u svoj kôd, ali također ću rado izmijeniti svoj rad kako bih dodao dodatno pojašnjenje koje bi bilo od pomoći. Ožičenje je prilagođeno početnicima, ali implementacija softvera je malo teža.

Pregledajte sve datoteke projekta i predložite poboljšanja koda na mojem spremištu GitHub.

Pribor:

Amazon:

  • MAX9814 mikrofon s pojačalom
  • Oglasna ploča
  • Arduino Nano (Pakiranje je od 3, ali trebao vam je samo jedan!)
  • Čitač SD kartica
  • LED diode
  • Otpornici
  • Taktilni gumbi
  • USB B mini kabel (za Arduino Nano)
  • USB banka za napajanje (koristio sam jeftinu kupljenu lokalno)

Korak 1: Krug i objašnjenje uređaja

Krug i objašnjenje uređaja
Krug i objašnjenje uređaja

Prilagodio sam svoj krug za rad s Arduino Nano uređajem, ali možete pokrenuti svoj krug na različitim Arduino uređajima uređivanjem PIN -ova na vrhu mog koda (sljedeći odjeljak). Da biste postavili krug na svom uređaju, pretražite "Arduino [Vaš model] pinout" i trebalo bi biti mnogo slika koje ilustriraju funkcije koje svaki pin može izvesti (npr. Analogni ulaz, SS, MOSI itd.). Većina uređaja također dolazi s označenim pinovima. Nacrtao sam ovu shemu pomoću uređivača EasyEDA, ali sam je stvorio koristeći lemljenu ploču jer sam to želio stvoriti što je brže moguće i želio sam brzo ponovno konfigurirati izgled.

Korak 2: Programiranje

Programiranje
Programiranje

Napisao sam jednostavan kod za snimanje zvuka na uređaj. Koristio sam kod Great Scotta kao inspiraciju, ali sam promijenio strukturu kako bih povećao učinkovitost i jednostavnost. Također sam uklonio ograničenja u broju datoteka koje se mogu snimiti i dodao još komentara koji bi početnicima trebali pomoći u navigaciji. Preuzmite gotov kod u nastavku i otvorite ga pomoću Arduino IDE -a. Preuzmite potrebne module ("SD.h", "SPI.h" i "TMRpcm.h") pomoću Arduino Package Managera (prikazano na gornjim slikama).

Snimanje u WAV datoteku na SD karticu napredna je značajka knjižnice TMRpcm pa za njezinu upotrebu morate urediti konfiguracijsku datoteku biblioteke. Iako ovo zvuči zastrašujuće (barem je meni to uspjelo), samo traži datoteku "pcmConfig.h" pomoću istraživača datoteka i raskomentira nekoliko redaka koda (zatim je sprema).

  1. Na pločama Uno ili non-mega raskomentirajte redak #define buffSize 128
  2. Također uklonite komentar #define ENABLE_RECORDING i #define BLOCK_COUNT 10000UL

Nakon potpunog povratka na Arduino IDE, priključite svoj Arduino, odaberite ga, a zatim sastavite i prenesite program. Otvaranje serijskog monitora također će vam dati neke povratne informacije tijekom rada.

Korak 3: Završeni projekt i testiranje

Završen projekt i testiranje
Završen projekt i testiranje

Kad sam završio ožičenje i ispravljanje pogrešaka, testirao sam projekt.

UPOZORENJE ponovnim pokretanjem uređaja vratit će se brojač naziva datoteka uzrokujući da nove datoteke prepišu stare datoteke.

Za korištenje uređaja:

  1. priključite USB kabel za napajanje u Arduino
  2. pritisnite taktilnu tipku za početak snimanja (LED će zasvijetliti da to označi)
  3. ponovno pritisnite tipku za završetak snimanja
  4. ponovite za onoliko snimki koliko je potrebno
  5. odspojite USB kabel za napajanje
  6. Izvadite SD karticu
  7. Umetnite SD karticu u računalo ili telefon
  8. Otvorite datoteke u odabranoj aplikaciji za reprodukciju

Početna svrha ovog projekta bila je testiranje mikrofona MAX9814, pa sam proveo tri testa kako bih saznao utjecaj njegovog ugrađenog pojačala na rezultat. Tijekom produkcije snimaka koristio sam jednu Mozartovu simfoniju kao kontrolnu varijablu. Puštao sam ga na zvučniku telefona koji sam držao usmjeren prema mikrofonu na konstantnoj udaljenosti za sva tri snimanja. Jedina varijabla koju sam promijenio bila je pojačanje mikrofona (prilagođeno povezivanjem na VCC, GND ili ostavljanjem u plutajućem položaju). Dobiveni audio isječci se prilažu. Također sam spojio zvuk od 40 dB i 60 dB u jednu snimku u kojoj se 40 dB reproducira u lijevom uhu, a 60 dB u desnom uhu. To čini razliku u kvaliteti vrlo uočljivom i naglašava koliko je važan dobitak koji pruža modul MAX9814.

Sve u svemu, bio sam nevjerojatno zadovoljan rezultatima snimanja, pogotovo jer je postavljanje uređaja jedno od najjednostavnijih, koje sam vidio (sa samo tri žice i bez vanjskih komponenti - čak i za jednostavnu LED diodu potreban je otpornik). Također se mora uzeti u obzir da Arduino Nano ima 10 -bitni ADC pa svako očitavanje amplitude može biti samo jedna od 1024 diskretne vrijednosti. Zbog dobre kvalitete zvuka, kompaktne veličine i zanemarive potrošnje energije; Nadam se da ću uređaj koristiti u budućim projektima.

Ako nisam ušao u dovoljno detalja, rado ću vam pomoći i dodati dodatna pojašnjenja. Ovo su moji prvi instruktori, tako da se svaki savjet koji mi sada da može odraziti na sve moje projekte koji slijede. Ako imate bilo kakve prijedloge za poboljšanje mojih kodova, rado ću ih dodati u svoj projekt na GitHubu i ovom Instructables.

Preporučeni: