Интернет-магазин «Неглупый Дом»
HC-SR501 выдаёт HIGH при движении в зоне обзора — этого достаточно, чтобы напрямую управлять зуммером.
HC-SR501 — пироэлектрический (PIR) датчик: реагирует на изменение инфракрасного теплового излучения в поле зрения купольной линзы, поэтому хорошо ловит движение человека или животного и почти не реагирует на холодные предметы.
На плате два подстроечных резистора — чувствительность (дальность 3-7 м) и время удержания HIGH после срабатывания, а рядом джампер режима: одиночный импульс (L) или повторный (H). Для сигнализации удобнее H — выход держится HIGH, пока есть движение.
Так как реализации модуля бывают разные, если у вас нет тех контактов, что указаны ниже — сориентируйтесь по названиям на своей плате.
// ВНИМАНИЕ: лучше отладить код через монитор порта, я языковая модель,
// а не специализированный кодер, могу что-то упустить.
const int pirPin = 2;
const int buzzerPin = 8;
const unsigned long calibrationTime = 30000; // время калибровки датчика, мс
void setup() {
pinMode(pirPin, INPUT);
pinMode(buzzerPin, OUTPUT);
Serial.begin(9600);
Serial.println("Калибровка...");
delay(calibrationTime);
Serial.println("Датчик готов");
}
void loop() {
int motion = digitalRead(pirPin); // состояние выхода датчика
if (motion == HIGH) {
Serial.println("Движение!");
}
digitalWrite(buzzerPin, motion == HIGH ? HIGH : LOW);
}
Чувствительность и время удержания настраиваются подстроечными резисторами на плате экспериментальным путём под конкретное помещение.
Ещё модули для Arduino: Электронные модули.
🎁 Купить весь комплект со скидкой 10%
Все 2 товара сразу: 175 ₽ 158 ₽ (экономия 17 ₽)
Скидка применяется автоматически при оформлении заказа, если в корзине именно этот комплект.
Остались вопросы? Проконсультируйтесь с ИИ-инженером — он уже в курсе темы статьи и сразу ответит, ничего вводить не нужно.