विषयसूची:

MyPetBot (एक बॉट जो आपका अनुसरण करता है): 10 कदम (चित्रों के साथ)
MyPetBot (एक बॉट जो आपका अनुसरण करता है): 10 कदम (चित्रों के साथ)

वीडियो: MyPetBot (एक बॉट जो आपका अनुसरण करता है): 10 कदम (चित्रों के साथ)

वीडियो: MyPetBot (एक बॉट जो आपका अनुसरण करता है): 10 कदम (चित्रों के साथ)
वीडियो: 5 Best Personal Robots You Can Buy In 2022 2024, नवंबर
Anonim
Image
Image
MyPetBot (एक बॉट जो आपका अनुसरण करता है)
MyPetBot (एक बॉट जो आपका अनुसरण करता है)
MyPetBot (एक बॉट जो आपका अनुसरण करता है)
MyPetBot (एक बॉट जो आपका अनुसरण करता है)

एआई गणित के सबसे सुंदर अनुप्रयोगों में से एक है। यह मूल रूप से आपके द्वारा खोजे जा रहे परिणाम से मेल खाने के लिए अनुकूलित मैट्रिस ऑपरेशंस का एक समूह है। सौभाग्य से बहुत सारे ओपन सोर्स टूल हैं जो हमें इसका उपयोग करने की अनुमति देते हैं।

मुझे मूल रूप से यह विचार बहुत समय पहले आया था जब मैं थ्रो पास करने वाले लोगों द्वारा निष्क्रिय किए गए झरने पर काम कर रहा था। मैं अल्ट्रासाउंड सेंसर का उपयोग कर रहा था और बहुत देर से पता चला कि गीले होने पर वे बहुत काम नहीं करते हैं… यह एक मजेदार अनुभव नहीं था। हमने एक बड़े बटन का उपयोग करके समाप्त किया जिसे लोग पास करना चाहते थे तो दबा देंगे। यह ठीक निकला क्योंकि यह गर्म था और लोग भीगना पसंद करते थे, लेकिन समस्या मेरे दिमाग में बनी रही … लोगों का पता कैसे लगाया जाए और प्रतिक्रिया को सक्रिय किया जाए।

मैं यह कहानी इसलिए बता रहा हूं क्योंकि मैं यह बताना चाहता हूं कि इस सिद्धांत का इस्तेमाल कई अन्य अनुप्रयोगों के लिए किया जा सकता है! खिलौने के साथ अपने चेहरे का अनुसरण करना उनमें से केवल एक है। इंटरैक्टिव इंस्टॉलेशन के लिए आप किसी भी तरह का काम कर सकते हैं। आप यह पता लगाने के लिए एक मॉडल का उपयोग कर सकते हैं कि कोई चेहरा मुस्कुरा रहा है या नहीं। आप एक पार्क में कुत्तों की संख्या गिन सकते हैं। जब लोग गुजर रहे हों तो आप अपनी आंखें बंद कर सकते हैं। या… अपने शरीर की स्थिति के आधार पर अपने निंटेंडो बेस के लिए एक नियंत्रक बनाएं…। आप कई अन्य एआई मॉडल डाउनलोड कर सकते हैं जो किसी भी प्रकार का सामान करते हैं।

रास्पबेरी पाई के साथ एआई अनुमान को कैसे काम करना है, इस पर कुछ ट्यूटोरियल हैं। मैं यहां आपको यह सिखाने के लिए हूं कि होल इंटीग्रेशन को सेल्फ वर्किंग यूनिट में कैसे बनाया जाए। जैसे ही आपका रोबोट बूट होगा, यह आवश्यक प्रोग्राम शुरू कर देगा।

आपूर्ति

  • लंबन रोबोट: मैंने इस रोबोट को चुना क्योंकि मैंने इसे चारों ओर बिछाया था, लेकिन कोई भी रोबोट जिसे एक आर्डिनो से नियंत्रित किया जा सकता है वह काम करेगा।
  • रास्पबेरी पाई: मैं कम से कम रास्पबेरी पाई 3 बी + की सलाह देता हूं।
  • इंटेल न्यूरल स्टिक: अनुमान दर एक प्रति सेकंड से 8 हो जाती है। यदि आप रास्पबेरी पाई में एआई करना चाहते हैं तो आपको वास्तव में एक की आवश्यकता है।
  • पावर बैंक: पावर मैनेज करने का सबसे आसान तरीका। रास्पबेरी पीआई 3 बी + के साथ काम करता है, आप यह जांचना चाहेंगे कि यह पीआई 4 के साथ काम करता है।
  • पिकामेरा: मुझे यूएसबी के बजाय पिकामेरा का उपयोग करना पसंद है।

चरण 1: रोवर असेंबली

रोवर असेंबली
रोवर असेंबली
रोवर असेंबली
रोवर असेंबली
रोवर असेंबली
रोवर असेंबली

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

  1. अपने आप को एक Arduino नियंत्रित वाहन खोजें।
  2. इसमें पावर बैंक को टाइट लपेटें।
  3. इसमें रास्पबेरी पाई को कस कर लपेटें।
  4. पिकामेरा को ऊपर की ओर एक मामूली कोण पर चिपकाएं।
  5. सब कुछ एक साथ जोड़ो।
  6. वोइला!

चरण 2: रास्पियन

Raspbian
Raspbian
Raspbian
Raspbian

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

रास्पियन स्थापित करें: आप रास्पियन बस्टर लाइट स्थापित कर सकते हैं। हम डेस्कटॉप का उपयोग नहीं करने जा रहे हैं… केवल ssh सिक्योर शेल कनेक्शन।

अपने पाई से कनेक्ट करें: सबसे पहले आप एक ईथरनेट कनेक्शन के साथ अपने रास्पबेरी पाई से कनेक्ट कर सकते हैं

अपना वाईफाई सेट करें: अब आप अपने वायरलेस कनेक्शन को कॉन्फ़िगर कर सकते हैं

चरण 3: ओपनविनो

ओपनविनो
ओपनविनो

OpenVino Intel द्वारा समर्थित एक बेहतरीन लाइब्रेरी है। उन्होंने उदाहरण मॉडल संकलित करने में बहुत अच्छा काम किया है और उन्होंने अधिकांश एआई ढांचे को संगत बना दिया है। इंटेल न्यूरल स्टिक के लिए आपको इस पुस्तकालय की आवश्यकता है।

पायथन 3 स्थापना: आपको अजगर 3 स्थापित करने की आवश्यकता है।

OpenVino इंस्टालेशन: एक बार ऐसा करने के बाद आपको रास्पबेरी पाई से कनेक्ट होने पर हर बार "[setupvars.sh] OpenVINO एनवायरनमेंट इनिशियलाइज़्ड" एक लाइन दिखाई देगी।

OpenVino, opencv का ही एक एक्सटेंशन है। इसका परीक्षण करने के लिए, आप python3 लॉन्च कर सकते हैं और cv2 आयात कर सकते हैं।

खोल में टाइप करें:

अजगर3

पायथन में टाइप करें:

  • आयात cv2
  • cv2._संस्करण_

अंतिम पंक्ति को '4.1.2-ओपनविनो' या ओपनविनो के किसी भी संस्करण को वापस करना चाहिए। अगर ओपनसीवी कहता है तो आपकी स्थापना काम नहीं कर रही है …

चरण 4: कोड डाउनलोड करें

कोड डाउनलोड करें
कोड डाउनलोड करें

सबसे पहले, हम गिट स्थापित करते हैं। खोल में टाइप करें:

sudo apt-git स्थापित करें

फिर हम दस्तावेज़ फ़ोल्डर में जा सकते हैं और कोड डाउनलोड कर सकते हैं:

  • सीडी ~/दस्तावेज़/
  • गिट क्लोन

चरण 5: फॉलोमी (पायथन)

फॉलोमी (पायथन)
फॉलोमी (पायथन)

यह वह हिस्सा है जिसके साथ आप खेलना चाहते हैं। अगर आप का पालन करें तो बनाओ! इसे आप से डरो! अपने कुत्ते का पालन करें! इसे चेहरे के भावों को पहचानें !! अपनी बिल्ली को परेशान करो !!! जो तुम चाहो।

आपको चार मुख्य, फ़ोल्डर मिलेंगे: Arduino, परिनियोजन, प्लेयर और FollowMe:

Arduino: उस पर अगले भाग पर अधिक

परिनियोजन: यह वह जगह है जहाँ मैंने यूजर इंटरफेस रखा है। अभी मैंने एक साधारण स्टार्ट/स्टॉप बटन और एक छोटे से कैमरा व्यूअर को कोडित किया है जिसमें नियंत्रण सिर्फ फर मज़ा है।

प्लेयर: आपके डेस्कटॉप पीसी में उपयोग के लिए अभिप्रेत है। बॉट के आउटपुट की समीक्षा के लिए!

फॉलोमी: वह मॉड्यूल जो वास्तविक मज़ा करता है

मैं जीथब पर अधिक विवरण डालूंगा, ताकि अपडेट करने के लिए केवल एक ही स्थान हो। यह कोड के लिए जगह है

चरण 6: मॉडल डाउनलोड करें

अनुमान के लिए मॉडल कोड में शामिल नहीं हैं क्योंकि वे काफी बड़े हैं। लेकिन आप OpenVino मॉडल चिड़ियाघर का उपयोग करके बहुत सारे उदाहरण पा सकते हैं

आप मॉडल डाउनलोडर का उपयोग कर सकते हैं या सीधे इस लिंक को फेंक सकते हैं। मेरे मामले में मैं अपने रास्पबेरी पाई इंस्टॉलेशन से मॉडल डाउनलोडर का उपयोग नहीं कर सका …

फिर मॉडल को मॉडल नामक फ़ोल्डर में कॉपी करें:

  • सीडी ~/दस्तावेज़/FollowMe
  • एमकेडीआईआर मॉडल
  • सीडी मॉडल
  • wget
  • wget

आपको हमेशा.xml और.bin की आवश्यकता होती है।

आप अपनी पसंद का कोई भी मॉडल डाउनलोड कर सकते हैं… लेकिन आपको कोड बदलना होगा। मज़े करो!

चरण 7: अरुडिनो

अरुडिनो
अरुडिनो

हमें पिछले चरण पर कोड डाउनलोड करना है। Arduino के लिए कोड इसमें है!

कोड दो निरंतर सर्वो को चलाने के लिए है, यदि आपने एक अलग कॉन्फ़िगरेशन चुना है तो आपको कोड को संशोधित करना होगा।

यह मूल रूप से दो काम करता है। यह कंप्यूटर के साथ संचार करता है और यह चयनित गति से सर्वो को सक्रिय करता है।

मैं मोटरों को नियंत्रित करने के लिए सीधे रास्पबेरी पाई का उत्पादन कर सकता था … लेकिन arduinos बेहतर काम करते हैं (उनके पास एक वास्तविक आवृत्ति जनरेटर है)। इसके अलावा, मैं निष्कर्ष को तेज करने के लिए रास्पबेरी पाई को जितना संभव हो उतना उतारना चाहता था।

चरण 8: जीयूआई

जीयूआई
जीयूआई
जीयूआई
जीयूआई

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

यदि आप इसका परीक्षण करना चाहते हैं, तो आपको इसे निर्देशिका FollowMe स्तर से लॉन्च करना होगा और फिर इसे python3 से कॉल करना होगा:

  • सीडी ~/दस्तावेज़/FollowMe
  • python3 परिनियोजन/FollowMe.py

फिर आप टाइप करके अपने ब्राउज़र में इंटरफ़ेस एक्सेस कर सकते हैं:

192.168.0.113:8000

बेशक सही आईपी पते के साथ।

नियंत्रण के साथ एक वीडियो व्यूअर भी है… लेकिन काम करने वाले अनुमान के साथ नहीं

python3 परिनियोजन/StreamVideo.py

चरण 9: सेवा

यह वही है जो रोवर को अपने आप काम करता है। सर्विस एक प्रोग्राम है जो बिना यूजर के कंप्यूटर के बैकग्राउंड में चलता है। सुनिश्चित करें कि आपके सभी पथ पूर्ण हैं और यदि आप किसी भी फाइल का उपयोग करते हैं तो आपके पास सही अधिकार हैं और सेवा ठीक चलेगी।

एक सेवा के रूप में एक पायथन स्क्रिप्ट चलाने के लिए आपको एक सेवा फ़ाइल में स्क्रिप्ट को संदर्भित करने की आवश्यकता है। सेवा फ़ाइल डिप्लॉयमेंट फ़ोल्डर में git से डाउनलोड किए गए कोड में है। नाम है FollowMe.service।

इसे कॉपी करने के लिए शेल में निम्नलिखित टाइप करें:

sudo cp ~/Documents/FollowMe/Deployment/FollowMe.service /etc/systemd/system/

पहली बार जब आप उस फ़ाइल की प्रतिलिपि बनाते हैं जिसकी आपको systemctl… को अद्यतन करने या रीबूट करने की आवश्यकता होती है:

sudo systemctl डेमॉन-रीलोड

और शुरू करने के लिए:

sudo systemctl start FollowMe

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

छोटी सी व्याख्या….

Openvino को कार्य करने के लिए सिस्टम चर में कुछ अतिरिक्त पथों की आवश्यकता होती है। दुर्भाग्य से सामान्य स्थापना एक सेवा के रूप में काम नहीं करेगी। तो आपको चर सेट करने के लिए इस फ़ाइल की आवश्यकता है।

ध्यान दें कि मेरी स्थापना अजगर 3.7 के लिए है इसलिए एक चर है जिसे आपको समायोजित करने की आवश्यकता हो सकती है … शुभकामनाएँ!

यह फ़ाइल निरपेक्ष पथ में अजगर स्क्रिप्ट का संदर्भ देती है:

/home/pi/Documents/FollowMe/Deployment/FollowMe.py

चरण 10: बस इतना ही! मज़े करो

टिप्पणियाँ? हमेशा स्वागत है

सिफारिश की: