راه اندازی سنسور PIR با آردوینو

سنسورهای PIR به منظور تشخیص حرکت به کار می روند. به عنوان مثال میتوان از این سنسورها به منظور تشخیص حرکت انسان در محدوده دید سنسور استفاده کرد. این سنسورها در وسایل و گجت هایی که در خانه یا محیط های تجاری به کار می روند استفاده می شوند. در اینجا به راه اندازی سنسور PIR با آردوینو میپردازیم.

واژه PIR میتواند معادل کلماتی مانند Passive Infrared یا مادون قرمز غیرفعال، Pyroelectric یا IR motion یا حرکت IR باشد.

برخی از مزیت های سنسورهای PIR عبارت است از:

  • ابعاد کوچک
  • محدوده دید وسیع
  • رابط کاربری آسان
  • ارزان
  • توان مصرفی کم
  • سهولت در استفاده
  • عدم فرسایش در مرور زمان

سنسورهای PIR

سنسورهای PIR از سنسورهای مدل پایروالکتریک ساخت شده اند. این ساختار شامل یک محفطه فلزی قوطی مانند به همراه یک کریستال مثلثی شکل در وسط آن است که میتواند تشعشعات مادون قرمز را تشخیص دهد. تقریبا هر ماده ای دارای تشعشعات مادون قرمز سطح پایین هست و با افزایش دمای سطح این تشعشعات افزایش پیدا می کند. سنسور تشخیص حرکت در واقع دارای دو محفظه است که بدین وسیله میزان جا به جایی اشیاء از تشعشعات سطوح پایین متمایز می گردد. این دو محفظه به شکلی قرار گرفته اند که یکدیگر را خنثی می کنند. اگر یک محفظه مقدار کمتر یا بیشتری از تشعشعات را حس نماید، خروجی به سمت بالا یا پایین نوسان خواهد کرد.

مطلب پیشنهادی:  راه اندازی شیر سلونوئید با آردوینو

سنسورهای PIR

سنسورهای PIR دارای خروجی قابل تنظیمی هستند و دارای بسته بندی با سه پایه زمین/خروجی و تغذیه می باشند.

سنسورهای PIR

برای بسیاری از پروژه ها یا محصولات ساده که نیاز به تشخیص ورود یا خروج افراد از یک ناحیه وجود دارد، سنسورهای PIR میتواند بسیار کارآمد باشد. اما یکی از عیب های این سنسورها این است که تعداد افراد موجود در دید سنسور را نمیتواند تشخیص دهد. همچنین باید توجه نمود که معمولا لنز سنسور در یک محوده خاص ثابت شده است و با تغییر موقعیت آن (مثلا توسط حیوان خانگی) ممکن است باعث اختلال در عملکرد آن شود.

قطعات و تجهیزات مورد نیاز

قطعات لازم برای اجرای پروژه راه اندازی سنسور PIR با آردوینو عبارت اند از :

  • 1 عدد برد بورد
  • 1 عدد برد آردوینو Uno R3
  • 1 عدد سنسور PIR

قطعات پروژه را مطابق شکل زیر به یکدیگر متصل نمایید :

راه اندازی سنسور PIR با آردوینو

کد راه اندازی سنسور PIR با آردوینو:

نرم افزار آردوینو را باز کرده و برای باز کردن یک برنامه جدید بر روی New در منوی File کلیک نمایید.

#define pirPin 2
int calibrationTime = 30;
long unsigned int lowIn;
long unsigned int pause = 5000;
boolean lockLow = true;
boolean takeLowTime;
int PIRValue = 0;

void setup() {
 Serial.begin(9600);
 pinMode(pirPin, INPUT);
}

void loop() {
 PIRSensor();
}

void PIRSensor() {
 if(digitalRead(pirPin) == HIGH) {
 if(lockLow) {
 PIRValue = 1;
 lockLow = false;
 Serial.println("Motion detected.");
 delay(50);
 }
 takeLowTime = true;
 }
 if(digitalRead(pirPin) == LOW) {
 if(takeLowTime){
 lowIn = millis();takeLowTime = false;
 }
 if(!lockLow && millis() - lowIn > pause) {
 PIRValue = 0;
 lockLow = true;
 Serial.println("Motion ended.");
 delay(50);
 }
 }
}

نکات برنامه :

سنسور PIR دارای سه پایه –Vcc ، OUT و GND است. این پایه را مطابق زیر به برد آردوینو متصل نمایید :

  • پایه +Vcc را به +5V بر روی برد آردوینو متصل نمایید.
  • پایه OUT را به پایه شماره 2 برد آردوینو متصل نمایید.
  • پایه GND را به پایه GND برد آردوینو متصل نمایید.
مطلب پیشنهادی:  پروژه اتصال سنسور DHT-22 به Arduino

میتوانید حساسیت و زمان تاخیر سنسور را توسط دو مقاومت متغیر موجود در پایین برد سنسور تنظیم نمایید.

زمانی که سنسور حرکت را تشخیص داد، آردوینو یک پیام مبتنی بر تشخیص حرکت را در پورت خروجی سریال ارسال می کند. سنسور PIR مدت زمان تاخیر مشخصی را به منظور احتمال تشخیص حرکتی دیگر ایجاد می کند. اگر حرکت دیگری تشخیص داده نشد، آردوینو پیامی مبتنی بر اتمام تشخیص حرکت در خروجی سریال ارسال می کند.

نتایج :

با آپلود برنامه بر روی برد و اجرای آن، با تشیخص حرکت پیامی مبنی بر تشخیص حرکت در خروجی ارسال می شود و در صورت عدم تشخیص حرکت نیز پیامی مبنی بر این مسئله در خروجی سریال مشاهده می شود.

اگر این نوشته‌ برایتان مفید بود لطفا کامنت بنویسید.

مطالعه دیگر جلسات این آموزش<< جلسه قبلی                    جلسه بعدی >>

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

11 دیدگاه

  1. ممنون بابت زحمات تون

  2. داداش سلام
    من میخواستم توسط این سنسور یک پمپ کوچک راه اندازی کنم یعنی اینکه وقتی دست را جلوی سنسور ببری پمپ فعال شود. آیا توسط این سنسور که به یک راه وصل شود این کار مقدور است؟
    ممنون

  3. ببخشید من یه اردوینو نانو دارم و طبق تصویر قطعات را به هم وصل کردم و برنامه رو روش اپلود کردم ولی نشد و نمی دونم چرا هر سنسوری رو بهش وصل می کنم و برنامشو روش اپلود می کنم بازم کار نمی کنه.شما می دونید مشکل از کجاست؟