ہماری روز مرہ کی زندگی میں سیکیورٹی ایک بہت بڑا تشویش ہے ، اور ڈیجیٹل لاک ان سیکیورٹی سسٹمز کا ایک اہم حصہ بن چکے ہیں۔ ہماری جگہ کو محفوظ بنانے کے لئے بہت سارے قسم کے حفاظتی نظام موجود ہیں۔ کچھ مثالیں پی آئی آر پر مبنی سیکیورٹی سسٹم ، آریفآئڈی پر مبنی سیکیورٹی سسٹم ، ڈیجیٹل لاک سسٹم ، بائیو میٹرکس سسٹم ، الیکٹرانکس کوڈ لاک ہیں۔ اس پوسٹ میں ، ہم آرڈینو کے ساتھ فنگر پرنٹ سینسر ماڈیول کا انٹرفیس کریں گے اور دروازے پر تالا لگا کر فنگر پرنٹ پر مبنی بائیو میٹرک سیکیورٹی سسٹم بنائیں گے۔ کسی بھی سسٹم کو لاک یا انلاک کرنے کے لئے فنگر پرنٹ کو سب سے محفوظ کلید سمجھا جاتا ہے کیونکہ یہ کسی بھی شخص کو منفرد طور پر پہچان سکتا ہے اور آسانی سے کاپی نہیں کیا جاسکتا ہے۔
مطلوبہ اجزاء:
- ارڈینو اونو
- فنگر پرنٹ ماڈیول
- پش بٹن -4
- ایل ای ڈی -2
- 1K ریزٹر -3
- 2.2K ریزٹر -1`
- بجلی کی فراہمی
- مربوط تاروں
- گتے کے باکس
- سروو موٹر ۔1
- 16x2 LCD -1
- روٹی بورڈ ۔1
ارڈینو کے ساتھ فنگر پرنٹ سینسر ماڈیول:
فنگر پرنٹ سینسر ماڈیول یا فنگر پرنٹ اسکینر ایک ایسا ماڈیول ہے جو انگلی کی پرنٹ امیج کو گرفت میں لاتا ہے اور پھر اسے مساوی ٹیمپلیٹ میں تبدیل کرتا ہے اور اردوینو کے ذریعہ منتخب کردہ ID (مقام) پر اپنی میموری میں محفوظ کرتا ہے۔ یہاں پر سارے عمل کو آرڈینو نے حکم دیا ہے جیسے فنگر پرنٹ کی شبیہہ لینا ، اسے ٹیمپلیٹس میں تبدیل کرنا اور مقام کو ذخیرہ کرنا وغیرہ۔
اس ارڈینو فنگر پرنٹ سینسر پروجیکٹ میں ، ہم نے انگلی یا انگوٹھے کے تاثر کو سسٹم میں ان پٹ کے طور پر لینے کے لئے فنگر پرنٹ سینسر ماڈیول کا استعمال کیا ہے۔ یہاں ہم اندراج / واپس ، حذف / ٹھیک ، یوپی اور نیچے کیلئے 4 پش بٹن استعمال کر رہے ہیں۔ ہر کلید کی دوہری خصوصیات ہوتی ہیں۔ انرول کلید کو نظام اور بیک فنکشن میں نئی انگلیوں کے تاثر کو اندراج کرنے کے لئے استعمال کیا جاتا ہے۔ اس کا مطلب ہے جب صارف نئی انگلی میں اندراج کرنا چاہتا ہے تو اسے اندراج کی کلید دبانے کی ضرورت ہے پھر LCD ID یا مقام طلب کرے جہاں صارف انگلی کے پرنٹ آؤٹ پٹ کو اسٹور کرنا چاہتا ہے۔ اب اگر اس وقت صارف مزید کام نہیں کرنا چاہتا ہے تو وہ واپس جانے کے لئے دوبارہ اندراج کی کلید کو دبائیں (اس بار اندراج کلید کو بیک کی کی طرح بطور سلوک کریں)۔ مطلب اندراج کلید میں اندراج اور پیچھے کا کام دونوں شامل ہیں۔ ڈیل / ٹھیک ہےاس میں بھی ایسا ہی ڈبل فنکشن ہوتا ہے جب صارف نئی انگلی میں اندراج کرتا ہے تو پھر اسے اپن / میچ اور ڈاون / میچ (جس میں ڈبل فنکشن ہوتا ہے) کی دو مزید کلیدوں کا استعمال کرکے فنگر آئی ڈی یا مقام منتخب کرنا ہوتا ہے اب صارف کو دہلی / ٹھیک دبانے کی ضرورت ہے کلیدی (اس بار یہ کلید ٹھیک کی طرح برتاؤ کرتی ہے) منتخب ID یا مقام کے ساتھ آگے بڑھنے کے لئے۔ UP / DOWN کیز بھی فنگر پرنٹ میچ فنکشن کی حمایت کرتی ہیں۔ چیک کریں ویڈیو مکمل مظاہرے کے اختتام پر.
یہاں ہم نے سکیورٹی گیٹ کی حیثیت سے کام کرنے کے لئے ایک سرو بورڈ کے ساتھ گتے کا خانہ بھی منسلک کیا ہے ، جو صرف اس وقت کھل پائے گا جب نظام صحیح فنگر پرنٹ پڑھے گا۔ پیلے رنگ کا ایل ای ڈی اشارہ کرتا ہے کہ گیٹ بند ہے اور گرین ایل ای ڈی سے ظاہر ہوتا ہے کہ گیٹ کھلا ہے۔
ورکنگ وضاحت:
اس فنگر پرنٹ سینسر ڈور لاک کا کام کرناآسان ہے. اس پروجیکٹ میں ، ہم نے ایک گیٹ استعمال کیا ہے جو کھلا ہوا ہو گا جب ہم فنگر پرنٹ ماڈیول میں انگلی رکھے گی۔ سب سے پہلے ، صارف کو پش بٹن / کیز کی مدد سے انگلی میں اندراج کرنے کی ضرورت ہے۔ اس صارف کے لئے ENROLL key دبائیں اور پھر LCD اس جگہ / ID میں داخل ہونے کے لئے کہتا ہے جہاں انگلی اسٹور ہوگی۔ لہذا اب صارف کو UP / DOWN کیز کا استعمال کرکے ID (مقام) داخل کرنے کی ضرورت ہے۔ مقام / ID کو منتخب کرنے کے بعد صارف کو اوکے کی (دب کی کلید) دبائیں۔ اب LCD فنگر پرنٹ ماڈیول پر انگلی رکھنے کا مطالبہ کرے گا۔ اب صارف کو انگلی پرنٹ ماڈیول پر اپنی انگلی لگانے کی ضرورت ہے۔ تب ایل سی ڈی انگلی کے پرنٹ ماڈیول سے انگلی کو دور کرنے کے لئے کہے گا اور دوبارہ انگلی رکھنے کے لئے کہے گا۔ اب صارف کو اپنی انگلی کو دوبارہ فنگر پرنٹ ماڈیول پر ڈالنے کی ضرورت ہے۔اب فنگر پرنٹ ماڈیول ایک تصویر لیتا ہے اور اسے ٹیمپلیٹس میں تبدیل کرتا ہے اور منتخب ID کے ذریعہ اسے فنگر پرنٹ ماڈیول کی میموری میں اسٹور کرتا ہے۔ اب صارف اسی انگلی کو رکھ کر گیٹ کھول سکتا ہے جسے اس نے نظام میں شامل کیا ہے یا اندراج کیا ہے اور پھر میچ کی (دباؤ / نیچے کی) دبائیں۔ اسی طریقے سے ، صارف مزید انگلیاں شامل کرسکتا ہے۔ مکمل مظاہرے کے لئے نیچے دیئے گئے ویڈیو کو دیکھیں۔
اب اگر صارف کسی بھی ذخیرہ شدہ ID کو حذف یا حذف کرنا چاہتا ہے تو اسے / اسے دلی کی کو دبانے کی ضرورت ہے ، ڈیل کلید دبانے کے بعد ، LCD منتخب جگہ کا مطلب پوچھے گی ID کو منتخب کریں جسے حذف کیا جائے۔ اب صارف کو ID منتخب کرنے کی ضرورت ہے اور اوکے کی (اسی ڈیل کلید) کو دبائیں۔ اب LCD آپ کو بتائے گا کہ انگلی کامیابی کے ساتھ حذف ہوگئی ہے۔ اب صارف چیک کرسکتا ہے کہ فنگر پرنٹ ماڈیول پر ایک ہی انگلی رکھ کر اور میچ کلید (یو پی / ڈاون کلید) دباکر اسے خارج کر دیا گیا تھا یا نہیں۔
جب انگلی رکھی جائے گی تو گرین ایل ای ڈی پانچ سیکنڈ تک چمکے گی اور گیٹ بھی ایک ہی وقت میں کھل جائے گا۔ 5 سیکنڈ کے بعد گیٹ خود بخود بند ہوجائے گا۔ صارف اپنی ضرورت کے مطابق گیٹ / دروازہ کھولنے اور بند کرنے کو اپنی مرضی کے مطابق بنا سکتا ہے۔ امدادی موٹر گیٹ کے کھلے اور بند ہونے کے لئے ذمہ دار ہے۔
سرکٹ کی وضاحت:
اس اردوینو فنگر پرنٹ سیکیورٹی سسٹم کا سرکٹ بہت آسان ہے جس میں ارڈینو موجود ہے جو پروجیکٹ ، پش بٹن ، بوزر اور ایل سی ڈی کے پورے عمل کو کنٹرول کرتا ہے۔ ارڈینو مکمل عمل کو کنٹرول کرتا ہے۔
پش بٹن زمین کے سلسلے میں Ardino کے پن D14 (ENROLL) ، D15 (DEL) ، D16 (UP) اور D17 (DOWN) سے براہ راست جڑا ہوا ہے اور پیلا ایل ای ڈی آرڈینو کے ڈیجیٹل پن D7 پر زمین سے متعلق زمین کے ساتھ جڑا ہوا ہے۔ 1k ریزسٹر اور گرین ایل ای ڈی اسی طریقہ کار کے ذریعہ آرڈینو کے ڈی 6 سے منسلک ہے۔ فنگر پرنٹ ماڈیول کے Rx اور Tx سافٹ ویئر سیریل یا ڈیجیٹل پن D2 اور Ardino کے D3 پر براہ راست جڑے ہوئے ہیں۔ 5v سپلائی اردوینو بورڈ سے لی گئی فنگر پرنٹ ماڈیول کو طاقت دینے کے لئے استعمال کی جاتی ہے اور سروو موٹر بھی ارڈینو کے پی ڈبلیو ایم پن D5 سے منسلک ہے۔ ایک 16x2 LCD 4 بٹ موڈ میں تشکیل دیا گیا ہے اور اس کا RS ، EN ، D4 ، D5 ، D6 ، اور D7 Arduino کے ڈیجیٹل پن D13 ، D12 ، D11 ، D10 ، D9 ، اور D8 پر براہ راست جڑا ہوا ہے۔
نوٹ: یہاں D14 ، D15 ، D16 ، D17 بالترتیب A0 ، A1 ، A2 ، A3 ہیں۔
پروگرام کی وضاحت:
ایک پروگرام میں ، ہم نے ارڈینو بورڈ کے ساتھ فنگر پرنٹ ماڈیول میں مداخلت کرنے کے لئے اڈفریٹ فنگر پرنٹ سینسر لائبریری کا استعمال کیا ہے ۔ آپ ذیل میں مکمل کوڈ چیک کرسکتے ہیں ، اسے آسانی سے سمجھا جاسکتا ہے۔ یہاں ہم اردوینو پروگرام کے اہم کاموں کی وضاحت کر رہے ہیں۔
کوڈ کے نیچے ٹکڑے کا استعمال ان پٹ کے طور پر فنگر پرنٹ لینے اور انگلی کی توثیق کے مطابق کارروائی کرنے کے لئے ہوتا ہے۔ اگر انگلی کی توثیق ہوجائے گی تو گیٹ کھلا ہوگا بصورت دیگر بند رہے گا۔
(int i = 0؛ i <5؛ i ++) {lcd.clear ()؛ lcd.print ("پلیس فنگر")؛ تاخیر (2000)؛ int نتیجہ = getFingerprintIDez ()؛ اگر (نتیجہ> = 0) {ڈیجیٹل رائٹ (اوپن لائٹ ، ہائی)؛ ڈیجیٹل رائٹ (کلوز لائٹ ، کم)؛ lcd.clear ()؛ lcd.print ("اجازت دی گئی")؛ lcd.setCursor (0،1)؛ lcd.print ("گیٹیٹ اوپنڈ")؛ myServo.write (0)؛ تاخیر (5000)؛ myServo.write (180)؛ ڈیجیٹل رائٹ (کلوز لائٹ ، ہائی)؛ ڈیجیٹل رائٹ (اوپن لائٹ ، کم)؛ lcd.setCursor (0،1)؛ lcd.print ("گیٹ بند")؛
دیئے گئے باطل چیک کیز () فنکشن کا اندراج چیک کرنے کے لئے استعمال کیا جاتا ہے یا ڈیل کی کلید دبائی جاتی ہے یا نہیں اور اگر دبائیں تو کیا کریں۔ اگر ENROLL key دبے ہوئے انرول () فنکشن کو کہا جاتا ہے اور ڈیل کلید دبائیں تو ڈیلیٹ () فنکشن کہا جاتا ہے۔
باطل چیک کیز () {اگر (ڈیجیٹل ریڈ (اندراج) == 0) c lcd.clear ()؛ lcd.print ("برائے مہربانی انتظار کریں")؛ تاخیر (1000)؛ جبکہ (ڈیجیٹل ریڈ (اندراج) == 0)؛ اندراج ()؛ } ورنہ اگر (ڈیجیٹل ریڈ (ڈیل) == 0) c lcd.clear ()؛ lcd.print ("برائے مہربانی انتظار کریں")؛ تاخیر (1000)؛ delet ()؛ }
دی گئی تقریب کا استعمال ID کو حذف کرنے کے لئے داخل کرنے اور uint8_t ڈیلیٹ فنگر پرنٹ (uint8_t id) فنکشن پر کال کرنے کے لئے کیا جاتا ہے جو ریکارڈوں سے انگلی کو حذف کردے گی۔
باطل delet () count انٹ گنتی = 0؛ lcd.clear ()؛ lcd.print ("انگلی کو حذف کریں")؛ lcd.setCursor (0،1)؛ lcd.print ("مقام:")؛ جبکہ (1) c lcd.setCursor (9،1)؛ lcd.print (گنتی)؛ اگر (ڈیجیٹل ریڈ (اوپر) == 0) {گنتی ++؛ اگر (گنتی> 25) گنتی = 0؛ تاخیر (500)؛ }……………….
دی گئی تقریب کا استعمال منتخب ID کے ریکارڈ سے فنگر پرنٹ کو حذف کرنے کے لئے کیا جاتا ہے۔
uint8_t حذف کریں فنگر پرنٹ (uint8_t id) {uint8_t p = -1؛ lcd.clear ()؛ lcd.print ("برائے مہربانی انتظار کریں")؛ p = finger.deleteModel (id)؛ اگر (p == FINGERPRINT_OK) ial Serial.println ("مٹا دیا گیا!")؛ lcd.clear ()؛ lcd.print ("Figer Deleted")؛ lcd.setCursor (0،1)؛ lcd.print ("کامیابی سے")؛ تاخیر (1000)؛ } دوسری {سیریل.پرنٹ ("کچھ غلط")؛ lcd.clear ()؛ lcd.print ("کچھ غلط")؛ lcd.setCursor (0،1)؛ lcd.print ("بعد میں دوبارہ کوشش کریں")؛ تاخیر (2000)؛ واپسی پی؛ }
دیئے ہوئے فنکشن کا استعمال فنگر پرنٹ امیج لینے اور انہیں ٹیمپلیٹ میں تبدیل کرنے اور منتخب ID کے ذریعہ فنگر پرنٹ ماڈیول میموری میں کرنے کے لئے استعمال کیا جاتا ہے۔
uint8_t getFingerprintEnrol () p انٹ پی = = -1؛ lcd.clear ()؛ lcd.print ("فنگر ID:")؛ lcd.print (id)؛ lcd.setCursor (0،1)؛ lcd.print ("پلیس فنگر")؛ تاخیر (2000)؛ جبکہ (p! = FINGERPRINT_OK) {p = فنگر.بیٹ آئیمج ()؛…………………
اس طرح ہم سیکیورٹی سسٹم کے لئے فنگر پرنٹ ریڈر ماڈیول کے ساتھ ارڈینو کو استعمال کرسکتے ہیں ۔