Metodické pokyny k materiálu č. 39 Mobilní robot III - Závodní auto - Dálkové ovládání 1 (PROGRAM 1) Třída: 8. Učivo: Praktický rozbor programu robota Obsah inovativní výuky: Prostřednictvím tohoto materiálu učitel se žáky rozebere program, který v minulé hodině žáci nahráli do robota. Žáci si minule vyzkoušeli, co robot umí a jak se chová a nyní se postupně dozví, jak tento program, který robota ovládá, vlastně vypadá. Doporučený čas: 30 minut Seznam pokynů k tomuto materiálu: Přestože se žáci se softwarem LEGO Mindstorms NXT 2.0 již seznámili, je při této hodině nutný výklad a vedení vyučujícím. Zdatnější žáky, kteří projeví určité znalosti s programováním, můžeme nechat představit jejich analýzu programu a představu o tom, jak program funguje a případně je následně korigovat ke skutečnosti. Pomůcky: PC (notebook) s nainstalovaným LEGO Mindstorms NXT 2.0 a nahraným softwarem pro ovládání robota 5ButtonSteer; projektor či interaktivní tabule pro vyučujícího pro lepší názornost a vedení žáků Seznam zdrojů k tématu: http://www.nxtprograms.com/nxt2/race_car
MOBILNÍ ROBOT III ZÁVODNÍ AUTO DÁLKOVÉ OVLÁDÁNÍ 1 (PRG1) Nyní se podíváme na ovládací program 5ButtonSteer našeho třetího mobilního robota - závodního auta. Tento program je určen pro NXT jednotku auta, aby dokázalo reagovat na první variantu dálkového ovládání a přijímat jeho povely. Podle následujícího obrázku si představíme ovládací program: (Návod a program je použit ze stránek nxtprograms.com ze sekce Free Project Instructions pro LEGO Mindstorms NXT 2.0) Program opět v několika částech zkoumá příchozí Bluetooth zprávy, které následně zpracovává a podle jejich pokynů ovládá autíčko. Na začátku nastaví výchozí hodnoty pro proměnné Power (80), TargetSteer (0 jízda rovně) a Reverse (False nepravda jízda dopředu). Pak již začíná nekonečná smyčka, která zajišťuje neustálý příjem došlých Bluetooth informací z dálkového ovládání a zajišťuje k nim patřičnou akci. V první části smyčky se zjišťují došlé Bluetooth zprávy ze schránky 2, která má hodnotu čísla a určuje, zda bylo stisknuto nějaké tlačítko na jednotce NXT na dálkovém ovladači. 1 (Šipka vlevo): Odečtěte 20 od výkonu motoru pohonu tak, aby ponechal minimální hodnotu na 20, pokud se hodnota dostane na méně než 20. 2 (Enter): Přepínání reverzního chodu. Je-li "Reverse" pravda, nastaví hodnotu na nepravda a vymaže reverzní indikátor na displeji. V opačném případě, je-li "Reverse" nepravda, nastaví hodnotu na pravda a zobrazí "Reverse" na displeji.
3 (Šipka doprava): Přičte 20 k výkonu motoru pohonu tak, aby ponechal maximální hodnotu na 100, pokud se hodnota dostane na více než 100. V další části programu se dle došlé Bluetooth zprávy (čísla) do schránky 1 zjišťuje, v jakém stavu se nacházely dva dotykové senzory dálkového ovládání, které určují, zda má auto jet rovně, zatočit, popř. zastavit. Čtyři možné kombinace stisknutí senzorů jsou očíslovány takto: 0 (Nic není stlačeno): Proměnná "TargetSteer" se nastaví na 0 (rovně) a motory pohonu se zastaví. 1 (Pouze levé tlačítko): Proměnná "TargetSteer" se nastaví na -75 (naplno doleva), hodnotu "Power" použije motor C a "Power" / 2 (polovinu výkonu) použije motor B (rozdílná síla pohonu zadních kol napomáhá řízení)
2 (Pouze pravé tlačítko): Proměnná "TargetSteer" se nastaví na 75 (naplno doprava), hodnotu "Power" použije motor B a "Power" / 2 (polovinu výkonu) použije motor C (rozdílná síla pohonu zadních kol napomáhá řízení) 3 (Stisknuta oba současně): Do proměnné "TargetSteer" se nastaví 0 (přímá jízda) a s nastavenou hodnotou výkonu do obou motorů pohonu jede auto rovně. V závěrečné části nekonečné smyčky je na display zobrazena aktuální hodnota požadovaného výkonu motorů pohonu a dle proměnné TargetSteer je natočen motor řízení do požadovaného úhlu. Jak již bylo zmíněno výše, program jako celek je vlastně nekonečná smyčka, která zajišťuje neustálé testování stavu senzorů a zjišťování případného stisknutí tlačítek na jednotce NXT dálkového ovládání, resp. zpracovávání došlých Bluetooth zpráv s příznaky těchto stavů senzorů a tlačítek. Celý program i s popisky je vyobrazen na obrázku dále. Projděte si jednotlivé povely programu v uživatelském rozhraní NXT Minstroms tak, abyste pochopili jejich účel a logiku programu.