Датчик движения — устройство, позволяющее отследить перемещения в пределах досягаемости сенсора. Такие системы находят применение в проектах «умных» домов, в бизнесе и просто в быту, например, для включения света в доме, подъезде, комнате и так далее. Электронный конструктор Ардуино предоставляет удобную платформу для создания таких датчиков: благодаря небольшим габаритам, дешевизне, простоте и функциональности датчик движения Ардуино можно внедрять в самые различные электронные комплексы.
Создаваемые на базе Ардуино сенсоры перемещения устроены довольно просто. Они работают на принципе регистрации инфракрасных излучений. Помимо контроллера, основной компонент устройства — высокочувствительный пассивный пироэлектрический (PIR) элемент, регистрирующий присутствие определенного уровня инфракрасного спектра. Чем теплее появившийся в радиусе действия сенсора объект, тем сильнее излучение.
Типичный PIR-датчик снабжается полусферой с фокусирующими поступающую на сегменты сенсора тепловую энергию линзами. Обычно применяется линза Френеля: она хорошо концентрирует тепло и существенно увеличивает чувствительность. В качестве платформы нередко берут Arduino Uno, но возможно создание датчика и на других версиях контроллера.
Конструктивно PIR-сенсор делится на две части. Поскольку для устройства принципиально важно улавливание движения в зоне покрытия, а не уровень тепловой эмиссии, части устанавливаются так, чтобы при появлении на одной из них большего уровня излучения на выход гаджета подавался сигнал low или high. Далее он обрабатывается микроконтроллером.
Интересно: существуют иные способы обнаружения движения. Так, сегодня постепенно распространяются системы машинного зрения, использующие нейросетевые алгоритмы для определения перемещений. Охранные комплексы могут использовать лазерные детекторы и тепловизионные датчики, реагирующие исключительно на тепло живых существ. Нередко ИК-датчики комбинируют с этими устройствами.
Большинство PIR-датчиков соответствуют следующим параметрам:
Модуль ИК-датчика несет на себе также электрическую обвязку с необходимыми компонентами: конденсаторами, предохранителями и резисторами.
Пироэлектрик представляет собою материал, при изменении своей температуры генерирующий электрическое поле. В простом PIR-сенсоре два таких элемента, подключенных с разными полярностями.
Предположим, что гаджет смонтирован в помещении.
Как правило, для защиты соединений и компонентов от электронных и тепловых шумов, воздействия влаги и высокой температуры их помещают в герметичный корпус. Верхняя часть его содержит прямоугольное «окно» из ИК-прозрачного материала для свободного доступа теплового излучения.
Большинство модулей снабжено тремя пинами для соединения с платой Ардуино. Распиновка может различаться в зависимости от производителя узла, но, как правило, выходы отмечаются поясняющими надписями.
Обычно выходов три: GND — заземление, второй — +5 В, он выдает сигнал с ИК-сенсоров. Третий — цифровой, для снятия данных
Принцип соединения с контроллером следующий:
Рассмотрим ситуацию использования датчика на примере микроконтроллера Ардуино Уно и сенсора HC-SR501. Его характеристики:
Важно: при температурах от +30 градусов эффективное расстояние детекции может снизиться.
В указанном сенсоре установлены два пироэлектрических датчика IRA-E700.
Сверху они прикрыты сегментированной полусферой. Каждый сегмент — фокусирующая тепло на определенный участок ПИР-датчика линза.
Внешний вид устройства:
Общий пример работы мы уже рассматривали выше. Пока контролируемая зона пуста, датчики получают одинаковый уровень тепловой эмиссии, напряжение на них также одинаково. Но как только излучение от человека попадет последовательно на первый и второй элементы, схема зарегистрирует разнонаправленные электрические импульсы и сгенерирует сигнал на выход.
ИК-модуль HC-SR501 весьма прост в настройке и дешев. У него есть перемычка для конфигурирования режима и пара подстроечных резисторов. Общая чувствительность настраивается первым потенциометром: чем она выше, тем шире зона «видимости» гаджета».
Важно: чувствительность имеет значение для детектируемых размеров определяемого объекта. Подстройкой можно, например, исключить срабатывание на домашних животных.
Другой потенциометр управляет временем срабатывания устройства: если обнаружено перемещение, на выходе создается положительный электрический импульс определенной длины (от 5 до 300 секунд).
Следующий управляющий элемент — перемычка. От нее зависит режим работы.
Рекомендуем более подробно узнать как проводится настройка датчика движения в других устройствах.
Подключение датчика движения к Ардуино следует выполнять по указанной схеме:
Пин OUT соединяется с пином 2 Уно, а VCC подсоединено к контакту +5 В. Принципиальная схема конструкции:
Помимо контроллера, для функционирования оборудования необходима управляющая аппаратным комплексом программа. Ниже приведен простой скетч:
В нем при обнаружении гаджетом движения на последовательный порт отправляется 1, а в ином случае уходит значение 0. Это простейшая программа, с помощью которой можно протестировать собранный датчик.
Модифицируем устройство добавлением реле, которое станет включать свет. Принципиальная схема подключения:
Макет:
Программа для реализации данного функционала:
Теперь, если собрать компоненты по схеме, загрузить скетч в Ардуино и соединить систему с электросетью дома, по сигналу сенсора перемещения контроллер заставит сработать реле, а то, в свою очередь, включит свет.
Интересно: существует возможность соединения сенсора с реле напрямую, без контроллера. Но внедрение в схему Arduino делает ее более гибкой, функциональной и конфигурируемой.
Выше мы рассмотрели простой сценарий управления светом. Кроме него, такие PIR-датчики в связке с микроконтроллером находят применение в системах сигнализации, автоматического включения видеонаблюдения, открывания/закрывания дверей и других случаях, когда необходимо выполнять некоторые автоматизированные действия при движении в контролируемой зоне.
Датчики можно комбинировать: например, если не хватает максимальной длины импульса, в систему добавляется ультразвуковой или микроволновый сенсор присутствия.
В силу отработанности аппаратной платформы, хорошо документированных схем, простоты разработки ПО и дешевизны PIR-датчики на Ардуино не обладают особыми недостатками в рамках возлагаемых на них задач. Возможности их применения ограничиваются естественными пределами ИК-технологии, периферийным оборудованием и заложенными в прошивку контроллера функциями.
Из недостатков отметим долгую инициализацию: многим образцам на переход в рабочий режим после первого включения требуется около минуты, на протяжении которой велик шанс ложных срабатываний. Кроме того, они не способны отличить человека от другого теплого объекта; для этого требуется иной класс устройств.
Созданный на платформе Arduino датчик движения — простое и функциональное устройство, помогающее быстро и с минимальными усилиями решить задачу автоматического выполнения действий при появлении человека в радиусе действия. Очень часто такие комплексы можно встретить в квартирах и домах, на улицах и в парках — там они включают свет по детекции движения.