Инфракрасный датчик движения (pir сенсор)

Ардуино: инфракрасный датчик движения, ПИР

Тема сегодняшнего урока — датчик движения на основе пироэлектрического эффекта (PIR, passive infrared motion sensor). Такие датчики часто используются в охранных системах и в быту для обнаружения движения в помещении. Например, на принципе детектирования движения основано автоматическое включение света в подъезде или в ванной. Пироэлектрические датчики достаточно простого устроены, недороги и неприхотливы в установке и обслуживании.

Кстати сказать, существуют и другие способы детектирования движения. Сегодня всё чаще используют системы компьютерного зрения для распознавания объектов и траектории их перемещения. В тех же охранных системах применяются лазерные детекторы, которые дают тревожный сигнал при пересечении луча. Также используются тепловизионные датчики, способные определить движение только живых существ.

Принцип действия пироэлектрических датчиков движения

Пироэлектрики — это диэлектрики, которые создают электрическое поле при изменении их температуры. На основе пироэлектриков делают датчики измерения температуры, например, LHI778 или IRA-E700. Каждый такой датчик содержит два чувствительных элемента размером 1×2 мм, подключенных с противоположной полярностью. И как мы увидим далее, наличие именно двух элементов поможет нам детектировать движение.

Вот так выглядит датчик IRA-E700 компании Murata.

На этом уроке мы будем работать с датчиком движения HC-SR501, в котором установлен один такой пироэлектрический датчик. Сверху пироэлектрик окружен полусферой, разбитой на несколько сегментов. Каждый сегмент этой сферы представляет собой линзу, которая фокусирует тепловое излучение на разные участки ПИР-датчика. Часто в качестве линзы используют линзу Френеля.

Принцип работы датчик движения следующий. Предположим, что датчик установлен в пустой комнате. Каждый чувствительный элемент получает постоянную дозу излучения, а значит и напряжение на них имеет постоянное значение (левый рисунок).

Как только в комнату заходит человек, он попадает сначала в зону обзора первого элемента, что приводит к появлению положительного электрического импульса на нем (центральный рисунок).

Человек движется, и его тепловое излучение через линзы попадает уже на второй PIR-элемент, который генерирует отрицательный импульс. Электронная схема датчика движения регистрирует эти разнонаправленные импульсы и делает выводы о том, что в поле зрения датчика попал человек. На выходе датчика генерируется положительный импульс (правый рисунок).

Настройка HC-SR501

На этом уроке мы будем использовать модуль HC-SR501. Этот модуль очень распространен и применяется во множестве DIY проектов в силу своей дешевизны.

У датчика имеется два переменных резистора и перемычка для настройки режима. Один из потенциометров регулирует чувствительность прибора. Чем она больше, тем дальше «видит» датчик. Также чувствительность влияет на размер детектируемого объекта. К примеру, можно исключить из срабатывания собаку или кошку.

Второй потенциометр регулирует время срабатывания T. Если датчик обнаружил движение, он генерирует на выходе положительный импульс длиной T.

Наконец, третий элемент управления — перемычка, которая переключает режим датчика. В положении L датчик ведет отсчет Т от самого первого срабатывания. Допустим, мы хотим управлять светом в ванной комнате. Зайдя в комнату, человек вызовет срабатывание датчика, и свет включится ровно на время Т. По окончании периода, сигнал на выходе вернется в исходное состояние, и датчик будет дать следующего срабатывания.

В положении H датчик начинает отсчет времени T каждый раз после обнаружения движения. Другими словами, любое шевеление человека вызовет обнуление таймера отсчета Т. По-умолчанию, перемычка находится в состоянии H.

Подключение HC-SR501 к Ардуино Уно

Для соединения с микроконтроллером или напрямую с реле у HC-SR501 имеется три вывода. Подключаем их к Ардуино по следующей схеме:

HC-SR501 GND VCC OUT
Ардуино Уно GND +5V 2

Принципиальная схема

Внешний вид макета

Программа

Как уже было сказано, цифровой выход датчика HC-SR501 генерирует высокий уровень сигнала при срабатывании. Напишем простую программу, которая будет отправлять в последовательный порт «1» если датчик увидел движение, и «0» в противном случае.

Загружаем программу на Ардуино и проверяем работу датчика. Можно покрутить настройки датчика и посмотреть как это отразится на его работе.

Управление светом при помощи датчика движения

Следующий шаг — система автоматического включения света. Для того, чтобы управлять освещением в помещении, нам потребуется добавить в цепь реле.

Будем использовать модуль реле с защитой на основе опторазвязки, о котором мы уже писали в одном и уроков ( урок про реле ).

Внимание! Данная схема зажигает лампу от сети 220 Вольт. Рекомендуется семь раз проверить все соединения, прежде чем соединять схему с бытовой электросетью.

Принципиальная схема

Внешний вид макета

Программа

Теперь напишем программу, которая будет при срабатывании датчика включать реле, а следовательно и освещение в комнате.

Загружаем программу на Ардуино, аккуратно подключаем схему к бытовой сети и проверяем работу датчика.

Заключение

Датчики движения окружают нас повсюду. Благодаря охранным системам, их можно встретить практически в каждом помещении. Как мы выяснили, они очень просты в использовании и могут быть легко интегрированы в любой проект на Ардуино или Raspberry Pi.

Вот несколько ситуаций и мест, где может пригодиться датчик движения:

  • автоматическое включение света в подъезде дома, в ванной комнате и туалете, перед входной дверью в помещение;
  • сигнализация в помещении и во дворе;
  • автоматическое открывание дверей;
  • автоматическое включение охранной видеокамеры.

Как уже говорилось в самом начале, существуют и другие способы детектирования движения. О них мы поговорим на следующих уроках!

Ардуино: инфракрасный датчик движения, ПИР : 15 комментариев

В туалете не вариант, т.к. пока стоишь, он выключает свет. Чтобы не выключал свет, приходится махать руками. Когда машешь руками, точность попадания ухудшается. Так что не вариант, ребята.

перемычку переставь на «Н» и будет тебе щястье. и таймаут подбери чтобы достаточно было. например 1 минуту, то есть любое шевеление в течение этой минуты будет продлевать отсчет еще на минуту. а когда выйдешь из сортира, то через минуту свет и погаснет совсем уже.

тоже не вариант… минуту в толкане сидишь, читаешь газету и вырубается )) и не вариант увеличивать тайм-аут… т.к. вышел с комнаты и свет еще горит N-ное время. По умолчанию кстати перемычка в положении H стоит ))
Нужно комбинировать датчики, если хотите, чтобы свет сразу вырубился после ухода с комнаты и не вырубался в вашем присутствии…
Комбинировать PIR и микроволновый датчик, либо использовать еще ультразвуковой датчик, но с условием изменения постоянного расстояния (при изменении постоянного расстояния выдавать true)

Как работает PIR датчик HC-SR501, и его взаимодействие с Arduino

Лаборатория каждого сумасшедшего ученого, или секретная комната подростка, нуждается в улучшенной защите от вторжения мошенников или братьев и сестер. Если вы один из них, вам, вероятно, стоит подумать о приобретении пассивного пироэлектрического инфракрасного (PIR) датчика. PIR датчики позволяют вам определять, когда кто-то находится в комнате, когда не должен быть там.

Рисунок 1 – Как работает PIR датчик HC-SR501, и его взаимодействие с Arduino

Хотя это может показаться чем-то из шпионского фильма, но вы, вероятно, используете PIR датчики каждый день. Этот датчик вы можете найти в большинстве современных систем безопасности, автоматических выключателях света, механизмах открывания гаражных ворот и аналогичных применениях, где работа какого-либо электрического устройства необходима только в присутствии людей.

Как работает PIR датчик движения?

Если вы не знали, все объекты с температурой выше абсолютного нуля (0 Кельвинов / -273,15°C), включая человеческие тела, испускают тепловую энергию в виде инфракрасного излучения. Чем горячее объект, тем большее излучение он излучает.

PIR датчик разработан специально для обнаружения таких уровней инфракрасного излучения. В основном он состоит из двух основных составляющих: пироэлектрического датчика и специальной линзы, называемой линзой Френеля, которая фокусирует инфракрасные сигналы на пироэлектрический датчик.

Рисунок 2 – PIR датчик, пироэлектрический датчик, два слота обнаружения

Пироэлектрический датчик на самом деле имеет две прямоугольные прорези, выполненные из материала, который пропускает инфракрасное излучение. За ними находятся два отдельных инфракрасных сенсорных электрода: один из которых отвечает за создание положительного выходного сигнала, а другой – отрицательного. Причина такого решения заключается в том, что мы ищем изменение инфракрасных уровней, а не сами окружающие инфракрасные уровни. Два электрода подключены так, чтобы они подавляли друг друга. Если одна половина видит больше или меньше инфракрасного излучения, чем другая, выходной сигнал будет высоким или низким.

Когда датчик находится в режиме ожидания (то есть вокруг датчика нет движения), оба слота обнаруживают одинаковое количество инфракрасного излучения, что приводит к нулевому выходному сигналу.

Но когда мимо проходит теплый объект, подобный человеку или животному; сначала он перекрывает одну половину PIR датчика, что вызывает появление положительного дифференциального изменения между двумя половинами. Когда теплый объект покидает чувствительную область, происходит обратное, в результате чего датчик генерирует отрицательное дифференциальное изменение. Соответствующий импульс сигналов приводит к тому, что датчик устанавливает на выходном выводе высокий логический уровень.

Рисунок 3 – Принцип действия PIR датчика

PIR детектор движения HC-SR501

Для большинства наших проектов на Arduino, которые должны определять, когда человек покинул или вошел в зону, или приблизился, PIR датчики HC-SR501 являются отличным выбором. Они имеют низкое энергопотребление и низкую стоимость, довольно прочные, имеют широкий диапазон линз, с ними легко взаимодействовать, и они безумно популярны среди любителей.

PIR датчик HC-SR501 имеет три вывода: питание VCC, выход и земля (показано на рисунке ниже). Он имеет встроенный стабилизатор напряжения, поэтому он может питаться от любого постоянного напряжения от 4,5 до 12 вольт, обычно используется 5В. Кроме этого, у него есть несколько настроек. Давайте проверим их.

Рисунок 4 – Распиновка PIR датчика. Расположение компонентов на плате.

На плате есть два потенциометра для настройки пары параметров:

  • Чувствительность – устанавливает максимальное расстояние, на котором может быть обнаружено движение. Оно варьируется от 3 до 7 метров. На реальное расстояние, которое вы получите, может влиять планировка вашего помещения.
  • Время – устанавливает время, в течение которого выходной сигнал останется на высоком логическом уровне после обнаружения. Минимум – 3 секунды, максимум – 300 секунд или 5 минут.

Наконец, на плате есть перемычка (на некоторых моделях перемычка не впаяна). У нее есть два варианта настройки:

  • H – это удержание / повтор / повторный запуск. В этом положении HC-SR501 будет продолжать выдавать высокий логический уровень, пока он продолжает обнаруживать движение. Рисунок 5 – Работа PIR датчика HC-SR501 в режиме повторного запуска
  • L – это прерывающийся или неповторяющийся / без повторного запуска. В этом положении выходной сигнал останется на высоком логическом уровне в течение времени, установленного регулировкой потенциометра TIME. Рисунок 6 – Работа PIR датчика HC-SR501 в режиме без повторного запуска

Повышение универсальности PIR датчика HC-SR501

Печатная плата HC-SR501 имеет площадки для двух дополнительных компонентов. Они обычно обозначаются как «RT» и «RL». Обратите внимание, что на некоторых платах обозначения могут быть закрыты «купольной» линзой на стороне, противоположной компонентам.

Рисунок 7 – PIR датчик. Площадки для фоторезистора и термистора

  • RT – предназначен для термистора или термочувствительного резистора. Его добавление позволяет использовать HC-SR501 при экстремальных температурах, а также в некоторой степени повышает точность детектора.
  • RL – это место для подключения светочувствительного резистора (LDR) или фоторезистора. При добавлении этого компонента HC-SR501 будет работать только в темноте, это обычное применение для систем освещения, чувствительных к движению.
Читайте также  Соединение алюминиевого и медного проводов электропроводки

Дополнительные компоненты могут быть припаяны непосредственно к плате или выведены в удаленные места с помощью проводов и разъемов.

Распиновка PIR датчика HC-SR501

HC-SR501 имеет 3-контактный разъем, который соединяет его с внешним миром. На него выведены следующие контакты:

Рисунок 8 – Распиновка PIR датчика HC-SR501

VCC – вывод питания для PIR датчика HC-SR501, к которому мы подключаем вывод 5V на Arduino.

Выходной контакт – логический выход с TTL уровнем 3,3 В. Низкий логический уровень означает, что движение не обнаружено, высокий логический уровень означает, что было обнаружено какое-то движение.

GND должен быть подключен к земле Arduino.

Использование PIR датчика в качестве автономного устройства

Одна из причин, по которой PIR датчик HC-SR501 является чрезвычайно популярным, заключается в том, что он является очень универсальным датчиком, который самодостаточен. А подключив его к каким-либо микроконтроллерам, таким как Arduino, вы сможете еще больше расширить его универсальность. Для нашего первого эксперимента мы будем использовать HC-SR501 отдельно, чтобы показать, насколько он полезен сам по себе.

Схема соединений для этого эксперимента очень проста. Батареи подключены к выводам датчика VCC и GND, а маленький красный светодиод подключен к выходному контакту через ограничивающий ток резистор 220 Ом. И всё!

Теперь, когда PIR обнаруживает движение, на выходном контакте появляется высокий логический уровень, и светодиод загорается!

Рисунок 9 – Тестовая схема подключения PIR датчика без использования Arduino. Она показывает, как можно использовать PIR датчик в автономных приложениях.

Помните, что при включении питания необходимо подождать 30-60 секунд, пока PIR датчик не адаптируется к инфракрасной энергии в помещении. В течение этого времени светодиод может немного мигать. Подождите, пока светодиод не погаснет, а затем подвигайтесь перед ним, махая рукой, чтобы увидеть, что светодиод загорается.

Подключение PIR датчика к Arduino UNO

Теперь, когда у нас есть полное понимание того, как работает PIR датчик, мы можем подключить его к нашей плате Arduino!

Подключить PIR датчики к микроконтроллеру очень просто. PIR действует как цифровой выход, поэтому всё, что вам нужно делать, это отслеживать, когда на его выходном выводе установится высокий логический уровень (обнаружено движение) или низкий логический уровень (не обнаружено). Подайте на PIR датчик напряжение 5 В и подключите землю. Затем подключите выход к цифровому выводу 2.

Вам нужно установить перемычку на HC-SR501 в положение H (повторный запуск), чтобы он работал правильно. Вам также нужно будет установить время на минимум (3 секунды), повернув потенциометр «время» против часовой стрелки до упора. Установите чувствительность в любое положение, которое вам нужно, либо, если не уверены, установите ее в среднее положение.

Теперь вы готовы загрузить код и начать работу PIR датчиком.

Рисунок 10 – Подключение PIR датчика к Arduino UNO

Код Arduino

Код очень прост и в основном отслеживает, является ли входной сигнал на выводе 2 высоким или низким.

В конце, при обнаружении движения мы печатаем сообщение в монитор последовательного порта.

Рисунок 11 – Вывод приложения PIR датчика в мониторе последовательного порта

Что нужно учесть перед проектированием приложений на базе PIR датчиков

Как и для большинства PIR датчиков, HC-SR501 требуется некоторое время для адаптации к инфракрасной энергии в помещении. Это занимает от 30 до 60 секунд при первом включении датчика.

Кроме того, датчик имеет период «сброса» около 5 или 6 секунд после считывания. В течение этого времени он не обнаружит никакого движения.

При проектировании системы на базе HC-SR501 вам необходимо будет учитывать эти длительности задержек.

Подробный обзор PIR датчика движения: характеристики сенсора, отзывы и инструкция по подключению

Каждый человек излучает тепловые волны. На этом явлении построен принцип работы pir датчиков движения. Это пассивные инфракрасные датчики, которые улавливают малейшее движение. Они предназначены для обнаружения посторонних в помещении.

Что из себя представляет pir датчик движения?

PIR — сокращенное название passive infrared — пассивный инфракрасный датчик. Он не излучает волн, а только принимает их, поэтому называется пассивным. Датчик содержит чувствительный элемент, который реагирует на тепловое излучение.

Как выглядит и где используется?

Пироэлектрический элемент, который находится в центре датчика, герметично закрыт металлическим или пластиковым корпусом.

Применяются pir датчики в системах охранной сигнализации, в домах, квартирах, офисах. Также могут использоваться и в освещении.

Прибор может обнаружить движение и сработать, но он не способен определить, на каком расстоянии находится объект и сколько людей находится в зоне его действия.

Как работает: устройство и принцип действия

Датчик воспринимает тепловое излучение с длиной волны от 7 до 14 мкм. Электрический сигнал не возникает, если излучение остается постоянным. Чтобы датчик реагировал на движение, применяется линза Френеля с несколькими фокусирующими участками. Общий тепловой фон разбивается на зоны (активные и пассивные). Они располагаются в шахматном порядке. Человек занимает несколько таких зон, находясь в поле зрения датчика.

Поэтому даже при малейшем движении, когда происходит перемещение из одной зоны в другую, прибор срабатывает.

Также устройства могут быть проводными (питание от сети) и беспроводными (аккумуляторная батарея). Для охранных систем лучше всего подойдут модели, которые не требуют проводки. В пассивном состоянии такой прибор может работать до 20 дней без подзарядки.

PIR датчики небольшие по объему, недорогие, экономичные, практически не подвержены износу, легко устанавливаются, поэтому они популярны и используются в различных системах.

Датчик состоит из прямоугольного пироэлектрического элемента, внутри которого находится кристалл, улавливающий инфракрасное излучение.

Модуль, на котором стоит датчик, содержит различные элементы: предохранители, резисторы и конденсаторы.

Отзывы о пироэлектрических инфракрасных датчиках движения: плюсы и минусы

Такой прибор, как pir датчик движения имеет следующие достоинства:

  • простота устройства;
  • доступная стоимость;
  • износоустойчивость;
  • экономичность;
  • малые габариты.
  • ограничение дальности действия;
  • помещенный в поле зрения датчика сплошной предмет нарушает его действие;
  • при снижении температуры чувствительность устройства может искажаться.

Технические характеристики классического PIR Sensor HC-SR501

В данном приборе объединены сам датчик и схема управления. Технические характеристики PIR Sensor HC-SR501 таковы:

  • примерные размеры — 3,2 см*2,4 см*1,8 см;
  • напряжение питания — DC 4,5В — 20 В;
  • сила тока — о ;
  • длительность импульса при обнаружении — 5-200 с (настраивается);
  • рабочая температура — от -20 до +80 о С;
  • выходное напряжение — высокий/низкий уровень сигнала:3,3 В; выход TTL;
  • время блокировки до следующего замера — 2,5 с;
  • режим работы — L — одиночный захват, H — повторяемые измерения.

Стоимость PIR Sensor HC-SR501 — около 130 рублей.

Инструкция по подключению и эксплуатации

  1. Устройство необходимо подключить к основному реле контроллера и системе энергоснабжения.
  2. Большинство моделей pir датчиков имеют три коннектора на задней части.
  3. Соединение происходит по схеме с учетом особенностей данной модели.
  4. В некоторых моделях подключение pir датчика производится напрямую к сети, без проводки. Обычно это относится к системам освещения.

Цвет проводов может отличаться, поэтому прежде чем подключать напряжение, нужно все проверить, иначе датчик может перегореть или просто не будет работать.

Обычно присутствует три кабеля: красный — питание, черный — земля, желтый — сигнал.

В соответствии с рисунком соберите схему. После этого можно подключать датчик. Он должен стабилизироваться в течение 30-60 секунд. В это время светодиод может мигать. После того как мигание закончится, прибор готов к работе.

Схема подключения

Настройка работы устройства

Перед тем, как подключать датчик к работе, необходимо его настроить, задать необходимые параметры.

Регулироваться может чувствительность. Прибор должен игнорировать и подавлять незначительные тепловые помехи и в то же время определять даже небольшие движения.

Если человек находится в помещении, но не производит движений, датчик не сможет зафиксировать его присутствие. Поэтому настраивается такая функция, как задержка выключения.

PIR датчик движения HC-SR501устанавливается в различных местах. Например, в тех местах, где ходят часто (коридор, санузел), свет должен включаться и выключаться быстро, и задержка устанавливается минимальной. Напротив, например, в офисах, конторах, где движения бывают редкими, задержку увеличивают, чтобы свет не выключался постоянно.

Особенности установки

Есть некоторые особенности, на которые необходимо обратить внимание при установке.

  1. Перед датчиком не должны находиться предметы, затрудняющие обзор (двери, перегородки, стены, большие предметы мебели и т.д.). Это мешает тепловой волне, и излучение не может проникнуть через преграду.
  2. Наилучшая форма монтажа — потолочная, с учетом того, чтобы была видна дверь. Это открывает большой обзор, используется максимальный угол обнаружения.
  3. Не располагайте прибор вблизи отопления, конденсаторов, на открытом солнце. Это будет вызывать нагревание и ошибочное срабатывание сенсора.
  4. При размещении датчика следует учесть и то, что люди могут находиться вне активных зон, и прибор не будет на них реагировать. Сидящих людей прибор распознает, только если он находится очень близко.

Аналоги стандартного HC-SR501

PIR Motion Sensor Module GH-718

Компактный пассивный инфракрасный мини-датчик движения. Часто используется в вентиляционных системах, освещении, охранных сигнализациях и других электронных системах с автоматическим управлением.

  • Размер — 3,2*2,7/1,25*1,06;
  • Напряжение — 5В — 24 В;
  • Выход тока — 5 мА;
  • Дальность обнаружения — 4-5 м;
  • Рабочая температура — от -20 до +50 о С;
  • Угол обзора — 110 о ;
  • Выходной сигнал при обнаружении движения — 0,3В (высокий уровень).
  • Стоимость — 150 рублей.

PIR MP.Alert A9

GSM сигнализация со встроенным датчиком движения и микрофоном. Используется в охранных системах, как противоугонное устройство, а также для охраны квартиры, дома, гаража и т.п. Очень компактный и удобный прибор. Работает с СИМ — картой. При обнаружении движения устройство звонит на номер, зарегистрированный на СИМ-карту, что очень удобно. Также можно позвонить по телефону, датчик ответит, и владелец услышит звуки окружающей обстановки.

Имеет следующие технические характеристики:

  • Дальность обнаружения — до 8 м;
  • Режим ожидания — 2-3 дня;
  • Время работы в режиме передачи данных — 2-4 часа;
  • Размеры — 45*30*14 мм;
  • Рабочие частоты — 850 МГц, 900 МГц, 1800 МГц, 1900 МГц.
  • Стоимость — 1590 рублей.

Стоимость

Стоимость пироэлектрического инфракрасного датчика движения будет зависеть от его технических характеристик, возможности настроек параметров, дополнительных функций, а также качества материалов и производителя данной модели.

Наиболее дешевые модели доступны всем, они просты в установке и часто используются. Ценовой диапазон — от 100 до 200 рублей.

  • PIR Sensor HC-SR501 — 130 рублей.
  • PIR Motion Sensor Module GH-718 — 150 рублей.

Более дорогие модели характеризуются большими возможностями использования, имеют улучшенные характеристики. Их стоимость — от 1000 рублей — PIR MP.Alert A9 — 1590 рублей.

Где купить инфракрасный PIR датчик движения?

В Москве

  • Компания «Амперкот», ул. 1-ая Ямская, д.8, 7(495)055-41-23
  • Интернет-магазин SHOPLEDS, ул. Большая Почтовая, д.71, офис 111, 7(495)225-76-80
  • Интернет-магазин CHIRSTER.RU, ул. Клары Цеткин, д.18, к.3, 8(499)653-80-92

В Санкт-Петербурге

  • Интернет-магазин I SEE YOU, ул. Есенина, д.11, к.1, 7(812)615-88-90
  • Компания «Телекамера», ул. Бумажная, д.16 офис 223, 7(812)426-30-50
  • Интернет-магазин Furnitura-pro.ru, Спасский переулок, 14/35, 7(812)952-86-85

PIR датчики движения используются в различных автоматизированных системах управления. С их помощью можно наблюдать за появлением людей, охранять различные объекты. Применение pir датчиков в системах освещения и сигнализации является надежным методом обнаружения присутствия человека.

Читайте также  Простое 6xusb зарядное устройство на avr c токовым датчиком

Обзор инфракрасного датчика движения HC-SR501

Автор: Сергей · Опубликовано 12.08.2016 · Обновлено 13.04.2020

В этой статье расскажу как работать с датчиком HC-SR501 (PIR сенсор). Датчик является недорогим и универсальным, его можно использовать как отдельно или со вместо с микрокомпьютером для создание различных проектах (системах охранной сигнализации или автоматизированных системах освещения)

Технические характеристики

Любой человек или животное с температурой выше нуля испускает тепловую энергию в виде излучения. Это излучение не видно человеческому глазу, потому что оно излучается на инфракрасных волн, ниже спектра, который люди могут видеть. Измерение этой энергии, не то же самое, что измерять температуру. Так как температура зависит от теплопроводности, поэтому, когда человек входит в комнату, он не может мгновенно изменить температуру в помещении. Однако есть уникальная инфракрасное излучение из-за температуры тела и которую ищет PIR датчик.
Принцип работы инфракрасного датчика движения HC-SR501 прост, при включении, датчик настраивается на «Нормальную» инфракрасное излучение в пределах своей зоны обнаружения. Затем он ищет изменения, например человек прошел или переместился в пределах контролируемой зоны. Для определения инфракрасного излечение детектор использует пироэлектрический датчик. Это устройство, которое генерирует электрический ток в ответ на прием инфракрасного излучения. Поскольку датчик не излучает сигнал (например, ранее упомянутый ультразвуковой датчик), его наказывают «пассивным». Когда обнаружено изменение, датчик HC-SR501 изменяет выходной сигнал.

Для повышения чувствительности и эффективности датчика HC-SR501 используется метод фокусировки инфракрасного излечения на устройство, достигается, это с помощью «Линзы Френеля». Линза выполнен из пластика и выполнена в виде купола и фактически состоит из нескольких небольших линз Френеля. Хоть пластик и полупрозрачен для человека, но на самом деле полностью прозрачен для инфракрасного света, поэтому он также служит в качестве фильтра.

HC-SR501 — недорогой датчик PIR, который полностью автономный, способный работать сам по себе или в сопряжении с микроконтроллером. Датчик имеет регулировку чувствительности, которая позволяет определять движение от 3 до 7 метров, а его выход можно настроить так, чтобы он оставался высоким в течение времени от 3 секунд до 5 минут. Так же, датчике имеет встроенный стабилизатор напряжения, поэтому он может питаться от постоянного напряжения от 4,5 до 20 вольт и потребляет небольшое количество тока. HC-SR501 имеет 3-контактный разъем, назначение следующие:

Назначение выводов
► VCC — положительное напряжение постоянного тока от 4,5 до 20 В постоянного тока.
OUTPUT — логический выход на 3,3 вольта. LOW не указывает на обнаружение, HIGH означает, что кто-то был обнаружен.
GND — заземление.

На плате также установлены два потенциометра для настройки нескольких параметров:
SENSITIVITY — устанавливает максимальное и минимальное расстояние (от 3 метров до 7 метров).
► TIME (ВРЕМЯ) — время, в течение которого выход будет оставаться HIGH после обнаружения. Как минимум, 3 секунды, максимум 300 секунд или 5 минут.

Назначение перемычек:
► H — это настройка Hold или Repeat. В этом положении HC-SR501 будет продолжать выдавать сигнал HIGH, пока он продолжает обнаруживать движение.
L — Это параметр прерывания или без повтора. В этом положении выход будет оставаться HIGH в течение периода, установленного настройкой потенциометра TIME.

На плате HC-SR501 имеются дополнительные отверстия для двух компонентов, рядом расположена маркировка, посмотреть на нее можно сняв линзу Френеля.

Назначение дополнительных отверстий:
► RT — это предназначено для термистора или чувствительного к температуре резистора. Добавление этого позволяет использовать HC-SR501 в экстремальных температурах, а также в некоторой степени повышает точность работы детектора.
RL — это соединение для светозависимого резистора или фоторезистора. Добавляя компонент, HC-SR501 будет работать только в темноте, что является общим приложением для чувствительных к движению систем освещения.

Пример №1: HC-SR501 как самостоятельное устройство.

Необходимые детали:
Датчика движения HC-SR501 x 1 шт.
Модуль реле (1-но канальный) x 1 шт.
Транзистор 2SC1213 x 1 шт.
Лампа на 220V (75W) с патроном x 1 шт.
Источник питания на 5V x 1 шт.
Провод DuPont, 2,54 мм, 20 см, F-M (Female — Male) x 1 шт.

Подключение:
При включение HC-SR501 требуется калибровка, занимает от 30 до 60 секунд, так-же датчик имеет период «перезагрузки» около 6 секунд (после срабатывания), за это время он не реагирует на движения. В этом примере используем HC-SR501 и модуль реле (1-но канальный), а так же NPN транзистор (в примере используется 2SC1213). Питание датчика HC-SR501 осуществляется от 5 В, поскольку, это же питание требуется и реле, а в качестве нагрузки используется лампа на 220В. Так-как выходной сигнал HC-SR501 слабый (на практике хватает только чтобы зажечь светодиод), один из вариантов, можно применить любой биполярный NPN транзистор.

Внимание! Соблюдайте технику безопасность и будьте аккуратно!

Работа этой схемы очень проста, после включения и калибровка, датчик начинает считывать показания. При обнаружении движения, датчик меняет значение на выводе «OUT».

Пример №2: HC-SR501 добавление фоторезистора

Необходимые детали:
Датчика движения HC-SR501 x 1 шт.
Модуль реле (1-но канальный) x 1 шт.
Транзистор 2SC1213 x 1 шт.
Лампа на 220V (75W) с патроном x 1 шт.
Источник питания на 5V x 1 шт.
Фоторезистор x 1 шт.
Провод DuPont, 2,54 мм, 20 см, F-M (Female — Male) x 1 шт.

Подключение:
В следующим примере используем туже схему, что и примере №1, только добавили фоторезистор. Место для установки фоторезистора расположено рядом с выходным разъемом, обозначение на плате как «RL». Можно припаять напрямую на плату или воспользоватся штыревым разъемом, для удобного подключения Dupont провода. Главное, чтобы фоторезистор не был закрыт от естественного освещения комнаты, а так же был защищен от света лампы, которую используем как нагрузку. На рисунке ниже показано, куда устанавливать фоторезистор.

Как только установили фоторезистор, включите схему и немного подождите, пока датчик HC-SR501 от калибруется. Если все правильно подключено (и в помещении включен свет), ничего не произойдет, фоторезистор предотвращает запуск HC-SR501 при освещенной комнаты. Теперь выключим свет и HC-SR501 будет запускаться всякий раз, когда он замечает активность.

Пример №3: HC-SR501 и Arduino

Необходимые детали:
Arduino UNO R3 x 1 шт.
Датчика движения HC-SR501 x 1 шт.
Светодиоды 5 мм x 3 шт.
Резистор 0,125W, 320Om x 3 шт.
Провод DuPont, 2,54 мм, 20 см, F-M (Female — Male) x 1 шт.

Подключение:
Хотя датчик HC-SR501 и самостоятельное устройство, его можно подключить к выводу микроконтроллера. В примере используем контроллер Arduino UNO R3, в котором можем учесть время включения и период сброса. Таким образом, устройство может быть более точным, так как вы не будете пытаться воспринимать движение вперед, когда датчик не готов. Так же, можно подключить несколько датчиков HC-SR501 к Arduino, что позволит позволит отслеживать движение в разных местах.
В следующем примере, мы подключим один HC-SR501 к Arduino в качестве индикации воспользуемся тремя светодиодами, каждый из который отображения состояния датчика :

  • Красный светодиод — этот светодиод указывает, что датчик не готов.
  • Желтый светодиод — этот светодиод указывает, что датчик готов к обнаружению движения.
  • Зеленый светодиод — этот светодиод горит в течение 3 секунд при срабатывании датчика. Вместо светодиода, можно управлять внешним выходом (например, модулем реле, который мы использовали ранее).

Схема подключения:

Перемычка на HC-SR501 необходимо установить в положение «L», а так-же необходимо установить время на минимум (5 секунд), для этого поверните потенциометр в лева до упора. Теперь, когда вы все подключились, необходимо загрузить скетч.

Arduino и HC-SR501 (датчик движения)

Сегодня мы будем знакомиться с модулем, позволяющим отслеживать движение – пироэлектрическим инфракрасным (PIR) датчиком движения. Для примера будем использовать модуль HC-SR501, как один из самых популярных и совместимых с Arduino. Чаще всего он используется в устройствах, предназначенных для управления освещением, и для этого может использоваться вкупе с датчиком освещённости.

Этот модуль небольшой по размерам, потребляет малый ток и очень простой в использовании, благодаря чему его можно использовать и в устройствах с автономным питанием.

Характеристики датчика по даташиту:

  1. Широкий диапазон рабочего напряжения: 4,5 – 20 В постоянного тока;
  2. Потребляемый ток покоя: ≈50 мкА;
  3. Напряжение на выходе: 3.3 В;
  4. Рабочая температура: от -15° C до 70° C;
  5. Размеры: 32*24 мм;
  6. Два режима работы;
  7. Максимальный угол обнаружения – 110°;
  8. Максимальная дистанция срабатывания – от 3 до 7 м (регулируется); При температуре более 30° C это расстояние может уменьшаться.

На модуль установлена линза Френеля, которая фокусирует инфракрасные сигналы на пироэлектрический датчик под названием 500BP. Датчик называется PIR (Passive Infra-Red). Пассивный он потому, что для обнаружения движения не используется какая-либо дополнительная энергия, кроме той, что испускается самими объектами.

500BP состоит из двух чувствительных элементов. Управляющая микросхема модуля регистрирует изменения сигналов от обоих элементов и по характеру их изменения обнаруживает движение объектов, испускающих инфракрасные сигналы (живых организмов).

Характеристики HC-SR501

Модуль HC-SR501 имеет 3 вывода:

  • Питание (VCC);
  • Земля (GND);
  • Выход 3v3 (OUT).

Сразу после подачи питания несколько секунд модуль будет калиброваться, в это время возможны ложные срабатывания. Примерно через минуту он перейдёт в режим ожидания. При срабатывании датчика на выходе появляется логическая единица, напряжение – 3.3 вольта.

Изменения этого сигнала зависят от выбранного режима работы. Он меняется перемычкой (отмечена на фото с подписями какой режим будет выбран). Если выбран H– при нескольких срабатываниях подряд на выходе датчика остаётся высокий уровень, при L– для каждого срабатывания будет подан свой импульс.

Также на самом модуле можно найти два переменных резистора, регулирующих дистанцию обнаружения движения (Distance Adjust) и время, в течение которого на выходе будет логическая единица (Delay Time Adjust). Дистанция регулируется в пределах 3 – 7 метров, задержка от 5 до 300 секунд.

И ещё немного о его особенностях. При работе с датчиком следует избегать источников света и тепла, закрывающих поверхность объектива модуля. Ветер также может создавать помехи. На большем расстоянии датчик более чувствителен.

Для реализации проекта из этой статьи нам потребуются следующие компоненты:

Подключение HC-SR501 к Arduino

Итак, мы прошли теорию, настало время проверить датчик в работе. Первым этапом станет его подключение к Arduino:

  • GND подключаем к одноимённому выводу Arduino;
  • VCC к 5V;
  • OUT подключим к A0.

Подключение выхода модуля к аналоговому пину связано с тем, что цифровые пины Arduino работают с пятивольтовой логикой, а наш модуль рассчитан на 3.3 В. В скетче за логическую единицу мы примем значение более 500 на аналоговом порту. Это будет около 2.44 В и более.

Схема подключения hc-sr501:

Подключение в Arduino IDE

Теперь загружаем в Arduino следующий скетч и открываем монитор порта.

Этот скетч можно использовать лишь для проверки работы датчика, для практического применения он слабо годится.

Теперь расширим функционал устройства, добавив реле и лампу на 220 В.

Реле подключим к 3 цифровому пину Arduino. Питание – 5V.

Общий провод (COM) реле подключаем к фазе 220 В, NO (Normally Open, нормально разомкнутый контакт, пока через реле не потечёт ток, он будет разомкнут) подключаем к лампе, другой контакт лампы – к нолю 220 В.

Читайте также  Новый уровень защиты цепей - электронный предохранитель (e-fuse)

Теперь немного переделаем скетч, убрав отправку данных в последовательный порт и добавив управление реле.

Длительность работы лампы после срабатывания датчика и дальность обнаружения движения будет регулироваться переменным резистором на датчике. В скетче ничего менять не надо.

При желании датчик можно подключать напрямую к реле без использования микроконтроллера. Однако в варианте с микроконтроллером возможна более гибкая настройка и простое расширение функциональности.

Товары, используемые в материале

Arduino NANO V3 (ATmega 328P / CH340G)

HC-SR501 – Инфракрасный датчик движения (PIR)

KY-019 – Одноканальное реле 250В / 10А

Шлейф проводов «Мама — Мама» (30см, 40шт.)

Самые популярные материалы в блоге

За все время

  • BMS – обзор контроллеров защиты аккумуляторов
  • Установка ESP32 в Arduino IDE (руководство для ОС Windows)
  • Arduino и адресная светодиодная лента WS2812B
  • Веб-сервер потокового видео ESP32-CAM (работает с Home Assistant)
  • LED индикатор TM1637 и Arduino – схема подключения

За сегодня

  • DS1302 – схема подключения к Arduino
  • OLED I2C 128 x 64 px – схема подключения к Arduino
  • Установка ESP32 в Arduino IDE (руководство для ОС Windows)
  • Простой веб-сервер метеостанции на ESP8266 и BME280
  • LED индикатор TM1637 и Arduino – схема подключения

6 комментариев . Оставить новый

Добрый день! Собираю себе небольшую охранную систему состоящую из камеры видеонаблюдения, ПИР-Датчика, прожектора подключенного к Ардуино через реле как в вашей схеме. Устанавливать собираюсь под окном, что бы отпугивать всяких моргинальных личностей из полисадника под окном, которые занимаются всяческими хулиганскими и противоправными действиями. Собрал схему, написал код. Код работает, но никак не могу реализовать в нем интервал задержки в 5 секунд (так называемый период охлаждения) необходимый мне для того, что бы система не срабатывала если объект находится в зоне видимости датчика менее 5 секунд. И наоборот активировала систему, если объект находится в зоне видимости более заданного времени. Перепробовал разные варианты, но результат один и тот же, датчик при получении логической единицы, либо сразу активирует систему, либо система работает некорректно, либо по и стечении заданного интервала датчик активирует систему вне зависимости выполено ли условие или нет. Подскажите пожалуйста, как можно реализовать подобный алгоритм?
У меня уже фантазии на исходе. Делал вариант с флажком, как на вашей схеме с счетчика заданием интервала. Система работает корректно только на отключение. Подойдет ли вариант приравнять датчик к кнопке и использовать этот аргумент как смену режима работы датчика?

Здравствуйте! Проверяйте переменную два раза, один по срабатыванию триггера, а второй – через 5 секунд. На самом датчике выставите потенциометром минимально короткую задержку. После 5 секунд проверяйте переменную на наличие логической единицы еще раз, а уже после этого – щелкайте актуаторами

Добрый день уважаемый Вольтик,
помогите пожалуйста в моём случае. У меня есть код и все прекрасно работает. Свет для коридора.
Но я хочу добавить ещё 2 датчика движения на пин. 2 и 4. Понимаю что нужно прописывать для каждого пина свой код и на этом всё! Код оигинальный который работает:
#include

#define piro 8
#define mosfet 9
#define foto A0
#define pot A1
#define switch1 7

#define nightVAL 200
#define minPWM 5
#define smooth 7

Bounce debouncer = Bounce();

pinMode (piro, INPUT);
pinMode (mosfet, OUTPUT);
pinMode (switch1, INPUT_PULLUP);

TCCR1A = TCCR1A & 0xe0 | 1;
TCCR1B = TCCR1B & 0xe0 | 0x09;

pwm = map (analogRead (pot), 0, 1023, 0, 255);

if (digitalRead (switch1) == LOW)
if (debouncer.fell())
<
for (int i1 = 0; i1 = 0; i2–)
<
analogWrite (mosfet, i2);
delay (smooth);
>
>
else if (debouncer.read() == HIGH)
<
if ((analogRead (foto) Arduino Nano[PIN GND]
* PIR Sensor[PIN 5V] -> Arduino Nano[PIN 5V]
* PIR Sensor[PIN OUT] -> Arduino Nano[PIN A0]
* Relay Module[PIN IN] -> Arduino Nano[PIN 3]
*/
//relout – пин модуля реле
const int relout = 3;
//trigger – флаг срабатывания датчика движения
boolean trigger = false;

void setup()
<
/*Стандартная процедура инициализации порта на который подключен модуль реле.
ВАЖНО. – чтобы модуль реле оставался в первоначально выключенном состоянии,нужно записать в порт входа/выхода значение HIGH, это позволит избежать ложных “перещелкиваний”,
и сохранит состояние реле таким, каким оно было до включения всей схемы в работу*/
pinMode(relout, OUTPUT);
digitalWrite(relout, HIGH);

//задержка в минуту для инициализации датчика
delay(60000);
>

void loop()
<
//Считать значение с аналогового порта А0
//Если значение выше 500
if(analogRead(A0) > 500)
<
//Установить флаг срабатывания датчика движения
if(!trigger)
<
trigger = true;
>
>
else
<
//Снять флаг срабатывания датчика движения
trigger = false;
//Выключить реле
digitalWrite(relout, HIGH);
>

//Пока флаг срабатывания датчика движения установлен
while(trigger)
<
//Включить реле
digitalWrite(relout, LOW);
if(analogRead(A0) > 500)
<
//Установить флаг срабатывания датчика движения
if(!trigger)
<
trigger = true;
>
>
else
<
//Снять флаг срабатывания датчика движения
trigger = false;
//Выключить реле
digitalWrite(relout, HIGH);
>
>
>

Зачем нужен тригер и цикл while, когда достаточно одного условия вначале loop ? и потом, логика неверная, реле замкнуто когда нет движений а когда есть – размыкает, там либо менять местами HIGH с LOW, либо проводок в реле перекинуть. Не написано какой режим установлен на датчике H или L.

Обнаруживаем движения и жесты с помощью PIR сенсора и Ардуино

Используем датчик PIR и Arduino для обнаружения движения руки, чтобы потом использовать для работы с электронным оборудованием.

В этой статье мы покажем вам, как сделать детектор жестов из простых компонентов, таких как датчик PIR и Arduino Nano. Также статья касается следующих вопросов:

  • Объясняет применение PIR-датчиков и то, как они работают;
  • Показывает работу с PIR под названием TPA81
  • Использование датчика PIR для обнаружения движения и жестов с помощью Arduino;
  • Создание детектора для увеличения или уменьшения громкости динамика.

Компоненты

Нам понадобятся следующие компоненты и комплектующие для реализации устройства, которое реагирует на движение и жесты на основе PIR датчика:

  • Arduino Nano R3 × 1
  • TPA81 Devantech 8 Pixal — Датчик температуры × 1
  • HC-SR505 Инфракрасный датчик движения PIR × 8
  • Модуль 0.96″ SPI 128X64 OLED дисплей × 1
  • Макетная плата × 1
  • Провода мама/папа × 1
  • Arduino Uno Rev3 × 1

Из программного обеспечения нам понадобится Arduino IDE.

Пассивный инфракрасный датчик: как он работает?

Пассивный инфракрасный датчик (PIR-датчик) — это электронный датчик, который измеряет инфракрасный (ИК) свет, излучаемый объектами в его поле зрения. Они чаще всего используются в детекторах движения основанных на ПИРах. Все объекты с температурой выше абсолютного нуля излучают тепловую энергию. Обычно это излучение не видно человеческому глазу, потому что оно излучает на инфракрасных длинах волн, но оно может быть обнаружено электронными устройствами, предназначенными для такой цели.

Термин «пассив» в этом случае относится к тому факту, что ПИР-устройства не генерируют или не излучают энергию для целей обнаружения. Они работают, обнаруживая инфракрасное излучение, излучаемое или отраженное от объектов. Они не обнаруживают и не измеряют тепло.

TPA81 представляет собой массив термопар, обнаруживающий инфракрасное излучение в диапазоне 2 мкм — 22 мкм. Это длина волны источника тепла. Электрические датчики Pyro, которые обычно используются в охранных сигнализациях и для включения внешних источников света, обнаруживают инфракрасное излучение в том же диапазоне волн. Эти пироэлектрические датчики могут только обнаруживать изменение уровней тепла и, следовательно, они являются детекторами движения.

Хотя они полезны в робототехнике, их применение ограничено, так как они не могут обнаружить и измерить температуру статического источника тепла.

Другим типом датчика является массив термоэлементов. Они используются в бесконтактных инфракрасных термометрах. Они имеют очень широкий угол обзора или поле зрения (FOV) около 100° и нуждаются либо в устройстве сужения, либо в объективе, либо и то другое, для получения более полезного FOV около 12°.

У некоторых есть встроенный объектив. В последнее время стали доступны датчики с массивом термоэлементов, встроенной электроники и кремниевой линзы. Это тип, используемый в TPA81. Он имеет массив из восьми термополей, расположенных в ряд. TPA81 может одновременно измерять температуру 8 соседних точек. TPA81 также может управлять сервоприводом для панорамирования модуля и создания теплового изображения. TPA81 может обнаруживать пламя свечи на расстоянии 2 метров (6 футов) и не подвергается воздействию окружающего света.

Датчики PIR похожи на камеры, которые могут видеть только теплые объекты. Таким образом, TPA81 является тепловой камерой с разрешением 8 пикселей, а, конечно, человеческое тело всегда излучает тепло. Теперь, если мы контролируем датчик PIR контроллером и определим некоторый жест для датчика PIR, мы сможем сделать простой детектор жестов.

В этом материале мы создадим детектор жестов с использованием PIR и Arduino. Мы использовали TPA81 как PIR, но это немного дорого, поэтому, если вы хотите сэкономить деньги, вы можете использовать 8 простых PIR-датчиков без белой головки (часть фокусировки). TPA81 поддерживает протокол I2C и совместим с Arduino Nano. Этот проект поможет вам узнать основы обработки изображений и обнаружения жестов.

Схема соединения

Если вы хотите использовать 8 датчиков PIR вместо TPA81, вы должны подключить 8 одиночных PIR-датчиков к плате Arduino и прочитать их один за другим. Таким образом, вы можете сэкономить деньги.

Не подключайте пины питания PIR к Ардуино 5В. В этой схеме выше вы должны отделить белую часть PIR и поставить их рядом друг с другом.

Используйте отдельные источники питания для PIR-сенсоров.

Для первой схемы (с использованием TPA81) скопируйте код в Arduino IDE. Но сначала вы должны добавить библиотеку, а затем загрузить код. Скачайте библиотеку TPA81 ниже.

Если вы впервые запускаете плату Arduino, не волнуйтесь. Просто выполните следующие действия:

  • Перейдите на страницу IDE на нашем сайте или на сайт www.arduino.cc/en/Main/Software и скачайте программное обеспечение для вашей ОС. Установите программное обеспечение Arduino IDE в соответствии с инструкциями.
  • Запустите среду разработки Arduino, очистите текстовый редактор и скопируйте код (ниже) в текстовый редактор.
  • Перейдите к эскизу и включите библиотеки (ссылки библиотеки выше). Теперь нажмите добавить ZIP-библиотеку и добавьте библиотеки.
  • Выберите плату в «инструменты — платы» — выберите Arduino Nano.
  • Подключите Arduino к компьютеру и установите COM-порт в «инструменты — порты».
  • Нажмите кнопку «Загрузить (стрелка)».
  • У вас все настроено!

После запуска этого кода откройте последовательный терминал в Arduino IDE и посмотрите на температуру массива 8, измеренную TPA81. Первое число в каждой строке относится к общей температуре. Теперь положите руку перед датчиком и посмотрите на температуру вашего тела. Чтобы определить жест вручную, вы должны знать свою ручную температуру и установить ее как смещение. Мы установили её на 29 градусов. Загрузите следующий код, чтобы увидеть движение вашей руки перед TPA81.

Мы написали алгоритм для обнаружения простого жеста, например, увеличения или уменьшения громкости звукового проигрывателя. Вы можете скачать или скопировать следующий код и попробовать его:

Используя вышеуказанный метод, вы можете расширить код, чтобы обнаружить другие жесты, такие как постукивание, перетаскивание, падение и т.п. Затем определите команды для выполнения определенных задач при обнаружении каждого из этих движений и жестов.