Как работает датчик движения pir?
Содержание:
- Скетч
- Принцип работы пироэлектрических (PIR) датчиков движения
- Конструкция устройства
- What is PIR Sensor?
- Step 8: Reading PIR Sensors
- How does PIRs work?
- Датчик в системе «Ардуино»
- Подключение цифрового датчика влажности, температуры
- Example
- Принцип работы
- Подключение PIR датчика движения
- Подключение датчика к Ардуино
- Где применяется датчик освещенности
- Вводная информация
- KY-009, модуль RGB SMD светодиода
- Сигнализация для дома на Arduino
- Подключение PIR датчика к Arduino UNO
- Заключение
Скетч
Последняя часть проекта — загрузка кода ультразвукового датчика в Arduino. Подключите Arduino к настольному компьютеру или ноутбуку с помощью USB-кабеля. В Arduino IDE, введите код, представленный ниже. Вы также можете загрузить код на жесткий диск вашего настольного компьютера или ноутбука. В IDE, вы можете загрузить код, нажав на горизонтальную стрелку.
Этот эскиз считывает ультразвуковой дальномер PING))) и возвращает расстояние до ближайшего объекта, находящегося в радиусе действия. Для этого он посылает импульс на датчик, чтобы инициировать считывание, а затем прослушивает, чтобы импульс вернулся. Длина возвращаемого импульса пропорциональна расстоянию до объекта от датчика.
Схема:
- +V подключение PING))) подключено к +5V
- GND-соединение PING))) подключено к заземлению.
- SIG-соединение PING))) подключено к цифровому контакту 7
Код проекта:
В IDE сразу видно изменение данных о расстоянии. На рисунке показаны данные примера сессии измерения расстояния.
Поместите небольшую линейку между ультразвуковым датчиком и объектом, от которого вы измеряете расстояние. Насколько точны ваши показания по сравнению с фактическим измеренным расстоянием?
Измерения должны быть очень близки к идентичным, что означает, что вы успешно создали электронную рулетку. С помощью электронной рулетки вы можете замерять расстояние до различных объектов.
Принцип работы пироэлектрических (PIR) датчиков движения
PIR датчики не такие простые как может показаться на первый взгляд. Основная причина — большое количество переменных, которые влияют на его входной и выходной сигналы. Чтобы объяснить основы работы ПИР датчиков, мы используем рисунок, приведенный ниже.
Пироэлектрический датчик движения состоит из двух основных частей. Каждая из частей включает в себя специальный материал, чувствительный к инфракрасному излучению. В данном случае линзы особо не влияют на работу датчика, так что мы видим два участка чувствительности всего модуля. Когда датчик находится в состоянии покоя, оба сенсора определяют одинаковое количество излучения. Например, это может быть излучение помещения или окружающей среды на улице. Когда теплокровный объект (человек или животное), проходит мимо, он пересекает зону чувствительности первого сенсора, в результате чего на модуле ПИР датчика генерируются два различных значения излучения. Когда человек покидает зону чувствительности первого сенсора, значения выравниваются. Именно изменения в показаниях двух датчиков регистрируются и генерируют импульсы HIGH или LOW на выходе.
Конструкция PIR датчика
Чувствительные элементы ПИР датчика устанавливается в металлический герметический корпус, который защищает от внешних шумов, перепадов температур и влажности. Прямоугольник в центре сделан из материала, который пропускает инфракрасное излучение (обычно это материал на основе силикона). За этой пластиной устанавливаются два чувствительных элемента.
Рисунок из даташита Murata:
Рисунок из даташита RE200B:
На рисунке из даташита RE200B видно два чувствительных элемента:
На рисунке выше приведена внутренняя схема подключения.
Линзы
Инфракрасные датчики движения практически одинаковые по своей структуре. Основные отличия — чувствительность, которая зависит от качестве чувствительных элементов. При этом значительную роль играет оптика.
На рисунке выше приведен пример линзы из пластика. Это значит, что диапазон чувствительности датчика представляет из себя два прямоугольника. Но, как правило, нам нужно обеспечить большие углы обзора. Для этого можно использовать линзы, подобные тем, которые используются в фотоаппаратах. При этом линза для датчика движения должна быть маленькая, тонкая и изготавливаться из пластика, хотя он и добавляет шумы в измерения. Поэтому в большинстве PIR датчиков используются линзы Френеля (рисунок из Sensors Magazine):
Линзы Френеля концентрируют излучение, значительно расширяя диапазон чувствительности пиродатчиков (рисунок с BHlens.com)
Рисунок из Cypress appnote 2105:
Теперь у нас есть значительно больший диапазон чувствительности. При этом мы помним, что у нас два чувствительных элемента и нам нужны не столько два больших прямоугольника, сколько большое количество маленьких зон чувствительности. Для этого линза разделяется на несколько секций, каждая из которых представляет из себя отдельную линзу Френеля.
На рисунке ниже можно увидеть отдельные секции — линзы Френеля:
На этом макроснимке обратите внимание, что фактура отдельных линз отличается:
В результате формируется целый набор чувствительных участков, которые взаимодействуют между собой.
Рисунки из даташита NL11NH:
Ниже еще один рисунко. Более яркий, но менее информативный
Кроме того, обратите внимание, что у большинства датчиков угол обзора составляет 110 градусов, а не 90
Рисунок из IR-TEC:
Конструкция устройства
Корпус датчиков обычно выполняется из металла. Внутри содержатся два кристалла – это и есть чувствительные к термическому излучению элементы
Важной конструкционной особенностью детекторов этого типа является своего рода окошко в металлической оболочке. Оно предназначено для допуска излучения нужного диапазона
Такая фильтрация как раз и предназначена для повышения точности работы кристаллов. Перед окном в корпусе также располагается оптический модуль, который формирует необходимую диаграмму направленности волн. Чаще всего PIR-датчик снабжается линзой Френеля, штампованной на пластике. Для обработки уже электрических сигналов и отсечения помех используется и полевой транзистор. Он располагается возле чувствительных кристаллов и, несмотря на задачу отсечения помех, в некоторых моделях может понижать эффективность функции кристалла.
What is PIR Sensor?
A passive infrared sensor is an electronic sensor that measures infrared light radiating from objects in its field of view. They are most often used in PIR-based motion detectors. PIR sensors are commonly used in security alarms and automatic lighting applications.
Technically, PIR is made of a pyroelectric sensor, which is able to detect different levels of infrared radiation. For example, Everything emits varied level radiation and the level of radiation will increase with the increase of the object’s temperature. Actually, the motion detector is separated by two parts since motion change is what we want, rather than IR level. The output will swing high or low if one half see different IR radiation than the other.
Step 8: Reading PIR Sensors
Connecting PIR sensors to a microcontroller is really simple. The PIR acts as a digital output so all you need to do is listen for the pin to flip high (detected) or low (not detected).Its likely that you’ll want reriggering, so be sure to put the jumper in the H position!Power the PIR with 5V and connect ground to ground. Then connect the output to a digital pin. In this example we’ll use pin 2.The code is very simple, and is basically just keeps track of whether the input to pin 2 is high or low. It also tracks the state of the pin, so that it prints out a message when motion has started and stopped: /* PIR sensor tester*/int ledPin = 13; // choose the pin for the LEDint inputPin = 2; // choose the input pin (for PIR sensor)int pirState = LOW; // we start, assuming no motion detectedint val = 0; // variable for reading the pin statusvoid setup() { pinMode(ledPin, OUTPUT); // declare LED as output pinMode(inputPin, INPUT); // declare sensor as input Serial.begin(9600);}void loop(){ val = digitalRead(inputPin); // read input value if (val == HIGH) { // check if the input is HIGH digitalWrite(ledPin, HIGH); // turn LED ON if (pirState == LOW) { // we have just turned on Serial.println(«Motion detected!»); // We only want to print on the output change, not state pirState = HIGH; } } else { digitalWrite(ledPin, LOW); // turn LED OFF if (pirState == HIGH){ // we have just turned of Serial.println(«Motion ended!»); // We only want to print on the output change, not state pirState = LOW; } }}Don’t forget that there are some times when you don’t need a microcontroller. A PIR sensor can be connected to a relay (perhaps with a transistor buffer) without a micro!
How does PIRs work?
The passive infrared alarm does not radiate energy to space but relies on receiving infrared radiation from the human body to make an alarm. Any object with temperature is constantly radiating infrared rays to the outside world. The surface temperature of the human body is 36-27 ° C, and most of its radiant energy is concentrated in the wavelength range of 8-12 um.
Passive infrared alarms can be classified into infrared detectors (infrared probes) and alarm control sections. The most widely used infrared detector is a pyroelectric detector, which is used as a sensor for converting human infrared radiation into electricity. If the human infrared radiation is directly irradiated on the detector, it will, of course, cause a temperature change to output a signal, but in doing so, the detection distance will not be far. In order to lengthen the detection distance of the detector, an optical system must be added to collect the infrared radiation, usually using a plastic optical reflection system or a Fresnel lens made of plastic as a focusing system for infrared radiation.
In the detection area, the infrared radiation energy of the human body through the clothing is received by the lens of the detector and focused on the pyroelectric sensor. When the human body (intruder) moves in this surveillance mode, it enters a certain field of view in sequence and then walks out of the field of view. The pyroelectric sensor sees the moving human body for a while and then does not see it, so the human body The infrared radiation constantly changes the temperature of the pyroelectric material so that it outputs a corresponding signal, which is the alarm signal.
Датчик в системе «Ардуино»
Комплекс «Ардуино» является одной из самых популярных систем управления домашней автоматикой. Это контроллер, к которому подключаются источники освещения, системы мультимедиа, отопительные приборы и другая бытовая техника. Датчики в этом комплексе не являются конечными функциональными устройствами – они лишь выполняют роль индикаторов, в зависимости от состояния которых центральный блок с микропроцессором принимает то или иное решение в соответствии с заложенным алгоритмом. Подключается PIR-датчик «Ардуино» через три канала, среди которых выходной цифровой сигнал, а также линии питания с разной полярностью – GND и VCC.
Подключение цифрового датчика влажности, температуры
Два популярных датчика — DHT11, DHT22 — предназначены для замера влажности и температуры (про подключение датчика температуру мы еще поговорим ниже отдельно); недорогое решение, отлично подходят для простых схем и обучения. Термистор, ёмкостной датчик — основа DHT11 и DHT22. Внутренний чип выполняет АЦП, давая на выходе «цифру», которую поймёт любой микроконтроллер.
DHT11 отличается от DHT22 диапазоном измерения и частотностью опроса:
- влажность — 20-80% для DHT11 и 0-100% для DHT22;
- температура — 0°C до +50°C для DHT11 и -40°C до +125°C для DHT22;
- опрос — ежесекундный для DHT11 и раз в две секунды для DHT22.
Оба датчика DHT имеют стандартных 4 вывода:
- Питание датчиков.
- Шина данных.
- Не задействован.
- Земля.
Вывод данных и питания требует подключения между ними резистора 10 кОм.
Для DHT-датчиков разработана библиотека DHT.h. При загрузке скетча в контроллер монитор порта должен отобразить текущие значения влажности, температуры. Проверить работоспособность просто — достаточно подышать на датчик и взять его в руки: температура и влажность должны поменяться.
Возможен вывод значений на экран LCD 1602 I2C, если включить его в систему.
При помощи этих датчиков можно соорудить автоматизированную систему полива почвы на открытом воздухе, в теплице и даже на подоконнике. Или организовать систему сушки ягод — последние обдуваются или нагреваются в зависимости от влажности ягод.
Также некоторые акватеррариумы требуют особых условий влажности, которые легко контролировать при помощи DHT1 и DHT22.
Example
To use this module, add it to the modules array in the file:
modules: { module: 'MMM-PIR-Sensor', position: "top_center", // Remove this line to avoid having an visible indicator config: { sensorPin: 23, powerSavingDelay: 60, // Turn HDMI OFF after 60 seconds of no motion, until motion is detected again preventHDMITimeout: 4, // Turn HDMI ON and OFF again every 4 minutes when power saving, to avoid LCD/TV timeout supportCEC: true, presenceIndicator: "fa-eye", // Customizing the indicator presenceOffIndicator: "fa-eye", // Customizing the indicator presenceIndicatorColor: "#f51d16", // Customizing the indicator presenceOffIndicatorColor: "#2b271c" // Customizing the indicator } }
Принцип работы
Для понимания специфики работы данного устройства стоит обратиться к особенностям реакций некоторых кристаллических веществ. Используемые в датчике чувствительные элементы обеспечивают эффект поляризации в моменты, когда на них падает излучение. В данном случае идет речь о тепловом излучении от человеческого тела. При резком изменении характеристик в наблюдаемой зоне меняется и напряженность в электрическом поле кристалла. Собственно, по этой причине инфракрасный датчик PIR также называется пироэлектрическим. Как и все детекторы, такие устройства не идеальны. В зависимости от условий они могут срабатывать на ложные сигналы или не определять целевые явления. Однако по совокупности эксплуатационных свойств в большинстве случаев они оправдывают свое применение.
Подключение PIR датчика движения
Большинство модулей с инфракрасными датчиками движения имеют три коннектора на задней части. Распиновка может отличаться, так что прежде чем подключать, проверьте ее! Обычно рядом с коннекторами сделаны соответсвующие надписи. Один коннектор идет к земле, второй выдает интересующий нас сигнал с сенсоров, третий — земля. Напряжение питания обычно составляет 3-5 вольт, постоянный ток. Однако иногда встречаются датчики с напряжением питания 12 вольт. В некоторых больших датчиках отдельного пина сигнала нет. Вместо этого используется реле с землей, питанием и двумя переключателями.
Для прототипа вашего устройства с использованием инфракрасного датчика движения, удобно использовать монтажную плату, так как большинство данных модулей имеют три коннектора, расстояние между которыми рассчитано именно под отверстия макетки.
В нашем случае красный кабель соответсвует питанию, черный — земле, а желтый — сигналу. Если вы подключите кабели неправильно, датчик не выйдет из строя, но работать не будет.
Тестирование PIR датчика движения
Соберите схему в соответсвии с рисунком выше. В результате, когда PIR датчик обнаружит движение, на выходе сгенерируется сигнал HIGH, который соответсвует 3.3 В и светодиод загорится.
При этом учтите, что пироэлектрический датчик должен ‘стабилизироваться’. Установите батарейки и подождите 30-60 секунд. На протяжении этого времени светодиод может мигать. Подождите, пока мигание закончится и можно начинать махать руками и ходить вокруг датчика, наблюдая за тем, как светодиод зажигается!
Настройка перезапуска датчика
У пироэлектрического датчика движения есть несколько настоек. Первой мы рассмотрим ‘перезапуск’.
После подключения, посмотрите на заднюю поверхность модуля. Коннекторы должны быть установлены в левом верхнем углу L, как это показано на рисунке ниже.
Обратите внимание, что при таком варианте подключения, светодиод не горит постоянно, а включается-выключается, когда вы двигаетесь возле него. Это опция ‘без перезапуска’ (non-retriggering)
Теперь установите коннектор в позицию H. После тестирования окажется, что светодиод горит постоянно, если кто-то движется в пределах зоны чувствительности датчика. Это режим ‘перезапуск’.
Рисунок ниже из даташита датчика BISS0001:
Для большинства случаев режим ‘перезапуск’ (коннектор в позиции H кк это показано на рисунке ниже) лучше.
Настраиваем чувствительность
На многих инфракрасных датчиках движения, в том числе и у компании Adafruit, установлен небольшой потенциометр для настройки чувствительности. Вращение потентенциометра по часовой стрелке добавляет чувствительность датчику.
Изменение времени импульса и времени между импульсами
Когда мы рассматривает PIR датчики, важны два промежутка времени ‘задержки’. Первый отрезок времени — Tx: как долго горит светодиод после обнаружения движения. На многих пироэлектрических модулях это время регулируется встроенным потенциометром.
Второй отрезок времени — Ti: как долго светодиод гарантированно не загорится, когда движения не было. Изменять этот параметр не так просто, для этого может понадобится паяльник.
Давайте взглянем на даташит BISS:
На датчиках от Adafruit есть потенциометр, отмеченный как TIME. Это переменный резистор с сопротивлением 1 мегаом, который добавлен к резисторам на 10 килоом. Конденсатор C6 имеет емкость 0.01 микрофарат, так что:
Tx = 24576 x (10 кОм + Rtime) x 0.01 мкФ
Когда потенциометр Rtime в ‘нулевом’ — полностью повернут против часовой стрелки — положении (0 мегаом):
Tx = 24576 x (10 кОм) x 0.01 мкФ = 2.5 секунды (примерно)Когда потенциометр Rtime полностью повернут по часовой стрелке (1мегаом):
Tx = 24576 x (1010 кОм) x 0.01 мкФ = 250 секунд (примерно)
В средней позиции RTime время будет составлять около 120 секунд (две минуты). То есть, если вы хотите отслеживать движение объекта с частотой раз в минуту, поверните потенциометр на 1/4 поворота.
Для более старых/других моделей PIR датчиков
Если на вашем датчике нет потенциометров, можно провести настройку с помощью резисторов.
Нас интересуют резисторы R10 и R9. К сожалению, китайцы умею многое. В том числе и путать надписи. На рисунке выше приведен пример, на котором видно, что перепутаны R9 с R17. Отследить подключение по даташиту. R10 подключен к 3 пину, R9 — к 7 пину.
Например:
Tx is = 24576 * R10 * C6 = ~1.2 секунд
R10 = 4.7K и C6 = 10 нанофарад
и
Ti = 24 * R9 * C7 = ~1.2 секунд
R9 = 470K и C7 = 0.1 микрофарад
Вы можете изменить время задержки установив различные резисторы и конденсаторы.
Подключение датчика к Ардуино
Подключение датчика движения к Ардуино не представляет особой сложности. На датчик надо подать питание (обычно 5 В, но могут быть и другие варианты), а также присоединить выход сенсора к цифровому входу Ардуино. Схема подключения проста, ее можно наглядно рассмотреть на рисунке:
Контактная группа датчика состоит из трех электродов. Два из них подают питание с Ардуино на датчик, а третий передает сигнал с его выхода на управляющее устройство. Земля (на рисунке это черный провод) подключается к контакту GND группы «power» микрокомпьютера. Рядом с ним находится контакт питания +5 V, к которому надо подключить соответствующий контакт датчика (красный провод на рисунке). Выход, или сигнальный (желтый) провод присоединяют к контакту 2 группы «digital» (так показано на рисунке, но фактически можно подключиться к любому цифровому контакту на плате Ардуино).
Способ подключения ИК датчиков к Ардуино один и тот же, он не меняется при введении другого скетча. Есть разные модели микропроцессоров, отличающиеся от Arduino Uno некоторыми параметрами (количество слотов, размер памяти и тому подобное). Выбор модели зависит от сложности будущих задач и от степени подготовки пользователя.
Где применяется датчик освещенности
После того как подключим устройство регулирования освещенности к системе Ардуино его можно использовать для практических целей. Такой элемент идеально подходят для организации ландшафтного и фасадного освещения.
Достоинство использования автоматики заключается в том, что человеку не требуется отвлекаться на то, чтобы включить подсветку здания или любого другого объекта, когда это необходимо. Более того, отключение системы также произойдет автоматически, когда уровень освещенности достигнет определенного уровня. В последнем случае, датчик позволит также экономить немалое количество электроэнергии. Даже при использовании светодиодных элементов, которые эксплуатируются долгое время, своевременное отключение уменьшит расход электричества, а также продлит срок службы приборам освещения.
Идеально подходит датчик Ардуино и для бизнеса по выращиванию растений. Если культивирование светолюбивых овощей осуществляется в теплице, то своевременное включение подсветки позволит повысить урожайность и товарный вид продукции.
Вводная информация
Если раньше существовали специализированные конструкторы с ограниченными наборами функций и жёстко заданными параметрами, то сегодняшнее разнообразие конструкторов просто поражает: настоящие микропроцессорные системы, собираемые на коленке, имеют практически неограниченный функционал. Богатая фантазия, широкая элементная база, большие комьюнити фанатов и инженеров и поддержка производителем — основные отличительные особенности таких востребованных рынком наборов для робототехники.
Один из них и наиболее популярный, что естественно, — Ардуино. Конструктор моментальной сборки электронных автоматических устройств любой степени сложности: высокой, средней и низкой. Эту платформу называют иначе «physical computing» за плотное взаимодействие с окружающей средой. Печатная плата с микропроцессором, открытый программный код, стандартные интерфейсы и подключение датчиков к Ардуино — слагаемые его популярности.
Система Ардуино — плата, которая объединяет все нужные компоненты, обеспечивающие полный цикл разработки. Сердце этой платы — микроконтроллер. Он обеспечивает управление всей периферией. Датчики, подключаемые к системе, позволяют системе «общаться» и взаимодействовать с окружением: анализировать, отмечать изменять.
KY-009, модуль RGB SMD светодиода
Модуль RGB SMD светодиода |
Заменяется на модуль 2020 или 5050 RGB SMD. Стоимость начинается от 1 р за штуку, высылается правда большими партиями, но если поискать то можно найти и поштучно, сам же модуль от 50 р. |
Довольно привлекательный модуль для начинающих. Позволяет работать с RGB матрицей и получать буквально все цвета светового спектра используя ШИМ выходы контроллера. Поставляется БЕЗ токоограничивающих резисторов, поэтому при установке не забудьте их установить. Возможно заменить на обычный RGB светодиод, все зависит от предназначения и места установки. Недостаток- занимает сразу 3 ШИМ выхода микроконтроллера для полноценной работы. Достоинства- можно визуализировать процесс переключением цветов светодиода. Например: зеленый- работа, красный- остановка или аварийный стоп, синий- настройка и т.д. Кроме того в устройствах с температурными датчиками можно визуализировать степень нагрева термоэлемента. Т.е. чем большую температуру имеет датчик тем «краснее» светодиод и наоборот, чем холоднее- тем «синее». |
Сигнализация для дома на Arduino
Рассмотрим, как сделать на Arduino Uno или Nano сигнализацию для дома, загородного садового участка или гаража. В проекте мы использовали сенсор движения, датчик воды и температуры — это набор основных сенсоров для самой простой системы оповещения. Вы узнаете о прорыве водопровода, снижении температуры в доме или проникновении посторонних людей в помещении в любое время и в любом месте.
Датчики Ардуино для охранной сигнализации
Датчики Ардуино для домашней сигнализации
В данном проекте для передачи информации по сети Интернет мы использовали старый смартфон. Соответственно в месте расположения вашей недвижимости должен быть сигнал GPRS и у любого сотового оператора подключен самый простой тариф с выходом в Интернет. Если эти условия не выполняются, то в охранной системе предусмотрена звуковая сирена, которая тоже может спугнуть грабителей.
В проекте использованы самые простые сенсоры — температурный датчик DHT11, датчик утечки воды, который можно сделать самому, а также датчик движения. Если вы решите сделать более сложную сигнализацию — рекомендуем вам посмотреть проект пожарной сигнализации или сигнализации на GSM. Также потребуется установить приложение на смартфон и зарегистрировать два аккаунта в Твиттере.
Подключение PIR датчика к Arduino UNO
Теперь, когда у нас есть полное понимание того, как работает PIR датчик, мы можем подключить его к нашей плате Arduino!
Подключить PIR датчики к микроконтроллеру очень просто. PIR действует как цифровой выход, поэтому всё, что вам нужно делать, это отслеживать, когда на его выходном выводе установится высокий логический уровень (обнаружено движение) или низкий логический уровень (не обнаружено). Подайте на PIR датчик напряжение 5 В и подключите землю. Затем подключите выход к цифровому выводу 2.
Вам нужно установить перемычку на HC-SR501 в положение H (повторный запуск), чтобы он работал правильно. Вам также нужно будет установить время на минимум (3 секунды), повернув потенциометр «время» против часовой стрелки до упора. Установите чувствительность в любое положение, которое вам нужно, либо, если не уверены, установите ее в среднее положение.
Теперь вы готовы загрузить код и начать работу PIR датчиком.
Рисунок 10 – Подключение PIR датчика к Arduino UNO
Заключение
Вхождение сенсорных компонентов в охранные системы радикально изменило принципы их работы. С одной стороны, детекторы позволили поднять на новый уровень безопасность обслуживаемого объекта, а с другой – усложнили техническую инфраструктуру, не говоря о системе управления. Достаточно сказать, что PIR-датчик Arduino свои возможности в полной мере раскрывает только при условии программирования на автоматическую работу. Причем он взаимодействует не только с прямыми регистраторами сигнала о вторжении, но и с другими чувствительными элементами, которые повышают его эффективность. В то же время производители стремятся и облегчать задачи самих пользователей. Для этого разрабатываются устройства, работающие без проводов, вводятся модули управления датчиками с помощью смартфонов и т. д.