0,0 → 1,430 |
<html> |
|
<head> |
<meta http-equiv="Content-Language" content="cs"> |
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252"> |
<title>Nová stránka 1</title> |
</head> |
|
<body> |
|
<p align="center"><font face="Arial"><font size="7">Robot CAMERUS<br> |
</font><font size="4">Jak se dělá robot na IstRobot<br> |
</font><br> |
<a href="mailto:kaklik@mlab.cz">kaklik@mlab.cz</a>; <a href="mailto:kakl@i.cz"> |
kakl@i.cz</a><br> |
</font></p> |
<p align="center"><a href="pic/image001.jpg"> |
<img border="0" src="pic/image001_small.jpg" xthumbnail-orig-image="pic/image001.jpg"></a></p> |
<p align="left"><font face="Times New Roman">Tato dokumentace popisuje konstrukci robota |
Camerus, který byl zkonstruován pro soutě IstRobot pro kategorii Stopár (<a href="http://www.robotika.sk/contest/">http://www.robotika.sk/contest/</a>). |
<br> |
<br> |
Snaili jsme se technickou dokumentaci pojmout poněkud netradičně. Kromě |
popisu finální verze robota zde naleznete chronologický popis jeho vývoje a |
popis vech slepých uliček. Doufáme, e takováto forma dokumentace bude mít pro |
nae následovníky větí hodnotu ne pouhý návod na zopakování konstrukce.<br> |
</font></p> |
<p align="left"><font face="Times New Roman" size="4"><b>Robot 3Orbis</b></font></p> |
<p align="left"><font face="Times New Roman"><span lang="cs">Vývoj robota Camerus začal před více jak dvěma roky vývojem |
robota 3Orbis. Robot 3Orbis měl mít novou revoluční koncepci podvozku. Pouili |
jsme tříkolý podvozek, který měl dvě hnaná kola, kadé s nezávislým motorem a |
třetí kolo, které mělo řízené zatáčení. Jednalo se tedy o nonholonomní podvozek. |
Koncepci podvozku jsme nejdříve ověřovali se dvěma senzory na čáru, jako to měly |
nai předchozí holonomní roboti. To moc nefungovalo a proto jsme přidali dalí |
senzory, pomocí kterých se diskrétně nastavoval úhel zatáčecího kolečka.</span></font></p> |
<p align="center"><font face="Times New Roman"><a href="pic/image003.jpg"> |
<img border="0" src="pic/image003_small.jpg" xthumbnail-orig-image="pic/image003.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Ob<span lang="en-us">r.</span>1: První pokusy s tříkolým a třímotorovým robotem<br> |
<br> |
<a href="pic/image005.jpg"> |
<img border="0" src="pic/image005_small.jpg" xthumbnail-orig-image="pic/image005.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">.</span> 2: Baterie senzorů na čáru</font></p> |
<p align="left"><font face="Times New Roman"><br> |
Přidáním dalích senzorů na čáru jsme se dostali do problémů s počtem vstupů |
pouitého procesoru (PIC16F88). Tento problém jsme vyřeili tak, e jsme na |
zpracování signálů ze senzorů na čáru pouili dalí samostatný procesor. Toto |
řeení se vak později neukázalo jako výhodné, protoe ladit distribuovaný kód |
bylo řádově obtínějí a navíc se musela naprogramovat komunikace mezi procesory. |
Často se nám také stávalo, e jsme během vývoje do jednoho procesoru nahráli kód |
pro druhý procesor, co kupodivu občas trvalo určitou dobu, ne jsme na to |
přili.<br> |
</font></p> |
<p align="center"><font face="Times New Roman"><a href="pic/image007.jpg"> |
<img border="0" src="pic/image007_small.jpg" xthumbnail-orig-image="pic/image007.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">. </span>3: Přední náhon; přidáno druhé patro na |
elektroniku<br> |
</font></p> |
<p align="left"><font face="Times New Roman">Původní koncepce předpokládala hnaná kola vpředu a zatáčecí kolo vzadu. |
Modelářské servo vak nedokázalo dostatečně rychle zatáčet, přestoe bylo |
zpřevodováno do rychla převodem 1:2. Změnili jsme proto uspořádání na hnanou |
nápravu vzadu a zatáčecí kolečko vpředu. To nám umoňovalo ostře řezat zatáčky, |
ale objevily se dalí problémy. Podvozek se v zatáčkách dostával do smyku a |
protoe hmotnost čidel byla nezanedbatelná, docházelo i k jeho naklápění a |
následně k falenému signálu z čidel, protoe čidla nebyla drena v konstantní |
vzdálenosti od povrchu.<br> |
<br> |
Pro 3Orbise byla vysoustruena duralová kola, pro která bylo plánováno obutí O |
krouky. To se pak ukázalo jako nepouitelné. O krouky se nedokázaly udret |
v drákách na kolech. Původní kola byla tedy nahrazena plastovými z dětské |
hračky. Kola měla mení průměr, co zlepilo převodový poměr, který byl pro |
vyrobené převodovky 5:1. Jako obutí byly pouity ustřiené prsty z latexových |
rukavic pro domácnost. Jako obutí zatáčecího kolečka bylo pouito pryové |
těsnění 12x10x2. Na zatáčecí kolečko bylo obuto tak, e se jelo po hraně těsnění.</font></p> |
<p align="center"><font face="Times New Roman"> |
<br> |
<a href="pic/image009.jpg"> |
<img border="0" src="pic/image009_small.jpg" xthumbnail-orig-image="pic/image009.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">.</span> 4: Robot 3Orbis. Zadní náhon a mení kolečka z autobusu |
od syna pana Hronka.<br> |
Je vidět čidlo na hledání hrany cihly.</font></p> |
<p align="left"><font face="Times New Roman"><br> |
Pro detekci a objídění cihly byly na robotovi namontovány IR senzory. Jeden měl |
detekovat překáku na dráze a zbylé dva měly slouit pro její objetí. Objetí |
cihly pomocí IR senzorů jsme vak nedokázali odladit. Objídění nebylo |
spolehlivé a tak robot nakonec objíděl cihlu naslepo. <br> |
Při soutěi se objevil nečekaný problém, kvůli kterému robot nakonec nedojel. |
Soutění dráha je tvořena dvěma deskami. Desky nejsou dokonale slícovány a tak |
mezi nimi vzniká tmavá mezera. Tato mezera byla na soutění dráze přelepena |
bílou lepicí páskou. Bohuel čidla na čáru, které robot pouíval, vyhodnocovala |
bílou lepicí pásku jako černou (čidla pracují blízko ultrafialové oblasti). |
Tento problém by el kompenzovat programově, ale na soutěi se nepodařilo |
program v časové tísni správně upravit. Robot tedy nakonec nedojel.<br> |
<br> |
Odhadovali jsme, e nám chyběl tak týden na odladění firmware, protoe v roce |
2006 u nás byla povodeň a ztratili jsme tak nejméně jeden měsíc večerů na |
programování. Nyní s odstupem času vidíme, e co se týká objetí cihly, chybělo |
mnohem více.<br> |
</font></p> |
<p align="left"><font face="Times New Roman" size="4"><b>Robot Laserus</b></font></p> |
<p align="left"><font face="Times New Roman">Dalí verzí robota se shodným podvozkem byl robot Laserus. Snahou bylo odstranit |
těká čidla předsunutá před robota a tak odstranit překlápění v ostrých |
zatáčkách. Řeením by bylo zvětení dosahu čidel na čáru tak, aby mohla být |
umístěna co nejblíe k ose otáčení robota. Zároveň by se tím sníila obvodová |
setrvačná hmotnost robota. Znovu jsme pouili tříkolý podvozek s jedním řízeným |
zatáčecím kolečkem, přestoe na IstRobotu 2006 byla tato konfigurace diskutována |
a autoři druhého robota s podobnou koncepcí se v diskusi vyjádřili, e to nebyl |
dobrý nápad, e robot při větích rychlostech má snahu se rozkmitávat. Řeení |
tohoto problému jsme viděli ve zjemnění snímání čáry tak, aby se precizněji |
nastavovalo zatáčecí kolečko.<span lang="en-us"> </span>Napadlo nás pouít laserovou čtečku čárového kódu a skutečně jsme postavili |
funkčního robota (viz Obrázek 5), který dokázal, ale pomalu, jezdit po čáře. </font></p> |
<p align="center"><font face="Times New Roman"><a href="pic/image011.jpg"> |
<img border="0" src="pic/image011_small.jpg" xthumbnail-orig-image="pic/image011.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">.</span> 5: Robot Laserus. |
Na obrázku je vidět červená stopa LASERu.</font></p> |
<p align="left"><font face="Times New Roman"> <br> |
Problémy s touto konstrukcí byly dva. Pokud byl na dráze hrbol, tak se v důsledku |
vibrací zmenil rozkmit laseru, protoe laser je ve čtecím zařízení rozmítáván |
mechanicky zrcátkem, které vibruje a velké stranové zrychlení při přejetí hrbolu |
způsobovalo, e elektromagnetický mechanismus, který pohybuje zrcátkem vypadl z rezonance. |
Tento problém by ovem zřejmě lo kompenzovat softwarem, protoe se čára četla |
v obou směrech pohybu zrcátka. Jednou jsme tedy dostali polohu čáry měřenou z |
leva a jednou z prava.<br> |
<br> |
Druhý problém byl závanějí. Protoe bylo pouito zařízení na čtení čárového |
kódu, snímali jsme vlastně polohu jedné čáry ve scanovaném prostoru. V prudké |
zatáčce vak dochází k tomu, e čáru vidí snímač ikmo a tak se relativně |
zvětuje její tlouťka. Vnitřní elektronika snímače vyhodnotila tento stav, jako |
e se nejedná o čárový kód a čáru vyfiltrovala. To samozřejmě mělo v ostré |
zatáčce fatální následky. Dále jsme touto cestou nepokračovali, přesto, e víme, |
e v závodě DARPA se často pouívají laserové dálkoměry. Na soutěních vozech je |
vak vidět, e konstruktéři také mají problémy s odtlumením vibrací.<br> |
</font></p> |
<p align="left"><font face="Times New Roman" size="4"><b>Robot Camerus</b></font></p> |
<p align="left"><font face="Times New Roman">Znovu se vynořil nápad, pouít pro snímání čáry kameru. To u nás napadlo |
několikrát, ale kdy jsme nápad analyzovali, vdy se ukázalo, e jednoduchým |
jednočipovým mikropočítačem nelze zpracovávat obraz kamery. Druhým problémem je, |
e běně dostupné kamery mají snímkový kmitočet 50Hz, co se nám zdálo na |
snímání čáry pomalé.<span lang="en-us"> </span>Přesto jsme zakoupili jednu kameru a začali jsme osciloskopem testovat, co tak |
kamera vidí a jak by se to dalo zpracovat. Kupodivu jsme zjistili, e s procesorem |
na 20MHz stíháme načíst jeden obrazový řádek asi s polovičním rozliením. To |
bylo povzbudivé a zaměřili jsme se tímto směrem.<br> |
Druhým problémem bylo, e kamera nesnímá kontrastní obraz. Jak se vypořádat v jednočipovém |
počítači s tímto problémem, kdy jeho výpočetní výkon stačí sotva na načtení |
řádku a jetě se musí počítat regulace pro elektronický diferenciál? (Pro |
zvolenou koncepci podvozku je nutné diferencovat otáčky motorů na hnaných |
nápravách.)<br> |
<br> |
Problém jsme vyřeili něčím, čemu jsme pracovně začali říkat digitální |
komparátor. Jednodue jsme pomocí logických hradel provedli OR třech nejvyích |
bitů jasového signálu z kamery. Vechno co bylo pod 0x1F bylo tedy černé a |
vechno nad bylo bílé. Expozici kamery pak bylo nutné nastavit tak, aby |
nejsvětlejí černá čára, byla jetě černá. To se udělalo snadno osciloskopem, |
ale pro závod bylo nutné vyvinout nějakou strategii, jak robot provede určení |
expozice. Řeením byla rutina Expozimetr, která postupně zvyuje expoziční čas |
a hledá ve snímku (samozřejmě, e v naem případě na jedné řádce) čáru |
definované tlouťky. Vychází se z toho, e nejdříve při podexponování je černý |
celý obrázek, pak se postupně obrázek vyjasňuje, co je ovem díky chybě |
apertury objektivu nerovnoměrné. Dalím zvyováním času expozice se nakonec |
objeví čára správné tlouťky, ta se pak dále ztenčuje a nakonec je snímek |
přepálen a čára zmizí. Samozřejmě se předpokládalo, e na startu robot čáru vidí |
a ta je před ním přiblině uprostřed. <br> |
<br> |
První pokusy vypadaly velmi optimisticky, robot se drel čáry a vyjel jenom |
občas. Zajímavé bylo, e robot dokázal jezdit jenom po dráze, kde nebyly zatáčky |
doleva! Protoe jsme neměli k dispozici obraz z kamery, aby bylo moné |
zkontrolovat co kamera vidí, bylo nutné tento problém řeit pouhou úvahou. |
Napadlo nás, e můe docházet k vytrhávání obrazu na krajích snímku. |
Kompenzovalo se to tím, e se zahazovaly okraje řádku a skutečně to pomohlo, |
robot spolehlivě, i kdy pomalu, sledoval čáru. To byl velký úspěch, protoe |
kdyby nám někdo řekl před rokem, e to s kamerou a jednočipovým počítačem jde, a |
e je to spolehlivé, asi by jsme mu nevěřili.<br> |
<br> |
Po prvotních úspěích jsme zkusili zrychlit jene to nefungovalo, robot vdy |
vypadl z dráhy, kdy se zatáčecí kolečko otočilo o velký úhel. Napadlo nás, e |
to můe být způsobeno proudovými pičkami, které způsobuje motor serva. Pro |
stabilizaci napájení pro elektroniku byl toti pouit lineární stabilizátor s velkým |
drop-outem. Proto jsme vyvinuli měnič, který i při poklesu napětí baterií o 2V |
dokázal udret napětí pro řídící elektroniku a zejména kameru stabilní. Po tomto |
vylepení u robot dosahoval poměrně sluné rychlosti a nejzajímavějí bylo, e |
díky velké rozliovací schopnosti kamery (procesor dokázal rozliit asi 50 |
bodů) byla jízda v zatáčkách velmi plynulá.<br> |
<br> |
Problém s tmou v tunelu byl vyřeen jednodue tak, e si robot celou cestu |
svítil. Na osvětlení dráhy byly pouity červené LED. Nevíme, jaká barva pro |
osvětlení dráhy je nejlepí, eventuelně, jestli je lepí svítit bíle. S tím jsme |
u nestihli před soutěí experimentovat.<br> |
<br> |
Protoe pouitý procesor PIC16F876A neumí násobit a vůbec jeho výpočetní výkon |
není omračující (kdybychom ho ale měli před lety, tak by jsme si určitě |
nestěovali), byl celkem problém naprogramovat elektronický diferenciál na |
hnanou nápravu. Nakonec se to vyřeilo procedurou jakonásobení, která |
kombinací rotací a podmíněného sčítání provádí rychle potřebný výpočet s uspokojivou |
přesností.</font></p> |
<p align="center"><font face="Times New Roman"><a href="pic/image013.jpg"> |
<img border="0" src="pic/image013_small.jpg" xthumbnail-orig-image="pic/image013.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">.</span> 6: Měnič v krabičce od čaje a primitivní |
osvětlení dráhy.<br> |
</font></p> |
<p align="center"><font face="Times New Roman"><a href="pic/image015.jpg"> |
<img border="0" src="pic/image015_small.jpg" xthumbnail-orig-image="pic/image015.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">.</span> 7: Robot, přítel člověka.</font></p> |
<p align="left"><font face="Times New Roman">Začali jsme tedy testovat pro sledování čáry asi nejobtínějí věc, dlouhou |
rovinku a na konci pravoúhlou zatáčku. Při dalím zvyování rychlosti začal |
robot v takové zatáčce vypadávat. Ne, e by přímo vyjel a nevrátil se na dráhu, |
ale poloměr zatáčení byl mení ne poloměr zatáčky a hrozilo tedy, e v Bratislavě |
spadne ze stolu. Udělali jsme předpoklad, e je to způsobeno pomalým snímkovým |
kmitočtem kamery, ne si robot stačil vimnout, e je zatáčka ostrá, zmizela mu |
čára ze zorného pole.<br> |
<br> |
Dalím problémem bylo, e pokud bylo nerovnoměrné osvětlení dráhy, vypadával |
kameře obraz. Kamera má sice AGC, ale samozřejmě, e je schopna kompenzovat |
rozdíly jasu jenom v určitých mezích. Kupodivu nebyl problém v tunelu, kde si |
robot svítí, ale velký problém byl s denním světlem, pokud přicházelo pouze z jednoho |
směru.<br> |
<br> |
Konstrukční řeení, které následovalo, bylo doplnění dvou modrých čidel po |
stranách robota na sledování čáry. Čidla byla umístěna tak, e viděla čáru, a |
kdy čára byla mimo zorné pole kamery a uplatňovala se pouze v případě, e |
kamera čáru nevidí. To velmi zvýilo spolehlivost sledování čáry. Zároveň jsme |
tato čidla pouili pro opětovné vyhledání čáry po objetí cihly, protoe jsme se |
báli pro tento úkol pouít kameru, protoe po dobu objídění cihly kamera nevidí |
kontrastní obrázek (nevidí čáru) a díky AGC by mohla zaznamenat stín nebo pínu |
na trati jako čáru. <br> |
<br> |
Na objídění cihly byl robot Camerus vybaven odometrií na pravém kole. Vyuili |
jsme otvorů ve větím kole převodovky a IR závory z tiskárny. Citlivost |
o<span lang="en-us">d</span>ometrie nebyla velká (4 impulzy na jednu otáčku kolečka (12,6mm)).<br> |
</font></p> |
<p align="left"><b><font face="Times New Roman" size="4">Jak jsme jeli ladit do Vídně</font></b></p> |
<p align="left"><font face="Times New Roman">Ve potřebné bylo naprogramováno, robot sledoval čáru. Přeruení nedělalo |
problémy, prostě byl výpadek obrazu a robot pokračoval v původním směru před |
přeruením. Cihla byla řeena pomocí odometrie. Takto vybaveni jsme odjeli do |
Vídně na Robot Challenge 2007. Řekli jsme si, e to tam odladíme, protoe jsou |
tam jednoduí podmínky ne v Bratislavě (alespoň na první pohled, robot můe |
být větí a tunel je také větí, take robot nemusí jet tak přesně).<br> |
<br> |
Rozhodnutí ladit robota na Robot Challenge se ukázalo jako správné. Podmínky |
toti byly náročné. Bodové osvětlení, dráha sloená z desek s mezerami, styl |
soutěe play-off.<br> |
<br> |
Camerus určitě jezdil nejrychleji, ale nedokázal objet cihlu! Jednou se stalo, |
e uviděl mezeru mezi deskami, podruhé mu zřejmě proklouzlo kolečko s odometrií, |
prostě katastrofa! Alespoň, e byl třetí v paralelním slalomu, to jsme mu ale |
zavinili my, protoe jsme mu při zkouení objetí cihly stáhli výkon motorů a pak |
jsme na to zapomněli. Za třetí místo tedy nemohl robot, ale lidský faktor.<br> |
<br> |
</font></p> |
<p align="center"><font face="Times New Roman"><a href="pic/image017.jpg"> |
<img border="0" src="pic/image017_small.jpg" xthumbnail-orig-image="pic/image017.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">.</span> 8: Robot Challenge 2007, Parallel Slalom. Robot |
Camerus na dráze číslo 1. Na dráze jsou patrné stíny od bodového osvětlení.<br> |
</font></p> |
<p align="center"><font face="Times New Roman"><a href="pic/image019.jpg"> |
<img border="0" src="pic/image019_small.jpg" xthumbnail-orig-image="pic/image019.jpg"></a><span lang="en-us"> |
</span><a href="pic/P3180028.JPG"> |
<img border="0" src="pic/P3180028_small.JPG" xthumbnail-orig-image="pic/P3180028.JPG"></a><br> |
<br> |
Obr<span lang="en-us">.</span> 9: Robot Camerus na Robot Challenge 2007. Robot |
nemá dostatek čidel na bezpečné objetí překáky.<br> |
</font></p> |
<p align="left"><font face="Times New Roman">Jednoznačně se ukázalo, e objídět překáku naslepo není dobrá strategie a |
zejména, pokud je odometrie na hnané nápravě.<br> |
</font></p> |
<p align="left"><font face="Times New Roman" size="4"><b>Co s cihlou?</b></font></p> |
<p align="left"><font face="Times New Roman">Dalí vývoj jsme věnovali objídění cihly za pomoci čidel. Jaká čidla ale pouít? |
Měli jsme patné zkuenosti s IR čidly s 3Orbise a roboty s ultrazvukem jsme |
zase na minulých ročnících viděli, e si spletli tunel s cihlou, případně |
neviděli cihlu, pokud se k ní blíili zeikma.<br> |
<br> |
Nevěděli jsme co s tím a tak jsme začali zkouet. Měřili jsme, co vidí |
ultrazvuk a co různá optická čidla. Při měření se ukázaly vechny předpokládané |
problémy. Ultrazvuk vidí kde co, jenom ne cihlu, kdy je ikmo. IR snímač vidí |
cihlu sice spolehlivě, ale stejně dobře jako velkou bílou zeď několik metrů |
daleko. Nakonec byla pro cihlu zvolena kombinace sedmi senzorů. Skutečně čtete |
dobře, sedmi! Jeden IR senzor vpředu na detekci přiblíení se k cihle. Funguje |
na principu triangulace. IR vysílací dioda má úzkou hliníkovou trubičkou zúen |
paprsek, aby nedocházelo k jeho integraci na velké vzdálené ploe. Dalí dva |
senzory jsou mikrospínače na mechanickém nárazníku, kdyby se stalo, e |
triangulační čidlo cihlu přehlédne. To se můe stát v prudké zatáčce. Z boku |
jsou pak ultrazvukový senzor a dálkoměr s červenou LED. Tyto čidla udrují |
konstantní vzdálenost od cihly při jejím objídění. K tomu jetě ji zmíněná |
odometrie na pravém kolečku, která zajiťuje prudkou zatáčku doleva jakmile je |
cihla detekována a nakonec kompas, který zabraňuje, aby se robot vracel zpět po |
trati (to se můe stát, protoe mezi předním čidlem a bočními čidly je slepý |
úhel).<br> |
<br> |
Přidání dalích čidel se neobelo bez konstrukčních problémů. Boční LED čidlo se |
ukázalo jako málo citlivé a bylo to zřejmě způsobeno tím, e se jedná o |
průmyslové čidlo, které je normálně napájeno napětím 12 a 48V. S naím |
napájecím napětím 7,2V a to jetě občas, nebylo moc spokojeno. Byl tady přidán |
dalí měnič nahoru na 12V. Byl pouit měnič ze staré síťové karty.<br> |
</font></p> |
<p align="left"><font face="Times New Roman" size="4"><b>Poslední weekend před soutěí</b></font></p> |
<p align="left"><font face="Times New Roman">Přidání kompasu na I2C sběrnici si vyádalo přeadresaci kamery, protoe kamera a |
kompas měly na I2C sběrnici stejnou adresu a adresa kompasu se nedala změnit. To |
kupodivu byl velký problém, který jsme u řeili poslední weekend před soutěí a |
vynutil si tak zásadní zásah jako rozebrání objektivu kamery, co znamenalo |
pečlivé čitění pouzdra čipu kamery, protoe případné smítko na pouzdře čipu by |
mělo při soutěi fatální následky. Čip kamery sice přeadresaci umí, ale bylo |
nutné připojit vývod MULT (47) na <span lang="en-us">log_1 </span>a na to kupodivu na ploném spoji kamery |
nebylo pamatováno, přesto, e na ploném spoji jsou ploky na odpory, které |
umoňují změnu adresy.<br> |
</font></p> |
<p align="center"><font face="Times New Roman"><a href="pic/image021.jpg"> |
<img border="0" src="pic/image021_small.jpg" xthumbnail-orig-image="pic/image021.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">.</span> 10: Propojka na PCB kamery umoňující její |
přeadresaci.<br> |
</font></p> |
<p align="left"><font face="Times New Roman">Poslední weekend před soutěí nás napadlo jetě jednou projít seznam problémů, |
které jsme si poznamenali v průběhu loňské soutěe. Hned na začátku tam bylo: Zkontrolovat, |
jestli neprokluzují kolečka na hřídeli. Prokluzovaly. Zkusili jsme je přilepit |
anaerobním lepidlem. Výsledek byl, e se zalepily hřídelky do loisek a kolečka |
prokluzovala dál. Zkusili jsme je přilepit epoxidem. Nanetěstí nám trochu |
epoxidu zřejmě nateklo do loisek a kolečka se zase utrhla. Poslední weekend |
před soutěí jsme tedy měli zatuhlé převodovky a kolečka prokluzovala. Snaili |
jsme se do hřídelek vyvrtat dírky a dát tam kolík, ale vrták vůbec nitridovanou |
ocel z CD mechanik nebral. Nakonec jsme do hřídelek pouze vypilovali dráky a |
opět jsme je zalili epoxidem. Jestli neprokluzují, jsme pro jistotu u |
nezkoueli.<br> |
<br> |
Jetě bylo nutné znovu zaběhnout převodovky, to jsme dělali přes noc z pondělí |
na úterý (IstRobot bývá ve středu a my tam obvykle jedeme v úterý dopoledne). |
Motory se točily do rána do poslední chvíle před naloením robota do auta.<br> |
</font></p> |
<p align="left"><font face="Times New Roman" size="4"><b>Noc před soutěí</b></font></p> |
<p align="left"><font face="Times New Roman">Kdyby nebylo poslední noci, tak není ádný projekt dokončen. Odpoledne jsme |
přijeli do Bratislavy na ubytovnu, rozloili dráhy a začali ladit poslední řádky |
programu. V naem případě to mělo být zpracování logu z jízdy.<br> |
<br> |
A vůbec to nejezdilo. Robot měl malý výkon v levotočivé zatáčce, při objídění |
cihly se dokonce občas zastavil. No jasně, řekli jsme si, jsou stále zatuhlé |
převodovky, změnili jsme pár konstant v programu a jak tak to zase jezdilo. |
Situace se ale o půlnoci zase zhorila a začal smrdět H-můstek. Vyměnili jsme |
tedy H-můstek a nepomohlo to. Vyměnili jsme tedy motor a pomohlo to! Prostě jsme |
neustálým laděním programu a zkouením zničili jeden motor! Vrátili jsme tedy do |
robota původní H-můstek (asi tak v jednu hodinu ráno) a zase to nejelo. Měřením |
jsme pak zjistili dvě věci, jednak byly přes pájecí lak odizolovány zemnící |
rouby na ploném spoji H-můstku a tak vechen proud tekl přes hřebínkový |
konektor a pak tam jetě byl zkrat přes jeden tranzistor H-můstku, take jeden |
motor nereverzoval. Představte si, e tyto závady byly vykompenzovány |
regulátorem v software a e s nimi byl Camerus na Robot Challenge třetí!<br> |
<br> |
Pak u jenom stačilo doprogramovat tu logovací proceduru (přepisovala paměť). A |
kolem páté hodiny ranní byl robot připraven na soutě.<br> |
</font></p> |
<p align="left"><font face="Times New Roman" size="4"><b>IstRobot 2007</b></font></p> |
<p align="left"><font face="Times New Roman">IstRobot 2007 nás skutečně překvapil, byla na něm z naeho pohledu nejsloitějí |
dráha, jakou jsme kdy viděli. Extrémně dlouhé přeruení, navíc v inflexním bodě |
(to nás vůbec nenapadlo, e je moné), cihla hned za pravoúhlou zatáčkou (sotva |
robot vyjede ze zatáčky, bác, a je tu cihla), viz Obrázek 11. </font></p> |
<p align="left"> </p> |
<p align="center"><font face="Times New Roman"><a href="pic/image023.jpg"> |
<img border="0" src="pic/image023_small.jpg" xthumbnail-orig-image="pic/image023.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">.</span> 11: IstRobot 2007 tvar dráhy.</font></p> |
<p align="left"><font face="Times New Roman">Obtínost trati se |
ukázala hned v první jízdě, Camerus vypadnul na přeruení. V druhé jízdě jsme |
sníili výkon motorů, zde ale zase hrozilo, e se robot nerozjede, pokud někde (například |
při objídění cihly) výrazně zpomalí. Robot jel plynuleji, přesto vyjel v přeruení |
(to dá rozum, protoe kopíroval tvar dráhy před přeruením), vyhnul se tunelu, |
znovu nael dráhu (to fungovalo dobře) a na podruhé projel. Byl to úspěch, ale |
velká časová ztráta a navíc si robot patně zapamatoval dráhu pro dalí jízdu, |
protoe bloudil.</font></p> |
<p align="left"><font face="Times New Roman">Programovali jsme místo oběda a nakonec jsme to přeruení vyřeili. Prostě jsme |
zohlednili, e dráha za přeruením můe pokračovat i na druhou stranu. Zní to |
jednodue, ale úprava programu nebyla tak jednoduchá, viz soutění verzi |
<a href="http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=/Designs/ROBOTS/Camerus/sw/#_Designs_ROBOTS_Camerus_sw_">firmware</a>.</font></p> |
<p align="left"><font face="Times New Roman">Finálová jízda proběhla bez |
problémů, robot sice jel na méně jak polovinu regulačního rozsahu a bez naeho |
zásahu by se s dráhou dobře nevypořádal, ale jsme rádi, e dojel a nakonec |
stejně za to nemohl robot, ale my, e jsme mu naprogramovali, e dráha za |
přeruením nemůe vést na druhou stranu. Nakonec se podařilo s robotem s časem |
12,5s udělat rekord trati <span lang="en-us">;-)</span><br> |
</font></p> |
<p align="center"><font face="Times New Roman"><a href="pic/image025.jpg"> |
<img border="0" src="pic/image025_small.jpg" xthumbnail-orig-image="pic/image025.jpg"></a></font></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">.</span>12: Robot Camerus - finální verze robota.<br> |
<br> |
</font></p> |
<p align="center"><a href="pic/index.2.gif"> |
<img border="0" src="pic/index.1.gif" xthumbnail-orig-image="pic/index.2.gif"></a></p> |
<p align="center"><font face="Times New Roman">Obr<span lang="en-us">. </span>13: Blokové schéma propojení modulů robota.<br> |
</font></p> |
<p align="left"><font face="Arial">Desky ploných spojů a popis jednotlivých modulů robota naleznete na |
<a href="http://www.mlab.cz/">http://www.mlab.cz/</a> |
.<br> |
</font></p> |
<p align="left"><font face="Arial">Deska procesoru<br> |
<a href="http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=/Modules/PIC16F87x/#_Modules_PIC16F87x_">http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=%2FModules%2FPIC16F87x%2F#_Modules_PIC16F87x_</a> |
<br> |
</font></p> |
<p align="left"><font face="Arial">H-můstky<br> |
<a href="http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=/Modules/HBRIDGE/#_Modules_HBRIDGE_">http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=%2FModules%2FHBRIDGE%2F#_Modules_HBRIDGE_</a> |
<br> |
</font></p> |
<p align="left"><font face="Arial">LEDbar<br> |
<a href="http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=/Modules/LEDbar/#_Modules_LEDbar_">http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=%2FModules%2FLEDbar%2F#_Modules_LEDbar_</a><br> |
</font></p> |
<p align="left"><font face="Arial">Měnič<br> |
<a href="http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=/Modules/PowerSupply/BATPOWER02A/#_Modules_PowerSupply_BATPOWER02A_">http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=%2FModules%2FPowerSupply%2FBATPOWER02A%2F#_Modules_PowerSupply_BATPOWER02A_</a><br> |
</font></p> |
<p align="left"><font face="Arial">IR modulátor<br> |
<a href="http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=/Modules/TXIR/#_Modules_TXIR_">http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=%2FModules%2FTXIR%2F#_Modules_TXIR_</a><br> |
</font></p> |
<p align="left"><font face="Arial">Osvětlení dráhy<br> |
Chybí</font></p> |
<p align="left"> </p> |
<p align="left"><font face="Arial">Univerzálka pro 7432<br> |
<a href="http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=/Modules/UNI/UNIDIL1601A/#_Modules_UNI_UNIDIL1601A_">http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=%2FModules%2FUNI%2FUNIDIL1601A%2F#_Modules_UNI_UNIDIL1601A_</a><br> |
</font></p> |
<p align="left"><font face="Arial">Trimry<br> |
<a href="http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=/Modules/TRIMQUAD01A/#_Modules_TRIMQUAD01A_">http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=%2FModules%2FTRIMQUAD01A%2F#_Modules_TRIMQUAD01A_</a><br> |
</font></p> |
<p align="left"><font face="Arial">Dokumentace k pouitému kamerovému čipu je na |
<a href="http://www.cmucam.org/attachment/wiki/Documentation/OV6620.PDF">http://www.cmucam.org/attachment/wiki/Documentation/OV6620.PDF</a> |
.<br> |
</font></p> |
<p align="left"><font face="Arial">Dokumentace k US senzoru je na |
<a href="http://www.robot-electronics.co.uk/htm/srf08tech.shtml">http://www.robot-electronics.co.uk/htm/srf08tech.shtml</a> .<br> |
</font></p> |
<p align="left"><font face="Arial">Dokumentace ke kompasu je na<span lang="en-us"> |
</span><a href="http://www.robot-electronics.co.uk/htm/cmps3doc.shtml">http://www.robot-electronics.co.uk/htm/cmps3doc.shtml</a> .<br> |
</font></p> |
<p align="left"><font face="Arial">Dokumentace k robotu 3Orbis, ze kterého Camerus vyel, je na<span lang="en-us"> |
</span> |
<a href="http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=/Designs/ROBOTS/3Orbis/#_Designs_ROBOTS_3Orbis_">http://www.mlab.cz/WebSVN/listing.php?repname=MLAB&path=%2FDesigns%2FROBOTS%2F3Orbis%2F#_Designs_ROBOTS_3Orbis_</a> |
.</font></p> |
|
</body> |
|
</html> |