ESP32 - Geluidssensor - LED
In deze tutorial gaan we ontdekken hoe u een geluidssensor kunt gebruiken om een LED te bedienen. We behandelen hierbij twee interessante toepassingen:
- Geluidsschakelaar: Wanneer geluid wordt gedetecteerd (bijvoorbeeld een klap), schakelt de ESP32 de LED aan of uit, afhankelijk van de huidige status.
- Geluid-geactiveerde LED: Bij detectie van geluid zet de ESP32 de LED voor een bepaalde periode aan.
Hardware Benodigd
Of u kunt de volgende kits kopen:
| 1 | × | DIYables Sensorkit (30 sensoren/displays) | |
| 1 | × | DIYables Sensorkit (18 sensoren/displays) |
Over LED en Geluidssensor
Als u nog niet bekend bent met de LED en geluidssensor (pinout, werking, programmeren, etc.), leer er dan meer over in de volgende tutorials:
Bedradingsschema

This image is created using Fritzing. Click to enlarge image
ESP32 Code - Geluidsschakelaar schakelt LED aan/uit
De onderstaande code schakelt de status van de LED om telkens wanneer geluid wordt gedetecteerd.
Snelle Stappen
- Als u voor het eerst de ESP32 gebruikt, bekijk dan hoe u de omgeving instelt voor ESP32 in Arduino IDE.
- Maak de bedrading zoals in bovenstaande afbeelding.
- Verbind de ESP32 met uw PC via een micro USB-kabel.
- Open Arduino IDE op uw PC.
- Selecteer de juiste ESP32-board (bijv. ESP32 Dev Module) en poort (COM-port).
- Verbind ESP32 met PC via USB-kabel
- Open Arduino IDE, selecteer het juiste board en poort
- Kopieer de bovenstaande code en open deze in Arduino IDE
- Klik op de Upload-knop in Arduino IDE om de code naar ESP32 te uploaden

- Klap in uw handen voor de geluidssensor
- Observeer de verandering in de status van de LED
Code-uitleg
Lees de regel-voor-regel uitleg in de commentaarregels van de broncode!
ESP32 Code - Geluid-geactiveerde LED voor een bepaalde periode
De onderstaande code zet de LED aan voor een bepaalde tijd wanneer er geluid wordt gedetecteerd. Na deze periode wordt de LED weer uitgezet.
Let op: de vorige code maakt gebruik van de delay()-functie, wat eenvoudig te begrijpen is. Echter kan de delay()-functie blokkades veroorzaken wanneer er extra code wordt toegevoegd tijdens de wachttijd. Om dit te voorkomen, maakt de volgende code gebruik van een niet-blokkerende aanpak door de ezLED bibliotheek te gebruiken. De ezLED bibliotheek werkt achter de schermen met de millis()-functie in plaats van delay en voorkomt zo blokkering.
Snelle Stappen
- Als u voor het eerst de ESP32 gebruikt, bekijk dan hoe u de omgeving instelt voor ESP32 in Arduino IDE.
- Maak de bedrading zoals in bovenstaande afbeelding.
- Verbind de ESP32 met uw PC via een micro USB-kabel.
- Open Arduino IDE op uw PC.
- Selecteer de juiste ESP32-board (bijv. ESP32 Dev Module) en poort (COM-port).
- Verbind ESP32 met PC via USB-kabel
- Open Arduino IDE, selecteer het juiste board en poort
- Klik op het Libraries-icoon in de linkerzijbalk van Arduino IDE.
- Zoek naar “ezLED” en zoek de led-bibliotheek van ArduinoGetStarted.
- Klik op de Installeren-knop om de ezLED bibliotheek te installeren.

- Kopieer de bovenstaande code en open deze in Arduino IDE
- Klik op de Upload-knop in Arduino IDE om de code naar ESP32 te uploaden

- Klap in uw handen voor de geluidssensor
- Observeer de verandering in de status van de LED
Video Tutorial
We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.
Bekijk onze video-tutorial voor een visuele begeleiding bij dit project! De video biedt extra inzichten en helpt u stap voor stap het project te voltooien.