Ein Sound Sensor – oder auch Geräuschsensor – ist ein Klassiker unter den Sensoren. In diesem Tutorial erfährst du, wie du den beliebten KY-037* anschließt und damit Geräusche sowohl analog als auch digital im Arduino verarbeitest.
Aufbau des Sound Sensors
Die wichtigsten Bauteile des Geräuschsensors, den du hier kennenlernst, sind: das Mikrofon, ein Komparator (hier der LM393, der zwei Spannungen miteinander vergleicht) und ein Potentiometer (um den Schwellenwert einzustellen). Du schließt den Sensor über mindestens 3 der 4 Pins an – Anode, Kathode, Analog- und/oder Digitalausgang.
Anschluss am digitalen Ausgang
Du kannst den Sound Sensor auf zwei Arten an deinem Arduino Board anschließen – analog oder digital. Der digitale Anschluss ist sinnvoll, wenn du etwas in Gang setzen möchtest, sobald ein lautes Geräusch erkannt wird. Das könnte zum Beispiel ein Klopfen an der Tür, oder ein Knall sein. So schließt du deinen Sensor an:
Versorge deinen Sensor wie vorgesehen mit Strom und schließe den digitalen Ausgang (DO) am Arduino am digitalen Eingang 2 an. Der Sensor selbst besitzt schon eine LED, die anzeigt, wenn ein Geräusch empfangen wurde. Spaßeshalber kannst du aber auch noch selbst eine LED installieren, wie ich auf dem Foto.
Lade jetzt den folgenden Sketch auf deinen Arduino und schon kann es losgehen.
int sensor = 2;
int LED = 12;
int noise = 0;
void setup() {
pinMode(sensor, INPUT);
pinMode(LED, OUTPUT);
}
void loop() {
noise = digitalRead(sensor);
if (noise == 1){
digitalWrite(12, HIGH);
}else{
digitalWrite(12, LOW);
}
}
Sollte deine LED jetzt dauerhaft brennen, bedeutet das, dass der Sensor durchgehend ein Geräusch erkennt. Nimm jetzt einen kleinen Schraubendreher zur Hand und drehe die Schraube am Potentiometer nach links – solange bis die LED ausgeht.
Jetzt mache direkt neben dem Mikrofon ein lautes Geräusch – schnippe zum Beispiel mit den Fingern. Die LED sollte kurz aufleuchten. Falls nicht – drehe die Schraube wieder leicht nach rechts. Mit etwas Fingerspitzengefühl findest du die richtige Feinjustierung.
Und jetzt der analoge Ausgang
Wenn du den Sound Sensor analog anschließt, erhältst du in Echtzeit ein Feedback zur Lautstärke. So kannst du zum Beispiel eine LED aufleuchten lassen, sobald eine bestimmte Lautstärke überschritten wird.
Verbinde den Sensor hierfür vom analogen Ausgang (AO) mit dem analogen Eingang A0 am Arduino. Lade nun folgenden Sketch hoch.
int sensor = A0;
int LED = 12;
int noise = 0;
void setup() {
Serial.begin(9600);
pinMode(sensor, INPUT);
pinMode(LED, OUTPUT);
}
void loop() {
noise = analogRead(sensor);
Serial.println(noise);
if (noise > 200){
digitalWrite(12, HIGH);
}else{
digitalWrite(12, LOW);
}
}
Um die Lautstärke besser verfolgen zu können, starten wir den Seriellen Monitor und lassen die die Werte des Sensors dort ausgeben. Auch hier ist wieder etwas Feinjustierung nötig. Stelle das Potentiometer so ein, dass du im seriellen Monitor Werte siehst, du etwas unter 200 liegen. Wenn du jetzt ein Geräusch machst, das laut genug ist, dass der Wert über 200 schnellt, sollte die LED aufleuchten.
Du siehst also, es reicht hier nicht, dass ein Geräusch erkannt wird. Dieses Geräusch muss auch noch laut genug sein, um die LED anzuschalten.
Für welche Projekte der digitale und analoge Anschluss der richtige sein könnte, überlasse ich dir. Sicherlich findest du eine spannende Anwendung!
Weiter Anleitungen zu Bauteilen und vollständige Arduino Projekte findest du in unserem Buch für angehende Maker:
- Kumbartzki, Frederik (Autor)
Letzte Aktualisierung am 2024-12-21 / Affiliate Links / Bilder von der Amazon Product Advertising API