Привет! Вы наверняка видели светильники, которые включаются от хлопков в ладоши. И если вы хотели такой же, этот обзор для вас. Потому что, сегодня рассмотрим датчик звука KY-037 для Ардуино, который поможет нам сделать такой же переключатель.
В прошлый раз мы рассматривали другой датчик для Ардуино. Датчик препятствий KY-033, так что, посмотрите этот обзор, если пропустили или уже забыли.
Датчик звука KY-037 — это небольшая плата с микрофоном, усилителем и переменным резистором, чтобы настроить чувствительность вручную.
Микрофон преобразует колебания звука в электрический сигнал. Его необходимо усилить с помощью компаратора, чтобы считать на Ардуино.
Как видно, датчик имеет 4 контакта. А значит два вида сигналов — аналоговый и цифровой. Разумеется, мы сможем их использовать в программе, так как при срабатывании датчика на выходе появится логическая 1 или значение близкое к 1024 на аналоговом выходе.
Датчик звука KY-037. Ардуино проект.
Технические характеристики
- Напряжение питания: 3,3 — 5 В
- Цифровой и аналоговый вывод
- Максимальное расстояние обнаружения – 5 м
- Размер модуля: 32×17×15 мм
- Общий вес: 12.5 г
Датчик звука KY-037
- A0 – Аналоговый вывод
- G – Земля
- + – 3,3 — 5 В
- D0 — Цифровой вывод
Прежде всего, обратите внимание на маркировку контактов на плате датчика. Порядок контактов может быть разным.
Как видно на графиках ниже, чувствительность датчика может быть разной. В результате на цифровом порту может быть сложно получить четкое срабатывание датчика. Поэтому, мы запрограммируем обработку сигнала с аналогового выхода.
Для того, чтобы выполнить этот урок нам понадобиться.
- Ардуино UNO
- Макетная плата
- Перемычки
- Датчик KY-037
- Кабель USB
Программа
Как видно, программа достаточно проста. Мы считаем данные с цифрового и аналогового порта. Выведем их в монитор последовательного порта. Так же используем плоттер для построения графиков. И настроим включение светодиода на хлопок в ладоши.
На мониторе последовательного порта виден уровень повседневного шума. Это нормальное состояние, в зависимости от которого мы настроим обработку аналогового сигнала. Этот уровень настраивается вручную с помощью подстроечного резистора.
В результате, на мониторе плоттера видно небольшие отклонения графика. Это и есть хлопки в ладоши рядом с микрофоном.
Полный текст программы
const int digital = 2; const int analog = A5; const int led = 13; void setup() < pinMode(led, OUTPUT); Serial.begin(9600); >void loop() < Serial.print(«Digital: «); Serial.print(digitalRead(digital)); Serial.print(«, Analog: «); Serial.println(analogRead(analog)); delay(50); if (analogRead(analog) < 520 || analogRead(analog) >535) < digitalWrite(led, HIGH); delay(1000); digitalWrite(led, LOW); >>
Заключение
Подключение микрофонного модуля KY-038/KY-037.
Урок 6. Датчик звука
Модули KY-038 и KY-037 представляют собой датчики звука. Отличие версии 037 от 038 лишь в размере микрофона. Эти модули находят свое применение в различных системах управления. Например, такие модули часто устанавливают в подъездах для включения освещения при звуке шагов, что позволяет значительно сэкономить электроэнергию. Также с помощью этих модулей можно управлять роботом посредством хлопков или других звуков.
Модуль состоит из микрофона и потенциометра, позволяющего регулировать чувствительность датчика. Также в модуле имеется компаратор – устройство, посылающее цифровой сигнал при достижении аналоговым сигналом на входе определенных значений.
Характеристики:
- Питание: 3,3-5 В постоянного тока
- Потребляемый ток: 10 мА
- Выходной сигнал: цифровой и аналоговый
Модуль имеет 4 вывода:
“A0” – аналоговый выход, передающий выходное напряжения на микрофоне
“D0” – цифровой выход, посылающий логическую единицу при достижении порогового уровня громкости
Подключение к Arduino:
Для подключения датчика нам необходимы:
- Любая Arduino-совместимая плата
- Компьютер с установленной средой Arduino IDE.
- USB кабель для подключения Arduino к персональному компьютеру
В примере мы будем рассматривать подключение при помощи проводов типа папа-папа и макетной платы для соединения без пайки.
1) Для начала просто подключим датчик к плате, для анализа выходных сигналов.
Принципиальная схема подключения компонентов:
const int digital = 2; // Цифровой вход пин 2 const int analog = A0; // Аналоговый вход пин A0 void setup() pinMode(digital, INPUT); Serial.begin(9600); > void loop() Serial.
print(«Digital: «); Serial.print(digitalRead(digital)); // Цифровой сигнал с датчика Serial.print(«, Analog: «); Serial.println(analogRead(analog)); // Аналоговый сигнал с датчика delay(50); >
После того как этот скетч загрузится в плату, откройте монитор порта и наблюдайте за получаемыми значениями в тишине и при возникновении шума.
Попробуйте изменить чувствительность датчика, вращая винт потенциометра и повторите наблюдение.
2) Теперь добавим в нашу схему светодиод и попробуем управлять им с помощью хлопков.
Для подключения светодиода необходим резистор номиналом около 220 Ом.
Принципиальная схема подключения компонентов:
const int digital = 2; // Цифровой вход пин 2 const int analog = A0; // Аналоговый вход пин A0 const int led = 9; // Светодиод void setup() pinMode(led, OUTPUT); Serial.begin(9600); > void loop() Serial.print(«Digital: «); Serial.print(digitalRead(digital)); // Цифровой сигнал с датчика Serial.print(«, Analog: «); Serial.println(analogRead(analog)); // Аналоговый сигнал с датчика delay(50); if (analogRead(analog) 625 || analogRead(analog) > 637) //Диапазон значений устанавливайте самостоятельно из расчёта +-4 от показаний в тишине digitalWrite(led, HIGH); delay(1000); digitalWrite(led, LOW); > >
Источник: www.yourduino.ru
Как подключить датчик звука (микрофон) к Arduino