विषयसूची:

केला/रास्पबेरी पाई + वेबकैम के साथ अरुडिनो रोवर: 9 कदम
केला/रास्पबेरी पाई + वेबकैम के साथ अरुडिनो रोवर: 9 कदम

वीडियो: केला/रास्पबेरी पाई + वेबकैम के साथ अरुडिनो रोवर: 9 कदम

वीडियो: केला/रास्पबेरी पाई + वेबकैम के साथ अरुडिनो रोवर: 9 कदम
वीडियो: When to Use Arduino vs Raspberry Pi 2024, जुलाई
Anonim
केला/रास्पबेरी पाई + वेबकैम के साथ Arduino Rover
केला/रास्पबेरी पाई + वेबकैम के साथ Arduino Rover

एक प्रोजेक्ट जो मैंने अपने खाली समय में किया है। यह एक पूर्ण ड्राइव वाला 4 पहिया रोबोट है जिसे वेब इंटरफेस के माध्यम से नियंत्रित किया जाता है। यदि आपके पास कोई टिप्पणी या प्रश्न हैं तो कृपया मुझसे बेझिझक संपर्क करें। यह प्रोजेक्ट स्वयं 3D मुद्रित भागों और अन्य लोगों द्वारा बनाए गए कोड के कुछ टुकड़ों का उपयोग करता है। आप क्रेडिट पा सकते हैं और इंस्ट्रक्शनल के अंत में मूल टुकड़ों पर एक नज़र डाल सकते हैं।

हम शुरू करेंगे क्या?

चरण 1: आपके लिए आवश्यक घटक

आपके लिए आवश्यक घटक
आपके लिए आवश्यक घटक
आपके लिए आवश्यक घटक
आपके लिए आवश्यक घटक
आपके लिए आवश्यक घटक
आपके लिए आवश्यक घटक

यहां उन घटकों की सूची दी गई है जिनका मैंने लिंक और विकल्पों के साथ उपयोग किया है। मैं शेन्ज़ेन, चीन में रहता हूं और मैंने सीधे Taobao पर पुर्जे खरीदे।

4-मोटर रोबोट चेसिस वैकल्पिक: कोई भी पर्याप्त रूप से बड़ा चेसिस करेगा। इसमें कुछ अतिरिक्त टॉर्क के लिए 4 मोटर्स हैं। मोटर्स नियमित रूप से सस्ते पीले मोटर्स हैं, के लिए रेटर

L293D Arduino Motor Shield Rev.1 क्लोन वैकल्पिक: अधिक करंट के लिए बेहतर मोटर शील्ड रेटेड

Arduino Uno क्लोन वैकल्पिक: आप कोड में महत्वपूर्ण परिवर्तन किए बिना किसी अन्य Arduino बोर्ड का उपयोग कर सकते हैं।

6V 4.5Ah Pb बैटरी वैकल्पिक: यदि आप हल्का रोबोट चाहते हैं/केवल दो मोटरों का उपयोग करें तो छोटी LiPo बैटरी के साथ प्रयोग करना संभव है।

बनाना पाई वैकल्पिक: रास्पबेरी पाई 1/2/3 या ऑरेंज पाई के लिए महत्वपूर्ण कोड परिवर्तन के बिना स्वैप कर सकते हैं। मैंने बनाना पाई का उपयोग केवल इसलिए किया क्योंकि मेरे पास एक पड़ा हुआ था।

वेब कैमरा वैकल्पिक: रास्पबेरी पाई/केला पाई/ऑरेंज पाई के लिए सीएसआई कैमरे का उपयोग करें

sg60 सर्वो के साथ कैमरा पैन/टिल्ट माउंट वैकल्पिक: 3D प्रिंट टिल्ट/पैन माउंट उदाहरण के लिए इसका उपयोग कर सकते हैं।

3डी प्रिंटेड पार्ट वैकल्पिक: अपनी कल्पना और 3डी डिजाइन की प्रतिभाओं को आपका मार्गदर्शन करने दें! इसके अलावा थिंगवर्स:)

चरण 2: मोटर्स को L293D मोटर शील्ड से कनेक्ट करें

मोटर्स को L293D मोटर शील्ड से कनेक्ट करें
मोटर्स को L293D मोटर शील्ड से कनेक्ट करें
मोटर्स को L293D मोटर शील्ड से कनेक्ट करें
मोटर्स को L293D मोटर शील्ड से कनेक्ट करें

प्रत्येक मोटर को मोटर शील्ड स्क्रू टर्मिनलों से कनेक्ट करें। यहाँ वायरिंग आरेख है। यदि आपके पास केवल दो मोटर हैं और कोड को बदलना नहीं चाहते हैं तो उन्हें मोटर 1 और मोटर 3 से संलग्न करें।

नोट: उच्च वर्तमान रेटिंग वाले विभिन्न मोटरों का उपयोग करने वालों के लिए, आपको दूसरे मोटर चालक की आवश्यकता हो सकती है। वैकल्पिक रूप से, मैंने हाल ही में सीखा एक अच्छा सा हैक यह है कि आप मौजूदा एक के ऊपर दो और L293D ड्राइवरों को पिगबैक कर सकते हैं (यह बोर्ड पर मध्य चिप है)!

चरण 3: Arduino Uno, मोटर शील्ड असेंबली

Arduino Uno, मोटर शील्ड असेंबली
Arduino Uno, मोटर शील्ड असेंबली

Arduino Uno को केस में रखें और उसके ऊपर Motor Shield स्थापित करें। ऐसा करने का केवल एक ही तरीका है, अगर यह फिट नहीं होता है, तो आप कुछ-न-कुछ वोंग कर रहे हैं!

Arduino Uno Snug Case

यहाँ वह मामला है जिसका मैंने उपयोग किया, एस्क्विलो द्वारा बनाया गया मॉडल।

चरण 4: पावर को बनाना पाई और अरुडिनो से कनेक्ट करें

पावर को बनाना पाई और अरुडिनो से कनेक्ट करें
पावर को बनाना पाई और अरुडिनो से कनेक्ट करें

केले पाई (6v) को शक्ति प्रदान करने के लिए मैंने SATA इंटरफ़ेस का उपयोग किया। यदि आपके पास एक ही बोर्ड है तो आप वह भी कर सकते हैं, बस सुनिश्चित करें कि वोल्टेज 5v-6v है। यह अनियमित बिजली की आपूर्ति है, इसलिए मैं मान रहा हूं कि बनाना पीआई एम 1 पर सैटा पावर के लिए एक सुरक्षा सर्किट है।

ध्यान दें: रास्पबेरी पाई के लिए आपके पास कुछ विकल्प हैं: एक सुरक्षित (5v प्रदान करने के लिए USB कनेक्टर का उपयोग करके) और सुरक्षित नहीं (GPIO पिन का उपयोग करके)। रास्पबेरी पाई जीपीआईओ पिन से बिजली जोड़ने के बारे में पढ़ने के लिए यहां लिंक दिया गया है। सुनिश्चित करें कि आप

1) विनियमित बिजली आपूर्ति का प्रयोग करें

2) वोल्टेज को 5v. पर सेट करें

GPIO पिन के लिए कोई सुरक्षा सर्किट नहीं है! यदि आप कुछ गलत करते हैं, तो बोर्ड पर लगे इलेक्ट्रॉनिक्स को नुकसान पहुंचने की गंभीर संभावना है।

Arduino के लिए बस मोटर शील्ड पर इनपुट स्क्रू टर्मिनलों को पावर वायर करें। इसमें 12 वी तक का समय लग सकता है।

चरण 5: केले के पाई को 3 डी प्रिंटेड केस में रखें, बाकी रोवर को इकट्ठा करें

केले पाई को 3डी प्रिंटेड केस में रखें, बाकी रोवर को असेंबल करें
केले पाई को 3डी प्रिंटेड केस में रखें, बाकी रोवर को असेंबल करें
केले पाई को 3डी प्रिंटेड केस में रखें, बाकी रोवर को असेंबल करें
केले पाई को 3डी प्रिंटेड केस में रखें, बाकी रोवर को असेंबल करें

मैंने जर्मनरोबोटिक्स द्वारा बनाई गई चीज़ों से बनाना पाई के लिए इस मामले का इस्तेमाल किया। इसके लिए जो कवर मैंने खुद बनाया था।

केले के पाई को मामले में रखें, इसे ढक्कन के साथ कवर करें, केले पाई मामले के ऊपर Arduino Uno को संलग्न करने के लिए गोंद बंदूक का उपयोग करें।

इस कवर से बैटरी को कवर करें और वेब कैम पैन/टिल्ट माउंट को शीर्ष पर संलग्न करें।

यदि आप बनाना पाई का उपयोग कर रहे हैं तो आपको एक यूएसबी हब की आवश्यकता होगी, क्योंकि इसमें केवल दो यूएसबी स्लॉट हैं (रास्पबेरी 2, 3 में चार हैं)। विशुद्ध रूप से सौंदर्य संबंधी चिंताओं से बाहर मैंने OTG 1-2 USB हब का उपयोग करने और बनाना पाई केस के अंदर तारों को छिपाने का निर्णय लिया।

चरण 6: हार्डवेयर असेंबली हो गई

हार्डवेयर असेंबली हो गई!
हार्डवेयर असेंबली हो गई!

आइए संक्षेप में संक्षेप में बताएं कि हमने अब तक क्या किया है।

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

चरण 7: सिस्टम कॉन्फ़िगरेशन

प्रणाली विन्यास
प्रणाली विन्यास

मैंने अपने पीआई पर सिस्टम के लिए रास्पियन लाइट इमेज का इस्तेमाल किया। लाइट संस्करण में कोई GUI नहीं है, और केवल मूल पैकेज प्रति-स्थापित के साथ आता है। लेकिन यह बहुत कम जगह लेता है, जिसका अर्थ है कि हम छोटे एसडी कार्ड का उपयोग कर सकते हैं। यदि आप GUI के बिना सहज नहीं हैं तो आप पूर्ण छवि भी स्थापित कर सकते हैं।

ईथरनेट केबल के साथ अपने पीआई को इंटरनेट से कनेक्ट करें। इसके बूट होने के बाद पहला कदम इसे वाई-फाई से जोड़ना होगा।

टर्मिनल में निम्न कमांड चलाएँ

सुडो नैनो /etc/wpa_supplicant/wpa_supplicant.conf

अपने वाईफाई क्रेडेंशियल के साथ कॉन्फिग फाइल को एडिट करें

नेटवर्क = { ssid = "परीक्षण" psk = "परीक्षण पासवर्ड" }

पाई को रिबूट करें। वोइला! अब आप वाई-फ़ाई से कनेक्ट हैं.

आगे हमें पाइप स्थापित करना होगा (पायथन पैकेज मैनेजर)

sudo apt-पायथन-सेटअपटूल स्थापित करें

sudo easy_install pip

अब हम वेबसर्वर चलाने के लिए फ्लास्क स्थापित करने के लिए पाइप का उपयोग करते हैं और सीरियल कनेक्शन पर Arduino के साथ संचार करने के लिए pi के लिए pyserial का उपयोग करते हैं।

सुडो पाइप स्थापित फ्लास्क

sudo pip pyserial स्थापित करें

अंतिम बात गति पैकेज को स्थापित और कॉन्फ़िगर करना होगा, जिसका उपयोग हम अपने वेबकैम से वीडियो स्ट्रीमिंग के लिए करते हैं।

ऐसा करने के लिए इस महान निर्देश का पालन करें।

अब हम गड़गड़ाहट के लिए तैयार हैं!

चरण 8: सॉफ्टवेयर शुरू करना

सॉफ्टवेयर शुरू करना
सॉफ्टवेयर शुरू करना
सॉफ्टवेयर शुरू करना
सॉफ्टवेयर शुरू करना

याद है मैंने कैसे कहा था कि हम गड़गड़ाहट के लिए तैयार हैं?

ठीक है, थोड़ा और पीसना और फिर हम गड़गड़ाहट शुरू कर सकते हैं:)

आइए मेरे जीथब रिपॉजिटरी से सभी आवश्यक फाइलें डाउनलोड करें।

गिट क्लोन

rover.ino को Arduino Uno पर अपलोड करें। यदि आपने हार्डवेयर परिवर्तन किए हैं (उदाहरण के लिए, विभिन्न मोटर शील्ड का उपयोग करके) तो आपको स्केच बदलने की आवश्यकता है।

यदि आप एक वेब कैम का उपयोग कर रहे हैं, तो टेम्प्लेट फ़ोल्डर में index.html फ़ाइल के निचले भाग के पास की रेखा को संशोधित करें। अपने वीडियो स्ट्रीम के src URL से मिलान करने के लिए IFRAME लाइन में URL बदलें।

अब आप वेबसर्वर शुरू कर सकते हैं। निम्न आदेश चलाएँ

सूडो अजगर pi_rover.py

यदि आपने मेरे निर्माण का बहुत करीब से अनुसरण किया है और आपके पास Arduino जुड़ा हुआ है, तो आपको टर्मिनल में निम्नलिखित (पहली तस्वीर) दिखाई देगी।

वेब ब्राउज़र में अपने रोबोट का आईपी पता टाइप करें (उदाहरण के लिए मेरे मामले में यह 192.168.1.104 था), आप लिनक्स पर $ifconfig कमांड के साथ आईपी एड्रेस की जांच कर सकते हैं।

/यहाँ उत्सव नृत्य करो!/

अगर आपका कोई सवाल है तो बेझिझक मुझसे कमेंट में पूछ सकते हैं। यह ट्यूटोरियल शुरुआती स्तर के लिए है, लेकिन शून्य-शुरुआत के लिए नहीं, इसलिए मैं उन चीजों पर काफी संक्षिप्त था, जिनके लिए आप सिर्फ Google कर सकते हैं (उदाहरण के लिए एसडी कार्ड में सिस्टम इमेज को बर्न करें, Arduino स्केच आदि अपलोड करें)।

चरण 9: क्रेडिट

विचार और वेब सर्वर कोड jscottb द्वारा इस महान निर्देश से आता है। मैंने इसे Arduino Uno जैसे अधिक सामान्य हार्डवेयर का उपयोग करने के लिए संशोधित किया।

थिंगवर्स से 3डी प्रिंटेड पार्ट्स।

www.thingiverse.com/thing:994827

www.thingiverse.com/thing:2816536/files

www.thingiverse.com/thing:661220

सिफारिश की: