Управление светодиодом с помощью датчика звука на Arduino

В этом проекте реализована система управления светодиодом, реагирующая на звуковые сигналы. При обнаружении громкого звука датчик звука, подключенный к Arduino, отправляет сигнал для включения светодиода. Если повторный звук обнаружен в течение 1 секунды, светодиод остается включенным, иначе он выключается. Проект демонстрирует основы работы с датчиками и исполнительными устройствами на платформе Arduino.

Современные технологии позволяют создавать интерактивные устройства, которые реагируют на различные внешние раздражители. В данной статье мы рассмотрим создание системы на базе Arduino, которая включает и выключает светодиод в ответ на звуковые сигналы. Этот проект демонстрирует основы работы с датчиками и исполнительными устройствами на платформе Arduino.

Необходимые компоненты

Для реализации проекта потребуются следующие компоненты:

  • Arduino Uno

  • Датчик звука

  • Светодиод

  • Резистор 220 Ом

  • Соединительные провода

Подключение компонентов

  1. Датчик звука:

  • VCC подключаем к 5V на Arduino.

  • GND подключаем к GND на Arduino.

  • D0 подключаем к цифровому пину 4 на Arduino.

  1. Светодиод:

  • Длинную ножку (анод) светодиода подключаем через резистор 220 Ом к цифровому пину 13 на Arduino.

  • Короткую ножку (катод) светодиода подключаем к GND на Arduino.

Схема подключения

Код программы

Ниже приведен код, который нужно загрузить в Arduino для работы системы:

led_sound_sensor.ino
#include <AlashIRControlRX.h>
// Пины для светодиодов
const int redLedPin = 3;
const int yellowLedPin = 4;
// Создаем объект IR приемника
AlashIRControlRX irReceiver(2); // Пин для IR приемника
void setup() {
  Serial.begin(9600);
  irReceiver.begin(); // Инициируем работу с ИК-приёмником
  // Настраиваем пины для светодиодов как выходы
  pinMode(redLedPin, OUTPUT);
  pinMode(yellowLedPin, OUTPUT);
  // Инициализация светодиодов в выключенном состоянии
  digitalWrite(redLedPin, LOW);
  digitalWrite(yellowLedPin, LOW);
}
void loop() {
  if (irReceiver.check()) {
    if (irReceiver.data == 0xFFA25D) { // Кнопка 1
      digitalWrite(redLedPin, !digitalRead(redLedPin)); // Переключаем состояние красного светодиода
    }
    else if (irReceiver.data == 0xFF629D) { // Кнопка 2
      digitalWrite(yellowLedPin, !digitalRead(yellowLedPin)); // Переключаем состояние желтого светодиода
    }
  }
}

Заключение

Этот проект демонстрирует, как легко можно использовать микроконтроллер Arduino для создания интерактивных систем, реагирующих на звуки. Применение такой системы может быть разнообразным, от включения света в ответ на хлопок до создания сложных взаимодействий в умных домах.

Создание подобных проектов помогает лучше понять основы электроники и программирования, а также вдохновляет на разработку новых, более сложных и полезных устройств.