ESP32 - Schallsensor
Der Geräuschsensor kann die Anwesenheit von Geräuschen in seiner Umgebung erkennen. Er kann verwendet werden, um trendige schallreaktive Projekte zu erstellen, wie Lichter, die sich bei einem Klatschen einschalten, oder einen Tierfutterspender, der auf Geräusche reagiert.
In diesem Tutorial lernen wir, wie man den ESP32 und einen Schallsensor verwendet, um Schall zu erkennen. Wir befassen uns mit Folgendem:
- Den Schallsensor mit dem ESP32 verbinden
- Den ESP32 so programmieren, dass er Geräusche mit dem Schallsensor erkennt

Daraufhin haben Sie die Flexibilität, den Code so anzupassen, dass eine LED oder ein Licht (über ein Relais) bei der Geräuschdetektion ausgelöst wird, oder sogar einen Servomotor rotieren lässt.
Erforderliche Hardware
Oder Sie können die folgenden Kits kaufen:
1 | × | DIYables ESP32 Starter-Kit (ESP32 enthalten) | |
1 | × | DIYables Sensor-Kit (30 Sensoren/Displays) | |
1 | × | DIYables Sensor-Kit (18 Sensoren/Displays) |
Über Schallsensor
Der Schallsensor kann verwendet werden, um Schall in der Umgebung zu erkennen. Es gibt zwei Arten von Schallsensor-Modulen:
- Digitales Schallsensor-Modul: gibt den digitalen Signalwert aus (AN/AUS)
- Analoges Schallsensor-Modul: gibt sowohl analoge als auch digitale Signalwerte aus
Die Empfindlichkeit des digitalen Ausgangs kann durch die Verwendung eines eingebauten Potentiometers eingestellt werden.
Die Pinbelegung des digitalen Schallsensors
Der digitale Schallsensor umfasst drei Pins:
- VCC-Pin: muss mit VCC verbunden werden (3,3 V bis 5 V)
- GND-Pin: muss mit GND verbunden werden (0 V)
- OUT-Pin: ist ein Ausgangspin: HIGH, wenn kein Geräusch vorhanden ist, und LOW, wenn Geräusch erkannt wird. Dieser Pin muss mit dem Eingangspin des ESP32 verbunden werden.

Der Schallsensor verfügt über ein praktisches, eingebautes Potentiometer, mit dem Sie die Empfindlichkeit ganz einfach einstellen können. Zusätzlich verfügt er über zwei LED-Indikatoren:
- Eine LED-Anzeige zeigt den Stromstatus an.
- Eine weitere LED-Anzeige zeigt den Geräuschstatus an und leuchtet, wenn Geräusche erkannt werden, und geht aus, wenn es still ist.
Pinbelegung des analogen Geräuschsensors
Der analoge Klangsensor verfügt über vier Anschlüsse:
- + Pin: muss mit 5V verbunden werden
- G Pin: muss mit GND (0V) verbunden werden
- DO Pin: ist ein digitaler Ausgangspin: HIGH, wenn ruhig und LOW, wenn Geräusch erkannt wird. Dieser Pin muss mit dem digitalen Eingangspin des ESP32 verbunden werden.
- AO Pin: ist ein analoger Ausgangspin: gibt den analogen Wert des gemessenen Geräuschpegels aus. Dieser Pin muss mit dem analogen Eingangspin des ESP32 verbunden werden.

Der analoge Schallsensor verfügt über ein praktisches integriertes Potentiometer, das es Ihnen ermöglicht, seine Empfindlichkeit für den digitalen Ausgang bequem einzustellen. Zusätzlich ist er mit zwei LED-Anzeigen ausgestattet:
- Eine LED-Anzeige zeigt den Stromstatus.
- Eine weitere LED-Anzeige signalisiert den Geräuschstatus und leuchtet, wenn ein Geräusch erkannt wird, und erlischt, wenn es ruhig ist.
Wie es funktioniert
Das Modul verfügt über ein praktisches integriertes Potentiometer, mit dem Sie die Geräuschempfindlichkeit einstellen können. So verhält sich der Ausgangspin des Sensors:
- Wenn Ton erkannt wird, wird der Ausgangspin auf LOW gesetzt.
- Wenn kein Ton erkannt wird, wird der Ausgangspin auf HIGH gesetzt.
Verdrahtungsdiagramm
- Wie man ESP32 und Schallsensor mit Steckbrett verbindet

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.
Wenn Sie nicht wissen, wie Sie ESP32 und andere Komponenten mit Strom versorgen, finden Sie Anleitungen im folgenden Tutorial: Wie man ESP32 mit Strom versorgt.
- Wie man ESP32 und Schallsensor mithilfe eines Schraubklemmen-Breakout-Boards verbindet.

Wie man für einen Schallsensor programmiert
- Initialisiert den ESP32-Pin in den digitalen Eingabemodus, indem die Funktion pinMode() verwendet wird. Zum Beispiel der Pin GPIO18.
- Liest den Zustand des ESP32-Pins durch die Verwendung der digitalRead()-Funktion.
ESP32-Code - Das Geräusch erkennen
Schnelle Schritte
- Wenn Sie ESP32 zum ersten Mal verwenden, sehen Sie sich an, wie man die Umgebung für ESP32 in der Arduino-IDE einrichtet.
- Kopieren Sie den obigen Code und öffnen Sie ihn in der Arduino-IDE.
- Klicken Sie auf die Schaltfläche Hochladen in der Arduino-IDE, um den Code auf den ESP32 hochzuladen.
- Klatschen Sie vor dem Lautsensor.
- Sehen Sie das Ergebnis im seriellen Monitor.
Bitte beachten Sie, dass der LED-Status auch dann konstant ein- oder ausgeschaltet bleiben kann, wenn Geräusche vorhanden sind; möglicherweise müssen Sie das Potentiometer einstellen, um die Geräuschempfindlichkeit des Sensors fein abzustimmen.
Jetzt haben wir die Freiheit, den Code zu personalisieren und ihn so zu programmieren, dass er eine LED oder eine Leuchte auslöst, wenn ein Ton erkannt wird. Wir können sogar einen Servomotor entsprechend dem Tonsignal drehen lassen. Für detailliertere Hinweise und Schritt-für-Schritt-Anleitungen kannst du die am Ende dieses Tutorials bereitgestellten Anleitungen verwenden.
Fehlerbehebung
Falls Sie Probleme mit der Funktionsfähigkeit des Schallsensors feststellen, ziehen Sie bitte die folgenden Schritte zur Fehlerbehebung in Betracht:
- Vibrationen reduzieren: Mechanische Vibrationen und Windgeräusche können die Leistung des Schallsensors beeinträchtigen. Um diese Störungen zu minimieren, versuchen Sie, den Schallsensor auf einer stabilen Oberfläche zu montieren.
- Beachten Sie den Erfassungsbereich: Bedenken Sie, dass dieser spezielle Schallsensor einen begrenzten Erfassungsbereich von etwa 25,4 cm hat. Für genaue Messwerte versuchen Sie, Schall näher am Sensor zu erzeugen.
- Stromversorgung prüfen: Stellen Sie sicher, dass die Stromversorgung sauber und frei von Störungen ist, da der Schallsensor aufgrund seiner analogen Natur empfindlich gegenüber Störungen der Stromversorgung ist.
Video Tutorial
Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.