मेरी रोबोटिक्स अनुसंधान अध्याय
Table of Contents
यह लेख मेरी रोबोटिक्स यात्रा का विवरण देता है, जिसकी शुरुआत 2015 में हाई स्कूल के दौरान FRC में रोबोटिक्स के प्रति अपने जुनून की खोज से हुई थी, और फिर फरवरी 2021 से सितंबर 2021 तक कोलोराडो स्कूल ऑफ माइन्स की मानव-केंद्रित रोबोटिक्स (HCR) प्रयोगशाला में एक शोध सहायक के रूप में मेरे समय तक फैली हुई है। ध्यान दें कि 2022 के अंत से HCR लैब कोलोराडो स्कूल ऑफ माइन्स से मैसाचुसेट्स विश्वविद्यालय एमहर्स्ट में स्थानांतरित हो गई है, और इसकी साइट भी hcr.mines.edu से hcr.cs.umass.edu हो गई है।
पृष्ठभूमि
मैंने पतझड़ 2018 सत्र में कोलोराडो स्कूल ऑफ माइन्स में अपनी स्नातक पढ़ाई शुरू की। मेरा प्रमुख विषय रोबोटिक्स और बुद्धिमान प्रणालियों पर केंद्रित कंप्यूटर विज्ञान था। और मैंने वसंत 2022 में स्नातक किया।
मैं अपने जीवन में इतनी जल्दी अपनी रुचि खोज पाने के लिए भाग्यशाली था। हाई स्कूल के दौरान, मैंने यह समझने के लिए काफी समय बिताया कि मुझे क्या पसंद है और मैं किसमें अच्छा हो सकता हूँ। कुछ प्रयास और त्रुटि के बाद, मैं यह समझने में सक्षम हुआ कि मेरा जुनून कंप्यूटर विज्ञान था। लेकिन इसी समय मुझे यह भी पता चला कि कोड के माध्यम से निर्माण करने के प्रति मुझमें एक गहरा, प्रबल प्रेम है।
माइन्स में, मुझे डॉ. हाओ झांग के अधीन माइन्स की मानव-केंद्रित रोबोटिक्स (HCR) लैब में काम करने का अवसर मिला। मेरी पहली मुलाकात डॉ. झांग से वसंत 2020 में उनकी कक्षा “मानव-केंद्रित रोबोटिक्स” (CSCI473) के माध्यम से हुई थी, और COVID और पाठ्यक्रम कार्य की उथल-पुथल के बाद, मुझे शुरुआती वसंत 2021 में उनकी लैब में काम करने का अवसर मिला।
मानव-केंद्रित रोबोटिक्स (CSCI473) कक्षा
माइन्स की मानव-केंद्रित रोबोटिक्स (CSCI473) मेरे कॉलेज अनुभव की उन कुछ कक्षाओं में से एक थी जिसका मुझ पर गहरा प्रभाव पड़ा। यह कक्षा डॉ. हाओ झांग द्वारा पढ़ाई गई थी। कक्षा के लिए हमारा पूरा ग्रेड केवल तीन परियोजनाओं से बना था, जिनमें से प्रत्येक ने एक चुनौतीपूर्ण समस्या प्रस्तुत की और रोबोटिक्स की मूल अवधारणाओं का परिचय दिया। इन परियोजनाओं में शामिल थे:
- रोबोट ऑपरेटिंग सिस्टम (ROS) सीखना
- रोबोट दीवार-अनुगमन के लिए प्रबलन अधिगम
- कंकाल-आधारित निरूपणों का उपयोग करके मानवीय व्यवहारों की रोबोटिक समझ
रोबोट ऑपरेटिंग सिस्टम (ROS) सीखना
यह हमें दी गई पहली परियोजना थी। परियोजना में तीन कार्य शामिल थे:
- विकास परिवेश की स्थापना
- गजेबो सिमुलेटर को समझना
- एक ROS “हैलो वर्ल्ड” लिखना
कार्य 1 और 2 के लिए, हमें केवल अपना विकास परिवेश स्थापित करना था और गजेबो परिचय ट्यूटोरियल का पालन करना था। इसमें शामिल था:
- ROS मेलोडिक को स्थापित करना, जो मैंने अपने 2011 HP लैपटॉप पर किया था, जो पर्याप्त अच्छा था
- ROS और गजेबो को स्थापित और विन्यस्त करना
- gazebosim के ट्यूटोरियल और e-manual के ट्यूटोरियल से गुजरना
दूसरी ओर, कार्य 3 एक वास्तविक चुनौती था। इस कार्य में turtlesim का उपयोग करना और कछुए से माइन्स का “M” लोगो बनवाना था:
![]() |
![]() |
यह कार्य, हालांकि सरल लग रहा था, जितना दिखता था उससे अधिक कठिन था। इस परियोजना ने अंततः मुझे ओपन-लूप और क्लोज़्ड-लूप प्रणालियों की अवधारणा से परिचित कराया। पूर्ण परियोजना विवरण के लिए, csci473-p1.pdf देखें या आप ROS मूव टर्टल परियोजना पृष्ठ पर इस परियोजना और मेरे समाधान के बारे में अधिक जान सकते हैं।
रोबोट दीवार-अनुगमन के लिए प्रबलन अधिगम
यह हमें दी गई दूसरी परियोजना थी, और यह मेरे कॉलेज में किए गए सबसे कठिन परियोजनाओं में से एक थी। परियोजना का विवरण इस प्रकार था:
इस परियोजना में, छात्र प्रबलन अधिगम एल्गोरिदम को डिज़ाइन और कार्यान्वित करेंगे ताकि एक स्वायत्त मोबाइल रोबोट को दीवार का अनुसरण करना और बाधाओं से टकराने से बचना सिखाया जा सके। छात्र ROS मेलोडिक में गजेबो सिमुलेशन का उपयोग करके ट्राइटन नामक एक सर्वदिशात्मक मोबाइल रोबोट का अनुकरण करेंगे, और आपको प्रदान किए गए परिवेश मानचित्र का उपयोग करेंगे। छात्र रोबोट पर एक लेज़र रेंज स्कैनर का उपयोग संवेदन और अधिगम करने के लिए करेंगे, जहाँ रोबोट को स्टीयरिंग और वेग आदेशों द्वारा नियंत्रित किया जाता है। छात्रों को यह परियोजना Ubuntu 18.04 LTS पर चल रहे ROS मेलोडिक में C++ या Python का उपयोग करके प्रोग्राम करनी होगी (अर्थात, वही विकास परिवेश जो परियोजना 1 में उपयोग किया गया था)। इसके अलावा, छात्रों को LATEX का उपयोग करते हुए मानक IEEE रोबोटिक्स सम्मेलनों के प्रारूप का पालन करते हुए एक रिपोर्ट लिखनी होगी।
प्रबलन अधिगम एल्गोरिदम के लिए, हमें Q-Learning का उपयोग करने का निर्देश दिया गया था। हमने कक्षा द्वारा प्रदान किए गए Stingray गजेबो अनुकरण परिवेश का भी उपयोग किया। Stingray में ट्राइटन मॉडल और भौतिकी तर्क शामिल थे। हमें रोबोट के अनुसरण के लिए एक भूलभुलैया भी प्रदान की गई थी। कुल मिलाकर, परिवेश इस तरह दिखता था:
मैंने अपना समाधान GitHub या वेब पर कभी प्रकाशित नहीं किया क्योंकि वह बहुत अच्छा नहीं था और उसमें बहुत कमियाँ थीं। साथ ही, कोड को सही परिवेश में चलाना काफी कठिन और परेशान करने वाला है। हालाँकि, मेरे पास एक डेमो वीडियो है जिसे मैंने कक्षा में जमा किया था, जिसमें मेरा समाधान दिखाया गया है। आप इसे यहाँ देख सकते हैं:
पूर्ण परियोजना विवरण के लिए, csci473-p2.pdf देखें
कंकाल-आधारित निरूपणों का उपयोग करके मानवीय व्यवहारों की रोबोटिक समझ
तीसरी परियोजना के लिए, परियोजना का विवरण इस प्रकार था:
इस परियोजना में, छात्र कई कंकाल-आधारित निरूपणों (डिलीवेरेबल 1) को कार्यान्वित करेंगे और Kinect V1 सेंसर से एकत्रित सार्वजनिक गतिविधि डेटासेट का उपयोग करके मानवीय व्यवहारों को वर्गीकृत करने के लिए Support Vector Machines (SVMs) (डिलीवेरेबल 2) का उपयोग करेंगे। इसके अतिरिक्त, छात्रों को LATEX का उपयोग करते हुए डिलीवेरेबल 3 में मानक IEEE रोबोटिक्स सम्मेलनों के प्रारूप का पालन करते हुए एक रिपोर्ट लिखनी होगी।
यह परियोजना चुनौतीपूर्ण थी, लेकिन दूसरी परियोजना जितनी कठिन नहीं थी। मुख्य लक्ष्य MSR Daily Activity 3D Dataset से Kinect V1 सेंसर डेटा का उपयोग करना, और कुछ मानव क्रियाओं/व्यवहारों को वर्गीकृत करने के लिए Support Vector Machines का उपयोग करना था। पूर्ण परियोजना विवरण के लिए, csci473-p3.pdf देखें या आप LIBSVM का उपयोग करके मानवीय क्रियाओं का पूर्वानुमान ब्लॉग पोस्ट पर इस परियोजना और मेरे समाधान के बारे में अधिक जान सकते हैं।
CSCI473 निष्कर्ष
CSCI473 उन सर्वश्रेष्ठ कक्षाओं में से एक है, यदि सर्वोत्तम न भी कहें, जो मैंने माइन्स में अपने स्नातक अध्ययन के दौरान ली थी। इन सभी परियोजनाओं ने मुझे बहुत कुछ सिखाया और मुझे परियोजनाओं का एक अच्छा संग्रह दिया जिस पर मैं अपने रिज़्यूमे में विचार और संदर्भ कर सकता हूँ। यह पहली ऐसी कक्षा भी थी जिसमें मुझे लगा कि मैं अपने तत्व में हूँ, क्योंकि मैं कभी भी परीक्षा देने में अच्छा नहीं था लेकिन परियोजनाएँ पूरी करने में उत्कृष्ट था। इसी कक्षा के माध्यम से मेरी मुलाकात डॉ. हाओ झांग से भी हुई, जिन्होंने अंततः माइन्स की मानव-केंद्रित रोबोटिक्स (HCR) लैब में एक शोध सहायक के रूप में मुझे पद सुरक्षित कराने में मदद की।
CS क्षेत्र सत्र (ग्रीष्म 2020)
2020 की गर्मियों के दौरान, CSCI473 पूरा करने और HCR लैब में शामिल होने के बीच, मैंने कोलोराडो स्कूल ऑफ माइन्स में अपने CS स्नातक कार्यक्रम के हिस्से के रूप में CSCI370 या “उन्नत सॉफ्टवेयर अभियांत्रिकी” लिया। CSCI370 एक पाठ्यक्रम है जो छात्रों से एक कंपनी के लिए सॉफ्टवेयर-संबंधित समाधान डिज़ाइन, कार्यान्वित और प्रलेखित करवाता है। यह छात्रों को अपने पाठ्यक्रम ज्ञान को वास्तविक दुनिया की कंप्यूटर विज्ञान समस्याओं पर लागू करने की अनुमति देता है। आप पाठ्यक्रम के बारे में अधिक यहाँ जान सकते हैं।
पाठ्यक्रम में, आपको यह तय करना होता है कि आप किस परियोजना/कंपनी पर काम करेंगे। पाठ्यक्रम ने प्रत्येक परियोजना और कंपनी का विवरण देने वाली PDF फ़ाइलें प्रदान की थीं। अंततः मैंने Lunar Outpost नामक एक कंपनी द्वारा पोस्ट की गई “बेहतर चंद्र नेविगेशन के लिए वास्तविक समय पहिया फिसलन पहचान और त्रुटि सुधार” नामक परियोजना पर काम करने का निर्णय लिया। चूँकि नाम लंबा है, आइए इस परियोजना को “व्हील स्लिपेज डिटेक्शन” का उपनाम दें।
समस्या
Lunar Outpost एक स्टार्टअप है जो स्वायत्त चंद्र रोवर्स बनाने की कोशिश कर रहा है। चंद्रमा पर बहुत अधिक चंद्र धूल होती है, जो बहुत अधिक पहिया फिसलन का कारण बनने के लिए जानी जाती है। यह आदर्श नहीं है क्योंकि पहिया फिसलन स्वायत्त प्रणालियों को अपने वास्तविक दुनिया के स्थान का पता खोने का कारण बन सकती है। पृथ्वी पर, यह GPS डेटा का उपयोग करके पहिया फिसलन से उत्पन्न किसी भी विचलन को ठीक करके हल किया जाता है। लेकिन GPS की समस्या यह है कि यह केवल 30+ नेविगेशन उपग्रहों के पृथ्वी के चारों ओर कक्षा में निरंतर घूमते रहने और विशिष्ट संकेत प्रसारित करने से काम करता है, जिससे कंप्यूटर अपनी स्थिति की गणना कर सकते हैं। लेकिन चंद्रमा पर, वर्तमान में GPS जैसी कोई चीज़ नहीं है। यह जानकर, पहिया फिसलन का पता लगाने के लिए GPS के अलावा कोई अन्य विधि का उपयोग करना होगा। परियोजना की समस्या पर एक अधिक विस्तृत रिपोर्ट यहाँ देखी जा सकती है।
टीम
यह परियोजना कोई साधारण परियोजना नहीं थी, इसलिए इसे एक टीम में करना पड़ा। यह टीम पाँच अन्य कोलोराडो स्कूल ऑफ माइन्स छात्रों से बनी थी:
यह परियोजना कोई साधारण परियोजना नहीं थी, इसलिए इसे एक टीम में करना पड़ा। इस टीम में Mehmet Yilmaz (मैं), Kane Bruce, Braedon O’Callaghan, Liam Williams, और Kevin Grant शामिल थे।
परियोजना के लिए हमें कुछ ROS, C++, Python, Linux, Raspberry Pi, और Arduino जानना आवश्यक था। हममें से अधिकांश को इनमें से एक या अधिक तकनीकों का अनुभव था, लेकिन ROS के साथ अनुभव रखने वाला केवल मैं था क्योंकि मैंने वसंत 2020 सत्र के दौरान अपनी मानव-केंद्रित रोबोटिक्स (CSCI473) कक्षा में ROS का उपयोग किया था। इसी कारण, शुरुआत में, मैंने सभी को ROS और उसके लिए विकास कैसे करना है, इसके बारे में तेज़ी से समझने में मदद की।
चुनौतियाँ
इस परियोजना में बहुत सी चुनौतियाँ थीं। लेकिन सबसे बड़ी चुनौती जिसका हमने सामना किया, वह परीक्षण के लिए वास्तविक दुनिया के रोबोट तक पहुँच न होना था। यह COVID के कारण था, जिसने सब कुछ दूरस्थ बना दिया और हमें लूनर आउटपोस्ट की प्रयोगशाला/इमारतों में काम करने से रोका। इसके कारण, हमें सिमुलेशन का उपयोग करना पड़ा।
इसके अलावा, हमने WVU Navigation Lab से कुछ शैक्षणिक शोध देखा ताकि हमें इस बात का अंदाज़ा हो सके कि व्हील स्लिपेज समस्या को लूनर आउटपोस्ट के उपयोग-परिदृश्य के लिए कैसे हल किया जा सकता है, जो हमारे लिए, स्नातक द्वितीय और तृतीय वर्ष के छात्रों के रूप में, हमारी अपेक्षा से अधिक कठिन था।
एक और चुनौती जिसका हमने सामना किया, वह इस परियोजना पर काम करने के लिए हमारे पास उपलब्ध समय की मात्रा थी। CSCI370 एक महीने की कक्षा है। लेकिन समस्या स्वयं एक विशाल समस्या है, जिसे कई कंपनियाँ और अकादमिक शोधकर्ता दशकों से हल/परिपूर्ण करने की कोशिश कर रहे हैं। इसलिए एक महीना इस समस्या को हल करने के लिए बिल्कुल पर्याप्त नहीं है। लेकिन, इन सभी चुनौतियों के बावजूद, हमने डटे रहकर सुनिश्चित किया कि हम डिलीवर करें।
निष्कर्ष
सारे शोध और विकास पर काम करने के बाद, हमने निर्धारित किया कि डिजिटल रूप से उचित चंद्रमा भौतिकी का अनुकरण करना लगभग असंभव है, इसलिए वास्तव में इस एल्गोरिदम को सिमुलेशन में आज़माना अच्छा नहीं है और अंतरिक्ष तथा चंद्रमा पर व्हील स्लिपेज पहचान के लिए कोई सार्थक शोध नहीं देगा। हमने निष्कर्ष निकाला कि रेत और वास्तविक हार्डवेयर, जैसे कि हस्की रोबोट, का उपयोग करके एक उचित परीक्षण वातावरण स्थापित करना इस प्रकार के शोध के लिए कहीं अधिक महत्वपूर्ण है। हमने व्हील स्लिपेज पहचान कोड को ROS नोड के रूप में काम करने के लिए अपडेट किया और यह ठीक से कार्य करने लगा तथा परीक्षण के लिए वास्तविक हार्डवेयर में आसानी से आयात किया जा सकता था। इस परियोजना ने मुझे नेतृत्व की भूमिका निभाने, अपने साथियों को ROS विकास के बारे में शिक्षित करने, और एक जटिल समस्या से निपटते हुए Python, ROS, और Gazebo के साथ अनुभव प्राप्त करने का अवसर दिया, जिसका सामना मैंने पहले कभी नहीं किया था। सबसे महत्वपूर्ण बात, इस अनुभव ने रोबोटिक्स के प्रति मेरे जुनून को और दृढ़ किया और इस क्षेत्र में शोध करने की मेरी इच्छा को मज़बूत किया, जिससे मेरी रोबोटिक्स यात्रा में आगे आने वाली चीज़ों के लिए मंच तैयार हुआ।
एचसीआर लैब में शुरुआत
CSCI473, 2020 की गर्मियों में मेरा CS फ़ील्ड सेशन, और मेरा फॉल 2020 सेमेस्टर पूरा करने के बाद, मैंने रोबोटिक्स में शोध करने का निर्णय लिया। CSCI473 और CS फ़ील्ड सेशन दोनों के साथ मेरे अनुभव इतने शानदार थे कि मैंने तय किया कि मैं एचसीआर लैब में शोध करना चाहता हूँ। चूँकि मेरी पिछले वर्ष डॉ. झांग से मुलाकात हो चुकी थी, मैंने उन्हें ईमेल करने और जनवरी 2021 में लैब के किसी भी अवसर के बारे में पूछने का निर्णय लिया। लगभग 2 हफ्तों के भीतर, डॉ. झांग ने रुचि दिखाई, मुझे शोध के विकल्प प्रस्तुत किए, और मुझे लैब में एक भूमिका की पेशकश की। फिर मैंने फ़रवरी 2021 में लैब के लिए काम करना शुरू किया।
परिचय वीडियो
यह मेरा परिचय वीडियो है जिसे मैंने एचसीआर लैब में अपने समय के कुछ महीनों बाद रिकॉर्ड किया था। इसे मई 2021 में रिकॉर्ड किया गया था और यह उस शोध को कवर करता है जिस पर मैं 2021 की गर्मियों के दौरान एचसीआर लैब में ध्यान केंद्रित करता:
मेरी परियोजना
एचसीआर लैब में अपने समय के दौरान, मैंने मुख्य रूप से ट्राइटन परियोजना पर ध्यान केंद्रित किया। ट्राइटन परियोजना एक मोबाइल रोबोट है जिसे कोलोराडो स्कूल ऑफ़ माइंस की ह्यूमन सेंटर्ड रोबोटिक्स लैब द्वारा विकसित किया गया है। यह NVIDIA के Jetson Nano द्वारा संचालित एक त्रिकोणीय ओम्नी-व्हील ग्राउंड रोबोट है।
ट्राइटन, एक सरल अवलोकन में, निम्नलिखित भागों से बना था:
- NVIDIA Jetson Nano
- NVIDIA का Seed Studio A205 Carrier Board
- Arduino Mega
- 64 GB माइक्रो SD कार्ड
- कस्टम 3D प्रिंटेड बॉडी
- 3 मेकेनम व्हील
- 1 AR बैटरी
- अनुकूलित पावर वितरण और वायरिंग के लिए कस्टम सर्किट
- Intel का Realsense D435 कैमरा
- कुछ LEDs
इसे लगभग 2018-2020 के बीच शैक्षिक उद्देश्यों के लिए एक रोबोट के रूप में डिज़ाइन, निर्मित और तैयार किया गया था। जब तक मैं जुड़ा, ट्राइटन काफी स्थापित हो चुका था, और लैब इसके एक नए संस्करण को बनाने पर विचार कर रही थी। हालाँकि, ट्राइटन के साथ मुख्य समस्या उसका सॉफ़्टवेयर था। ट्राइटन चल सकता था, चार्ज हो सकता था, और बुनियादी अर्थ में काम कर सकता था, लेकिन वास्तव में कुछ भी बुद्धिमान नहीं करता था। इसमें अधिक उन्नत गतियों की क्षमता भी नहीं थी।
![]() |
![]() |
![]() |
![]() |
इसका समाधान शुरू करने के लिए, लैब ने एक ऐसा क्षेत्र स्थापित किया जहाँ हम ट्राइटन पर नज़र रख सकें। ऐसा करने के लिए, उन्होंने 2-मीटर बाय 2-मीटर का एक क्षेत्र बनाया, जिसमें 8 Optitrack Flex (Infrared Red) Cameras को फर्श से लगभग 6-7 फीट ऊपर एक वर्ग जैसी आकृति में लगाया गया।
![]() |
![]() |
इस क्षेत्र के निर्माण के साथ-साथ, प्रत्येक ट्राइटन के शरीर के शीर्ष पर तीन ग्रे गोला गेंदें लगाई गईं।
इस सेटअप के साथ, हमने प्रभावी रूप से अपना स्वयं का छोटा-स्तरीय GPS सिस्टम बना लिया था, जिसने हमें हमारे रुचि-क्षेत्र में एक ट्राइटन के मीटर में सटीक निर्देशांक प्राप्त करने की अनुमति दी। Optitrack इन्फ्रारेड कैमरों और त्रिकोणीय आकार में लगे Optitrack ग्रे गोले का उपयोग करके, हम अपने क्षेत्र में ट्राइटन के सटीक निर्देशांक निर्धारित कर सकते थे। इससे हमें बेहतर गति सटीकता के लिए एक क्लोज़्ड-लूप सिस्टम लागू करने की अनुमति मिली।
Optitrack सिस्टम ने, ठीक से कैलिब्रेट किए जाने पर, लगभग 120Hz पर उप-मिलीमीटर सटीकता के साथ स्थिति और अभिविन्यास डेटा प्रदान किया। प्रत्येक ट्राइटन के तीन परावर्तक मार्कर एक अनूठा त्रिकोणीय पैटर्न बनाते थे, जिसे सिस्टम एक कठोर शरीर के रूप में ट्रैक कर सकता था। निर्देशांक प्रणाली को इस प्रकार कैलिब्रेट किया गया था कि (0,0) ट्रैकिंग क्षेत्र के केंद्र में था, और X तथा Y अक्ष कमरे की ज्यामिति के अनुरूप संरेखित थे। लेकिन इस सटीक स्थिति डेटा के बावजूद, ट्राइटन को अभी भी गति में संघर्ष करना पड़ रहा था।
इस सेटअप के साथ, ट्राइटन को हम जो एक मुख्य विशेषता देना चाहते थे, वह थी किसी विशिष्ट निर्देशांक तक जाने की क्षमता। उपयोगकर्ता, या उनका सॉफ़्टवेयर, अपने रुचि-क्षेत्र के भीतर एक (x, y) निर्देशांक प्रदान कर सकता था। फिर रोबोट उस निर्देशांक तक यथासंभव तेज़, सटीक, और निर्बाध रूप से जाएगा। जब मैं जुड़ा, यह विशेषता मौजूद थी, लेकिन यह बहुत अच्छी तरह काम नहीं कर रही थी। यहाँ एक साधारण एनीमेशन है जो दिखाता है कि मूल मूविंग लॉजिक कैसे काम करता था:
मैंने मूल समाधान को क्रिया में रिकॉर्ड नहीं किया था, इसलिए मैंने यह साधारण एनीमेशन बनाया है जो आपको पुराने मूविंग लॉजिक को क्रिया में दिखाता है। यह जानते हुए, इस विधि की क्या समस्याएँ हैं?
- यह वास्तव में बहुत धीमा है
- यह रोबोट से किसी विशिष्ट बिंदु तक जाने के लिए बहुत अधिक जगह घेरवाता है। इससे हमारे लिए इस समाधान का उपयोग करना कठिन हो गया जब कई ट्राइटन इधर-उधर घूम रहे थे।
तो यह व्यवहार क्यों हो रहा था? समस्या यह थी कि ट्राइटन पहले मुड़ता था, अपनी अल्फ़ा बदलता था, जब तक कि वह एक विशिष्ट त्रुटि-सीमा के भीतर लक्ष्य बिंदु की ओर न हो जाए। फिर वह तेज़ी से आगे बढ़ता, और उसके बाद जब उसकी थीटा लक्ष्य से एक निश्चित मात्रा तक हट जाती, तो वह रुक जाता और फिर से मुड़ना शुरू करता जब तक कि अल्फ़ा लक्ष्य गंतव्य के लिए उस स्वीकार्य सीमा के भीतर न आ जाए। फिर वह दोबारा तेज़ी से आगे बढ़ता और यह तब तक करता रहता जब तक वह बिंदु तक न पहुँच जाए। साथ ही, जैसे-जैसे वह लक्ष्य बिंदु के और करीब आता जाता, यह सुनिश्चित करने के लिए घुमाने और तेज़ी से आगे बढ़ने की गति बहुत धीमी होती जाती कि वह लक्ष्य से आगे न निकल जाए। इसके परिणामस्वरूप ट्राइटन की गति अप्राकृतिक हो गई, लक्ष्य बिंदु तक पहुँचने में बहुत अधिक समय लगा, और किसी विशिष्ट लक्ष्य बिंदु तक पहुँचने के लिए बहुत अधिक क्षेत्र की आवश्यकता पड़ी। इसलिए इन सभी समस्याओं को देखते हुए, और यह ध्यान में रखते हुए कि ट्राइटन परियोजना के विकास के लिए यह विशेषता कितनी आवश्यक थी, जब मैंने एचसीआर लैब में काम करना शुरू किया, तो मेरा पहला कार्य अधिक प्रभावी समाधान विकसित करना था, जो ट्राइटन को किसी लक्ष्य बिंदु तक बेहतर ढंग से नेविगेट करने में सक्षम बना सके।
यह जानकर, मैंने इस समस्या के सर्वोत्तम संभव समाधान पर शोध करने में बहुत समय लगाया। विडंबना यह थी कि मैं माइंस में Introduction to Feedback Control Systems (EENG307) नामक एक कक्षा ले रहा था। उस कक्षा की शुरुआत में, हमने Open-loop controllers और Closed-loop controllers की अवधारणा के बारे में सीखा। यह जानने के बाद, और उस कक्षा के प्रोफेसर तथा मेरे बुद्धिमान रूममेट के साथ कुछ चर्चा के बाद, यह स्पष्ट हो गया कि ट्राइटन को एक लक्ष्य बिंदु तक पहुँचाने का यह लक्ष्य एक क्लोज़्ड-लूप सिस्टम समस्या थी।
अब, व्यापक परीक्षण और शोध के बाद, मैंने ट्राइटनों के लिए दो अलग-अलग नियंत्रक दृष्टिकोण विकसित किए:
विधि 1: दूरी-थीटा नियंत्रक
इस दृष्टिकोण में दो अलग-अलग आनुपातिक नियंत्रक एक साथ चल रहे थे:
- दूरी नियंत्रक: लक्ष्य तक की यूक्लिडियन दूरी की गणना करता था और आगे/पीछे की वेग निर्धारित करने के लिए एक आनुपातिक लाभ लागू करता था
- थीटा नियंत्रक: रोबोट की वर्तमान दिशा और लक्ष्य की इच्छित दिशा के बीच कोणीय त्रुटि की गणना करता था, और घूर्णन वेग के लिए एक अलग आनुपातिक लाभ लागू करता था
एल्गोरिदम लगातार लक्ष्य तक की यूक्लिडियन दूरी और रोबोट की वर्तमान दिशा तथा इच्छित दिशा के बीच कोणीय त्रुटि की गणना करता था। रैखिक और कोणीय वेग उत्पन्न करने के लिए क्रमशः दो अलग-अलग आनुपातिक लाभ लागू किए जाते थे।
इसके परिणामस्वरूप ट्राइटन स्वाभाविक रूप से लक्ष्य की ओर मुड़ते हुए एक साथ आगे बढ़ता था, जिससे चिकने वक्र पथ बनते थे। इसका मुख्य लाभ यह था कि रोबोट हमेशा अपना अगला मुख गंतव्य की ओर रखता था, जो कैमरा-आधारित अनुप्रयोगों के लिए महत्वपूर्ण था।
विधि 2: X-Y समन्वय नियंत्रक
इस दृष्टिकोण ने रोबोट को एक 2D प्लॉटर की तरह माना, जिसमें X और Y गति का स्वतंत्र नियंत्रण था:
- X नियंत्रक: X-निर्देशांक त्रुटि के आधार पर सीधे पूर्व-पश्चिम गति को नियंत्रित करता था
- Y नियंत्रक: Y-निर्देशांक त्रुटि के आधार पर सीधे उत्तर-दक्षिण गति को नियंत्रित करता था
कार्यान्वयन ने X और Y समन्वय त्रुटियों की स्वतंत्र रूप से गणना की, अलग-अलग अनुपाती लाभ लागू किए, और फिर इन वैश्विक वेग घटकों को घूर्णन मैट्रिसों का उपयोग करके रोबोट के स्थानीय समन्वय फ्रेम में रूपांतरित किया। यह रूपांतरण आवश्यक था क्योंकि रोबोट की ओम्नी-व्हील ड्राइवट्रेन को वेग अपने ही संदर्भ फ्रेम में चाहिए थे, न कि वैश्विक समन्वयों में। इस विधि ने लक्ष्यों तक सबसे सीधे पथ उत्पन्न किए और यह काफी तेज़ थी, लेकिन रोबोट की अभिविन्यास दिशा भटक सकती थी क्योंकि कोई स्पष्ट उन्मुखीकरण नियंत्रण नहीं था।
विधि #1 के लिए, मैंने इस विधि के बारे में अपनी Move Turtle (TurtleSim) ब्लॉग में पूरी तरह विस्तार से बताया है। मैं आपको दृढ़ता से सलाह देता हूँ कि आप यह ब्लॉग पढ़ें ताकि PID नियंत्रक सामान्य रूप से कैसे काम करते हैं, और विधि #1 कैसे काम करती है, इसकी सभी जानकारियाँ मिल सकें। मैंने विधि #1 को ROS के TurtleSim का उपयोग करके विकसित किया, फिर उस कोड को Triton पर स्थानांतरित किया और उसे अधिक वास्तविक-जगत के परिवेश के अनुसार अद्यतन किया।
विधि #2 ने एक काफी अलग लेकिन उतनी ही प्रभावी पद्धति का उपयोग किया। रोबोट के उन्मुखीकरण और लक्ष्य तक दूरी के बारे में सोचने के बजाय, यह विधि गति को निर्देशांक समतल की समस्या की तरह मानती है। नियंत्रक निरंतर X और Y दोनों दिशाओं में त्रुटि की अलग-अलग गणना करता है। उदाहरण के लिए, यदि रोबोट को (0,0) से (2,3) तक जाना है, तो यह इसे X में 2 मीटर की त्रुटि और Y में 3 मीटर की त्रुटि को सुधारने की आवश्यकता के रूप में देखता है। दो अनुपाती नियंत्रक एक साथ काम करते थे: एक X-त्रुटि के आधार पर रोबोट के X दिशा के वेग को समायोजित करता था, जबकि दूसरा Y-त्रुटि के आधार पर Y-दिशा की गति को संभालता था। इससे लक्ष्य तक एक अधिक सीधा पथ बना, जो 3D प्रिंटर हेड के चलने के समान था, और सहज विकर्ण गतियों की अनुमति मिली। रोबोट को अपने लक्ष्य की ओर स्पष्ट रूप से मुड़ने की आवश्यकता नहीं थी, जिससे यह विधि विशेष रूप से तंग स्थानों में या जब सटीक स्थिति निर्धारण की आवश्यकता हो, तब बहुत प्रभावी बन गई।
दोनों विधियाँ मूल दृष्टिकोण की तुलना में काफी तेज़ और अधिक विश्वसनीय साबित हुईं। इन नई विधियों को क्रियान्वयन में देखने के लिए, Tritons in Action Playlist देखें, जो नई विधियों के साथ सभी Tritons को क्रियाशील दिखाती है।
जो पहले एक साधारण बिंदु-से-बिंदु गति के लिए 30-45 सेकंड लेता था, अब लगभग 8-12 सेकंड लेता था। इससे भी महत्वपूर्ण बात यह थी कि Triton अब तंग स्थानों में अधिक कुशलता से नेविगेट कर सकता था, जो हमारे बहु-रोबोट परिदृश्यों में उपयोगी हो गया।
विकास की चुनौतियाँ और डिबगिंग
इन नियंत्रकों को लागू करना सीधा नहीं था और इसमें कई महत्वपूर्ण डिबगिंग चुनौतियाँ शामिल थीं:
समन्वय प्रणाली रूपांतरण: सबसे कठिन पहलुओं में से एक समन्वय रूपांतरण को सही करना था। Optitrack प्रणाली ने अपने स्वयं के समन्वय फ्रेम में डेटा प्रदान किया, रोबोट का अपना स्थानीय समन्वय फ्रेम था, और मुझे इनके बीच सटीक रूप से रूपांतरण करना था। शुरुआती कार्यान्वयनों में रोबोट गलत दिशाओं में चल रहे थे क्योंकि मैंने घूर्णन मैट्रिक्स की गणनाओं को गड़बड़ा दिया था।
वास्तविक-जगत बनाम आदर्श व्यवहार: सबसे बड़ी चुनौती उन वास्तविक-जगत कारकों का हिसाब रखना था जो पाठ्यपुस्तक के नियंत्रण सिद्धांत में दिखाई नहीं देते। रोबोट के पहियों में अलग-अलग घर्षण विशेषताएँ थीं, मोटर एक जैसी प्रतिक्रिया नहीं देते थे, और Optitrack से नियंत्रण सॉफ़्टवेयर से रोबोट के Arduino तक संचार श्रृंखला में हमेशा कुछ विलंब रहता था। मैंने इन भौतिक वास्तविकताओं का हिसाब रखने के लिए अनुपाती लाभों को ट्यून करने और डेडबैंड फ़िल्टर जोड़ने में हफ्तों बिताए।
दोलन और स्थिरता समस्याएँ: मेरे शुरुआती कार्यान्वयनों में दोलन की समस्याएँ थीं, जहाँ रोबोट अपने लक्ष्यों से आगे निकल जाते थे और इधर-उधर डगमगाते थे। इससे मुझे PID नियंत्रकों में अवकल पदों के महत्व और उचित लाभ ट्यूनिंग की आवश्यकता के बारे में सीख मिली। अंततः मैंने पूर्ण PID के बजाय सावधानीपूर्वक ट्यून किए गए लाभों के साथ मुख्यतः अनुपाती नियंत्रण को अपनाया, क्योंकि अधिकांश अनुप्रयोगों के लिए प्रणाली का अंतर्निहित अवमंदन पर्याप्त था।
बहु-रोबोट हस्तक्षेप: जब कई रोबोट एक साथ संचालित होते थे, तो मुझे अप्रत्याशित हस्तक्षेप पैटर्न मिले। रोबोट कभी-कभी एक ही स्थान के लिए “लड़ते” थे या ऐसी मृत-लॉक स्थितियाँ बना देते थे जहाँ वे एक-दूसरे को अनिश्चितकाल तक रोक देते थे। इससे मुझे समन्वय तंत्र और टक्कर-निवारण एल्गोरिदम लागू करने पड़े।
मल्टी-ट्राइटन नियंत्रण प्रणाली
एक बार जब मैंने एकल Triton की गति की समस्या हल कर ली, तो प्रयोगशाला की अगली चुनौती कई Tritons को एक साथ काम करवाने की थी। यह मेरे मुख्य ध्यान क्षेत्रों में से एक बन गया और अंततः परियोजना में एक महत्वपूर्ण योगदान साबित हुआ।
मूल प्रणाली एक समय में केवल एक Triton को नियंत्रित कर सकती थी, जिससे अनुसंधान की संभावनाएँ गंभीर रूप से सीमित हो जाती थीं। प्रयोगशाला ऐसे परिदृश्यों का अनुकरण करना चाहती थी जहाँ कई स्वायत्त वाहनों को अपनी गतियों का समन्वय करना हो, जैसे स्व-चालित कारें एक-दूसरे से संचार करके यातायात प्रवाह को अनुकूलित करती हैं और बेहतर SLAM (Simultaneous Localization and Mapping) मानचित्र बनाती हैं।
इसे हल करने के लिए, मैंने Python की multiprocessing लाइब्रेरी का उपयोग करके एक बहु-प्रसंस्करण दृष्टिकोण लागू किया। प्रत्येक Triton को अपनी समर्पित प्रक्रिया मिली जो स्वतंत्र रूप से चल सकती थी, जबकि फिर भी एक केंद्रीय नियंत्रण प्रणाली द्वारा समन्वित रहती थी। इससे कई Tritons एक साथ चल सकते थे बिना एक-दूसरे के नियंत्रण लूप में हस्तक्षेप किए।
बहु-रोबोट संरचना डिज़ाइन
मेरे द्वारा विकसित प्रणाली संरचना में कई प्रमुख घटक शामिल थे:
मुख्य नियंत्रक प्रक्रिया: यह केंद्रीय समन्वयक के रूप में काम करती थी, उपयोगकर्ता इंटरफ़ेस अंतःक्रियाओं, पथ नियोजन, और रोबोटों के बीच उच्च-स्तरीय समन्वय को संभालती थी। यह वैश्विक स्थिति बनाए रखती थी और व्यक्तिगत रोबोट प्रक्रियाओं को आदेश वितरित करती थी।
व्यक्तिगत रोबोट प्रक्रियाएँ: प्रत्येक Triton की अपनी समर्पित Python प्रक्रिया थी जो निम्नलिखित संभालती थी:
- लगभग 50Hz पर वास्तविक-समय PID नियंत्रण गणनाएँ
- रोबोट के हार्डवेयर (Arduino/Jetson) के साथ संचार
- स्थानीय पथ निष्पादन और बाधा-निवारण
- स्थिति रिपोर्टिंग वापस मुख्य नियंत्रक को
साझा स्मृति संचार: मैंने प्रक्रियाओं के बीच कुशल संचार सक्षम करने के लिए Python के multiprocessing.shared_memory और Queue ऑब्जेक्ट्स का उपयोग किया। इससे नेटवर्क संचार के ओवरहेड के बिना वास्तविक-समय समन्वय संभव हुआ।
समन्वय तंत्र: जब कई रोबोटों को समन्वय करना पड़ता था (जैसे टक्करों से बचना), तब संघर्षों को रोकने के लिए मैंने सेमाफोर और लॉक लागू किए, जो रोबोटों को कार्यस्थान के कुछ क्षेत्रों तक विशेष पहुँच का अनुरोध करने की अनुमति देते थे।
चुनौती यह सुनिश्चित करना था कि सभी रोबोट अपने नियंत्रण लूप स्वतंत्र रूप से चला सकें, जबकि फिर भी वैश्विक समन्वय बनाए रखें। प्रत्येक रोबोट प्रक्रिया अपनी PID गणनाएँ चलाती थी और मोटर आदेश सीधे हार्डवेयर को भेजती थी, जबकि मुख्य प्रक्रिया टक्कर-निवारण और पथ नियोजन जैसे उच्च-स्तरीय समन्वय को संभालती थी।
![]() |
![]() |
बहु-ट्राइटन प्रणाली ने बिल्कुल नई शोध संभावनाएँ खोल दीं। अब हम निम्नलिखित का अनुकरण कर सकते थे:
- वाहन-से-वाहन संचार परिदृश्य
- बाधा-निवारण के साथ समन्वित पथ नियोजन
- झुंड रोबोटिक्स व्यवहार
- बहु-एजेंट SLAM मानचित्रण
- संरचना नियंत्रण और अनुसरण व्यवहार
यहाँ प्रयोगशाला सेटअप कैसा दिखता था जब कई Tritons एक साथ चल रहे थे:
![]() |
![]() |
मैंने एक उपयोगकर्ता-अनुकूल इंटरफ़ेस भी विकसित किया जिससे शोधकर्ता प्रत्येक Triton के लिए दृश्य रूप से पथ परिभाषित कर सकते थे। आप सचमुच वह पथ बना सकते थे जिसे आप चाहते थे कि प्रत्येक रोबोट अनुसरण करे, और वे इन पथों को पूर्ण समन्वय के साथ निष्पादित करते थे। यह जटिल प्रयोगों को स्थापित करने के लिए अत्यंत उपयोगी था, बिना हर गति को मैन्युअल रूप से कोड किए।
यह प्रणाली एक साथ 5 Tritons तक संभाल सकती थी, जिनमें से प्रत्येक अपने स्वयं के PID नियंत्रक चला रहा था जबकि केंद्रीय नियंत्रण प्रणाली के माध्यम से समन्वित था। प्रदर्शन प्रभावशाली था, जिसमें सभी रोबोट टीम के रूप में एक साथ काम करते हुए अपनी व्यक्तिगत सटीकता बनाए रख रहे थे।
यहाँ एक प्लेलिस्ट है जो Tritons को क्रियाशील दिखाती है, एकल-रोबोट नियंत्रण से लेकर बहु-रोबोट समन्वय तक: Tritons in Action Playlist
गहराई संवेदक एकीकरण और समन्वय सुधार
एक और प्रमुख प्रगति जिस पर मैंने काम किया, उसमें प्रत्येक Triton पर लगे Intel RealSense D435 गहराई कैमरों का उपयोग शामिल था। जबकि Optitrack प्रणाली ने हमें अत्यंत सटीक स्थिति डेटा दिया, मैं यह पता लगाना चाहता था कि रोबोट अपने ऑनबोर्ड सेंसरों का उपयोग करके अपनी स्थानिक जागरूकता कैसे सुधार सकते हैं और समन्वय त्रुटियों को कैसे ठीक कर सकते हैं।
विचार यह था कि Tritons अपने गहराई संवेदकों का उपयोग अपने आसपास के अन्य Tritons का पता लगाने और उनकी स्थितियों की तुलना करने के लिए कर सकते थे। यह कई उद्देश्यों की पूर्ति करता:
-
त्रुटि सुधार: यदि Optitrack प्रणाली में कोई अंशांकन ड्रिफ्ट या अस्थायी अवरोध होता, तो रोबोट एक-दूसरे की स्थितियों की दृश्य पुष्टि का उपयोग करके सटीक समन्वय प्रणालियाँ बनाए रख सकते थे।
-
उन्नत SLAM: कई रोबोटों को गहराई संवेदकों के साथ एक साथ काम करने देकर, हम अनावश्यक डेटा बिंदुओं के साथ पर्यावरण के कहीं अधिक समृद्ध मानचित्र बना सकते थे।
-
टकराव से बचाव: वास्तविक समय की गहराई संवेदन रोबोटों को एक-दूसरे का पता लगाने और उनसे बचने की अनुमति देगी, भले ही केंद्रीय नियंत्रण प्रणाली में संचार विलंब हों।
मैंने ऐसे एल्गोरिदम के साथ प्रयोग करना शुरू किया जो Tritons को यह करने में सक्षम बनाएँगे:
- उनकी विशिष्ट त्रिकोणीय आकृति और परावर्तक गोले के मार्करों का उपयोग करके अन्य Tritons का पता लगाना
- गहराई डेटा का उपयोग करके सापेक्ष स्थितियों और अभिविन्यासों की गणना करना
- विसंगतियों की पहचान करने के लिए इन मापों की Optitrack डेटा से तुलना करना
- सटीकता बनाए रखने के लिए संभवतः अपने निर्देशांक तंत्र को वास्तविक समय में समायोजित करना
कंप्यूटर दृष्टि प्रयोग
मैंने कई चरणों में काम करने वाली एक कंप्यूटर दृष्टि पाइपलाइन के साथ प्रयोग करने में काफी समय बिताया:
![]() |
![]() |
![]() |
![]() |
![]() |
गहराई डेटा प्रसंस्करण: Intel RealSense D435 ने RGB और गहराई दोनों डेटा धाराएँ प्रदान कीं। मैं मुख्य रूप से गहराई डेटा के साथ काम कर रहा था, जो 30Hz पर दूरी मापों के 640x480 एरे के रूप में आता था। पहली चुनौती इस शोरयुक्त गहराई डेटा को फ़िल्टर करके अर्थपूर्ण ज्यामितीय जानकारी निकालना थी।
वस्तु पहचान प्रयास: मैंने बहु-चरणीय पहचान एल्गोरिदम के साथ प्रयोग किया। मुझे गहराई छवि को विभाजित करके फर्श स्तर पर वस्तुओं की पहचान करने में कुछ सफलता मिली (दीवारों, छत आदि को फ़िल्टर करते हुए) और उन वस्तुओं की तलाश करने में भी जिनकी आकार विशेषताएँ सही हों, लगभग 0.3x0.3 मीटर के पदचिह्न के साथ। मैंने विशिष्ट Triton प्रोफ़ाइल की पहचान करने के लिए किनारा पहचान और ज्यामितीय विश्लेषण का उपयोग करने की कोशिश की, लेकिन परिणाम मिश्रित रहे।
मार्कर पहचान प्रयोग: प्रत्येक Triton पर मौजूद तीन परावर्तक गोले सबसे आशाजनक पहचान विशेषता लग रहे थे। मैंने गहराई छवि में तीन उज्ज्वल बिंदुओं के विशिष्ट त्रिकोणीय पैटर्न की पहचान करने के लिए ब्लॉब पहचान एल्गोरिदम के साथ प्रयोग किया। नियंत्रित प्रकाश स्थितियों में मुझे कुछ आशाजनक परिणाम मिले, हालांकि यह लगातार विश्वसनीय नहीं था।
निर्देशांक संलयन अनुसंधान: मैंने Optitrack डेटा के साथ दृष्टि-आधारित स्थिति अनुमानों को मिलाने के तरीकों पर शोध किया, जिसमें मूल Kalman फ़िल्टर कार्यान्वयन शामिल थे। विचार यह था कि उपलब्ध होने पर Optitrack डेटा को अधिक महत्व दिया जाए, लेकिन आवश्यकता पड़ने पर दृष्टि पर वापस जाया जाए, हालांकि मैं अपने प्रयोगशाला में समय समाप्त होने से पहले इसे पूरी तरह कार्यशील नहीं बना सका।
प्रदर्शन चुनौतियाँ: इन सभी प्रसंस्करण कार्यों को रोबोट के नियंत्रण लूप्स के साथ-साथ वास्तविक समय में चलाना चुनौतीपूर्ण साबित हुआ। मैंने लगभग 10-15Hz पर एल्गोरिदम चलाने के लिए अनुकूलन दृष्टिकोणों के साथ प्रयोग किया, Jetson Nano की प्रसंस्करण क्षमताओं को अधिक बोझिल किए बिना।
दुर्भाग्य से, मुझे यह कंप्यूटर दृष्टि कार्य पूरी तरह समाप्त करने से पहले ही प्रयोगशाला छोड़नी पड़ी। हालाँकि मुझे कुछ आशाजनक प्रारंभिक परिणाम मिले और गहराई संवेदक प्रसंस्करण के बारे में बहुत कुछ सीखने को मिला, मैं प्रणाली को पूरी तरह विश्वसनीय स्थिति तक नहीं पहुँचा सका। यह अनुसंधान की एक रोचक दिशा बनी रही, जिस पर अन्य लोग आगे काम कर सकते थे।
यहाँ मेरे कंप्यूटर दृष्टि एल्गोरिदम का परीक्षण करते हुए एक वीडियो है:
मेरे प्रयोगों के दौरान गहराई संवेदक का दृश्य कुछ ऐसा दिखता था:
हालाँकि मैंने गहराई संवेदक एकीकरण कार्य पूरा नहीं किया, यह अवधारणा स्व-चालित कार परिदृश्यों का अनुकरण करने जैसे अनुप्रयोगों के लिए आशाजनक थी, जहाँ वाहनों को केवल बाहरी अवसंरचना पर निर्भर हुए बिना एक-दूसरे के प्रति जागरूक रहना होता है। जिस अनुसंधान दिशा की मैंने खोज शुरू की थी, वह भविष्य में प्रयोगशाला के कार्य में योगदान दे सकती थी।
प्रलेखन और ज्ञान संरक्षण
HCR Lab में मेरे सबसे महत्वपूर्ण योगदानों में से एक, और शायद जिस पर मुझे सबसे अधिक गर्व है, वह सभी परियोजना प्रलेखन को व्यवस्थित और संरक्षित करना था। जब मैं प्रयोगशाला में शामिल हुआ, तब Triton परियोजना का ज्ञान कई प्लेटफ़ॉर्म और प्रारूपों में बिखरा हुआ था। महत्वपूर्ण जानकारी निम्न में फैली हुई थी:
- विभिन्न Google Drive खाते, जो अलग-अलग छात्रों के थे जिन्होंने स्नातक कर लिया था
- इनबॉक्सों में दबी पुरानी ईमेल
- यादृच्छिक Dropbox फ़ोल्डर
- कई GitHub रिपॉज़िटरी
- असंगत संगठन वाली GitLab रिपॉज़िटरी
- हस्तलिखित नोट्स जिन्हें केवल विशिष्ट लोग ही समझ सकते थे
यह खंडित प्रलेखन एक बहुत बड़ी समस्या थी। नए छात्र केवल शुरुआत करने का तरीका समझने में ही हफ्तों लगा देते थे, और जब लोग स्नातक हो जाते या प्रयोगशाला छोड़ देते, तब मूल्यवान ज्ञान लगातार खोता रहता था।
मैंने इस समस्या को व्यवस्थित रूप से हल करने का बीड़ा उठाया। मैंने Triton परियोजना से संबंधित दस्तावेज़, कोड, वीडियो और नोट्स का हर टुकड़ा खोजने में अनगिनत घंटे लगाए। फिर मैंने सब कुछ एक केंद्रीकृत GitLab रिपॉज़िटरी में एक स्पष्ट, तार्किक संरचना के साथ व्यवस्थित किया।
![]() |
![]() |
केंद्रीकृत प्रलेखन में शामिल थे:
- निर्माण मार्गदर्शिकाएँ: शुरू से Tritons को जोड़ने के लिए चरण-दर-चरण निर्देश
- सॉफ़्टवेयर सेटअप: विकास वातावरण स्थापित करने के लिए पूर्ण मार्गदर्शिकाएँ
- कोड प्रलेखन: स्पष्ट व्याख्याओं के साथ अच्छी तरह टिप्पणी किया हुआ कोड
- हार्डवेयर विनिर्देश: विस्तृत पुर्ज़ों की सूचियाँ, वायरिंग आरेख, और PCB डिज़ाइन
- समस्या निवारण मार्गदर्शिकाएँ: सामान्य समस्याएँ और उनके समाधान
- वीडियो ट्यूटोरियल: मैंने YouTube पर निर्देशात्मक वीडियो बनाए और अपलोड किए, जिनमें विस्तृत Optitrack कैलिब्रेशन ट्यूटोरियल शामिल थे:
मैंने यह भी सुनिश्चित करने के लिए प्रलेखन मानक स्थापित किए कि भविष्य के योगदान व्यवस्थित और सुलभ हों। मेरे द्वारा बनाई गई रिपॉज़िटरी संरचना प्रयोगशाला में होने वाले सभी बाद के कार्यों की नींव बन गई।
मौजूदा प्रलेखन को केवल व्यवस्थित करने से आगे बढ़कर, मैंने कई मौलिक मार्गदर्शिकाएँ और ट्यूटोरियल बनाए जिन्होंने ज्ञान आधार में महत्वपूर्ण खाली स्थानों को भरा। इनमें नए प्रयोगशाला सदस्यों के लिए विस्तृत सेटअप निर्देश, व्यापक समस्या निवारण मार्गदर्शिकाएँ, और जटिल प्रक्रियाओं के वीडियो वॉकथ्रू शामिल थे।
इसका प्रभाव तत्काल और स्थायी था। नए छात्र हफ्तों के बजाय दिनों में काम की गति पकड़ सकते थे। मेरे द्वारा बनाई गई प्रलेखन रिपॉज़िटरी आज भी प्रयोगशाला द्वारा उपयोग की जा रही है, मेरे वहाँ से जाने के वर्षों बाद भी। यह Triton परियोजना के लिए एकमात्र सत्य स्रोत बन गई और भविष्य के शोधकर्ताओं के लिए अनगिनत घंटे/दिन बचाए।
मार्गदर्शन और ज्ञान हस्तांतरण
HCR Lab में मेरे समय का सबसे संतोषजनक पहलू दूसरों का मार्गदर्शन करने और अपने द्वारा अर्जित ज्ञान को साझा करने का अवसर था। जैसे-जैसे मेरा काम आगे बढ़ा और मैं Triton प्रणालियों के साथ अधिक अनुभवी होता गया, मैंने नए टीम सदस्यों को प्रशिक्षित करने की बढ़ती ज़िम्मेदारी संभाली।
प्रयोगशाला उत्तराधिकारियों का मार्गदर्शन
चूँकि मैं अंततः अपनी डिग्री पूरी करने और eBay में अपने काम पर ध्यान केंद्रित करने के लिए प्रयोगशाला छोड़ने की तैयारी कर रहा था, मैंने यह सुनिश्चित किया कि दो लोगों को अच्छी तरह प्रशिक्षित करूँ जो मेरी अनुपस्थिति में Triton परियोजना का कार्यभार संभालेंगे। यह केवल उन्हें यह दिखाने के बारे में नहीं था कि चीज़ें कैसे काम करती हैं; यह यह सुनिश्चित करने के बारे में था कि वे अंतर्निहित सिद्धांतों को सचमुच समझें ताकि वे नवाचार जारी रख सकें।
मैंने उनके साथ हफ्तों तक नज़दीकी रूप से काम किया, और निम्न विषयों पर गया:
- PID नियंत्रण प्रणालियों की गणितीय नींव
- कई रोबोटों के समन्वय के लिए बहु-प्रसंस्करण संरचना
- गहराई संवेदक एकीकरण और कंप्यूटर दृष्टि एल्गोरिदम
- प्रलेखन प्रणाली और उसे कैसे बनाए रखा जाए
- डीबगिंग तकनीकें और सामान्य विफलता मोड
ज्ञान हस्तांतरण अविश्वसनीय रूप से व्यापक था। हमने साथ मिलकर वास्तविक डीबगिंग सत्र किए, मैंने उनसे मौजूदा कोड में संशोधन और विस्तार करवाया, और मैंने सुनिश्चित किया कि वे स्वतंत्र रूप से शुरू से नए Tritons सेटअप कर सकें।
उच्च विद्यालय मार्गदर्शन कार्यक्रम
शायद इससे भी अधिक संतोषजनक मेरा अनुभव प्रयोगशाला के आउटरीच कार्यक्रम के माध्यम से एक उच्च विद्यालय के छात्र का मार्गदर्शन करना था। यह किसी को उसकी शिक्षा के एक निर्णायक चरण में रोबोटिक्स, कंप्यूटर विज्ञान और अनुसंधान से परिचित कराने का एक शानदार अवसर था।
मैंने एक व्यापक पाठ्यक्रम तैयार किया जिसमें निम्न शामिल थे:
कंप्यूटर विज्ञान की बुनियादें:
- मुख्य भाषा के रूप में Python का उपयोग करते हुए प्रोग्रामिंग अवधारणाएँ
- ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग का परिचय
- एल्गोरिदम और डेटा संरचनाओं की समझ
रोबोटिक्स अवधारणाएँ:
- सेंसर कैसे काम करते हैं और उनसे इंटरफ़ेस कैसे किया जाए
- एक्चुएटर नियंत्रण और मोटर प्रणालियाँ
- स्वायत्त प्रणालियों और प्रतिपुष्टि नियंत्रण की मूल बातें
ROS (रोबोट ऑपरेटिंग सिस्टम):
- publish/subscribe संदेश प्रणाली को समझना
- नोड्स और सेवाएँ बनाना
- लॉन्च फ़ाइलों और पैरामीटर सर्वरों के साथ काम करना
व्यावहारिक परियोजना कार्य:
- हमने Triton के सिर पर LED प्रणाली को नियंत्रित करने वाली एक ROS सेवा बनाने पर सहयोग किया
- उसने हमारे मौजूदा प्रणालियों के साथ एकीकृत होने वाला स्वच्छ, प्रलेखित कोड लिखना सीखा
- उसके द्वारा बनाई गई LED नियंत्रण सेवा Triton कोडबेस का एक स्थायी हिस्सा बन गई
इस मार्गदर्शन को विशेष रूप से खास बनाने वाली बात यह थी कि मैं यह देख रहा था कि वह लगभग प्रोग्रामिंग के बारे में कुछ भी न जानने से सक्रिय अनुसंधान परियोजना में सार्थक कोड योगदान देने तक कैसे पहुँची। वह “चर क्या है?” पूछने से लेकर ROS संचार समस्याओं का स्वतंत्र रूप से डीबग करने और अपने स्वयं के सेवा कार्यान्वयन लिखने तक पहुँच गई।
उसके द्वारा विकसित LED नियंत्रण प्रणाली ने शोधकर्ताओं को सरल ROS कमांड्स के माध्यम से Triton की सिर की LEDs के रंग और पैटर्न आसानी से बदलने की अनुमति दी। यह सरल लग सकता है, लेकिन इसके लिए ROS संरचना, हार्डवेयर इंटरफ़ेसिंग, और उचित सॉफ़्टवेयर डिज़ाइन पैटर्न की समझ आवश्यक थी। उसका योगदान आज भी प्रयोगशाला में उपयोग किया जा रहा है।
मेंटरशिप मेरे लिए उतनी ही शैक्षिक थी जितनी उसके लिए थी। इसने मुझे जटिल अवधारणाओं को पचने योग्य हिस्सों में तोड़ने के लिए मजबूर किया और सचमुच यह सोचने पर मजबूर किया कि हम जो कर रहे थे उसकी बुनियादी बातें क्या थीं। किसी और को सिखाने से मैं एक बेहतर इंजीनियर और शोधकर्ता बना।
पीएचडी शोध के साथ सहयोग
लैब में मेरे समय के सबसे पेशेवर रूप से संतोषजनक पहलुओं में से एक पेंग के साथ मिलकर काम करना था, जो एक पीएचडी छात्र था जिसका शोध स्व-चालित कार एल्गोरिदम पर केंद्रित था। Triton प्रणाली में मैंने जो सॉफ्टवेयर सुधार किए थे, उन्होंने उसके डॉक्टरेट शोध को समर्थन देने में मदद की।
पेंग के शोध के लिए स्व-चालित कार परिदृश्यों का अनुकरण करने हेतु सटीक, विश्वसनीय बहु-रोबोट समन्वय की आवश्यकता थी। गति नियंत्रण और बहु-रोबोट प्रणालियों में मेरे सुधारों से पहले, ये प्रयोग करना बहुत अधिक कठिन था। रोबोट धीमे थे, कम सटीक थे, और उतनी प्रभावी ढंग से साथ काम नहीं कर सकते थे।
मेरे योगदानों ने पेंग के शोध में कई क्षेत्रों में मदद की:
चौराहा प्रबंधन अध्ययन: बेहतर PID नियंत्रकों और बहु-रोबोट समन्वय के साथ, पेंग ऐसे चौराहा परिदृश्यों का अनुकरण कर सकता था जहाँ कई “वाहनों” (Tritons) को अपनी गतियों का समन्वय करना होता था। बेहतर समय-निर्धारण और स्थिति-निर्धारण ने इन अध्ययनों को अधिक व्यवहार्य बनाने में मदद की।
वाहन-से-वाहन संचार: मेरे द्वारा विकसित बहु-प्रसंस्करण ढाँचे ने पेंग को अनुकरणित वाहनों के बीच संचार प्रोटोकॉल लागू करने और उनका परीक्षण करने की अनुमति दी। प्रत्येक Triton दूसरों के साथ समन्वय करते हुए निर्णय ले सकता था, कुछ-कुछ वैसे ही जैसे स्व-चालित कारों को काम करना पड़ सकता है।
SLAM और मानचित्रण शोध: डेप्थ सेंसर एकीकरण कार्य ने पेंग को उसकी समकालिक स्थानीयकरण और मानचित्रण शोध के लिए अतिरिक्त डेटा प्रदान किया। समन्वित संवेदन क्षमताओं वाले कई रोबोटों का होना अधिक व्यापक मानचित्रण प्रयोगों को संभव बनाता था।
हमारे सहयोग को विशेष रूप से मूल्यवान बनाने वाली बात यह थी कि यह सिर्फ़ मेरे द्वारा उसके शोध में मदद करना नहीं था, बल्कि एक वास्तविक साझेदारी थी। स्वायत्त वाहनों के सैद्धांतिक पहलुओं की पेंग की समझ ने मेरी व्यावहारिक कार्यान्वयन को दिशा देने में मदद की। उसकी प्रतिक्रिया और आवश्यकताओं ने मुझे प्रणालियों को अधिक मजबूत और सक्षम बनाने के लिए प्रेरित किया।
हमने लैब में साथ मिलकर कई घंटे बिताए, परिदृश्यों को डिबग करते हुए, विभिन्न नियंत्रण रणनीतियों पर चर्चा करते हुए, और यह खोजते हुए कि Triton प्लेटफ़ॉर्म क्या-क्या हासिल कर सकता है। पेंग एक सहकर्मी और एक मित्र, दोनों बन गया, और उसके साथ काम करने से मुझे यह समझने में बहुत कुछ सीखने को मिला कि अकादमिक शोध वास्तव में कैसे काम करता है।
मैंने जो प्रणालियाँ बनाई थीं, वे पेंग के शोध-प्रबंध कार्य का उपयोगी हिस्सा बन गईं। स्वायत्त वाहन प्रौद्योगिकी में शोध को मेरे व्यावहारिक इंजीनियरिंग योगदानों द्वारा समर्थन मिलते देखना वास्तव में संतोषजनक था। इससे इस बात में मेरी रुचि और मजबूत हुई कि कैसे ठोस इंजीनियरिंग और शोध मिलकर उपयोगी परिणाम उत्पन्न कर सकते हैं।
लैब छोड़ने के बाद भी, पेंग और मैं संपर्क में रहे। यह जानना कि मेरे जाने के बाद भी मेरा काम महत्वपूर्ण शोध में योगदान देता रहा, अत्यंत संतोषजनक था।
दृष्टिकोण: विकास का प्री-एलएलएम युग
यह उल्लेखनीय है कि यह सारा काम सॉफ्टवेयर विकास के प्री-एलएलएम युग में पूरा किया गया था। यह सब 2020 से 2021 (मुख्यतः 2021) के बीच हुआ, ChatGPT, Claude, Perplexity, या Cursor IDE जैसे एआई-संचालित विकास उपकरणों के अस्तित्व में आने से पहले।
कोड की हर पंक्ति शून्य से लिखी गई थी, हर एल्गोरिदम का शोध अकादमिक शोधपत्रों और पाठ्यपुस्तकों के माध्यम से किया गया था, और हर डिबगिंग सत्र में प्रिंट स्टेटमेंट्स, डिबगर, और व्यवस्थित परीक्षण जैसी पारंपरिक विधियाँ शामिल थीं। जब मैं किसी निर्देशांक रूपांतरण या PID ट्यूनिंग समस्या में अटक जाता था, तो मैं बस किसी एआई सहायक से अवधारणा समझाने या समस्या को डिबग करने में मदद माँग नहीं सकता था।
इससे विकास प्रक्रिया काफी अधिक चुनौतीपूर्ण, लेकिन साथ ही अधिक शैक्षिक भी बन गई। मुझे करना पड़ा:
हर चीज़ का मैन्युअल शोध करें: PID नियंत्रण सिद्धांत को समझने के लिए पाठ्यपुस्तकें और अकादमिक शोधपत्र पढ़ने पड़े। निर्देशांक रूपांतरण समझने के लिए गणित को हाथ से काम करके निकालना पड़ा। कार्यान्वयन से पहले हर अवधारणा को पूरी तरह समझना आवश्यक था।
एआई सहायता के बिना डिबग करें: जब रोबोट अप्रत्याशित दिशाओं में चले जाते थे या लक्ष्यों के चारों ओर दोलन करते थे, तो मुझे तर्क को व्यवस्थित रूप से ट्रेस करना, डिबग आउटपुट जोड़ना, और परिकल्पनाओं का एक-एक करके परीक्षण करना पड़ता था। संभावित समस्याएँ सुझाने या त्रुटि पैटर्नों की व्याख्या करने में मदद करने के लिए कोई एआई नहीं था।
मूल सिद्धांतों से सीखें: “रोबोटिक्स के लिए पायथन में बहु-प्रसंस्करण कैसे लागू करूँ?” जैसे प्रश्न जल्दी से पूछने की क्षमता के बिना, मुझे अंतर्निहित अवधारणाओं को गहराई से समझना पड़ा। इसने मुझे समवर्ती प्रोग्रामिंग, नियंत्रण प्रणालियों, और कंप्यूटर दृष्टि में एक ठोस आधार बनाने के लिए मजबूर किया।
दस्तावेज़ीकरण महत्वपूर्ण था: चूँकि मैं बाद में कोड समझाने के लिए एआई पर निर्भर नहीं रह सकता था, इसलिए मुझे अत्यंत स्पष्ट दस्तावेज़ीकरण और टिप्पणियाँ लिखनी पड़ीं। दूसरों को ज्ञान हस्तांतरित करते समय यह अनुशासन अत्यंत मूल्यवान साबित हुआ।
पीछे मुड़कर देखूँ तो, जहाँ आधुनिक एआई उपकरणों ने विकास के कई पहलुओं को तेज़ किया होता, वहीं उनके बिना काम करने ने मुझे समस्याएँ हल करने के गहरे कौशल और अंतर्निहित प्रणालियों की अधिक गहन समझ विकसित करने के लिए मजबूर किया। यह सोचना रोचक है कि आज के विकास उपकरण उपलब्ध होने पर यह परियोजना कितनी भिन्न होती।
छोड़ने का कठिन निर्णय
हालाँकि मुझे HCR लैब में काम करना बहुत पसंद था, 2021 के अंत तक मुझे एक कठिन निर्णय का सामना करना पड़ा जिसका सामना कई छात्र करते हैं: कई अवसरों और जिम्मेदारियों के बीच संतुलन बनाना। मैं एक ही समय में eBay में सॉफ्टवेयर इंजीनियर के रूप में पूर्णकालिक काम कर रहा था, Mines में अपनी कंप्यूटर विज्ञान की डिग्री पूरी कर रहा था, और HCR लैब में शोध में योगदान दे रहा था।
eBay का अवसर महत्वपूर्ण था; यह मेरी पहली प्रमुख सॉफ्टवेयर इंजीनियरिंग भूमिका थी, इसने अमूल्य उद्योग अनुभव प्रदान किया, और मुझे एक स्थिर आय भी दी। हालाँकि, पूर्णकालिक काम, अपनी डिग्री पूरी करना, और शोध में सार्थक योगदान देना—यह सब बनाए रखने की कोशिश करना बस अस्थिर था। कुछ न कुछ छोड़ना ही पड़ता।
जब मैंने डॉ. झांग से अपने पाठ्यक्रम भार को कम करके लैब के काम पर अधिक ध्यान देने की संभावना पर बात की, तो उन्होंने इसका कड़ा विरोध किया। उनका तर्क उचित था: अपनी डिग्री पूरी करना प्राथमिकता होनी चाहिए, और eBay पर उद्योग अनुभव मेरे करियर विकास के लिए मूल्यवान होगा। उनका मानना था कि शोध पर ध्यान केंद्रित करने के लिए कक्षाएँ छोड़ना, भले ही आकर्षक लगे, लेकिन लंबे समय के लिए सबसे अच्छा निर्णय नहीं हो सकता।
तो सितंबर 2021 में, लगभग 8 महीने के गहन लैब कार्य के बाद, मैंने अपनी शोध सहायक भूमिका से पीछे हटने का कठिन निर्णय लिया ताकि मैं अपनी डिग्री पूरी करने और eBay पर अपने काम पर ध्यान केंद्रित कर सकूँ। उस समय लिए गए सबसे कठिन पेशेवर निर्णयों में से एक यही था।
लैब से औपचारिक रूप से निकलने के बाद भी, जब भी किसी को मेरे बनाए सिस्टम्स में मदद की ज़रूरत होती, मैं सहायता प्रदान करता रहा। मैंने आवश्यकतानुसार दस्तावेज़ अपडेट किए, डिबगिंग के बारे में प्रश्नों के उत्तर दिए, और दूरस्थ रूप से समस्याओं का समाधान करने में मदद की। जिन संबंधों को मैंने बनाया था और परियोजना की सफलता में मेरा जो निवेश था, वह केवल इसलिए समाप्त नहीं हो गया क्योंकि मैं अब औपचारिक रूप से टीम का हिस्सा नहीं था।
चिंतन और पीछे मुड़कर देखना
अब, 2025 में, चार साल बाद, मैं खुद को उस समय को जटिल भावनाओं के साथ याद करते हुए पाता हूँ। मेरा करियर पथ मुझे वेब विकास और एआई/एमएल इंजीनियरिंग की गहराइयों में ले गया, ऐसे क्षेत्र जो अविश्वसनीय रूप से संतोषजनक रहे हैं और जिनसे विकास और प्रभाव के लिए अपार अवसर मिले हैं।
फिर भी मेरे भीतर एक हिस्सा है जो “अगर ऐसा होता तो?” सोचता है। रोबोटिक्स वास्तव में, और ईमानदारी से कहूँ तो आज भी, मेरा सच्चा जुनून था। भौतिक प्रणालियों के साथ काम करने में, अपने कोड को वास्तविक दुनिया की गति और व्यवहार में बदलते देखने में, कुछ ऐसा है जिसे वेब विकास और यहाँ तक कि एआई कार्य भी पूरी तरह से दोहरा नहीं सकते।
मैं कभी-कभी सोचता हूँ कि क्या होता अगर मैंने कोई अलग रास्ता चुना होता। क्या होता अगर मैंने रोबोटिक्स शोध में बने रहने का कोई तरीका ढूँढ़ लिया होता? क्या होता अगर मैंने अपनी स्नातक डिग्री पूरी करने के तुरंत बाद स्नातकोत्तर अध्ययन किया होता? क्या होता अगर मैंने उद्योग अनुभव की बजाय लैब के काम को प्राथमिकता दी होती?
लेकिन मैं यह भी समझता हूँ कि हर रास्ते के अपने समझौते होते हैं। वेब विकास और एआई में मैंने जो कौशल विकसित किए, वे अविश्वसनीय रूप से मूल्यवान रहे हैं। उद्योग अनुभव ने मुझे बड़े पैमाने पर सॉफ्टवेयर इंजीनियरिंग, उपयोगकर्ता अनुभव डिज़ाइन, और ऐसे उत्पाद बनाने की व्यावहारिक चुनौतियों के बारे में सिखाया जिनका उपयोग लाखों लोग करते हैं। इन अनुभवों ने मुझे समग्र रूप से एक बेहतर इंजीनियर बनाया है।
HCR लैब में मैंने जो काम किया, वह आज भी समस्याओं से निपटने के मेरे तरीके को प्रभावित करता है। PID नियंत्रण प्रणालियों के लिए आवश्यक व्यवस्थित सोच यह बताती है कि मैं सॉफ्टवेयर प्रणालियों में फीडबैक लूप कैसे डिज़ाइन करता हूँ। जो दस्तावेज़ीकरण और ज्ञान-संरक्षण कौशल मैंने विकसित किए, वे उसके बाद की हर भूमिका में अमूल्य रहे। मेंटरिंग और सिखाने का अनुभव इस बात को आकार देता है कि मैं जूनियर डेवलपर्स के साथ कैसे काम करता हूँ और टीम के ज्ञान-साझाकरण में कैसे योगदान देता हूँ।
सबसे महत्वपूर्ण बात यह है कि इस अनुभव ने मुझे सिखाया कि जब मैं ऐसे चुनौतीपूर्ण तकनीकी समस्याओं पर काम करता हूँ जिनका वास्तविक दुनिया पर प्रभाव होता है, तो मैं सबसे अच्छा प्रदर्शन करता हूँ। चाहे वह रोबोट गति एल्गोरिदम को अनुकूलित करना हो या ऐसे एआई सिस्टम बनाना जो उपयोगकर्ताओं को उनके लक्ष्य हासिल करने में मदद करें, संतुष्टि कठिन, लेकिन महत्वपूर्ण समस्याओं को हल करने से मिलती है।
स्थायी प्रभाव
HCR लैब के अनुभव को पीछे मुड़कर देखते हुए, मैं इस बात से प्रभावित हूँ कि मैंने अपेक्षाकृत कम समय में कितना कुछ हासिल किया। मेरे द्वारा बनाए गए सिस्टम्स ने Triton प्लेटफ़ॉर्म के संचालन के तरीके को मौलिक रूप से बदल दिया, और उन सुधारों में से कई आज भी उपयोग किए जा रहे हैं। मैंने जो दस्तावेज़ीकरण भंडार बनाया, वह पूरी परियोजना के लिए ज्ञान-आधार बन गया। जिन मेंटरशिप संबंधों को मैंने बनाया, उनका उन लोगों पर स्थायी प्रभाव पड़ा जिनके साथ मैंने काम किया।
लेकिन शायद सबसे महत्वपूर्ण बात यह थी कि इस अनुभव ने मुझे दिखाया कि जिन समस्याओं के प्रति मैं वास्तव में जुनूनी हूँ, उन पर काम करते समय मैं क्या करने में सक्षम हूँ। उन आठ महीनों में, मैं:
- रोबोट गति नियंत्रण प्रणाली में सुधार किया, जो प्लेटफ़ॉर्म को सीमित कर रही थी
- शुरुआत से ही एक बहु-रोबोट समन्वय प्रणाली बनाई
- कंप्यूटर दृष्टि और सेंसर संलयन क्षमताओं को एकीकृत किया
- एक व्यापक दस्तावेज़ीकरण और ज्ञान प्रबंधन प्रणाली बनाई
- कई लोगों का मार्गदर्शन किया और ज्ञान हस्तांतरण में मदद की
- स्वायत्त वाहनों में पीएचडी-स्तरीय अनुसंधान का समर्थन किया
हालाँकि यह केवल तकनीकी उपलब्धियों के बारे में नहीं था, और वे मेरे लिए अर्थपूर्ण थीं। यह यह सीखने के बारे में था कि धैर्य और व्यवस्थित सोच के साथ, आप एक स्नातक छात्र के रूप में भी उपयोगी योगदान दे सकते हैं।
भविष्य और रोबोटिक्स
हालाँकि मेरा करियर मुझे अन्य दिशाओं में ले गया है, रोबोटिक्स के प्रति मेरा जुनून कम नहीं हुआ है। मैं अभी भी इस क्षेत्र में हो रहे विकासों पर नज़र रखता हूँ, मुझे रोबोट शिक्षण और स्वायत्त प्रणालियों में प्रगति को लेकर उत्साह है, और मैं कभी-कभी अपने खाली समय में व्यक्तिगत रोबोटिक्स परियोजनाओं पर काम करता हूँ।
पता नहीं भविष्य क्या लेकर आएगा? एआई और मशीन लर्निंग में जो कौशल मैं विकसित कर रहा हूँ, वे रोबोटिक्स के लिए increasingly प्रासंगिक हैं। मैंने जो उद्योग अनुभव हासिल किया है, उसने मुझे सिखाया है कि मज़बूत, स्केलेबल प्रणालियाँ कैसे बनाई जाती हैं। शायद एक ऐसा भविष्य है जहाँ मेरे अनुभव के ये अलग-अलग धागे अप्रत्याशित तरीकों से एक साथ आ जाएँ।
अभी के लिए, मैं HCR प्रयोगशाला में बिताए समय और वहाँ मिले अनुभवों के लिए आभारी हूँ। यह एक गठनकारी अवधि थी जिसने मेरे तकनीकी कौशल और इस समझ दोनों को आकार दिया कि किस तरह का काम मुझे सबसे अधिक संतोष देता है। भले ही मुझे कभी-कभी उसकी याद आती है, मैं जानता हूँ कि मैंने जो पाठ सीखे और जिन तरीकों को विकसित किया, वे हर उस काम को प्रभावित करते रहते हैं जो मैं करता हूँ।
ट्राइटन रोबोट अभी भी वहीं हैं, अभी भी शोधकर्ताओं की सेवा कर रहे हैं, अभी भी महत्वपूर्ण कार्य को सक्षम बना रहे हैं। और यह बहुत शानदार है।

















