Lekce 15

Zvukový senzor

Patnáctá lekce Arduino kurzu pro začátečníky: zapojíte zvukový senzor s mikrofonem a necháte ho rozsvítit LED, jakmile uslyší hluk. Ukážeme si zapojení, čtení analogového vstupu funkcí analogRead i kód do Arduino IDE – když do mikrofonu mluvíte nebo zakřičíte, LED se rozsvítí. Základ pro zvukem ovládané projekty.

🧩Co budeš potřebovat
Arduino USB kabel Zvukový senzor (modul s mikrofonem) Propojovací vodiče
🔌Zapojení
Schéma zapojení Arduino – zvukový senzor (mikrofon) s výstupem A0 a signalizační LED na pinu 13

Popisek obrázku: modul mikrofonu připojíte čtyřmi vodiči. Analogový výstup AO na pin A0, G na GND, napájení + na 3,3 V a digitální výstup DO na pin 8. Jako signalizace poslouží vestavěná LED u pinu 13.

🔗Připojení pinů
Zvukový senzorArduino
AO (analogový výstup)A0
G (zem)GND
+ (napájení)3,3V
DO (digitální výstup)pin 8
💡Jak to funguje

Mikrofon na modulu převádí zvuk na elektrický signál. Modul má dva výstupy: analogový AO, který sleduje hlasitost v reálném čase, a digitální DO, který se přepne, jakmile zvuk překročí práh nastavený malým potenciometrem na modulu. V tomto pokusu čteme analogový výstup AO funkcí analogRead z pinu A0. Když naměřená hodnota překročí nastavenou mez, Arduino vyhodnotí, že je kolem hluk, a rozsvítí LED.

Postup
  1. Zapojte modul podle tabulky výše – AO na A0, napájení na 3,3 V a G na GND.
  2. Zkopírujte kód do Arduino IDE, zkompilujte ho a nahrajte do Arduina.
  3. Mluvte nebo zakřičte do mikrofonu a sledujte, jak se rozsvítí LED u pinu 13.
</>Kód
lekce15_zvukovy_senzor.ino
// Zvukový senzor
// Hladinu intenzity zvuku uvidíte na sériovém monitoru.
// Pokud dosáhne hlasitost určité hodnoty, LED na Arduinu se rozsvítí.
// Email: podpora@laskakit.cz · Web: laskakit.cz

const int ledPin = 13;            // pin LEDky (vestavěná LED)
const int soundPin = A0;          // pin zvukového senzoru

void setup() {
  pinMode(ledPin, OUTPUT);        // LED jako výstup
  Serial.begin(9600);            // spustit sériový monitor na 9600 Bd
}

void loop() {
  int value = analogRead(soundPin);  // přečíst hodnotu ze senzoru
  Serial.println(value);          // vypsat hodnotu do sériového monitoru
  if (value > 25) {               // pokud je hodnota větší než 25
    digitalWrite(ledPin, HIGH);   // zapnout LEDku
    delay(2000);                  // nechat svítit 2 s
  } else {
    digitalWrite(ledPin, LOW);    // jinak ji vypnout
  }
}
Výsledek
💡
Po nahrání mluvte nebo zakřičte do mikrofonu – vestavěná LED u pinu 13 se rozsvítí a chvíli zůstane svítit. V sériovém monitoru přitom vidíte, jak hodnota zvuku skáče podle hlasitosti. Máte hotový jednoduchý detektor hluku!
Časté chyby
?Kontrolní otázka

QKterý výstup modulu tento kód čte?