२०१९ AgBot आव्हान

ईस्ट हाय स्कूल

डेन्व्हर, कोलोरॅडो येथील ईस्ट हाय स्कूलमध्ये (2014-2018) असताना, मी शाळेनंतरच्या उपक्रमांमध्ये मोठ्या प्रमाणावर सहभागी होतो. त्यापैकी सर्वात प्रभावी उपक्रम म्हणजे रोबोटिक्स क्लब, AngelBotics, हा होता. सुरुवातीला माझे लक्ष फुटबॉलवर असल्यामुळे मी दुसऱ्या वर्षापर्यंत या क्लबमध्ये सहभागी झालो नव्हतो. या क्लबने प्रामुख्याने FIRST Robotics Competition (FRC) मध्ये सहभाग घेतला, ज्यामुळे मला यांत्रिक आणि विद्युत अभियांत्रिकी तसेच प्रोग्रामिंगचा अनुभव घेता आला. AngelBoticsच्या माध्यमातून मी CAD साधने, 3D प्रिंटर आणि इतर अभियांत्रिकी उपकरणे वापरायला शिकलो आणि सामान्यतः महाविद्यालयीन विद्यार्थ्यांसाठी राखीव असलेल्या STEM संकल्पनांचा परिचय झाला. सुरुवातीला क्वांटम भौतिकशास्त्रज्ञ होण्याची महत्त्वाकांक्षा असली तरी, AP Physics आणि रोबोटिक्समधील माझ्या अनुभवांनी मला दाखवून दिले की मी भौतिकशास्त्रात फारसा चांगला नव्हतो आणि त्यामुळे यांत्रिक अभियांत्रिकीच्या मार्गापासून मी दूर गेलो.

त्याऐवजी, मला प्रोग्रामिंगमध्ये माझे योग्य क्षेत्र सापडले. याची सुरुवात माझ्या पहिल्या Raspberry Piसाठी Python कोड लिहिण्यापासून झाली आणि AP Computer Scienceमधील Java प्रकल्पांमुळे ते अधिक पक्के झाले. परीक्षांमध्ये अडचणी येत असूनही, माझे शिक्षक Mr. Nagel यांनी मला सॉफ्टवेअर डेव्हलपमेंटचा मार्ग स्वीकारण्यास प्रोत्साहित केले आणि परीक्षेतील गुणांपेक्षा प्रकल्पांचे महत्त्व अधिक असल्याचे अधोरेखित केले. त्यामुळे महाविद्यालयात संगणकशास्त्र हा माझा पदवी अभ्यासक्रम असावा, असा मी निर्णय घेतला; सॉफ्टवेअर अभियंता आणि पुढे माझ्या कारकिर्दीत संस्थापक होण्याचे माझे स्वप्न होते.

माझ्या आव्हानात्मक अभ्यासक्रमामुळे आणि शिकण्याच्या मोठ्या वक्रामुळे मी AngelBoticsमध्ये फारसा सहभागी होऊ शकलो नाही, तरीही या क्लबने रोबोटिक्सविषयीची आयुष्यभराची आवड जागवली. त्यामुळे जेव्हा मी महाविद्यालय सुरू केले, तेव्हा महाविद्यालयीन रोबोटिक्स क्लबमध्ये सहभागी होण्याचा आणि एके दिवशी रोबोटिक्सच्या मदतीने वास्तविक जगातील समस्या सोडवणारी कंपनी उभारण्याचा माझा निर्धार होता.

School of Mines

ईस्ट हाय स्कूलमधून पदवी घेतल्यानंतर, मी Colorado School of Minesमध्ये (2018-2022) संगणकशास्त्रातील माझी पदवी सुरू केली. माझ्या अगदी पहिल्या सत्रातच मी Mines robotics clubsची माहिती घेतली आणि AgBot नावाचा अगदी नवीन रोबोटिक्स गट शोधला.

AgBot हा 2019 agBots Weed and Feed Competitionमध्ये स्पर्धा करण्यासाठी रोबोट तयार करण्याच्या उद्देशाने स्थापन झालेला एक नवीन रोबोटिक्स क्लब होता. या स्पर्धेत दोन मुख्य आव्हाने होती:

  1. कीड आणि तण ओळखणे व त्यांचे निर्मूलन
  2. रोबोटिक्सच्या माध्यमातून कापणीच्या नवीन पद्धती तयार करणे

आमच्या संघाने पहिल्या आव्हानावर लक्ष केंद्रित करण्याचे निवडले. AgBot स्पर्धेत सहभागी होण्याची Minesची ही पहिलीच वेळ होती आणि कृषीशी संबंधित कोणत्याही कामावर Minesच्या रोबोटिक्स क्लबने काम करण्याचीही ही पहिलीच वेळ होती. त्यामुळे संपूर्ण गोष्ट अगदी नवीन वाटत होती.

या प्रकल्पाने मला तात्काळ आकर्षित केले. माझ्या वडिलांच्या पिढीपर्यंत, तुर्कीमध्ये माझ्या कुटुंबातील अनेक पिढ्या शेतकरी होत्या. त्यामुळे AgBot मला आपलेसे वाटले; त्यात माझी रोबोटिक्स आणि प्रोग्रामिंगची आवडही जोडली गेली. माझ्या आजी-आजोबांसारख्या शेतकऱ्यांना कदाचित मदत करू शकेल असा रोबोट तयार करण्याची कल्पना खरोखरच उत्साहवर्धक होती.

विकास

AgBot संघाचा भाग असणे हा माझ्या महाविद्यालयीन अनुभवांपैकी एक सर्वात संस्मरणीय अनुभव आहे. त्या वेळेपर्यंत मी केलेल्या सर्वात कठीण कामांपैकी ते एक होते. या प्रकल्पात पहिल्यांदाच मी Python, Ubuntu आणि ROSमध्ये खऱ्या अर्थाने खोलवर शिरलो. FRCमध्ये सर्व काही Javaमध्ये होते, त्यामुळे माझ्यासाठी हे सर्व पूर्णपणे नवीन क्षेत्र होते. यापूर्वी मी Python आणि Ubuntu वापरले होते, पण ROSला कधीच हात लावला नव्हता. ROS कसे कार्य करते हे शिकणे म्हणजे खडतर चढाईसारखे होते. त्या वेळी Python environment म्हणजे काय, हेही मला माहीत नव्हते.

मी माझा बहुतांश वेळ एका Lidarकडून मी लिहीत असलेल्या ROS nodeकडे वापरता येण्याजोगा डेटा पाठवून घेण्याचा प्रयत्न करण्यात घालवला. Lidarच्या डेटाचा वापर करून रोबोट पिकांच्या रांगेच्या शेवटी पोहोचला आहे हे ओळखू शकणारा end_detector नावाचा ROS Node तयार करणे हे माझे काम होते. आता ते सोपे वाटते, पण त्या वेळी ते प्रचंड मोठे काम वाटत होते.

Lidarला माझ्या कोडशी संवाद साधता यावा यासाठी डीबगिंग करताना मला सुमारे दोन आठवडे लागले. संपूर्ण कोड C++ किंवा Pythonमध्ये, प्रामुख्याने Pythonमध्ये, लिहिला होता. त्यामुळे या कामासाठी माझा कोड फक्त Pythonमध्ये होता. ते कार्य करू लागल्यानंतर, मला कॅम्पसमध्ये सापडलेल्या वनस्पतींच्या यादृच्छिक पट्ट्यांचा वापर करून लॉजिकची चाचणी सुरू केली. Lidar धरून ठेवणारे स्टँड मी त्यांच्याजवळून पुढे नेत असे आणि आम्ही शेवटपर्यंत पोहोचलो आहोत हे कोड ओळखू शकतो का, ते पाहत असे. अनेक तासांच्या कामानंतर आणि डीबगिंगनंतर, अखेर माझ्या चाचणी वातावरणात तरी सर्व काही कार्यरत झाले. मात्र सर्व काही एकत्र जोडण्याचा प्रयत्न केला तेव्हा गोष्ट वेगळी होती.

हार्डवेअर आणि सॉफ्टवेअरला एकमेकांशी संवाद साधता यावा यासाठीच माझा बहुतांश वेळ गेला. रांगेचे शेवट ओळखण्याचे प्रत्यक्ष लॉजिक त्यानंतर आले. पण हा शिकण्याचा उत्तम अनुभव होता. ROS क्वचितच समजत असण्यापासून Jetson बोर्डवर थेट Lidar डेटासह nodes लिहिणे आणि डीबग करणे इथपर्यंत मी पोहोचलो. याच काळात माझ्या प्रोग्रामिंग भाषेच्या निवडीमध्येही बदल झाला—मुख्यतः Javaकडे वळण्याऐवजी मी Pythonला प्राधान्य देऊ लागलो. आणि 2025पर्यंत, माझ्या कोणत्याही प्रकल्पांसाठी किंवा कामाशी संबंधित कोडबेससाठी Javaचा प्रत्यक्ष वापर अजूनही केलेला नाही.

संघ आणि तंत्रज्ञान संच

आम्ही Nvidia Jetson TX2वर Ubuntu 16.04, ROS Kinetic आणि Python 2.7 चालवत होतो. हा संगणक Hokuyo URG 04LX UG01 Lidarशी इंटरफेस केलेला होता. अल्ट्रासोनिक रेंज फायंडर्ससारख्या सेन्सर इनपुटसाठी आमच्याकडे Arduino(s) होते. आमच्या कोडमध्ये perception, navigation, control आणि spraying हाताळले जात होते. रिपॉझिटरी येथे पाहता येईल: GitHub Repo. मी लिहिलेला विशिष्ट कोड end_detector.pyमध्ये आढळू शकतो. रोबोटची रचना करणाऱ्या बहुतांश घटकांची यादी येथे आहे:

  • Ubuntu 16.04 Xenial
  • ROS Kinetic Kame
  • Python 2.7
  • Nvidia Jetson TX2
  • Hokuyo URG-04LX-UG01 Lidar
  • Arduino Uno आणि Mega
  • DC Motors, Encoders, Motor Controllers, Battery इत्यादी

आमचा संघ फार मोठा नव्हता, पण काही नावे विशेष लक्षात राहतात:

Tyler हा क्लबचा नेता आणि संस्थापक होता. त्या वेळीही माझ्या मनात त्याच्याबद्दल खूप आदर होता आणि आजही आहे. Zachary हा क्लबच्या सॉफ्टवेअर डेव्हलपमेंटचा प्रमुख होता. त्याने मला सॉफ्टवेअर डेव्हलपमेंट आणि ROSविषयी बरेच काही शिकवण्यास मदत केली, ज्याबद्दल मी आजही त्याचा आभारी आहे.

Kevin Barnard आणि Amit Rotem यांसारखे इतर सदस्यही होते. पण दुर्दैवाने, सर्व मूळ सदस्यांची नावे आणि संपर्क मला आठवत नाहीत, कारण क्लब बंद होऊन 5 वर्षांहून अधिक काळ झाला आहे.

रोबोटचा बहुतांश विकास आमचे बहुतेक वर्ग संपल्यानंतर सप्ताहाच्या शेवटी आणि रात्री उशिरापर्यंत होत असे. अभियांत्रिकीची पदवी आणि AgBotवर काम करणे खूपच दमवणारे होते, पण आम्ही चिकाटीने ते पूर्ण केले.

प्रवास आणि गोंधळ

या संपूर्ण अनुभवातील एक गोष्ट मी कधीही विसरणार नाही, ती म्हणजे स्वतःचा प्रवास. ही स्पर्धा वेस्ट लाफायेट, इंडियाना येथे, Purdue University’s कॅम्पसजवळ आयोजित करण्यात आली होती. आणि Minesमधील अंतिम परीक्षांचा आठवडा संपताच लगेच ही संपूर्ण स्पर्धा सुरू झाली, त्यामुळे त्या अत्यंत कठीण आठवड्यातून सावरण्यासाठी आम्हाला अजिबात वेळ मिळाला नाही.

रोबोट आणि आमची सर्व साधने वाहून नेण्यासाठी Tylerचा ट्रक वापरून आम्ही गोल्डन, कोलोरॅडोपासून इंडियानाला निघालो. गंमत अशी होती की, स्पर्धेच्या आठवड्याच्या फक्त एक दिवस आधी आम्ही अक्षरशः प्रवास सुरू केला. आमच्याकडे जे काही होते ते सर्व—रोबोट, साधने, बॅटऱ्या, संगणक, सर्व काही—आम्ही भरले आणि गोल्डन, कोलोरॅडोपासून वेस्ट लाफायेट, इंडियानाकडे निघालो. कागदावर हा 18 तासांचा प्रवास होता. पेट्रोल आणि स्वच्छतागृहाच्या विश्रांतींसह आम्हाला जवळपास 20 किंवा 22 तास लागले.

Tylerने संपूर्ण वेळ गाडी चालवली आणि Coffee Monster पेयांवर आपला निर्वाह केला. आणखी एका संघसहकाऱ्याने—तिचे नाव विसरल्याबद्दल क्षमस्व, पण ती छायाचित्रांमध्ये आहे—कधीकधी त्याची जागा घेतली. वाटेत मुसळधार पाऊस सुरू झाला. आम्हाला एका बंद असलेल्या अनोळखी पेट्रोल पंपाजवळ गाडी थांबवून रोबोटचे संरक्षण करण्यासाठी ताडपत्री घ्यावी लागली. ते अस्ताव्यस्त होते, गोंधळाचे होते, ते महाविद्यालयीन रोबोटिक्स होते. कसातरी आम्ही पोहोचलो.

आम्ही पोहोचलो तेव्हा मैदानावर आमचा मंडप उभारला आणि आमची सर्व साधने मांडली. मी कोड पूर्ण करण्यावर आणि तो चालवून पाहण्यावर लक्ष केंद्रित केले. बहुतेक स्पर्धेदरम्यान, आम्ही प्रामुख्याने आमच्या रोबोटचे डीबगिंग करून तो व्यवस्थित कार्य करेल यावर काम केले आणि इतर संघांनी तयार केलेले छान रोबोटही पाहिले.

मग आम्ही जिंकलो का?

नाही

मागे वळून पाहिल्यावर, आम्ही आमच्या अनुभवाच्या पातळीपेक्षा कितीतरी पुढे असलेली एखादी गोष्ट तयार करण्याचा प्रयत्न करणारी काही मुलेच होतो. इतर संघांची पातळी पूर्णपणे वेगळी होती. काही संघ स्टार्टअप्समधून आले होते. काही संशोधन प्रयोगशाळांमधून आले होते. काहींना पूर्ण शैक्षणिक पाठबळ होते. आम्ही पदवीपूर्व विद्यार्थ्यांचा एक छोटा गट होतो, जो रात्रभर जागून Pythonने Lidar डेटाचे काहीतरी उपयुक्त रूपांतर करावे, अशी आशा करत होता.

आमचा रोबोट सदोष होता. तो अस्ताव्यस्त होता. आणि खरे सांगायचे तर, स्पर्धेपर्यंत पोहोचेपर्यंत तो कसाबसा कार्यरत होता. वेळेत काम पूर्ण होणार नाही हे लक्षात आल्यावर संघातील अनेक लोक बाहेर पडू लागले. काही तर आलेही नाहीत. अंतिम परीक्षा संपल्या होत्या, रोबोट तयार नव्हता आणि मनोबल खूपच खालावले होते.

पण आमच्यापैकी काही जण शेवटपर्यंत टिकून राहिले

मी हार मानली नाही… Tylerने हार मानली नाही… आणि छायाचित्रातील लोकांनीही हार मानली नाही!

आम्ही जिंकलो नाही, किंवा पूर्णपणे कार्यक्षम रोबोटही तयार करू शकलो नाही, तरीही त्या अनुभवाच्या बदल्यात मी काहीही स्वीकारणार नाही. मी ROS, हार्डवेअर डीबगिंग, दबावाखाली प्रणाली तयार करणे आणि निष्ठा यांविषयी शिकलो. एखादी गोष्ट शेवटपर्यंत नेणे किती महत्त्वाचे आहे, हे मला उमगले.

2025पर्यंतचे चिंतन

2019च्या हंगामानंतर AgBotने आपले काम बंद केले. याचे मुख्य कारण म्हणजे जवळपास 1 वर्षानंतर COVIDचा उद्रेक झाला, ज्यामुळे Minesमधील सर्व क्लब 1-2 वर्षांसाठी बंद झाले आणि जग पुन्हा “सामान्य” होऊ लागेपर्यंत माझी पदवी पूर्ण झाली होती.

आता 2025 साल आहे, आणि AgBot कडे मागे वळून पाहताना, ते माझ्यासाठी प्रत्येक गोष्टीची सुरुवात असल्याचे मला जाणवते. रोबोटिक्समधील माझा पहिला खरा अनुभव त्याने मला दिला आणि तांत्रिक टीमसोबत सहकार्य कसे करायचे हे शिकवले. त्याने मला अशा मार्गावर नेले, ज्यामुळे मला अद्भुत संधी मिळाल्या.

तेव्हापासून, मी eBay येथे बॅकएंड इंजिनिअर म्हणून काम केले आहे, जिथे डेटा सेंटर्समधून लाखो मेट्रिक्स ग्रहण करणाऱ्या सेवा तैनात केल्या. AI-स्वयंचलित सायबरसुरक्षा पेनिट्रेशन टेस्टिंग तयार करण्यावर केंद्रित असलेले माझे पहिले स्टार्टअप स्थापन केले. Notify Cyber सुरू केले, ज्याला दहा हजारो अभ्यागत मिळाले. Docker, Kubernetes, Postgres आणि प्रगत AI पायाभूत सुविधांसाठी मी सॉफ्टवेअर लिहिले आहे.

पण AgBot अजूनही माझ्या आयुष्यातील सर्वोत्तम अनुभवांपैकी एक म्हणून उठून दिसते. ते गोंधळाचे, तणावपूर्ण आणि कधीकधी अशक्य वाटणारे होते, पण कोणत्याही वर्गाने किंवा ट्यूटोरियलने शिकवले नसते इतके त्याने मला शिकवले. परिपूर्ण योजना नसली, पुरेसा निधी नसला किंवा सर्वोत्तम हार्डवेअर नसले, तरीही तुम्ही काहीतरी तयार करू शकता, खूप काही शिकू शकता आणि त्या प्रवासात अद्भुत लोकांना भेटू शकता, हे मी शिकलो.

2019 च्या AgBot टीममधील प्रत्येकाला, धन्यवाद. 2019 च्या त्या रोड ट्रिपसाठी, बंद गॅस स्टेशनवरून आम्ही घेतलेल्या ताडपत्रीसाठी आणि निद्राहीन रात्रींसाठी, धन्यवाद. प्रकल्प कितीही अशक्य वाटत असले तरी आत्मविश्वासाने मोठे प्रकल्प हाती घेण्याचे धैर्य तुम्ही मला दिले.

साधने आणि दुवे

छायाचित्र दालन

माइन्सची AgBot टीम, आम्ही

GetStoredImage-1.jpeg GetStoredImage.jpeg IMG_9005.jpeg IMG_9006.jpeg
IMG_9663.jpeg IMG_9684.jpeg IMG_9685.jpeg IMG_9686.jpeg
IMG_9687.jpeg IMG_9688.jpeg IMG_9691.jpeg

आमचा AgBot रोबोट

IMG_8854.jpeg IMG_8855.jpeg IMG_8856.jpeg IMG_8867.jpeg
IMG_8976.jpeg IMG_8977.jpeg IMG_9007.jpeg IMG_9008.jpeg
IMG_9037.jpeg IMG_9038.jpeg IMG_9039.jpeg IMG_9040.jpeg
IMG_9695.jpeg r1.jpeg r3.jpeg r5.jpeg
r6.jpeg r7.jpeg r9.jpeg

व्हिडिओ/GIFs

स्पर्धेची मैदाने

IMG_8848.jpeg IMG_8849.jpeg IMG_8850.jpeg IMG_8851.jpeg
IMG_9042.jpeg IMG_9666.jpeg IMG_9668.jpg land.jpeg

स्पर्धांमधील इतर टीम्स

IMG_8827.jpeg IMG_8828.jpeg IMG_8857.jpeg IMG_8858.jpeg
IMG_8880.jpeg IMG_9651.jpeg IMG_9669.jpeg IMG_9671.jpeg
IMG_9672.jpeg IMG_9673.jpeg IMG_9674.jpeg IMG_9675.jpeg
IMG_9677.jpeg IMG_9678.jpeg IMG_9679.jpeg IMG_9696.jpeg
IMG_9697.jpeg gpage_2019.jpeg robot.jpeg

FRC 1339 (2014-2017)

IMG_9629.jpeg IMG_9630.jpeg

इतर यादृच्छिक छायाचित्रे

IMG_8825.jpeg IMG_8826.jpeg IMG_8852.jpeg IMG_8853.jpeg
IMG_8980.jpeg IMG_8981.jpeg IMG_9002.jpeg IMG_9003.jpeg
IMG_9043.jpeg mines_logo.png