|
Датчик движения с голосовым оповещением
с использованием Arduino
Сигнализация с датчиком движения легко доступна на рынке, но стоит дорого. Вот простой и недорогой датчик движения на базе Arduino с голосовым оповещением. Его можно использовать в целях безопасности.
Обычно для наружного наблюдения сигнализация датчика движения состоит из PIR (пассивного инфракрасного) датчика, который обнаруживает движение людей в непосредственной близости. Авторский прототип представлен на рис. 1. Блок-схема датчика движения сигнализации представлена на рис. 2.
Рис. 1: Авторский прототип
Рис. 2: Блок-схема сигнализации датчика движения
Схема и работа
Принципиальная схема датчика движения показана на рис. 3. Он состоит из датчика движения PIR (MS1), Arduino Nano (Board1), аудиоусилителя LM386 (IC1) и 8-омного динамика. Вы можете использовать любую плату Arduino вместо платы Arduino Nano.
Рис. 3: Принципиальная схема сигнализации датчика движения
Установите необходимую библиотеку в Arduino IDE, загрузив библиотеку из Sketch®Include library®Manage Libraries options, как показано на рис. 4. Найдите библиотеку PCM из диспетчера библиотек (см. Рис. 5) и установите ее. Аналогичным образом выполните указанные выше действия и установите библиотеку датчиков PIR.
Рис.4: Менеджер библиотек в Arduino IDE
Рис.5: Поиск в библиотеке PCM из Менеджера библиотек
Кодирование Arduino
Код Arduino (Motion_Detection.ino) написан на языке программирования Arduino.
Инициализируйте библиотеки в коде, а также объявите контакты датчика и индикатора, как показано ниже:
#include int sensorpin = 4; //sensor pin
Int led =13; //indicator pin
Инициализируйте аудиофайл закодированными образцами:
const unsigned char sample [] PROGMEM =
{ 126, 127, 127, 126, 127, 126, 127, 127,
126, 126,….… };
Определите pinMode, используя следующие инструкции:
pinMode (sensorpin,INPUT);
pinMode(led,OUTPUT);
Создайте переменную, которая считывает значение датчика в цифровой форме:
int sensorValue = digitalRead (sensorpin);
Теперь создайте условие, которое сравнивается со значением датчика. Если условие истинно, он выполняет задачу соответствующим образом. Здесь задача - воспроизвести образец аудиофайла и включить светодиодный индикатор (LED1). В противном случае условие ложно, без звукового оповещения и выключенного светодиода LED1. Следующий код выполняет эти задачи:
if (sensorValue == 1)
{
startPlayback(sample,
sizeof(sample));
digitalWrite(led,HIGH);
}
else if (sensorValue == 0)
{
digitalWrite(led,LOW);
}
Компоновка печатной платы датчика движения показана на рис. 6, а расположение ее компонентов - на рис. 7.
Рис.6: Схема печатной платы датчика движения.
Рис.7: Компоновка компонентов печатной платы
Перед сборкой схемы не забудьте загрузить Motion_Detection.ino на плату Arduino Nano. После сборки схемы на печатной плате подключите ИК-датчик через CON1 и 12 В через CON2.
Перекрестно проверьте проводку / соединения в соответствии с принципиальной схемой. Затем включите схему от источника постоянного тока 12 В или аккумулятора на 12 В.
Вы можете установить этот проект на заднем дворе или в любом другом подходящем месте в вашем доме. Затем протяните динамик и провода до вашей комнаты. Кроме того, вы можете подключить его к усилителю мини-динамика через аудиоразъем.
Когда вы включаете цепь, и если кто-то находится перед датчиком PIR, вы будете постоянно слышать голосовое оповещение «тревожное движение» в динамике, пока человек не отойдет от датчика. Этот датчик обнаружит человека на расстоянии до десяти метров в зависимости от чувствительности сенсорного модуля. Вы можете изменить чувствительность, отрегулировав встроенный потенциометр в модуле датчика.
Венкатеш Т.