- अल्ट्रासोनिक सेंसर का उपयोग करके रोबोट से बचने की बाधा का निर्माण कैसे करें
- अवयव आवश्यक
- सर्किट आरेख
- Arduino - कोड का उपयोग करके बाधा से बचने वाले रोबोट
बाधा से बचना रोबोट एक बुद्धिमान उपकरण है जो स्वचालित रूप से इसके सामने की बाधा को समझ सकता है और खुद को दूसरी दिशा में मोड़ने से बच सकता है। यह डिज़ाइन रोबोट को टक्करों से बचाकर अज्ञात वातावरण में नेविगेट करने की अनुमति देता है, जो कि किसी भी स्वायत्त मोबाइल रोबोट के लिए एक प्राथमिक आवश्यकता है। बाधा से बचने वाले रोबोट का अनुप्रयोग सीमित नहीं है और इसका उपयोग अब अधिकांश सैन्य संगठनों में किया जाता है जो कई जोखिम भरा काम करने में मदद करता है जो किसी भी सैनिक द्वारा नहीं किया जा सकता है।
हमने पहले रास्पबेरी पाई का उपयोग करते हुए और पीआईसी माइक्रोकंट्रोलर का उपयोग करके बाधा से बचने वाले रोबोट का निर्माण किया था। इस बार हम एक अल्ट्रासोनिक सेंसर और Arduino का उपयोग करके रोबोट से बचने वाले एक बाधा का निर्माण करेंगे । यहां एक अल्ट्रासोनिक सेंसर का उपयोग रोबोट और बाधा के बीच की दूरी की गणना करके मार्ग में बाधाओं को महसूस करने के लिए किया जाता है। अगर रोबोट को कोई बाधा मिलती है तो वह दिशा बदल देता है और आगे बढ़ता रहता है।
अल्ट्रासोनिक सेंसर का उपयोग करके रोबोट से बचने की बाधा का निर्माण कैसे करें
रोबोट का निर्माण करने से पहले, यह समझना महत्वपूर्ण है कि अल्ट्रासोनिक सेंसर कैसे काम करता है क्योंकि बाधा का पता लगाने में इस सेंसर की महत्वपूर्ण भूमिका होगी। अल्ट्रासोनिक सेंसर के काम के पीछे मूल सिद्धांत अल्ट्रासोनिक बीम को प्रसारित करने और सतह से टकराने के बाद अल्ट्रासोनिक बीम प्राप्त करने के लिए सेंसर द्वारा लिए गए समय को नोट करना है। फिर आगे सूत्र की मदद से दूरी की गणना की जाती है। इस परियोजना में, व्यापक रूप से उपलब्ध HC-SR04 अल्ट्रासोनिक सेंसर का उपयोग किया जाता है। इस सेंसर का उपयोग करने के लिए, ऊपर दिए गए समान दृष्टिकोण का पालन किया जाएगा।
तो, HC-SR04 का ट्रिग पिन कम से कम 10 के लिए उच्च बनाया गया है। एक सोनिक बीम प्रत्येक 40KHz के 8 दालों के साथ प्रेषित होता है।
सिग्नल तब सतह से टकराता है और वापस लौटता है और HC-SR04 के रिसीवर इको पिन द्वारा पकड़ लिया जाता है। इको पिन उच्च भेजते समय पहले से ही उच्च बना दिया था।
बीम द्वारा वापस लौटने के लिए लिया गया समय चर में सहेजा जाता है और नीचे की तरह उपयुक्त गणनाओं का उपयोग करके दूरी में परिवर्तित किया जाता है
दूरी = (वायु में ध्वनि का समय x गति (343 मी / से)) / 2
हमने अल्ट्रासोनिक सेंसर का उपयोग कई परियोजनाओं में किया, अल्ट्रासोनिक सेंसर के बारे में अधिक जानने के लिए, अल्ट्रासोनिक सेंसर से संबंधित अन्य परियोजनाओं की जांच करें।
रोबोट से बचने की इस बाधा के घटक आसानी से मिल सकते हैं। चेसिस बनाने के लिए, किसी भी खिलौना चेसिस का उपयोग किया जा सकता है या कस्टम बनाया जा सकता है।
अवयव आवश्यक
- Arduino नैनो या ऊनो (कोई भी संस्करण)
- HC-SR04 अल्ट्रासोनिक सेंसर
- LM298N मोटर चालक मॉड्यूल
- 5 वी डीसी मोटर्स
- बैटरी
- पहियों
- हवाई जहाज़ के पहिये
- जम्पर तार
सर्किट आरेख
इस परियोजना के लिए पूरा सर्किट आरेख नीचे दिया गया है, जैसा कि आप देख सकते हैं कि यह एक Arduino नैनो का उपयोग करता है। लेकिन हम एक ही सर्किट (समान पिनआउट) और कोड के साथ Arduino UNO का उपयोग करके रोबोट से बचने में बाधा भी बना सकते हैं ।
एक बार सर्किट तैयार हो जाने के बाद, हमें एक रोबोट चेसिस के ऊपर सर्किट को इकट्ठा करके अपनी बाधा से बचने की कार का निर्माण करना होगा जैसा कि नीचे दिखाया गया है।
Arduino - कोड का उपयोग करके बाधा से बचने वाले रोबोट
एक प्रदर्शन वीडियो के साथ पूरा कार्यक्रम इस परियोजना के अंत में दिया गया है। कार्यक्रम में HC-SR04 मॉड्यूल की स्थापना करना और तदनुसार मोटर दिशा को स्थानांतरित करने के लिए मोटर पिंस के संकेतों को आउटपुट करना शामिल होगा। इस परियोजना में किसी भी पुस्तकालय का उपयोग नहीं किया जाएगा।
सबसे पहले trig को परिभाषित करने और कोर्ट-SR04 की गूंज पिन कार्यक्रम में। इस परियोजना में ट्रिगर पिन GPIO9 से जुड़ा है और इको पिन Arduino NANO के GPIO10 से जुड़ा है।
int ट्रिगिन = 9; // HC-SR04 int echoPin = 10 का ट्रिगर पिन ; // HC-SR04 का इको पिन
LM298N मोटर ड्राइवर मॉड्यूल के इनपुट के लिए पिन को परिभाषित करें। LM298N में 4 डेटा इनपुट पिन हैं जिनका उपयोग मोटर से जुड़ी दिशा को नियंत्रित करने के लिए किया जाता है।
int Revleft4 = 4; // वाम मोटर int fwdleft5 = 5 का उलटा प्रस्ताव ; // लेफ्ट मोटर इंट रेवर्ट 6 = 6 का फॉरवर्ड गति ; // राइट मोटर int fwdright7 = 7 का उलटा प्रस्ताव ; // राइट मोटर की फॉरवर्ड गति
में सेटअप () समारोह, उपयोग किया GPIO पिन के डेटा दिशा को परिभाषित । चार मोटर पिन और ट्रिग पिन को OUTPUT के रूप में और इको पिन को इनपुट के रूप में सेट किया गया है।
पिनमोड (रिवलेफ्ट 4, आउटपूट); / / आउटपुट पिन के रूप में मोटर पिन सेट करें (fwdleft5, OUTPUT); पिनमोड (Revright6, OUTPUT); पिनमोड (fwdright7, OUTPUT); पिनमोड (ट्रिगपिन, आउटपूट); // सेट ट्रिम पिन आउटपुट पिनमोड (इकोपिन, INPUT) के रूप में; // सेट इको पिन इनपुट के रूप में परावर्तित तरंगों को पकड़ने के लिए
में पाश () समारोह, कोर्ट-SR04 से दूरी मिलता है और दूरी के आधार पर मोटर दिशा चलते हैं। दूरी रोबोट के सामने आने वाली वस्तु दूरी को दिखाएगी। दूरी 10 से ऊपर अल्ट्रासोनिक के एक बीम को तोड़कर और 10us के बाद प्राप्त करके लिया जाता है। अल्ट्रासोनिक सेंसर और Arduino का उपयोग करके दूरी को मापने के बारे में अधिक जानने के लिए, लिंक का अनुसरण करें।
digitalWrite (trigPin, LOW); देरीमाइक्रोसेकंड (2); digitalWrite (ट्राइगिन, हाई); // 10 हमें देरी के लिए तरंगें भेजेंमाइक्रोसेकंड (10); अवधि = पल्स इन (इकोपिन, हाई); // परावर्तित तरंगें दूरी = अवधि / 58.2 प्राप्त करती हैं; // डिस्टेंस डिले में देरी (10);
यदि दूरी निर्धारित दूरी से अधिक है, तो इसका मार्ग में कोई बाधा नहीं है और यह आगे की दिशा में आगे बढ़ेगा।
अगर (दूरी> 19) { digitalWrite (fwdright7, HIGH); // आगे बढ़ें digitalWrite (Revright6, LOW); digitalWrite (fwdleft5, HIGH); digitalWrite (Revleft4, LOW); }
यदि बाधा से बचने के लिए दूरी निर्धारित दूरी से कम है, तो आगे कुछ बाधा है । तो इस स्थिति में रोबोट थोड़ी देर के लिए रुक जाएगा और उसके बाद फिर से कुछ देर के लिए रुक जाएगा और फिर दूसरी दिशा की ओर मुड़ जाएगा ।
अगर (दूरी <18) { digitalWrite (fwdright7, LOW); // स्टॉप डिजिटलविराइट (Revright6, LOW); digitalWrite (fwdleft5, LOW); digitalWrite (Revleft4, LOW); देरी (500); digitalWrite (fwdright7, LOW); // Movebackword digitalWrite (Revright6, HIGH); digitalWrite (fwdleft5, LOW); digitalWrite (Revleft4, HIGH); देरी (500); digitalWrite (fwdright7, LOW); // स्टॉप डिजिटलविराइट (Revright6, LOW); digitalWrite (fwdleft5, LOW); digitalWrite (Revleft4, LOW); देरी (100); digitalWrite (fwdright7, HIGH); digitalWrite (Revright6, LOW); digitalWrite (Revleft4, LOW); digitalWrite (fwdleft5, LOW); देरी (500); }
तो यह है कि एक रोबोट कहीं भी फंसने के बिना अपने रास्ते में बाधाओं से बच सकता है। नीचे पूर्ण कोड और वीडियो खोजें ।