ZÁPADOČESKÁ UNIVERZITA V PLZNI FAKULTA PEDAGOGICKÁ KATEDRA TECHNICKÉ VÝCHOVY Beetle line Seminární práce z předmětu Principy a systémy techniky Zpracovaly: Bc. Petra Konjatová 12/2010 Bc. Michaela Němcová
Úvod Cílem této práce bylo sestavit, naprogramovat a odzkoušet autíčko se dvěma senzory. Tyto senzory autíčko používá pro jízdu po černé čáře. Autíčko jsme nazvaly Beetle line. K jeho sestavení nám posloužila stavebnice Lego Mindstrom. Programování bylo provedeno v programu ROBOLAB. Popis stavebnice RCX (Robotic Command explorer) kostka je srdcem a základní stavební kostkou řady Lego Mindstorm. RCX je programovatelná Lego kostka. Jedná se o jednočipový mikropočítač Hitachi uzavřený do pouzdra podobného ostatním Lego kostkám. RCX je mikropočítač schopný samostatně vykonávat zadaný program. Ke své práci nepotřebuje počítač. Počítač s náležitým softwarovým vybavením je nutný pouze k naprogramování daného programu, který je následně do RCX přenesen pomocí infravěže. Paměť k uchování programů a dat je RCX kostka vybavena 32 kb pamětí typu SRAM. Do paměti je možné najednou uložit až pět programů. To je velmi výhodné, pokud si u jednoho modelu chcete vyzkoušet chování za různých podmínek. Datalog je oblast paměti, do které může RCX ukládat libovolná data, třeba údaje odečtené ze senzorů. Vstupní porty šedé čtverce s vodivými vývody na horní části RCX kostky, označené čísli 1 až 3. Slouží k připojení standardních senzorů. Pomocí senzorů připojených k těmto konektorům může RCX získávat informace o okolním světě.
Výstupní porty černé čtverce s vodivými vývody na horní části RCX kostky, označené písmeny A až C. Slouží k připojení elektrických součástek, které pak může RCX ovládat. Jedná se hlavně o motory, lampy, blikače, sirény a mikromotory. Infračervený port tmavé okénko v přední části RCX kostky. Slouží k oboustranné komunikaci s infravěží, downloadu firmware a programů, nahrávání dat z datalogu. Protože RCX kostka používá jiný způsob kódování zpráv než je běžné, nejde RCX zmást např. dálkovým ovládáním od televizoru. Velikost vysílacího kuželu IR portu je přibližně 55. Displej a ovládací tlačítka panel LCD slouží k zobrazování informací o tom, co se s RCX děje, pomocí tlačítek můžeme ovládat základní funkce RCX. Po stranách displeje jsou čtyři ovládací tlačítka. Jejich funkce je následující: On Off: Zapíná a vypíná RCX. Pokud RCX zapomenete vypnout, vypne se po čase samo. Run: Spouští a zastavuje vybraný program. Číslo vybraného programu se na displeji zobrazuje spolu s panáčkem. Běžící panáček ukazuje, že program právě probíhá. Prgm: Pomocí tohoto tlačítka vybíráte číslo programového slotu. Opakovaným stiskem přepínáte sloty v cyklu 1 2 3-4 5 1... Číslo aktuálního programu se zobrazí na displeji. RCX disponuje pěti programovými sloty na uschovávání programů. View: Umožňuje zobrazit na displeji různé informace. Postupnými stisky přepínáme mezi zobrazením stavu vstupu 1 až 3, výstupu A až C a systémovým časem. Napájení: K napájení RCX slouží jako interní zdroj 6 tužkových (AA) baterií, které jsou umístěny ve spodní části RCX. Další možností napájení je použití externího 9V síťového adaptéru přes konektor umístěný v zadní části RCX. Senzory RCX může využívat několik druhů senzorů. Můžete využít vnější čidla senzory. Do základní výbavy stavebnice patří světelný, dotykový a rotační senzor.
Dotykový senzor digitální čidlo se dvěma stavy RUE stlačené, FALSE nestlačené. Teplotní senzor měří teplotu okolního prostředí. Výstup je možné získat buď ve stupních Celsia, nebo Fahrenheita. Měří hodnoty v rozsahu od -20 C do 50 C a citlivostí 0,2 C. Polohový senzor rotační senzor je velmi užitečnou pomůckou při stavbě složitějších a propracovanějších projektů. Na připojené osičce umožňuje měřit úhly otáčení v krocích po 22,5 (16 kroků na 1 otáčku). Světelný senzor má dva druhy použití. Dokáže snímat intenzitu světla a tak pomáhat robotu např. schovávat se v temném koutě, nebo díky vestavěné LED diodě, můžete osvětlovat plochu a snímat intenzitu odraženého světla. To je ideální pro řízení robotu podél tmavé čáry namalované na světlém papíře. Senzor také v omezené míře umožňuje rozpoznávání barev. Citlivý je v rozmezí 0,6 až 760 luxů. Infravěž slouží ke komunikaci vašeho PC s RCX. Pomocí věže se do RCX zasílá program, firmware a z RCX zpět do počítače data. Při komunikaci RCX s počítačem by mělo RCX být umístěno asi 10 15 cm od věže a to v přímé viditelnosti. Při velkém množství slunečního světla v místnosti bývají s komunikací potíže.
Práce se stavebnicí Kromě RCX kostky a senzorů obsahuje stavebnice díly, které jsou zcela běžně používané v ostatních stavebnicích typu Technic. Je zde tedy zajištěna plná kompatibilita s jinými typy stavebnic LEGO. Rozhodly jsme se pro sestavení autíčka, které by se pomocí dvojích senzorů drželo dráhy ve tvaru černé čáry nakreslené na světlém podkladě. Postup sestavení autíčka je vyobrazen na následujících fotografiích: Základní rám (je zde dobře viditelné, kam budou umístěna kola autíčka).
Přidání motoru (uprostřed rámu). Připojení kol a umístění RCX kostky.
Sestavené autíčko (zatím jen s jedním senzorem) čelní a boční pohled.
Konečný model Beetle line (na přední části jsou umístěny dva senzory pro sledování okraje černé čáry představující dráhu jízdy). Pohled shora.
Pohled zdola. Detail převodu umožňujícího pohyb kol jízdu Beetle line.
Jízda Beetle line po vytyčené trase (vpředu jsou vidět aktivní senzory). Celkový pohled na Beetle line jedoucím po trase.
Programování autíčka K programování našeho autíčka jsme zvolily program ROBOLAB. Vývojové prostředí je velmi jednoduché a je založeno na principu drag-and-drop ( táhni a pusť). Pomocí tohoto principu jsou přesouvány bloky z Functions Palette na programovací plochu programu, který lze dále upravovat pomocí Tools Pallete. Každý blok má unikátní funkci jako pohyb motorů, rozpoznání světla, teploty nebo třeba zvukové efekty. Různými kombinacemi bloků se vytváří programy, které se potom nahrají přes USB kabel do Infravěže, a přes ni dále do autíčka. Programovací bloky Jak už bylo zmíněno, program se vytváří pomocí programových bloků. Seznámíme Vás nyní s těmi nejzákladnějšími. Motor Forward - blok uvede motory do pohybu vpřed Play Sound -blok umožňuje přehrát zvuk podmínka Wait For blok umožňuje čekat určitou dobu či dokud není splněna nějaká Vytvoření programu podle daného úkolu První blok na obrázku má za úkol spustit celou kaskádu příkazů. Po tomto bloku dochází k paralelnímu větvení programu. podmínek. Program se rozčlení na dvě větve a každá se vykonává za splnění určitých Tyto symboly šipek označují, kam se má daná část programu vrátit, pokud narazí na konec, jenž je označený těmito symboly.
Úkolem tohoto bloku je spustit větvení programu za splnění dané podmínky. Podmínkou je Light is > nebo Light is <=. Tyto symboly označují motor 1 a 3 a jsou připojeny k nějakému bloku. Symbol označení numerické konstanty, jež se také připojuje k nějakému bloku. V našem případě vypadá spojení těchto tří symbolů takto. Podmínka se vykoná na motoru 1 za světelné konstanty 45. Autíčko může jet i rozdílnou rychlostí. Bloky označující motor A a C. Podle směru šipek určíme, zda se motory točí vpravo či vlevo. Dochází ke spojení větvení světelné podmínky. A tento blok označuje konec programu.
Skutečný náhled programu V našem programu předpokládáme, že uživatel je natolik znalý, že autíčko položí tak, aby se černá čára nacházela uprostřed senzorů. Program by se dal také naprogramovat tak, aby autíčko poté, co narazí na černou čáru samo rozpoznalo, kam má po ní jet. A to už bychom se dostaly do dalšího složitého větvení. Závěr Při této práci jsme se seznámily se stavebnicí Mindstorm. Naučily jsme se základní programování v prostředí ROBOLAB. Naše autíčko jsme sestavily tak, aby umělo vyřešit zadaný problém. A pojmenovaly ho Beetle Line. Model jsme sestavily, naprogramovaly a vyzkoušely. Autíčko úspěšně vyřešilo zadaný úkol a splnilo všechny zadané cíle, celý projekt považujeme tedy za úspěšný. Použité zdroje 1. internet [online]. 28. základní škola Plzeň: [cit. 2010-12-15]. Historie LEGA.
Dostupné z WWW: <www.zs28plzen.cz/download.aspx?dontparse=true&fileid=618>.