Diplome iz mobilne robotike

 

Kontaktna oseba:  Gregor Klančar

 

 

--------------------------------------------------------------------------------------------------------------------

Razpoznavanje okolice s strojnim vidom

 

Področje dela: strojni vid, razpoznavanje, programiranje v jeziku C++

 

Opis:

Razpoznavanje okolice s pomočjo barvne kamere, ki je montirana na mobilnem robotu. Cilj naloge je iz barvne slike kamere razpoznati znane objekte, predmete oziroma ostale cilje. Na osnovi znanih lastnosti iskanih predmetov (oblika, barva, velikost, ostale možne lastnosti) naj algoritem izračuna značilke ter na osnovi razvrščanja identificira in locira iskane predmete na sliki okolice. Ker je razpoznavanje s strojnim vidom lahko precej kompleksno opravilo, se v nalogi osredotočite na bolj enostavne pristope.

 

Naloga naj vsebuje osnovni pregled možnih pristopov. Izbrani pristop naj bo podrobneje dokumentiran, podan naj bo algoritem in izvorna koda ter ilustrirani prikazi rezultatov delovanja.

 

--------------------------------------------------------------------------------------------------------------------

 

Upravljanje mobilnega robota s pomočjo 3D pogleda s stereo kamero

 

Področje dela: pregled pristopov, stereo vid, vizualizacija, praktično delo, programiranje v jeziku C++

 

Opis:

Pri daljinskem upravljanju operater vodi robota preko tipkovnice oz. igralne palice glede na sliko okolice, ki jo dobi iz slikovnih senzorjev – barvnih kamer. Da ima operater boljšo globinsko predstavo, s pomočjo katere lahko bolj varno upravlja z mobilnim robotom, je koristna uporabo stereo kamere. Zelo poenostavljeno povedano, globinski občutek človek dobi, če mu na levo oko projiciramo sliko leve kamere in na desno sliko desne kamere.

 

V nalogi je potrebno raziskati obstoječe pristope vizualizacije, ki omogočajo uporabniku 3D občutek (očala z barvnim rdečim in zelenim barvnim filtrom, polarizator, LCD očala...). Predlagati je potrebno rešitev in izvedbo, za namen daljinskega vodenja mobilnega robota.

 

--------------------------------------------------------------------------------------------------------------------

 

Upravljanje robotske roke montirane na mobilnem robotu

 

Področje dela: spoznavanje z opremo, kinematika manipulatorja, praktični primeri, osnove programiranja v jeziku C

 

Opis: Mobilni robot Pioneer 3AT je opremljen z robotsko roko, katero robot lahko uporablja pri opravljanju določenih opravil v okolju. Roka je že opremljena z vsemi potrebnimi gonilniki za njeno obratovanje. Potrebno je preučiti dokumentacijo, se spoznati z opremo, določiti kinematiko manipulatorja in napisati potrebne vmesnike, ki uporabniku olajšajo upravljanje, in prikazati nekaj praktičnih primerov uporabe robotske roke - demonstracija.

 

--------------------------------------------------------------------------------------------------------------------

 

Mikrokrmilniška enota za upravljanje s senzoriko in aktivatorji mobilnega robota

 

Področje dela: elektronika, načrtovanje, samostojno praktično delo

 

Opis: Cilj naloge je razvoj univerzalnega zmogljivega mikrokrmilniškega sistema, ki bi bil primeren za uporabo pri krmiljenju enot mobilnega robota. Vezje mora torej imeti: dovolj analognih izhodov (PWM) za krmiljenje vsaj dveh oz. bolje štirih DC elektromotorjev, dovolj analognih vhodov, vhode za branje inkrementalnih enkoderjev (vsaj 2 enkoderja, bolje 4), dva kanala za serijsko RS232 komunikacijo, I2C in CAN komunikacijo, trajen spomin EPROM itd. Sistem je lahko tudi kombinacija komercialno dostopnih razvojnih mikrokrmilniških enot ter potrebnih nadgradenj.

 

V nalogi je potrebno načrtati elektronsko shemo, tiskanino, najti ustrezno razvojno okolje za programiranje enote, podati ustrezno dokumentacijo in enostavne primere uporabe.

 

--------------------------------------------------------------------------------------------------------------------

 

Okolja za simulacijo večagentnih sistemov

 

Področje dela: večagentni sistemi, simulacija

 

Opis: V nalogi raziščite dostopne simulatorje, ki bi bili primerni za simulacijo večagentnih sistemov. Izbrano simulacijsko okolje (po vaši presoji oz. npr AnyLogic ali Dymola) podrobneje opišite, predvsem princip dela s tem okoljem. V tem okolju podajte nekaj primerov enostavnejših večagentnih sistemov, torej sistemov, kjer imamo več agentov, ki skupaj samostojno opravljajo neko opravilo (mobilni roboti – viličarji v skladišču, skupina napadalcev oz. vojakov v neki akciji, agenti skavti, ki raziskujejo neznan teren, simulacija prizorov množice ljudi za potrebe filmske industrije, robotski nogomet, ...).

 

 --------------------------------------------------------------------------------------------------------------------

 

Uporaba fizikalnih programskih paketov za namen simulacije in animacije

 

Področje dela: fizikalno modeliranje, animacija, programiranje v jeziku C

 

Opis: Z razvojem računalniških iger, računalniške grafike, animiranih filmov, itd. so se pojavili številni fizikalni paketi, ki lahko realistično simulirajo dinamiko togih teles glede na fizikalne veličine kot so: masa, vztrajnost, trenje, dušenje, hitrost, itd. Nekaj primerov takih knjižnic je prosto dostopnih kot npr. knjižnica ODE (Open Dynamics Enfine), ostale knjižnice epa so AERO, Karma in ostale. Uporaba teh sistemov omogoča realističen izgled računalniških simulatorjev, animacij in iger (dirkalne igre). Prednost teh sistemov je, da že vsebujejo fizikalno ozadje in animacijo (pogosto tudi 3D), tako da mora uporabnik le sestaviti in parametrizirati svoj objekt (model avtomobila) iz razpoložljivih sestavnih delov fizikalne knjižnice.

 

Podajte osnovni pregled teh fizikalnih orodij, podrobneje opišite izbrano orodje (npr. ODE), ga preučite in zanj opišite princip dela ter  uporabe. Naredite nekaj praktičnih prikazov različnih simulatorjev.

 

 --------------------------------------------------------------------------------------------------------------------

 

Algoritmi načrtovanja poti znotraj znanega okolja

 

Področje dela: pregled algoritmov, programiranje (Matlab ali C), planiranje poti, optimizacija

 

Opis: Raziščite algoritme, ki so primerni za načrtovanje poti mobilnega robota znotraj neke okolice, podane z zemljevidom. Cilj načrtovanja poti, je poiskati najprimernejše poti, ki vodi od robota do ciljne lokacije. Zemljevid okolice, je podan s skupino daljic, ki ponazarjajo ovire (stene), lahko pa tudi na kakšen drug način.

 

Naloga naj vsebuje pregled algoritmov z ustreznimi primeri načrtovanja poti in medsebojnih primerjav.

  

--------------------------------------------------------------------------------------------------------------------

 

Modul za vodenje mobilnega robota Pioneer 3AT

 

Področje dela: serijska komunikacija, programiranje v jeziku C, praktično delo

 

Opis: Cilj naloge je razvoj modula, ki zna komunicirati z mikrokrmilnikom na robotu Pioneer 3AT. Komunikacija je serijska (RS232) in protokol komunikacije je podan v dokumentaciji mobilnega robota. Protokol je torej potrebno sprogramirati, tako da lahko uporabnik preko preko komunikacije dostopa do podatkov mikrokrmilnika (odčitki senzorjev) ter posreduje ukaze robotu (hitrostno referenco). Omenjeni modul je del programske aplikacije, ki vsebuje še algoritme za vodenje mobilnega robota, algoritme lokalizacije in ostale.

 

--------------------------------------------------------------------------------------------------------------------

 

Lokalizacija mobilnega robota v okolju z znano geometrijo

 

Področje dela: lokalizacija, mobilna robotika, simulacija

 

Opis: Poznavanje lege mobilnega robota v neki okolici je eden ključnih problemov mobilne robotike. V ta namen se uporabljajo algoritmi lokalizacije, ki preko primerjav zaznamkov senzorjev in znane oblike prostora oz. položaja markerjev v prostoru lahko določijo lego robota v tem prostoru. Večinomoma nastopa v teh algoritmih Kalmanov filter, ki združuje informacije dobljene iz senzorjev premika (enkoderji na kolesih) ter informacijo globalnega senzorja (laserski pregledovalnik razdalj oz. drugi senzorji).

 

V nalogi preučite algoritme lokalizacije z uporabo Kalmanovega filtra (lahko tudi druge) in z enostavnimi stimulacijskimi primeri demonstrirajte delovanje v okolju Matlab.

 

--------------------------------------------------------------------------------------------------------------------

 

Uporaba stereo kamere na mobilnem robotu in razvoj gonilnikov

 

Področje dela: stereo vid, programiranje v okolju C++

 

Opis: V okviru naloge se je potrebno spoznati z razpoložljivo programsko opremo in dokumentacijo stereo kamere (BumbleBee2 proizvajalca Point Grey Research). Napisati je potrebno morebitne potrebne dodatne knjižnice za delo s kamero (inicializacija, zajem slik v želenem formatu). Analizirajte možne primere uporabe stereo kamere na mobilnem robotu in delovanje kamere demonstrirajte z nekaj primeri uporabe.

 

--------------------------------------------------------------------------------------------------------------------

 

Demonstracijski mobilni robot opremljen z WLAN kamero

 

Področje dela: mobilni robot, strojni vid, vodenje

 

Opis: Namen naloge je sestaviti nekaj enostavnih vaj oz. primerov, ki bi demonstrirali možnosti uporabe barvne kamere na mobilnem robotu. V ta namen boste na manjšega, že narejenega mobilnega robota (iz robotskega nogometa), montirali WLAN kamero. S pomočjo kamere (kamera je senzor v regulacijski zanki) boste preko radijskega modema mobilnemu robotu pošiljali hitrostne ukaze za njegov premik.

 

Cilj naloge je narediti nekaj učnih primerov uporabe kamere v mobilni robotiki. Ti primeri naj demonstrirajo preprostejše do nekoliko bolj zahtevnih primerov uporabe kamere v mobilni robotiki. Demonstracijski primeri morajo biti nazorni ter enostavni. Enostavnejši primer je recimo sledenje robota narisani črti (črna črta na beli podlagi). Ostali možni dodatni primero so recimo: vožnja v labirintu, iskanje določenih predmetov (na osnovi barvne informacije), lokalizacija na osnovi barvnih markerjev znane oblike, barve in z znano globalno pozicijo.

 

 

--------------------------------------------------------------------------------------------------------------------