- आवश्यक घटक:
- Arduino के साथ फिंगर प्रिंट सेंसर मॉड्यूल:
- कार्य स्पष्टीकरण:
- सर्किट स्पष्टीकरण:
- कार्यक्रम की व्याख्या:
हमारे दैनिक जीवन में सुरक्षा एक प्रमुख चिंता का विषय है, और डिजिटल ताले इन सुरक्षा प्रणालियों का एक महत्वपूर्ण हिस्सा बन गए हैं। हमारे स्थान को सुरक्षित करने के लिए कई प्रकार की सुरक्षा प्रणालियाँ उपलब्ध हैं। कुछ उदाहरण पीआईआर आधारित सुरक्षा प्रणाली, आरएफआईडी आधारित सुरक्षा प्रणाली, डिजिटल लॉक सिस्टम, बायो-मैट्रिक्स सिस्टम, इलेक्ट्रॉनिक्स कोड लॉक हैं। इस पोस्ट में, हम Arduino के साथ एक फिंगरप्रिंट सेंसर मॉड्यूल को इंटरफ़ेस करेंगे और लॉकिंग लॉकिंग के साथ एक फिंगरप्रिंट आधारित बॉयोमीट्रिक सुरक्षा प्रणाली का निर्माण करेंगे । फिंगर प्रिंट को किसी भी सिस्टम को लॉक या अनलॉक करने के लिए सबसे सुरक्षित कुंजी में से एक माना जाता है क्योंकि यह किसी भी व्यक्ति को विशिष्ट रूप से पहचान सकता है और आसानी से कॉपी नहीं किया जा सकता है।
आवश्यक घटक:
- अरुडिनो उनो
- फिंगर प्रिंट मॉड्यूल
- पुश बटन -4
- एलईडी -2
- 1K रोकनेवाला -3
- 2.2K रोकनेवाला -1`
- बिजली की आपूर्ति
- तारों को जोड़ना
- गत्ते के डिब्बे का बक्सा
- सर्वो मोटर -1
- 16x2 एलसीडी -1
- ब्रेड बोर्ड -1
Arduino के साथ फिंगर प्रिंट सेंसर मॉड्यूल:
फिंगर प्रिंट सेंसर मॉड्यूल या फिंगर प्रिंट स्कैनर एक ऐसा मॉड्यूल है जो उंगली की प्रिंट छवि को कैप्चर करता है और फिर इसे समतुल्य टेम्पलेट में परिवर्तित करता है और Arduino द्वारा चयनित आईडी (स्थान) पर उनकी मेमोरी में सहेजता है। यहाँ सभी प्रक्रिया को Arduino द्वारा कमांड किया जाता है जैसे फिंगर प्रिंट की एक छवि लेना, इसे टेम्प्लेट और स्टोरिंग स्थान आदि में बदलना।
इस Arduino Fingerprint Sensor Project में, हमने सिस्टम में इनपुट के रूप में अंगुली या अंगूठे के निशान को लेने के लिए Fingerprint Sensor Module का उपयोग किया है। यहां हम 4 पुश बटन एनरोल / बैक, डिलीट / ओके, यूपी और डाउन का उपयोग कर रहे हैं। हर कुंजी में दोहरी विशेषताएं होती हैं। एनरोल कुंजी का उपयोग सिस्टम और बैक फ़ंक्शन में नई फिंगर इंप्रेशन को दर्ज करने के लिए किया जाता है। इसका मतलब है कि जब उपयोगकर्ता नई उंगली का नामांकन करना चाहता है, तो उसे नामांकन कुंजी दबाने की आवश्यकता होती है, तो एलसीडी उस आईडी या स्थान के लिए पूछता है जहां उपयोगकर्ता फिंगर प्रिंट आउटपुट स्टोर करना चाहता है। अब यदि इस समय उपयोगकर्ता आगे नहीं बढ़ना चाहता है तो वह वापस जाने के लिए नामांकन कुंजी को फिर से दबा सकता है (इस बार नामांकन कुंजी को वापस कुंजी के रूप में व्यवहार करता है)। मतलब नामांकन कुंजी में नामांकन और बैक फ़ंक्शन दोनों हैं। DEL / ओके कीइसमें भी एक ही डबल फ़ंक्शन होता है जैसे जब उपयोगकर्ता नई उंगली का नामांकन करता है तो उसे एक और दो कुंजी अर्थात् UP / MATCH AND DOWN / MATCH (जिसमें डबल फ़ंक्शन भी होता है) का उपयोग करके फिंगर आईडी या लोकेशन का चयन करना होगा, अब उपयोगकर्ता को DEL / OK प्रेस करना होगा कुंजी (इस बार यह कुंजी ठीक व्यवहार करती है) चयनित आईडी या स्थान के साथ आगे बढ़ने के लिए। UP / DOWN कुंजियाँ फ़िंगर प्रिंट मिलान फ़ंक्शन का भी समर्थन करती हैं। पूर्ण प्रदर्शन के लिए अंत में वीडियो देखें ।
यहां हमने सुरक्षा गेट के रूप में कार्य करने के लिए सर्वो मोटर के साथ एक कार्डबोर्ड बॉक्स भी संलग्न किया है, जो केवल तभी खुलेगा जब सिस्टम सही फिंगर प्रिंट पढ़ेगा। पीला एलईडी इंगित करता है कि गेट बंद है और ग्रीन एलईडी इंगित करता है कि गेट खोला गया है।
कार्य स्पष्टीकरण:
इस फिंगरप्रिंट सेंसर डोर लॉक का कार्य करनाआसान है। इस परियोजना में, हमने एक गेट का उपयोग किया है जो तब खुला होगा जब हम फिंगर प्रिंट मॉड्यूल पर संग्रहीत उंगली रखेंगे। सबसे पहले, उपयोगकर्ता को पुश बटन / कुंजी की मदद से उंगली को नामांकित करने की आवश्यकता है। ऐसा करने के लिए उपयोगकर्ता को ENROLL कुंजी दबानी होगी और फिर LCD स्थान / आईडी दर्ज करने के लिए कहता है जहां उंगली एक स्टोर होगी। इसलिए अब उपयोगकर्ता को UP / DOWN कुंजियों का उपयोग करके ID (स्थान) दर्ज करना होगा। स्थान / आईडी का चयन करने के बाद उपयोगकर्ता को एक OK कुंजी (DEL कुंजी) दबाना होगा। अब एलसीडी फिंगर प्रिंट मॉड्यूल पर उंगली रखने के लिए कहेंगे। अब उपयोगकर्ता को अपनी उंगली को फिंगर प्रिंट मॉड्यूल पर रखने की आवश्यकता है। फिर एलसीडी फिंगर प्रिंट मॉड्यूल से उंगली को हटाने के लिए कहेंगे और फिर से उंगली रखने के लिए कहेंगे। अब उपयोगकर्ता को अपनी उंगली को फिर से फिंगर प्रिंट मॉड्यूल पर रखना होगा।अब फिंगर प्रिंट मॉड्यूल एक छवि लेता है और इसे टेम्प्लेट में परिवर्तित करता है और इसे चयनित आईडी द्वारा फिंगर प्रिंट मॉड्यूल की मेमोरी में संग्रहीत करता है। अब उपयोगकर्ता एक ही उंगली रखकर गेट खोल सकता है जिसे उसने सिस्टम में जोड़ा है या नामांकित किया है और फिर MATCH कुंजी (UP / Down कुंजी) दबाएं। उसी विधि से, उपयोगकर्ता अधिक उंगलियां जोड़ सकता है। पूर्ण प्रदर्शन के लिए नीचे दिए गए वीडियो की जाँच करें।
अब यदि उपयोगकर्ता किसी भी संग्रहीत आईडी को हटाना या हटाना चाहता है, तो उसे DEL कुंजी दबाने की आवश्यकता है, DEL कुंजी दबाने के बाद, LCD चयन स्थान का चयन करेगा जिसका अर्थ है कि हटाए जाने वाली ID का चयन करें। अब यूजर को आईडी सेलेक्ट करना होगा और ओके की (उसी DEL की) को प्रेस करना होगा। अब एलसीडी आपको बताएगा कि उंगली सफलतापूर्वक हटा दी गई है। अब उपयोगकर्ता यह जाँच सकता है कि वह फिंगर प्रिंट मॉड्यूल पर एक ही उंगली रखकर या MATCH कुंजी (UP / Down कुंजी) दबाकर हटा दिया गया था या नहीं।
जब रखी गई उंगली वैध होगी तो ग्रीन एलईडी पांच सेकंड के लिए चमक जाएगी और उसी समय गेट भी खुल जाएगा। 5-सेकंड के बाद गेट अपने आप बंद हो जाएगा। उपयोगकर्ता अपनी आवश्यकता के अनुसार गेट / दरवाजा खोलने और बंद करने को अनुकूलित कर सकता है। गेट के खुलने और बंद होने के लिए सर्वो मोटर जिम्मेदार है।
सर्किट स्पष्टीकरण:
इस Arduino Fingerprint Security System का सर्किट बहुत सरल है जिसमें Arduino होता है जो प्रोजेक्ट, पुश बटन, बजर, और एलसीडी की पूरी प्रक्रिया को नियंत्रित करता है। Arduino पूरी प्रक्रियाओं को नियंत्रित करता है।
ग्राउंड और पीली एलईडी के संबंध में पुश बटन सीधे D14 (ENROLL), D15 (DEL), D16 (UP) और D17 (DOWN) को ग्राउंड एंड येल्लो LED से जोड़ा गया है। 1k रोकनेवाला और ग्रीन एलईडी एक ही विधि के साथ Arduino के D6 से जुड़ा हुआ है। फिंगर प्रिंट मॉड्यूल का आरएक्स और टीएक्स सीधे सॉफ्टवेयर सीरियल या डिजिटल पिन डी 2 और डी 3 के अरुडिनो से जुड़ा हुआ है। 5v सप्लाई का उपयोग Arduino बोर्ड से लिए गए फिंगर प्रिंट मॉड्यूल को पावर करने के लिए किया जाता है और सर्वो मोटर Arduino के PWM पिन D5 से भी जुड़ा होता है। एक 16x2 एलसीडी 4-बिट मोड में कॉन्फ़िगर किया गया है और इसका RS, EN, D4, D5, D6 और D7 डिजिटल पिन D13, D12, D11, D10, D9, और Ar8ino के D8 से सीधे जुड़ा हुआ है।
नोट: यहाँ D14, D15, D16, D17 क्रमशः A0, A1, A2, A3 हैं।
कार्यक्रम की व्याख्या:
एक कार्यक्रम में, हमने Arduino Board के साथ फ़िंगरप्रिंट मॉड्यूल को बदलने के लिए Adafruit Fingerprint Sensor Library का उपयोग किया है । आप नीचे दिए गए पूर्ण कोड की जांच कर सकते हैं, इसे आसानी से समझा जा सकता है। यहाँ हम Arduino Program के मुख्य कार्यों की व्याख्या कर रहे हैं।
फिंगर प्रिंट को इनपुट के रूप में लेने और उंगली के सत्यापन के अनुसार कार्रवाई करने के लिए नीचे दिए गए कोड ऑफ कोड का उपयोग किया जाता है। यदि उंगली मान्य होगी तो गेट खुला रहेगा अन्यथा बंद रहेगा।
for (int i = 0; i <5; i ++) {lcd.clear (); lcd.print ("प्लेस फिंगर"); देरी (2000); int result = getFingerprintIDez (); अगर (परिणाम> = 0) {digitalWrite (ओपनलाइट, हाई); digitalWrite (करीब, कम); lcd.clear (); lcd.print ("अनुमति"); lcd.setCursor (0,1); lcd.print ("गेटे ओपन"); myServo.write (0); देरी (5000); myServo.write (180); डिजिटलराइट (क्लोज़लाइट, हाई); digitalWrite (ओपनलाइट, LOW); lcd.setCursor (0,1); lcd.print ("गेट बंद");
शून्य चेक को देखते हुए () फ़ंक्शन का उपयोग एनरोल या DEL कुंजी को चेक करने के लिए किया जाता है या नहीं और यदि दबाया जाता है तो क्या करना है। यदि ENROLL कुंजी ने एनरोल () फ़ंक्शन को दबाया और DEL कुंजी दबाया तो डिलीट () फ़ंक्शन को कहा जाता है।
void checkKeys () {if (digitalRead (नामांकन) == 0) {lcd.clear (); lcd.print ("कृपया प्रतीक्षा करें"); देरी (1000); जबकि (digitalRead (नामांकन) == 0); दाखिला (); } और यदि (digitalRead (del) == 0) {lcd.clear (); lcd.print ("कृपया प्रतीक्षा करें"); देरी (1000); हटाना (); }}
दिए गए फ़ंक्शन का उपयोग हटाए जाने के लिए आईडी दर्ज करने और uint8_t deleteFingerprint (uint8_t id) फ़ंक्शन को कॉल करने के लिए किया जाता है जो रिकॉर्ड से उंगली को हटा देगा।
शून्य हटाना () {int count = 0; lcd.clear (); lcd.print ("उंगली हटाएं"); lcd.setCursor (0,1); lcd.print ("स्थान:"); जबकि (1) {lcd.setCursor (9,1); lcd.print (गिनती); if (digitalRead (up) == 0) {count ++; if (गिनती> 25) count = 0; देरी (500); }……………….
दिए गए फ़ंक्शन का उपयोग चयनित आईडी के रिकॉर्ड से फिंगर प्रिंट को हटाने के लिए किया जाता है।
uint8_t deleteFingerprint (uint8_t id) {uint8_t p = -1; lcd.clear (); lcd.print ("कृपया प्रतीक्षा करें"); p = finger.deleteModel (id); if (p == FINGERPRINT_OK) {Serial.println ("हटा दिया गया!"); lcd.clear (); lcd.print ("Figer Deleted"); lcd.setCursor (0,1); lcd.print ("सफलतापूर्वक"); देरी (1000); } और {Serial.print ("कुछ गलत"); lcd.clear (); lcd.print ("कुछ गलत"); lcd.setCursor (0,1); lcd.print ("बाद में फिर कोशिश करें"); देरी (2000); वापसी पी; }}
दिया गया फंक्शन का उपयोग फिंगर प्रिंट इमेज लेने और उन्हें टेम्प्लेट में बदलने और फिंगर प्रिंट मॉड्यूल मेमोरी में चयनित आईडी द्वारा इसे बचाने के लिए किया जाता है।
uint8_t getFingerprintEnroll () {int p = -1; lcd.clear (); lcd.print ("फिंगर आईडी:"); lcd.print (id); lcd.setCursor (0,1); lcd.print ("प्लेस फिंगर"); देरी (2000); जबकि (पी! = FINGERPRINT_OK) {p = finger.getImage ();…………………
तो यह है कि हम Arduino को फिंगर प्रिंट रीडर मॉड्यूल के साथ सुरक्षा प्रणाली के लिए कैसे उपयोग कर सकते हैं ।