Jste zde

Robot Arduino: platforma na kolech

Robot Arduino je zjednodušeně řečeno platforma na kolech s procesorem na desce motoru i na řídicí desce. Obě jsou plně programovatelné prostřednictvím rozhraní IDE platformy Arduino.
Jak bývá u Arduina zvykem, jsou všechny prvky této platformy, včetně hardwaru, softwaru a dokumentace, volně dostupné jako open-source. To znamená, že můžete přesně zjistit, jak jsou prvky sestaveny a dokonce použít příslušný konstrukční návrh jako podklad pro svého vlastního robota.
 
 
Pokud právě začínáte, mohou Vám přijít vhod instruktážní videa pro robota Arduino od spolutvůrců platformy Arduino Massima Banziho, Davida Cuartiellese a Xun Yanga.
 
 

1. Představení robota Arduino

 
V tomto videu se dozvíte, jak robota Arduino vybalit a následně smontovat. Obsahuje také ukázku použití rozhraní IDE platformy Arduino k naprogramování robota.

Po úvodu od Massima Banziho vysvětluje David Cuartielles, spolutvůrce platformy Arduino, s asistencí vývojáře interakcí platformy Arduino Xun Yangem, jak lze robota použít k seznámení se základy elektroniky a mechaniky. Robot byl vyvinut společně s asociací pro robotiku Complubot ze Španělska, kterou založili Ivan Gallego, Nerea de la Riva a Eduardo Gallego, disponující dlouholetými zkušenostmi v oblasti konstrukce robotů, účastnících se mezinárodní soutěže RoboCupJunior.

Robot Arduino je platformou pro seznámení zájemců o robotiku s jejími základy. Je předem sestaven (kromě dílů předvedených v tomto videu) a on-line je dostupné velké množství související dokumentace. Xun a David předvádí vybalení a sestavení robota a vysvětlují též funkci jednotlivých dodaných dílů, včetně všesměrové robotické platformy, stručného návodu k použití, kabelu USB, displeje TFT, karty uSD, baterií a napájecího zdroje k jejich dobíjení. Napájení robota bylo navrženo pomocí měniče DC/DC, který zajistí optimalizaci spotřeby z jakýchkoli baterií. Je třeba mít na paměti, že nabíjecí obvod je určen pouze k dobíjení baterií NiMH.

Každý robot je z výroby předem otestován a umožňuje spuštění programu s názvem „Hello User!“, který seznámí uživatele se základním použitím rozhraní. Na obrazovce jsou srozumitelné pokyny pro interakci se softwarem pomocí manipulace s klávesnicí a tlačítky. V tomto prvním příkladu jsou uživatelé vyzváni k zadání svého jména a jména, kterým chtějí pojmenovat svého robota. Tyto informace se pro budoucí použití ukládají do paměti EEPROM. Základní knihovna dále umožňuje přehrávání 8bitové hudby při provádění dalších činností. Jak uvidíte, robot přehrává uvítací melodii a přitom vykonává příkazy příkladu „Hello User!“.
 


Robot má dva různé procesory – jeden na řídicí desce nahoře ovládá obrazovku, kompas a další snímače, druhý na desce motoru dole ovládá motory a zajišťuje funkci pole snímačů pro sledování linií. Programování různých snímačů a ovladačů robota není složité, David a Xun předvádí, jak můžete robota rozpohybovat a otáčet pomocí pár řádků kódu.
 
 

2. LOGO a dálkové ovládání robota

 
V tomto videu se dozvíte, kde se dají najít příklady kódu pro rozhraní IDE. Knihovna robota obsahuje dvě složky s názvem „learn“ (učení) a „explore“ (prozkoumávání) s příklady použití softwaru k programování horní desky – to je deska, na které budete provádět většinu interakcí, na rozdíl od desky motoru, na které je spuštěn původní firmware.

Jeden z prvních příkladů kódu pro robota Arduino se jmenuje „LOGO“ a vychází z dřívějšího jazyka pro výuku programování, který sloužil k ovládání pohybu virtuální želvy na obrazovce pomocí jednoduchých příkazů. Tentokrát je zde však místo malé virtuální želvy pohybující se po obrazovce robot, který dokáže reagovat na příkazy a provádět základní pohyby.

„LOGO“ umožňuje uživatelům interakci s robotem prostřednictvím klávesnice, pomocí které sdělíte robotovi, zda se má pohybovat dopředu / dozadu nebo otočit doleva / doprava. Program umí uložit posloupnost příkazů, které pak budou postupně prováděny.

Xun a David ukazují uživatelům, kde příklad LOGO najdou a jak jej mohou nahrát do řídicí desky robota. Jak uvidíte, motory robota se odpojí, pokud je připojen kabel USB. Robot Arduino umí být výkonný a tato funkce zabraňuje, aby odjel i s vaším notebookem!
 

 
Protože každý motor je trochu jiný, musí uživatelé nakonfigurovat pohyb robota pomocí jiného příkladu s názvem „Calibration“ (Kalibrace). Pomocí šroubováku a trimru na spodní desce je možné vyvážit sílu vyvíjenou jednotlivými koly tak, aby se robot dokázal pohybovat rovně, pokud dostane příslušný příkaz. V závěru videa je příklad použití jednoduchého IR přijímače připojeného k jednomu ze vstupů robota pro snímače k jeho ovládání pomocí malého univerzálního dálkového ovladače. Tento program je také součástí základního seznamu příkladů v knihovně.

 

3. Vyhýbání se překážkám, tvorba strategií

 
V tomto videu Vám tým Arduino vysvětlí, jak se dají pomocí různých technologií detekovat překážky v dráze robota. Jsou zde zkoušeny tři technologie: ultrazvukové dálkoměry, infračervené dálkoměry a postup s využitím bílých LED s vysokým jasem a snímačů LDR.

Na začátku videa je stručně vysvětleno využití ultrazvuku při informování o objektech a překážkách před snímačem. Xun a David připojí jeden z těchto snímačů k robotovi a spustí příklad s názvem „Avoid Obstacle“ (Vyhnout se překážce), který byl sestaven speciálně pro ultrazvukový dálkoměr Maxbotix EZ-10. Ve druhém příkladu je pak znázorněno použití dvou infračervených snímačů Sharp, konkrétně se můžeme podívat, jak lze použít snímač s analogovým napěťovým výstupem.

Svým způsobem fungují ultrazvukové a infračervené snímače obdobně: odešlou signál, který se odrazí od objektů a přijatý odraz slouží k odhadu vzdálenosti. V případě ultrazvuku slouží k výpočtu rychlost zvuku a časový rozdíl mezi odeslaným a přijatým signálem, u infračervených snímačů je postup přímočařejší. V příkladu s infračervenou technologií připojí David a Xun dva snímače ke konektorům robota TinkerKit. V případě s ultrazvukovým snímače dokáže robot určit pouze to, zda se před ním něco nachází; s infračerveným snímačem pak též, která strana je k překážce blíže a následně se rozhodnout, na kterou stranu se jí má vyhnout.
 

 
V závěrečném příkladu zjistíte, jak si můžete jednoduše vyrobit vlastní reflexní snímače pomocí zdroje silného světla a snímače LDR. Používají se zde standardní součásti TinkerKit: modul vysoce svítivé LED a modul LDR. Princip je podobný jako v případě infračervené technologie. Další informace přináší připojená videa a také stránky DesignSpark.

 
Zdroj: RS

 

Hodnocení článku: 

Komentáře

Tak mobilní platforma - a je to tam po obvodu samej konektor pro připojení drátů/kabelů. A nic se nemluví o nějakém bezdrátovém připojení - BT nebo nrf. Přitom bych u takové pohyblivé hračky očekával, že ji budu moci dálkově programovat tam, kde je (a nemuset ji zase chytit, přinést na stůl, připojit kabel, naprogramovat, odpojit, sundat na zem a vypustit).  Taky by se tím dala dálkově ovládat nebo posílat interní data do PC - pro ladění programu nebo analýzu chování. Vždyť BT má dnes každý notebook, do stolního PC stojí BT modul do dvou stovek a BT modul pro Durino se dá v Číně sehnat za 6 USD (120 Kč) - to už by stavebnici zas tak neprodražilo, ale užitná hodnota by stoupla o 300%...