Mindstorms NXT

A moje první zkušenosti s ním - napsáno v létě 2006
Pro aktuální informace navštivte stránku Novinky

Nový systém LEGA Mindstorms umožňující stavět a programovat roboty postavené z LEGO kostek, nahrazuje starší Robotics Invention System, od kterého se provedením velmi liší (viz obrázek srovnávající řídicí jednotky).

Nabízí spoustu nových funkcí a obsahuje úplně nové druhy senzorů - zvukový a ultrazvukový, naopak postrádá teplotní senzor (neprodává se ani jako příslušenství, jako tomu bylo u starého systému) a nenajdete v něm ani samostatný senzor otáček, ten ale není třeba, protože každý ze tří servomotorů ho má už zabudovaný a umožňuje tak přesnější řízení robota.

Také způsob komunikace s PC je odlišný, na rozdíl od starého systému, který používal ke komunikaci IR věž, umožňuje NXT využití technologie Bluetooth nebo kabelu s konektorem USB, který je součástí stavebnice. Spojení přes Bluetooth mám odzkoušené s USB Bluetooth adaptérem firmy Trust a funguje bez problémů.

Řídicí jednotka

Na obrázku je pro srovnání vlevo stará řídicí jednotka RCX a vpravo nová NXT. NXT je o něco větší, s grafickým displejem, který dokáže zobrazovat nejen text, ale i jednoduché obrázky. Bohužel konstruktéři poněkud zapomněli na podsvícení, které by se celkem hodilo, protože v horších světelných podmínkách na něm těžko něco uvidíte.

RCX + NXT.jpg (355100 bytes) NXT displej.jpg (485233 bytes)

Oproti RCX disponuje NXT menu s ikonami a popisky (samozřejmě v angličtině), kterým listujete pomocí tlačítek podobně jako na mobilním telefonu. Ovládá se snadno, jeho kompletní strukturu najdete v návodu, ale základní položky uvádím v následujícím seznamu:

  •  My Files: Správce souborů uložených v paměti, odtud se spouštějí a mažou programy, nebo zvuky atd.
  •  NXT Program: Slouží k vytváření jednoduchých programů přímo na NXT bez použití PC. Maximální velikost je pět příkazů, z toho poslední je vždy STOP nebo LOOP (smyčka - předchozí příkazy se budou stále opakovat)
  •  View: Zobrazení hodnot senzorů na displeji.
  •  Bluetooth: Komunikace pomocí Bluetooth.
  •  Settings: Nastavení hlasitosti, doby po které se NXT automaticky vypne, pokud je nečinný a možnost smazání všech souborů v paměti.
  •  Try Me: Vyzkoušení motorů a senzorů zábavnou cestou.

Zabudovaný reproduktor vám přehraje krátké zvuky nebo anglická slova (např: Hello,Goodmorning atd.), je jich na výběr asi sto, ale naráz se do malé paměti rozhodně nevejdou, nahrají se tam vždy společně s programem, který je používá. Pokud už nejsou potřeba, je dobré je smazat, jinak rychle paměť zaplní. Podobně to vypadá s obrázky, rovněž si můžete vybrat z velkého množství, ale nejsou už tolik náročné na místo v paměti.

Kabely a konektory pro připojení servomotorů a senzorů jsou trochu podobné telefonním, najdete je na boku řídicí jednotky. Na prvním obrázku, na pravé straně je vidět konektor Mini USB pro připojení k PC.

NXT bok 1.jpg (335487 bytes) NXT bok 2.jpg (342104 bytes)

K napájení potřebujete šest tužkových baterií typu AA, ale určitě se vyplatí použít akumulátory. Další možnost nabízí použití Rechargeable Battery Set, ten obsahuje lithiovou baterii o kapacitě 1400 mAh, která má konektor pro připojení síťového adaptéru. Nabíjení trvá 4 hodiny a je indikováno červenou LED diodou. Jakmile je baterie nabita, rozsvítí se zelená dioda.

Další základní prvky

  •  Zvukový senzor - Intenzitu okolního zvuku zobrazuje NXT v procentech. Pracuje ve dvou režimech, jeden reaguje pouze na zvuky slyšitelné lidským uchem a druhý na veškeré zvuky, i ty které člověk nemůže slyšet.
  •  Světelný senzor - Intenzitu světla dopadajícího na senzor zobrazuje NXT v procentech. Pracuje rovněž ve dvou režimech. V prvním pouze pasivně měří intenzitu světla v okolí a ve druhém se rozsvítí červená dioda, takže můžete podle množství odraženého světla rozpoznat například různé barvy.
  •  Dotykový senzor - V podstatě se jedná o tlačítko a NXT zobrazuje vždy buď hodnotu 0, pokud není stisknuté, nebo 1, pokud jej stisknete.
  •  Ultrazvukový senzor - Pomocí ultrazvuku určuje vzdálenost od nějaké překážky. Výsledek si můžete na NXT prohlédnout buď v palcích nebo centimetrech. Podle údajů z návodu a oficiálních stránek funguje na vzdálenost 0 až 255 centimetrů s přesností na +/- 3 centimetry. Já jsem přesnost zkoušel na vzdálenost od 0 do 140 cm pomocí testovací podložky, metru a krabice o velikosti 40 x 25 cm. Od 30 do 140 cm pracoval senzor většinou přesně, odchylka byla nanejvýš 1 cm a to jen velmi zřídka, pod 30 cm se přesnost snižovala a pod 20 cm ukazoval vždy asi o 3 nebo 4 cm více.
  •  Tři servomotory - Každý z těchto motorů má zabudovaný senzor otáček, což umožňuje velmi přesné řízení. Na výběr jsou buď otáčky (tedy vždy po 360 stupních) nebo jednotlivé stupně.

Na senzorech i motorech mi docela vadí, že jejich provedení výrazně snižuje univerzálnost celého sytému, protože možnosti jejich upevnění jsou značně omezené. U senzorů jsou to například pouze tři díry a to je vše, navíc by klidně mohly být menší, oproti senzorům z Robotics Invention system je třeba dotykový značně "nafouknutý" a plní úplně stejnou funkci. První obrázek zachycuje všechny čtyři senzory obsažené ve stavebnici, ve předu ultrazvukový a vzadu zprava: zvukový, světelný a dotykový. Na druhém obrázku pak vidíte servomotor.

NXT senzory.jpg (322586 bytes) NXT motor.jpg (318575 bytes)

Software pro PC

Způsob vytváření programů se příliš neliší od předchozí verze. Provádí se pouze přetažením příkazu z nabídky do pracovní oblasti a nastavením parametrů v nabídce, která se objeví vlevo dole po označení příkazu (druhý obrázek). Provedení a struktury příkazů jsou samozřejmě jiné, ale s pomocí trochy trpělivosti a příručky, kde je vše detailně vysvětleno, by ho měly zvládnout i děti od 10 let. Nutná je znalost angličtiny, ale časem bude určitě ke stažení na internetu čeština. Bohužel se mi software občas zdá poněkud pomalý, což je nejspíš daň za grafické zpracování plné obrázků a animací.

Program.jpg (316789 bytes) Program2.jpg (371598 bytes)

Software pro mobilní telefon

Java aplikace pro ovládání robotů pomocí mobilního telefonu se dá zdarma stáhnout zde. Bohužel ji zatím podporuje jen omezené množství typů mobilních telefonů. Vyzkoušenou ji nemám, protože na mém nefunguje, ale existuje jednoduchá náhrada. Ta s mojí Nokií 6233 funguje výborně, po stisknutí klávesy odešle zprávu přes Bluetooth, jak na ni bude NXT reagovat si může nastavit každý sám úpravou programu, který uloží do NXT.

Můj první pokus

Použil jsem základní část robota, postaveného podle návodu ve stavebnici a umístil na něj všechny senzory, abych je mohl vyzkoušet. Třetí motor je sice zabudován, protože tvoří součást podvozku, ale neovládá žádnou funkci. Na plný výkon motorů jezdí poměrně rychle a díky ultrazvukovému senzoru se celkem spolehlivě dokáže vyhýbat překážkám. Problém nastane tehdy, je li překážka moc nízká, úzká nebo se k ní blíží ve špatném úhlu, takže ji senzor nezaregistruje. Občas se mi robot převrátil poté co začal couvat, když narazil na nějakou překážku a za ním byla další, té se samozřejmě během couvání vyhnou neumí, tento problém by se dal ale vyřešit třeba otáčením senzoru dozadu během couvání.

Prvni pokus 1.jpg (479412 bytes) Prvni pokus 2.jpg (769658 bytes)

Alpha Rex

Tohoto bezpochyby zajímavě vyhlížejícího robota jsem postavil podle návodu, který je součástí softwaru pro PC. Na výběr zde máte čtyři roboty: robota pro manipulaci s míčky, které stavebnice obsahuje, štíra, robotickou ruku a Alpha Rexe, seřazeni jsou podle náročnosti. Alpha Rex patří tedy do poslední kategorie - té nejnáročnější. Těmi jednoduššími roboty jsem se prozatím nezabýval, protože mě ničím nezaujaly. Stavba není nijak záludná, snad jen s umístěním kabelů je třeba si trochu vyhrát, aby se někam nezamotaly, což by při chůzi dost vadilo.

Program který umožňuje chůzi je docela jednoduchý, podstatné je porozumět mechanizmu nohou, levý motor (při pohledu ze zadu) zajišťuje přenášení váhy a pravý posun nohou. V praxi tedy spouštíme střídavě pravý a levý motor vždy po určitém počtu stupňů. Mi to nejlépe vycházelo po 540 stupních. Nemůžeme očekávat plynulý sprint, protože chůze je pomalá a občas trochu groteskní, takže do C - 3PO z hvězdných válek má robot opravdu daleko, ale chodí.

Alpha rex 1.jpg (460305 bytes) Alpha rex 3.jpg (475252 bytes) Alpha rex 4.jpg (481133 bytes)

Video (AVI 3,8 MB)

Závěr

Alpha Rex je asi nejzajímavější robot, co vám stavebnice s návodem pomůže postavit, při použití složitějších programů může být tento humanoid velmi efektní atrakce, co postavíte dále, už bude záležet jen na vás. Stavebnice nabízí spoustu možností, jak se vyřádit, díky reproduktoru může robot pozdravit, díky senzorům reagovat na okolí a pomocí displeje i něco sdělit. To a ještě více vám umožní nový Mindstorms NXT, i přes své chyby a slabiny se jedná určitě o velmi zajímavou hračku, s kterou si vyhrají nejen děti, ale nejspíše i jejich tatínkové.

Celý tento text je pouze mým subjektivním dojmem a názorem na produkt společnosti LEGO, oficiální informace a popis najdete na jejich webových stránkách.

Josef Navrátil