Inhoudsopgave:
Video: Arduino Nano-spraakrecorder met de MAX9814-microfoon - Ajarnpa
2024 Auteur: John Day | [email protected]. Laatst gewijzigd: 2024-01-30 11:14
Ik kreeg een MAX9814-microfoon van AZ-bezorging op Amazon en wilde het apparaat testen. Daarom heb ik dit eenvoudige project gemaakt op basis van Great Scott's Spy Bug (gepubliceerd onder deze creative commons-licentie). Ik heb de projectstructuur behoorlijk aangepast om de efficiëntie te verbeteren en een paar nieuwe functies toe te voegen. Dit is mijn eerste Instructables-project, dus het zal niet perfect zijn, maar ik ben bereid om te leren en sta open voor advies.
Testresultaten van de microfoon met verschillende versterkingen worden aan het einde toegevoegd, dus als u alleen de kwaliteit van 40dB, 50dB en 60dB versterkingen wilt vergelijken, kunt u daar naartoe gaan.
Ik hoop dat dit project nuttig zal zijn voor mensen die proberen een microfoon in hun project te implementeren. Ik hoop ook dit project zo toegankelijk mogelijk te maken voor beginners, dus ik heb veel opmerkingen aan mijn code toegevoegd, maar ik ben ook blij mijn werk te herzien om extra verduidelijking toe te voegen die nuttig zou zijn. De bedrading is erg beginnersvriendelijk, maar het implementeren van de software is wat lastiger.
Bekijk alle projectbestanden en stel verbeteringen voor aan mijn code in mijn GitHub-repository.
Benodigdheden:
Amazone:
- MAX9814 microfoon met versterker
- Breadboard
- Arduino Nano (het is een pakket van 3, maar je had er maar één nodig!)
- SD-kaartlezer
- LED's
- Weerstanden
- Tastbare knoppen
- USB B Mini-kabel (voor Arduino Nano)
- USB-powerbank (ik gebruikte een goedkope die lokaal was gekocht)
Stap 1: Circuit en uitleg van het apparaat
Ik heb mijn circuit aangepast om te werken met het Arduino Nano-apparaat, maar je kunt je circuit op verschillende Arduino-apparaten laten werken door de pincodes bovenaan mijn code te bewerken (volgende sectie). Om het circuit op uw apparaat in te stellen, zoekt u "Arduino [Your model] pinout" en er moeten veel afbeeldingen zijn die illustreren welke functies elke pin kan uitvoeren (bijv. Analoge ingang, SS, MOSI enz.). De meeste apparaten worden ook geleverd met gelabelde pinnen. Ik tekende dit schema met behulp van de EasyEDA-editor, maar maakte het met een soldeerloze breadboard, omdat ik dit zo snel mogelijk wilde maken en de lay-out snel opnieuw wilde configureren.
Stap 2: Programmeren
Ik heb een eenvoudige code geschreven om de audio op het apparaat op te nemen. Ik gebruikte de code van Great Scott als inspiratie, maar veranderde de structuur om de efficiëntie en eenvoud te vergroten. Ik heb ook de beperkingen op het aantal bestanden dat kan worden opgenomen verwijderd en meer opmerkingen toegevoegd die beginners moeten helpen bij het navigeren. Download de voltooide code hieronder en open deze met behulp van de Arduino IDE. Download de vereiste modules ("SD.h", "SPI.h" en "TMRpcm.h") met behulp van de Arduino Package manager (weergegeven in de afbeeldingen hierboven).
Opnemen naar een WAV-bestand op een SD-kaart is een geavanceerde functie van de TMRpcm-bibliotheek, dus om deze te gebruiken moet u het configuratiebestand van de bibliotheek bewerken. Hoewel dit ontmoedigend klinkt (dat deed het in ieder geval voor mij), is het alleen zoeken naar het bestand "pcmConfig.h" met behulp van de bestandsverkenner en het verwijderen van commentaar op een paar regels code (en het vervolgens opslaan).
- Op Uno of niet-mega boards verwijder je de regel #define buffSize 128
- Verwijder ook het commentaar #define ENABLE_RECORDING en #define BLOCK_COUNT 10000UL
Als u klaar bent, keert u terug naar de Arduino IDE, sluit u uw Arduino aan, selecteert u deze en compileert en uploadt u het programma. Als u de seriële monitor opent, krijgt u ook wat feedback tijdens runtime.
Stap 3: Voltooid project en testen
Toen ik klaar was met de bedrading en debuggen, heb ik het project getest.
WAARSCHUWING door het apparaat opnieuw op te starten, wordt de bestandsnaamteller gereset, waardoor nieuwe bestanden oude bestanden overschrijven.
Het apparaat gebruiken:
- steek een USB-stroomkabel in de Arduino
- druk op de tactiele knop om de opname te starten (de LED licht op om dit aan te geven)
- druk nogmaals op de knop om de opname te beëindigen
- herhaal voor zoveel opnamen nodig zijn
- koppel de USB-stroomkabel los
- Verwijder de SD-kaart
- Plaats de SD-kaart in een computer of telefoon
- Open de bestanden in de door jou gekozen afspeeltoepassing
Het oorspronkelijke doel van dit project was om de MAX9814-microfoon te testen, dus ik voerde drie tests uit om erachter te komen welk effect de ingebouwde versterker op het resultaat had. Bij het produceren van de opnamen heb ik een van de symfonieën van Mozart als controlevariabele gebruikt. Ik speelde het af op de luidspreker van mijn telefoon, die ik bij alle drie de opnames op een constante afstand op de microfoon hield. De enige variabele die ik heb gewijzigd, was de versterking van de microfoon (aangepast door deze op VCC, GND aan te sluiten of te laten zweven). De resulterende audioclips zijn bijgevoegd. Ik heb ook de 40dB en de 60dB audio gecombineerd in een enkele opname waarbij de 40dB in het linkeroor wordt afgespeeld en de 60dB in het rechteroor. Dit maakt het verschil in kwaliteit zeer merkbaar en benadrukt hoe belangrijk de winst van de MAX9814-module is.
Over het algemeen was ik ongelooflijk blij met de opnameresultaten, vooral omdat de installatie voor het apparaat een van de eenvoudigste is die ik heb gezien (met slechts drie draden en geen externe componenten - zelfs een eenvoudige LED vereist een weerstand). Er moet ook rekening mee worden gehouden dat de Arduino Nano een 10-bit ADC heeft, dus elke amplitude-uitlezing kan slechts een van de 1024 discrete waarden zijn. Vanwege de goede geluidskwaliteit, het compacte formaat en het verwaarloosbare stroomverbruik; Ik hoop het apparaat in toekomstige projecten te gebruiken.
Als ik niet genoeg in detail ben gegaan, zou ik graag helpen en extra verduidelijking toevoegen. Dit is mijn eerste Instructables, dus elk advies dat ik nu krijg, kan worden weerspiegeld in al mijn toekomstige projecten. Als je suggesties hebt om mijn codes te verbeteren, voeg ik ze graag toe aan mijn project op GitHub en deze Instructables.
Aanbevolen:
Digitale klok met netwerktijd met behulp van de ESP8266: 4 stappen (met afbeeldingen)
Digitale netwerkklok met de ESP8266: we leren hoe we een schattige kleine digitale klok kunnen bouwen die communiceert met NTP-servers en de netwerk- of internettijd weergeeft. We gebruiken de WeMos D1 mini om verbinding te maken met een wifi-netwerk, de NTP-tijd te verkrijgen en deze weer te geven op een OLED-module. De video hierboven
Aan de slag met de goedkope RPLIDAR met Jetson Nano: 5 stappen
Aan de slag met de goedkope RPLIDAR Jetson Nano gebruiken: kort overzicht Lichtdetectie en -bereik (LiDAR) werkt op dezelfde manier als ultrasone afstandsmeters met laserpuls in plaats van geluidsgolven. Yandex, Uber, Waymo en etc. investeren fors in LiDAR-technologie voor hun autonome autopr
DIY slimme weegschaal met wekker (met wifi, ESP8266, Arduino IDE en Adafruit.io): 10 stappen (met afbeeldingen)
DIY Slimme Weegschaal Met Wekker (met Wi-Fi, ESP8266, Arduino IDE en Adafruit.io): In mijn vorige project ontwikkelde ik een slimme weegschaal met Wi-Fi. Het kan het gewicht van de gebruiker meten, het lokaal weergeven en naar de cloud sturen. U kunt hier meer informatie over krijgen op onderstaande link: https://www.instructables.com/id/Wi-Fi-Smart-Scale-wi
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino - Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter - RC Helikopter - RC-vliegtuig met Arduino: 5 stappen (met afbeeldingen)
Draadloze afstandsbediening met 2,4 GHz NRF24L01-module met Arduino | Nrf24l01 4-kanaals / 6-kanaals zenderontvanger voor quadcopter | RC Helikopter | Rc-vliegtuig met Arduino: een Rc-auto besturen | Quadcopter | Drone | RC vliegtuig | RC-boot, we hebben altijd een ontvanger en zender nodig, stel dat we voor RC QUADCOPTER een 6-kanaals zender en ontvanger nodig hebben en dat type TX en RX is te duur, dus we gaan er een maken op onze
Start uw diavoorstelling met vakantiefoto's met een vleugje magie! 9 stappen (met afbeeldingen)
Lanceer uw diavoorstelling met vakantiefoto's met een vleugje magie!: In de loop der jaren heb ik de gewoonte ontwikkeld om een klein beeldje mee te nemen op reis: ik koop vaak een kleine, lege artoy (zoals die op de foto) en verf het past bij de vlag en het thema van het land dat ik bezoek (in dit geval Sicilië). T