Arduino Tutorials

Einen Sound Sensor am Arduino verwenden

Sound Sensor am Arduino

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.

Ein auf einer Steckplatine montierter Sound Sensor, der mit einem Arduino verbunden ist.
Sound Sensor am Arduino

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.

Sound Sensor am Arduino
Der Sound Sensor am digitalen Ausgang

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!

*Amazon Affiliate Link – wenn du dort bestellst, erhalten wir eine kleine Provision.

Vielleicht interessiert dich das auch

Kommentare sind nicht verfügbar