Stiskněte "Enter" pro přeskočení obsahu

Arduino na ZŠ

V letošním školním roce jsem vyučovala předmět Robotika v 9. ročníku. Jelikož už moji žáci za sebou měli programování ve Scratchi, konstruování a programování Lego MINDSTORMS, práci s Ozoboty a micro:bity, tak jsem si řekla, že půjdeme trošku jiným směrem a zkusíme, co dokážeme s Arduinem.

Nejprve jsme se věnovali elektrickým obvodům, jeho součástem, podmínkám, kdy v elektrickém obvodu prochází elektrický proud, schematickým značkám atd. To vše bylo pro děti opakování z fyziky. Pak jsme se pustili do praktické části – do zapojování obvodů v nepájivém poli (v angličtině breadboard). Nepájivé pole je super vynález, díky kterému můžete poměrně snadno propojovat elektrické obvody. Pokud bude potřeba něco v elektrickém obvodu změnit, tak to nebude problém, protože u tohoto systému nepájíte a změnu můžete provést poměrně rychle. Neznamená to ale, že byste si neměli dávat pozor, jak co zapojujete. Nevhodně zvolený rezistor nebo opačná polarita napájení mohou vést k odpálení součástky. Nebudu Vám nic zastírat, moje velmi šikovná žákyně Kačka toho odpálila dost. Nevadí, z chyb se člověk učí. I tady je chyba výborná, pokud máte dost náhradních komponent.

Než jsme se ale dostali k Arduinu a jeho programování, zapojovali jsme jednoduché obvody s LEDkami a tlačítky. I tady jsme měli možnost vrátit se k něčemu, co už děti znaly – sériové a paralelní zapojení a jejich využití v praxi. 

Poté už jsme se začali věnovat programování samotného Arduina. Zvolila jsem Arduino Nano a moji žáci pracovali ve dvojicích. Než jsme se dostali k něčemu pořádnému, chvíli to trvalo. Na začátku je třeba žákům vysvětlit, co vše musí nastavit a také vysvětlit dvě stěžejní části kódu. Na obrázku nejprve najdeme funkci void setup. Mezi složené závorky zapíšeme to, co se děje jen jednou na začátku programu. Druhou funkcí void loop zapisujeme kód, který se bude opakovat stále dokola. Ukážeme si to na příkladu. Máme zapojenou jednu LED na digitálním pinu s číslem 12. Ve funkci void setup definujeme LED jako výstup a ve funkci void loop nastavujeme blikání LED, respektive 1000 milisekund LED svítí, 1000 milisekund LED nesvítí.

Na tomto základu jsme si postavili několik dalších úloh. V každém případě vnímám velikou propast mezi blokovým programováním (např. Scratch) a programováním v textu (např. Arduino). Zde je třeba, aby žáci byli pečliví a nedělali chyby, respektive chyby dělat mohou, ale je třeba s chybou pracovat. Svým způsobem je práce s textem učí pořádku a pečlivosti. Úkol výše se dá rozšířit na zapojení dvou, tří, čtyř, … LED. Po vyzkoušení samotné žáky napadají otázky jako např. Budou blikat postupně? Budou rozsvícené ve stejný čas?… Ale já to chci jinak, musím program změnit. Jak? Kde? 

Často mě překvapovaly reakce mých žáků, např. výsledek jednoho chlapeckého týmu, který bazíroval na tom, aby se barvy jednotlivých diod shodovaly s barvami vodiče. Jiné týmy mezi sebou soupeřily, který z nich jich dokáže zapojit více. Dívčí tým trumfl chlapecký tým o jednu LED. Chlapci nevěřili svým očím, ale děvčata jim s úsměvem vysvětlila, že jeden digitální pin najdou i na druhé straně Arduina. 

Na výsledky práce mých žáků se můžete podívat na videu.

Autor: Martina Kupilíková