Ve dnech od 28. července do 5. srpna se uskutečnil letní tábor s názvem Léto na Maliné 2014 a pořádá jej Dům dětí a mládeže Vyškov. Skládá z několika oddílů, z nichž jeden je zaměřený na počítače. Tento rok nás napadlo obohatit program oddílu o novinku, a to o programovaní robotů.
Nápad vznikl po návštěvě soutěže robotů v kongresovém centru v Praze, kde jsme získali kontakt na společnost hobbyrobot.cz. Hobbyrobot byl tak laskav a dva robůtky na sledování čáry nám zapůjčil.
Výuka programování na táboře musela být zjednodušena a zrychlena, abychom dosáhli vytyčeného cíle. Tím byla soutěž robotů v jízdě po čáře na čas v závěru tábora. Děti všech věkových skupin od 7 do 17 let absolvovaly krátkou přednášku o tom, co robota řídí. Dozvěděly se také, že nejen robot, ale i další věci v jejich každodenním životě, jsou ovládány velmi podobně, právě tak, jako se budou učit ovládat robota. To a hlavně ukázka činnosti robota u dětí vzbudilo zájem o soutěž. Vytvořily se 4 týmy o jednom až třech členech. Těmto týmům jsme se individuálně věnovali. Bohužel v takto krátkém čase se základy programovaní omezily na pouhé minimum ke zvládnutí soutěže. Děti se o prázdninách chtějí bavit, proto jsme je nemohli trápit s teorií programování. Snažili jsme se s dětmi projít základy, jako jsou podmínky a cykly. Děti se nejprve učili jezdit s robotem rovně. Potom zkoušeli různě velké oblouky a nakonec z podprogramů vytvořenou cestu robota. Docela mě překvapilo, že po pochopení příkazu pro otáčení serva, se všem týmům dařilo robota slušně uřídit. Ze začátku bylo zábavné sledovat první programy robotů, kdy děti zkoušely, co vlastně různé hodnoty serv s roboty udělají. Před sledováním čáry jsme zkoušeli s roboty objíždět různě velké kolečka. Pak roboti dostali pevně naprogramovanou trasu. Základy jízdy byly zvládnuty a nastal čas pustit se do práce na snímání dráhy.
Začalo se nejprve se dvěma postraními senzory. V tuto chvíli jsme měli týmy, které zvládly velmi pěkně dráhu objet. Sice rychlost nebyla nic moc, za to jim nechyběla jistá elegance, a tak mě napadlo vytvořit ještě jednu soutěžní kategorii. Zde měli děti neomezený čas projetí dráhy, za to ale musela být jízda co nejpěknější a bez záškubů robota či vyjetí z herní plochy.
Se zrychlováním robotů nastala ve všech týmech krize. Roboti neustále vyjížděli z dráhy a týmy už si nevěděly rady. Přijít na jednoduchou podmínku, která robotovi pomohla čáru najít, chvíli zabralo, ale po té se mohlo zase zrychlovat, případně dokončovat nastavení rychlosti serv. Jeden tým si ještě v závěru do programu přidal rozsvícení LED diod robota.
Nezávisle na programování robotů ještě probíhalo programování Arduina s displejem pro časomíru závodu. Trochu svérázně jsme vyřešili kontakty brány pro spuštění a zastavení časomíry, a to pomocí hliníkově vidličky a svařovacího drátu. Nicméně časomíra byla funkční a relativně spolehlivá.
Nastal závěrečný den a soutěž mohla začít. První byla jízda na rychlost.
Všechny týmy dokázaly trať zajet pod 50 vteřin. Rozdíl mezi prvním a druhým místem byl kolem jedné vteřiny. Jako druhý byl závod elegance. Diváci měli za úkol pozorně sledovat jízdu robota, aby na konci hlasováním určili vítěze. První tři jízdy robotů byly pěkné a rozdíly byly minimální. Čtvrtý tým všechny překvapil, protože ve druhé prudké zatáčce robot úplně vyjel z čáry. Při otočce se dostal na čáru do jiné části trasy. Závod tak elegantně dokončil návratem do místa startu. Publikum z tohoto vývoje bylo nadšeno a tým tuto soutěž vyhrál.
Co dodat na závěr? Děti programování bavilo a bylo to zajímavé zpestření programu nejen pro počítačový oddíl, ale i pro další oddíly v roli diváků.
Děti se naučily, že programování není žádná velká věda (alespoň zpočátku), ale i zábava. Moc bych si přál, aby aspoň některé děti u programování vydržely i přes rok a třeba i zapřemýšleli o svém budoucím zaměření.
Závěrem bych rád poděkoval hobbyrobot.cz za perfektní přístup a velmi dobře zpracované manuály, které mě i dětem při programování hodně pomohly.
===
Poznámka redakce: Roboty Robrouk nejsou poháněny servy, ale stejnosměrnými komutátorovými motory, řízenými samostaným mikroprocesorem a dvojitým H-můstkem TB6612FNG.