EduShield: učte se programovat jednočipy

Před téměř rokem a půl jsme se Štěpánem Bechynským začali objíždět republiku s workshopem Arduino 101. Cílem tohoto workshopu bylo přivést lidi k Arduino a elektronice vůbec, a ukázat jim hlavně to, že není potřeba se bát, že to nezvládnete, nebo se ostýchat.

Během té doby prošlo workshopem na 400 lidí, od dvanáctiletých školáků až po seniory, muži i ženy, programátoři i neprogramátoři… Cílem workshopu nebylo vytvořit za tři hodiny dvanáct elektroinženýrů, to ani náhodou. Cílem bylo ukázat těm dvanácti lidem zajímavý svět, o kterém věděli, jak je velký a zajímavý, ale báli se, že se v něm nevyznají. Udělali jsme s nimi prvních pár kroků a ukázali základy. Ne, žádné složitosti, žádná „nejdřív-teorie-pak-teprve-praxe“, žádné nudné povídání na hodinu… Praktická ukázka, pak vysvětlení, proč to tak je, co se děje, pak nechat účastníky, ať si zkusí nějaké vlastní úlohy… Ohmův zákon se doučíte doma, na to, abyste si postavili „bastlteploměr“ ho nepotřebujete. Věříme totiž, že je nejdůležitější zaujmout a zbavit počátečního strachu. Pak teprve přijde na řadu teorie, bez které nemá cenu se do něčeho většího pouštět. Ale upřímně: když chcete někoho nadchnout pro mikroelektroniku, tak je lepší přijít a říct: „Udělejte toto, a vidíte, bliká to! Takhle to je jednoduché!“ a pak vysvětlit, proč a co je za tím, než si před něj stoupnout a vyprávět mu dvě hodiny o proudu, napětí, TTL, tranzistoru, P-N přechodu, …

První pokusy proběhly s takovými těmi starter kity, které znáte: Arduino, pytel součástek, halda drátů, nepájivé pole. Ale tenhle přístup má zásadní nevýhodu: pokud učíte začátečníky, tak se stane, že někdo něco špatně zapojí, že nějakou součástku otočí, a následuje složité hledání příčiny, které zbrzdí celý workshop. Tato nevýhoda, alespoň podle nás, převáží nad výhodou („opravdu si to osaháte“).

Druhá věc, kterou jsme řešili, byl nedostatek výukových materiálů. Ne snad že by nebyly nikde příklady, těch je dost. Co chybělo, alespoň nám, byly metodické materiály, tedy postupy co ukazovat, jak, jaké techniky zvolit, na co dát důraz, co kterým příkladem demonstrujete, … To byla i nejčastější otázka ze skupiny lidí, kterým pracovně říkám „táta s dětmi“ – tedy rodič, který sám nějaké povědomí má, a rád by svou ratolest v její zvídavosti podpořil, ovšem nenapadá ho, co je adekvátní jaké úrovni znalostí, a nenapadají ho třeba ani náměty na samostatnou činnost.

Nakonec jsme se tedy rozhodli použít shield, původně určený k zapojování digitálních hodin. Výhodou bylo, že obsahoval několik různých senzorů (termistor, fotorezistor, tlačítka), a zároveň i několik různých výstupů (LED, repro) a periferií (hodiny reálného času DS1307, čtyřmístný LED displej). Bohužel jeho zapojení nebylo úplně šťastné – neumožňoval demonstraci HW přerušení, a nedovoloval ani připojení Ethernet shieldu, protože obsazoval některé piny pro SPI.

Proto jsme nakonec spojili síly se sdružením CZ.NIC, které naše myšlenka zaujala, a společnými silami jsme navrhli a vyrobili desku, nazvanou EduShield.

20161107_145525EduShield vychází z hardware, který jsme použili v kurzu Arduino 101, ale opravuje výše zmíněné problematické části. Vynechali jsme reproduktor, který způsoboval při výuce někdy krušné okamžiky, místo něj jsme přidali RGB LED, buzenou přes PWM, tedy se schopností plynulého rozsvěcení a zhasínání. Tlačítko jsme připojili na vstup, který dokáže vyvolat přerušení; stejně tak i výstup ALARM od hodin reálného času.

Zajímavý kompromis jsme udělali u displeje. Originální shield používal čínský obvod TM163x, který jsme použít nechtěli. Místo něho jsme navrhli použití specializovaného budiče od firmy Maxim. Ten se ale ukázal jako poměrně drahý, a tak jsme jej nahradili jednočipem – konkrétně ATtiny2313. Tento procesor je naprogramován tak, že svými výstupy budí čtyřmístný sedmisegmentový displej, a pro Arduino se tváří jako periferie na sběrnici I2C. Což nám zároveň otevřelo další možnosti. Firmware pro tento procesor je napsaný rovněž v jazyce Wiring, a lze jej do procesoru nahrát pomocí Arduina. Shield tak můžete přeprogramovat, překonfigurovat, a namísto displeje použít třeba úplně jinou periferii.

20161107_145552

CZ.NIC se ujal výroby hardware, a v těchto dnech vzniká série 300 kusů. Cena se bude, podle předběžných informací, pohybovat někde okolo 200 Kč. Tato první série je primárně zaměřená na výuku lektorů – spolu s Akademií CZ.NIC se chystáme „vyškolit školitele“, kteří budou tento shield používat při vlastní výuce. Chtěli bychom oslovit i školy, pro které by tento výukový kit mohl být zajímavý svými možnostmi i dostupností, a proto bychom rádi, právě ve spolupráci s CZ.NIC, zajistili akreditaci kurzu v rámci DVPP.

Jak metodické materiály, které právě dolaďujeme, tak samotný hardware i software jsou pod svobodnými licencemi (MIT, CC).

Informace o dostupnosti i o možnosti přihlásit se do kurzů budou na stránkách CZ.NIC, nebo je najdete i zde.

20161107_145558

Líbil se vám článek? Podpořte autora na Patreonu
banner