Robotický manipulátor Lynxmotion AL5D

Firma Lynxmotion nabízí stavebnici manipulátoru v několika provedeních. Prvními odlišnostmi jednotlivých provedení jsou dosah a nosnost, což znamená, v jaké vzdálenosti od základny lze uchopit předmět a jak těžký může být. Například nejmenší verze AL5A má podle dokumentace dosah 5,75" a nosnost 4 unce (146mm a 113g). Naopak největší AL5D se může pochlubit dosahem 10,25" a nosností 13 uncí (260mm a 368g). Dalším rozdílem, který při nákupu zvažujeme, je obsah elektroniky. Lze totiž zakoupit pouze mechanické díly, dále pak mechanické díly společně se servy a nebo kompletní stavebnici, která obsahuje vše, co ke stavbě potřebujete, včetně řídicí jednotky pro serva, PC softwaru a kabelu. V tomto článku bych vás rád seznámil s kompletní stavebnicí v provedení AL5D, navíc vylepšené o rotaci zápěstí, která je dostupná jako příslušenství. Pro úplnost doplním, že i rotaci zápěstí lze zvolit ze dvou provedení – Heavy Duty a Light Weight. Já jsem zvolil odolnější provedení Heavy Duty, které se mi zdálo vhodnější.

Obsah stavebnice

Díly jsou pečlivě roztříděny v plastových sáčcích, podle toho k jakému celku náleží. Každý z velkých sáčků obsahuje i list papíru s popiskem a seznamem dílů včetně obrázků. Ve všem je perfektní systém a nehrozí, že byste nějaký ten šroubek nebo díl během stavby hledali. Veškerý obsah stavebnice a sadu pro rotaci zápěstí zachycuje obrázek 1. Obsahy jednotlivých sáčků pak obrázky 2 až 5. 2 – otočná základna, 3 – paže, předloktí, čelisti, 4 – řídicí jednotka a příslušenství pro montáž, 5 – rotace zápěstí včetně serva.

Díly jsou vyrobeny z ABS, lexanu nebo hliníku a ke kvalitě nemám výhrady. Pouze s lexanovými díly si musíme před samotnou stavbou trochu pohrát. Je třeba sundat ochrannou fólii a případně očistit okraje. Vyřezávají se laserem, takže jsou poněkud opálené. Všechna serva pochází od zejména modelářům známé firmy Hitec, jsou v originálních krabičkách s veškerým příslušenstvím. Při rozbalování objevíte samozřejmě i CD se softwarem RIOS, sériový kabel a napájecí adaptér (obr.6). Stavební návod výrobce nedodává v papírové podobě, ale je dostupný na internetových stránkách. Zpracování návodu je podle mého názoru slušné a osobně jsem nenarazil na žádnou chybu, která by stavbu komplikovala.

Stavba

Začíná se otočnou základnou vyrobenou z ABS, kterou je třeba přišroubovat na vhodnou podložku. Já jsem zvolil dřevotřískovou desku o rozměrech 30 x 25 cm. K základně je připojena deska z lexanu nesoucí řídicí jednotku, napájecí konektor a vypínače (obr. 7). Následuje montáž serva (HS-5745MG) ramenního kloubu a paže, která je tvořena dvěma černě eloxovanými hliníkovými díly ve tvaru U (obr. 8). Dále loketní kloub, rovněž se servem HS-5745MG a stříbrná hliníková trubka tvořící předloktí (obr. 9). Na jeho konec namontujeme servo HS-645MG, které zajišťuje pohyb zápěstí nahoru a dolů. Všechny díly pro uchycení serv jsou také vyrobeny z hliníku a navrženy univerzálně pro určitou velikostní kategorii serv. To v praxi znamená, že konkrétní použité servo nepasuje naprosto přesně, jak bychom možná očekávali, ale lze s ním před utažením šroubů lehce pohybovat. Neuškodí trocha trpělivosti a snahy servo "usadit" co nejlépe, ale ani drobnými nepřesnostmi nejdou vyrobit žádné zásadní chyby.

V dalších krocích sestavíme sadu pro rotaci zápěstí se servem HS-485BB (obr. 10) a přišroubujeme čelisti. Ty slouží k uchopení předmětů a jsou dodávány už hotové, stačí pouze namontovat servo HS-422, které je zavírá a otevírá. Obecně lze říct, že při stavbě manipulátoru neplatí "čím víc to utáhnu, tím lépe" ale naopak musíme postupovat s citem. Přehnaná tuhost kloubů způsobí přehřívání serv, naopak volnost ubere konstrukci na pevnosti. Na závěr je nutné pečlivě umístit kabely a zapojit je do řídicí jednotky. Zejména délce kabelů se vyplatí věnovat dostatek pozornosti, příliš dlouhé totiž budou odstávat a můžou se připlést, kam nemají. Naopak krátké zase budou omezovat pohyb manipulátoru, v horším případě dojde k vytržení některého konektoru.

V průběhu stavby vás může překvapit snad jen to, že na imbusové šrouby a některé matky vám nebude pasovat nářadí s metrickými rozměry. To je pochopitelné, protože firma Lynxmotion sídlí v USA a tedy většina montážního materiálu má rozměry odvozené od palců. V případě matek to až takový problém není, vše se mi nakonec podařilo utáhnout s nářadím, které jsem měl po ruce. Imbusy ovšem musí pasovat přesně, na to ale naštěstí výrobce pamatoval a ve stavebnici najdete přibalený i potřebný klíč. Tedy pokud si jej všimnete a nekoupíte si tak jako já ne úplně levnou univerzální sadu.

SSC-32

Pod tímto názvem se skrývá řídicí jednotka manipulátoru nebo spíše přesněji servokontrolér. Zvládne řídit pohyb až 32 serv, takže možnosti užití jsou samozřejmě širší, než pouze pro manipulátory. Jeho výstupy nemusí nutně ovládat jen serva, ale lze je použít i jako klasický digitální výstup – low/high. Nabízí také čtyři analogové vstupy s rozlišením 8 bitů, ty jsou určené pro připojení senzorů. Řízení manipulátoru pomocí SSC-32 je trvale závislé na PC, které posílá přes sériovou linku příkazy s polohami serv, rychlostí pohybu atd. Komunikace pochopitelně není jednostranná a servokontrolér naopak zpět posílá data o stavech vstupů. Formát příkazů je podrobně popsán v manuálu, který je, jak jinak, ke stažení na stránkách výrobce. Se servokontrolérem tedy můžete komunikovat i pomocí svých vlastních programů nebo využít terminálu. Dále lze propojit SSC-32 pomocí TTL sériové komunikace s další řídicí jednotkou (třeba Arduinem) a postavit například pojízdného robota s manipulátorem. S trochou nadsázky se dá říci, že možnosti jsou téměř neomezené a nic nebrání dalším experimentům.

Oživení

Ještě než budeme mít možnost vyzkoušet, zda vše funguje tak jak má, musíme vyřešit drobný problém. Tím je napájení, protože síťový adaptér přiložený ve stavebnici je určen pro USA a do evropské zásuvky prostě pasovat nebude. Naštěstí zvládá i vstupní napětí 230V, takže pro jeho použití u nás si vystačíme s levnou mechanickou redukcí.

Dále stačí pouze pokračovat podle návodů na internetových stránkách výrobce, nainstalovat potřebný software na PC a připojit k němu řídicí jednotku sériovým kabelem (případně použít redukci na USB). Pro používání softwaru RIOS (Robotic Arm Interactive Operating System) plně postačí i starší počítač nebo notebook, sériový port je samozřejmě výhodou, protože odpadá kupování redukce.

Důležitým krokem, který nelze podcenit je kalibrace a nastavení RIOS. Program potřebuje vědět, kterou verzi manipulátoru používáme a zároveň musíme podle doporučení výrobce nastavit krajní polohy serv. Během kalibrace vás pravděpodobně zaskočí, když se v instrukcích dočtete, že v krajní poloze se předloktí má lehce dotýkat dílu "hex spacer" (šestihranný distanční sloupek). Nějakou dobu ho asi budete zmateně hledat, ale chyba není na vaší straně. Distanční sloupky tvořily část konstrukce starších typů manipulátorů, ale u AL5D už slouží pouze k uchycení SSC-32 a je tedy mechanicky nemožné, aby se jich předloktí vůbec dotklo.

Software RIOS

K softwaru výrobce nabízí přibližně 30 ti stránkový barevný manuál v PDF, já tedy nebudu zabíhat do detailů a spíše shrnu, co vlastně manipulátor v kombinaci s RIOS umí. K ovládání pohybu manipulátoru slouží tlačítka, která lze obsluhovat pouze myší, což je podle mého názoru škoda, protože při troše cviku by bylo ovládání z klávesnice určitě pohodlnější, než klikání myší. Nicméně tlačítka slouží především k nastavení požadované polohy manipulátoru, kterou pak uložíte jako krok do sekvence. Výsledná sekvence (například přemístění předmětu) se samozřejmě skládá z více kroků. Několik sekvencí pak můžete seskupit do projektu a pojmenovat. Při vytváření jednotlivých kroků máte k dispozici poměrně dost informací, které se neustále zobrazují v okně programu. Například polohy jednotlivých serv, souřadnice XYZ čelistí, stav vstupů a také obrázek zjednodušeného modelu manipulátoru, který mění svou polohu stejně jako ten skutečný.

K dispozici máte tři druhy pohybů, podle toho, který zvolíte, se také změní ovládací panel:

  • X, Y, Z – v tomto režimu se manipulátor pohybuje po přímých liniích v souřadnicovém systému. Vaše kliknutí na tlačítko, například pro pohyb vzhůru, program přepočítá a upraví polohu příslušných serv tak, aby se čelisti manipulátoru posunuly o něco výš, ale zároveň neměnily svoji souřadnici X a Z, ani orientaci vůči vodorovnému směru. (za předpokladu, že pro pohyb nahoru/dolů uvažujeme souřadnici Y). Toto je samozřejmě velice užitečné, protože při úplném manuálním ovládání by se vám těžko dařilo sladit pohyb například tří serv najednou, abyste dosáhli podobného výsledku.
  • Vzdálenost, Y, úhel základny – opět za vás program vypočítá polohy jednotlivých serv, pokud chcete čelistmi pohybovat směrem od základny nebo k ní, případně nahoru a dolů. Stačí podržení šipky nahoru, aby se čelisti přesunuly výš, aniž by došlo k ovlivnění jejich vzdálenosti od základny. Naopak při úpravě vzdálenosti od základny se nezmění výška čelistí. Samotná rotace základny je řízena manuálně, takže při jejím použití se čelisti pohybují po oblouku.
  • Kloub – jak už sám název napovídá, tento režim umožňuje ovládat manuálně každý kloub, respektive servo zvlášť. Hodí se zejména pro finální upravení nějaké komplikovanější polohy, drobné korekce a podobně.

Otevírání čelistí a rotace zápěstí je pochopitelně vždy nezávislá a funguje ve všech třech režimech stejně. V případě, že vlastníte herní konzoli Playstation (výrobce zmiňuje dnes už poněkud starší verzi 2), lze její ovladač s USB adaptérem použít k řízení manipulátoru. Já jsem tuto funkci vyzkoušel s USB gamepadem Logitech Dual Action, který je vzhledově téměř totožný. Jednotlivým ovládacím prvkům lze v RIOS přiřadit různé funkce, jednak pohyby manipulátoru a pak také například přidání nového kroku do sekvence, jeho přepsání, mazání a podobně. Po troše nastavování se mi podařilo dosáhnout slušných výsledků a musím uznat, že tento způsob ovládání je velmi pohodlný a intuitivní.

Vykonání naprogramovaných kroků lze ovlivnit pomocí podmínek (IF-Else), například můžeme určit, že daný krok bude vykonán, až hodnota vstupu 1 dosáhne 150 a podobně. Hodit se můžou také cykly (For, While), kterými dosáhneme požadovaného počtu opakování sekvencí. Samozřejmostí je vkládání pauz mezi kroky. Kromě manipulátoru lze softwarem ovládat další dvě serva připojené na piny 6 a 7. Piny 8 až 15 jsou pak k dispozici jako digitální výstupy.

Pokud už jste zvládli naprogramovat nějakou sekvenci pohybů nebo rovnou celý projekt, k jeho přehrání slouží Play modul. Přehrávat lze s připojeným manipulátorem i bez něj, v tom případě vidíte pouze pohyb modelu na monitoru. I v Play modulu máte k dispozici veškeré informace, stavy vstupů, výstupů, dokonce i křivky průběhu pohybu jednotlivých serv.

Možnosti vylepšení

Jak jsem již psal výše, analogové vstupy SSC-32 můžeme využít k připojení senzorů a manipulátor tak trochu vylepšit. Nabízí se například senzor síly, který namontujeme do čelistí. Díky tomu je budeme moct zavírat "s citem" a rozeznat, zda skutečně svírají předmět nebo ne. Atraktivně vypadá také takzvaný 3D scan, v tomto režimu manipulátor prozkoumá své okolí pomocí IR senzoru Sharp GP2D12 . Bohužel na výsledném obrázku ve stupních šedi (které odpovídají naměřené vzdálenosti) a v maximálním rozlišení 256 x 256 pixelů toho moc nepoznáte. Toto byly ale jen příklady, které uvádí sám výrobce, jinak může se všemi čtyřmi vstupy naložit každý podle svého uvážení a fantazii se meze nekladou. Nesmíme zapomenout ani na to, že software RIOS umožňuje kromě manipulátoru ovládat další dvě serva, která pak můžeme libovolně využít. Co se týká komunikace s PC, vyzkoušel jsem místo trochu otravného sériového kabelu bluetooth modul OEMSPA 310 a funguje bez problémů. Potřebné nastavení modulu je baudrate 115200, 8 datových bitů, 1 stop bit, bez parity. Zapojení podle následujícího schématu:

Modrá indikační led pochopitelně není pro samotnou funkci nutná, ale rozhodně se hodí. 5V a zem propojíme s piny + a - na SSC-32, které slouží k napájení senzorů. Na obrázku, který jsem přejal z návodu jsou označeny číslem 10, piny RX a TX pak číslem 14. Je nutné použít ty horní, vedle kterých se nachází i GND pin.

Hodnocení

Celou stavebnici nelze zhodnotit jinak, než jednoznačně kladně. Mechanické zpracování je výborné, stavba bezproblémová a softwarové vybavení má pouze drobné mouchy. Jak už jsem zmínil výše, zamrzí absence ovládání z klávesnice (ne vždy je po ruce gamepad) a osobně mi chyběla i možnost zadat manipulátoru přímo číselně souřadnice, na které by se čelisti přemístily. Minusový bod bych udělil i za sériový konektor na SSC-32. Ten u dnešních počítačů rozhodně nepatří mezi obvyklou výbavu a redukce, kterou musíte zvlášť zakoupit, není to pravé ořechové. Připojení rovnou pomocí USB by servokontroléru slušelo určitě více. Jinak ale mohu stavebnici s čistým svědomím doporučit všem, které robotické manipulátory lákají.

- Stránka vytvořena 4. dubna 2011 -
- Článek vyšel v časopisu Robot Revue 1/2011 (upraveno) -