Harakat sensori va uni Arduino-ga ulash haqida. PIR sensori: tavsif va ulanish ko'rsatmalari Arduino uno harakat sensorlarining ishlash printsipi

Bizning nomukammal dunyomizda fuqarolarning mulki va xotirjamligini himoya qilish uchun mo'ljallangan turli xil texnik narsalar katta talabga ega. Shuning uchun, menimcha, harakat sensori bilan jihozlangan xavfsizlik signallarini hech qachon ko'rmagan odamni topish qiyin. Ularning ishlash fizikasi, shuningdek, ularni amalga oshirish turli xil bo'lishi mumkin, ammo piroelektrik passiv infraqizil (PIR) sensorlar, ehtimol, eng keng tarqalgan.

Shunga o'xshash narsa:


Ular infraqizil diapazondagi nurlanishning o'zgarishiga, ya'ni uning o'rta qismida - 5-15 mikronga ta'sir qiladi (o'rtacha sog'lom odamning tanasi taxminan 9 mikron oralig'ida chiqaradi). Yakuniy foydalanuvchi nuqtai nazaridan, narsa juda oddiy - quvvat kiritish (odatda 12 volt) va o'rni chiqishi (odatda qattiq holatda va odatda yopiq kontaktlar bilan). Kimdir iliq o'tib ketdi - estafeta ishladi. Zerikish. Ammo ichkarida narsalar unchalik oddiy emas.
Bugun biz nazariyaga bir oz vaqt ajratamiz, so'ngra biz bunday qurilmadan birini ajratib olamiz va uni shunchaki harakat faktiga javob beradigan, balki harakat yo'nalishini qayd qiluvchi sensorga aylantiramiz.

Keling, amaliy mashg'ulotlarga o'tamiz

Nazariy ma'lumotlar bilan qurollangan holda, keling, lehim temirini olaylik. Suratda qismlarga ajratilgan sensor ko'rsatilgan (Fresnel linzalari bilan old qopqoq va metall ekran olib tashlangan).


Biz piroelektrik sensorga eng yaqin bo'lgan mikrosxemaning belgilariga qaraymiz (derazali dumaloq metall - bu shunday) va (oh, omad tilaymiz!) Bu LM324 - to'rtta op-amp bo'lib chiqdi. Atrofdagi elementlarni o'rganib chiqib, biz maqsadlarimizga mos keladigan op-amp pinini topamiz (mening holimda u mikrosxemaning 1-pinasi bo'lib chiqdi). Endi topdikmi, tekshirsak yaxshi bo'lardi. Buning uchun odatda osiloskop ishlatiladi. Qo'limda yo'q edi. Ammo bu Arduino bo'lib chiqdi. Kuchaytirgandan so'ng signal darajasi bir necha voltga teng bo'lgani uchun va bizga maxsus o'lchov aniqligi kerak emas (sifatli baholash etarli), Arduino ADC kirishlari juda mos keladi. Biz simlarni op-ampning topilgan chiqishi va quvvat manbai minusiga lehimlaymiz va ularni non paneliga keltiramiz. Simlar uzun bo'lmasligi kerak. Aks holda, sensor signalini emas, balki butunlay boshqacha narsani o'lchash imkoniyati mavjud.
Keling, aqlli narsaga erishish uchun signalni qanchalik tez o'qishimiz kerakligini o'ylab ko'raylik. Yuqorida foydali signalning chastota diapazoni taxminan 10 Gts bilan cheklanganligi aytilgan. Kotelnikov teoremasini (yoki Nyquist teoremasini, qaysi birini afzal ko'rsangiz) eslab, biz 20 Gts dan yuqori chastotali signalni o'lchashning ma'nosi yo'q degan xulosaga kelishimiz mumkin. Bular. 50 ms namuna olish davri yaxshi. Biz A1 portini har 50 ms o'qiydigan va uning qiymatini ketma-ketlikka tushiradigan oddiy eskiz yozyapmiz (to'g'ri aytganda, signal o'lchovlari har 50 ms dan kamroq tez-tez sodir bo'ladi, chunki portga yozish ham vaqt talab etadi, ammo bizning maqsadlarimiz uchun bu emas. muhim).

Uzoq vaqt davomida imzolanmagan; void setup() ( Serial.begin(9600); pinMode(A1, INPUT); time=millis(); ) void loop() ( if ((millis()-time) >= 50) ( Serial.println(analogRead) (A1)); vaqt=millis();

Biz uni yoqamiz va sensorning oldida qo'llarimizni silkitamiz (siz yugurishingiz mumkin, bu yanada foydalidir). Kompyuter tomonida biz portdagi ma'lumotlarni faylga tashlaymiz.
stty -F /dev/ttyUSB0 xom tezlik 9600 ospeed 9600 -ignpar cs8 -cstopb -echo cat /dev/ttyUSB0 > output.txt
Biz grafik quramiz (faylga o'qishlar raqamlangan ustun qo'shilgan):
gnuplot> chiziqlar bilan 1:2 yordamida "output.txt" ni chizing


Va biz aslida nimani xohlayotganimizni ko'ramiz - kuchlanishning ko'p qutbli ko'tarilishi. Hurray, nazariya ishlaydi va sim bo'lishi kerak bo'lgan joyda lehimlanadi. Grafikni oddiy tahlil qilish (boshqacha aytganda, tekshirish) signalning o'rtacha qiymatdan 150 birlik og'ishini harakat mavjudligining ko'proq yoki kamroq ishonchli belgisi deb hisoblash mumkin degan xulosaga kelishga imkon beradi.
Nihoyat harakat yo'nalishi sensori qilish vaqti keldi.
Keling, diagrammani o'zgartiramiz. Analog sensor signaliga qo'shimcha ravishda biz bir juft LEDni Arduino-ga ulaymiz (2 va 3-portlar, oqim cheklovchi rezistorlarni unutmang) va biroz murakkabroq eskizni yozamiz.

Kengaytirish

int a1; int state2=0; uzoq o'rtacha = 0; int n=0; imzolanmagan uzoq vaqt; bekor o'rnatish() ( pinMode(2, OUTPUT); pinMode(3, OUTPUT); pinMode(A1, INPUT); digitalWrite(2, LOW); digitalWrite(3, LOW); kechikish (30000); //mening sensorim keyin yoqish // ish boshlashdan oldin, 30 soniya vaqt kerak bo'ladi = millis ( // biz uning o'rtacha qiymatini hisoblash uchun ming marta o'lchaymiz.<= 1000) { ++n; a1=analogRead(A1); average=average+a1; delay(50); } average=average/1000; //одновременным включением светодиодов //сигнализируем, что система готова digitalWrite(2, HIGH); digitalWrite(3, HIGH); delay(1000); digitalWrite(2, LOW); digitalWrite(3, LOW); time=millis(); } void loop() { //опрашиваем датчик каждые 50 мс if ((millis()-time) >= 50) ( //bu oddiy ifoda bilan biz analog signalni // diskretga aylantiramiz -1/0/1 a1=(analogRead(A1)-o'rtacha)/150; // agar mavjud bo'lsa signalning qutbliligini o'zgartiring, keyin // kerakli LED kalitini yoqing (a1) ( 1-holat: agar (holat2=-1) (digitalWrite(2, HIGH);digitalWrite(3, LOW);) holat2= a1; case -1: if (state2=1) (digitalWrite (3, HIGH);) state2=a1;


Sensorning radiatsiyaviy naqshining barcha nurlari to'plamidan faqat bitta juftlikni qoldirish uchun biz Fresnel linzalaridan boshqa hammasini qog'oz ekran bilan qoplaymiz.


Biz natijadan mamnunmiz.

Teglar:

  • PIR
  • Harakat sensori
  • arduino
Teglar qo'shing

Arduino harakat sensori yopiq hududda issiqlik chiqaradigan jismlarning (odamlar, hayvonlar) harakatini kuzatish imkonini beradi. Bunday tizimlar ko'pincha uy sharoitida, masalan, kirishda yoritishni yoqish uchun ishlatiladi. Ushbu maqolada biz Arduino loyihalarida PIR sensorlarini ulashni ko'rib chiqamiz: harakatga javob beradigan passiv infraqizil sensorlar yoki piroelektrik sensorlar. Kichik o'lchamlar, arzon narxlardagi, ishlash qulayligi va ulanishdagi qiyinchiliklarning yo'qligi bunday sensorlarni har xil turdagi signalizatsiya tizimlarida ishlatishga imkon beradi.

PIR harakat sensori dizayni unchalik murakkab emas - u harakat zonasida ma'lum darajadagi infraqizil nurlanish mavjudligiga juda sezgir bo'lgan (markazda kristalli silindrsimon qism) piroelektr elementidan iborat. Ob'ektning harorati qancha yuqori bo'lsa, nurlanish shunchalik ko'p bo'ladi. PIR sensori tepasida yarim shar o'rnatilgan bo'lib, u bir nechta bo'limlarga (linzalarga) bo'linadi, ularning har biri issiqlik energiyasining radiatsiyasi harakat sensorining turli segmentlariga yo'naltirilganligini ta'minlaydi. Ko'pincha Fresnel linzalari linza sifatida ishlatiladi, bu termal nurlanish kontsentratsiyasi tufayli Arduino infraqizil harakat sensori sezgirlik diapazonini kengaytirishga imkon beradi.

PIR sensori tizimli ravishda ikki yarmiga bo'lingan. Buning sababi shundaki, signalizatsiya moslamasi uchun radiatsiya darajasi emas, balki sezgirlik zonasida harakat mavjudligi muhim ahamiyatga ega. Shuning uchun qismlar shunday o'rnatiladiki, nurlanishning yuqori darajasi aniqlanganda, chiqishga yuqori yoki past qiymatli signal yuboriladi.

Arduino harakat sensorining asosiy texnik xususiyatlari quyidagilardan iborat:

  • Harakatlanuvchi ob'ektlarni aniqlash zonasi 0 dan 7 metrgacha;
  • Kuzatuv burchagi diapazoni - 110 °;
  • Ta'minot kuchlanishi - 4,5-6 V;
  • Ish oqimi - 0,05 mA gacha;
  • Harorat diapazoni -20° dan +50°S gacha;
  • Sozlanishi kechikish vaqti 0,3 dan 18 s gacha.

Infraqizil harakat sensori o'rnatilgan modul sigortalar, rezistorlar va kondansatkichlar bilan qo'shimcha elektr simlarini o'z ichiga oladi.

Arduino-da harakat sensori ishlash printsipi quyidagicha:

  • Qurilma bo'sh xonaga o'rnatilganda, har bir element tomonidan qabul qilingan nurlanish dozasi kuchlanish kabi doimiy bo'ladi;
  • Biror kishi xonada paydo bo'lganda, u birinchi navbatda ijobiy elektr impulsi paydo bo'ladigan birinchi elementning ko'rish maydoniga kiradi;
  • Biror kishi xona bo'ylab harakatlanayotganda, termal radiatsiya u bilan birga harakat qiladi, bu ikkinchi sensorga uriladi. Ushbu PIR elementi allaqachon salbiy impuls hosil qiladi;
  • Ko'p yo'nalishli impulslar sensorning elektron sxemasi tomonidan qayd etiladi, bu Pir-sensor Arduino ko'rish sohasida odam bor degan xulosaga keladi.

Tashqi shovqin, harorat va namlik o'zgarishidan ishonchli himoya qilish uchun Arduino-dagi Pir sensori elementlari muhrlangan metall korpusga o'rnatiladi. Markazdagi korpusning yuqori qismida infraqizil nurlanishni uzatuvchi materialdan yasalgan to'rtburchaklar mavjud (ko'pincha silikon asosda). Sensor elementlari plitaning orqasida o'rnatiladi.

Harakat sensorining Arduino-ga ulanish diagrammasi

Pir sensorini Arduino-ga ulash qiyin emas. Ko'pincha, harakat sensori bo'lgan modullar orqa tomonda uchta ulagich bilan jihozlangan. Har bir qurilmaning pinouti ishlab chiqaruvchiga bog'liq, lekin ko'pincha chiqishlar yonida tegishli yozuvlar mavjud. Shuning uchun, sensorni Arduino-ga ulashdan oldin, siz belgilar bilan tanishishingiz kerak. Bitta chiqish erga (GND) o'tadi, ikkinchisi sensorlardan kerakli signalni beradi (+5V), uchinchisi esa ma'lumotlar olinadigan raqamli chiqishdir.

Pir sensorini ulash:

  • "Ground" - GND Arduino ulagichlarining har qandayiga;
  • Raqamli chiqish - Arduino-ning istalgan raqamli kirish yoki chiqishiga;
  • Elektr ta'minoti - Arduino-da +5V.

Infraqizil sensorni Arduino-ga ulash diagrammasi rasmda ko'rsatilgan.

Misol dasturi

Eskiz - bu harakat sensori yoqilgandan keyin uning funksionalligini tekshirishga yordam beradigan dastur kodi. Uning eng oddiy misolida ko'plab kamchiliklar mavjud:

  • Sensorni o'z-o'zidan ishga tushirish uchun bir daqiqa vaqt ketishi sababli noto'g'ri signallar ehtimoli;
  • Ijro etuvchi turdagi chiqish qurilmalarining etishmasligi - o'rni, sirenalar, LED ko'rsatkichlari;
  • Sensor chiqishidagi signalning qisqa vaqt oralig'i, bu harakat paytida dasturiy ta'minot darajasida kechiktirilishi kerak.

Ushbu kamchiliklar sensorning funksionalligini kengaytirish orqali yo'q qilinadi.

Arduino-da harakat sensori bilan ishlash misoli sifatida ishlatilishi mumkin bo'lgan eng oddiy eskiz turi quyidagicha ko'rinadi:

#define PIN_PIR 2 #define PIN_LED 13 void setup() ( Serial.begin(9600); pinMode(PIN_PIR, INPUT); pinMode(PIN_LED, OUTPUT); ) void loop() ( int pirVal = digitalRead(PIN_PIR); println(digitalRead(PIN_PIR)); //Agar harakat aniqlansa, agar (pirVal) ( digitalWrite(PIN_LED, HIGH); Serial.println("Harakat aniqlandi"); delay(2000); ) else ( //Serial.print( "Harakat yo'q" digitalWrite(PIN_LED, LOW);

Sensor yordamida mumkin bo'lgan loyiha variantlari

PIR sensorlari signalning asosiy vazifasi ma'lum bir ish joyida odamning mavjudligi yoki yo'qligini aniqlash bo'lgan loyihalarda ajralmas hisoblanadi. Masalan, joylarda yoki vaziyatlarda, masalan:

  • Kirish yoki old eshik oldida odam paydo bo'lganda avtomatik ravishda chiroqni yoqish;
  • Banyoda, hojatxonada, koridorda yoritishni yoqish;
  • Uyda ham, mahalliy hududda ham odam paydo bo'lganda signal ishga tushadi;
  • Ko'pincha xavfsizlik tizimlari bilan jihozlangan xavfsizlik kameralarining avtomatik ulanishi.

PIR sensorlaridan foydalanish oson va ulanishda qiyinchiliklarga olib kelmaydi, katta sezgirlik zonasiga ega va shuningdek, Arduino dasturiy ta'minotining har qanday loyihalariga muvaffaqiyatli qo'shilishi mumkin. Ammo shuni yodda tutish kerakki, ular qamrov zonasida qancha ob'ekt borligi va ular sensorga qanchalik yaqinligi haqida ma'lumot berishning texnik imkoniyatiga ega emas, shuningdek, uy hayvonlari tomonidan qo'zg'atilishi mumkin.

Ushbu qo'llanmada biz sizga ultratovush sensori (HC-SR04) yordamida qanday qilib harakat sensori yasashingiz mumkinligini ko'rsatamiz, u har safar LEDni yoqadi. Ushbu dars uchun komponentlarni har qanday qulay do'konda va oxir-oqibat bizning veb-saytimizda buyurtma qilish mumkin.

Dars yangi boshlanuvchilar uchun mos, ammo tajribali muhandislar uchun ham qiziqarli bo'ladi.

1-qadam: Kerakli qismlar

Quyida darsimiz uchun kerak bo'ladigan komponentlarning to'liq ro'yxati keltirilgan.

1 x Arduino taxtasi (biz Arduino Uno-dan foydalandik)
1 x LED (LED, rang muhim emas)
1 x rezistor/qarshilik 220 ohm
1 x Rivojlanish taxtasi
1 x Arduino USB kabeli
Klipsli 1 x 9V batareya (ixtiyoriy)
6 x simlar

2-qadam: qismlarni joylashtirish

Avval ultratovush sensori va LEDni non paneliga ulang. Qisqa LED simini (katod) sensorning GND (tuproq) piniga ulang. Keyin rezistorni uzunroq LED simi (anod) bilan bir qatorga o'rnating, shunda ular ulanadi.

3-qadam: Qismlarni ulash

Endi sensorning orqa qismidagi ba'zi simlarni ulashingiz kerak. To'rtta pin mavjud - VCC, TRIG, ECHO va GND. Simlarni o'rnatgandan so'ng, siz quyidagi ulanishlarni amalga oshirishingiz kerak:

Rezistorni o'zingiz tanlagan raqamli pin bilan tugating, shunchaki kodni keyinroq o'zgartirishni unutmang.

Sensor -> Arduino
VCC -> 5V (quvvat)
TRIG -> 5*
ECHO -> 4*
GND -> GND (tuproq)

* - har qanday ikkita Arduino raqamli piniga ulanishi mumkin, ularni keyinroq kodda o'zgartirganingizga ishonch hosil qiling.

4-qadam: Kodni yuklash

Endi siz Arduino-ni USB kabelidan foydalanib kompyuteringizga ulashingiz mumkin. Arduino dasturini oching va quyida topishingiz mumkin bo'lgan kodni yuklab oling. Konstantalar sharhlanadi, shuning uchun ular nima qilishlarini aniq bilishingiz va ehtimol ularni o'zgartirishingiz mumkin.

Const int ledPin = 6; // Raqamli LED chiqishi const int trigPin = 5; // TRIG const int echoPinni ulash uchun raqamli chiqish = 4; // ECHO ni ulash uchun raqamli chiqish const int ledOnTime = 1000; // Harakat aniqlangandan keyin LED yonib turish vaqti (millisekundlarda, 1000 ms = 1 s) const int trigDistance = 20; // Sensor ishga tushiriladigan masofa (va undan kichikroq qiymat) (santimetrda) int davomiyligi; int masofa; bekor oʻrnatish() ( pinMode(ledPin, OUTPUT); pinMode(trigPin, OUTPUT); pinMode(echoPin, INPUT); ) bekor sikl() (digitalWrite(trigPin, LOW); digitalWrite(trigPin, HIGH); kechikish(1) digitalWrite(trigPin, LOW davomiylik = pulseIn(echoPin, YUqori) = davomiylik * 0,034 / 2;<= trigDistance) { digitalWrite(ledPin, HIGH); delay(ledOnTime); digitalWrite(ledPin, LOW); } delay(100); }

5-qadam: Yakuniy natija (video)

Harakat sensori va uning ishlashining yakuniy natijasini quyidagi videoda ko'rish mumkin.

Barchaga omadli loyihalar!

PIR (passiv infraqizil) sensorlar harakatni aniqlash imkonini beradi.

Ko'pincha signalizatsiya tizimlarida qo'llaniladi. Ushbu datchiklar kichik o'lchamli, arzon, kam energiya sarflaydi, ishlatish uchun qulay va amalda eskirmaydi. PIRga qo'shimcha ravishda bunday sensorlar pyroelektrik va infraqizil harakat sensorlari deb ataladi.

Piroelektrik harakat sensori - umumiy ma'lumot

PIR harakat sensorlari asosan infraqizil nurlanish darajasini aniqlaydigan piroelektrik sensorli elementdan (markazda to'rtburchaklar kristalli silindrsimon qism) iborat. Atrofimizdagi hamma narsa kichik darajada radiatsiya chiqaradi. Harorat qanchalik baland bo'lsa, radiatsiya darajasi shunchalik yuqori bo'ladi. Sensor aslida ikki qismga bo'lingan. Buning sababi shundaki, biz uchun muhim bo'lgan narsa nurlanish darajasi emas, balki uning sezgirlik zonasida harakatning bevosita mavjudligi. Sensorning ikki yarmi shunday o'rnatiladiki, agar bir yarmi ikkinchisidan ko'ra ko'proq radiatsiya qabul qilsa, chiqish yuqori yoki past qiymat hosil qiladi.

Harakat sensori o'rnatilgan modulning o'zi ham qo'shimcha elektr simlaridan iborat: sigortalar, rezistorlar va kondansatörler. Ko'pgina arzon PIR sensorlari arzon BISS0001 ("Micro Power PIR Motion Detector IC") chiplaridan foydalanadi. Ushbu chip tashqi nurlanish manbasini sezadi va uni analogdan raqamliga aylantirish uchun minimal signalni qayta ishlaydi.

Ushbu sinfdagi piroelektrik sensorlarning asosiy modellaridan biri quyidagicha ko'rinadi:

PIR sensorlarining yangi modellarida qo'shimcha konfiguratsiya uchun qo'shimcha chiqishlar va signal, quvvat va tuproq uchun o'rnatilgan ulagichlar mavjud:

PIR sensorlari ma'lum bir ish joyida odamning mavjudligi yoki yo'qligini aniqlash zarur bo'lgan loyihalar uchun juda yaxshi. Yuqorida sanab o'tilgan bunday sensorlarning afzalliklaridan tashqari, ular katta sezgirlik zonasiga ega. Biroq, shuni yodda tutingki, piroelektrik datchiklar sizga atrofda qancha odam borligi yoki ular sensorga qanchalik yaqinligi haqida ma'lumot bermaydi. Bundan tashqari, ular uy hayvonlari ustida ham ishlashi mumkin.

Umumiy texnik ma'lumotlar

Ushbu spetsifikatsiyalar Adafruit do'konida sotiladigan PIR sensorlariga tegishli. Shunga o'xshash sensorlarning ishlash printsipi o'xshash, ammo texnik xususiyatlar farq qilishi mumkin. Shuning uchun PIR sensori bilan ishlashdan oldin uning ma'lumotlar jadvali bilan tanishib chiqing.

  • Shakl: to'rtburchak;
  • Narxi: Adafruit-da taxminan $ 10.00;
  • Chiqish signali: harakat mavjud bo'lganda raqamli impuls yuqori (3V) va harakat bo'lmaganda raqamli puls past. Impuls uzunligi modulning o'zida rezistorlar va kondansatkichlarga bog'liq va turli sensorlarda farqlanadi;
  • Sezuvchanlik diapazoni: 6 metrgacha. Ko'rish burchagi 110 ° x 70 °;
  • Quvvat: 3V - 9V, lekin eng yaxshi variant - 5 volt;

>Aliexpress-dan buyurtma berish uchun:

Piroelektrik (PIR) harakat sensorlarining ishlash printsipi

PIR sensorlari birinchi qarashda ko'rinadigan darajada oddiy emas. Asosiy sabab - uning kirish va chiqish signallariga ta'sir qiluvchi ko'p sonli o'zgaruvchilar. PIR sensorlarining asosiy ishlashini tushuntirish uchun biz quyidagi rasmdan foydalanamiz.

Piroelektrik harakat sensori ikkita asosiy qismdan iborat. Har bir qism infraqizil nurlanishga sezgir bo'lgan maxsus materialni o'z ichiga oladi. Bunday holda, linzalar sensorning ishlashiga ayniqsa ta'sir qilmaydi, shuning uchun biz butun modulning ikkita sezgirlik maydonini ko'ramiz. Sensor dam olayotganda, ikkala sensor ham bir xil miqdordagi nurlanishni aniqlaydi. Masalan, bu xonadan yoki tashqi muhitdan radiatsiya bo'lishi mumkin. Issiq qonli ob'ekt (odam yoki hayvon) o'tib ketganda, u birinchi sensorning sezgirlik zonasini kesib o'tadi, natijada PIR sensori modulida ikki xil nurlanish qiymati hosil bo'ladi. Biror kishi birinchi sensorning sezgirlik zonasini tark etganda, qiymatlar tenglashtiriladi. Bu ikkita sensorning o'qishlaridagi o'zgarishlar qayd etiladi va chiqishda YUQORI yoki PAST impulslarni hosil qiladi.

PIR sensori dizayni

PIR sensorining sezgir elementlari tashqi shovqin, harorat o'zgarishi va namlikdan himoya qiluvchi muhrlangan metall korpusga o'rnatiladi. Markazdagi to'rtburchaklar infraqizil nurlanishni o'tkazadigan materialdan (odatda silikon asosli material) qilingan. Ushbu plastinka orqasida ikkita sezgir element o'rnatilgan.

Murata ma'lumotlar jadvalidan olingan rasm:

RE200B maʼlumotlar varaqasidagi rasm:

RE200B ma'lumotlar jadvalidagi rasmda ikkita sezgir element ko'rsatilgan:

Yuqoridagi rasmda ichki ulanish sxemasi ko'rsatilgan.

Linzalar

Infraqizil harakat sensorlari tuzilishi jihatidan deyarli bir xil. Asosiy farqlar sezuvchanlik bo'lib, u sezgir elementlarning sifatiga bog'liq. Bunday holda, optika muhim rol o'ynaydi.

Yuqoridagi rasmda plastik linzalarning namunasi ko'rsatilgan. Bu sensorning sezgirlik diapazoni ikkita to'rtburchaklar ekanligini anglatadi. Lekin, qoida tariqasida, biz katta ko'rish burchaklarini ta'minlashimiz kerak. Buning uchun siz kameralarda ishlatiladiganlarga o'xshash linzalardan foydalanishingiz mumkin. Bunday holda, harakat sensori uchun linzalar kichik, nozik va plastmassadan yasalgan bo'lishi kerak, garchi u o'lchovlarga shovqin qo'shsa ham. Shuning uchun ko'pchilik PIR sensorlari Fresnel linzalaridan foydalanadi (Sensors jurnalidan olingan rasm):

Fresnel linzalari radiatsiyani to'playdi va piro-datchiklarning sezgirlik diapazonini sezilarli darajada kengaytiradi (BHlens.com dan rasm)

Cypress ilovasi 2105 dan olingan rasm:

Endi bizda sezilarli darajada kattaroq sezgirlik diapazoni mavjud. Shu bilan birga, bizda ikkita sezgir element borligini eslaymiz va bizga ikkita katta to'rtburchaklar emas, balki ko'p sonli kichik sezgirlik zonalari kerak. Buning uchun ob'ektiv bir nechta bo'limlarga bo'linadi, ularning har biri alohida Fresnel linzalari.

Quyidagi rasmda siz alohida bo'limlarni ko'rishingiz mumkin - Fresnel linzalari:


Ushbu so'l suratda alohida linzalarning tuzilishi boshqacha ekanligiga e'tibor bering:

Natijada, bir-biri bilan o'zaro ta'sir qiluvchi nozik joylarning butun majmuasi hosil bo'ladi.

NL11NH ma'lumotlar jadvalidan olingan rasmlar:

Quyida yana bir chizilgan. Yorqinroq, ammo kamroq ma'lumotga ega. Bundan tashqari, ko'pchilik sensorlarning ko'rish burchagi 90 emas, balki 110 daraja ekanligini unutmang.

IR-TEC dan rasm:

PIR harakat sensori ulanishi

Ko'pgina infraqizil harakat sensori modullarining orqa tomonida uchta ulagich mavjud. Pinout farq qilishi mumkin, shuning uchun ulanishdan oldin tekshiring! Odatda, ulagichlar yonida tegishli yozuvlar qilinadi. Bir ulagich erga o'tadi, ikkinchisi sensorlardan bizni qiziqtiradigan signalni ishlab chiqaradi, uchinchisi tuproqdir. Besleme zo'riqishida odatda 3-5 volt, DC. Biroq, ba'zida 12 volt kuchlanishli datchiklar mavjud. Ba'zi katta sensorlarda alohida signal pinlari mavjud emas. Buning o'rniga, tuproq, quvvat va ikkita kalit bilan o'rni ishlatiladi.

Qurilmangizni infraqizil harakat sensori yordamida prototip qilish uchun elektron platadan foydalanish qulay, chunki ushbu modullarning aksariyatida uchta ulagich mavjud bo'lib, ular orasidagi masofa to'g'ridan-to'g'ri panel teshiklari uchun hisoblanadi.

Bizning holatda, qizil simi quvvatga, qora erga va sariq rangga mos keladi. Agar siz kabellarni noto'g'ri ulasangiz, sensor buzilmaydi, lekin ishlamaydi.

PIR harakat sensori sinovi

Yuqoridagi rasmga muvofiq sxemani yig'ing. Natijada, PIR sensori harakatni aniqlaganida, chiqishda 3,3 V ga to'g'ri keladigan YUQORI signal hosil bo'ladi va LED yonadi.

E'tibor bering, piroelektrik sensori "stabillashishi" kerak. Batareyalarni joylashtiring va 30-60 soniya kuting. Bu vaqt ichida LED miltillashi mumkin. Miltillash to'xtaguncha kuting va siz qo'llaringizni silkitib, sensor atrofida yurishni va LEDning yonishini tomosha qilishni boshlashingiz mumkin!

Sensorni qayta ishga tushirishni sozlash

Piroelektrik harakat sensori bir nechta sozlamalarga ega. Avval "qayta ishga tushirish" ni ko'rib chiqamiz.

Ulangandan so'ng, modulning orqa tomoniga qarang. Ulagichlar quyidagi rasmda ko'rsatilganidek, L ning yuqori chap burchagiga o'rnatilishi kerak.

Shuni esda tutingki, ushbu ulanish opsiyasi bilan LED doimiy ravishda yonmaydi, lekin unga yaqinlashganda yonadi va o'chadi. Bu qayta tiklanmaydigan variant.

Endi ulagichni H holatiga o'rnating. Sinovdan so'ng, kimdir sensorning sezgirlik zonasida harakatlansa, LED doimiy ravishda yonib turishi ma'lum bo'ldi. Bu "qayta ishga tushirish" rejimi.

Quyidagi rasm BISS0001 sensori ma'lumotlar jadvalidan olingan:

Aksariyat hollarda "qayta ishga tushirish" rejimi (quyidagi rasmda ko'rsatilgandek H holatidagi ulagich) yaxshiroqdir.

Sezuvchanlikni sozlash

Ko'pgina infraqizil harakat sensorlari, shu jumladan Adafruit-dan, sezgirlikni sozlash uchun kichik potansiyometrga ega. Potansiyometrni soat yo'nalishi bo'yicha aylantirish sensorga sezgirlikni oshiradi.

Impuls vaqtini va impulslar orasidagi vaqtni o'zgartirish

PIR sensorlarini ko'rib chiqsak, ikkita "kechikish" vaqti muhim ahamiyatga ega. Birinchi vaqt davri -Tx: harakat aniqlangandan keyin LED qancha vaqt yoniq qoladi. Ko'pgina piroelektrik modullarda bu vaqt o'rnatilgan potentsiometr tomonidan sozlanadi. Ikkinchi vaqt davri Ti: harakat bo'lmaganda LEDning yonmasligi qancha vaqt kafolatlanadi. Ushbu parametrni o'zgartirish juda oson emas, buning uchun sizga lehim temir kerak bo'lishi mumkin.

Keling, BISS ma'lumotlar jadvalini ko'rib chiqaylik:

Adafruit datchiklarida TIME deb belgilangan potansiyometr mavjud. Bu 10 kilo ohm rezistorlarga qo'shilgan 1 mega ohm o'zgaruvchan qarshilik. C6 kondansatörü 0,01 mikrofarat sig'imga ega, shuning uchun:

Tx = 24576 x (10 kOm + R vaqti) x 0,01 µF

Rtime potentsiometri "nol" holatida bo'lganda - soat sohasi farqli ravishda - holatida (0 megohm):

Tx = 24576 x (10k ohm) x 0,01 µF = 2,5 soniya (taxminan) Rtime potansiyometri soat yo‘nalishi bo‘yicha to‘liq aylantirilganda (1 megaohm):

Tx = 24576 x (1010 kOm) x 0,01 µF = 250 soniya (taxminan)

O'rta RTime holatida vaqt taxminan 120 soniya (ikki daqiqa) bo'ladi. Ya'ni, agar siz daqiqada bir marta ob'ektning harakatini kuzatmoqchi bo'lsangiz, potansiyometrni 1/4 ga aylantiring.

Eski/turli PIR sensori modellari uchun

Sensoringizda potansiyometrlar bo'lmasa, siz rezistorlar yordamida sozlashingiz mumkin.

Biz R10 va R9 rezistorlari bilan qiziqamiz. Afsuski, xitoyliklar juda ko'p ish qilishlari mumkin. Shu jumladan chalkash yozuvlar. Yuqoridagi rasmda R9 R17 bilan chalkashib ketganligini ko'rsatadigan misol ko'rsatilgan. Ma'lumotlar jadvalidan foydalanib ulanishni kuzatib boring. R10 3-pinga, R9 - 7-pinga ulangan.

Masalan:

Tx = 24576 * R10 * C6 = ~1,2 soniya

R10 = 4,7K va C6 = 10 nanofarad

Ti = 24 * R9 * C7 = ~1,2 soniya

R9 = 470K va C7 = 0,1 mikrofarad

Turli xil rezistorlar va kondansatkichlarni o'rnatish orqali kechikish vaqtini o'zgartirishingiz mumkin.

PIR harakat sensorini Arduino-ga ulash

Piroelektrik harakat sensori qiymatlarini o'qish uchun dastur yozaylik. PIR sensorini mikrokontrollerga ulash juda oddiy. Sensor raqamli signal ishlab chiqaradi, shuning uchun Arduino pinidan YUQORI (harakat aniqlandi) yoki LOW (harakatsiz) signalini o'qish kifoya.

Bunday holda, ulagichni H holatiga o'rnatishni unutmang!

Sensorga 5 voltli quvvat sarflang. Yerni yer bilan bog'lang. Shundan so'ng, sensordan signal pinini Arduino-dagi raqamli pinga ulang. Ushbu misolda 2-pin ishlatiladi.

Dastur oddiy. Asosan, u 2-pin holatini nazorat qiladi. Ya'ni: unda qanday signal bor: LOW yoki HIGH. Bundan tashqari, pin holati o'zgarganda xabar ko'rsatiladi: harakat bor yoki harakat yo'q.

* PIR harakat sensori tekshiruvi

int ledPin = 13; // LED uchun pinni ishga tushiring

int inputPin = 2; // pyroelektrik harakat sensori signalini qabul qilish uchun pinni ishga tushiring

int pirState = LOW; // hech qanday harakat bo'lmasa, dasturni ishga tushiring

int val = 0; // PIN holatini o'qish uchun o'zgaruvchi

pinMode (ledPin, OUTPUT); // LEDni OUTPUT deb e'lon qilish

pinMode (inputPin, INPUT); // sensorni INPUT deb e'lon qilish

Serial.begin(9600);

val = raqamli o'qish (inputPin); // sensordan qiymatni o'qing

if (val == HIGH) ( // o'qilgan qiymat YUQORI mos kelishini tekshiring

digitalWrite (ledPin, HIGH); // LEDni yoqing

agar (pirState == LOW) (

// biz uni ishga tushirdik

Serial.println("Harakat aniqlandi!");

pirState = YUQORI;

digitalWrite (ledPin, LOW); // LEDni o'chiring

agar (pirState == YUQORI)(

// biz uni o'chirib qo'ydik

Serial.println("Harakat tugadi!");

// biz o'zgarishlarni holatga emas, ketma-ket monitorga chiqaramiz

Piroelektrik sensor bilan ishlash uchun har doim ham mikrokontroller kerak emasligini unutmang. Ba'zan siz oddiy o'rni bilan o'tishingiz mumkin.

PrinsipishPIR (passiv infraqizil) -datchiklar

Muayyan haroratga ega bo'lgan har qanday ob'ekt elektromagnit (issiqlik) nurlanish manbasiga aylanadi, shu jumladan inson tanasi. Ushbu nurlanishning to'lqin uzunligi haroratga bog'liq va spektrning infraqizil qismida joylashgan. Ushbu nurlanish ko'zga ko'rinmaydi va faqat sensorlar tomonidan aniqlanadi. Ular PIR sensorlari deb ham ataladi.

Bu "passiv infraqizil" yoki "passiv infraqizil" sensorlar so'zlarining qisqartmasi. Passiv - chunki sensorlar o'zlari chiqarmaydilar, faqat to'lqin uzunligi 7 dan 14 mkm gacha bo'lgan nurlanishni sezadilar.

Inson issiqlik chiqaradi. Uning infraqizil nurlardagi termal tasviri tananing yuzasi bo'ylab haroratning taqsimlanishini ko'rsatadi. Issiqroq narsalar engilroq ko'rinadi, sovuqroq narsalar quyuqroq ko'rinadi, chunki ... kamroq issiqlik chiqaradi.

PIR sensori termal nurlanishdagi o'zgarishlarga javob beradigan sezgir elementni o'z ichiga oladi. Agar u doimiy bo'lib qolsa, hech qanday elektr signali hosil bo'lmaydi.

Sensorning harakatga javob berishi uchun bir nechta fokusli joylarga ega bo'lgan maxsus linzalar (Fresnel linzalari) qo'llaniladi, ular umumiy termal tasvirni shashka naqshida joylashgan faol va passiv zonalarga ajratadilar. Datchik ishlayotgan hududda bo'lgan odam bir nechta faol zonalarni to'liq yoki qisman egallaydi.

Shuning uchun, minimal harakat bilan ham, harakat bir faol zonadan ikkinchisiga sodir bo'ladi, bu esa sensorni ishga tushiradi. Fon termal naqsh odatda juda sekin va teng ravishda o'zgaradi. Sensor bunga javob bermaydi. Faol va passiv zonalarning yuqori zichligi sensorga hatto eng kichik harakatda ham odamning mavjudligini ishonchli aniqlash imkonini beradi.