fbpx

Big-Flash -hanke

Silmät mobiilirobotille

Big-Flash -hankkeen projektissa kehitettiin konenäköä Oinride Oy:n lippulaivatuotteelle AutoJoelle.

Konenäköä käytetään lähes kaikkialla autojen peruutuskameroista ja robottipölynimureista tehtaiden valmistuslinjastoihin ja kännyköiden kameroihin. Konenäkö on käytössä lähes kaikkialla, missä tarvitaan laitteiden vapaata tai ennalta määrittelemätöntä liikkumista. Yksinkertaisimmillaan konenäkö on infrapuna- tai ultraäänisensori, joka mittaa laitteen etäisyyttä esteestä. Monimutkaisimmillaan se on tekoälymalli, joka hakee tietopankistaan vastaavuuksia kuvista löytyviin esineisiin. Kone jaksaa tehdä väsymättä huomioita, jotka jäisivät tarkimmaltakin ihmiseltä huomaamatta.

Projektissa lähdettiin kehittämään konenäköä Oinride Oy:n lippulaivatuotteelle AutoJoelle, joka on Mars-Roverista insipiraationsa saanut kuusipyöräinen vaikean maaston autonominen robotti. Tulevaisuudessa AutoJoe tulisi auttamaan kaivoksissa, maan alla ihmisille epämiellyttävissä ja vaarallisissa olosuhteissa. Yrityksen tuotteella ei vielä ollut minkäänlaista konenäköä, joten sen lisääminen autonomiseen laitteeseen oli luonnollinen seuraava askel.

AutoJoe konepajalla hitsauksessa
AutoJoe konepajalla hitsauksessa
Melkein valmis AutoJoe RoboGaragella

Melkein valmis AutoJoe RoboGaragella

AutoJoe Metropoliassa

AutoJoe ostettiin mobiilirobottikehitysalustaksi Metropolialle MiR100:n rinnalle. MiR on jo valmis kaupallinen ratkaisu, joka on suunniteltu sisätiloihin ja pääasiassa varastoihin tavaran liikutteluun hyllyltä toiselle. Sitä vastoin ulkokäyttöön suunniteltu AutoJoe on erinomaisella maavaralla ja yli 100 kg:n kantokyvyllä varustettu kaivoskäyttöön tarkoitettu robottialusta. Tämä avaa koulun mahdollisuuksia suunnitella robotiikkaratkaisuja uusiin ympäristöihin.

Asiakkaan toiveena oli, että Metropolia auttaisi löytämään laitteen nykyiset puutteet sekä laitteen jatkokehityksessä mekaniikan ja elektroniikan osalta. Metropolian RoboGaragella rakennettu AutoJoe on epävirallisesti laitteen 5. prototyyppi.

Projektina näkökyky

Projektissa lähdettiin kehittämään AutoJoelle keinoa havainnoida ympäristöään. Komponenteiksi valikoituivat  NVIDIA Jetson Nano ja NVIDIA RealSense D455 niiden hyvän dokumentaation ja suorituskyvyn takia.

Tarkoituksena oli alunperin käyttää projektissa NVIDIA Jetson Xavieria, joka on Nanoa huomattavasti tehokkaampi tietokone, mutta sitä ei saatavuusongelmien johdosta voitu tähän projektiin käyttää. Kameraksi valittiin NVIDIA RealSense D455, jonka sisarmalli D435 on jo RoboGaragen MiR100-robotilla silminä.

Halusimme projektissa pitää huolen siitä, että kaikki ratkaisut ovat sellaisia, joiden päälle on helppo rakentaa lisää, ja niissä on hyvä dokumentaatio ja harrastelijakunta. AutoJoella tämä modulaarisuus toteutuu siten, että moottoreita ohjaa Arduino, joka saa tarvittavan tiedon kameroista Jetsonilta. Tällöin tulevat projektiryhmät löytävät helposti tarvitsemansa avun verkosta.

 

Tavoitteet

Projektin alussa asiakkaan kanssa määriteltiin kaksi tavoitetta: robotin tulisi tunnistaa edessään oleva ihminen tai este ja kyetä väistämään se, tai ainakin ymmärrettävä, ettei ihmisen päältä tai seiniä päin saa ajaa. Toinen tavoite oli saada robotti rakentamaan kolmiulotteinen kartta ympäristöstään myöhempää tarkastelua varten.

Halusin myös, että ratkaisu noudattaisi hyvin modulaarista Plug&Play-mallia, jossa robotin toiminta ei olisi riippuvainen tuottamastani moduulista, mutta se toisi laitteelle lisää toimintoja.

Kuva 3. Kaavio kytkennöistä

Toteutus

Lähdin toteuttamaan tavoitteita seuraamalla NVIDIAn omia tutoriaaleja[1] konenäöstä ja AI:n käytöstä Jetsonille sekä Kaliforniassa San Diegon yliopiston robotiikkaopiskelijoiden aikaisempaa samankaltaista projektia vuosilta 2020-2021[2]. Projektini aikana robotin parissa puuhasi kaksi muutakin projektiryhmää, joiden kanssa tein tiivistä yhteistyötä: innovaatioprojekti, jonka tavoitteena oli moottorien ohjaus Arduinon avulla sekä RoboGaragen klubi, joka kehitti AutoJoen mekaniikkaa paremmaksi.

Projektin aikana kohdattiin monia pieniä esteitä, joita piti lähteä ratkaisemaan sitä mukaa, kun niitä esiintyi. Muun muassa kävi ilmi, ettei Jetson Nano ole tarpeeksi vahva tekemään esteentunnistusta ja kartoitusta simultaanisti, mutta se kykenee sujuvasti suoriutumaan yhdestä tehtävästä kerrallaan. Tämän uskon ratkeavan, mikäli robotille saadaan Jetson Xavier aivoiksi.

Haasteita esiintyi Arduinon ja Jetsonin välisen kommunikaation ratkaisemisessa: olisin toteuttanut kommunikaation Jetsonin ja Arduinon välillä jollain elegantilla kommunikaatiokanavalla, mutta ne olivat Arduinolla jo kaikki käytössä moottorien ohjaukseen. Kommunikaatio piti toteuttaa yksinkertaisella digitaalilogiikalla eli kertomalla signaalien avulla onko reitti selvä vai ei.

3D-kartoitus osoittautui huomattavasti isommaksi haasteeksi. Tämän toteutus vaati ROSin (Robot Operating System) asentamista Jetsonille. ROSiin rakennetut työkalut mahdollistivat monimutkaisemman kuvankäsittelyn, jolloin sain piirretyä 3D-pistekartan robotin ympäristöstä..

Kun 3D-kartoitus ja esteiden tunnistus oli ratkaistu, piti vielä toteuttaa langaton kommunikaatio robotin ja käyttäjän välillä. Tämän päätin toteuttaa käyttämällä langatonta WiFi-verkkoa ja turvallista kahden pisteen välistä SSH-tunnelia. Näiden työkalujen avulla loppukäyttäjä voi langattomasti kirjautua Robotin sisällä olevaan Jetsoniin, käynnistää sieltä haluamansa ohjelman, 3D-kartoituksen tai esteentunnistuksen ja katsoa maailmaa robotin silmin.

Lähteet

  1. NVIDIA Corporation https://developer.nvidia.com/embedded/community/jetson-projects/hello_ai_world Luettu 17.5.2023
  2. S Saha, J Chong, Y Do, UCSD Autonomous Vehicles 2021 Team 1 https://developer.nvidia.com/embedded/community/jetson-projects/detection_object_avoidance_ros_detectron2. Julkaistu maaliskuu 2022. Luettu 17.9.2023
  3. Metropolia AutoJoe_blogin_videot. Julkaistu 2023.
Kirjoittaja

Niko Hutri

Evästeiden hyväksyntä Real Cookie Bannerin avulla