সব প্রাণীর দেহ থেকে তাপ নির্গত হয়। এই তাপ ইনফ্রারেড রেডিয়েশন আকারে নির্গত হয়। এই ইনফ্রারেড রেডিয়েশন মানুষ দেখতে পায় না। PIR সেন্সরের সাহায্যে এই সিগন্যাল সনাক্ত করা যায়।
HC-SR501 মডিউল কাজ করে LHI778 প্যাসিভ ইনফ্রারেড সেন্সরের সাহায্যে এবং এটি কন্ট্রোল করার জন্য BISS0001 আই.সি. ব্যবহার করা হয়েছে।
HC-SR501 মডিউল


HC-SR501 ফিচারসমূহ:
- অপারেটিং ভোল্টেজ : 5 V থেকে 20 V
- পাওয়ার Power Consumption: 65 mA
- সিগন্যাল আউটপুট : 3.3 V, 0 V
- সেন্সরের রেঞ্জ: <120°, <7 মিটার
- Temperature Range: -15° C to +70°
- ডিলে টাইম: 0.3->5min
- সংবেদনশীলতা: 3m->7m
- ট্রিগার: সিঙ্গেল ট্রিগার এবং রিপিটেবল ট্রিগার
এই মডিউলটি 3 থেকে 7 মিটার পর্যন্ত মোশন শনাক্ত করতে পারে, যা একটি ভেরিয়েবল রেজিস্টরের সাহায্যে কম-বেশী করা যায়। সেন্সরের সামনের অংশের লেন্সের সাহায্যে 120° পর্যন্ত এলাকা কাভার করে।
অপারেশন টাইম ডিলে নিয়ন্ত্রণ করার জন্য একটি ভেরিয়েবল রেজিস্টর আছে, এর সাহায্যে 0.3 থেকে 5 মিনিট পর্যন্ত অপারেশনে বিরতি সেট করা যায়। এতে SINGLE TRIGGER এবং REPEATABLE TRIGGER এই দুই ধরণের ট্রিগার মোড সেট করা যায়।
PIR মডিউল সার্কিট ডায়াগ্রাম

ডিভাইস সেটআপ
HC-SR501 পিন কনফিগারেশন

- টাইম ডিলে: টাইম ডিলে ভেরিয়েবলের সাহায্যে প্রতিবার মোশন ডিটেকশনের পর কতক্ষণ আউটপুট পিন হাই থাকবে তা সেট করা যায়। এই সময় প্রায় 0.3 থেকে 5 মিনিট পর্যন্ত
- সেনসেটিভিটি: সেনসেটিভিটি এডজাস্ট ভেরিয়েবলের সাহায্যে সেন্সর থেকে প্রাণীর সর্বোচ্চ দূরত্ব সেট করা যায়। এই দূরত্ব প্রায় 3 থেকে 7 মিটার।
- ট্রিগার সিলেকশন: ট্রিগার সিলেকশন জাম্পারের সাহায্যে সিঙ্গেল ট্রিগার অথবা রিপিটেবল ট্রিগার সেট করা যায়।
- গ্রাউন্ড: এই পিন সার্কিটের গ্রাউন্ডে সংযোগ করতে হয়।
- আউটপুট:HC-SR501 মডিউল মোশন শনাক্ত করলে এই পিন লজিক্যাল হাই হবে এবং মোশন না থাকলে লজিক্যাল লো থাকবে। হাই সিগন্যালে 3.3 ভোল্টেজ পাওয়া যাবে।
- পাওয়ার: মডিউলটিকে চালানোর জন্য পাওয়ার পিনে 5 থেকে 20 ভোল্ট ডি.সি. সাপ্লাই দিতে হবে।
HC SR501 PIR ফাংশন
মডিউলের সেন্সরের সামনে কোন ইনফ্রারেড রশ্মি নড়াচড়া করলে তা সনাক্ত করে এবং আউটপুট পিনে হাই সিগন্যাল দেয়।
ডিভাইস চালু প্রক্রিয়া
HC-SR501 মডিউল চালু করতে 5V থেকে 20V DC পাওয়ার সাপ্লাই দিতে হবে। পাওয়ার দেয়ার পর মডিউলটি প্রায় এক মিনিট সময় নেয় পুরোপুরি চালু হতে। এই এক মিনিট সময়ের মধ্যে আউটপুট পিনে ভুল সিগন্যাল দিতে পারে। তাই কমপক্ষে এক মিনিট পর থেকে মডিউলের পাঠ নিতে হবে।
কভারেজ এরিয়া
সেন্সর থেকে 120° কোণে সর্বোচ্চ 7 মিটার পর্যন্ত ডিভাইসটি কাজ করবে।

রেঞ্জ বা সেনসেটিভিটি এডজাস্টমেন্ট
সেনসেটিভিটি এডজাস্টমেন্ট ভেরিয়েবলটি ঘুড়িয়ে প্রায় 3 থেকে 7 মিটার পর্যন্ত রেঞ্জ বা সেনসেটিভিটি সেট করা যায়। ভেরিয়েবলটি ঘড়ির কাঁটার দিকে ঘুরালে সংবেদনশীলতা অর্থাৎ রেঞ্জ কমবে। আবার ভেরিয়েবলটি ঘড়ির কাঁটার বিপরীত দিকে ঘুরালে সংবেদনশীলতা অর্থাৎ রেঞ্জ বাড়বে।

টাইম ডিলে এডজাস্টমেন্ট
টাইম ডিলে ভেরিয়েবলের সাহায্যে টাইম ডিলে সেট করতে হয়। ভেরিয়েবলটি ক্লক ওয়াইজ ঘুরালে ডিলে টাইম বাড়বে এবং এন্টি ক্লক ওয়াইজ ঘুরালে ডিলে টাইম কমবে।
ডিলে টাইম প্রায় তিন সেকেন্ড থেকে পাঁচ মিনিট পর্যন্ত সেট করা যায়।

ট্রিগার মোড সিলেকশন
ট্রিগার মোড সিলেকশন জাম্পারের সাহায্যে দুই ধরণের ট্রিগার মোড সেট করা যায়।
সিঙ্গেল ট্রিগার

- এই মোড সিলেক্ট করার জন্য চিত্রের মত হেডার জাম্পার লো পজিশনে সেট করতে হবে।
- যখন মোশন ডিটেক্ট করে তখন আউটপুট পিন হাই হবে।
- মোশন থাকা সত্বেও টাইম ডিলে ভেরিয়েবলের পজিশন অনুসারে নির্দিষ্ট সময় পর আউটপুট লো হবে।
- আউটপুট কিছু সময়ের জন্য লো থাকবে, এরপর মোশন থাকলে আউটপুট হাই হবে।
রিপিটেবল ট্রিগার

- রিপিটেবল ট্রিগার সেট করার জন্য চিত্রের মত হেডার জাম্পার হাই পজিশনে সেট করতে হবে।
- যখন মোশন ডিটেক্ট করে তখন আউটপুট পিন হাই হবে।
- যতক্ষণ পর্যন্ত মোশন থাকবে, আউটপুট হাই থাকবে।
- মোশন থেমে যাওয়ার পর টাইম ডিলে ভেরিয়েবলের পজিশন অনুসারে নির্দিষ্ট সময় পর আউটপুট লো হবে।
PIR মোশন সেন্সর চোর ধরার যন্ত্র
সার্কিট ডায়াগ্রাম

আরডুইনো PIR মোশন সেন্সর সিকিউরিটি এলার্ম
[c]
/*
* Program 3
* Arduino Motion Sensor Security Alarm
* https://www.eeebangla.com/bn/project/arduino-pir-alarm
* https://www.youtube.com/channel/UCYHfZ8A796IzaOIdLJowwMQ?sub_confirmation=1
*/
int buzzer = 12;
int PIR = 2;
int pirState = LOW;</code>
void setup() {
pinMode(buzzer, OUTPUT);
pinMode(PIR, INPUT);
Serial.begin(9600);
}
void loop(){
if (digitalRead(PIR)) {
digitalWrite(buzzer , HIGH);
if (pirState == HIGH) {
Serial.println("Motion detected!");
pirState = LOW;
}
}
else {
digitalWrite(buzzer, LOW);
if (pirState == LOW) {
Serial.println("Motion ended!");
pirState = HIGH;
}
}
}
[/c]
