- सामग्री की आवश्यकता:
- ब्लाइंड स्टिक सर्किट आरेख:
- स्मार्ट ब्लाइंड स्टिक के लिए Arduino प्रोग्राम:
- Arduino ब्लाइंड स्टिक इन एक्शन:
कभी ह्यूग हेर के बारे में सुना है? वह एक प्रसिद्ध अमेरिकी रॉक पर्वतारोही हैं, जिन्होंने अपनी विकलांगता की सीमाओं को तोड़ दिया है; वह एक मजबूत विश्वास है कि प्रौद्योगिकी विकलांगों को सामान्य जीवन जीने में मदद कर सकती है। अपनी एक टेड बात में हेर ने कहा “ मनुष्य विकलांग नहीं हैं। एक व्यक्ति को कभी नहीं तोड़ा जा सकता है। हमारा बनाया पर्यावरण, हमारी प्रौद्योगिकियां, टूटी हुई और अक्षम हैं। हम लोगों को अपनी सीमाओं को स्वीकार करने की जरूरत नहीं है, लेकिन तकनीकी नवाचार के माध्यम से विकलांगता हस्तांतरण कर सकते हैं " । ये केवल शब्द नहीं थे बल्कि वह उनके लिए अपना जीवन व्यतीत करता था, आज वह प्रोस्थेटिक पैरों का उपयोग करता है और सामान्य जीवन जीने का दावा करता है। तो हां, प्रौद्योगिकी वास्तव में मानव विकलांगता को बेअसर कर सकती है; इसे ध्यान में रखते हुए, हम Arduino का उपयोग करके एक अल्ट्रासोनिक ब्लाइंड स्टिक बनाने के लिए कुछ सरल डेवेलोपमेंट बोर्ड और सेंसर का उपयोग करते हैं जो दृष्टिबाधित व्यक्तियों के लिए सिर्फ एक छड़ी से अधिक प्रदर्शन कर सकता है।
इस स्मार्ट स्टिक में किसी भी बाधा, एलडीआर से लेकर बोध प्रकाश की स्थिति और एक आरएफ रिमोट का उपयोग करने के लिए एक संवेदक सेंसर होगा , जिसका उपयोग करके अंधा व्यक्ति दूर से अपनी छड़ी का पता लगा सकता है । सभी फीडबैक अंधे व्यक्ति को बजर के माध्यम से दिया जाएगा। बेशक आप बजर के स्थान पर एक वाइब्रेटर मोटर का उपयोग कर सकते हैं और अपनी रचनात्मकता का उपयोग करके बहुत अधिक अग्रिम कर सकते हैं।
सामग्री की आवश्यकता:
- Arduino नैनो (कोई भी संस्करण काम करेगा)
- अल्ट्रासोनिक सेंसर HC-SR04
- लीडर
- बजर और एलईडी
- 7805 है
- 433MHz आरएफ ट्रांसमीटर और रिसीवर
- प्रतिरोधों
- संधारित्र
- बटन दबाओ
- परफ़ेक्ट बोर्ड
- टांका लगाने की किट
- 9 वी बैटरी
आप इस स्मार्ट ब्लाइंड स्टिक प्रोजेक्ट के लिए सभी आवश्यक घटक यहां से खरीद सकते हैं।
ब्लाइंड स्टिक सर्किट आरेख:
इस Arduino स्मार्ट ब्लाइंड स्टिक प्रोजेक्ट के लिए दो अलग-अलग सर्किट की आवश्यकता होती है। एक मुख्य सर्किट है जो अंधा आदमी की छड़ी पर लगाया जाएगा। अन्य एक छोटा रिमोट आरएफ ट्रांसमीटर सर्किट है जिसका उपयोग मुख्य सर्किट का पता लगाने के लिए किया जाएगा। अल्ट्रासोनिक सेंसर का उपयोग करके एक अंधे छड़ी बनाने के लिए मुख्य बोर्ड का सर्किट आरेख नीचे दिखाया गया है:
जैसा कि हम देख सकते हैं कि सभी सेंसर को नियंत्रित करने के लिए एक Arduino नैनो का उपयोग किया जाता है, लेकिन आप इस स्मार्ट ब्लाइंड स्टिक को Arduino uno का उपयोग करके भी बना सकते हैं लेकिन उसी पिनआउट और प्रोग्राम का पालन कर सकते हैं। पूरा बोर्ड एक 9 वी बैटरी द्वारा संचालित होता है जिसे 7805 वोल्ट रेगुलेटर का उपयोग करके + 5 वी के लिए विनियमित किया जाता है। अल्ट्रासोनिक संवेदक 5V के द्वारा संचालित है और ट्रिगर और इको पिन Arduino के लिए जुड़ा हुआ है जैसा कि ऊपर दिखाया नैनो 3 और 2 पिन करें। लीडर मूल्य 10K की एक बाधा एक संभावित विभक्त और वोल्टेज में अंतर Arduino एडीसी पिन A1 द्वारा पढ़ा जाता है के रूप में करने के साथ जुड़ा हुआ है। RF रिसीवर से सिग्नल पढ़ने के लिए ADC पिन A0 का उपयोग किया जाता है । बोर्ड का आउटपुट बजर द्वारा दिया गया है जो पिन 12 से जुड़ा है।
आरएफ रिमोट सर्किट नीचे दिखाया गया है। इसके कार्य को भी आगे समझाया गया है।
मैंने इस RF रिमोट कंट्रोल सर्किट को काम करने के लिए एक छोटी सी हैक का उपयोग किया है। आम तौर पर इस 433 मेगाहर्ट्ज आरएफ मॉड्यूल का उपयोग करते समय काम करने के लिए एनकोडर और डिकोडर या दो एमसीयू की आवश्यकता होती है, जैसे हमारे पिछले आरएफ ट्रांसमीटर और रिसीवर सर्किट में हमने क्रमशः HT12D और HT12E, डिकोडर और एनकोडर आईसी का उपयोग किया था। लेकिन, हमारे आवेदन में हमें बस यह पता लगाने के लिए रिसीवर की आवश्यकता है कि क्या ट्रांसमीटर कुछ संकेत भेज रहा है। तो ट्रांसमीटर का डेटा पिन आपूर्ति के ग्राउंड या वीसीसी से जुड़ा हुआ है।
रिसीवर का डेटा पिन आरसी फिल्टर के माध्यम से पारित किया जाता है और फिर नीचे दिखाए गए अनुसार Arduino को दिया जाता है। अब, जब भी बटन दबाया जाता है तो प्राप्तकर्ता आउटपुट को कुछ निरंतर ADC मान बार-बार प्राप्त होता है। जब बटन दबाया नहीं जाता है तो यह पुनरावृत्ति नहीं देखी जा सकती है। तो हम बटन दबाए जाने का पता लगाने के लिए दोहराया मूल्यों की जांच करने के लिए Arduino प्रोग्राम लिखते हैं। ताकि एक ब्लाइंड व्यक्ति अपनी छड़ी को कैसे ट्रैक कर सके। आप यहां देख सकते हैं: आरएफ ट्रांसमीटर और रिसीवर कैसे काम करते हैं।
मैंने सभी कनेक्शनों को मिलाप करने के लिए एक परफेक्ट बोर्ड का इस्तेमाल किया है ताकि यह छड़ी के साथ बरकरार रहे। लेकिन, आप इन्हें ब्रेडबोर्ड पर भी बना सकते हैं। ये वे बोर्ड हैं जो मैंने इस ब्लाइंड स्टिक प्रोजेक्ट के लिए Arduino का उपयोग करके बनाए थे ।
स्मार्ट ब्लाइंड स्टिक के लिए Arduino प्रोग्राम:
एक बार जब हम अपने हार्डवेयर के साथ तैयार हो जाते हैं, तो हम Arduino को अपने कंप्यूटर से जोड़ सकते हैं और प्रोग्रामिंग शुरू कर सकते हैं। पूरा कोड इस पेज के लिए इस्तेमाल किया इस पृष्ठ के तल पर पाया जा सकता है, तो आप अपने Arduino बोर्ड को सीधे अपलोड कर सकते हैं। हालांकि, यदि आप यह जानने के लिए उत्सुक हैं कि कोड आगे कैसे काम करता है।
इनपुट आउटपुट पिंस को इनिशियलाइज़ करने के लिए हम सभी प्रोग्राम्स की तरह शून्य सेटअप () से शुरू करते हैं । हमारे कार्यक्रम में बजर और ट्रिगर पिन एक आउटपुट डिवाइस है और इको पिन एक इनपुट डिवाइस है। हम डिबगिंग के लिए सीरियल मॉनिटर को इनिशियलाइज़ भी करते हैं।
शून्य सेटअप () {Serial.begin (9600); पिनमोड (बज़, ऑउटपुत); digitalWrite (बज़, LOW); पिनमोड (ट्रिगर, OUTPUT); पिनमोड (गूंज, INPUT); }
मुख्य लूप के अंदर हम सभी सेंसर डेटा पढ़ रहे हैं । हम बटन दबाने के लिए जाँच करने के लिए दूरी, प्रकाश की तीव्रता और आरएफ सिग्नल के लिए एलडीआर के सेंसर डेटा को पढ़ने के साथ शुरू करते हैं। ये सभी डेटा एक चर में सहेजे गए हैं जैसा कि भविष्य के उपयोग के लिए नीचे दिखाया गया है।
calcul_distance (ट्रिगर, इको); सिग्नल = एनालॉगरेड (रिमोट); इंटेंस = एनालॉगरेड (लाइट);
हम रिमोट सिग्नल की जांच से शुरू करते हैं। हम RF_ रिसीवर से कितनी बार समान मान दोहराए जा रहे हैं, यह जांचने के लिए एक समान_काउंट नामक वैरिएबल का उपयोग करते हैं। यह पुनरावृत्ति तभी होगी जब बटन दबाया जाएगा। इसलिए हम रिमोट दबाए गए अलार्म को ट्रिगर करते हैं यदि गिनती 100 के मान से अधिक हो।
// जांचें कि क्या रिमोट दबाया गया है int temp = analogRead (रिमोट); समान_कोप = 0; जबकि (सिग्नल == अस्थायी) {सिग्नल = एनालॉगरेड (रिमोट); समान_काउंट ++; } // अगर रिमोट दबाया गया तो (इसी तरह_काउंट <100) {Serial.print (समान_count); सिरियल.प्रिंट ("रिमोट दबाया"); digitalWrite (बज़, हाई); देरी (3000); digitalWrite (बज़, LOW); }
आप इसे अपने कंप्यूटर पर सीरियल मॉनिटर पर भी देख सकते हैं:
अगला हम अंधे आदमी के चारों ओर प्रकाश की तीव्रता की जांच करते हैं । यदि LDR 200 से कम का मान देता है, तो इसे बहुत अंधेरा माना जाता है और हम उसे 200 मीटर की देरी के विशिष्ट स्वर के साथ बजर के माध्यम से चेतावनी देते हैं। यदि तीव्रता बहुत उज्ज्वल है जो 800 से अधिक है तो हम एक और टोन के साथ चेतावनी भी देते हैं। नीचे दिए गए कोड में संबंधित मूल्य को बदलकर अलार्म टोन और तीव्रता को आसानी से विविध किया जा सकता है।
// अगर बहुत अंधेरा हो तो (Intens <200) {Serial.print (Intens); सिरियल.प्रिंट ("ब्राइट लाइट"); digitalWrite (बज़, हाई); डिले (200); digitalWrite (बज़, LOW) (200), digitalWrite (बज़, हाई); देरी (200); digitalWrite (बज़, LOW); देरी (200)। देरी (500); } // अगर बहुत उज्ज्वल है अगर (Intens> 800) {Serial.print (Intens); सिरियल.प्रिंटल ("लो लाइट"); digitalWrite (बज़, हाई); डिले (500); digitalWrite (बज़, LOW) (500), digitalWrite (बज़, हाई); देरी (500); digitalWrite (बज़, LOW); देरी (500)। }
अंत में, हम किसी भी बाधा से दूरी को मापना शुरू करते हैं । 50 सेमी से अधिक की दूरी होने पर कोई अलार्म नहीं होगा। लेकिन, अगर यह 50 सेमी से कम है तो बजर को बीप करके अलार्म शुरू हो जाएगा । जैसे-जैसे वस्तु बजर के करीब आती है बीपिंग अंतराल भी कम होता जाएगा। करीब वस्तु तेजी से बजर बीप होगा। यह एक देरी का निर्माण करके किया जा सकता है जो मापी गई दूरी के आनुपातिक है। के बाद से देरी () Arduino में चर स्वीकार नहीं कर सकते कि हम एक का उपयोग करने के लिए लूप जो पाश मापा दूरी के आधार पर के रूप में नीचे दिखाया गया है।
if (dist <50) {Serial.print (dist); Serial.println ("ऑब्जेक्ट अलर्ट"); digitalWrite (बज़, हाई); for (int i = dist; i> 0; i--) विलंब (10); digitalWrite (बज़, LOW); for (int i = dist; i> 0; i--) विलंब (10); }
अल्ट्रासोनिक सेंसर और Arduino का उपयोग करके दूरी को मापने के बारे में अधिक जानें।
जिस मूल्य का हम तुलना करने के लिए उपयोग करते हैं, उसे बदलकर कार्यक्रम को आसानी से आपके आवेदन के लिए अनुकूलित किया जा सकता है। यदि कोई गलत अलार्म ट्रिगर है, तो आप सीरियल मॉनिटर का उपयोग डिबग करने के लिए करते हैं। यदि आपको कोई समस्या है तो आप अपने प्रश्नों को पोस्ट करने के लिए नीचे टिप्पणी अनुभाग का उपयोग कर सकते हैं
Arduino ब्लाइंड स्टिक इन एक्शन:
अंत में यह हमारे ब्लाइंड स्टिक अर्डिनो प्रोजेक्ट का परीक्षण करने का समय है । सुनिश्चित करें कि कनेक्शन सर्किट आरेख के अनुसार किए गए हैं और कार्यक्रम सफलतापूर्वक अपलोड किया गया है। अब, 9V बैटरी का उपयोग करके दोनों सर्किट को पावर करें और आपको परिणाम देखना शुरू कर देना चाहिए। अल्ट्रा सोनिक सेंसर को ऑब्जेक्ट के करीब ले जाएं और आप बेज़र बीपिंग को नोटिस करेंगे और यह बीपिंग आवृत्ति बढ़ जाती है क्योंकि स्टिक ऑब्जेक्ट के करीब जाती है । यदि LDR अंधेरे में कवर किया गया है या यदि बहुत अधिक प्रकाश है तो बजर बीप होगा। यदि सब कुछ सामान्य है तो बजर बीप नहीं होगा।
जब आप रिमोट पर बटन दबाते हैं तो बजर लंबी बीप देगा। इस पृष्ठ के अंत में दिए गए वीडियो में Arduino का उपयोग करते हुए अंधे के लिए इस स्मार्ट स्टिक का पूरा काम दिखाया गया है। मैं पूरी विधानसभा को माउंट करने के लिए एक छोटी छड़ी का उपयोग करता हूं आप एक बड़ा या एक वास्तविक अंधा छड़ी का उपयोग कर सकते हैं और इसे कार्रवाई में डाल सकते हैं।
यदि आपका बजर हमेशा बीप कर रहा है तो इसका मतलब है कि अलार्म को गलत ट्रिगर किया जा रहा है। आप पैरामीटर की जाँच करने के लिए सीरियल मॉनिटर खोल सकते हैं और जाँच कर सकते हैं कि कौन सी चीज़ गिर रही है और उसे समायोजित करें। हमेशा की तरह आप मदद पाने के लिए अपनी समस्या टिप्पणी अनुभाग में पोस्ट कर सकते हैं। आशा है कि आप इस परियोजना को समझ गए हैं और कुछ बनाने का आनंद लिया है।