कैसे Arduino का उपयोग कर ब्लाइंड लोगों के लिए एक स्मार्ट स्टिक बनाने के लिए?

मैं हेलेन केलर के एक उद्धरण में एक मजबूत आस्तिक हूं जो बताता है 'केवल अंधे होने से भी बदतर चीज दृष्टि है लेकिन कोई दृष्टि नहीं है'। तकनीक विकलांग लोगों को सामान्य जीवन जीने में मदद कर सकती है जैसा कि अन्य मनुष्य करते हैं। नाम वाली भारतीय लड़की को हर कोई जानता है Arunima Sinha जिसने एक रेल दुर्घटना में अपना पैर खो दिया और उसे जीवन भर कृत्रिम पैरों पर चलना पड़ा। दुर्घटना के बाद, उसने कृत्रिम पैरों पर माउंट एवरेस्ट पर चढ़ने का फैसला किया और इसलिए, नवीनतम तकनीक ने उसके सपने को प्राप्त करने का मार्ग प्रशस्त किया।



स्मार्ट स्टिक

प्रौद्योगिकी वास्तव में मानव विकलांगता को बेअसर कर सकती है; इसे ध्यान में रखते हुए हमें शक्ति का उपयोग करना चाहिए ब्लाइंड मैन की छड़ी बनाने के लिए अरडिनो और सरल सेंसर जो दृष्टिबाधित व्यक्तियों के लिए जीवन रक्षक हो सकता है। एक छड़ी में एक अल्ट्रासोनिक सेंसर स्थापित किया जाएगा जो किसी भी बाधा से किसी व्यक्ति की दूरी, एक LDR से लेकर बत्ती की रोशनी की स्थिति और एक आरएफ रिमोट का उपयोग करेगा, जिसे अंधा व्यक्ति अपनी छड़ी का पता लगाने के लिए उपयोग कर सकता है। नेत्रहीन व्यक्ति को बजर के माध्यम से सभी दिशाएं दी जाएंगी। हम बजर के स्थान पर एक वाइब्रेटर मोटर का उपयोग कर सकते हैं और अपनी रचनात्मकता का उपयोग करके बहुत अधिक आगे बढ़ सकते हैं।



ब्लाइंड लोगों के लिए स्मार्ट स्टिक (चित्र सौजन्य: सर्किट डाइजेस्ट)



सर्किट को डिजाइन करने में Arduino का उपयोग कैसे करें?

अब जैसा कि हम परियोजना के सार को जानते हैं, आइए हम आगे बढ़ते हैं और काम शुरू करने के लिए विभिन्न जानकारी एकत्र करते हैं। हम पहले घटकों की एक सूची बनाएंगे, फिर उनका संक्षेप में अध्ययन करेंगे, फिर सभी घटकों को एक कार्य प्रणाली बनाने के लिए इकट्ठा करेंगे।



चरण 1: आवश्यक घटक (हार्डवेयर)

  • लीडर
  • बजर
  • एलईडी
  • सपेरेट्रोडाइन ट्रांसमीटर और रिसीवर
  • अवरोध
  • बटन दबाओ
  • veroboard
  • 9 वी बैटरी
  • डिज़िटल मल्टीमीटर
  • गोंद बंदूक

चरण 2: प्रयुक्त घटक (सॉफ्टवेयर)

  • प्रोटीन 8 प्रोफेशनल (से डाउनलोड किया जा सकता है) यहाँ )

Proteus 8 Professional को डाउनलोड करने के बाद, इस पर सर्किट डिज़ाइन करें। हमने यहां सॉफ्टवेयर सिमुलेशन को शामिल किया है ताकि शुरुआती लोगों के लिए सर्किट डिजाइन करना और हार्डवेयर पर उचित कनेक्शन बनाना सुविधाजनक हो सके।

चरण 3: अवयवों का अध्ययन

अब जैसे कि हमने उन सभी घटकों की एक सूची बना ली है जिनका उपयोग हम इस परियोजना में करने जा रहे हैं। आइए हम एक कदम आगे बढ़ें और सभी मुख्य घटकों का एक संक्षिप्त अध्ययन करें।

  1. अरुडिनो नैनो: Arduino नैनो एक माइक्रोकंट्रोलर बोर्ड है जिसका उपयोग सर्किट में विभिन्न कार्यों को नियंत्रित करने या बाहर करने के लिए किया जाता है। हम एक जला देते हैं C कोड Arduino नैनो पर माइक्रोकंट्रोलर बोर्ड को बताना है कि कैसे और क्या संचालन करना है। Arduino Nano की Arduino Uno जैसी ही कार्यक्षमता है लेकिन काफी छोटे आकार में। Arduino नैनो बोर्ड पर माइक्रोकंट्रोलर है ATmega328p।

    अरुडिनो नैनो



  2. अल्ट्रासोनिक सेंसर HC-SR04: HC-SR04 बोर्ड एक अल्ट्रासोनिक सेंसर है जिसका उपयोग दो वस्तुओं के बीच की दूरी को निर्धारित करने के लिए किया जाता है। इसमें एक ट्रांसमीटर और एक रिसीवर होता है। ट्रांसमीटर इलेक्ट्रिकल सिग्नल को अल्ट्रासोनिक सिग्नल में परिवर्तित करता है और रिसीवर अल्ट्रासोनिक सिग्नल को इलेक्ट्रिकल सिग्नल में परिवर्तित करता है। जब ट्रांसमीटर एक अल्ट्रासोनिक तरंग भेजता है, तो यह किसी निश्चित वस्तु से टकराने के बाद परावर्तित होता है। समय का उपयोग करके दूरी की गणना की जाती है, जो अल्ट्रासोनिक सिग्नल ट्रांसमीटर से जाने और रिसीवर पर वापस आने के लिए लेता है।

    अतिध्वनि संवेदक

  3. 433mhz आरएफ ट्रांसमीटर और रिसीवर: यह 433MHz की एक विशिष्ट आवृत्ति पर संचालित होता है। बाजार में कई अन्य रेडियो फ़्रीक्वेंसी डिवाइस उपलब्ध हैं और उनकी तुलना में एक आरएफ मॉड्यूल का प्रदर्शन कई कारकों पर निर्भर करेगा जैसे कि जब हम ट्रांसमीटर की शक्ति बढ़ाते हैं तो एक बड़ी संचार दूरी इकट्ठा हो जाएगी। यह ट्रांसमीटर डिवाइस पर एक उच्च विद्युत ऊर्जा नाली का कारण होगा, जो बैटरी चालित उपकरणों के कम परिचालन जीवन का कारण बनता है। यदि हम इस उपकरण का उपयोग उच्च संचरित शक्ति पर करते हैं तो उपकरण अन्य RF उपकरणों के साथ व्यवधान पैदा करेगा।

    आरएफ ट्रांसमीटर और रिसीवर

  4. 7805 वोल्टेज नियामक: विद्युत सर्किट में वोल्टेज नियामकों का महत्वपूर्ण महत्व है। यहां तक ​​कि अगर इनपुट वोल्टेज में उतार-चढ़ाव होता है, तो यह वोल्टेज नियामक एक निरंतर आउटपुट वोल्टेज प्रदान करता है। हम अधिकांश परियोजनाओं में 7805 आईसी के आवेदन पा सकते हैं। 7805 नाम दो अर्थों को दर्शाता है, '78' का अर्थ है कि यह एक सकारात्मक वोल्टेज नियामक है और '05' का अर्थ है कि यह आउटपुट के रूप में 5V प्रदान करता है। तो हमारे वोल्टेज नियामक + 5 वी आउटपुट वोल्टेज प्रदान करेगा। यह IC 1.5A के आसपास करंट को हैंडल कर सकता है। अधिक वर्तमान खपत करने वाली परियोजनाओं के लिए हीट सिंक की सिफारिश की जाती है। उदाहरण के लिए, यदि इनपुट वोल्टेज 12 वी है और आप 1 ए का उपभोग कर रहे हैं, तो (12-5) * 1 = 7 डब्ल्यू। यह 7 वॉट गर्मी के रूप में फैल जाएगा।

    वोल्टेज रेगुलेटर

चरण 4: सर्किट को असेंबल करना

हमें इस प्रोजेक्ट के लिए दो सर्किट डिजाइन करने होंगे। पहला सर्किट एक अंधे आदमी की छड़ी में एक उपयुक्त स्थान पर रखा जाएगा और दूसरा एक होगा आरएफ ट्रांसमीटर सर्किट और इसका उपयोग मुख्य सर्किट का पता लगाने के लिए किया जाएगा। प्रोटीस पर सर्किट को डिजाइन करने से पहले हमें सॉफ्टवेयर में आरएफ रिसीवर के प्रोटीस लाइब्रेरी को शामिल करना होगा। आप पुस्तकालय से डाउनलोड कर सकते हैं यहाँ और लाइब्रेरी को डाउनलोड करने के बाद खोलें पुस्तकालय फ़ोल्डर और कॉपी MODULO_RF.LIB Proteus के लाइब्रेरी फ़ोल्डर में फ़ाइल और पेस्ट करें। यदि आपको लाइब्रेरी फ़ोल्डर नहीं मिलता है, तो (C: Program Files (x86) Labcenter Electronics Proteus 8 Professional LIBRARY पर क्लिक करें। जब आपने यह ओपन मॉडल फ़ोल्डर किया है और RX.MDF की प्रतिलिपि बनाएँ और इसे प्रोटेक्टस मॉडल फ़ोल्डर में पेस्ट करें। यदि आपको मॉडल फ़ोल्डर नहीं मिल रहा है, तो (C: Program Files (x86) Labcenter Electronics Proteus 8 Professional MODels पर क्लिक करें।

सर्किट आरेख (चित्र सौजन्य: सर्किट डाइजेस्ट)

सर्किट में सभी सेंसर को नियंत्रित करने के लिए जो माइक्रोकंट्रोलर का उपयोग किया जाएगा अरुडिनो नैनो। सर्किट के काम करने के लिए उपयोग की जाने वाली बिजली की आपूर्ति 9 वी बैटरी है और यह 9 वी वोल्टेज ए का उपयोग करके 5 वी तक नीचे गिरा दिया गया है 7805 वोल्टेज रेगुलेटर। सर्किट में देखा जा सकता है कि अतिध्वनि संवेदक वोल्टेज नियामक के मतदान द्वारा संचालित है। सेंसर के ट्रिगर और इको पिन क्रमशः Arduino के पिन 3 और पिन 2 से जुड़े होते हैं। प्रकाश पर निर्भर प्रतिरोधक (LDR) मूल्य 10k और के नापने से जुड़ा है डिजिटल के अनुरूप Arduino का रूपांतरण पिन A1 वोल्टेज अंतर को नोट करने के लिए उस बिंदु से जुड़ा हुआ है। हमें RF रिसीवर द्वारा उत्सर्जित होने वाले सिग्नल को जानने की आवश्यकता है, इसलिए हमने RF रिसीवर से सिग्नल पढ़ने के लिए ADC पिन A0 को कनेक्ट किया है। पूरे सर्किट का आउटपुट किसके द्वारा दिया गया है बजर तो, बजर का पॉजिटिव पिन Arduino के पिन 12 से जुड़ा है और नेगेटिव पिन अल्ट्रासोनिक सेंसर की जमीन से जुड़ा है।

हमने अपने सर्किट आरेख में RF ट्रांसमीटर को शामिल नहीं किया है क्योंकि हम इसे अलग से हार्डवेयर पर इकट्ठा करेंगे। जब भी हम 433 मेगाहर्ट्ज सुपरहीटरोडाइन ट्रांसमीटर और रिसीवर का उपयोग करते हैं, तो हमें उनके साथ इंटरफेस करने के लिए एक माइक्रोकंट्रोलर की आवश्यकता होती है, लेकिन इस परियोजना में हमें रिसीवर को संकेत भेजने के लिए एकमात्र ट्रांसमीटर की आवश्यकता होती है, इसलिए हमने ट्रांसमीटर के डेटा पिन को Vcc के साथ जोड़ा है। रिसीवर का डेटा पिन आरसी फिल्टर के माध्यम से पारित किया जाता है और फिर क्रमशः Arduino के डेटा पिन A0 से जुड़ा होता है। हम ट्रांसमीटर पर रखे पुश बटन को बार-बार दबाएंगे और जब बटन दबाया जाएगा तो रिसीवर आउटपुट के रूप में कोई निरंतर मूल्य देगा।

आरएफ ट्रांसमीटर

चरण 5: हार्डवेयर कोडांतरण

जैसा कि हमने सिमुलेशन चलाया है, हम कोई प्रोटोटाइप बनाने की स्थिति में नहीं हैं। परफ़ेक्ट बोर्ड के घटकों को सोल्डर करते समय अरुडिनो नैनो के पिनों की ओर विशेष ध्यान दिया जाता है। सुनिश्चित करें कि पिन एक दूसरे को स्पर्श नहीं करते हैं, अन्यथा, Arduino क्षतिग्रस्त हो सकता है। अपने घर पर एक छड़ी खोजें और उस पर Arduino और RF रिसीवर के सर्किट को संलग्न करें। आप छड़ी पर सर्किट संलग्न करने के लिए गर्म गोंद बंदूक का उपयोग कर सकते हैं और सकारात्मक और नकारात्मक टर्मिनलों पर कुछ गोंद लगाने के लिए बेहतर है ताकि बिजली आपूर्ति के तारों को अलग न किया जा सके यदि छड़ी को जमीन पर मजबूती से स्ट्रोक किया जाता है।

हार्डवेयर (चित्र सौजन्य: सर्किट डाइजेस्ट) पर इकट्ठे सर्किट

चरण 6: Arduino के साथ शुरुआत करना

यदि आप पहले Arduino IDE से परिचित नहीं हैं, तो चिंता न करें क्योंकि नीचे, आप Arduino IDE का उपयोग करके माइक्रोकंट्रोलर बोर्ड पर कोड जलने के स्पष्ट चरण देख सकते हैं। आप Arduino IDE के नवीनतम संस्करण को डाउनलोड कर सकते हैं यहाँ और नीचे दिए गए चरणों का पालन करें:

  1. जब Arduino बोर्ड आपके पीसी से जुड़ा होता है, तो 'कंट्रोल पैनल' खोलें और 'हार्डवेयर और साउंड' पर क्लिक करें। इसके बाद “डिवाइसेस एंड प्रिंटर्स” पर क्लिक करें। उस पोर्ट का नाम ढूंढें जिसमें आपका Arduino बोर्ड जुड़ा हुआ है। मेरे मामले में यह 'COM14' है, लेकिन यह आपके पीसी पर भिन्न हो सकता है।

    पोर्ट ढूँढना

  2. टूल मेनू पर क्लिक करें। और बोर्ड को सेट करें अरुडिनो नैनो ड्रॉप-डाउन मेनू से।

    बोर्ड की स्थापना

  3. उसी टूल मेनू में, पोर्ट को उस पोर्ट संख्या पर सेट करें जिसे आपने पहले देखा था उपकरणों और छापक यंत्रों

    पोर्ट की स्थापना

  4. उसी टूल मेनू में, प्रोसेसर को सेट करें ATmega328P (पुराना बूटलोडर)।

    प्रोसेसर

  5. नीचे दिए गए कोड को डाउनलोड करें और इसे अपने Arduino IDE में पेस्ट करें। पर क्लिक करें डालना अपने माइक्रोकंट्रोलर बोर्ड पर कोड को जलाने के लिए बटन।

    डालना

कोड डाउनलोड करने के लिए, यहाँ क्लिक करें।

चरण 7: कोड को समझना

कोड अच्छी तरह से टिप्पणी और आत्म-व्याख्यात्मक है। लेकिन फिर भी, यह नीचे समझाया गया है:

  1. कोड की शुरुआत में, Arduino नैनो बोर्ड के सभी पिन जो अल्ट्रासोनिक सेंसर और आरएफ मॉड्यूल से जुड़े हुए हैं, आरंभिक हैं।
const int ट्रिगर = 3; // 1 सेंसर का ट्रिगर पिन int int = 2; // 1 सेंसर का इको पिन कॉन्स्टेंस इंट बज़ = 13; // बजर को जोड़ने के लिए पिन int int = A0; const int लाइट = ए 1; long time_taken; इंट डिस्ट; इंट सिग्नल; इंट इंटेंस; int same_count;

2। व्यर्थ व्यवस्था() एक ऐसा फंक्शन है जिसका उपयोग अल पिनों को सेट करने के लिए किया जाता है, जैसा कि इनपुट तथा आउटपुट। इस फ़ंक्शन में बॉड दर को परिभाषित किया गया है। बॉड रेट संचार की गति है जिसके द्वारा माइक्रोकंट्रोलर बोर्ड इसके साथ एकीकृत सेंसर के साथ संचार करता है।

शून्य सेटअप () {Serial.begin (9600); pinMode (बज़, आउटपुट); digitalWrite (बज़, कम); पिनमोड (ट्रिगर, OUTPUT); पिनमोड (गूंज, INPUT); }

3. अब, हम एक फ़ंक्शन बनाएंगे जो दूरी की गणना करेगा।

शून्य गणना_डिस्टेंस (इंट ट्रिगर, इंट इको) {डिजिटलविराइट (ट्रिगर, LOW); delayMicroseconds (2); digitalWrite (ट्रिगर, हाई); delayMicroseconds (10); digitalWrite (ट्रिगर, LOW); time_taken = pulIn (echo, HIGH); dist = time_taken * 0.034 / 2; if (dist> 300) dist = 300; }

चार। शून्य लूप () एक ऐसा कार्य है जो एक चक्र में बार-बार चलता है। इस फ़ंक्शन में, हम माइक्रोकंट्रोलर बोर्ड को बताते हैं कि कैसे और क्या संचालन करना है। मुख्य लूप में, हम सेंसर के डेटा को पढ़ेंगे। यहां, पहले, ट्रिगर पिन एक संकेत भेजने के लिए सेट किया गया है जो कि इको पिन द्वारा पता लगाया जाएगा। यदि किसी वस्तु को किसी विशेष दूरी पर पाया जाता है तो बजर को लगातार ध्वनि करने के लिए कुछ शर्तें लागू की जाती हैं। बजर इसमें एक छोटे से ब्रेक के साथ बीप करेगा यदि यह अंधेरे का पता लगाता है और यह उज्ज्वल का पता लगाता है तो थोड़ा अधिक ब्रेक के साथ बीप करेगा।

शून्य लूप () {// अनंत लूप कैल्कुलेशन_डिस्टेंस (ट्रिगर, इको); सिग्नल = एनालॉगरेड (रिमोट); इंटेंस = एनालॉगरेड (लाइट); // जांचें कि क्या रिमोट दबाया गया है int temp = analogRead (रिमोट); similar_count = 0; जबकि (सिग्नल == अस्थायी) {सिग्नल = एनालॉगरेड (रिमोट); similar_count ++; } // अगर रिमोट दबाया जाता है अगर (समान_कोन<100) { Serial.print(similar_count); Serial.println('Remote Pressed'); digitalWrite(Buzz,HIGH);delay(3000);digitalWrite(Buzz,LOW); } //If very dark if (Intens800) { Serial.print(Intens); Serial.println('Low Light'); digitalWrite(Buzz,HIGH);delay(500);digitalWrite(Buzz,LOW);delay(500);digitalWrite(Buzz,HIGH);delay(500); digitalWrite(Buzz,LOW);delay(500); } if (dist<50) { Serial.print(dist); Serial.println('Object Alert'); digitalWrite(Buzz,HIGH); for (int i=dist; i>0; i--) देरी (10); digitalWrite (बज़, कम); for (int i = dist; i> 0; i--) विलंब (10); } //Serial.print('dist= '); //Serial.println(dist); //Serial.print('Similar_count= '); //Serial.println(similar_count); //Serial.print('Intens= '); //Serial.println(Intens); }

चरण 8: परीक्षण

जैसा कि हमने कोड को समझा है, इसे माइक्रोकंट्रोलर पर अपलोड किया है और हार्डवेयर को भी इकट्ठा किया है, अब हमारी परियोजना का परीक्षण करने का समय है। परीक्षण से पहले सुनिश्चित करें कि कनेक्शन सही तरीके से बने हैं और डिजिटल मल्टी मीटर का उपयोग करके सर्किट की निरंतरता को सत्यापित करें। मोड़ के लिए पर दोनों सर्किट 9 वी बैटरी का उपयोग करते हैं। किसी ऑब्जेक्ट को उस सतह पर रखें जिस पर आप परीक्षण कर रहे हैं और उसके सामने अल्ट्रासोनिक सेंसर को स्थानांतरित करें और यह ध्यान दिया जाता है कि बजर की आवाज़ बढ़ जाती है क्योंकि सेंसर ऑब्जेक्ट के करीब जाता है। अगर LDR अंधेरे में कवर किया जाता है या अगर आप सूरज की रोशनी में परीक्षण कर रहे हैं तो दो संभावनाएं हैं, बजर बीप करना शुरू कर देगा। अगर RF बटन पर पुश बटन दबाया जाता है तो बजर लंबे समय तक बीप करेगा। अगर बजर लंबे समय तक बीप करता रहे तो इसका मतलब है कि अलार्म गलत तरीके से चालू है। यदि आप इस तरह की त्रुटि का सामना कर रहे हैं, तो Arduino IDE का सीरियल मॉनिटर खोलें और उन मापदंडों की जांच करें जो इस तरह की समस्या पैदा कर रहे हैं।

हार्डवेयर का परीक्षण (चित्र सौजन्य: सर्किट डाइजेस्ट)

अर्डिनो का उपयोग करके अंधे लोगों के लिए एक स्मार्ट छड़ी बनाने का यह सबसे सरल तरीका था। ऊपर उल्लिखित सभी चरणों का पालन करें और परियोजना के सफल परीक्षण के बाद एक विकलांग व्यक्ति की तलाश करें और उसे अपना जीवन आसान बनाने के लिए इस परियोजना की पेशकश करें।