Підключення pir датчика до arduino, гурток - робототехніка
Розглянемо на цьому занятті піроелектричний інфрачервоний датчик руху. Розповімо, як підключити PIR sensor до Ардуіно і розглянемо скетч для автоматичного світильника, який буде включатися при виявленні руху в кімнаті. Також розглянемо функцію millis () в мові програмування C ++, який досить часто потрібно використовувати в різних проектах.
Motion PIR sensor що це
Сьогодні вже ніхто не дивується при автоматичному включенні освітлення в під'їздах багатоквартирних будинків, які спрацьовують при проходженні людини. У більшості приладів встановлені пасивні датчики руху (PIR). Розглянемо в цій статті пристрій датчика руху, схему його підключення до Arduino UNO і зберемо на його основі автоматичний вмикач освітлення.
Лінза Френеля концентрує інфрачервоне випромінюванняМодуль з ПІР датчиком складається з піроелектричного елемента під пластиковою лінзою Френеля - циліндрична деталь з прямокутним кристалом в центрі, який уловлює рівень інфрачервоного випромінювання і пропускає його через себе. При підключенні IR до Arduino ми вже з'ясували, що всі предмети мають інфрачервоне випромінювання і чим вище температура, тим інтенсивніше випромінювання.
Пристрій і терморегулятори піроелектричного датчика рухуPIR датчики руху практично однакові по пристрою. Діапазон чутливості PIR сенсорів для Ардуіно до 6 метрів, кут огляду 110 ° x 70 °. Харчування - 5 Вольт, а вихідний цифровий сигнал має значення 0, коли руху немає і значення 1 при наявності руху. Чутливі елементи встановлюється в герметичний корпус, який захищає від вологості і перепадів температур.
PIR датчик руху підключення до Arduino
Більшість модулів PIR sensor Ардуіно мають три виходи на задній частині (див. Фото вище). Терморегулятори у різних виробників може відрізнятися, але поруч з виходами зроблені написи, тому, перед підключенням до плати Ардуіно уважно вивчіть модуль. Один вихід йде до GND, другий до харчування 5 Вольт (позначений VCC), а третій вихід (позначений, як OUT) видає цифровий сигнал з піроелектричного сенсора.
Схема підключення PIR датчика до Ардуіно УНОДля заняття нам знадобляться наступні деталі:
- Плата Arduino Uno;
- Макетна плата;
- USB-кабель;
- PIR датчик руху;
- 1 світлодіод;
- 1 резистор 220 Ом;
- Провід «папка-папка» і «папка-мамка».
Зберіть схему, як на фото вище. Підключіть світлодіод до виходу 12 на Ардуіно і завантажте наступний скетч для PIR датчика.
Пояснення до коду:
- За допомогою директиви #define для портів 2 і 12 ми призначили відповідні імена PIR і LED. Це зроблено лише для нашої зручності;
- Рядок int pirVal = digitalRead (PIR); дає команду микроконтроллеру на зчитування інформації з порту 2.
На що звернути увагу:
- В умови оператора if ми використовували подвійне рівність: if (pirVal == HIGH). Згідно мови програмування Ардуіно. подвійне рівність є оператором порівняння. Не плутайте цей оператор з одинарним рівністю.
Завдання для самостійного виконання:
- Замініть в скетчі керуючий оператор else на оператор if з умовою виключення світлодіода при відсутності руху.
Світильник на Ардуіно з датчиком руху
Не змінюючи збірки, завантажте скетч для розумного світильника з PIR датчиком.
Пояснення до коду:
- За допомогою функції counttime = millis (); ми починаємо відлік часу. При цьому, на відміну від функції delay. яка повністю перериває програму, мікроконтролер може продовжувати інші обчислення в скетчі.
На що звернути увагу:
- Ми змінили час вимикання світильника. Якщо в першому скетчі світлодіод вимикався відразу після сигналу LOW з PIR датчика, що не завжди зручно. То зараз ми даємо 1 хвилину до вимкнення світильника, на випадок якщо людина не вийшла з кімнати, а просто ненадовго зупинився.
Завдання для самостійного виконання:
- Змініть в скетчі час вимикання світлодіоди - відключення освітлення через 2 хвилини, після закінчення руху в кімнаті.