V zásadě se používá princip tlačítka a uzavření elektrického obvodu, který jsme využívali už v minulém projektu.
Variant provedení je několik, na obrázku níže vidíte variantu se dvěma samostatnými tlačítky pro hráče A (pin 1, červený kabel) a hráče B (pin 2, žlutý kabel). Oba bíle kabely jsou zapojené do GND a tím uzavírají obvod.
Pokud se obvod uzavře (alobal na horní straně kartonu se dotkne alobalu na dolní straně), microbit ukáže buď A nebo B, v závislosti na tom, který obvod se uzavřel dříve – který hráč tlačítko zmáčknul rychleji.
Použil jsem jednodušší program, než je zmíněn v originálním popisku. V úplně základní variantě si vystačíte i s tímto jednoduchým programem:
Následně žáci přidávali třeba skóre pro hráče A a hráče B nebo náhodný timer, který hru odstartoval po stisknutí tlačítka na microbitu.
Osvědčila se mi postupná gradace obtížnosti a rozlišení krokosvorek různými barvami, aby bylo jasné, který obvod se uzavírá.
Žáci si také mohli různě vyzdobit svoje herní pole a najít co nejlepší UX herní design. Na konci projektu všechny hry rozložíme na lavice a žáci si zkoušejí jak fungují projekty ostatních.
Úkolem žáků je vytvořit pomocí microbita, krokosvorek a papíru nášlapný alarm.
Z hlediska programování se jedná o velmi jednoduchou záležitost, osvědčil se mi tento kód:
Kód znamená: Když se v pinu 0 spojí elektrický obvod, ukaž ikonu srdce a počkej 2 vteřiny, pak vymaž obrazovku. Krokosvorky musí tedy být zapojené do pinu 0 a pinu GND, jakmile se dotknou nebo propojí, program se aktivuje.
K hodině jsme přistupovali badatelsky, žákům jsem napověděl pouze program a dal jim k dispozici papír, lepidlo, alobal, microbit a krokosvorky. Musím dodat, že žáci měli předchozí zkušenost se zapojováním jednoduchého obvodu přes microbit.
Žáci pracovali ve skupinkách po 2 a nakonec všechny skupiny pochopily, že musí alobalem vytvořit otevřený obvod, který se po sešlápnutí uzavře, a tím se aktivuje program v mikrobitu. Každému jsem rozdal plastovou mazací tabulku, která sloužila jako nášlapná deska. Zařízení museli vložit pod tabulku – microbita připojeného krokosvorkami vedle tabulky. Pak jsem šlapali na tabulku a zkoumali reakce microbita. V ideálním případě se dal alarm použít vícekrát.
Příklad zařízení, které se vložilo pod nášlapnou desku:
Osvědčilo se mi na začátku nedávat žádné nápovědy, radost z úspěšného řešení byla o to větší. Aktivita zabrala zhruba 30 minut, na konci jsme si sedli do kruhu a každý představil svoje řešení a popsal problémy se kterými se potýkal.
Pískací kelímek
V druhé části dvouhodinovky dostali žáci kelímek s vyznačenou ryskou a jejich úkolem bylo za pomocí microbita (nutná verze V2), alobalu a krokosvorek poslepu naplnit kelímek přesně po vyznačenou rysku.
Princip je stejný jako v minulém úkolu, žáci museli alobal umístit do úrovně rysky, na alobal připnout krokosvorky a microbita přeprogramovat na vydání zvukového signálu při spojení obvodu. Jakmile voda stoupla do úrovně alobalu – rysky – obvod se uzavřel a microbit zapípal, to byl signál pro zastavení vody. Podobný princip se v praxi používá s nádobami pro nevidomé nebo s nočníky pro malé děti, které po naplnění zahrajou melodii.
Osvědčilo se mi před projektem zadávat co nejmenší množství nápověd, radost z vyřešení úkolu byla o to větší. Při sdílení jsme si zdůrazňovali důležitost nepovedených pokusů a prototypů, bez nich bychom úspěšný produkt těžko vytvořili. Projekt se dá rozšířit o přeposílání signálu rádiem. U alarmu může jeden mikrobit rozpoznat našlápnutí a hned poslat zprávu o nezvaném hostovi do dalších mikrobitů ve skupině.
Pro letošní školní soutěž v angličtině jsem výhercům připravil medaile z 3D tiskárny s umístěním a vlastním jménem. Nově máme 3D tiskárnu na chodbě, děti chodí nadšeně okukovat, co zrovna tiskárna vyrábí. Když viděly, jak se na medaile nanášejí jména vítězů, hned se zajímaly o další soutěže na prvním stupni. Kdo by také nechtěl mít doma medaili z 3d tiskárny!
Naše tiskárna umí tiskout vždy pouze jednou barvou závoveň, efekt rozlišení barev u nás vzniká přes rozdílnou výšku jednotlivých vrstev. Konkrétně žlutý podklad má 3 mm, černý základ vlajky a umístění 4 mm a pruhy vlajky se jménem 5 mm. Na obrázku níže vidíte u šipky jednotlivé vrstvy – s každou vrstvou jsem nastavil změnu barvy – vlastnoručně vyměnil filament.
Jako další krok plánujeme celoškolní designovou soutěž o návrh medaile za čtenářství. (čtenářství sledujeme a podporujeme ve všech třídách prvního stupně).
Žáci budou mít za úkol nějprve mediali načrtnout, poté slepit z barevných čtvrtek a následně vymodelovat v programu TInkerCAD.
Model z barevných čtvrtek bude simulovat rozdílnou výšku vrstev pro 3D tisk, žáci si tak uvědomí, které prvky se budou překrývat a tím vytvoří výsledný barevný efekt. V posledním kroku – modelování v TinkerCAD žáci budou muset dodržet celoškolní limity pro rozměr medaile a i výška jednotlivých vrstev musí být jednotná, abychom mohli tisknout více medailí současně.
Projekt medaile doporučuji jako zajímavý a funkčně orientovaný vstup do 3D modelování a 3D tisku.
V počátečních hodinách s microbitem začínáme s displejem a animacemi. Nejdříve si popovídáme o tom, jak lidské oko vnímá pohyb a jaké jsou způsoby filmového animování. Poté žáci dostanou za úkol vytvořit animaci ze základních příkazů z knihovny “basic”
Pokud chceme zapojit širší kontext, přidáme k samotné animaci třeba krátký příběh nebo popis, odůvodnění zvoleného postupu. Animace může mít také konkrétní zadání – třeba reklamní poutač nebo animace symbolizující varování.
Po zvládnutí animace jsme se vydali hlouběji do světa programování, začali jsme s diskuzí na téma souřadnice – kde se s nimi setkáváme a jaké mají využití. Pak jsme si vysvětlili, že každá dioda microbitu má svoje souřadnicové označení viz následující obrázek.
Ukázali jsme si, jakými příkazy můžeme jednotlivé diody rozsvítit na základě jejich souřadnic, vše naleznete v knihovně “led”
Abychom si procvičili orientaci v souřadnicích microbitu, zahráli jsme si hru námořní bitva (battle ships). Na tabuli jsem nakreslil 3 tvary lodí, které žáci umístili v simulátoru na microbit. Zde je ilustrační obrázek:
Žáci se pak rozdělili do dvojic, a každý navíc dostal malý papírek s hracím polem o velikosti 5×5 čtverečků, na kterém byli označeny souřadnice z Microbitu.
Námořní bitva probíhala následujícím způsobem. Hráči stříleli po lodích soupeře a svoje tahy zaznamenávali do papírku a do makecode simulátoru. Pro zjednodušení byl celé jedno kolo jeden z hráčů útočník a druhý obránce. Útočník střílel na lodě soupeře a svoje střely si zaznamenával do připravené souřadnicové sítě na papíru. Obránce pracoval s počítačem. Měl před sebou rozsvícené svoje lodě na simulátoru microbita a soupeřovy výstřely zaznamenával následujícím způsobem:
Po stisknutí tlačítka A na simulátoru tedy při trefené ráně zhasla část jeho vlastní lodě. Hra skončila když na displeji nebyla viditelná žádná část lodi.
Překvapilo mě, že většina žáků znala hru námořní bitva a rádi si tímto způsobem procvičili souřadnice.
Alternativně by mohl útočník zapisovat souřadnice také do simulátoru, zásah by se mohl zapsat maximálním jasem (brightness) a výstřel mimo naopak nižším jasem, tím by se vytvořil obraz zasažených lodí i výstřelů mimo.
Na projekt potřebujeme: Microbit, pouzdro s bateriemi, nastříhaný karton velikosti přibližně A6, výtvarné potřeby.
Začali jsme tím, že jsme si se třídou (čtvrťáci) pustili známou scénu z Harryho Pottera, ve které moudrý klobouk rozděluje studenty do slavných bradavických kolejí. Odkaz na video: https://www.youtube.com/watch?v=xQZFWA2KDbw
Následně jsem dětem ukázal vlastní moudrý klobouk vytvořený z Microbita. Microbit je zasazený do kartonu a ukazuje obličej moudrého klobouku. Ve chvíli, kdy si dám klobouk na(d) hlavu, zobrazí Microbit nápis jedné z kolejí (v našem případě ukázal jednu ze školních budov).
Děti využití silného kontextu okamžitě vtáhlo do děje a také si chtěly vyzkoušet, kterou budovu jim klobouk ukáže.
Pak přišla výroba vlastního klobouku, nejprve si každý do kartonu vystřihnul otvor na Microbita (používáme ochranný kryt s bateriemi, se kterým lze tímto způsobem manipulovat) a nakreslil vlastní klobouk.
Pak jsem přešli k programování, v tomto případě jsme používali poměrně pokročilé koncepty, nepředpokládal jsem, že děti získají jejich hluboké porozumění, ale museli program přesně vytvořil dle návodu a zjistili, jaké možnosti Microbit nabízí.
Program:
Na základě této aktivity jsem si uvědomil, jak důležitý je kontext, ve kterém Microbit používáme – obecně kontext, ve kterém předáváme dětem znalosti a dovednosti. Bez pomoci moudrého klobouku bych děti těžko motivoval k vytvoření podobného projektu, v našem případě bylo však nadšení k práci a soustředěnost dětí opravdové.
Možnost vytvořit vlastní hru přitáhne k programování všechny žáky a o to nám jde! Skrze robotiku a programování her můžeme u mnoha dětí vzbudit zájem o informatiku, proto jsem začal s tímto blogem a nakoupil Ozoboty, Microbity a Meowbit, ale k tomu se dostaneme až za chvíli.
Od tvůrců makecode.org vznikl web Makecode Arcade, který se zaměřuje na tutoriály, které vedou k tvorbě vlastních jednoduchých her s pixel artovou grafikou. Vše si můžete vyzkoušet zde: https://arcade.makecode.com/
Sám používám Make Code Arcade k výuce blokového programování v 9. třídě. Úkoly zadávám do Google Classroom, rád nasdílím pro inspiraci některé pracovní listy, které jsem k blokovému programování na tomto webu vytvořil.
Obvykle pracuji induktivní formou, tzn. nechám žáky se do tutoriálu ponořit samostatně a později jim dám pracovní list, ve kterém po nich chci objasnit koncepty, které museli použít.
Např. k tutoriálu “lemon leak” museli vysvětlit následující principy, zaměřil jsem se na proměnnou a události. (proměnnou už znali z minulých hodin)
V dalším tutoriálu “collect the clovers” jsem pracovní list formuloval následovně:
Principiálně se vždy snažím zaměřit pozornost dětí na principy a kroky, které považuji za podstatné. Pokud žáci nerozumí, sami za mnou přijdou a já jim to vysvětlím a požádám je, aby vysvětlení předali vlastními slovy kamarádům.
Nevysvětluji v informatice nic frontálně, osvědčilo se mi, že žáci potřebují mít vlastní zkušenost toho, že neví jak dál postupovat a potřeba dozvědět se více pak přichází automaticky. Pro mě to znamená, že musím některé věci vysvětlovat několikrát za sebou různým žákům, ale výsledný efekt tj. vyvolání “aha” momentu, mi za to stojí.
A to nejlepší nakonec. Před 2 týdny jsem si objednal z Amazon.co.uk Meowbit. Jedná se o miniaturní herní konzoli, která vám umožní hrát vlastní hry z Make Code Arcade editoru (dokonce podporuje i multiplayer!!).
Díky Meowbit si žáci mohou svoji vlastní hru fyzicky zahrát mimo simulátor, to je pro ně obrovská motivace a úkoly tak získávají zcela novou hloubku a smysluplnost.
Meowbit mám zatím pouze jeden, osobní a chystám se ho řádně otestovat, budu vás informovat, jak to dopadlo!
V dalším projektu s Microbitem jsme navázali na naše zkušenosti s proměnnou z minulé hodiny. V textu uvidíte 3 různé úlohy, na řešení si žáci museli přijít sami, výsledek vidíte ve formě animace.
Počítadlo 1, Lovci perel. Dva lovci perel mi postupně podají svoje perly. Chci spočítat, kolik mi jich dal první a kolik druhý – obě čísla chci pro kontrolu vidět na displeji. Poté chci spočítat, kolik mi jich přinesli dohromady.
Počítadlo 2, Dlaždičky. Chci spočítat počet dlaždic v kuchyni. Nechci ale počítat a zapisovat každou dlaždičku zvlášť. (nápověda: Nejdřív potřebuji, aby mi Microbit spočítal první horní (vodorovnou) řadu a pak číslo vynásobím svislou řadou. Chci aby mi Microbit ukázal výsledný počet dlaždiček.
Každá úloha obsahovala 3 podbody, první byl doplňovací a další 2 jsem zaškrtával já – učitel, když mi žáci přinesli naprogramovaného Microbita.
Jak se jmenují vaše proměnné: __________________
Dokončete počítadlo
Vložte do počítadla vhodné animace
Příklad řešení společně s animací:
Počítadlo 3, Bonbóny. Potřebuji rozdělit bonbony. Chci do Microbita zadat počet bonbónů a následně počet lidí, kteří si je mají rozdělit. Microbit mi musí spočítat, kolik dostane každý bonbónů.
Počítadlo 4: Volná práce. Vymyslete vlastní počítadlo a jeho účel. Vymyslete k němu vlastní příběh. Využijte rozdílné vstupy (input), nezapomínejte na různé možnosti matematických operací. (sčítání, odčítání, násobení…)
Cílem dnešní hodiny bylo vysvětlit koncept proměnné a sestavit z Microbita funkční počítadlo a krokoměr.
Začali jsme tím, že žáci dostali za úkol hrát mezi sebou “kámen, nůžky, papír” a zaznamenat na papír jméno týmu,počet výher, proher a remíz.
Pak jsme si společně zakroužkovali, které údaje na papíře jsou stálé (konstanta) – jméno týmu a které se mění – proměnná. Shodli jsme se, že v našem zápisu se vyskytují 3 proměnné tj. počet výher, proher a remíz.
Následně jsme si rozdali Microbit a žáci měli za úkol napsat, jak by mohlo vypadat počítadlo vyrobené skrze Microbit. Většina se shodla na tom, že po stisku tlačítka A by se měla započítat výhra, B prohra a A+B remíza. Ukázali jsme si, kde v prostředí Make code najdeme proměnné a pak se všichni pustili do práce. Tvorba proměnných a počítání bodů bylo pro většinu jednoduché, složitější bylo vymyslet, jak udělat, aby nám Microbit výsledné číslo také ukázal na displeji.Jedno možné řešení je zde (pouze pro počet výher):
Ti, kteří dokončí dříve mohou zakomponovat různé animace nebo vyčištění obrazovky po určitém čase. Případně se místo “kámen, nůžky, papír” mohou hrát kostky (kostka), která se dá přímo naprogramovat do Microbiota.
Žákům, kteří si nevěděli rady jsem dal vytištěnou nápovědu (funkční program s proměnnou “výhra”)
Posledním úkolem bylo vytvořit funkční krokoměr. (máme dvouhodinovku) Žákům tento úkol nedělal žádné problémy, navíc dostali k dispozici materiály – kartón, provázek, dřívka,plastová brčka…
V pracovním listu byly zakomponované jednak zamyšlení nad designem, dále odškrtávací boxy (učitel zaškrtne box, pokud vidí, že má žák splněno) a reflexe.
S nástupem nového pololetí jsem usoudil, že kódování s Ozoboty už bylo dost a že se zaměříme na něco více komplexního. Na škole máme totiž k dispozici ještě druhou sadu robotů, jedná se o BBC Micro:bit. (více o těchto robotech zde: https://ucimesroboty.cz/index.php/2019/08/21/moje-cesta-k-robotum/ )
Začali jsme tím, že se žáci robota pokusili popsat. Na tabuli jsem jim napsal chybějící pojmy a oni je přiřazovali k obrázku.
Děti si pak vzaly allinone počítače a otevřely si Makecode editor, a zadaly do něj následující kód:
Na základě pozorování simulace v Make Code měly doplnit do pracovního listu větu:
Zkus napsat, co bude Microbit zobrazovat – doplň větu.
Microbit nejprve zobrazí _______ potom _______ a to přesně po dobu _________. Potom ________________________________________________ a celá animace začne ________.
Poté, co větu doplnily, mohly zkusit přidat další vlastní příkazy z kategorie “basic”.
Další hodinu jsem zaměřil na čtení javascript blocks. Každé dítě dostalo tabulku s popisem devíti “programů”.
K popisu programu jsem připravil jeho grafickou podobu v javascript blocks:
Čtverečky s programy jsem očísloval, rozstříhal a několikrát vytisknul, děti je pak nalepily různě po učebně.
Poté chodily se svou tabulkou s popisem a snažily se ke všem popisům najít správný program.
Děti si v rámci této aktivity ukotvily princip posloupnosti příkazů a rozdíl mezi cyklem “forever” a příkazem “on start.”
Začít s programováním je o hodně snadnější než se může laikovi zdát. Nastupující generace dětí vyrůstá obklopená technologiemi, stále mě překvapuje, jak rychle se v blokovém kódování dokáží velmi mladí žáci orientovat.
1. Nejprve bych však i přes veškeré nadšení pro práci s technikou začal s tzv. unplugged (odpojenou) aktivitou – tedy s vysvětlením algoritmického myšlení a v našem případě hlavně principu sekvencí, bez zapojení počítače (do zdi).
3. Nejprve jsme se s dětmi (rozdělenými do malých skupinek) bavili o tom, co to vlastně je robot a kde všude se s nimi setkáváme. Dětem chvilku trvá, než za robota začnou označovat např. svoje kuchyňské spotřebiče, ale časem se do toho místa dostaneme a pak zkusíme ve skupině vymyslet společné znaky robotů. (např. dají se ovládat, můžeme je nastavit – naprogramovat, jsou na elektřinu…)
4. Poté se stane na malou chvilku sám učitel robotem. Na tabuli promítnu nebo nakreslím následující obrázek:
A děti mají za úkol mě, učitele, hloupého robota, naprogramovat tak, abych vytvořil na nákresu šachovnici. Dbám na to, aby se používaly pouze výrazy z našeho primitivního programovacího jazyka a v bodech tak postupně vytvoříme primitivní algoritmus.
5. Po nějaké době nás začne z vypisování dlouhých příkazů bolet ruka a shodneme se na zjednodušení programovacího jazyka, slova nahradíme šipkami. V tom přichází čas, aby si děti nově nabytou znalost upevnily. Dostávají následující pracovní list.
6. V pracovním listu si vyberou jeden ze vzorů, který se pokusí přepsat do kódu v krocích 1 až 15. Poté horní část papíru přeloží, vymění pracovní list se sousedem a ten se na základě kódu pokusí obrázek překreslit do čtvercového pole na konci stránky. Celý proces opakujeme dvakrát nebo i vícekrát s dalšími vlastními vzory.
7. Další hodinu jsme vše přivedli do praxe. Ve třídě jsme rozestavěli all in one počítače (počítačová učebna nebyla volná a také jsem zjistil, že dětem se obecně v dotykovém prostředí pohybuje lépe, než v klasickém rozložení s myší a klávesnicí, navíc při práci ve skupině je interakce více lidí současně v dotykovém prostředí přirozenější)
8. Můj plán byl vše vyzkoušet skrze hru Run Marco: https://runmarco.allcancode.com/. během aktivity jsme však zjistili, že interface hry nereaguje na přetahování příkazů dotykem. V situaci, kdy máte ve třídě 20 třeťáků a všichni najednou si začnou ve skupinách a čím dál hlasitěji stěžovat, že “jim to nejde”, jsem se zapotil.
9. Naštěstí jsem měl v záloze aktivity z code.org, resp. Hour of code. Děti si tak nadšeně otevřeli Minecraft: https://studio.code.org/s/mc/stage/1/puzzle/1 a začli zcela přirozeně programovat. Vše je v češtině, děti znají Minecraft, učí se programovat, všichni jsme spokojení. Děti pracují v týmech po 3, každý by měl dostat svoji roli a vystřídat se – někdo pozorně sleduje instrukce, další kontroluje správnost kódu, jiný kód zadává (např.) – na strategii se domlouvají všichni a v rolích se střídají. Učitel pak může jen spokojeně obcházet pracující skupiny a pomáhat při řešení stále náročnějších úkolů.
10. A takhle jednoduché to je! Jsme sice na začátku ale z reakcí dětí vnímám, že jdeme správným směrem.