Как подключить датчик звука к Ардуино
1. Обзор
Рассмотрим аналоговый датчик звука для Ардуино. Расскажем, как подключить датчик звука к микроконтроллеру Arduino, разберем программу для автоматического включения света от хлопка в ладоши и получения показаний датчика звука на последовательном мониторе порта Arduino IDE. Рассмотрим использование в программе тип данных boolean, который часто применяется в языке C++.
2. Датчик звука (микрофон) для Arduino
Состоит датчик из платы (смотри картинку ниже), на котором смонтированы порты подключения к Arduino Nano, усилитель звука, подстроечный резистор и электронный микрофон, чувствительный к звуку, приходящему во всех направлениях. Регулятором чувствительности (переменным резистором) можно настраивать чувствительность микрофона и выбирать, от какого уровня шума будет срабатывать датчик.

Датчик звука KY-037
Данная плата расширения для Arduino позволяет перевести звуковые колебания в цифровой сигнал. При колебании мембраны в микрофоне от звуковых волн, изменяется емкость его конденсатора, вследствие чего проявляется изменение напряжения на выходах датчика звука, соответствующее звуковому сигналу. Сенсор слева на картинке может отправлять цифровой и аналоговый сигнал.
3. Как подключить датчик звука к Arduino

Для этого занятия потребуется:
Arduino Uno / Arduino Nano / Arduino Mega;
макетная плата;
датчик звука KY-037 (микрофон);
1 светодиод и 1 резистор 220 Ом;
провода «папа-папа» и «папа-мама».
Датчик звука для Ардуино имеет на плате подписанные выходы (обозначение у каждого производителя может отличаться), но проблем с подключением датчика к Ардуино возникнуть не должно. Питание датчика производится от 5V, выход (OUT, S или AO) подключается к любому аналоговому входу на Arduino Uno, а выход DO к Pin 2, если требуется получать цифровой сигнал на Ардуино с датчика микрофона.
Схема подключения датчика звука к Arduino:
DO → Pin 2
+ → 5V
G → GND
A0 → A0

4. Схема включения света по хлопку
Чтобы сделать своими руками светильник, который будет включаться по хлопку в ладоши, необходимо собрать электрическую схему из следующих элементов: светодиод с резистором, плата Arduino и датчик звука KY-037 для включения света своими руками. Светодиод можно подключить к любому выходу, в скетче мы использовали Pin 11. После сборки схемы подключите Ардуино к компьютеру и загрузите скетч.
5. Скетч для включения света по хлопку
boolean statuslamp; // состояние лампы: true - включено, false - выключено
void setup() {
pinMode(12, OUTPUT); // пин 12 со светодиодом будет выходом (англ. «output»)
pinMode(A0, INPUT); // к аналоговому входу A0 подключим датчик (англ. «input»)
statuslamp = false; // начальное состояние - лампа выключена
Serial.begin(9600); // подключаем монитор порта
}
void loop() {
Serial.println(analogRead(A0)); // выводим значение датчика на монитор
if (analogRead(A0) > 60) {
statuslamp = !statuslamp; // меняем статус лампы при регистрации хлопка
digitalWrite(12, statuslamp); // переключаем светодиод на выходе 12
delay(20); // задержка, "дребезга" хлопков
}
}
6. Пояснения к коду
спецификатор
boolean
используется для объявления логических значений (истина/ложь) в языке программирования C++;в строчке
statuslamp = !statuslamp;
мы меняем статус лампы при хлопке;в строчке
if(analogRead(A0) > 60)
вместо значения 60 можно подставить любое значение. Узнайте показания датчика звука KY-037 при хлопке в ладоши на мониторе порта и поставьте свои значения в скетч при необходимости.