Semafor a RGB dioda
Semafor a rgb led na destičce s ochrannými rezistory a čtyřmi piny jsou původně určeny pro Arduino a připraveny na napětí pět voltů. Microbití 3,3 volty ale pro rozsvícení diody stačí, takže je můžeme připojit přímo pomocí drátků dupont-krokodýl nebo pomocí libovolného rozšíření a drátků dupont-dupont.
Funguje i se samotnou rgb diodou (článek RGB LED), dupont lze navléknout přímo na nožičky nebo použít krokosvorky, ale chybí tam to povědomí o ochranných odporech. Semafor můžeme s dětmi vyrobit z diod a buď připájet na destičku, nebo použít karton či 3D tisk s otvory.
Fyzikální vsuvka:
Doporučuji na začátku ukázat samotnou LED a její dvě nožičky, vysvětlit/ukázat, že propouští proud jen jedním směrem a přitom svítí. Jakto, že semafor má jen čtyři piny, když diody mají celkem šest nožiček? K pinu GND (mínus) je totiž připojena jedna nožička od každé barvy. Druhá nožička má samostatný pin a tím ji můžeme ovládat. Úplně stejně ovládáme RGB diodu, kde jsou všechny tři barevné diody schované pod jedním krytem.
Informaticko-fyzikální vsuvka: Piny ve skutečnosti nedokážou měnit hodnotu napětí, stále dávají 3,3 voltů. Jakto, že tedy můžeme použít příkaz zapiš číslo a dioda svítí méně? Kouzlo je v tzv pwm modulaci, kdy se plná hodnota napětí neposílá celou dobu, ale jen v různě dlouhých impulzech v rychlém sledu. Například poloviční hodnoty dosáhneme svícením pouze polovinu času pulzu. Dioda svítí menším jasem, protože naše oči blikání nevnímají.
Pracovní listy
První pracovní list je vhodný i pro začátečníky. Nejprve připojíme pouze zelenou LED a vyzkoušíme na připojený pin zapsat číslo od 0 do 1023.
Po připojení ostatních barev je vyzkoušíme rozsvítit a zase zhasnout a nakonec střídat barvy automaticky jako na skutečném semaforu.
Rozšíření, které v prac. listu není: i začátečníci zvládnou použít funkce, do kterých si vloží nastavení všech tří pinů a nazvou si je například červená, červená_žlutá, žlutá, zelená. Volání těchto funkcí velmi zpřehlední kód.
Místo zapisování čísel do pinu můžeme použít logickou hodnotu 0/1 = nesvítí/svítí. Pro semafor stačí, nechceme-li ovlivňovat jas. Koumáci snadno najdou rozšíření Traffic Light. Jaké příkazy asi skrývá? Bude fungovat, i když prohodíme piny? Má smysl ho používat?
Druhý (navazující) pracovní list je určený pro pokročilé využívá funkci s parametrem a pracuje se stavovou proměnnou. Jednotlivé možné stavy semaforu si očíslujeme, pomocí tlačítek měníme hodnotu stavové proměné a voláním funkce je postupně zobrazujeme.Semafor nabízí mnoho možností, například automatický provoz s přepínáním mezi funkčním a nefunkčním (bliká žlutá) – další stavová proměnná – nebo dálkové ovládání více semaforů a tvorbu reálné křižovatky.
Při testování vyzkoušíme zobrazit šest základních barev a bílou, která nebude úplně bílá a můžeme zkoušet měnit hodnoty tak, aby byla bělejší. Z barev potom skládáme a při stisku tlačítka zobrazujeme sekvence (např. maják, duha, semafor). Vyzkoušíme i náhodnou barvu.
Velmi doporučuji položit si na diodu bílý papír a dívat se přes něj. Nevypálí oči a barvy jsou lépe vidět včetně skládání ze tří složek.
Rozšíření, které v prac. listu není: cyklus for umožní sledovat, jak se barvy mění plynule (ukázka také v článku RGB LED).
<<< Základ programování a proč pracovní listy
<<< RGB LED
Další černobílé pracovní listy pro pokročilejší (r. 2023)
Spoiler (hotové kódy):
Námět k míchání barev pomocí proměnných a cyklů.
<<< Základ programování a proč pracovní listy
<<< RGB LED