TulBot

TulBot_stereo

TulBot je autonomní robot budovaný (s přestávkami) zhruba od r.2009 do roku 2012. Vytvořen byl při studiích na Technické univerzitě v Liberci – odtud také název TUL-BOT. Škola také samozřejmě vývoj podporovala. Základní myšlenka byla prostá – vytvořit univerzálního robota pro akademické (i nadšenecké) robotické soutěže typu Eurobot, Sick robot day, Robotour či Matfyzácký Robotický den. Většina robotů na podobných akcích je totiž jednoúčelová. Často slouží jen pro jeden ročník konkrétní soutěže. Takový jepičí robot se nezdál jako ideální řešení a tak vznikla myšlenka na vytvoření zručnějšího stroje, který by zastal rozmanitější škálu úloh. Ideálně by se také neměl omezovat jen na indoorové soutěže, ale prostě zvládat vše.

Tulbot outdoor
TulBot s outdoor kitem

Robot má klasický diferenční podvozek se dvěma hnanými koly a jedním všesměrovým. Kola jsou standadně indoorová s tvrdým běhounem (kvůli přesnější odometrii). Na ven lze ovšem robot přezout do zásadně větších, pneumatických kol. Uchycení je řešené tak, aby se indoor kola nemusela vůbec sundávat. Pneu kolo má speciální přírubu, díky které lze nasadit přímo na indoor kolo. Robot má samozřejmě senzorické vybavení jak na práci uvnitř tak venku. Ultrazvukový dálkoměr, infračervené dálkoměry, kameru, GPS, elektronický kompas, IMU jednotku. Hlavně má ale Z-kameru – Kinect a klíčový element univerzálnosti – mechanické rameno.

Zrak je základ

TulBot_laser_idea

Od začátku bylo jasné, že pokud má robot být schopen s něčím manipulovat, musí perfektně vnímat svoje okolí. Mnohem lépe než běžný jednoúčelový robůtek, který si může dovolit poloslepé uchopování nějakým radlicovitým drapákem. Samozřejmě naprosto ideální by bylo strojové vidění postavit na prostorovém Lidaru (který koneckonců dnes používají různá profesionální autonomní vozítka). Jenže takový snímač by poněkud překročil plánovaný rozpočet. Vlastně by ho překročil dost, zruba 100x. Podotýkám, že hračky typu Kinect či Asus Xtion v roce 2009 jěště neexistovaly. Dále šlo pošilhávat po řešeních typu SwissRanger či Sick LMS 200, pro studentský rozpočet samozřejmě ekvivalentně nedostupných.

TulBot - laserové vidění
TulBot – laserové vidění

Bylo tedy rozhodnuto o vytvoření vlastního snímacího systému. Měl snímat dvojrozměrný “řez” prostorem, podobně jako Sick LMS 200, ale vejít se do cca 2000Kč. Princip je patrný na obrázku výše. Systém využívá liniový laser a kameru (uvnitř těla robota). Liniový laser promítá čáru před robota a kamera snímá zkreslení čáry. Následně je softwarem zrekonstruován prostor před robotem. Jelikož laser s opticky zajištěným promítáním “čáry” byl opět poměrně drahý a hlavně velmi málo výkonný (většinou jsou určené jako komponenta do čteček čárového kódu), opět bylo rozhodnuto vytvořit vlastní řešení. Na ebayi se mi podařilo opatřit adekvátní laserový zdroj – řádný 50mW vypalovač sítnic. Teď už jen z tečky udělat čáru. Rozptýlení laserového paprsku nakonec zajistil kmitající vystavovací mechanismus vyřazeného pevného disku a malé zrcátko. Jasně, bylo by možné použít i pouhý motorek se zrcátkem, ale takové řešení plýtvá světelným tokem v momentě kdy promítaný paprsek odbíhá někam za senzor. Jelikož má systém pracovat i venku, nemůžeme si plýtvání drahoceným světlem dovolit. Zařízení je k prohlédnutí na obrázku níže…

Laser line module
Liniový laser – vyrobeno z pevného disku a laserového ukazovátka

Ačkoliv laserový systém ve finále celkem fungoval (venku tedy jen ve stínu – příště to chce 500mW vypalovač sítnic), robot v průběhu času získal pokročilejší systémy vidění. Dočasně obdržel například systém kolegy Žabčíka pro strojové vidění pomocí stereo disparity (na titulním obrázku). Konečně začátkem roku 2011 přišel Kinect a volba finálního systému strojového tak byla jasná.

TulBot3

Mechanické rameno dělá šikovné roboty

Univerzální robot znamená hlavně univerzální mechanický manipulátor. TulBot je tedy vybaven kompletním mechanickým ramenem s pěti stupni volnosti. Opět se nabízela možnost sáhnout po nějakém tom hotovém mechanickém manipulátoru od Lynxmotion. Ovšem po shlédnutí činnosti těchto manipulátorů v praxi jsem opět raději zvolil vlastní řešení. Většina hobby manipulátorů totiž nemá dostatečnosu tuhost konstrukce, pohyb je nepřesný a rameno neustále vibruje.

mech arm

Aby se zabránilo kmitání ramene jsou jednotlivé segmenty poměrně krátké. Dvě nejzatíženější serva také nepoužívají vestavěný servozesilovač. Je z nich vyvedeno napájení motoru a zpětnovazební potenciometr a funkci servozesilovače zastává opět elektronika vlastní kontrukce. Ta mj. zajišťuje měkké rozběhy zatíženého segmentu ramene či elektrické brždění pokud zatížený segment klesá. Obecně lze říct, že servomechanismus s dlouhou pákou na hřídeli (navíc s proměnlivou zátěží na konci páky) je v principu špatné řešení a žádné kultivované chování tak jako tak čekat nelze. Nicméně krokový motor by rameno (a celého robota) neuvěřitelně zatížil a zkomplikoval.

griper_modes

Griper byl navržen jako kleštinový – samosvorný. Nepochybně by se našlo mnoho univerzálnějších koncepcí. Nicméně griper není problém v případě potřeby vyměnit za přísavky, či cokoliv jiného.

Tulbot minigun - studie :)
TulBot když se rozzlobí – studie :)