Začíname s ROS! Časť prvá – Ubuntu

logo-ubuntu_st_no®-black_orange-hexMáte pred sebou projekt, diplomovku, dizertačku, etc. v ktorej potrebujete použiť ROS, pozreli ste si desiatky videí na Youtube, prečítali pár článkov, poobzerali sa po hlavnej stránke ros.org a  definitívne ste sa rozhodli, že idete do toho. Gratulujem! spravili ste prvý krok tým správnym smerom. Otázka však teraz znie: Čo ďalej? a najmä: Odkiaľ začať?

Samozrejme veľmi veľa závisí od toho aké sú vaše doterajšie skúsenosti s programovaním, ak ste skúsený programátor, v Linuxe ste ako doma a objektovým programovaním sa živíte roky, pravdepodobne sa v ROS zorientujete rýchlo. Ak ale patríte medzi študentov, „odchovaných na Matlabe“, nemáte s Linuxom ani objektovým programovaním veľa skúseností, tak ste na správnom mieste.

Cieľom tohto a nasledujúcich článkov nie je supplovať základné ROS tutoriály ale skôr čitateľa usmerniť a poradiť odkiaľ vlastne začať, z ktorých materiálov čerpať a na čo si dať pri začiatkoch práce v ROS pozor. V prvej časti nášho seriálu sa pozrieme na inštaláciu Ubuntu, aktuálne releasy a taktiež na základné zručnosti, ktoré je potrebné v Linuxe zvládnuť.

terminal

Inštalácia Ubuntu

Keďže ROS je optimalizovaný pre použitie v kombinácii s Ubuntu distribúciou Linuxu, prvou úlohou, ktorý potrebujete vyriešiť je otázka ako to Ubuntu do svojho počítača dostať. Podobne ako Windowsy aj linuxovské distribúcie prechádzajú vývojom a v pravidelných odstupoch vychádzajú jedotlivé releasy. Na rozdiel od Windowsu sú však zadarmo a voľne dostupné na stiahnutie. Pre použitie s ROS sa odporúča inštalovať verzie s príponou LTS (Long time support), pri ktorých máte záruku, že budú najbližších pár rokov podporované a aktualizované. Momentálne (január 2015) je poslednou LTS verziou 14.04.

Z hľadiska inštalácie máte viacero možností, najjednoduchšou je použitie VirtualBoxu od Oraclu. AK si k nemu stiahnete Ubuntu 14.04 ako VirtualBoxImage, do 5tich minút máte funkčné Ubuntu bez toho, aby ste vôbec opustili Windows. Ak si chcete nainštalovať Ubuntu do VirtualBoxu z .iso súboru dostupného na hlavnej stránke systému, tak podrobný návod vrátane inštalácie Guest Additions a nastavenia parametrov je tu. Pre prvé zoznámenie s Ubuntu a ROS VirtualBox úplne postačuje, ak sa ale posuniete do fázy, že potrebujete pripájať hardware, prípadne budete riešiť výpočtovo náročnejšie úlohy je lepšie VirtualBox nahradiť normálnou inštaláciou.

V takom prípade, odporúčame vyhnúť sa lákavému Wubi inštalátoru, s ktorým nemáme dobré skúsenosti a nainštalovať Ubuntu klasicky z inštalačného CD alebo USB kľúča cez boot. Ubuntu nie je extra pamäťovo náročné a 60GB miesta mu pre základnú prácu bohate postačí. Ak ale máte voľný SATA slot a plánujte využívať Linux dlhodobejšie, pouvažujte aj nad kúpou samostatného SSD disku.

Ubuntu2

Pracovná plocha čistého Ubuntu 14.04 LTS

Základy práce v Ubuntu

Inštaláciu Ubuntu sme zvládli a pred nami je krásna čistá pracovná plocha. Ak je toto vaša prvá skúsensoť s Linuxom, na začiatok odporúčame pozrieť zopár tutorialových videí typu 10 Things to do after installing Ubuntu aby ste si trocha zvykli na ovládacie rozhranie, Ubuntu Software Center a Synaptic Package Managera. Ak nie ste „iOS positive“ budete zrejme pár dní nadávať na chýbajúce partície ako je zvykom vo Windowse, prípadne na zatvárací krížik okna na ľavej strane. Základné grafické rozhranie, ktoré máte pred sebou sa nazýva Unity ale nie je problém ku nemu doinštalovať Gnome alebo KDE a prepínať si ich podľa potreby. Viac o grafických rozhraniach sa dočítate napríklad tu.

Po prvotnom zoznámení s Ubuntu je čas posunúť sa v ústrety najväčšej zmene, ktorú Linux do vášho IT života prinesie a tou je jednoznačne konzola / terminál / príkazový riadok !!!

Konzolu budete milovať, budete ju nenávidieť, budete jej mať plné zuby ale nebudete vedieť bez nej existovať…každopádne ak s ňou raz začnete robiť, pripravte sa, že to bude láska na celý život 🙂 Netreba z nej mať strach pre základnú prácu v ROS vám stačí zapamätať si zopár základných prikazov na pohyb po FileSysteme a inštaláciu packegov, zvyšok si nájdete v prípade potreby do pár sekúnd na webe. Opäť odporúčame pozrieť tutorialové youtube video pre osvojenie si základných zručností a syntaxe príkazov jazyka Bash. Zo začiatku to síce bude boj ale po pár mesiacoch používania sa s konzolou úplne zžijete a práca v nej vám bude pripadať úplne samozrejmá.

konzola

Zbuildované bez chýb – už čoskoro váš najobľúbenejší konzolový výstup

Je dosť možné, že vás v týchto etapách bude lákať aj všeobecné štúdium Linuxu alebo jazyka Bash ešte predtým ako sa pustíte do ROS. Netvrdím, že tieto „skilly“ pri práci v ROS nevyužijete ale naozaj nemá zmysel pre začiatočníka ktorému ide o robotiku stráviť hodiny a hodiny štúdiom všeobecných možností a detailov operačného systému. Podobne je to aj s programovacími jazykmi. V diskusiách so študentami sa stretávam s názorom, že kým začnem robiť s ROS musím sa najprv naučiť programovať v C++ alebo v Pythone. Samozrejme je dobré mať nejaké základy jazyka C, poznať principiálne rozdiely medzi procedurálnym a objektovým programovaním ale naozaj nemá zmysel študovať dopredu nejakú 800stranovú knihu o programovaní v C++. Zo začiatku bude aj tak gro vašej práce spočívať v prepisovaní vzorových kódov z tutoriálov a experimentovaní s nimi, čo vám dá jednak vhľad do spôsobu programovania v ROS a zároveň sa na vás nalepia základy C++, Linuxu aj konzolového jazyka Bash. Ak máte záujem popri ROS hlbšie študovať aj C++ alebo Linux, oveľa ľahšie vám to pôjde ak už budete mať prvé skúsenosti s riešením vlastných praktických problémov ako keď sa učíte na vymyslených vzorových príkladoch z príručiek. Osobne sa mi najviac osvedčil prístup, snažiť sa čo najviac pochopiť kód z ktorého sa učím a v prípade, že mi nie je určitá časť syntaxe jasná, vyhľadať si vysvetlenie v príručkách. Aj tak 99% problémov na ktoré narazíte už niekto pred vami riešil a rýchlo nájdete odpoveď buď na ros_answers, stackoverflowe a podobných fórach.

Ak teda máte Ubuntu úspešne nainštalované, oboznámili ste sa s ovládaním a zvládate základné príkazy na prácu s konzolou, je čas pustiť sa do samotného ROS. V druhej časti nášho seriálu sa pozrieme na inštaláciu ROS, povieme si niečo o jednoltivých releasoch ale najmä si ukážeme odkiaľ vlastne začať.

František Ďurovský