PIR-датчик движения: Принцип работы и руководство по интеграции с Arduino
В этом уроке Arduino мы узнаем, как работает PIR-датчик и как использовать его с платой Arduino для обнаружения движения. Вы можете посмотреть следующее видео или прочитать письменный урок ниже. Сначала объясним принцип работы. Модуль фактически состоит из пироэлектрического датчика, который генерирует энергию при воздействии тепла. Это означает, что когда человеческое или животное тело попадет в диапазон действия датчика, он обнаружит движение, потому что человеческое или животное тело излучает тепловую энергию в виде инфракрасного излучения. Отсюда и название датчика — пассивный инфракрасный датчик (Passive Infra-Red sensor). Термин «пассивный» означает, что датчик не использует никакой энергии для целей обнаружения, он просто работает, обнаруживая энергию, излучаемую другими объектами. Модуль также состоит из специально разработанного накладки под названием линза Френеля, которая фокусирует инфракрасные сигналы на пироэлектрический датчик. Модуль имеет всего три вывода: землю и VCC для питания модуля и выходной вывод, который выдает высокий логический уровень при обнаружении объекта. Также у него есть два потенциометра. Один для регулировки чувствительности датчика, а другой для регулировки времени, в течение которого выходной сигнал остается высоким при обнаружении объекта. Это время можно регулировать от 0.3 секунд до 5 минут. Модуль имеет еще три вывода с перемычкой между двумя из них. Эти выводы предназначены для выбора режимов срабатывания. Первый называется «неповторяющееся срабатывание» и работает так: когда выход датчика высокий, и время задержки истекло, выход автоматически изменится с высокого на низкий уровень. Другой режим, называемый «повторяющееся срабатывание», будет держать выход высоким все время, пока обнаруженный объект находится в диапазоне действия датчика. Вы можете приобрести компоненты на любом из сайтов ниже: В качестве примера для этого урока я сделаю схему, которая включит высоковольтную лампу, когда датчик обнаружит объект. Вот схема подключения. Выходной вывод датчика будет подключен к выводу номер 8 на плате Arduino, и когда объект будет обнаружен, вывод номер 7 активирует модуль реле, и высоковольтная лампа включится. Для получения более подробной информации о том, как работает модуль реле, вы можете проверить мой урок Arduino Relay Tutorial. (Имейте в виду, что в примере используется высокое напряжение, поэтому вы должны быть очень осторожны, потому что я не несу никакой ответственности за ваши действия) Вот код Arduino для этого примера. Он довольно прост. Нам просто нужно определить вывод PIR-датчика как вход, а вывод реле как выход. Используя функцию digitalRead(), мы будем считывать выход датчика, и если он высокий или объект обнаружен, он активирует реле. Для активации модуля реле мы отправим логический ноль, так как входной вывод реле работает инверсно. Демонстрация примера можно увидеть в конце видео, прикрепленного выше. Обратите внимание, что после питания модуля датчика ему требуется около 20–60 секунд для «прогрева», чтобы функционировать правильно. Теперь, когда вы поднесете руку перед датчиком, реле активирует лампу. Но обратите внимание, что даже если вы будете постоянно двигать рукой, лампа выключится после истечения отрегулированного времени задержки, потому что PIR-датчик находится в режиме «неповторяющееся срабатывание». Если вы переключите датчик перемычкой в режим «повторяющееся срабатывание» и будете постоянно двигать рукой, лампа будет постоянно гореть и выключится только после прекращения движения и истечения установленного времени задержки.Как это работает



Модуль PIR-датчика HC-SR501

Необходимые компоненты для этого урока
Схема подключения

Исходный код
/* Arduino PIR Motion Sensor Tutorial
* by Dejan Nedelkovski, www.HowToMechatronics.com
*/
int pirSensor = 8;
int relayInput = 7;
void setup() {
pinMode(pirSensor, INPUT);
pinMode(relayInput, OUTPUT);
}
void loop() {
int sensorValue = digitalRead(pirSensor);
if (sensorValue == 1) {
digitalWrite(relayInput, LOW); // Вход реле работает инверсно
}
}Язык кода: Arduino (arduino)
Производственный процесс
- Как работают схемы на PIR-датчиках: проектирование, принцип работы и реальные применения
- Очереди в C#: Enqueue, Dequeue и операции First-In-First-Out
- Проект с датчиком DHT11: индикация температуры светодиодами и пьезо-динамиком на Arduino
- Подключение Arduino Mega к GPS-модулю NEO‑6M: пошаговое руководство
- Модуль GPS u-blox LEA-6H 02: Интеграция с Arduino и Python
- Чтение температуры и влажности DHT11 через Blynk — пошаговый урок для Arduino
- Использование термистора: пошаговое руководство для Arduino
- Подключение Arduino к NMEA-0183: пошаговое руководство
- Мастерство Modbus на Arduino: пошаговое руководство
- Детектор жестов и движения на PIR-сенсоре и Arduino Nano