क्या आप सीखना चाहते हैं कि अपना रोबोट कैसे बनाया जाए? कई अलग-अलग प्रकार के रोबोट हैं, जिन्हें आप स्वयं बना सकते हैं। अधिकांश लोग चाहते हैं कि कोई रोबोट बिंदु A से B तक जाने का आसान काम करे। आप एनालॉग घटकों से पूरी तरह से रोबोट का निर्माण कर सकते हैं या स्टार्टर किट खरीद सकते हैं। अपना खुद का रोबोट बनाना इलेक्ट्रॉनिक्स और कंप्यूटर प्रोग्रामिंग सीखने का एक शानदार तरीका है।
कदम
5 का भाग 1: रोबोट को असेंबल करना
चरण 1. अपने घटकों को इकट्ठा करो।
एक बुनियादी रोबोट बनाने के लिए, आपको कुछ सरल घटकों की आवश्यकता होगी। आप इनमें से अधिकतर या सभी घटकों को अपने स्थानीय इलेक्ट्रॉनिक्स हॉबी स्टोर पर या कुछ ऑनलाइन खुदरा विक्रेताओं पर पा सकते हैं। कुछ किट में ये सभी घटक शामिल हैं। इस रोबोट को किसी सोल्डरिंग की आवश्यकता नहीं है:
- Arduino Uno (या अन्य माइक्रोकंट्रोलर)
- 2 सर्वोस 360 डिग्री
- सर्वो से मेल खाने वाले 2 पहिए
- 1 मुक्त पहिया
- 1 परीक्षण बोर्ड (ब्रेडबोर्ड या प्रोजेक्ट बोर्ड) जिसे मिलाप नहीं किया गया है (एक परीक्षण बोर्ड की तलाश करें जिसमें प्रत्येक तरफ दो सकारात्मक और नकारात्मक पंक्तियाँ हों)
- 1 निकटता सेंसर (चार पिन कनेक्टर केबल के साथ)
- 1 पुश बटन स्विच
- 1 रोकनेवाला 10kΩ
- 1 यूएसबी ए से बी केबल
- टूटने योग्य हेडर का 1 सेट
- 9वी डीसी के साथ 1 6 एक्स एए बैटरी धारक। पावर सॉकेट
- 22 का 1 पैक। जम्पर केबल या सिंगल केबल
- इन्सुलेशन आगे और पीछे (डबल टेप) या गोंद बंदूक
चरण 2. बैटरी कम्पार्टमेंट को इस प्रकार घुमाएं कि उसका सपाट पिछला भाग ऊपर की ओर हो।
आप आधार के रूप में बैटरी कम्पार्टमेंट का उपयोग करके रोबोट बॉडी का निर्माण करेंगे।
चरण 3. बैटरी बे के अंत में एक ही दिशा में दो सर्वो को व्यवस्थित करें।
यह अंत वह छोर है जहां से केबल बैटरी से निकलती है। सर्वो को नीचे से छूना चाहिए, और प्रत्येक सर्वो के रोटेशन तंत्र को बैटरी डिब्बे के किनारों से बाहर की ओर होना चाहिए। यह महत्वपूर्ण है कि इन सर्वो को सही ढंग से व्यवस्थित किया जाए ताकि पहिए सीधे हों। सर्वो के लिए केबल बैटरी डिब्बे के पीछे से निकलनी चाहिए।
चरण 4. अपने इन्सुलेशन या गोंद के साथ सर्वो को गोंद करें।
सुनिश्चित करें कि सर्वो बैटरी डिब्बे से मजबूती से जुड़ा हुआ है। सर्वो के पिछले हिस्से को बैटरी डिब्बे के पीछे के साथ संरेखित किया जाना चाहिए।
अब, सर्वो को बैटरी बे के पिछले हिस्से में आधी जगह लेनी चाहिए।
चरण 5. परीक्षण बोर्ड को बैटरी डिब्बे में शेष स्थान के लंबवत रखें।
यह टेस्ट बोर्ड बैटरी कम्पार्टमेंट के सामने की तरफ थोड़ा सा लटकेगा और दोनों तरफ फैला होगा। सुनिश्चित करें कि आगे बढ़ने से पहले परीक्षण बोर्ड तंग है। "ए" पंक्ति सर्वो के सबसे करीब होनी चाहिए।
चरण 6. सर्वो के शीर्ष पर Arduino माइक्रोकंट्रोलर संलग्न करें।
यदि आप सर्वो को सही ढंग से संलग्न करते हैं, तो दो सर्वो का एक दूसरे को छूने वाला एक सपाट हिस्सा होना चाहिए। इस समतल स्थान पर Arduino बोर्ड का पालन करें ताकि USB और Arduino पावर कनेक्टर नीचे की ओर हों (परीक्षण बोर्ड से दूर)। Arduino का अगला भाग परीक्षण बोर्ड के साथ ओवरलैप होगा।
चरण 7. सर्वो पर पहियों को स्थापित करें।
घूर्णन सर्वो तंत्र पर पहियों को मजबूती से दबाएं। इसके लिए काफी बल की आवश्यकता हो सकती है क्योंकि पहियों को ऐसे छेदों के लिए डिज़ाइन किया गया है जो बिल्कुल सर्वो टिप के आकार से मेल खाते हैं।
चरण 8. परीक्षण बोर्ड के तल पर मुक्त पहिया स्थापित करें।
यदि आप रोबोट को उल्टा कर देते हैं, तो आपको बैटरी डिब्बे से एक छोटा परीक्षण बोर्ड लटका हुआ दिखाई देगा। इस लटकने वाले हिस्से में फ्री व्हील अटैच करें। यदि आवश्यक हो तो एक कील का प्रयोग करें। फ्री व्हील फ्रंट व्हील के रूप में कार्य करता है जो रोबोट को किसी भी दिशा में आसानी से मुड़ने की अनुमति देता है।
यदि आपने एक किट खरीदी है, तो फ्री व्हील में कुछ वेजेज हो सकते हैं जिनका उपयोग आप यह सुनिश्चित करने के लिए कर सकते हैं कि व्हील जमीन को छूने के लिए स्वतंत्र है।
5 का भाग 2: रोबोट को तार देना
चरण 1. दो 3-पिन हेडर काटें।
आप इसका उपयोग सर्वो को परीक्षण बोर्ड से जोड़ने के लिए करेंगे। पिन को हेडर के माध्यम से नीचे धकेलें, ताकि वे दोनों तरफ से समान दूरी पर आ जाएं।
चरण 2. टेस्ट बोर्ड पर दो हेडर को पंक्ति ई में पिन 1-3 और 6-8 में डालें।
सुनिश्चित करें कि वे मजबूती से या मजबूती से डाले गए हैं।
चरण 3. सर्वो तारों को हेडर से कनेक्ट करें, बाईं ओर काले तार के साथ (पिन 1 और 6)।
यह सर्वो को टेस्ट बोर्ड से जोड़ेगा। सुनिश्चित करें कि बायां सर्वो बाएं हेडर से जुड़ा है, और दायां सर्वो दाएं हेडर से जुड़ा है।
चरण 4. लाल जम्पर तार को पिन C2 और C7 से लाल रेल पिन (धनात्मक) से कनेक्ट करें।
सुनिश्चित करें कि आप परीक्षण बोर्ड के पीछे लाल रेल का उपयोग करते हैं (बाकी रोबोट निकाय के करीब)।
चरण 5. ब्लैक जम्पर वायर को पिन B1 और B6 से ब्लू रेल पिन (ग्राउंड) से कनेक्ट करें।
सुनिश्चित करें कि आप परीक्षण बोर्ड के पीछे नीली रेल का उपयोग करते हैं। केबल को लाल रेल पिन से न जोड़ें।
चरण 6. सफेद जम्पर तारों को पिन 12 और 13 से Arduino पर A3 और A8 से कनेक्ट करें।
यह Arduino को सर्वो को नियंत्रित करने और पहिया को चालू करने की अनुमति देगा।
चरण 7. सेंसर को परीक्षण बोर्ड के सामने संलग्न करें।
सेंसर को टेस्ट बोर्ड पर बाहरी पावर रेल पर नहीं लगाया गया है, बल्कि पिन की पहली दो पंक्तियों (J) पर लगाया गया है। सुनिश्चित करें कि आप इसे प्रत्येक तरफ समान संख्या में खाली पिन के साथ बीच में रखें।
चरण 8. काले जम्पर तार को पिन I14 से सेंसर के बाईं ओर पहले नीले रेल पिन से कनेक्ट करें।
यह सेंसर को ग्राउंड करेगा।
चरण 9. लाल जम्पर तार को पिन I17 से सेंसर के दाईं ओर पहले लाल रेल पिन से कनेक्ट करें।
इससे सेंसर को पावर मिलेगी।
चरण 10. सफेद जम्पर तारों को पिन I15 से पिन 9 तक Arduino पर, और I16 से पिन 8 तक कनेक्ट करें।
यह सेंसर से लेकर माइक्रोकंट्रोलर तक की जानकारी देगा।
5 का भाग 3: पावर केबल स्थापित करना
चरण 1. रोबोट को चालू करें ताकि आप बैटरी डिब्बे को अंदर देख सकें।
बैटरी कम्पार्टमेंट को व्यवस्थित करें ताकि केबल नीचे बाईं ओर से बाहर निकले।
चरण 2. लाल तार को नीचे बाईं ओर से दूसरे स्प्रिंग से कनेक्ट करें।
सुनिश्चित करें कि बैटरी कंपार्टमेंट ठीक से संरेखित है या सही दिशा की ओर है।
चरण 3. काले तार को पिछले वसंत के साथ नीचे दाईं ओर कनेक्ट करें।
ये दो तार Arduino को सही वोल्टेज प्रदान करने में मदद करेंगे।
चरण 4। लाल और काले तारों को लाल और नीले पिन से कनेक्ट करें जो परीक्षण बोर्ड के पीछे दाईं ओर हैं।
काला तार पिन 30 पर नीले रेल पिन पर जाना चाहिए। लाल तार पिन 30 पर लाल रेल पिन पर जाना चाहिए।
चरण 5. काले तार को Arduino पर GND पिन से नीली रेल के पीछे से कनेक्ट करें।
नीली रेल पर तार को 28 पिन करने के लिए कनेक्ट करें।
चरण 6. दोनों रेलों के लिए पिन 29 पर नीले रंग की रेल के पीछे से नीली रेल के सामने से काले तार को कनेक्ट करें।
लाल रेल को कनेक्ट न करें क्योंकि आप Arduino को नुकसान पहुंचा सकते हैं।
चरण 7. लाल तार को लाल रेल के सामने से पिन 30 पर Arduino पर 5V पिन से कनेक्ट करें।
यह Arduino को शक्ति प्रदान करेगा।
चरण 8. पिन 24-26 के बीच की जगह में पुशबटन स्विच डालें।
यह स्विच आपको बिजली बंद किए बिना रोबोट को बंद करने की अनुमति देगा।
चरण 9. सेंसर के दाईं ओर अगले खाली पिन पर लाल तार को H24 से लाल रेल से कनेक्ट करें।
यह बटन को पावर प्रदान करेगा।
चरण 10. H26 को नीली रेल से जोड़ने के लिए एक रोकनेवाला का उपयोग करें।
इसे सीधे उस काले तार के बगल में पिन से कनेक्ट करें जिसे आपने पिछले चरणों में जोड़ा था।
चरण 11. सफेद तार को G26 से Arduino पर पिन 2 से कनेक्ट करें।
यह Arduino को पुशबटन का पता लगाने की अनुमति देगा।
भाग ४ का ५: Arduino सॉफ़्टवेयर स्थापित करना
चरण 1. Arduino IDE डाउनलोड करें और निकालें।
यह वह जगह है जहां Arduino विकसित किया गया है और आपको निर्देशों को प्रोग्राम करने की अनुमति देता है जिसे आप अपने Arduino माइक्रोकंट्रोलर पर अपलोड कर सकते हैं। आप इसे arduino.cc/en/main/software से मुफ्त में डाउनलोड कर सकते हैं। डाउनलोड की गई फ़ाइल को फ़ाइल पर डबल-क्लिक करके और उसमें मौजूद फ़ोल्डर को एक आसान-से-पहुंच वाले स्थान पर ले जाकर अनज़िप करें। आप वास्तव में प्रोग्राम को स्थापित नहीं करेंगे, इसके बजाय आप इसे केवल उस फ़ोल्डर से चलाएंगे जिसे arduino.exe पर डबल-क्लिक करके निकाला गया था।
चरण 2. बैटरी डिब्बे को Arduino से कनेक्ट करें।
बैटरी को पावर देने के लिए उसके पिछले सॉकेट को Arduino के कनेक्टर में डालें।
चरण 3. USB के माध्यम से अपने कंप्यूटर में Arduino डालें।
संभावना है, विंडोज डिवाइस को नहीं पहचान पाएगा।
चरण 4. दबाएं।
विन+आर और टाइप करें देवएमजीएमटी.एमएससी.
यह कमांड डिवाइस मैनेजर को खोलेगा।
चरण 5. अन्य उपकरणों के तहत अज्ञात डिवाइस पर राइट-क्लिक करें और अपडेट ड्राइवर सॉफ़्टवेयर का चयन करें।
यदि आप यह विकल्प नहीं देखते हैं, तो गुण क्लिक करें, ड्राइवर टैब चुनें और फिर ड्राइवर अपडेट करें पर क्लिक करें।
चरण 6. ड्राइवर सॉफ़्टवेयर के लिए मेरा कंप्यूटर ब्राउज़ करें चुनें।
यह आपको Arduino IDE के साथ आए अंतर्निहित ड्राइवरों का चयन करने की अनुमति देगा।
चरण 7. क्लिक करें ब्राउज़ करें, फिर उस फ़ोल्डर को खोलें जिसे आपने पहले निकाला था।
इसमें आपको ड्राइवर्स फोल्डर मिलेगा।
चरण 8. ड्राइवर फ़ोल्डर का चयन करें और ठीक क्लिक करें।
पुष्टि करें कि आप जारी रखना चाहते हैं यदि आपको अज्ञात सॉफ़्टवेयर के बारे में चेतावनी दी जाती है।
5 का भाग 5: प्रोग्रामिंग रोबोट
चरण 1. IDE फ़ोल्डर में arduino.exe फ़ाइल पर डबल-क्लिक करके Arduino IDE खोलें।
आपको एक खाली परियोजना के साथ स्वागत किया जाएगा।
चरण 2. अपने रोबोट को उन्नत बनाने के लिए निम्नलिखित कोड पेस्ट या पेस्ट करें।
नीचे दिया गया कोड आपके Arduino को चालू रखेगा।
#include // यह प्रोग्राम में "सर्वो" लाइब्रेरी जोड़ता है // निम्न कमांड दो सर्वो ऑब्जेक्ट बनाता है सर्वो लेफ्टमोटर; सर्वो राइटमोटर; शून्य सेटअप () {leftMotor.attach(12); // यदि आपने गलती से अपने सर्वो के लिए पिन नंबरों की अदला-बदली कर ली है, तो आप यहां नंबरों को स्वैप कर सकते हैं rightMotor.attach(13); } शून्य लूप () { leftMotor.write(180); // 360 डिग्री रोटेशन (निरंतर रोटेशन) के साथ, 180 नंबर सर्वो को पूरी गति से "आगे" बढ़ने का निर्देश देता है। राइटमोटर.राइट (0); // यदि दोनों मान 180 हैं, तो रोबोट एक सर्कल में घूमेगा क्योंकि सर्वो उलट है। "0" रोबोट को पूरी गति से "पीछे की ओर" जाने के लिए कहता है। }
चरण 3. प्रोग्राम बनाएं और अपलोड करें।
कनेक्टेड Arduino पर प्रोग्राम बनाने और अपलोड करने के लिए ऊपरी बाएँ कोने में दायाँ तीर बटन पर क्लिक करें।
आप रोबोट को सतह से उठाना चाह सकते हैं क्योंकि प्रोग्राम अपलोड होने के बाद भी रोबोट आगे बढ़ना जारी रखेगा।
चरण 4. एक स्टॉप स्विच फ़ंक्शन जोड़ें (स्विच को मारें)।
"लिखें ()" फ़ंक्शन के शीर्ष पर स्टॉप स्विच फ़ंक्शन जोड़ने के लिए अपने कोड के "शून्य लूप ()" अनुभाग में निम्न कोड जोड़ें।
if(digitalRead(2) == HIGH) // यह कमांड तब चलती है जब पिन 2 Arduino पर बटन दबाया जाता है {जबकि (1) { leftMotor.write(90); // "90" सर्वो के लिए तटस्थ स्थिति है, जो सर्वो को दाएं मुड़ने से रोकने के लिए कहती है। राइट (90); } }
चरण 5. अपना कोड अपलोड करें और जांचें।
पहले से जोड़े गए स्टॉप स्विच कोड के साथ, आप कोड अपलोड कर सकते हैं और रोबोट का परीक्षण कर सकते हैं। रोबोट को तब तक आगे बढ़ना चाहिए जब तक आप स्टॉप स्विच बटन नहीं दबाते जिससे रोबोट रुक जाएगा। पूरा कोड इस तरह दिखेगा:
#include // निम्न कमांड दो सर्वो लेफ्टमोटर सर्वो ऑब्जेक्ट बनाता है; सर्वो राइटमोटर; शून्य सेटअप () { leftMotor.attach(12); राइटमोटर.अटैच(13); } शून्य लूप () { अगर (डिजिटल रीड (2) == हाई) {जबकि (1) {बाएंमोटर। राइट (90); राइटमोटर.राइट (90); } } leftMotor.write(180); राइटमोटर.राइट (0); }
उदाहरण
निम्नलिखित कोड रोबोट पर स्थापित सेंसर का उपयोग करेगा ताकि जब भी रोबोट किसी बाधा का सामना करे, तो वह बाईं ओर मुड़ जाए। प्रत्येक भाग का उपयोग कैसे करें, इसके विवरण के लिए कोड में टिप्पणियों को देखें। नीचे दिया गया कोड संपूर्ण कार्यक्रम है।
#include सर्वो लेफ्टमोटर; सर्वो राइटमोटर; const int serialPeriod = २५०; // यह कोड कंसोल आउटपुट टाइम लैग को हर 1/4 सेकंड (250 एमएस) अहस्ताक्षरित लंबे समय के लिए देता है SerialDelay = 0; कॉन्स्ट इंट लूपपीरियड = 20; // यह कोड सेंसर रीडिंग फ़्रीक्वेंसी को 20 एमएस पर सेट करता है, जो कि 50 हर्ट्ज अहस्ताक्षरित लॉन्ग टाइम हैलूपडेल = 0; // यह कोड Arduino पर पिन को TRIG और ECHO फ़ंक्शन असाइन करता है। यहां संख्याओं को समायोजित करें यदि आप उन्हें एक अलग तरीके से जोड़ते हैं const int अल्ट्रासोनिक2TrigPin = 8; कॉन्स्ट इंट अल्ट्रासोनिक२इकोपिन = ९; इंट अल्ट्रासोनिक2डिस्टेंस; इंट अल्ट्रासोनिक 2 अवधि; // यह कोड दो संभावित रोबोट स्थितियों को परिभाषित करता है: आगे बढ़ें या बाएं मुड़ें #define DRIVE_FORWARD 0 #define TURN_LEFT 1 int State = DRIVE_FORWARD; // 0 = आगे बढ़ें (डिफ़ॉल्ट), 1 = बाएं मुड़ें शून्य सेटअप () {Serial.begin (९६००); // यह सेंसर पिन कॉन्फ़िगरेशन पिनमोड (अल्ट्रासोनिक 2 ट्रिगपिन, आउटपुट) निर्धारित करता है; पिनमोड (अल्ट्रासोनिक 2 इकोपिन, इनपुट); // यह मोटर को अरुडिनो पिन को बाएंमोटर.अटैच(12) असाइन करता है; राइटमोटर.अटैच(13); } शून्य लूप () { अगर (डिजिटल रीड (2) == हाई) // यह कोड एक ''स्टॉप'' का पता लगाता है {जबकि (1) { leftMotor.write(90); राइटमोटर.राइट (90); } } डीबगऑउटपुट (); // यह कोड डिबग संदेशों को सीरियल कंसोल पर प्रिंट करता है अगर (मिलिस () - टाइमलूपडेले> = लूपपीरियोड) {readUltrasonicSensors (); // यह कोड सेंसर को मापी गई दूरी के बारे में डेटा को पढ़ने और संग्रहीत करने का निर्देश देता है StateMachine (); टाइमलूपडेले = मिली (); } } void StateMachine() {if(state == DRIVE_FORWARD) // अगर कोई बाधा नहीं पाई जाती है {if(ultrasonic2Distance> 6 || अल्ट्रासोनिक2Distance < 0) // अगर रोबोट के सामने कुछ भी नहीं है। यदि कोई बाधा नहीं है तो कुछ अल्ट्रासोनिक्स के लिए अल्ट्रासोनिकडिस्टेंस नकारात्मक होगा {// आगे ड्राइव करें rightMotor.write(180); लेफ्टमोटर.राइट (0); } और // अगर हमारे सामने कोई वस्तु है { State = TURN_LEFT; } } और अगर (राज्य == TURN_LEFT) // यदि कोई बाधा पाई जाती है, तो बाएं मुड़ें { unsigned long timeToTurnLeft = 500; // 90 डिग्री मुड़ने में लगभग 0.5 सेकंड का समय लगता है। यदि आपके पहिये आकार में अहस्ताक्षरित लंबे टर्नस्टार्टटाइम = मिली (); // उस स्थिति को रखें जब रोबोट चालू होना शुरू हो जाए ((मिलिस () - टर्नस्टार्टटाइम) <timeToTurnLeft) // इस चक्र को तब तक रखें जब तक कि ToTurnLeft (500) बीत न जाए {// बाएं मुड़ें, याद रखें कि जब दोनों "180" हों, रोबोट बदल जाएगा। राइटमोटर.राइट (180); लेफ्टमोटर.राइट (180); } राज्य = DRIVE_FORWARD; } } शून्य readUltrasonicSensors() {// यह अल्ट्रासोनिक 2 के लिए है। यदि आप एक अलग सेंसर का उपयोग कर रहे हैं तो आपको इस कमांड को बदलने की आवश्यकता हो सकती है। digitalWrite (अल्ट्रासोनिक 2 ट्रिगपिन, हाई); देरीमाइक्रोसेकंड(10); // कम से कम 10 माइक्रोसेकंड के लिए TRIG पिन को ऊपर खींचें digitalWrite(ultrasonic2TrigPin, LOW); अल्ट्रासोनिक 2 अवधि = पल्सइन (अल्ट्रासोनिक 2 इकोपिन, हाई); अल्ट्रासोनिक2Distance = (अल्ट्रासोनिक2Duration/2)/29; } // निम्नलिखित कंसोल में डिबगिंग त्रुटियों के लिए है। शून्य डिबगऑटपुट () {अगर ((मिली () - टाइमसेरियलडेल)> सीरियलपीरियोड) {सीरियल.प्रिंट ("अल्ट्रासोनिक 2 डिस्टेंस:"); सीरियल.प्रिंट (अल्ट्रासोनिक2डिस्टेंस); सीरियल.प्रिंट ("सेमी"); सीरियल.प्रिंट्लन (); टाइमसेरियलडेल = मिली (); } }