Подключение детектора движения HC-SR к ардуино
11 мая 2019 - Администратор
Комментарии (0)
Нет комментариев. Ваш будет первым!
На этом уроке мы узнаем как подключить и запрограммировать детектор движения на Arduino, рассмотрим пример схемы простешейшей сигнализации на Arduino, разберем программу для простейшей сигнализации в среде IDE Arduino
Детектор движения позволяет фиксировать передвигающийся объект на расстоянии до нескольких метров, например движение человека. Датчик движения подключенный к ардуино может использоваться во многих проектах таких, как сигнализация на ардуино и пожарная сигнализация. Подключение датчика движения к Arduino.
Светодиод подключается через резистор на 220 Ом к цифровому порту 13. Подробное подключение светодиода рассматривалось на уроке Подключение и управление светодиодами с помощью Arduino
Датчик движения подключается к цифровому порту 7 ардуино.
Gnd датчика движения подключается к цифровому порту gnd ардуино.
Vcc датчика движения подключается к цифровому порту 5v ардуино.
Подробнее со схемой подключения детектора движения к ардуино можно ознакомится на рисунке.
Для использования датчика движения в программах ардуино не нужно подключать никаких специальных библиотек. это цифровой датчик, если объект движется он передает значение HIGH. Напишем пример программы для простейшей сигнализации на ардуино. Если человек двигается в области детектора движения, то загорается светодиод. чтобы записать значение датчика используется стандартная функция digitalRead.
int dSch = digitalRead(dPin);
Потом мы должны проверить в условии if сработал ли датчик , если сработал , то зажигаем светодиод
if (dSch == HIGH) {
digitalWrite(svPin, HIGH); // то зажигаем светодиод
delay(300);
}
Переменная для хранения значения датчика движения.
#define dPin 7
Переменная для светодиода.
#define sPin 13
Запись значения датчика в переменную
int dSch = digitalRead(dPin);
Полная программа для простейшей сигнализации на ардуино
#define dPin 7 // подключение датчика к цифровому пину 7 ардуино
#define svPin 13// светодиода к цифровому пину 13 ардуино
void setup() {
Serial.begin(9600);
pinMode(dPin, INPUT); //активация на считывание датчика движения
pinMode(svPin, OUTPUT); //активация светодиода
}
void loop() {
int dSch = digitalRead(dPin); //запись значения датчика в переменную
//если есть движение
if (dSch == HIGH) {
digitalWrite(svPin, HIGH); // то зажигаем светодиод
delay(300);
}
//если движения нет
if (dSch == LOW) {
digitalWrite(svPin, LOW); //то гасим светодиод
delay(300);
}
}
Поделиться:
Нет комментариев. Ваш будет первым!