विषयसूची:
- चरण 1: रास्पियन स्थापित करें और एक स्थिर आईपी पता सेटअप करें
- चरण 2: मोशन को स्थापित और कॉन्फ़िगर करें
- चरण 3: अपाचे और सेटअप वेब नियंत्रण पृष्ठ स्थापित करें
- चरण 4: कोड को सेटअप और परीक्षण करें
- चरण 5: विधानसभा
- चरण 6: बूट / फिनिशिंग अप पर पायथन कोड शुरू करना
वीडियो: रास्पबेरी पाई मॉडल 3 ए+ के साथ ब्राउज़र नियंत्रित रूमबा रोबोट: 6 कदम (चित्रों के साथ)
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:21
अवलोकन
यह निर्देशयोग्य इस बात पर ध्यान केंद्रित करेगा कि कैसे एक मृत रूंबा को एक नया मस्तिष्क (रास्पबेरी पाई), आंखें (वेबकैम), और एक वेब ब्राउज़र से सब कुछ नियंत्रित करने का एक तरीका दिया जाए।
बहुत सारे Roomba हैक्स हैं जो सीरियल इंटरफ़ेस के माध्यम से नियंत्रण की अनुमति देते हैं। मैं इतना भाग्यशाली नहीं रहा कि मुझे एक रूमबा मिला जिसमें वर्तमान फर्मवेयर या काम करने वाला मदरबोर्ड है। या तो Roomba बहुत पुराना है या Roomba मर चुका है। मुझे इस परियोजना के लिए इस्तेमाल किया गया रूमबा मिला, जो स्थानीय थ्रिफ्ट स्टोर बार्गेन बिन में $ 5 के लिए था। इसमें अभी भी एक अच्छी बैटरी थी, लेकिन एक मृत मदरबोर्ड। (मुझे उसी थ्रिफ्ट स्टोर पर लगभग $5 में वेबकैम भी मिला)। मैं मूल रूमबा से केवल मोटर, चेसिस और बैटरी का उपयोग कर रहा हूं। इस परियोजना के लिए आपको रूमबा का उपयोग करने की आवश्यकता नहीं है। आप चाहें तो विभिन्न मोटरों, पहियों और चेसिस का उपयोग कर सकते हैं। मैं सिर्फ कबाड़ के एक टुकड़े को प्रयोग करने योग्य चीज में बदलना चाहता हूं।
इस निर्माण के लिए मैंने रास्पबेरी पाई मॉडल 3 ए + और एक रिओरैंड मोटर नियंत्रक का उपयोग किया। मैं डेक्सटर इंडस्ट्रीज ब्राउज़र नियंत्रित रोबोट से कोड का उपयोग कर रहा हूं जिसे मैंने संशोधित किया है। डेक्सटर इंडस्ट्रीज संस्करण पीआई को एक वेबसोकेट सर्वर के रूप में स्थापित करता है जो आपको किसी अन्य कंप्यूटर को चलाने वाले क्लाइंट एचटीएमएल फाइल से उनके रोबोट (ईंट पीआई प्लेटफॉर्म) को नियंत्रित करने की अनुमति देता है।
मैंने जीपीआईओ पिन का उपयोग कोड बदल दिया है और जब बटन क्लिक किया जाता है/ब्राउज़र में एस्केप कुंजी दबाई जाती है तो पीआई को बंद करने का एक तरीका जोड़ा जाता है। मैंने एक ही पृष्ठ के भीतर रोबोट को नियंत्रित करते हुए, एक आईफ्रेम के माध्यम से एक गति स्ट्रीम देखने की अनुमति देने के लिए नियंत्रण वेब पेज में कुछ बदलाव किए हैं। मैंने क्लाइंट फ़ाइल को होस्ट करने के लिए पीआई को एक स्थिर आईपी के साथ सेट किया है ताकि मैं अपने नेटवर्क पर किसी भी कंप्यूटर या डिवाइस का उपयोग करके कनेक्ट कर सकूं।
मैं एक सरल, सस्ता बेस रोबोट बनाने का तरीका दिखाने की उम्मीद में यहां प्रक्रिया का दस्तावेजीकरण कर रहा हूं।
प्रयुक्त भाग
रास्पबेरी पाई 3 ए+ (एडफ्रूट लिंक) $30
रिओरैंड डुअल मोटर ड्राइवर कंट्रोलर एच-ब्रिज (अमेज़ॅन लिंक) $22
मोटर्स के लिए 12 वी बैटरी (अमेज़ॅन लिंक) $19
रास्पबेरी पाई के लिए 5V बैटरी (अमेज़ॅन लिंक) $10
8GB माइक्रो एसडी कार्ड (अमेज़ॅन लिंक) $5
जम्पर तार (अमेज़ॅन लिंक) $7
रूंबा 500 सीरीज
.सब एक साथ सिर्फ $100 के तहत।
चरण 1: रास्पियन स्थापित करें और एक स्थिर आईपी पता सेटअप करें
मैंने रास्पियन स्ट्रेच लाइट का इस्तेमाल किया। मुझे डेस्कटॉप की आवश्यकता नहीं दिखाई दी, लेकिन आप चाहें तो डेस्कटॉप संस्करण स्थापित कर सकते हैं।
मैं यह मानने जा रहा हूं कि आप पहले से ही जानते हैं कि रास्पियन कैसे स्थापित करें। यदि आपको सहायता की आवश्यकता है, तो आप यहां रास्पबेरी पाई फाउंडेशन की मार्गदर्शिका पा सकते हैं।
एक बार जब आप रास्पियन ऊपर और चल रहे हों, तो लॉगिन करें और रास्पि-कॉन्फ़िगरेशन प्रोग्राम चलाएं।
pi@raspberrypi:~ $ sudo raspi-config
रास्पि-कॉन्फ़िगरेशन में अपना वाईफाई कनेक्शन सेट करें
चुनते हैं
2 नेटवर्क विकल्प
चुनते हैं
N2 वाई-फाई
एक देश चुनें, अपना एसएसआईडी दर्ज करें, और अपना पासफ़्रेज़ दर्ज करें
रास्पि-कॉन्फ़िगरेशन में एसएसएच सेटअप करें
एक बार जब मैंने प्रारंभिक कॉन्फ़िगरेशन किया, तो मैंने सब कुछ हेडलेस सेट करने के लिए एसएसएच का उपयोग किया। (यदि आप मॉनिटर का उपयोग करते हैं तो आप इसे छोड़ सकते हैं। रोबोट को रोकने और मॉनिटर में प्लग किए बिना कोड में बदलाव करना मेरे लिए आसान था।)
रास्पि-कॉन्फ़िगरेशन मुख्य मेनू पर वापस जाएं
चुनते हैं
5 इंटरफेसिंग विकल्प
चुनते हैं
पी२ एसएसएच
चुनते हैं
हां
रास्पि-कॉन्फ़िगरेशन मुख्य मेनू पर वापस चयन करें
सत्यापित करें कि आप अपने नेटवर्क से जुड़े हैं
पीआई@रास्पबेरीपी:~ $ ifconfig
आपको इसके समान आउटपुट प्राप्त करना चाहिए। (आईपी पते पर ध्यान दें; आपको बाद में इसकी आवश्यकता हो सकती है। उदा.192.168.1.18)
wlan0: झंडे = ४१६३ एमटीयू १५००
inet 192.168.1.18 netmask 255.255.255.0 प्रसारण 192.168.1.255 inet6 fe80::c74f:42ec:8cd3:2fda प्रीफिक्सलेन 64 स्कोपिड 0x20 ईथर b8:27:eb:6a:a4:95 txqueuelen 1000 (ईथरनेट) RX पैकेट 44396 बाइट्स 5847726 (5.5 MiB) RX त्रुटियाँ 0 गिरा 0 ओवररन 0 फ्रेम 0 TX पैकेट 30530 बाइट्स 39740576 (37.8 MiB) TX त्रुटियाँ 0 गिरा 0 ओवररन 0 कैरियर 0 टकराव 0
सत्यापित करें कि आप इंटरनेट तक पहुंच सकते हैं।
pi@raspberrypi:~ $ पिंग google.com
आपको इसके समान आउटपुट प्राप्त करना चाहिए।
पिंग google.com (२१६.५८.१९४.११०) ५६ (८४) डेटा के बाइट्स।
dfw06s48-in-f14.1e100.net (216.58.194.110) से 64 बाइट्स: icmp_seq=1 ttl=54 time=18.2 ms 64 बाइट्स dfw06s48-in-f14.1e100.net (216.58.194.110) से: icmp_seq=2 ttl =54 समय=19.4 एमएस 64 बाइट्स dfw06s48-in-f14.1e100.net (216.58.194.110) से: icmp_seq=3 ttl=54 समय=23.6 एमएस 64 बाइट्स dfw06s48-in-f14.1e100.net से (216.58.194.110)): icmp_seq=4 ttl=54 time=30.2 ms ^C --- google.com पिंग आँकड़े --- 4 पैकेट प्रेषित, 4 प्राप्त, 0% पैकेट हानि, समय 3004ms rtt min/avg/max/mdev = 18.209/ 22.901/30.267/4.715 एमएस
एक स्टेटिक आईपी सेटअप करें
अपने नेटवर्क पर समान पते का उपयोग करके अपने रोबोट से लगातार कनेक्ट होने में सक्षम होने के लिए, आप एक स्थिर आईपी सेट करना चाहेंगे।
अपना वर्तमान नेटवर्क पता प्राप्त करें जैसे 192.168.1.18
मैं उस पते का उपयोग कर रहा हूं जो डीएचसीपी द्वारा स्वचालित रूप से असाइन किया गया था जब पीआई मेरे नेटवर्क से जुड़ा था। जब तक यह आपके नेटवर्क से मेल खाता है और किसी अन्य निर्दिष्ट पते के साथ विरोध नहीं करता है, तब तक आप इसे अपनी पसंद के अनुसार बदल सकते हैं।
टेक्स्ट एडिटर में dhcp.conf खोलें। (मैं नैनो का उपयोग करता हूं)
pi@raspberrypi:~ $ sudo nano /etc/dhcpcd.conf
#Example स्थिर IP कॉन्फ़िगरेशन तक स्क्रॉल करें और निम्न पंक्तियों को बदलें।
#इंटरफ़ेस eth0
#स्थिर ip_address=192.168.11.13 #स्थिर राउटर=192.168.11.1 #स्थिर डोमेन_नाम_सर्वर=192.168.11.1 8.8.8.8
अपने नेटवर्क से मेल खाने के लिए बदलें और प्रत्येक पंक्ति की शुरुआत में # हटा दें।
उदाहरण:
इंटरफ़ेस wlan0
स्थिर ip_address=192.168.1.18 स्थिर राउटर=192.168.1.1 स्थिर डोमेन_नाम_सर्वर=192.168.1.1 8.8.8.8
सुरषित और बहार।
रीबूट करें और SSH. के माध्यम से पाई से कनेक्ट करें
पीआई@रास्पबेरीपी:~ $ सूडो रिबूट
SSH का उपयोग करके दूसरे कंप्यूटर से कनेक्ट करें। विंडोज उपयोगकर्ता लिनक्स (विंडोज 10) के लिए पुटी या विंडोज सबसिस्टम का उपयोग कर सकते हैं।
इयान@कंप्यूटर:~$ एसएसएच पीआई@192.168.1.18
अपना पासवर्ड दर्ज करें (डिफ़ॉल्ट रास्पबेरी है)।
[email protected] का पासवर्ड:
अब आपको अपने Pi के कमांड प्रॉम्प्ट पर होना चाहिए।
पाई@रास्पबेरीपी:~$
चरण 2: मोशन को स्थापित और कॉन्फ़िगर करें
मोशन एक प्रोग्राम है जिसका उपयोग बहुत सारे सुरक्षा कैमरा / वेब कैमरा परियोजनाओं में किया जाता है। मोशन में बहुत सारी विशेषताएं हैं। हालांकि, हम इसे वेबकैम से पोर्ट 8081 पर वीडियो स्ट्रीम करने के लिए सेट अप कर रहे हैं।
अपने वेबकैम का परीक्षण करें
अपने वेबकैम में प्लग इन करें और कनेक्टेड यूएसबी डिवाइस सूचीबद्ध करें (कनेक्ट करने के बाद आपको रीबूट करने की आवश्यकता हो सकती है)।
पाई@रास्पबेरीपी:~ $ lsusb
आपको इसके समान आउटपुट मिलना चाहिए। लॉजिटेक C210 पर ध्यान दें।
बस 001 डिवाइस 002: आईडी 046d:0819 लॉजिटेक, इंक। वेब कैमरा C210
बस 001 डिवाइस 001: आईडी 1d6b: 0002 लिनक्स फाउंडेशन 2.0 रूट हब
यदि आपका कैमरा दिखाई नहीं देता है, तो यह संगत नहीं हो सकता है या आपको अतिरिक्त ड्राइवर स्थापित करने की आवश्यकता हो सकती है।
मोशन स्थापित करें
पैकेज अपडेट करें।
pi@raspberrypi:~ $ sudo apt-get update
मोशन स्थापित करें।
pi@raspberrypi:~ $ sudo apt-get install speed -y
एक बार मोशन इंस्टॉल हो जाने के बाद कॉन्फिग फाइल को एडिट करें।
pi@raspberrypi:~ $ sudo nano /etc/motion/motion.conf
नीचे दी गई पंक्तियों को मिलान करने के लिए बदलें।
डेमॉन ऑन
चौड़ाई 640 ऊंचाई 480 फ्रैमरेट 100 आउटपुट_चित्र बंद ffmpeg_output_movies टेक्स्ट_राइट स्ट्रीम_पोर्ट 8081 स्ट्रीम_क्वालिटी 100 स्ट्रीम_लोकलहोस्ट ऑफ वेबकंट्रोल_लोकलहोस्ट बंद
बूट पर मोशन डेमॉन शुरू करें
/etc/default/motion फ़ाइल खोलें।
pi@raspberrypi:~ $ sudo nano /etc/default/motion
में बदलो
start_motion_daemon=हाँ
फ़ाइल सहेजें और बाहर निकलें
रीबूट
पीआई@रास्पबेरीपी:~ $ सूडो रिबूट
पाई के रिबूट होने के बाद ब्राउज़र खोलें और सत्यापित करें कि आपके पास पोर्ट 8081. पर ब्राउज़र में वीडियो स्ट्रीमिंग है
उदाहरण:
192.168.1.18:8081
मोशन डेमॉन का समस्या निवारण
जब मैं Motion.conf फ़ाइल में विभिन्न विकल्पों को आज़मा रहा था, तब मुझे गति डेमॉन को बूट पर शुरू करने में समस्या हो रही थी।
यदि आप रास्पियन स्ट्रेच में गति डेमॉन से पहले गति शुरू करते हैं, तो संभवतः आप इसे बाद में बूट पर शुरू करने के मुद्दों में भाग लेंगे। डिमन को कॉन्फ़िगर किए बिना "सुडो मोशन" चलाना पहले उपयोगकर्ता को लिखित अनुमति दिए बिना निर्देशिका /var/log/motion बनाता है।
चरण 3: अपाचे और सेटअप वेब नियंत्रण पृष्ठ स्थापित करें
अपाचे रोबोट के नियंत्रण वेब पेज के लिए वेब सर्वर है। हम डिफ़ॉल्ट Apache index.html फ़ाइल को github से डाउनलोड की गई फ़ाइल से बदलने जा रहे हैं। आप मोशन वीडियो स्ट्रीम को प्रदर्शित करने के लिए कोड की कुछ पंक्तियों को भी बदलेंगे और रोबोट को नियंत्रित करने के लिए कमांड भेजने के लिए असाइन करेंगे।
अपाचे और गिट स्थापित करें
pi@raspberrypi:~ $ sudo apt-get install apache2 git -y
एक बार apache और git इंस्टॉल हो जाने के बाद फाइलें डाउनलोड करें।
pi@raspberrypi:~ $ git क्लोन
रूमबारोबोट निर्देशिका खोलें।
pi@raspberrypi:~ $ cd roombarobot
/var/www/html फ़ोल्डर में index.html फ़ाइल को /home/pi/roombarobot में index.html फ़ाइल से बदलें
pi@raspberrypi:~/roombarobot $ sudo cp index.html /var/www/html
index.html फ़ाइल संपादित करें
टेक्स्ट संपादक के साथ index.html फ़ाइल खोलें।
pi@raspberrypi:~/roombarobot $ sudo nano /var/www/html/index.html
इन दो पंक्तियों का पता लगाएँ
वर होस्ट = "डब्ल्यूएस://YourIPADDRESS:9093/ws";
"YourIPADDRESS" को चरण 1 में आपके द्वारा सेट किए गए स्थिर IP पते में बदलें और फ़ाइल को सहेजें।
उदाहरण:
वर होस्ट = "ws://192.168.1.18:9093/ws";
दूसरे कंप्यूटर पर, एक ब्राउज़र खोलें और अपने पाई का आईपी पता दर्ज करें। आपको नियंत्रण वेब पेज को बाईं ओर एक बॉक्स के साथ देखना चाहिए, अपने वेबकैम से वीडियो स्ट्रीमिंग और दाईं ओर वेब नियंत्रण बटन देखना चाहिए।
चरण 4: कोड को सेटअप और परीक्षण करें
यह कोड अजगर में लिखा गया है और इसके लिए बवंडर पुस्तकालय की आवश्यकता है। कोड 9093 पोर्ट पर वेबसोकेट के माध्यम से नियंत्रण वेब पेज से कमांड सुनने के लिए सर्वर सेट करने के लिए लाइब्रेरी का उपयोग करता है।
पीआईपी और टॉरनेडो लाइब्रेरी स्थापित करें
पाइप स्थापित करें
pi@raspberrypi:~ $ sudo apt-get install python-pip
बवंडर पुस्तकालय स्थापित करें
pi@raspberrypi:~ $ sudo pip install tornado
रूमबाबोट प्रोग्राम शुरू करें और कनेक्शन का परीक्षण करें
Roombabot.py प्रोग्राम शुरू करें
pi@raspberrypi:~$ sudo python /home/pi/roombarobot/roombabot.py
एक बार चलने के बाद, आपको टर्मिनल में "रेडी" देखना चाहिए। ब्राउज़र में कंट्रोल वेब पेज खोलें और कनेक्ट पर क्लिक करें। फिर पृष्ठ पर किसी भी दिशात्मक बटन पर क्लिक करें। आप अपने कीबोर्ड पर भी तीर कुंजियों का उपयोग कर सकते हैं।
आपको टर्मिनल में इसी तरह का आउटपुट देखना चाहिए।
तैयार
कनेक्शन खोला गया… कनेक्शन खोला गया… प्राप्त किया गया: यू 8 रनिंग फॉरवर्ड कनेक्शन खोला गया … प्राप्त किया गया: एल 6 बाएं मुड़ना कनेक्शन खोला गया … प्राप्त किया गया: डी 2 रिवर्स कनेक्शन खोला गया … प्राप्त किया गया: आर 4 दाएं मुड़ना
प्रोग्राम को रोकने के लिए ctrl+c दबाएं।
एक बार जब आप पाई से बिजली का परीक्षण कर लेते हैं।
pi@raspberrypi:~$ sudo poweroff
कीड़े
मैंने नियंत्रण वेब पेज पर शटडाउन बटन के साथ एक समस्या देखी है। कभी-कभी शटडाउन बटन क्लिक या टैप करने पर कुछ नहीं करता है। मैं यह पता लगाने में सक्षम नहीं हूं कि इसका क्या कारण है, लेकिन एक समाधान है। यदि आप रोबोट को बंद करना चाहते हैं और शटडाउन बटन काम नहीं करता है, तो पृष्ठ को पुनः लोड करें, कनेक्ट बटन पर क्लिक करें / टैप करें और फिर शटडाउन बटन पर क्लिक / टैप करें। इसे बिजली बंद कर देनी चाहिए।
चरण 5: विधानसभा
जैसा कि पहले उल्लेख किया गया है, आपको इस परियोजना के लिए रूमबा का उपयोग करने की आवश्यकता नहीं है। दो मोटर, दो पहियों और एक फ्रेम वाली कोई भी चीज काम करेगी। मैंने रूमबा को अलग कर लिया और व्हील मॉड्यूल और बैटरी को छोड़कर सब कुछ हटा दिया।
व्हील मॉड्यूल
Roomba के पहिये और मोटर एक साथ हटाने योग्य मॉड्यूल में रखे गए हैं। प्रत्येक मॉड्यूल में एक नीला बाहरी आवास होता है जिसमें मोटर, गियरबॉक्स, पहिया, निलंबन वसंत और इंटरफ़ेस बोर्ड होता है।
इंटरफ़ेस बोर्ड
प्रत्येक इंटरफ़ेस बोर्ड में छह तार चल रहे हैं। दो तार (लाल [+], काला [-]) हैं जो मोटर को घुमाते हैं, एक हॉल इफेक्ट सेंसर के लिए एक डेटा तार, व्हील ड्रॉप स्विच के लिए एक तार, एक 5 वी तार, और सेंसर को बिजली देने के लिए एक जीएनडी तार। इंटरफ़ेस बोर्ड तक पहुँचने के लिए आपको मॉड्यूल को अलग रखना होगा। मैंने सब कुछ वापस मोटर में हटा दिया और मोटर में नए [+] और [-] तारों को मिलाया (फोटो देखें)। यह आप पर निर्भर करता है कि आप सेंसर को सुरक्षित रखना चाहते हैं या नहीं।
सस्पेंशन स्प्रिंग्स
एक बार जब आप वैक्यूम वाले हिस्से को हटा देते हैं, तो Roomba का वज़न कम हो जाता है। यदि आप स्प्रिंग्स को नहीं हटाते हैं तो Roomba एक कोण पर बैठेगा। मैंने मूल रूप से इन्हें हटा दिया था, लेकिन फिर उन्हें वापस जोड़ दिया जब मैंने पाया कि यह कालीन पर लुढ़कने के लिए संघर्ष कर रहा था। वसंत को वापस लाने से समस्या ठीक हो गई।
मोटर नियंत्रक को मोटरों को तार देना
मोटर्स एक दूसरे से दूर का सामना कर रहे हैं। इसका मतलब है कि रूंबा को आगे की दिशा में चलाने के लिए, एक मोटर को आगे की ओर घूमना होगा जबकि दूसरे को पीछे की ओर घूमना होगा। जब तक मैंने सब कुछ तार-तार कर दिया, तब तक मैंने इस बारे में ज्यादा नहीं सोचा। मैंने शुरू में मोटरों को कैसे तार-तार किया था, इसके बारे में कोड लिखना समाप्त कर दिया। यह एक सुखद दुर्घटना थी क्योंकि जब भी रास्पबेरी पाई चालू/बंद होती है, तो जीपीआईओ पिन में वोल्टेज आउटपुट होता है। जिस तरह से मेरे पास चीजें हैं, रूमबा तब तक घूमती है जब तक रास्पबेरी पाई बूट नहीं हो जाती (लगभग तीस सेकंड) और जब तक बिजली हटा दी जाती है तब तक बंद हो जाती है। यदि अलग तरीके से तार दिया जाता है, तो यह संभावित रूप से आगे/पीछे लुढ़क जाएगा जो परेशान करने वाला होगा। मैं अंततः मोटर नियंत्रक के लिए एक साधारण स्विच के साथ इसे ठीक करने की योजना बना रहा हूं।
मोटर नियंत्रक को मोटर्स और बैटरी को तार देना
पावर- - - - - - - - - - - - - - - - 12 वी [+]- - - - - - - - - - - - - - रूमबा बैटरी [+]
मोटर 2- - - - - - - - - - - - - - - काला- - - - - - - - - - - - - - - बाएं मोटर [-] मोटर 2- - - - - - - - - - - - - - - लाल - - - - - - - - - - - - - - - - बाएं मोटर [+] मोटर 1- - - - - - - - - - - - - - - काला- - - - - - - - - - - - - - राइट मोटर[-] मोटर 1- - - - - - - - - - - - - - - - लाल- - - - - - - - - - - - - - - - राइट मोटर[+] जीएनडी- - - - - - - - - - - - - - - - - 12 वी [-]- - - - - - - - - - - - - रूमबा बैटरी [-]
रास्पबेरी पाई के लिए मोटर नियंत्रक को तार करना
मोटर नियंत्रक पिन तार का रंग (तस्वीरें देखें) रास्पबेरी पाई पिन
जीएनडी- - - - - - - - - - - - - - - - ब्लैक- - - - - - - - - - - - - - -जीएनडी पीडब्लूएम 2- - - - - - - - - - - - - - - - - नीला - - - - - - - - - - - - - जीपीआईओ 18 डीआईआर 2- - - - - - - - - - - - - - - - हरा - - - - - - - - - - - - - -जीपीआईओ 23 पीडब्लूएम 1- - - - - - - - - - - - - - - - पीला - - - - - - - - - - - - जीपीआईओ 24 डीआईआर 1- - - - - - - - - - - - - - - - नारंगी - - - - - - - - - - - - - जीपीआईओ 25 5वी - - - - - - - - - - - - - - - - - लाल - - - - - -5 वी
इलेक्ट्रॉनिक्स को माउंट करना
सब कुछ एक साथ रखने में बहुत कुछ नहीं है। मैंने रूमबा को उसकी चेसिस से नीचे उतार दिया। कवर को हटाकर, आप मौजूदा प्लास्टिक स्टैंडऑफ को आसानी से बंद कर सकते हैं और इलेक्ट्रॉनिक्स को माउंट करने के लिए छेद ड्रिल कर सकते हैं। मोटर्स से केबल चलाने के लिए मौजूदा पोर्ट हैं। यदि आप स्टॉक रूमबा बैटरी का उपयोग कर रहे हैं, तो बैटरी टर्मिनलों तक पहुंच के लिए पहले से ही एक कटआउट है।
बैटरियों
मैंने रास्पबेरी पाई और मोटर नियंत्रक के लिए अलग-अलग बैटरी का इस्तेमाल किया। पाई की बैटरी सिर्फ 5V बैटरी पैक है जिसका उपयोग सेलफोन को बढ़ावा देने के लिए किया जाता है। मोटर नियंत्रक के लिए मैंने मूल रूमबा बैटरी का उपयोग किया जो इसके साथ आई थी। बैटरी टर्मिनलों को लेबल नहीं किया गया है, इसलिए इससे पहले कि आप इसे मोटर नियंत्रक तक तार दें, वोल्टमीटर के साथ वोल्टेज की जांच करना सबसे अच्छा है। रूंबा बैटरी से तारों को जोड़ने के लिए, मैंने चार नियोडिमियम मैग्नेट (फोटो देखें) का उपयोग किया। मैंने दो चुम्बकों को तारों में मिलाया और अन्य दो को मैं बैटरी टर्मिनलों से चिपका दिया। सोल्डरिंग मैग्नेट को डीमैग्नेटाइज करता है। हालांकि, बाहर की कोटिंग अभी भी टर्मिनलों पर चुंबक से जुड़ी हो सकती है और बिजली का संचालन कर सकती है। यह बैटरी को केक का एक टुकड़ा जोड़ने और डिस्कनेक्ट करने का काम करता है।
परिक्षण
एक बार जब आपके पास सब कुछ एक साथ हो जाए, तो सत्यापित करें कि आपने सब कुछ सही ढंग से तार-तार कर दिया है, अपने रोबोट को किसी चीज़ पर आगे बढ़ाएँ (ताकि यह लुढ़क न जाए), और इसे चालू करें।
लॉग इन करें और Roombabot.py प्रोग्राम शुरू करें
pi@raspberrypi:~$ sudo python /home/pi/roombarobot/roombabot.py
वेब कंट्रोल पेज पर जाएं और इसका परीक्षण करें। यदि सब कुछ सही ढंग से जुड़ा हुआ है, तो पहियों को संबंधित दिशा में घुमाना चाहिए जब बटन क्लिक किए जाते हैं / तीर कुंजी दबाए जाते हैं (कनेक्ट पर क्लिक करना न भूलें)।
चरण 6: बूट / फिनिशिंग अप पर पायथन कोड शुरू करना
आखिरी चीज जो हमें करने की ज़रूरत है वह है रास्पियन को बूट पर पायथन प्रोग्राम शुरू करने के लिए कहें। ऐसा करने के लिए हम स्क्रिप्ट बनाने जा रहे हैं और इसे क्रॉस्टैब का उपयोग करके रिबूट पर चलाने के लिए शेड्यूल करेंगे।
स्क्रिप्ट बनाएं
पीआई उपयोगकर्ता निर्देशिका में startrobot.sh नामक एक नई स्क्रिप्ट फ़ाइल बनाएं
pi@raspberrypi:~ $ sudo nano startrobot.sh
निम्न पंक्तियों को फ़ाइल में कॉपी करें
#!/बिन/श
#startrobot.sh cd / cd /home/pi/roombarobot sudo python roombabot.py cd /
फ़ाइल सहेजें और बाहर निकलें
startrobot.sh फ़ाइल को निष्पादन योग्य बनाएं
pi@raspberrypi:~$ sudo chmod 755 startrobot.sh
इसका परीक्षण करें (रोकने के लिए ctrl + c दबाएं)
pi@raspberrypi:~$ श startrobot.sh
क्रोंटैब फ़ाइल संपादित करें
pi@raspberrypi:~$ sudo crontab -e
फ़ाइल के नीचे निम्न पंक्ति जोड़ें
# एम एच डोम मोन डॉव कमांड
@reboot sh /home/pi/startrobot.sh
सुरषित और बहार
Roombabot.py प्रोग्राम अब तब शुरू होना चाहिए जब पाई रिबूट हो या पावर साइकल हो।
पूरी तरह खत्म करना
इस बिंदु पर आपके पास एक कार्यात्मक रोबोट होना चाहिए जिसे आप अपने नेटवर्क पर किसी भी डिवाइस से ब्राउज़र का उपयोग करके नियंत्रित कर सकते हैं। जब मैं घर से दूर होता हूं तो रोबोट तक पहुंचने में सक्षम होने के लिए मूल निर्माण और वीपीएन सेटअप के बाद से मैंने इसे थोड़ा आगे ले लिया है। मैं भविष्य में कुछ अतिरिक्त बदलाव करने का इरादा रखता हूं। मैं इसे स्वायत्त बनाने की योजना बना रहा हूं और जब भी मैं चाहता हूं तब भी नियंत्रण लेने में सक्षम होने के दौरान आंदोलन का पालन करना संभव है।
सिफारिश की:
Howto: रास्पबेरी पीआई 4 हेडलेस (वीएनसी) आरपीआई-इमेजर और चित्रों के साथ स्थापित करना: 7 चरण (चित्रों के साथ)
कैसे करें: आरपीआई-इमेजर और पिक्चर्स के साथ रास्पबेरी पीआई 4 हेडलेस (वीएनसी) स्थापित करना: मैं अपने ब्लॉग में मजेदार परियोजनाओं के एक समूह में इस रैप्सबेरी पीआई का उपयोग करने की योजना बना रहा हूं। जांचने के लिए स्वतंत्र हैं। मैं अपने रास्पबेरी पीआई का उपयोग करने में वापस आना चाहता था लेकिन मेरे पास मेरे नए स्थान पर कीबोर्ड या माउस नहीं था। जब से मैंने रास्पबेरी की स्थापना की थी, तब तक कुछ समय हो गया था
अलार्म घड़ी के साथ DIY स्मार्ट स्केल (वाई-फाई, ESP8266, Arduino IDE और Adafruit.io के साथ): 10 कदम (चित्रों के साथ)
अलार्म घड़ी के साथ DIY स्मार्ट स्केल (वाई-फाई, ESP8266, Arduino IDE और Adafruit.io के साथ): अपने पिछले प्रोजेक्ट में, मैंने वाई-फाई के साथ एक स्मार्ट बाथरूम स्केल विकसित किया था। यह उपयोगकर्ता के वजन को माप सकता है, इसे स्थानीय रूप से प्रदर्शित कर सकता है और इसे क्लाउड पर भेज सकता है। आप इसके बारे में अधिक जानकारी नीचे दिए गए लिंक पर प्राप्त कर सकते हैं:https://www.instructables.com/id/Wi-Fi-Smart-Scale-wi
आसान चरणों और चित्रों के साथ कंप्यूटर को कैसे अलग करें: 13 चरण (चित्रों के साथ)
आसान चरणों और चित्रों के साथ कंप्यूटर को कैसे अलग करें: यह एक निर्देश है कि कैसे एक पीसी को अलग किया जाए। अधिकांश बुनियादी घटक मॉड्यूलर हैं और आसानी से हटा दिए जाते हैं। हालाँकि यह महत्वपूर्ण है कि आप इसके बारे में संगठित रहें। यह आपको भागों को खोने से बचाने में मदद करेगा, और पुन: संयोजन को आसान बनाने में भी
टाइमर फंक्शन के साथ टीवी रिमोट के साथ घरेलू उपकरणों को कैसे नियंत्रित करें: 7 कदम (चित्रों के साथ)
टाइमर फंक्शन के साथ टीवी रिमोट के साथ घरेलू उपकरणों को कैसे नियंत्रित करें: उपभोक्ता बाजार में अपने परिचय के 25 वर्षों के बाद भी, हाल के दिनों में अवरक्त संचार अभी भी बहुत प्रासंगिक है। चाहे वह आपका 55 इंच का 4K टेलीविजन हो या आपकी कार का साउंड सिस्टम, हर चीज को हमारी प्रतिक्रिया के लिए एक IR रिमोट कंट्रोलर की आवश्यकता होती है
सिगफॉक्स के साथ डेड मैन अलर्ट के साथ बाइक ट्रैकिंग सिस्टम: 7 कदम (चित्रों के साथ)
सिगफॉक्स के साथ डेड मैन अलर्ट के साथ बाइक ट्रैकिंग सिस्टम: ट्रैकिंग और अलर्ट सुविधाओं के साथ बाइक सवारों के लिए सुरक्षा प्रणाली। दुर्घटना के मामले में जीपीएस स्थिति के साथ एक अलार्म भेजा जाता है। बाइक सवारों के लिए सुरक्षा जरूरी है, सड़क बाइक या माउंटेन बाइक दुर्घटनाएं होती हैं और जितनी जल्दी हो सके आपात स्थिति में