Mit einem Sound Sensor Modul für den Arduino kann man ganz einfach laute Geräusche wie z.B. Händeklatschen oder Klopfen erkennen und darauf reagieren.
Die gängigen Schallsensoren aus den verschiedenen Arduino Starter Kits basieren meistens auf einem Operationsverstärker wie dem IC LM393. Damit wird die vom Mikrofon erzeugte Spannung mit dem Operationsverstärker verstärkt und mit der über ein Potentiometer eingestellten Referenzspannung verglichen. In Ausgang des Moduls wird dann dem Ergebnis entsprechend gesetzt und kann mit dem Arduino ausgelesen werden.
Im Video zeige ich, wie man mit dem Arduino und wenigen Zeilen Programmcode mit einem lauten Geräusch zwischen zwei LEDs umschalten kann. Mit ähnlichem Programmcode könnte man aber natürlich auch einen Servo oder ein Relais ansteuern.
Mehr dazu im folgenden Tutorial Video:
Und hier der Arduino Sketch, der im Video verwendet wird:
// Pins definieren
const int greenPin = 12;
const int redPin = 13;
const int soundPin = 7;
// Aktueller Status, boolean kann nur false/0 oder true/1 sein
// d.h. "not 0" = 1 und "not 1" = 0
// statt "not" kann man auch "!" schreiben
boolean greenLedStatus = false;
// Wie lange warten nach Ton?
const int pauseDelay = 200;
void setup() {
// Pins konfigurieren und LEDs auf Start setzen
Serial.begin(9600);
pinMode(soundPin, INPUT);
pinMode(greenPin, OUTPUT);
pinMode(redPin, OUTPUT);
digitalWrite(greenPin, greenLedStatus);
digitalWrite(redPin, !greenLedStatus);
}
void loop() {
// Digitalpin 7 auslesen und bei LOW umschalten
int din = digitalRead(soundPin);
if (!din) {
greenLedStatus = !greenLedStatus;
digitalWrite(greenPin, greenLedStatus);
digitalWrite(redPin, !greenLedStatus);
// Das HIGH ist nicht ganz logisch, da am Pin ja eigentlich ein LOW anliegt :)
Serial.println("HIGH!");
delay(pauseDelay);
}
}
Das im Video verwendete Schallsensor-Modul stammt aus einem Elegoo Ultimate Starter Kit, das ich als umfangreiche Sammlung von Bauteilen für den Einstieg empfehlen kann.
Hallo Adi
Schön wieder etwas von dir zu lesen
Cool!
kann man eigentlich damit auch eine gpio lampe ansteuern?