Changamoto ya AgBot ya 2019
Shule ya Upili ya East
Wakati wangu katika Shule ya Upili ya East huko Denver, Colorado (2014-2018), nilihusika sana katika shughuli za baada ya masomo, na yenye athari kubwa zaidi ikiwa klabu ya roboti, AngelBotics. Sikuwa nimejiunga hadi mwaka wangu wa pili, kutokana na mwanzo wangu wa kuzingatia soka. Klabu hiyo hasa ilishiriki katika FIRST Robotics Competition (FRC), jambo lililoniruhusu kuchunguza uhandisi wa mitambo na umeme, pamoja na programu. Kupitia AngelBotics, nilijifunza kutumia zana za CAD, printa za 3D, na vifaa vingine vya uhandisi, nikipata uzoefu wa dhana za STEM ambazo kwa kawaida huwahusu wanafunzi wa chuo. Hapo awali nilitamani kuwa Mwanafizikia wa Quantum, lakini uzoefu wangu katika Fizikia ya AP na roboti ulinionesha kwamba sikua na ujuzi mkubwa katika fizikia na kwa upande mwingine ukaniondoa kwenye njia ya uhandisi wa mitambo.
Badala yake, nilipata eneo langu la kipekee katika programu, ambalo lilianza kwa mimi kuandika msimbo wa Python kwa Raspberry Pi yangu ya kwanza na likathibitishwa kupitia miradi ya Java katika Sayansi ya Kompyuta ya AP. Licha ya kuhangaika na mitihani, mwalimu wangu, Bw. Nagel, alinitia moyo kufuata maendeleo ya programu, akisisitiza thamani ya miradi kuliko alama za mitihani. Hili lilinifanya nizingatie sayansi ya kompyuta kama shahada yangu chuoni nikiwa na ndoto ya kuwa mhandisi wa programu na hatimaye mwanzilishi katika kazi yangu.
Ingawa sikuhusika sana katika AngelBotics kutokana na mzigo wangu mkubwa wa masomo na mteremko mkali wa kujifunza, bado ilinichochea shauku ya maisha yote kwa roboti. Kwa hiyo nilipoanza chuo, niliamua kujiunga na klabu ya roboti ya chuo na siku moja kujenga kampuni inayotatua matatizo ya ulimwengu halisi kwa kutumia roboti.
Shule ya Mines
Baada ya kuhitimu kutoka Shule ya Upili ya East, nilianza Shahada yangu ya Kwanza katika Sayansi ya Kompyuta katika Colorado School of Mines (2018-2022). Katika muhula wangu wa kwanza kabisa, nilitazama vilabu vya roboti vya Mines na kugundua kikundi kipya kabisa cha roboti kilichoitwa AgBot.
AgBot ilikuwa klabu mpya ya roboti iliyoundwa kwa lengo la kujenga roboti ili kushindana katika 2019 agBots Weed and Feed Competition. Shindano hili lilikuwa na changamoto mbili kuu:
- Utambuzi na Uangamizaji wa Wadudu na Magugu
- Kuunda Mbinu Mpya za Mavuno Kupitia Roboti
Timu yetu ilichagua kuzingatia changamoto ya kwanza. Lilikuwa ni mara ya kwanza ya Mines kuingia katika shindano la agBot, na pia lilikuwa ni mara ya kwanza kwa klabu ya roboti ya Mines kufanya kazi kwenye kitu chochote kinachohusiana na kilimo. Hilo lilifanya jambo lote lihisi jipya.
Nilivutiwa mara moja na mradi huo. Familia yangu walikuwa wakulima nchini Uturuki kwa vizazi, hadi kizazi cha baba yangu. Kwa hiyo AgBot ilihisi kuwa ya karibu na nyumbani huku ikiunganishwa na shauku yangu ya roboti na programu. Wazo la kujenga roboti ambayo ingeweza kuwasaidia wakulima kama babu na bibi zangu lilikuwa la kusisimua sana.
Maendeleo
Kuwa sehemu ya timu ya AgBot ni moja ya uzoefu wangu wa kukumbukwa zaidi chuoni. Pia ilikuwa moja ya mambo magumu zaidi ambayo nilifanya hadi wakati huo. Mradi huu ulikuwa mara ya kwanza nilipoingia kwa kina katika Python, Ubuntu, na ROS. Katika FRC, kila kitu kilikuwa kwa Java, kwa hiyo haya yote yalikuwa eneo jipya kwangu. Nilikuwa nimetumia Python na Ubuntu hapo awali, lakini sikuwahi kuigusa ROS. Kujifunza jinsi ROS inavyofanya kazi kulikuwa vita vya kupanda mlima. Sikujua hata mazingira ya Python ni nini wakati huo.
Nilitumia muda wangu mwingi kujaribu kupata Lidar itume data inayoweza kutumika kwenye nodi ya ROS niliyokuwa nikiandika. Kazi yangu ilikuwa kutekeleza Nodi ya ROS iitwayo end_detector ambayo ingeweza kugundua wakati roboti ilifikia mwisho wa safu ya mimea kwa kutumia data ya Lidar. Sasa inaonekana rahisi, lakini wakati huo ilionekana kubwa mno.
Ilinichukua takriban wiki mbili za kuondoa hitilafu ili kupata Lidar ikizungumza na msimbo wangu. Msimbo mzima uliandikwa ama katika C++ au Python, hasa Python. Kwa hiyo, msimbo wangu ulikuwa tu Python kwa kazi hii. Mara tu hilo lilipofanya kazi, nilianza kujaribu mantiki hiyo kwa kutumia mabaka ya mimea ya kubahatisha niliyopata chuoni. Ningesukuma kiswanikio kilichoshikilia Lidar kupita mbele yao na kuona kama msimbo ungeweza kusema ni lini tulifika mwisho. Baada ya saa nyingi na uondoaji wa hitilafu, hatimaye nilifanikiwa kupata kila kitu kikifanya kazi angalau katika mazingira yangu ya majaribio. Ilikuwa hadithi tofauti tulipojaribu kuunganisha kila kitu pamoja.
Muda wangu uliotumika zaidi ulikuwa katika kuhakikisha vifaa na programu vinawasiliana. Mantiki halisi ya kutambua mwisho wa safu ilikuja baadaye. Lakini lilikuwa ni uzoefu mzuri wa kujifunza. Nilitoka katika kuelewa kidogo tu ROS hadi kuandika na kuondoa hitilafu katika nodi kwenye ubao wa Jetson na data ya Lidar ya moja kwa moja. Pia ilikuwa wakati huu ambapo nilibadilika kutoka hasa kutegemea Java kama lugha yangu ya programu hadi badala yake kutegemea Python. Na, kufikia 2025, bado sijatumia Java kweli kwa mojawapo ya miradi yangu au misimbo ya kazi.
Timu na Seti ya Teknolojia
Tulitumia Ubuntu 16.04 na ROS Kinetic na Python 2.7 kwenye Nvidia Jetson TX2 ambayo iliwasiliana na Hokuyo URG 04LX UG01 Lidar. Tulikuwa na Arduino(s) kwa ajili ya ingizo za vihisi kama vile vipima umbali vya ultrasonic. Msimbo wetu ulishughulikia utambuzi, urambazaji, udhibiti, na kunyunyizia. Unaweza kuona hazina hapa: GitHub Repo. Msimbo mahususi niliouandika unaweza kupatikana katika end_detector.py. Hapa kuna orodha ya sehemu nyingi zilizounda roboti hiyo:
- Ubuntu 16.04 Xenial
- ROS Kinetic Kame
- Python 2.7
- Nvidia Jetson TX2
- Hokuyo URG-04LX-UG01 Lidar
- Arduino Uno & Mega
- Motors za DC, Visimbuzi, Vidhibiti vya Motor, Betri, n.k.
Hatuakuwa na timu kubwa, lakini majina machache yanajitokeza:
Tyler alikuwa kiongozi na mwanzilishi wa klabu. Nilimheshimu sana wakati huo na bado namheshimu hadi leo. Zachary alikuwa kiongozi wa maendeleo ya programu kwa klabu na alinisaidia kunifundisha mengi kuhusu maendeleo ya programu na ROS, jambo ambalo ninashukuru nalo hadi leo.
Pia kulikuwa na wanachama wengine, kama Kevin Barnard na Amit Rotem. Lakini kwa huzuni sikumbuki majina na mawasiliano ya wanachama wote wa awali kwa sababu imepita zaidi ya miaka 5 tangu klabu hiyo ilipomalizika.
Mengi ya maendeleo ya roboti yalitokea wakati wa wikendi na hadi usiku wa manane baada ya matabaka yetu mengi kumalizika. Kufanya kazi kwenye shahada ya uhandisi na AgBot kulikuwa kuchosha sana, lakini tuliendelea kuvumilia.
Safari na Msukosuko
Sehemu moja ya uzoefu huu mzima ambayo sitasahau kamwe ilikuwa safari yenyewe. Shindano lilifanyika West Lafayette Indiana, karibu na kampasi ya Chuo Kikuu cha Purdue. Na shindano lote lilifanyika mara tu baada ya wiki ya mitihani ya mwisho kumalizika huko Mines, kwa hiyo hatukuwa na muda wa kupona kutoka kwenye wiki hiyo ya mateso.
Tuliongoza kutoka Golden Colorado hadi Indiana tukitumia lori la Tyler pia kubeba roboti na zana zetu zote. Jambo la kuchekesha, hata hivyo, ni kwamba tulianza safari kihalisi siku moja kabla ya wiki ya shindano. Tulipakia kila kitu tulichokuwa nacho, roboti, zana, betri, kompyuta, kila kitu, na kuendesha kutoka Golden Colorado hadi West Lafayette Indiana. Hiyo ni safari ya saa 18 kwa mahesabu ya karatasi. Ilituchukua karibu saa 20 au 22 pamoja na vituo vya mafuta na mapumziko ya chooni.
Tyler aliendesha muda wote, akiishi kwa vinywaji vya Coffee Monster. Mwenza mwingine wa timu, samahani nimesahau jina lake lakini yuko kwenye picha, alimchukua nafasi wakati mwingine. Wakati wa safari, mvua ilianza kunyesha kwa wingi. Tulilazimika kusimama kando katika kituo cha mafuta kilichofungwa kisichojulikana na kuchukua turubai ili kulinda roboti. Lilikuwa jambo la hovyo, lilikuwa msukosuko, lilikuwa roboti ya chuo. Kwa namna fulani, tulifika.
Tulipofika, tuliweka hema letu la kivuli uwanjani na kuweka zana zetu zote. Nililenga kumalizia msimbo na kuufanya ufanye kazi. Kwa sehemu kubwa ya shindano, tulifanya kazi hasa katika kuondoa hitilafu kwenye roboti yetu na kuifanya ifanye kazi vizuri pia tukitazama ujenzi mzuri wa roboti za timu nyingine.
Basi Je, Tulishinda?
Hapana
Nikikumbuka nyuma, tulikuwa tu kundi la watoto wakijaribu kujenga kitu kilichokuwa juu sana ya kiwango chetu cha uzoefu. Timu nyingine zilikuwa katika kiwango tofauti kabisa. Baadhi zilikuwa kutoka kampuni changa. Baadhi zilikuwa kutoka maabara za utafiti. Baadhi zilikuwa na msaada kamili wa kitaaluma. Sisi tulikuwa kikundi kidogo cha wanafunzi wa shahada ya kwanza tukilala usiku kucha, tukitumaini Python ingeweza kugeuza data ya Lidar kuwa kitu cha manufaa.
Roboti yetu ilikuwa na mapungufu. Ilikuwa ya hovyo. Na kwa uaminifu, ilikuwa haifanyi kazi vizuri kabisa wakati tulipofika kwenye shindano. Watu wengi kwenye timu walianza kujitoa walipotambua huenda tusingemaliza kwa wakati. Baadhi hata hawakujitokeza kabisa. Mitihani ya mwisho ilikuwa imeisha, roboti haikuwa tayari, na ari ilikuwa chini sana.
Lakini wachache wetu tuliendelea kubaki
Sikukata tamaa… Tyler hakukata tamaa… Na wale watu kwenye picha, wao pia hawakukata tamaa!
Ingawa hatukushinda au hata kuwa na roboti iliyofanya kazi kikamilifu, singebadilisha uzoefu huo kwa kitu chochote. Nilijifunza kuhusu ROS, kuondoa hitilafu za vifaa, kujenga mifumo chini ya shinikizo, na nilijifunza kuhusu uaminifu. Niligundua jinsi ilivyo muhimu kuona mambo hadi mwisho.
Tafakari, Kufikia 2025
Baada ya msimu wa 2019, AgBot ilifunga shughuli zake. Hili lilitokana hasa na COVID kuanza karibu mwaka 1 baadaye, na kusababisha vilabu vyote Mines kufungwa kwa miaka 1-2 na wakati ulimwengu ulipoanza kurudi kwenye “hali ya kawaida” nilikuwa nimehitimu.
Sasa ni 2025, na nikitazama nyuma kwa AgBot, ninaiona kama mwanzo wa kila kitu kwangu. Ilinipa uzoefu wangu wa kwanza wa kweli na roboti na ikanifundisha jinsi ya kushirikiana na timu ya kiufundi. Iliniacha kwenye njia ambayo imenileta kwenye fursa za ajabu.
Tangu wakati huo, nimefanya kazi kama mhandisi wa backend katika eBay, nikituma huduma zinazopokea mamilioni ya vipimo kutoka katika vituo vya data. Nilianzisha kampuni yangu ya kwanza ya mwanzo iliyolenga kujenga upimaji wa kupenya wa usalama wa mtandao uliotengenezwa kiotomatiki na AI. Nilikizindua Notify Cyber, ambacho kilifikia makumi ya maelfu ya wageni. Nimeandika programu kwa Docker, Kubernetes, Postgres, na miundombinu ya hali ya juu ya AI.
Lakini AgBot bado inajitokeza kama moja ya uzoefu bora zaidi maishani mwangu. Ilikuwa ya vurugu, ya mfadhaiko, na wakati mwingine ilihisi haiwezekani, lakini ilinifundisha zaidi kuliko darasa lolote au mafunzo yoyote ambayo yangeweza kunifundisha. Nilijifunza kwamba hata kama huna mpango mkamilifu au fedha za kutosha au vifaa bora zaidi, bado unaweza kujenga kitu, kujifunza mengi sana, na kukutana na watu wa ajabu njiani.
Kwa kila mtu kutoka timu ya AgBot ya 2019, asanteni. Kwa safari hiyo ya barabarani ya 2019, turubai tulilochukua kwenye kituo cha mafuta kilichofungwa, na usiku bila usingizi, asanteni. Mmenipa uthabiti wa kukabiliana na miradi mikubwa kwa kujiamini, bila kujali inaonekana kuwa haiwezekani kiasi gani.
Rasilimali na Viungo
- Tovuti Kuu ya Klabu za Roboti ya Colorado School of Mines
- Msingi wa Msimbo wa AgBot 2019
- Makala ya AgBot ya Purdue
- Makala ya Muhtasari wa Picha wa Purdue
- Makala ya DTN Progressive Farmer
- Akaunti ya AgBot ya Twitter/X
- Tovuti Rasmi ya AgBot
- GitHub ya Zach
- GitHub ya Kevin
- GitHub ya Tyler
Matunzio ya Picha
Timu ya AgBot ya Mine, Sisi
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Roboti Yetu ya AgBot
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Video/GIFu
Uwanja wa Mashindano
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Timu Nyingine Katika Mashindano
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
FRC 1339 (2014-2017)
![]() |
![]() |
Picha Nyingine za Nasibu
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |































































