Krugovi

Kako izgraditi robota koji se kreće: 7 koraka

KAKO NAPRAVITI ROBOTA - samostalno kod kuće

KAKO NAPRAVITI ROBOTA - samostalno kod kuće

Sadržaj:

Anonim

Ovo je detaljan vodič o tome kako ostvariti robota počevši od nule, te mu dati mogućnost samostalnog kretanja u nepoznatom okruženju.
Svi tipični argumenti povezani s robotikom bit će pokriveni: mehanika , elektronika i programiranje .
Cijeli robot je dizajniran tako da ga može izraditi svatko kod kuće bez profesionalnih (tj. Skupih) alata i opreme.
Moždana ploča (dsNav ) temelji se na Microchip dsPIC33 DSC s mogućnostima davača i kontrolera motora. Položaj se izračunava pomoću odometrije (koder) bez ikakve vanjske reference (mrtva računanja).
U konačnoj verziji neki drugi kontroleri koriste se za kontrolu senzora (Arduino) i za upravljanje analognim senzorima (PSoC).

Pribor:

Korak 1: Osnovna platforma

Primjer kako izgraditi vrlo jednostavnu robotsku platformu s komponentama i dijelovima koje je lako pronaći svugdje, bez potrebe za profesionalnim alatima ili opremom, i bez posebne vještine na mehaničkim radovima.
Veličina baze omogućuje njezinu uporabu u mnogim različitim kategorijama robotskih natjecanja: Explorer, Line Follower, Can Collector, itd.

Korak 2: Što želimo dobiti? i kako?

Ovaj robot, kao i većina robota koje su izradili hobisti, temelji se na diferencijalnom sustavu upravljanja, što nam omogućuje da znamo koordinate položaja robota u svakom trenutku, jednostavno znajući prostor koji svaki točak povremeno pokriva s dovoljno preciznosti.
Ovaj navigacijski sustav s mrtvim računom je pod utjecajem kumulativne pogreške; preciznost mjerenja mora biti visoka kako bi se osigurao mali krug pogreške nakon dugog puta. Tako sam, nakon dobrih rezultata kod kućnih enkodera, odlučio iskoristiti nešto bolje: par od 12V-200 okretaja u minuti, povezano s nekoliko 300 Count Per Revolution (cpr) enkodera, koji su dostupni u mnogim robotičkim internet trgovinama.
Osnovni principi
Da bismo uhvatili sve impulse koje generira koder 300 cpr na motoru od 3000 o / min u 4x metodi dekodiranja (120 kHz), potreban je namjenski hardver za svaki koder (QEI = sučelje kvadrature kodera). Nakon nekih eksperimenata s dvostrukim PIC18F2431, utvrdio sam da je ispravna nadogradnja na dsPIC. Na početku su bila dva dsPIC30F4012 motorna kontrolera za kontrolu položaja i brzine kotača, za obavljanje odometrije i davanje podataka o dva motora na dsPIC30F3013. Ovaj DSC opće namjene je dovoljno snažan da dobije podatke, napravi neku trigonometriju kako bi izračunao koordinate položaja i pohranio podatke koji se odnose na put koji je pokriven kako bi dobio mapu polja, i to vrlo visokom brzinom.
Kada su ploča i programi bili gotovo dovršeni, Microchip je donio novu, snažnu 28-pinsku SPDIP u dsPIC33F seriji za oba kontrolera motora (MC) i opće namjene (GP). Oni su znatno brži od dsPIC30F, imaju mnogo više raspoložive programske memorije i RAM-a (korisno za mapiranje polja), zahtijevaju manje energije (dobro za robot na baterije), a njihove DMA mogućnosti pojednostavljuju mnoge I / O operacije.
Ono što je najvažnije, to su prvi kontroleri motora Microchip s dva QEI-a na istom čipu. Započnimo novu luku! logički blok dijagram sličan je onom za prethodnu ploču , ali hardver i softver od tada su mnogo jednostavniji Mogu koristiti jedan DSC samo tri puta , Nema potrebe za komunikacijom visokih brzina između nadzornika i kontrolora motora za razmjenu navigacijskih parametara. Svaki proces je jednostavan za sinkronizaciju jer je na istom čipu. Mogućnost odabira perifernih pinova serije dsPIC33F dodatno pojednostavljuje PCB, omogućujući unutarnje povezivanje perifernih uređaja i veću fleksibilnost.
To nas dovodi do “dsPIC-a temeljenog na navigacijskoj kontrolnoj ploči” ili dsNavCon za kratko. Ova ploča je zamišljena kao dio složenijeg sustava. U cjelovitom istraživačkom robotu, druge ploče će kontrolirati zvuk, svjetlo, senzore za plin, kao i odbojnike i ultrazvučne senzore za pronalaženje ciljeva i izbjegavanje prepreka.
Kao samostalna ploča, dsNavCon može se koristiti i za jednostavnog robota "sljedbenika linije", nešto složenijeg poput robota za natjecanje odometrije i mrtvog razmišljanja, ili tzv. "može moći robota" (za natjecanja sakupljanja limenki). Još uvijek postoji dovoljno slobodne programske memorije za dodavanje koda za takve zadatke. Uz manje ili nikakve promjene u softveru, može se koristiti i samostalno za vozilo na daljinsko upravljanje, koristeći dvosmjerni RF modem s nekom vrstom pametnog daljinskog upravljača. Ovaj daljinski upravljač može slati složene naredbe poput "premjesti FWD 1m", "skrenuti 15 ° lijevo", "pokrenuti FWD na 50 cm / s", "prijeći na X, Y koordinate" ili nešto slično.
Ploča i robot također su dizajnirani da ih napravi svatko kod kuće bez profesionalnog alata i opreme.

Korak 3: Hardver otvorenog koda

Blok dijagram
Podsustav za upravljanje navigacijom sastoji se od dsNav kao “pametna” ploča sustava i L298-bazirana ploča s dvostrukim H-mostom za upravljanje s motorom s 12V motorom (Hsiang Neng HN-GH12-1634TR). Povratna informacija o pokretu dolazi od nekoliko 300 cpr enkodera (US digital e4p-300-079-ht).
Komunikacija s vanjskim svijetom provodi se kroz dva UART serijska sučelja; jedan za telemetriju, a drugi za podatke s ploče senzora. Modul XBee može se spojiti na UART1 ili UART2 kroz JP1 i JP2 skakače. Utičnice J1 i J16 dostupne su za druge vrste priključaka. COMM1 port (J16) se također može koristiti za I2C komunikaciju zahvaljujući perifernoj sposobnosti odabira pinova dsPIC33F serije.
Izvorni shematski dijagram u Eagle formatu možete pronaći ovdje:
http://www.guiott.com/Rino/dsNavCon33/dsNavCon33_Eagle_project/DsPid33sch.zip
Kao što možete vidjeti shematski je tako jednostavna da se može provesti na perfboard kao što sam učinio. Ako ne želite koristiti ovaj sustav i ne želite ostvariti vlastiti PCB, komercijalni odbor temeljen na mom originalnom radu i potpuno kompatibilan s mojim open source softverom dostupan je na: http: //www.robot-italy com / product_info.php? products_id = 1564

Korak 4: Open Source softver

Softver je razvijen s MPLAB-om bez IDE-a i pisan s MPLAB® C30 kompilatorom (čak iu slobodnoj ili studentskoj verziji), oboje (naravno) putem Microchipa:
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=81
Cijeli projekt dostupan je kao otvoreni izvor na Google Code
http://code.google.com/p/dspid33/
Tamo potražite najnoviju verziju, komentar, opise itd.
Program je opisan korak po korak unutar koda. Da bi imali visoku razinu komentiranja i čitljiviji kod, na svakom značajnom mjestu postoji broj u zagradama (npr.: 7) kao referenca na vanjsku datoteku (tj. DescrEng.txt) u MPLAB projektu ,
Dijagram prikazuje cjelokupnu arhitekturu kontrolnih postupaka dsNav ploče i navigacijske strategije primijenjene na temelju projekta.
Kontroleri motora mogu se vidjeti kao crne kutije koje brinu o brzini kotača. Nadzorni dio programa šalje im referentnu brzinu (VeldDesX: željena brzina). Moduli ulaznog hvatanja mikrokontrolera dobivaju impulse od davača priključenih na osovinu motora i dobivaju brzinu vrtnje motora (VelMesX: izmjerena brzina). Kombinirajući svaki 1ms ove vrijednosti u PID regulaciji "Speed ​​PID" dobivamo pravu PWM vrijednost kako bi zadržali željenu brzinu svakog pojedinačnog kotača.
Moduli QEI (Quadrature Encoder Interface) dobivaju i A i B impulse iz enkodera i vraćaju nadzornoj funkciji smjer kretanja i broj impulsa u 4x modu (brojeći rastuće i padajuće rubove signala A i signala B: 2 x 2 = 4).
Množeći broj impulsa s K koji označava prostor koji je prešao za svaki puls enkodera, dobivamo udaljenost koju su prešli desnim i lijevim kotačima svakih 10 ms. Nadzornik kombinira ove informacije o putovanju i primjenjuje postupak mrtvog obračuna kako bi dobio mjerene koordinate položaja botova: Xmes, Ymes, θMes (kut orijentacije).
Nadzornik prima navigacijsku naredbu izvana serijskim sučeljem (telemetrija).
Mogu se primijeniti različite strategije:
- kretanje uz zadanu brzinu u određenom smjeru (VelDes, θDes).
B - putovati prema određenoj točki s koordinatama XDes, YDes.
C - putovanja za zadanu udaljenost u određenom smjeru (DistDes, θDes).
Način A : s "logičkim kontrolnim prekidačima" u poziciji 1, funkcije PID-a koriste samo PID-regulaciju "Kutni PID". Ovaj kombinira željeni kut θDes s izmjerenim kutom θMes izračunatim postupkom odometrije, kako bi se dobila vrijednost kutne brzine vrtnje ω vozila oko njegove vertikalne osi, potrebne za ispravljanje pogreške orijentacije.
Vrijednost DeltaV je proporcionalna ω. VelDes dodaje da dobije brzinu lijevog kotača i oduzme VelDes kako bi se dobila brzina desnog kotača, kako bi se zadržao smjer koji odgovara vrijednosti θDes, dok središte robota još uvijek putuje brzinom VelDes.
Način B : s "logičkim kontrolnim prekidačima" u položaju 2 željenu brzinu vrtnje izračunava PID regulacija "Dist PID" i koristi se kao u načinu A. Izmjereni ulaz za ovaj PID (DistMes) se izračunava kao funkcija trenutne koordinate i koordinate odredišta. Željeni kut orijentacije θDes također dolazi iz istog postupka i koristi se kao referentni ulaz za "kutni PID". Referentni ulaz za "Dist PID" je 0, što znači da je odredište dostignuto. Kada su ω i VelDes dostupni, kontrola broja okretaja kotača radi kao u načinu A.
Način C : s "logičkim kontrolnim prekidačima" na poziciji 2, odredišne ​​koordinate Xdes, Ydes izračunavaju se jednom na početku kao funkcija ulaznih parametara DistDes, θDes. Nakon toga sve ide kao u načinu B

Korak 5: Detalji softvera: kontrola brzine i ostale osnovne funkcije

Program je pun prekinuti , Na početku, nakon inicijalizacije, program ulazi u vrlo jednostavnu glavnu petlju, djelujući kao državni stroj. U glavnoj petlji, program provjerava zastavice omogućene vanjskim događajima i ulazi u relativno stanje prema njihovim vrijednostima.
Budući da je to vrlo jednostavna zadrugaOperativni sustav u stvarnom vremenu , "svaka rutina mora biti izvršena u najkraćem mogućem vremenu, oslobađajući sustav da se pobrine za vrlo česte prekide."
Nema "čekati do" i nema kašnjenja u kodu. Kad god je moguće, koriste se prekidi, osobito za spore operacije kao što su prijenos ili primanje nizova znakova. UART komunikacija preuzima prednost od DMA mogućnosti dsPIC33F kako bi se uštedjelo vrijeme procesora u "prljavom" poslu u hardveru.
Periferije koje se koriste na dsPIC33FJ128MC802:
- QEI za izračun putovnice koja putuje.
- Input Capture (IC) za izračun brzine.
- A / D pretvarači za očitavanje struje motora.
- Poboljšani PWM-ovi za pogon motora.
- UARTs za komunikaciju s vanjskim svijetom
QEI moduli znaju koliko su kotači putovali i u kojem smjeru. Ova se vrijednost algebarski kumulira u varijabli svakih 1 ms i šalje zahtjevima nadzornih funkcija. Nakon slanja vrijednosti, varijable se resetiraju.
Brzina se mjeri na svakom impulsu kodera kao što je opisano u nastavku. Svakih 1 ms izračunava prosječnu brzinu usrednjavanjem uzoraka, izvršava PID algoritam i ispravlja brzinu motora u skladu s rezultatom, mijenjajući PWM radni ciklus. Detaljan opis aplikacije C30 PID biblioteke potražite u odjeljku Microchip Code (Primjer mikročipova) Primjer: CE019 - Korištenje proporcionalnih integralnih izvedenih (PID) kontrolera u zatvorenim upravljačkim sustavima. http://ww1.microchip.com/downloads/en/DeviceDoc/CE019_PID.zip
Promjene brzine motora se izvode glatko, ubrzavajuće ili usporavaju s kosim nagibom koji se diže ili pada, kako bi se izbjegla teška mehanička naprezanja i proklizavanje kotača koji mogu uzrokovati pogreške u mjerenju kilometara. Usporavanje je brže od ubrzanja kako bi se izbjegli udarci s preprekama tijekom kočenja.
IC , ulazni moduli za snimanje koriste se za mjerenje vremena koje je proteklo između dva impulsa koje generira značenje kodera, kada su kotači putovali za dobro poznatu fiksnu količinu prostora (konstantna SPACE_ENC ). Povezani su paralelno s QEA (interno na DSC zahvaljujući mogućnostima periferne Pin-izbornika dsPIC33F), oni hvataju proteklo vrijeme na rastućem rubu signala enkodera. TIMER2 se koristi u slobodnom načinu rada. Na svakom IC prekidu, trenutna vrijednost TMR2 se pohranjuje i od nje se oduzima njegova prethodna vrijednost; ovo je razdoblje pulsa. Tada trenutna vrijednost postaje prethodna vrijednost, čekajući sljedeći prekid. Zastava zastavice TMR2 mora se provjeriti da bi se utvrdilo je li se dogodio preljev u 16-bitnom registru. Ako da, razlika između 0xFFFF i prethodnog uzorka mora biti dodana trenutnoj vrijednosti. Uzorci su algebarski dodani u IcPeriod varijabla prema _UPDN bit, kako bi se odredio i smjer brzine. To je jedna od predloženih metoda u Bilješka o primjeni mikročipova AN545 .
Varijabla IcIndx sadrži broj dodanih uzoraka IcPeriod .
Svakih 1ms srednja brzina se izračunava kao V = prostor / Vrijeme
gdje Prostor = SPACE_ENC • IcIndx
(= prostor pokriven jednim impulsom kodera • broj impulsa)
i Vrijeme = TCY • IcPeriod
(= jedan TMR period • došlo je zbrajanje razdoblja).
Single_TMR_period = TCY = 1 / FCy (taktna frekvencija).
Tako V = Kvel • (IcIndx / IcPeriod)
gdje Kvel = SPACE_ENC • FCy imati brzinu u m / s.
Prebacivanje lijevo 15 bita Kvel const ( KvelLong = Kvel << 15 ) brzina se izračunava već u frakcijskom formatu (također ako se koriste samo cjelobrojne varijable) spremne za korištenje u PID rutini. Za detaljniji opis pogledajte datoteku “descrEng.txt” u projektu MPLAB.
A / D pretvarači kontinuirano mjeri struju motora, pohranjuje vrijednosti u 16 pozicija ADCBUF odbojnika. Kada su međuspremnici puni, dolazi do prekida i izračunava se prosječna vrijednost približno svakih 1 ms.
UARTs koriste se za primanje naredbi izvana i za vraćanje rezultata mjerenja. Komunikacijski dio programa radi kao stanje stroja. Statusne varijable se koriste za izvršavanje radnji u nizu. Vrlo jednostavna i brza interventna rutina (ISR) dobiva ili stavlja svaki bajt iz ili u međuspremnik, i postavlja prave zastavice kako bi omogućila izvršavanje ispravne funkcije.
Ako se tijekom prijema pojavi bilo kakva pogreška (UART, kontrolna suma, pogreške u raščlanjivanju), statusna varijabla je postavljena na negativan broj, a crvena LED dioda se napaja kako bi izvana priopćila ovo stanje pogreške. Pogledajte “descrEng.txt” datoteku u MPLAB projektu za potpuni popis mogućih pogrešaka.
Protokol koji se koristi za rukovanje je neovisni fizički sloj , a može se koristiti i s I2C ili RS485 sabirnicom za komunikaciju.
prvi sloj kontrolira dsPIC periferno sučelje. Greške okvira ili prekoračenja (UART) ili sudara (I2C) detektiraju se hardverom, postavljanjem odgovarajuće zastavice.
drugi sloj upravlja ISR rutinama. Oni popunjavaju RX međuspremnik bajtovima primljenim iz sučelja. Oni također otkrivaju prelijevanje međuspremnika i prekoračenje naredbi.
UartRx ili UartRx2 funkcije upravljaju treći sloj , Kao što je već opisano (vidi i dijagrame tijeka), ove rutine djeluju kao državni stroj, dobivajući bajtove iz međuspremnika i dekodirajući naredbeni niz.
Bajtovi se razmjenjuju između drugog i trećeg sloja (ISR i UartRx funkcija) kroz kružni međuspremnik. ISR prima bajt, pohranjuje ga u niz i povećava pokazivač na polje, ako pokazivač dođe do kraja niza, ponovno se pokreće na početak. Funkcija UartRx ima svoj vlastiti pokazivač za čitanje istog niza, koji se povećava (na kružni način) čim se bajt dekodira u trenutnom RX statusu. Glavna petlja poziva UartRx funkciju kad god se pokazivač "in" razlikuje od pokazivača "out".
Svaki paket naredbe sastoji se od:
0 - Zaglavlje @
1 - ID 0-9 ASCII
2 - Cmd A-Z ASCII
3 - CmdLen N = 1-MAX_RX_BUFF sljedeći broj bajtova (uključen je kontrolni zbroj)
4 - Podaci …

N-1 - podaci
N - Kontrolna suma 0-255 dobivena jednostavnim zbrajanjem u 8-bitnu varijablu, svi bajtovi koji sastavljaju poruku (sam kontrolni zbroj isključen).
Ovaj sloj kontrolira pogreške vremenskog ograničenja i kontrolnog zbroja, kao i dosljednost paketa (ispravno zaglavlje, ispravna duljina). Ako je sve u redu, omogućuje rutinu Parsera (četvrti sloj ) za dekodiranje poruke i izvršavanje potrebne radnje. Ova rutina postavlja odgovarajuću oznaku pogreške ako primljeni kod poruke nije poznat.
TMR1 generira sat takta od 1000 Hz - otkucaje srca programa. Na svakom prekidu svakog TMR1 ažuriraju se interni mjerač vremena, nadzorni pas se briše, a postavlja se zastavica kako bi se omogućila funkcija koja traži vrijednost putnog prostora. Svaka 10ms "All_Parameters_Ask" funkcija (brzina, položaj, struja) je omogućena.

Korak 6: Detalji softvera: Odometrija i mapiranje polja = Gdje sam?

Optimizacija općeg algoritma za korištenje u DSC ili MCU sustavu
Jednom kada dobijemo podatke o udaljenosti koju svaki kotač pređe u diskretnom ažuriranju (odometrija), možemo procijeniti pozicijske koordinate robota s istom periodikom bez ikakve vanjske reference (mrtva računanja).
Neke teorijske osnove o računanju mrtvih pomoću odometrije mogu se naći u knjizi Johanna Borensteina:
"Gdje sam? - senzori i metode za mobilno pozicioniranje robota"
i na sljedećim web stranicama:
http://www.seattlerobotics.org/encoder/200010/dead_reckoning_article.html
Matematička pozadina i duboko objašnjenje opće upotrijebljene metode mogu se naći na G.W. Lucasov rad A Model poučavanja i elementarne putanje za sustav diferencijalnih upravljača pokretača kotača robota, dostupan na Internetu:
http://rossum.sourceforge.net/papers/DiffSteer/DiffSteer.html
Neki pojednostavljeni algoritmi mogu se naći iu istoj dokumentaciji, tako da je moguće dobiti ispravan kompromis između preciznosti i brzine izrade, koristeći matematičku (trigonometrijsku) sposobnost dsPIC33F serije.
Opis matematike korištene za izračunavanje položaja može se naći na slikama koje su pridodane ovom koraku. Prva pokazuje značenje simbola, druga prikazuje formule koje se koriste s tim simbolima. Klikom na okvire pored svakog računskog koraka prikazan je kratak opis.
Na kraju znamo koliko se robot kretao u tom vremenskom intervalu kao delta orijentacije, delta na X osi i delta na Y osi u kartezijanskom referentnom polju.
Kumulirajući svaku delta-vrijednost u vlastitu varijablu znamo trenutne koordinate (položaj i orijentaciju) platforme.
Kako bi se izbjegle računske pogreške (podijele s nulom) i rasipanje vremena regulatora, mora se unaprijed provjeriti na Sr i Sl varijablama. Definiranjem kvazi-nulte vrijednosti koja se brine o minimalnim mehaničkim i računskim aproksimacijama možemo pojednostaviti formule ako robot putuje pravocrtno (prostor pokriven desnim kotačem gotovo je isti kao i prostor koji putuje lijevim kotačem) ili ako se okreće oko svoje vertikalne osi (prostor pokriven desnim kotačem gotovo je isti kao i prostor koji putuje lijevim kotačem, ali u suprotnom smjeru), kako je detaljno prikazano u dijagramu protoka prikazanom na posljednjoj slici.

Ovaj videozapis prikazuje primjer preciznosti koju možemo dobiti:
http://www.youtube.com/watch?v=d7KZDPJW5n8


Mapiranje polja
Pomoću podataka izračunatih prethodnim funkcijama provodi se mapiranje polja.
Svaka Xms, nakon izrade trenutnog položaja, vrši se mapiranje polja, dijeleći nepoznato polje u mreži 10 x 10 cm ćelija. Definiranjem maksimalne dimenzije polja od 5 x 5m dobivamo matricu od 50 x 50 = 2500 stanica. Svaka stanica definirana je grickanjem, s ukupnom memorijskom okupacijom od 1250 bajtova. Svakoj se ćeliji može dodijeliti 16 različitih vrijednosti:
n = 00 nepoznata stanica
n = 01 - 10 stanica posjećenih n puta
n = 11 pronađena prepreka
n = 12 pronađenog cilja plina
n = 13 pronađeno svjetlo
n = 14 pronađeno zvučno ciljanje
Robot može početi s bilo kojeg položaja u polju; to će biti referentne koordinate (0,0) u njegovom referentnom sustavu.
Mapiranje polja je korisno za pronalaženje najbolje istraživačke strategije u nepoznatom području. Robot se može usmjeriti na manje istraženi dio polja (niža "n" vrijednost), može uštedjeti vrijeme ne zaustavljajući se dvaput u već otkrivenoj meti, može pronaći najbolji put do zadane koordinate i još mnogo toga.

Korak 7: Udaljena konzola

To je aplikacija koja daljinski upravlja dsNavCon pločom iz Mac / PC računala putem serijske komunikacije putem nekoliko XBee uređaja kao što je opisano u blok dijagramu.
Kako bi se lako razvio i dobro se izvodio u bilo kojem operacijskom sustavu, pisano je s njim Obrada Jezik:
http://www.processing.org/
Izvorni kôd ovog programa dostupan je i kao otvoreni izvor na Google Code:
http://code.google.com/p/dsnavconconsole/
Sa glavni panel (prve slike) možemo izvesti telemetriju gledajući na mrežu put koji slijedi robot (kao što je procijenjeno odometrijom) u polju podesive veličine i neke druge važne vrijednosti čitane na dsNav .
Mjerila prikazuju izmjerene vrijednosti:
- MesSpeed ​​u rasponu +/- 500 mm / s, srednja vrijednost brzine dva kotača (brzina središta platforme).
- Izmjerena struja u mA (zbroj struje iz dva motora).
- Izmjereni kut, koji je proširen odometrijom.
Ostale ploče se koriste za konfiguriranje parametara robota i za pohranjivanje u robota definirane staze za praćenje (ako je potrebno). Važna ploča, barem tijekom razvoja robota, jest panel s detaljima (druga slika) koja pokazuje brzinu svakog kotača u stvarnom vremenu, vrlo korisna za kalibraciju svih parametara.
Centralni pogled na mrežu može se mijenjati s pogledom na web-kameru kako bi se kontroliralo, čak i po pogledu, put kojim robot slijedi.
Praktičan primjer upotrebe za ovu konzolu prikazan je u ovom videozapisu:
http://www.youtube.com/watch?v=OPiaMkCJ-r0