ARGroup Aleš Ruda

Model smykem řízeného podvozku

by Administrator 7. December 2011 19:37

Robot má 4 nezávisle poháněná kola, která nelze natáčet. Jedná se tedy o smykem řízený podvozek. Budeme-li předpokládat shodnou rychlost kol na levé a pravé straně, můžeme s určitým zanedbáním použít vztahy pro diferenciální podvozek (1) a (2). Problém spočívá ve faktu, že kola se po podložce pouze neodvalují, ale smýkají se. Více o této problematice lze najít zde.

(1)
(2)
  • – úhel otočení
  • – ujetá vzdálenost
  • – ujetá vzdálenost levou stranou
  • – ujetá vzdálenost pravou stranou
  • – rozchod kol
Diferenciální podvozek

Největší problém je určení rozchodu kol. Díky smýkání tento výpočetní údaj neodpovídá mechanickým rozměrům. Krom vlastností povrchu, zatížení kol je také ovlivněn rodíly rychlostí otáčení jednotlivých kol. Naměřené hodnoty rozchodu kol pro různé řídící zásahy na asfaltovém povrchu a hmotnost 3kg uvádí následující tabulka

  dopředná rychlost v m/s
dif. 0,00 0,09 0,17 0,26 0,34 0,43 0,51 0,60 0,69 0,77
0,09 0,36 0,36 0,36 0,36 0,36 0,36 0,37 0,37 0,37 0,37
0,17 0,36 0,36 0,36 0,36 0,36 0,36 0,35 0,36 0,37 0,37
0,26 0,37 0,37 0,36 0,36 0,36 0,36 0,36 0,36 0,36 0,37
0,34 0,37 0,37 0,36 0,37 0,36 0,36 0,36 0,37 0,37 0,37
0,43 0,40 0,38 0,39 0,36 0,38 0,38 0,36 0,37 0,37 0,38
0,51 0,44 0,46 0,38 0,37 0,43 0,39 0,37 0,37 0,37 0,37

 

 

Dalším krokem je výpočet polohy a orientace robotu. Podkladem nám bude ujetá vzdálenost a otočení robotu. Pohyb robotu popisují rovnice ( 3 ), ( 4 ) a ( 5 ).

(3)
(4)
(5)
  • – úhlová rychlost otáčení
  • – dopředná rychlost
  • – orientace robotu
  • – x souřadnice robotu
  • – y souřadnice robotu

Problém jejich řešení spočívá ve faktu, že neznáme funce a . Jediné co známe je orientace robotu v okamžicích vzorkování a ujetá vzdálenost mezi těmito okamžiky. Možných variant je mnoho viz. obrázek Trajektorie robotu. Otázkou je kterou si vybrat.

Trajektorie robotu

Jednoduchá varianta rozumě aproximující skutečnost je varianta konstatní dopředné a úhlové rychlosti, kdy se bude robot pohybovat po kruhových obloucích. V našem obrázku je tento případ vyobrazena pod písmenem b a popisují ho vztahy ( 6 ) a ( 7 ). Dosazením těchto vztahů do pohybových rovnic ( 3 ), ( 4 ) a ( 5 ) postupně získáme ( 8 ) a ( 9 ), který je nepraktický kvůli dělení β.

(6)
(7)
(8)
(9)
  • – počáteční úhel natočení

Protože pootočení je malé lze diferenci nahradit derivací v mezilehlém době jak je naznačeno na obrázku Náhrada diference derivací a výsledný vztah pro polohu robota je pak popsán rovnicemi ( 10 ) a ( 11 ).

Náhrada diference derivací
(10)
(11)

Jak lze interpretovat získané řešení? V první řadě je nutné poznamenat, že robot se už nepohybuje po kruhovém oblouku, jak jsme na počátku přadpokládali, ale po přímce jejíž délka je shodná s délkou oblouku a orientace přimky půlí uhel β. Tento výpočet negeneruje úhlovou chybu a chyba vzdálenosti pro v praxi maximalní je do 1%.

(12)

Tags:

ARBot

Robotour 2011

by Administrator 1. October 2011 08:33

17. září se ve Vídni konal další ročník soutěže Robotour. Po absenci v minulém roce se letos zůčastnil i ARBot. Oproti předchozím ročníkům se podařilo vylepšit detekci překážek z kamery pomocí VFH+ algoritmu a naposlední chvíli doznal úprav i segmentační algoritmus. Jinak vše při starém.

Při homologaci se ukázal 20-ti sekundový rozdíl v čase ARBotu (odvozený od GPS) a oficíálního času (také GPS). Důvod je mi fak nejasný. Narychlo jsem ještě mněnil startovací proceduru na zpoždění 65 sekund od zmačknutí startovacího tlačítka (pro vysvětlení - podle pravidel se minutu před startem nesmi nukdo robota již dotýkat).

Testovací kolo proběhlo v celkum v pohodě. Robot odstartoval správně až po minutě, sice v místě startu byl spatný signál GPS a tak se nepodařilo určit pozici a robot vyrazil nazdařbůh po cestičce a po cca 40 metrech trefil lavičku. Do prvního kola bylo ještě spousta času a tak jsem šteloval segmentaci, no a abych se nezdržoval tak jsem vypnul 65 sekundovou prodlevu při startu.

1. kolo, roboty byly připraveny na startu, zazněl hvizd minuta do startu, zmačknul jsem startovní tlačítko a robot se rozjej. Ajajaj. Zapoměl jsem zapnout minutovou prodlevu. Následovala samozřejmě diskvalifikace.Frown

2. kolo bylo již vyvedené, ARBot se ujmul rychle vedení, bezpečně projel první křižovatkou a blížil se k odbočení dprava, zde bohužel najel pravým předním kolem do obrubníku, pravé zadní se dostalo do vzduchu a zbylé dva motory již neměly sílu s robotem pohnout. Po dohodě s rozhodčím jsme poukus ukončily. Robot urazil slušných 169 metru.

Do 3. kola jsem vkládal velké naděje, start byl na cestě kousek před křížením s mostem. Start proběhl v pohodě, ale pastí byl tentokrát ten most. Přesně pod mostem se robot prudce otočil doprava a snažil se jet do skály. Kolem tohoto místa se motal dost dlouho než se opět chytil na původní cestu. Pravděpodobně to také dozhodilo odměřování polohy a další křižovatku robot přejel a vyjel mimo cestu.

4. kolo bylo také velmi zajímavé. Robot sice po 30 metrech vyjel mimo cestu (motal se tam jakysi divák a ja do poslední chvíle věřil že se robot vyhne), ale vrátil jsem ho opět na cestu a mimo soutěž jsem to zkusil projet. Potěšil mne bezproblémový průjezd stoupáním, kde ostatní mnohem větší roboty měly problém vyjet. Otázkou zda na to nestačily výkonem a nebo kopec detekovaly jako překážku.

Musím přiznat, že 6. místo bylo trošku zklamáním, ale co člověk může chtít při dvou fatalních chybách.

Chtěl bych poděkovat organizátorům za dobře připravenou soutěž a musím pochválit pěkně vybraný park. To co také potěšilo byl velký zájem diváků. Co dodat? Příští ročník snad dopadnem lépe.

Robotum zdar

Tags:

ARBot

RoboOrienteering 2011

by Administrator 1. July 2011 21:49

První velký úspěch v komorním provedení. Veškeré úpravy HW a SW v minulých letech konečně začínají přinášet ovoce. Robot docela přesně objíděl zadané kontrolní body i když s rostoucí vzdáleností rostla i odchylka a robot postupně začal míjet kontrolní oblasti. Z toho vyplývá, že je nutné zlepšit výpočet pozice robotu, další možností je v blízkosti cílové oblastí začít robota navigovat podle oranžového kuželu. Tím dojde k dosažení cílové oblasti a také k synchronizaci robota s mapou.

Robot předvedl ve všech kolech stabilní vykon a narozdíl od ostatních týmů se nepotýkal s žádnými zásadními problémy. První dvě kola obsadil 1. místo a v třetím kole 2. místo. Celkově první. Hurááááá. Tento úspěch je trošku zkalen tím, že ostatním týmům roboty postupně přetaly jezdit, ale nebuďme detailisté.

Tags:

ARBot

Robotem Rovně 2011

by Administrator 1. June 2011 20:50
Robotem rovně 2011
Trajektorie robotu (modře), údaje z GPS (zeleně)

Tak další ročník soutěže autonomních robotů Robotem Rovně je za náma. Musím se přinat, že výsledek byl trošku zklamáním, ale to předbíhám.

Přes zimu se podařilo dotáhnout algoritmy pro fůzy dat z odometrie, AHRS a GPS, ambice byly veliké.

Na místo jsme dorazili za 5 minut 12, homologace a za chvilku na start 1. kola. 3, 2, 1, start robot se rozjel, ale místo aby jel poslusně směrem k cíli udělal oblouček a zamíril doprava. Objel keřík, projel znovu startem a zamířil k Neumětelum. Bylo to hrozné sklamání. Do startu dalšího kola jsem se snažil odhalit problém, ale žádný výsledek, robot stále táhnul doprava. Nadešel čas pro další kolo. Robot tentokrát opět jel doprava, ale udržel se na cestě, jenže první odbočkou vpravo zas vyrazil k Neumětelum. Ach jooo, co se to děje. Najednou mi svitlo. Robot jezdi podle mapy a svou pozici na startu odvozuje z GPS. Zapomel jsem tam mapu z Prahy a robot poslušně jel na hřiště u nas před barákem. Chybka byla opravena a v posledním kole slušných 170 metrů. Celkové 9. místo bylo zklamáním, ale za chyby se platí.

Každopádně RoRo 2011 bylo dobře zorganizové a velmi příjemné klání. Diky organizátorům a příští ročník dopadnem snad lépe. 

Tags:

ARBot

RoboOrienteering 2010

by Administrator 1. July 2010 20:43

Letos jsem se zůčastnil soutěže RoboOrienteering. Po přestavbě robotu to byla první soutěž a podle toho to také vypadlo. Hned večer před soutěží při testování v Rychnovském parku se projevil první netriviální problém. Začaly se projevovat výpadky na sběrnici I2C, která propojuje většinu periferií. Otázkou bylo proč to a jak to vyřešit. Možná robot v podvečer navlhnul, možná nebyly nakloněni elemtálové. Problém se podařilo částečně omezit odpojením jedné motorové jednotky.

V prvním kole robot získal 48 bodů což stačilo jen na předposlení místo.

V druhém kole se robot rozjel úplně blbým směr a získal pohých 5 bodů. Analýzou jsem zjistil, že došlo k výpadku na I2C sběrnici a z enkoderů byl načten nesmyslný údaj, který robota posunul o kilometry blbě. Následovaly úpravy SW, které měly za úkol omezit nepříznivý vliv výpadků na sběrnici.

V třetím kole na travnatých drnech pro změnu začal robot předvádět pozoruhodné baletní číslo, motal se jak opilej. Tentokrát byla na vině AHRS jednotka, kde velký důraz na gyroskop a vybrace způsobily roztočení kompasu podle svislé osy.

Celkové 6. místo odpovídalo nedobré přípravě.

 

Tags:

ARBot

Robotem Rovně 2010

by Administrator 12. June 2010 22:26
Pohled z robotu
Pohled z robotu

Robot prošel po minulém ročníku Robotour významnou přestavbou. Nová citlivější GPS, místo kompasu AHRS, nová optika na kameře, přepsání částí SW do asembleru, nosič na sud a spousta dalších drobností. Bohužel se začal projevovat problém tuhnutí motorových jednotek MD23. Postupně jsem zjistil, že pachatelem jsou značné napěťové špičky v 5V větvi napájení. Dvouměsíční trápení ukončila počátkem května nějaká větší špička. Nové jednotky MD25 již tento problém nevykazovaly. V pátek před soutěží se robot konečně rozjel, byly opraveny některé chyby v SW, projeta rovná i klikatá cesta u baráku a ráno hurá do Písku.

Času málo, na hrdinství není prostor. Strategie byla jednoduchá kamera udrží robota na cestě a s překážkami pomohou sonary. Na Robotour to také fungovalo.

Robota lehce otestovat v místních podmínkách a rychle na start 1. kola. 3, 2, 1, start. Robot se rozjel, sice místo aby se držel uprostřed cesty tak divně opilecky kličkoval od kraje cestičky ke kraji, ale dojel tak až do cíle. Supeeeeeer. Ale proč to kličkuje? Jejda zapomněl jsem krytku na kameře.

V pauze mezi koly jsem zkoušel jízdu s kameru, ale výsledky nebyly dobré. Robot rychle končil mimo cestu. Algoritmus detekce cesty se mi nepodařilo opravit. Dalším pokusem bylo zapojit AHRS s nevalným výsledkem. Takže, když to jednou vyšlo tak proč ne ještě dvakrát? Robot pojede na sonary. V dalších kolech 90 a 184 metrů. Slušný výkon oceněný 2. místem. Kdyby mi to někdo vyprávěl asi bych nevěřil, ale je to pravda. Viděl jsem to na vlastní oči. Smile

Myslím, že tato soutěž byla ideálním startem do sezóny outdoor závodů robotů. Díky organizátorům za nasazení.

Tags:

ARBot

Robotour 2009

by Administrator 1. October 2009 11:36
ARBot
ARBot

Koncem září jsem se zůčastnil soutěže autonomních robotů Robotour 2009. Byla to, co se soutěží týče, premiéra. Pravisla jsem měl nastudovaná, co šlo odzkoušené na domácí půdě, ale přeci jen neznámé prostředí může je velkou neznámou. Navíc se nepodařilo rozchodit vše co jsem zamýšlel. GPS pracuje na 1.5 GHz a tak byla silně rušena DSP procesorem BF537 taktovaném 500 MHz a o kvalitě kompasu CMPS03 se rozepíšu někdy příště, ale vězte, že svou přesností se můře úspěšně srovnávat s lišejníkem. Smile

Povídám co nefungovalo, ale spíš jsem měl začít tím jak byl robot vybaven. Robot má čtyřkolový smykem řízený podvozek, který má hnané každé kolo s enkodérem (4xEMG+2xMD23). Robot je řízen modulem SRV1 na bázi procesoru BlackFin BF537. Jako senzory používá kameru, 3 sonary SRF08, kompas CMPS03 a GPS DG08. Disponuje WiFi konektivitou.

Vzhledem k již dříve řečeným problémům s HW a hlavně nejasné představě jak řešit programovou stránku věci jsem se rozhodl celé řešení zjednodušit - udržet se na cestě a doufat, že s trochou stěstí cesta povede k cíli.

Sonary budou použity na vyhýbání se překážkám. Podle minima vzdálenosti ze sonarů se umeze dopředná rychlost robotu a pokud klesne měřenáá vzdálenost na levém či právém sonaru pod určenou mez, začne se robot otáčet na stranu kde je více prostoru.

Kamera slouží pro udržení robota na cestě. Z trojúhelníkového prostoru před robotem v obrázku se určí krychle v YUV prostoru, jejiž barvy jsou považovány za cestu. Obarví se celý obrázek. Postupně od spodního řádku se nalezne prostředek cesty a tyto body se proloží přímkou. Od směrníce přímky se pomocí magické konstanty odvodí požadovaný úhel otočení robotu.
Tento postup má hned několik vevýhod:

  • Algoritmus je citlivý na střídání světla a stínu na cestě.
  • Nebere v úvahu projekci kamery.
  • Algoritmus dobře nefunguje v mezních situacích. Pokud robot stojí na kraji cesty a je orientován v jením směru, ukazuje smernice k této straně a tím místo vrácení robotu k prostrředku cesty dojde naopak k jeho výjetí. Frown

A jak to probíhalo?

První dvě kola proběhla dle předpokladů. Robot se držel uprostřed cesty a až stín ho vytlačil mimo cestu, nedostal se ani ke křižovatce takže nuda, šeď, šeď. Zajímavé bylo až 3. kolo, kdy ARBot startoval kousek od křižovatky A3. První zádrhel nastal hned po pár metrech kdy robot chybně odbočil do segmentu Z, který nebyl vůbec na trase, naštěstí se tam motala rodinka se psem a tak se robot otočil zpátky, ale to bylo v protisměru. Na obzoru se rýsoval další šťastná náhoda - další robot v protisměru a sním sposta diváků, kterí blokovali cestu. Roboty se vyhnuly, ale diváci se začali rozestupoval. "Nebojte, on se vám vyhne" a lidičky poslusně uzavřeli cestu a ARBot se otočil do správného směru.  Jenže další úkrytické místo bylo už na obzoru. Robot, kterého jsem před chvilkou minul se začal na kulaťáku u odbočky do 3 přetlačovat s lavičkou k velkému zájmu lidiček. Bál jsem se, že se opět otočí a pojede do kotěhůlek. V tuch chvilku přišel spásný nápad. "Prosím vás, udělejte nám prostor jedem doleva." Dav se rozestoupil a udelal nám špalír do segmentu 3 a tak se podařilo krásně odbočit na uzkou klikatou cestu, kde po cca 10 metrech vyjel. Poslení kolo bylo podobné prvním dvoum, široká mírně zatáčející cesta. Pokus opět ukončil stín.

Celkových 33 bodů a 6. místo považuji za úspěch zejména s přihlédnutím k tomu, že robot získával jen polovičku bodů, protože nevezl soudek píva. 

Tags:

ARBot

Jak to začalo

by Administrator 19. October 2008 21:35

Jednoho krásného dne mi kámoš poslal odkaz na video BigDog - Boston Dynamics. Srdce feláka mi poskočilo, naprosto mne to nadchlo. Vzpoměl jsem si na studijní léta na ČVUT FEL, na řízení kuličky na nakloněné rovině, na laboratoř strojovna a robot „Красный пролетар“, na laboratoř počítačového vidění a hraní robotem v kostky. Na internetu jsem našel spoustu zajímavých konstrukcí. Od hexapodů, přes kolové až po létající stroje. Našel jsem prodejce robotických komponent, ale stále mi trošku chyběla nějaká motivace, nějaký cíl. Až jsem narazil na www.robotika.cz a soutěž Robotour. Relativně jednoduchá konstrukce potřebného robotu a přitom netrivialní chování, i když to jsem si v tu chvili nemyslel, vlastně mi to přišlo vcelku jednoduché.

Několik dní jsem procházel internet, různé konstrukce, dostupné komponenty a robotické teorie. Rozhodl jsem se pro čtyřkolový smykem řízený podvozek s enkodérem na každém motoru, pro detekci překážek použít tři sonary k orientaci dle světových stran poslouží kompas a pro určení globální pozice GPS. Kamera dává mnohé možnosti pro řízení robotu, ale k tomu je potřebný značný výpočetní výkon. NiMH akumulátor bude dostatečně odolný a výkoný.

Sestavil jsem seznam materiálu:

  • podvozek 4WD1 od Lynxmotion,
  • 4x motory EMG30,
  • 2x motorové řídící jednotky MD23,
  • 4x offroad kola průměru 11 cm,
  • 3x sonar SFR08,
  • GPS DS GMP,
  • kompas CMPS03,
  • řídící jednotka SRV01 s DSP BF537, kamerou OV9655, a WiFi modulem,
  • 10x  NiMH 4,5 Ah.

Bratru za 1000 euro. Přišlo mi to dost peněz a tak jsem se poradil s drahou polovičkou zda se mi je chce utratit a když jsem zjistil, že ano, objednal jsem vše potřebné. Za tři dny dorazila nenápadná krabice.

Připravil jsem si šroubovák, vtracku, pájku, lámací kudlu a za pár dní se zrodila první verze ARBotu. To jsem začínal tušit, že to složitejší je teprve předemnou - SW.

ARBot verze 1
ARBot verze 1

Takhle nějak vypadají první pokusy s robotem. Jízda podle sonaru.

[youtube:dlWAKZXNSw8]

Detekce vozovky.

[youtube:k7w2YDrvFgU]

Tags:

ARBot

Month List