Рассмотрим в этом обзоре датчик звука Arduino ky-038 (ky-037), как подключить датчик звука к микроконтроллеру Arduino. Разберем программу автоматического включения света от хлопков в ладоши, схему и программу для сенсора шума с выводом информации на последовательный порт монитора Arduino IDE. Рассмотрим на примере использование в скетче типа данных boolean, который часто используется в языке программирования C++.
СОДЕРЖАНИЕ
Необходимые компоненты:
- Arduino Uno / Arduino Nano / Arduino Mega
- датчик звука ky-038
- светодиоды и резисторы
- макетная плата
- коннекторы
Дополнительные материалы на эту тему:
Датчик Arduino ky-037 (ky-038) состоит из платы (смотри рисунок ниже), на которой установлены контакты для подключения к плате Arduino Uno или Nano, усилителя звука, потенциометра и электронного микрофона, чувствительного к звукам со всех направлений. С помощью переменного резистора (потенциометра) можно настроить чувствительность микрофона на сенсоре и выбрать, при каком уровне шума будет срабатывать датчик.
Датчик звука Arduino принцип работы, распиновка

Модуль KY-038 Arduino характеристики (datasheet)
- Напряжение питания: 3.3 – 5 В
- Диапазон частот микрофона: 100 – 10000 Гц
- Чувствительность микрофона: 46 ± 2.0, ( 0 дБ = 1 В / Pa ) на 1 кГц
- Рабочая температура: от 0°C до 70°C
Этот модуль позволяет преобразовывать звуковые волны в цифровой сигнал. Когда мембрана микрофона колеблется под воздействием звуковых волн, емкость его конденсатора изменяется, что приводит к изменению напряжения на выходах датчика звука Arduino ky-038 (ky-037), соответствующего звуковому сигналу. Модуль, изображенный на рисунке выше, может генерировать как цифровой, так и аналоговый сигнал.
Как подключить датчик звука к Ардуино ky-038 (ky-037)

Датчик звука Arduino имеет подписанные выходы на плате (обозначение может быть разным у каждого производителя), но у вас не должно возникнуть проблем с подключением датчика к микроконтроллеру Arduino. Датчик питается от 5 Вольт, выход (OUT, S или AO) подключается к любому аналоговому входу на плате Arduino. Контакт DO подключается к цифровому пину, если вы хотите получить цифровой сигнал с датчика микрофона.
Скетч для датчика звука Ардуино (микрофона)
#define RED 10
#define ORG 11
#define GRN 12
#define SOUND A1
void setup() {
Serial.begin(9600);
pinMode(GRN, OUTPUT);
pinMode(ORG, OUTPUT);
pinMode(RED, OUTPUT);
pinMode(SOUND, INPUT);
}
void loop() {
Serial.println(analogRead(SOUND));
if(analogRead(SOUND) < 50) {
digitalWrite(GRN, HIGH);
digitalWrite(ORG, LOW);
digitalWrite(RED, LOW);
}
if(analogRead(SOUND) > 50 and analogRead(SOUND) < 100) {
digitalWrite(GRN, HIGH);
digitalWrite(ORG, HIGH);
digitalWrite(RED, LOW);
}
if(analogRead(SOUND) > 100) {
digitalWrite(GRN, HIGH);
digitalWrite(ORG, HIGH);
digitalWrite(RED, HIGH);
}
delay(50);
}
Заключение. В модуль ky-037 встроен микрофон, а также электроника, позволяющая использовать 2 выхода (аналоговый и цифровой) для обнаружения окружающих звуков с Arduino или совместимого модуля. Цифровой выход выдает высокий или низкий уровень в зависимости от порогового уровня окружающего шума, а аналоговый выход модуля выдает напряжение, изменяющееся в реальном времени в зависимости от шума в помещении.
