Samoudruživi robot

Samouduživi robot je projekt koji sponzorira Europska Unija u sklopu programa Buduće i nadolazeće tehnologije (FET), a čija je namjera proučavanje novih pristupa u dizajnu i implementaciji samoorganizirajućih i samosastavljivih umjetnih oblika. Program je započeo u listopadu 2001. te je uspješno okončan 2005. godine

Glavni znanstveni cilj projekta samoudruživog robota je proučavanje novog pristupa u oblikovanju i implementaciji samoorganizirajućih i samosastavljivih objekata. Taj je novi pristup našao svoje teorijske korijene u nedavnim studijama o kolektivnoj inteligenciji, koja se u studijama o samo-organizirajućim i samosastavljivim sposobnostima pojavljuje kod socijalnih i kolektivnih insekata te u ostalim životinjskim zajednicama. Glavni opipljivi cilj projekta je demonstacija toga pristupa konstrukcijom barem jednog takvog umjetnog proizvoda. Tako je nastala zamisao o samoudruživim robotima (SMR) koji su zapravo jedna cjelina, ali su sastavljeni od određenog broja jednostavnih, insektima sličnih, malenih robotskih jedinica (MRJ) – izgrađenih od relativno jeftinih komponenti, sposobnih za samosastavljanje i samoorganiziranje kako bi se prilagodili svojoj okolini. Ovaj se rad temelji na isprepletenim aktivnostima – dizajn i implementacija hardvera i softwera (programske podrške), dizajn i implementacija kontrolnog sustava SMR-a, te integracija, testiranje i procjena rezultata tih aktivnosti. Glavne vodilje oko dizajna hardwarea (elektronički sklopovi), simulatora i kontrolnih mehanizama sudionici projekta zajednički su definirali na njegovom početku, osiguravajući dosljednost u svakoj razini, te se odluke u jednoj razini nameću kao ograničenja na ono što bi se moglo učiniti na slijedećoj razini. Takvo vođenje specificira odgovarajući hardware za MRJ, karakteristika koje su zahtjevane za simulator (ono što će simulator simulirati), te kontrolne mehanizme (odabir odgovarajućeg mjesta raspodjele, kontrolni mehanizmi na bazi samoudružive inteligencije, te odgovarajući algoritmi za učenje i procjenu). Na bazi takvih specifikacija, prototipovi će biti razvijeni, procijenjeni i dokumentirani za sve tri komponente: MRJ (hardware), simulacija (software) i kontrolni mehanizmi na bazi samoudružive inteligencije (software). Kontrolni će mehanizmi biti testirani na simulatoru i hardwareskoj implementaciji. Konačna verzija sve tri komponente bit će razvijena i fino podešena koristeći se ulaznim podacima i povratnim vezama od zadnje dvije komponente. Tada će se razviti i složiti konačni prototip za demonstraciju. Na kraju će se izraditi barem jedan SMR, koji je zapravo samosastavljiv i samoorganizirajući robot, ali sastavljen od određenog broja (30-35) manjih jedinica zvanih MRJ.

Ciljevi projekta

Pošto takva umjetna tvorevina ne postoji, prvi je korak realizirati funkcionirajući SMR. Osobito se nastojalo testirati izvedivost integracije kolektivne inteligencije, pojačavanje učenja, te testiranje obrazaca procjene proračuna pri implementaciji samosastavljivih i samoorganizirajućih promjenjivih robota, a sve to u svrhu konstrukcije prototipa SMR-a. Projekt će se smatrati uspješnim ako će funkcionalni prototip, sposoban za samoorganizaciju, moći pokazati demonstraciju na kraju projekta.
Radni prototip biti će sposoban za ispunjavanje slijedećih ciljeva :
• Dinamička formacija oblika te promjene – SMR sastavljen od barem 20 MRJ jedinica slučajno raspoređenih na podlozi biti će sposobne na samosastavljanje u određen broj različitih planarnih i prostornih geometrijskih konfiguracija. Takve konfiguracije bit će zatvoreni oblici s internom strukturom kao što su: centralno-periferne figure (jedan dio MRJ-a ostaje unutar perimetra, dok sve ostale ostaju izvana), šahovska ploča, podjela (svaka će polovica strukture sadržavati MRJ sa sličnim karakteristikama).
• Navigacija na teškom terenu – SMR sastavljen od barem 20 MRJ jedinica biti će sposoban za autonomnom pokretljivošću preko terena, a vođenje će biti pomoću informacija dobivenih sa senzora iz pojedinog MRJ-a. Zapravo, namjera je postići slijedeće ciljeve: pratiti svjetlo pri čemu se zadržava originalni oblik (prije navedeno), pratiti svjetlo kroz uski prolaz i tunele koji pak zahtijevaju dinamičku rekonfiguraciju SMR-a, prijelaz preko rupe (provalije) ili kroz strmo konkavno područje kojeg sama MRJ jedinica nebi mogla proći, kretanje od točke “A” prema točki “B” na teškom terenu (npr. najkraćim putem ili uz stepenice i niz stepenice).
• Povećanje broja jedinica – Jedan od navedenih pokusa u obje kategorije bit će ponovljena s povećanim brojem MRJ-ova (30 do 35) kako bi se proučavalo ponašanje SMR sustava pri povećanju broja jedinica.

Postignuće tih ciljeva bit će ispitano demonstracijama i mjerenjima kojima će se utvrditi slijedeće : točnost s poštivanjem željenog oblika (npr. ako želimo SMR u obliku kvadrata tada se gleda koliko je željeni oblik blizak kvadratu), vrijeme potrevno za formiranje oblika i/ili kretanje čitavog sustava od točke “A” do “B”, robusnost prilikom dodavanja i/ili micanja MRJ-a, te SMR entropija kao mjera stupnja organiziranosti.

Koncept i dizajn
Važan čimbenik projekta je postojanje barem jednog samoudruživog robota koji je samo-sastavljiva i samoorganizirajuća robotska kolonija načinjena od 30-35 malenih robotskih jedinica. Svaka malena robotska jedinica je potpuno autonomni pokretni robot sposoban za jednostavne zadatke kao što je autonomna navigacija, percepcija svoje okoline koja ga okružuje, te prihvaćanje objekata. On je također sposoban za komunikaciju s ostalim jedinicama te fizičko povezivanje s njima, čvrsto ili fleksibilno, a kako bi se sastavio samoudruživi robot. Samoudruživi robot trebao bi biti sposoban za istraživanje, navigaciju i transport težih objekata na vrlo teškim terenima, pogotovo kada jedna robotska jedinica ima problema ako bi zadatak izvodila sama. Hardwareska struktura je kombinirana s raspoređenom adaptivnom kontrolnom arhitekturom koja je inspirirana ponašanjem mravlje kolonije.

Malena robotska jedinica prikazana je na slici 1. Pokretljivost je postignuta diferencijalnim pogonom sastavljenim od gusjenica i kotača (DPGK). Svaki DPGK je kontroliran motorom kako bi se robot slobodno kretao u okolini ili vrtio u jednoj točki. Pomoću DPGK-a svakom je MRJ-u omogućeno kretanje po srednje teškom terenu, a kompliciraniji zahvati biti će diktirani od SMR-a. Baza motora, zajedno sa DPGK-om, može rotirati oko robotskog trupa pomoću motoriziranih osi. MRJ se može priključiti i prihvatiti drugi MRJ pomoću dva tipa fizičkog zahvata – čvrstog i polupomičnog.
Čvrsti prihvat između dva MRJ-a ostvaren je hvataljkom montiranom na horizontalnoj aktivnoj osi. Ta hvataljka ima vrlo široko prihvatno područje koje omogućuje sigurni prihvat pri bilo kojem kutu te podizanje (ako je potrebno) drugog MRJ-a. Polupomična je veza omogućena pomoću pokretnih hvataljki pokretanih sa tri motora (pozicioniranih u točki učvršćenja na tijelu robota). Tri stupnja slobode omogućuju pomicanje ruke naprijed-natrag kao i gore-dolje.
Uporabom čvrste i pomične veze, MRJ-ovi mogu formirati SMR u obliku 1D (lanac) ili 2D (šahovska ploča) strukture. Te se strukture mogu savinuti te tako dobijemo 3D oblik. Čvrsta i pomična veza imaju komplementarne uloge u radu SMR-a. Čvrsta se veza uglavnom rabi za formiranje čvrstih lanaca koji moraju prijeći provalije. Pomična je veza prihvaćena za konfiguracije gdje svaki robot može imati vlastitu pokretljivost unutar strukture. SMR također može imati miješanu, čvrsto-pokretnu vezu ako je to potrebno. Potencijalne aplikacije takvog tipa SMR-a su: poluautomatsko istraživanje prostora, traženje i spašavanje a, naravno, otvaraju se i mogućnosti vojne uporabe.
Glavne tehničke značajke malene robotske jedinice su :
• Kompaktna veličina : promjer glavnog tijela116 mm, visina 100mm
• Pokretljivost na svakom terenu uz uporabu DPGK mehanizma
• Rotacija glavnog tijela u odnosu na pokretnu bazu
• Kruta hvataljka s jednim stupnjem slobode
• Pokretna hvataljka s tri stupnja slobode
• Optičko osjetilo na hvataljkama
• 15 IC blizinskih senzora raspoređenih okolo robotskog tijela
• 4 IC blizinskih senzora ispod robota
• 8 komada trobojnih svijetlećih dioda (LED) raspoređenih okolo robotskog tijela
• Senzor za silu između DPGK baze i glavnog tijela
• Torzijski senzor na kotačima i sustav za rotaciju tijela
• 3-osni mjerač ubrzanja
• Senzori vlažnosti zraka
• Temperaturni senzori
• Jedan zvučnik i četiri mikrofona
• Kamera koja vidi u svim smjerovima (omnidirekcijska kamera).

20 MRJ-a samo-sastavljenih u jedan SMR koji povlači dijete na podu. Eksperiment je izveden u polu-automatskom modu – korisnik je definirao broj MRJ-a, raspodjelu MRJ-a u SMR, globalnu lokalizaciju djeteta, te globalno vrijeme potrebno za akciju. SMR je u autonomnom modu precizno odredio mjesta prihvata hvataljkama, pristup i samo-sastavljajući proces
Slika 3 prikazuje potpuni prototip izrađen prema navedenim specifikacijama. Isti uključuje kompletnu mehaniku i elektroniku (14 elektroničkih sklopova podržava 14 procesora i svu senzorsku i pokretačku kontrolu). Glavno kontrolno računalo radi pod LINUX operativnim sustavom (besplatan, alternativni operativni sustav za sve tipove računala) te je opremljeno bežičnom mrežom, kontrolnom kamerom i zvučnim sustavom. Jedna zanimljiva osobina prototipa je njegov svjetlosni prsten za komunikaciju s ostalim MRJ. Na slici 4 prikazano je nekoliko mogućih primjera svjetlosnog prstena. Svaki od 8 sektora na svjetlosnom prstenu može poprimiti RGB nijanse (kombinacija crvene, zelene i plave boje) te treperiti na različitim frekvencijama. Prsten također može biti promatran pomoću omnidirekcijske kamere.

Blok dijagram samoudruživog robota

Simulacije na računalu
Razvoj i testiranje kontrolnog softwarea (programske potpore) za pokretljive robote je vrlo dugačak i zamoran proces. Samoudruživi robot je vrlo komplicirana struktura sastavljena od mnogo visokosofisticiranih robotskih jedinica, pa je važno imati pomoćni alat koji se može nositi s razvojem kontrole robota. Swarmbot3D je takav simulator, a razvijen je na temelju Vortex – jezgri komercijalnog fizikalnog simulatora tvrtke Critical Mass Lab, Inc. Simulator omogućuje definiciju kako robota tako i okruženja u obliku XML tekstualne datoteke. To je vrlo prilagodljivo u svim svojim aspektima te osigurava jednostavnu uporabu grafičkog sučelja pomoću kojeg se izravno ophodi s robotima te se definira okruženje (jakost difuznog svjetla, gravitacija, vidno polje kamere, resetiranje, itd.).
Glavne karakteristike simulatora su slijedeće :
• Kontinuirana 3D dinamička simulacija višestrukog sustava (SMR) sastavljenog od kooperativnih robota (MRJ).
• Implementirana je potpuna hardwareska funkcionalnost (senzori i mehanika) jednog realnog MRJ-a.
• Programi razvijeni na simulatoru potpuno su prenosivi na realne robote.
• Mogućnost interaktivne kontrole tijekom simulacije.
• Mnoge robotske simulacije imaju ugrađene različite razine detalja. Poštujući to, definirana su 4 različita MRJ referentna modela : brzi, jednostavni, srednji i detaljni.
• Dinamičko preklapanje modela je dodatna opcija jedinstvena u simulaciji kompleksnih sustava kao što su roboti. Ono omogućuje preklapanje u realnom vremenu između reprezentacije modela.
• Sposobnost upravljanja grupe robota kao neovisnih jedinica ili u konfiguraciji udruživog robota. Fizička povezanost između dva robota dinamički je kreirana tijekom simulacije i može se isključiti kada se komponente raspadnu.

Jedna od ključnih karakteristika paketa Swarmbot3D je modularnost. Jedan MRJ može biti definiran od četiri glavna podsustava – DPGK, pokretni gornji dio (kupola, tornjić), prednja ruka s hvataljkom i ruka s hvataljkom montiranom sa strane. Robotski je model zapravo kreiran pozivanjem kombinacija tih dijelova. DPGK i tornjić su obvezni, dok su hvataljke (prednja i sa strane) opcionalne. Svaki je dio definiran s različitom razinom detalja. Tada kombinacija dijelova zapravo utvrđuje aproksimaciju robota odabranu kako bi se reprezentirao jedan MRJ (po hijerarhiji). MRJ se može jednostavno prilagoditi tako da se editira XML datoteka koja pak sadrži njegovu definiciju, iako su iz praktičnih razloga predefinirana 4 modela : brzi (2 pogonska kotača, 2 pomoćna kotača, jednostavno tijelo DPGK, jedan tornjić), jednostavni (kao i brzi, ali dvostruko veći kako bi se bolje poklapao sa realnim MRJ-om), srednji (6 sferičnih kotača, jedno detaljno tijelo DPGK, jedan detaljni tornjić, jedna pojednostavljena hvataljka), detaljni (kopija realnog MRJ u svim segmentima – mehaničkim i senzorskim).
Modeliranje terena pomoću Swarmbot3D paketa vrlo je jednostavno. Potpuno isto kao i sa robotskim modulima, tereni mogu biti definirani u XML formatu (tekstualna datoteka). Moguće je definirati teren kao čistu ravninu, kao grubi teren (brda-doline), kao oblik složen od ravnina različitih visina, ili kao kombinacija svih navedenih. Iako korisnik može definirati teren po želji, ovdje također imamo predefinirana 3 referentna terenska modela: glatka površina, ravnine poslagane na različitim visinama, grubi teren (brda-doline). Svaka definicija terena određuje složenost matematičkih proračuna, a time i opterećenje simulatora (glatka ravnina – slabo opterećenje, komplicirani “pejsaž” – jako opterećenje). Pošto fizikalna jedinica simulatora ne podupire logičke operacije na geometriji terena, nije moguće definirati rupe na terenu koje su zapravo uklonjeno područje terena. Jedino je rješenje prilagoditi oblik terena ili uporabiti kompozitne ravnine (ove druge imaju prednost jer manje opterećuju simulator).

Svaki je MRJ opremljen određenim brojem senzora, ali svi referentni robotski modeli nisu opremljeni sa svakim. Brzi i jednostavni robotski modeli posjeduju samo jednostavnu formu blizinskih i zvučnih senzora implementiranih na bazi tabele uzoraka. Oni također posjeduju jednostavne senzore sila koji očitavaju sile koje se mogu pojaviti na modelima. Srednji i detaljni modeli posjeduju sve senzorske kapacitete kao i realni roboti, ali bez senzora za vlažnost i temperaturu. Senzori koji su dostupni u potonja dva modela jesu : IC blizinski senzori, IC senzori na dnu robota, optička barijera na hvataljci, pretvarači na spojevima (zglobovima), senzori okretnog momenta, svjetlosni senzori, tahometar, detektor zvuka, senzor napredovanja, mjerač nagiba, omnidirekcijska kamera. Tehnika uporabljena u implementaciji svakog IC senzora bazirana je na “praćenju zrake”. Ukratko, definirani zamišljeni konus s uspoređivanjem amplitude kao na stvarnom IC-u. Konus je u čvrstoj točki na IC predajniku lociranom oko tornjića. Četiri slučajno raspoređene zrake “šaraju” iz čvrste točke unutar površine zamišljenog stožca, a jedna je usmjerena od iste čvrste točke usporedo s osi stožca. Ako je sjecište jedne od 5 zraka pronađeno tada se šalje signal. To je jednostavna implementacija realnog IC-a, ali se dokazala kao dovoljna za njegovu simulaciju. IC senzori na dnu su implementirani slično kao i gornji IC senzori, ali sa znatno kraćim dometom.
Jedinstvena osobina paketa Swarmbot3D je njegova mogućnost dinamičkog preklapanja reprezentacije jednog simuliranog MRJ-a. Simulator ostvaruje hijerarhiju referentnih robotskih modela pri čemu svaki od njih podrazumijeva različitu matematičku složenost, a time i opterećenje simulatora. Uporabom te tehnike moguće je prisiliti simulator da uposli jednostavnije MRJ opise koji su se sposobni nositi s danom situacijom u svojoj okolini. Pritom se pretpostavlja kako svi roboti moraju biti kompatibilni sa svakim. Zahvaljujući toj tehnici, simulator je sposoban optimizirati učinkovitost kolektivne simulacije upošljavajući model koji je uvijek manje zahtjevan za proračun, a istodobno precizniji između onih koji su dostupni u hijerarhiji.

Ponašanje u stvarnosti

Koordinirano kretanje – grupa fizički složenih MRJ-a trebala bi se kretati što brže i što ravnije ako je to moguće. Kontrolni sustav koji podupire takvo ponašanje temeljen je na jednostavnom razvojnom neuralnom kontroleru i senzoru praćenja, a prije toga sve je testirano na simulatoru te kasnije preneseno na realnu MRJ. Dodatno, koordinirano kretanje funkcionira i kada MRJ nisu izravno fizički spojeni jedan na drugoga, nego su zajedno spojeni s čvrstim objektom kojeg treba nositi.
Izbjegavanje rupe (provalije) – ovaj je zadatak definiran radi proučavanja kolektivne navigacijske strategije u izbjegavanju rupa (provalija) koje se pojavljuju u okolini. Realni je MRJ opremljen s 4 blizinska senzora koji su postavljeni ispod podvozja te se mogu uporabiti kao detektori rupa. Ti su senzori paralelni sa smjerom gusjenica pa se rupa može opaziti samo ako MRJ kreće izravno na nju. Iz tog razloga jedan MRJ ne može zapaziti pozicije rupa na svojoj strani pa zato može lako upasti u njih. U takvoj je situaciji jedino rješenje spajanje u samoudruživog robota (SMR) čije MRJ kooperativno zapažaju te izbjegavaju rupe.

Kretanje na teškom terenu – u ovom se eksperimentu ispituju sposobnosti SMR-a u kretanju po teškom terenu. Prvo se ispitivala mogućnost koordiniranog kretanja i penjanja uz strmu ravninu. Zatim se ispitala mogućnost u penjanju po stepenicama. Ovdje se vidjelo kako SMR kooperativno rješava problem koji bi jednostavno blokirao svaku samostalnu i neovisnu malenu robotsku jedinicu. Samosastavljanje i transport objekata – MRJ-i su sposobni za autonomno samosastavljanje (grupa MRJ-a spaja se na svakoga od sebe, formirajući sastavljenu strukturu) uz pomoć kamere za udaljene informacije, blizinskih senzora za bliže informacije, te senzora na hvataljkama za siguran zahvat. Kontrolna strategija tako omogućuje SMR-u kretanje u koordiniranom režimu koje je izvedeno na simulatoru te uspješno primijenjeno na realnim robotima. Takve strategije su uporabljive za koordinirani transport teških objekata do cilja, rabeći vizualne senzore kao i senzore sila na robotskome tijelu. Nalaženje objekta/cilja – Razvoj vještine potrebne MRJ-u kako bi ustalio putanju od polazišnog područja do ciljnog područja rabeći ostale MRJ-e za navođenje. Dakle, grupa MRJ-a treba pronaći ciljni objekt.

 

Marijo PETROVIĆ

Foto: LIS-EPFL