Kurz Programování na Nuselské bude probíhat od 19. září 2024
a volně navazuje na kurz začátečníci. Je určen pro děti druhých
až pátých tříd libovolné základní školy s tím, že děti druhých
tříd musí mít absolvovaný kurz začátečníci, šikovní jedinci z
řad třetích či čtvrtých tříd mohou přijít i bez předchozího
vzdělání.
Cílem tohoto kurzu je pokračování v rozvoji systematického
myšlení, hlubší poznávání světa informační techniky
a osvojení si základů elektrotechniky.
Kurz bude probíhat 1x týdně, každý čtvrtek od 14:15 do 15:05
v počítačové učebně.
V kurzu budeme využívat robůtky Cubetto,
Beebot i Ozobot.
Později si představíme platformu Micro:bit
a s ní zabředneme trochu blíže k elektrotechnice. Kromě těchto
se budeme věnovat i práci na PC, kde se budeme učit programovat
pomocí vybraných kurzů na code.org,
prostředí scratch a dalších.
To vše proložíme tvůrčími aktivitami s papírem, kostkami a jinými
rekvizitami.
Cílem kurzu není vzdělat hotového programátora, ale rozvíjet logické
myšlení, algoritmizaci a jiné vlastnosti, které se dětem budou hodit
při studiu jakéhokoliv oboru.
Pozor, v “Lessons” nutno nastavit “Home Row Only” abychom (prozatím) využívali pouze tlačítka v prostřední řádce
NIKDY se nedívejte na klávesnici, pouze nahmatejte ukazováčky výběžky umístěné na klávesách F a J a rozprostřete prsty vedle sebe, palce na mezerník
Využívejte lekci 1, kde vám Mário radí, kterým prstem které ruky psát
Písmena FG a JH jsou obsluhována ukazováčky, vždy se po stisku G či H vraťte na původní pozici
Znak ; se ukazuje jako pravý malíček, na české klávesnici se ale nalézá vlevo vzadu nad klávesou Tab (nalevo od +/1). Časem se jej naučíte mačkat bez dívání a rychle (mě pomáhá opřít se palcem o mezerník, roztáhnout prsty správným směrem a zmáčknout).
Zvolili jsme pokročilý kurz formou “speedrun”. Nechceme 100% správnost, ale chceme se co nejrychleji dostat co nejdále.
Kdo měl chuť, zavzpomínal na Cubetto
12. hodina (2024-12-05)
Mikulášská nadílka
Pomocí Cubetta (sv. Mikuláš), Beebotů (andílci) a čerta (ozobot) jsme plánovali mikuklášskou nadílku. Použili jsme převleky od začátečníků, namalovali jsme si plán a zjistit, že je Cubetto pomalý a andílci budou muset na Mikuláše čekat.
13. hodina (2024-12-12)
Mikulášská nadílka
Naprogramovali jsme 2 andílky (Beeboti) a sv. Mikuláše (Cubetto) aby odešel z nebe na náměstí a následně do kostela bez toho aby se srazily s čertem. Nejtěžší bylo zajistit aby natěšení andělíčkové nedobíhali pomalého Mikuláše, ale nakonec se nám to podařilo.
Opakování pohybu scény a objekty (shift-a,g,r,s,+x,+y,+z,...)
Přepínání módů (vlevo nahoře myší nebo klávesa Tab)
Object mode (objektový mód) - kompozice scény
Edit mode (editační mód) - úprava jednotlivých objektů
V edit mode jsme si vyzkoušeli označení bodu, hrany a plochy, jejich posunutí, rotaci a velikost. Nakonec jsme si ukázali, že můžeme plochu “vytlačit do prostoru pomocí “extrude” e a tím rozšířit náš objekt.
Přidáme si referenční obrázek (shift+a->image->reference...)
Přidáme si “profil” banánu shift+a->mesh->cylinder a ihned klikneme v pravo dole na nové tlačítko > add cylinder a upravíme verteces na 5 či 7, případně i velikost a výšku
otočíme a posuneme na střed banánu
přepneme do edit modu tab
otočíme si pohled a vybereme podstavu (mód výběru face tlačítkem 3)
vrátíme se zpět do bořního pohledu num1
pomocí e (extrude), r (rotate), s (scale) a g (grab) postupně “obkreslíme” referenční obrázek
Přidáme si referenční obrázek (shift+a->image->reference...)
Označíme si krychly (pokud jsme ji smazali, tak ji přidáme pomocí shift+a->mesh->cube)
Přepneme do edit modu tab
Sloučíme všechny body pomocí Pravé tlačítko->merge verteces->at center (pokud jsme si odznačili, označíme pomocí A, případně přepneme mód výběru na body 1)
g přesuneme bod na vhodné místo
Pomocí e přidáváme další body (staré můžeme dále přesouvat pomocí g, vždy vyberte pouze jeden bod)
Poslední bod musíme sloučit, uděláme to opět tak, že vybereme 2 body (přes shift, nebo tažením) a dáme Pravé tlačítko->merge verteces->at center (případně At first či At last)
Označíme všechny body a vytlačíme pomocí e, případně označíme pouze jednu osu (x, y, z)
Můžeme opakovat vícekrát dle potřeby, případně zvětšit, zmenšit, posunout
Poslední vrstvu chceme překrýt plochou, uděláme to pomocí klávesy f
Můžeme využít mirror (zrcadlový) modifikátor, abychom snadno vytvořili symetrický model (např. podle osy y)
Můžeme přidat detaily pomocí označení plochy a e, případně i, případně přidat další hrany pomocí k knife (nože)
zonerai - generátor obrázků - vyzkoušeli jsme si generovat různé zábavné obrázky pomocí umělé inteligence (a procvičili jsme si psaní
na klávesnici)
Exportované modely pomocí “paper model extension” jsme stříhali a lepili.
Před vystřižením přepíšeme čísílka dovnitř modelu, následně vystřihnu velký díl, jemně přejedu podle pravítka nůžkami/kružítkem každý přehyb a předohýbám. Následně shodně zpracuji další ostrov (island) který se připojí k tomuto modelu (např. I2:6 znamená, že se k tomuto dílu připojí strana 6 z ostrovu Island 2) a slepím. Postupuji, dokud není model kompletní.
Čerchovaná čára (- * - * -) == ohýbání jedním směrem, čárkovaná čára (- - - - -) == ohýbání druhým směrem. Ideální je lepit “inverzně”, tj. vnější/bílou stranou ven. Vyžaduje to ovšem pečlivé namazání lepených plošek, které z této strany nejsou naznačeny.
vstupně-výstupní - síťová karta (RJ-45), externí disk, volant s force-feedbackem, … - zpravidla přes USB port
Praktický test různých periferií:
Volant Logitech G25 s force feedbackem (zpětná odezva téměř jako u auta) a 900° otáčením ve hře Dirt 3
Micro:bit vložený do Waveshare joysticku připojený do PC a pomocí pythonu tvářícího se jako joystick ve hře Flight Gear - joystick ovládal křídélka (otočení vlevo-vpravo) a výškové kormidlo (nahoru-dole), naklonění microbitu pak směrové kormidlo (jemné korekce, zatáčení na zemi)
Micro:bit připojený do PC a pomocí pythonu tvářícího se jako joystick ve hře SuperTuxKart - pro legraci jsme využili senzor naklonění pro akceleraci/brždění a mikrofon pro ovládání zatáčení (ticho doleva, křik doprava)
Zapojení terče - napětí se rozdělí mezi pull-up rezistor a fotorezistor, hodnota fotorezistoru se mění dle osvětlení a tím se nám mění napětí, které micro:bit naměří na pinu 1
čtení jeho hodnoty pomocí micro:bitu (číslo z pinu P1 nám vrátí hodnotu 0 - 1023 dle osvětlení fotorezistoru)
při vypnutém tlačítku je připojena baterie na kondenzátor, ten se nabije a obvod setrvává “v klidu”
po stisknutí tlačítka se odpojí baterie a připojí se kondenzátor na laserovou diodu. Přebytek elektronů putuje skrz diodu, kondenzátor se vybíjí a dioda svítí. Když se kondenzátor vybije, přestane tlačit elektrony skrz diodu a ta zhasne.
Co nejrychleji jsme se pokusili doprogramovat kód všech terčů, ale bohužel jsme nestili odladit vše (sklopit místo vyklopit, chybějící podmínky, špatné názvy). Prostě chybělo málo ale velmi krátce jsme si vyzkoušeli střelbu na jeden funkční terč bez měření času.