ESP32 ٹیوٹوریل 21/55 - PIR موشن سینسر کے ساتھ انسان کا پتہ لگانا | سن فاؤنڈر کا ESP32 IoT لرننگ کٹ
اس ٹیوٹوریل میں، ہم سیکھیں گے کہ ESP32 کے ساتھ PIR موشن سینسر استعمال کرکے انسانی موجودگی کا پتہ کیسے لگایا جائے۔ ESP32 ایک طاقتور مائیکروکنٹرولر ہے جو Wi-Fi اور Bluetooth دونوں صلاحیتیں فراہم کرتا ہے، جو اسے IoT پروجیکٹس کے لیے مثالی بناتا ہے۔ PIR سینسر کو شامل کرکے، ہم ایک ایسا نظام بنا سکتے ہیں جو جب بھی حرکت کا پتہ چلے تو LED یا بزر کو فعال کرے، جو انسانی سرگرمی کی نگرانی کا ایک آسان اور مؤثر طریقہ فراہم کرتا ہے۔
PIR (غیر فعال انفراریڈ) سینسر اشیاء، خاص طور پر گرم جسم والی جیسے انسانوں، سے خارج ہونے والی انفراریڈ شعاعوں کو محسوس کرکے حرکت کا پتہ لگاتا ہے۔ جب حرکت کا پتہ چلتا ہے، سینسر ESP32 کو ایک سگنل بھیجتا ہے، جو پھر آؤٹ پٹ کو متحرک کرسکتا ہے، جیسے LED روشن کرنا یا بزر بجانا۔ یہ ٹیوٹوریل آپ کو ہارڈویئر سیٹ اپ، وائرنگ، اور کوڈ کے ذریعے رہنمائی کرے گا تاکہ نظام صحیح طریقے سے کام کرے (ویڈیو میں 00:45 پر)۔
ہارڈویئر کی وضاحت
اس پروجیکٹ میں کئی اہم اجزاء شامل ہیں۔ ESP32 مائیکروکنٹرولر آپریشن کا مرکز ہے، جو سینسر ڈیٹا کو سنبھالتا ہے اور آؤٹ پٹ کو کنٹرول کرتا ہے۔ PIR موشن سینسر انفراریڈ شعاعوں میں تبدیلیوں کی پیمائش کرکے حرکت کا پتہ لگاتا ہے۔ LED یا بزر حرکت کا پتہ چلنے پر بصری یا قابل سماعت الرٹ فراہم کرتا ہے۔
ESP32 Wi-Fi اور Bluetooth سے لیس ہے، جو کلاؤڈ کنیکٹیویٹی جیسی اضافی فعالیتوں کی اجازت دیتا ہے۔ PIR سینسر میں ایک لینس ہوتا ہے جو انفراریڈ روشنی کو پائرو الیکٹرک سینسر پر مرکوز کرتا ہے، جو انفراریڈ سطحوں میں تبدیلیوں کا پتہ چلنے پر وولٹیج سگنل پیدا کرتا ہے، جو حرکت کی نشاندہی کرتا ہے۔
ڈیٹاشیٹ تفصیلات
| کارخانہ دار | سن فاؤنڈر |
|---|---|
| پارٹ نمبر | PIR سینسر ماجیول |
| لاجک/آئی او وولٹیج | 3.3 V |
| سپلائی وولٹیج | 3.3 V |
| آؤٹ پٹ کرنٹ (فی چینل) | 20 ایم اے زیادہ سے زیادہ |
| پیک کرنٹ (فی چینل) | 50 ایم اے زیادہ سے زیادہ |
| PWM فریکوئنسی رہنمائی | ناقابل اطلاق |
| ان پٹ لاجک تھریشولڈز | 0.3 V (کم)، 2.0 V (زیادہ) |
| وولٹیج ڈراپ / RDS(on) / سیچوریشن | ناقابل اطلاق |
| تھرمل حدود | 0 سے 70 °C |
| پیکیج | ماجیول |
| نوٹس / مختلف شکلیں | قابل ایڈجسٹ حساسیت اور تاخیر |
- نقصان سے بچنے کے لیے مناسب بجلی کی فراہمی (3.3 V) یقینی بنائیں۔
- کرنٹ محدود کرنے کے لیے LED کے ساتھ ریزسٹر استعمال کریں۔
- شارٹ سرکٹ سے بچنے کے لیے مناسب وائرنگ برقرار رکھیں۔
- ضرورت کے مطابق حساسیت اور تاخیر کے لیے PIR سینسر کے نوبس ایڈجسٹ کریں۔
- بہترین کارکردگی کے لیے سینسر کو مختلف ماحول میں آزمائیں۔
وائرنگ ہدایات

PIR موشن سینسر اور LED کو ESP32 سے جوڑنے کے لیے، PIR سینسر کے VCC پن کو ESP32 پر 3.3 V آؤٹ پٹ سے جوڑ کر شروع کریں۔ اگلا، PIR سینسر کے گراؤنڈ پن کو ESP32 پر گراؤنڈ پن سے جوڑیں۔ PIR سینسر کا سگنل پن (اکثر S کے طور پر لیبل لگا ہوا) ESP32 پر GPIO پن 14 سے منسلک ہونا چاہیے۔
LED کے لیے، لمبی ٹانگ (اینوڈ) کو 220 اوہم ریزسٹر کے ذریعے GPIO پن 26 سے جوڑیں، اور چھوٹی ٹانگ (کیتھوڈ) کو گراؤنڈ سے جوڑیں۔ یقینی بنائیں کہ تمام کنکشن محفوظ ہیں تاکہ مناسب فعالیت یقینی ہو۔ اگر آپ LED کے بجائے بزر استعمال کر رہے ہیں، تو بزر کا ایک پن GPIO پن 26 سے اور دوسرا گراؤنڈ سے جوڑیں، LED سیٹ اپ کی جگہ لے کر۔
کوڈ مثالیں اور واک تھرو
کوڈ میں، ہم PIR سینسر اور LED کے لیے پن نمبرز کی وضاحت کرتے ہیں۔ ہم const int pirPin = 14; استعمال کرتے ہیں تاکہ PIR پن سیٹ ہو اور const int ledPin = 26; LED پن کے لیے۔ یہ مستقل یقینی بناتے ہیں کہ پروگرام کے دوران پن نمبرز تبدیل نہ ہوں۔
const int pirPin = 14; // pir پن کا نمبر
const int ledPin = 26; // LED پن
یہ ٹکڑا ان پنوں کو ابتدائی شکل دیتا ہے جو ہم استعمال کریں گے۔ setup() فنکشن میں، ہم PIR پن کو ان پٹ اور LED پن کو آؤٹ پٹ کے طور پر ترتیب دیتے ہیں۔ یہ سیٹ اپ سینسر کی حالت پڑھنے اور LED کو کنٹرول کرنے کے لیے اہم ہے۔
void setup() {
Serial.begin(115200);
pinMode(pirPin, INPUT); // pir پن کو ان پٹ کے طور پر ابتدائی شکل دیں
pinMode(ledPin, OUTPUT); // LED پن کو آؤٹ پٹ کے طور پر ابتدائی شکل دیں
}
loop() فنکشن میں، ہم digitalRead(pirPin); استعمال کرکے PIR سینسر کی حالت مسلسل پڑھتے ہیں۔ اگر سینسر حرکت کا پتہ لگاتا ہے (HIGH حالت سے ظاہر ہوتا ہے)، تو ہم digitalWrite(ledPin, HIGH); استعمال کرکے LED آن کرتے ہیں۔ بصورت دیگر، ہم LED بند کر دیتے ہیں۔
if (pirState == HIGH) {
digitalWrite(ledPin, HIGH); // LED آن کریں
} else {
digitalWrite(ledPin, LOW); // LED بند کریں
}
یہ منطق LED کو PIR سینسر کے ذریعے پتہ چلنے والی حرکت کا جواب دینے کی اجازت دیتی ہے۔ مکمل فعالیت کے لیے مضمون کے نیچے فراہم کردہ مکمل کوڈ اپ لوڈ کرنا یقینی بنائیں۔
مظاہرہ / کیا توقع کریں
ایک بار جب سب کچھ سیٹ ہو جائے اور کوڈ اپ لوڈ ہو جائے، تو LED روشن ہو جائے گی جب PIR سینسر حرکت کا پتہ لگائے گا۔ آپ سینسر کے سامنے حرکت کرکے اسے آزماسکتے ہیں؛ LED فوری طور پر آن ہونی چاہیے۔ اگر سینسر تاخیر پر سیٹ ہے، تو یہ مخصوص وقت تک آن رہے گا پھر بند ہو جائے گا (ویڈیو میں 12:15 پر)۔
عام خرابیاں غلط وائرنگ شامل ہیں، جو سینسر کو کام کرنے سے روک سکتی ہیں۔ یقینی بنائیں کہ PIR سینسر کو صحیح طریقے سے بجلی فراہم کی گئی ہے اور سگنل پن ESP32 پر درست GPIO پن سے منسلک ہے۔ PIR سینسر پر حساسیت اور تاخیر کے نوبس کو ایڈجسٹ کرنا بھی آپ کے ماحول کی بنیاد پر کارکردگی کو بہتر بنانے میں مدد کر سکتا ہے۔
ویڈیو ٹائم اسٹیمپس
- 00:00 آغاز
- 1:54 PIR سینسر کا تعارف
- 6:38 وائرنگ کی وضاحت
- 10:21 Arduino کوڈ کی وضاحت
- 12:45 Arduino IDE میں ESP32 بورڈ اور COM پورٹ کا انتخاب
- 14:27 PIR سینسر کا مظاہرہ اور کیلیبریشن
// set pin numbers
const int pirPin = 14; // the number of the pir pin
const int ledPin = 26; // LED pin
// variable for storing the pir status
int pirState = 0;
void setup() {
Serial.begin(115200);
// initialize the pir pin as an input
pinMode(pirPin, INPUT);
// initialize the LED pin as an output
pinMode(ledPin, OUTPUT);
}
void loop() {
// read the state of the pir value
pirState = digitalRead(pirPin);
Serial.println(pirState);
delay(100);
// if the pir is pressed, the pirState is HIGH
if (pirState == HIGH) {
// turn LED on
digitalWrite(ledPin, HIGH);
} else {
// turn LED off
digitalWrite(ledPin, LOW);
}
}
Common Course Links
Common Course Files
وسائل اور حوالہ جات
ابھی تک کوئی وسائل نہیں۔
فائلیں📁
ڈیٹا شیٹ (پی ڈی ایف)
-
RE200B_PRI motion sensor datasheet
RE200B_PRI_datasheet.pdf0.02 MB -
BISS0001 motion sensor chip datasheet
BISS0001_datasheet.pdf0.16 MB
دیگر فائلیں
-
HC-SR501 موشن سینسر صارف کا دستی کتاب
robojax-HC-SR501-motion-manual.pdf0.83 MB