विषयसूची:
- आपूर्ति
- चरण 1: चरण 1: इम्प्रिमिर टोडास लास पीज़ास डी ला एस्ट्रक्टुरा
- चरण 2: मोंटेजे डी ला एस्ट्रक्टुरा
- चरण 3: मोंटेजे डी ला इलेक्ट्रॉनिका
- चरण 4: सॉफ्टवेयर: कैलिब्रेजे डी सर्वोस
- चरण 5: सॉफ्टवेयर: मॉड्यूलोस
वीडियो: हेक्सावाकर: 5 कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:21
हेमोस इको अन ग्रुपो डे एस्टुडिएंट्स डे ला यूएबी अन रोबोट हेक्सापोडो ऑटोनोमो कॉन उना वेबकैम कॉन माइक्रोफ़ोनो मेडियेंट ला क्यूल पुएडेस इंटरैक्टुअर कॉन एल। ला आइडिया एरा हैसर अन रोबोट एमिस्टोसो क्यू रिकोनोसिएरा ऑर्डेन्स डी वोज वाई पुएडा सेगुइर मेडियेंट ला कैमरा उन पेलोटा। अलगो एएसआई कोमो उना "मस्कोटा" रेबोटिका।
केब कॉमेंटर क्यू ला एस्ट्रक्टुरा क्यू हेमोस यूटिलिज़ैडो पैरा न्यूस्ट्रो हेक्सापोडो ला हेमोस सैकाडो डेल रोबोट ओपन सोर्स हेक्सी डी आर्कबोटिक्स।
एक्वी एल लिंक अल कोडिगो:
आपूर्ति
- लाइपो बैटेरी 7.4V 2700mmAh
- x2 एडफ्रूट सर्वो ड्राइवर
- x18 माइक्रो सर्वोस SG90s
- वेब कैमरा प्लेस्टेशन आई
-रास्पबेरी पाई -LM2596 स्टेप डाउन -x2 स्विच - RGB LED
- केबल विविध
चरण 1: चरण 1: इम्प्रिमिर टोडास लास पीज़ास डी ला एस्ट्रक्टुरा
एस नेसेसरियो इंप्रिमिर टोडास लास पीज़ास।
एक्वी पोड्रेइस एनकॉन्टर टोडोस लॉस आर्किवोस.stl:
कैब डेस्टाकर क्यू लास हेमोस इम्प्रेसो कॉन लास सिगुएंटेस प्रोपीएडेड्स:
सामग्री: पीएलए
इन्फिल: 25%
परत की ऊंचाई: 0.12
गति: 55 मिमी / एस
चरण 2: मोंटेजे डी ला एस्ट्रक्टुरा
पैरा एल मोंटेजे डे ला एस्ट्रक्टुरा अनुशंसा करते हैं सेगुइर ला गुइया डेल ऑटोर डे लास पीज़ास ३डी:
गुआ:
कोई भी आवश्यक नहीं है क्योंकि यह आवश्यक है कि आप इस पर ध्यान दें, एल ब्यून फंकियोनामिएंटो डेल रोबोट, या क्यू एन नुएस्ट्रो कैसो, सोलो लास हेमोस यूटिलिजाडो कोमो आयु।
नोट: नो फिजीस लॉस टॉर्निलोस डे लॉस सर्वोस एंटिस डे कैलिब्रारलोस एन एल अपार्टैडो डी कोडिगो।
चरण 3: मोंटेजे डी ला इलेक्ट्रॉनिका
एक्वी वा उना लिस्टा डे लॉस कंपोनेंट्स यूटिलिज़ैडोस वाई अल्गुनोस कॉन्सेजोस पैरा एल मोंटेजे।- लिपो बैटेरी 7.4V 2700mmAh - x2 एडफ्रूट सर्वो ड्राइवर
- x18 माइक्रो सर्वोस SG90s
- वेब कैमरा प्लेस्टेशन आई
-रास्पबेरी पाई
-LM2596 नीचे कदम
-x2 स्विच
- आरजीबी एलईडी
- केबल विविध
इस महत्वपूर्ण क्यू पैरा कोनेक्टर 2 एडफ्रूट्स सर्वो ड्राइवर, से सुएल्डे एल ब्रिज ए0 डे ला सेगुंडा प्लाका। इस संबंध में विस्तार से बताया गया है: https://learn.adafruit.com/16-channel-pwm-servo-d… रेस्पेक्टो ए लॉस सर्वोस एल ऑर्डेन एन एल क्यू कोनेक्टेस लॉस पाइन्स एस इंडिफेरेंट या क्यू टेंडर्स क्यू कॉन्फिगरर लॉस मास एडलांटे एन एल कोडिगो एक्सप्लिकैडो एन एल अपार्टैडो डे कोडिगो।
चरण 4: सॉफ्टवेयर: कैलिब्रेजे डी सर्वोस
एंटेस डे नाडा से टिएन क्यू कॉन्फिगरर लॉस पल्सोस मैक्सिमोस वाई मिनिमो डे वुएस्ट्रोस सर्वोस एएसआई कॉमो लॉस पाइंस डोंडे एस्टेन कॉन्एक्टाडोस एन एल आर्किवो हेक्सापॉड_कोर.py।
कैडा सर्वो एस्टा आइडेंटिफाडो सेगुन ला लेएन्डा डी अबाजो, पोर कैडा सर्वो से टाइन क्यू इंडिकार, एल पिन डे कॉनेक्सियन अल सर्वो ड्राइवर, पल्सो मिनिमो, पल्सो मैक्सिमो वाई एल अल्टिमो पैरामेट्रो एस पोर सी एल सर्वो एस्टा फंक्शनेंडो डे कोमोबेरा क्यू कैम्बियारलो डी साइनो।
""" जॉइंट_की कन्वेंशन: आर - राइट, एल - लेफ्ट एफ - फ्रंट, एम - मिडिल, बी - बैक एच - हिप, के - नी, ए - एंकल की: (चैनल, मिनिमम_पल्स_लेंथ, मैक्सिमम_पल्स_लेंथ) """ GPIO.setwarnings (गलत) GPIO.setmode(GPIO. BOARD)
संयुक्त_गुण = {
'एलएफएच': (0, 248, 398, -1), 'एलएफके': (1, 195, 492, -1), 'एलएफए': (2, 161, 580, -1), 'RFH': (31, 275, 405, 1), 'RFK': (30, 260, 493, -1), 'RFA': (29, 197, 480, -1), 'LMH': (3, 312, 451, -1), 'LMK': (4, 250, 520, -1), 'LMA': (5, 158, 565, -1), 'RMH': (28, 240, 390, 1), 'आरएमके': (27, 230, 514, -1), 'आरएमए': (26, 150, 620, -1), 'एलबीएच': (6, 315, 465, 1), 'एलबीके': (8, 206, 498, -1), 'एलबीए': (7, 150, 657, -1), 'आरबीएच': (25, 320, 480, 1), 'आरबीके': (24, 185, 490, -1), 'आरबीए': (23, 210, 645, -1), 'एन': (18, 150, 650, 1)}
चरण 5: सॉफ्टवेयर: मॉड्यूलोस
मोडुलो डे रिकोनोसिमिएंटो डे वोज़:
Google 'भाषण-से-पाठ' के रूप में कार्य करें। Google के साथ स्ट्रीमिंग के लिए एस्टेबलसेमोस अन स्ट्रीमिंग, पैरा ऑब्टेनर लास रेस्पुएस्टास एन टेक्स्टो, और एएसआई पोडर प्रोसेसरलास पैरा एक्सिओनर सोलो एन लॉस कैसोस क्यू नोस इंटेरेसा।
पैरा पोडर हैसर so de esta API necesitamos tener un proyecto registrado en Google Cloud, y de este descargar las credenciales para poder autenticar el robot।
पैरा गार्डर लास क्रेडेंशियल एन उना वेरिएबल डे एंटोर्नो टेनेमोस क्यू एजेकुटार एल सिगुएंटे कोमांडो (रास्पियन):
निर्यात GOOGLE_APPLICATION_CREDENTIALS="/tu/ruta/hacia/las/credenciales.json"
उन सभी चीजों को वास्तविक रूप में प्रस्तुत किया जाता है और इसे आगे बढ़ाया जाता है, इसलिए भाषण-से-पाठ में एपीआई।
एल कोडिगो पैरा रियलिज़र एल स्ट्रीमिंग एस्टा प्रोपोरसीनाडो पोर गूगल एन सु पेजिना ऑफ़िसियल, म्यू बिएन डॉक्यूमेंटैडो:https://cloud.google.com/speech-to-text/docs/stre…
ला फ़ंक्शन प्रिंसिपल डेल स्ट्रीमिंग एस 'सुनो_प्रिंट_लूप', ला एन्करगडा डे डिसीडिर क्यूएल एस ला रिस्प्यूस्टा क्यू से एप्रोक्सिमा मास अल इनपुट रिसीबिडो, वाई डोंडे हेमोस कंट्रोलैडो लास रेस्पुएस्टास पैरा पोडर कम्युनिकरले अल रोबोट कुआंडो हा डे हैसर उन पैरा एविसन, ओ डी वोज़ नो एस रेकोनोकिडो, पैरा क्यू एल रोबोट रीयलिस अन मूविमिएंटो क्यू सिमुला नो हैबर एंटेन्डिडो अल उसुआरियो।
एल कोडिगो एडाप्टैडो से एन्कुएंट्रा एन एल रिपोजिटेरियो डी गिट हेक्सावाल्कर
github.com/RLP2019/HEXAWALKER/blob/master/…
PASO 1: स्थापित करें OPENCVHemos seguido la instalación de un Professional como es Adrian Rosebrock, en su pàgina web:
पासो २: PROBAR LA CAMARA Primero de todo un vez instalado opencv, lo que vamos a hacer es un pequeño script en python para probar la camara. पैरा एलो हरेमोस क्यू से अबरन डॉस वेंटानास, उना कोन ला इमेजन ओरिजिनल वाई ओट्रा कोन ला इमेजेन एन ब्लैंको वाई नीग्रो।
np. के रूप में numpy आयात करें
आयात cv2
टोपी = cv2.वीडियो कैप्चर (0)
जबकि (ट्रू): रेट, फ्रेम = कैप। रीड () ग्रे = cv2.cvtColor (फ्रेम, cv2. COLOR_BGR2GRAY) cv2.imshow ('फ्रेम', फ्रेम) cv2.imshow ('ग्रे', ग्रे) अगर cv2.waitKey (1) और 0xFF == ऑर्ड ('क्यू'): ब्रेक
कैप.रिलीज ()
cv2.destroyAllWindows ()
PASO 3: DETECCIÓN DEL COLOR CON OPENCV Para el siguiente paso lo que vamos a realizar es una detección de color। पैरा एलो, प्रिमेरो डे टूडो वामोस ए रियलिज़र अन स्क्रिप्ट क्यू नोस परमिटा कन्वर्टिर अन कलर एन ऑर्डेन बीजीआर ए एचएसवी (फॉर्मेटो एन एल क्यू ओपनसीवी एस कैपाज़ डी इंटरप्रेटर)।
आयात प्रणाली
np के रूप में numpy आयात करें cv2 नीला = sys.argv [1] हरा = sys.argv [2] लाल = sys.argv [3] रंग = np.uint8 (
उना वेज़ हयामोस हेचो ला कन्वर्सेशन डे न्यूस्ट्रो कलर डेसीडो, एल स्क्रिप्ट नोस प्रिंटारा पोर कंसोल एल लिमिट पोर डेबाजो वाई एल लिमिट पोर अरीबा, एल क्यूएल नोस सर्विरा पैरा क्यू ला डिटेक्शन टेंगा उना गामा डे कोलोरेस एंट्रे डॉस नो कलर्स एचएस समस्या के रूप में अलग-अलग हैं।
एल सिगुएंटे पासो एस को उना इमेजन प्रीविमेंट रियलिज़ादा, क्रेयर ओट्रो स्क्रिप्ट एल क्यूएल नोस सर्विरा पैरा प्रोबार एल पासो पूर्वकाल। लो क्यू नोस मोस्ट्रारा कोमो रिजल्टडो सेरा ला इमेजन क्यू नोसोट्रोस ले पेसेमोस (कॉन एल कलर यू ओब्जेटो ए डिटेक्टर) कन्वर्टिडा एन उना मस्कारा, आइसलैंडो टोडोस लॉस कोलोरेस क्यू नो से एनक्यूएंट्रेन एन एसे रंगो एचएसवी क्यू हेमोस डेफिनिडो।
आयात cv2
np. के रूप में numpy आयात करें
# चित्र पढ़ें - 1 का अर्थ है कि हम छवि को BGR में चाहते हैं
img = cv2.imread ('येलो_ऑब्जेक्ट.जेपीजी', १)
# प्रत्येक अक्ष में छवि का आकार 20% तक बदलें
img = cv2.resize(img, (0, 0), fx=0.2, fy=0.2) # BGR इमेज को HSV इमेज में बदलें hsv = cv2.cvtColor(img, cv2. COLOR_BGR2HSV)
# NumPy निचली और ऊपरी सीमा को बनाए रखने के लिए सरणियाँ बनाने के लिए
# "dtype = np.uint8" का अर्थ है कि डेटा प्रकार एक 8 बिट पूर्णांक है
Low_range = np.array([२४, १००, १००], dtype=np.uint8)
अपर_रेंज = np.array([44, 255, 255], dtype=np.uint8)
# इमेज के लिए मास्क बनाएं
मुखौटा = cv2.inरेंज (एचएसवी, निचला_रेंज, ऊपरी_रेंज)
# मुखौटा और छवि दोनों को साथ-साथ प्रदर्शित करें
cv2.imshow('mask', mask) cv2.imshow('image', img)
# [ईएससी] दबाने के लिए उपयोगकर्ता की प्रतीक्षा करें
जबकि(1): k = cv2.waitKey(0) if(k == 27): cv2.destroyAllWindows () को तोड़ें
पासो 4: पॉज़िशनएमिएंटो डेल ओब्जेटो एन इस्ट पासो प्रोबेयरमोस क्यू उना वेज़ ला कैमरा से एन्क्यूएंट्रे एन फंकियोनामिएंटो वाई हयामोस कॉन्फिगुराडो न्यूस्ट्रो रैंगो मिनिमो वाई मैक्सिमो डे कलर एचएसवी, क्यू एस्टे सी कैपाज़ डे एनकॉन्ट्रार एक्स ई डेल्ट्रो ओब सेंट। एन एस्टे कासो लो क्यू क्रीएरेमोस सेरा अन स्क्रिप्ट पैरा क्यू कुआंडो एल रेडियो डे न्यूस्ट्रो ओब्जेटो सी मेयर ए 10, डिबुजे अन सर्कुलो सोबरे एल ओब्जेटो वाई नोस वाया मोस्ट्रेंडो पोर पेंटाला ला पॉजिशन एन टिएम्पो रियल सस कोर्डेनाडास एक्स ई वाई।
# केवल तभी आगे बढ़ें जब त्रिज्या न्यूनतम आकार से मिलती है
यदि त्रिज्या> 10: # फ्रेम पर सर्कल और सेंट्रोइड बनाएं, # फिर ट्रैक किए गए बिंदुओं की सूची अपडेट करें cv2.circle (फ्रेम, (int(x), int(y)), int(radius), (0, 255, 255), 2) cv2.circle (फ्रेम, केंद्र, 5, (0, 0, 255), -1) # सर्कल का प्रिंट केंद्र mapObjectPosition(int(x), int(y)) # अगर एलईडी है पहले से चालू नहीं है, अगर एलईडी नहीं है तो एलईडी चालू करें। = {1}"। प्रारूप (एक्स, वाई))
कोन एस्टो लो क्यू वामोस ए कॉन्सेगुइर एस एन एल सिगुएंटे पासो पोडर जुगर कॉन लास कोर्डेनादास पैरा एस्टेबलसर लॉस लिमिट्स डे लो क्यू सेरा गिरार ए ला डेरेचा न्यूस्ट्रो रोबोट, गिरार ए ला इज़क्विएर्डा ओ बिएन नो रियलिज़र निंगन मूविंग।
पासो 5: ऑब्जेक्ट ट्रैकिंग लेलेगामोस अल पासो फाइनल। उना वेज़ रीयलज़ाडोस लॉस एंटेरियोस पंटोस, एस्टेरेमोस लिस्टोस पैरा पोडर कॉन्फिगरर अन पार डे पैरामेट्रोस वाई पोनर ए फनसिअनर न्यूस्ट्रा डिटेक्शियोन। पैरा एलो यूटिलिजेरेमोस कोमो एन्टीरियरमेंट हेमोस डिचो, लॉस पैरामेट्रोस डेल कलर एचएसवी मैक्सिमो वाई मिनिमो पैरा पोडर क्रेयर ला मस्कारा वाई डक्ट्टर एल ओब्जेटो।
कलरलोअर = (-2, १००, १००)
कलरअपर = (18, 255, 255)
टैम्बिएन नेसेसिटारेमोस लास कोर्डेनडास एक्स ई वाई पैरा एल लिमिट डेरेचो वाई एल लिमिट इज़क्विएर्डो एलिगिडोस एन एल पासो पूर्वकाल।
अगर (एक्स 280):
प्रिंट ("[कार्रवाई] गिरर डेरेचा") self.hexa.rotate(offset = -15, दोहराव = 1)
लो क्यू एस्टामोस रियलिज़ांडो कोन लॉस कंडिशनलस एन्टीरियोरेस एस डेसीर क्यू सी नुएस्ट्रा कोर्डेनाडा एक्स एस मास पेक्वेना क्यू 220, गियर ए ला इज़क्विएर्डा। एन एल कासो डे क्यू सी मास ग्रांडे, गिर ए ला डेरेचा।
पैरा एल कासो एन एल क्यू से क्विएरा अवनज़र हैसिया एडेलैंट लो क्यू से रियलिज़रा एस यूटिलिज़र ला वेरिएबल डोंडे कैलकुलामोस एल रेडियो पैरा मार्कर ओट्रो लिमिट एन कैसो डे प्रॉक्सिमिडैड डे ला पेलोटा। Cuanto mas cerca este la pelota de nuestro robot, más Grande será su Radio y por tanto más cerca estará nuestro robot en conseguir su objetivo.
यदि त्रिज्या <105: self.hexa.walk(स्विंग = 40, दोहराव = 1, उठा हुआ = -30, मंजिल = 50, t = 0.3)
ए पार्टिर डे एस्टे पुंटो एल प्रोग्रामडोर या एस लिब्रे डे रियलिज़र मॉडिफ़ैसिओनेस ई इर जुगांडो कॉन पैरामेट्रोस वाई कलर्स।
सिफारिश की:
Arduino कार रिवर्स पार्किंग अलर्ट सिस्टम - कदम दर कदम: 4 कदम
Arduino कार रिवर्स पार्किंग अलर्ट सिस्टम | स्टेप बाय स्टेप: इस प्रोजेक्ट में, मैं Arduino UNO और HC-SR04 अल्ट्रासोनिक सेंसर का उपयोग करके एक साधारण Arduino कार रिवर्स पार्किंग सेंसर सर्किट डिजाइन करूंगा। इस Arduino आधारित कार रिवर्स अलर्ट सिस्टम का उपयोग स्वायत्त नेविगेशन, रोबोट रेंजिंग और अन्य रेंज r के लिए किया जा सकता है
DIY कदम/डीआईआर लेजर गैल्वो नियंत्रक: 5 कदम (चित्रों के साथ)
DIY STEP / DIR LASER GALVO कंट्रोलर: नमस्ते, इस निर्देश में, मैं आपको दिखाना चाहता हूं कि आप ILDA मानक गैल्वो लेजर स्कैनर के लिए अपना खुद का स्टेप / dir इंटरफ़ेस कैसे बना सकते हैं। जैसा कि आप जानते होंगे कि मैं "DIY-SLS-3D-Printer" और "जेआरएलएस १००० DIY एसएलएस-३डी-पी
पिक्सेल किट चल रहा है माइक्रोपायथन: पहला कदम: 7 कदम
पिक्सेल किट रनिंग माइक्रोपायथन: पहला कदम: कानो के पिक्सेल की पूरी क्षमता को अनलॉक करने की यात्रा फ़ैक्टरी फ़र्मवेयर को माइक्रोपायथन के साथ बदलने के साथ शुरू होती है लेकिन यह केवल शुरुआत है। Pixel Kit पर कोड करने के लिए हमें अपने कंप्यूटरों को इससे कनेक्ट करना होगा। यह ट्यूटोरियल समझाएगा कि क्या
बैटरी के आंतरिक प्रतिरोध को मापने के लिए 4 कदम: 4 कदम
बैटरी के आंतरिक प्रतिरोध को मापने के लिए 4 कदम: यहां 4 सरल चरण दिए गए हैं जो बैटर के आंतरिक प्रतिरोध को मापने में आपकी मदद कर सकते हैं।
$3 और 3 कदम लैपटॉप स्टैंड (रीडिंग-ग्लास और पेन ट्रे के साथ): 5 कदम
$3 और 3 कदम लैपटॉप स्टैंड (रीडिंग-ग्लास और पेन ट्रे के साथ): यह $3 और amp; 5 मिनट में 3 स्टेप वाला लैपटॉप स्टैंड बनाया जा सकता है। यह बहुत मजबूत, हल्का वजन है, और आप जहां भी जाते हैं, ले जाने के लिए फोल्ड किया जा सकता है