Iako za blokovsko programiranje Micro:bita preporučam Microsoftov MakeCode koji sadrži više blokova i ima neke naprednije mogućnosti, blokovsko programiranje Micro:bita podržano je i u programu Mblock 5 tvrtke Makeblock. To može biti korisno jer Mblock 5 podržava i programiranje mnogih drugih uređaja (Codey Rocky, Halocode, mBot, Motionblock, Neuron, Ranger, Ultimate 2.0, Arduino Uno, Arduino Mega2560, Nova Pi, micro:bit, MegaPi Pro, ...). U ovom članku ćemo proći kroz nekoliko aktivnosti i osnovnih mogućnosti Mblocka 5 i Micro:bita. Članak podrazumijeva poznavanje osnova blokovskog programiranja.
1. Spojimo Micro:bit s računalom pomoću microUSB kabela.
2. Pokrenemo mBlock 5 (u ovom članku je korištena verzija v5.1.0).
3. Dodamo novi uređaj i odaberemo Micro:bit.
U ovoj aktivnosti naučit ćemo kako napraviti animaciju na Micro:bitovoj mreži LED lampica. Izradit ćemo animaciju kiše.
Bit će nam potrebni sljedeći blokovi:
1. Pronađimo i umetnimo početni blok i blok za prikaz slike. Prvo ćemo nacrtati samo jednu kap kiše (1 lampica) te animirati njezin pad.
2. Na isti način dodat ćemo još nekoliko kapi, ali na različitim pozicijama kako bi se postigao efekt kiše. Odabirom vremena prikazivanja svake sličice postavit ćemo brzinu padanja kiše.
3. Kako kiša ne bi prestala padati dodat ćemo beskonačnu petlju. Da bi animaciju vidjeli na Micro:bitu, trebamo napraviti upload programa.
Naravno, nije lijepo kada kiša neprestano pada. U ovoj aktivnosti naučiti ćemo koristiti Micro:bitove gumbove kako bi upravljali kišom.
Novi blokovi koji će nam biti potrebni:
Micro:bit ima dva gumba: A i B. Želimo da, kada pritisnemo gumb A, kiša pada, a kada pritisnemo gumb B kiša prestane padati.
Točnije, kada se pritisne gumb A animacija kiše se ponavlja sve dok se ne pritisne gumb B. Nakon toga se ne prikazuje ništa sve dok ponovno ne pritisnemo gumb A.
Program je spreman za upload na Micro:bit.
U ovoj aktivnosti ćemo naučiti nešto o žiroskopu koji je ugrađen u Micro:bit te kako pomoću njega kontrolirati animaciju.
Novi blokovi koji će nam biti potrebni:
Žiroskop je uređaj koji pomoću Zemljine sile teže određuje orijentaciju. Pomoću njega možemo odrediti:
Žiroskop će nam dati vrijednost od -1024 do +1024. Npr. za x-os -1024 znači da je Micro:bit nagnut skroz lijevo, 0 znači da stoji ravno, a 1024 znači da je nagnut skroz desno, analogno i za ostale osi.
1. Dodat ćemo još jedan Micro:bit uređaj
2. Iskoristimo ono što smo naučili u prethodnoj aktivnosti o animacijama i napravimo jednostavnu animaciju otvaranja i zatvaranja kišobrana. Budući da ćemo animaciju kontrolirati žiroskopom, tako da kišobran bude otvoren kada Micro:bit stoji uspravno, zatvoren kada Micro:bit stoji ravno, i polu otvoren između, odabrat ćemo blok za prikaz slike bez vremenskog ograničenja.
3. Sada ćemo za prikaz svake slike dodati uvjete kada želimo da se ona prikaže. Nas zanima kada se Micro:bit naginje prema naprijed, odnosno nazad. Za to treba promatrati očitanje žiroskopa za y-os.
Kišobran je otvoren kada Micro:bit stoji uspravno, to je kada žiroskop za y-os daje vrijednosti blizu 1024. Mi ćemo dati malo više prostora, te ćemo gledati sve vrijednosti veće od 850.
Slično kišobran je zatvoren kada žiroskop daje vrijednosti blizu 0. Mi ćemo gledati vrijednosti manje od 450.
Za sve ostale vrijednost, veće od 449 i manje od 851 kišobran je poluotvoren.
4. Posložimo sve blokove u konačni program spreman za upload na Micro:bit.
5. Primijetimo kako u našem programu čak 4 puta očitavamo vrijednost koju nam daje žiroskop. Umjesto toga mi možemo tu vrijednost učitati samo jedanput te ju zapamtiti u varijabli. Kreirajmo varijablu koja će pamtiti očitanje sa žiroskopa i dajmo joj prikladno ime.
Na početku beskonačne petlje zapamtimo očitanje žiroskopa pomoću varijable. U nastavku programa koristimo varijablu kada nam je potrebno očitanje žiroskopa.
U prethodnim aktivnostima napravili smo kišu i kišobran. U ovoj aktivnosti ćemo naučiti kako Micro:bitovi mogu međusobno komunicirati kako bi kišobran zaustavio kišu.
Za ovu aktivnost bit će potrebna dva Micro:bita, u daljnjem tekstu, Kišobit i Branbit.
Novi blokovi u ovoj aktivnosti:
1. Prvo ćemo preraditi kod iz 2. aktivnosti koji ćemo postaviti na Branbit. Kako bi Branbit uspješno komunicirao s Kišobitom potrebno je prvo otvoriti bežičnu komunikaciju te odabrati jedan od kanala. Važno je da i Kišobit i Branbit imaju odabrani isti kanal. Mi ćemo odabrati kanal 22.
Branbit treba javiti Kišobitu kada je otvoren i kada je zatvoren kako bi Kišobit znao kada treba zaustaviti, a kada pustiti kišu. Pomoću bloka za slanje poruke poslat ćemo odgovarajuću poruku za svaku poziciju kišobrana.
Dodat ćemo i blok koji će pričekati pola sekunde unutar beskonačne petlje kako ne bi prebrzo slali previše poruka.
2. Kod ćemo uploadati na Branbit, ištekati ga, i s računalom spojiti Kišobit.
3. Vratimo se na program iz 1. aktivnosti.
Branbit će poslati poruku na kanalu 22, na kojem je Kišobit treba primiti. Opet ćemo otvoriti bežičnu komunikaciju te nakon toga odabrati kanal 22. Ovaj put ćemo primati poruke te ovisno o njihovom sadržaju upravljati kišom.
Ako primimo poruku „Otvoreno“ znači da je kišobran otvoren, u tom slučaju ćemo samo pričekati pola sekunde tj. nećemo pustiti animaciju kiše.
Ako primimo poruku „Zatvoreno“, kišobran je zatvoren, u tom slučaju kiša može padati, te trebamo pustiti animaciju kiše.
4. Napravimo upload programa na Kišobit. Uštekamo Branbit kako bi se i on uključio. Testiramo program.
U ovoj aktivnosti ćemo iskoristiti ono što smo do sada naučili o animacijama i žiroskopu. Naučit ćemo kako dodavati varijable i izraditi vlastite blokove.
Novi blokovi koji će nam biti potrebni:
1. U ovoj aktivnosti želimo izraditi kišnu glistu koja će se kretati prema lijevo kada Micro:bit nagnemo ulijevo, prema desno kada ga nagnemo udesno, i mirovati kada Micro:bit stoji ravno. Prvo ćemo izraditi animacije za svaku od mogućih stanja kišne gliste.
Budući da za animacije koristimo puno blokova i to zauzima puno mjesta u kodu našeg programa mi možemo izraditi svoj novi blok koji će biti zadužen za određenu animaciju te pomoću njega dodati animaciju u program kao jedan blok. Na taj način animaciju možemo vrlo lako postaviti i na više mjesta unutar našeg programa.
Kako bi izradili svoj blok potrebno je kliknuti na:
Nakon toga dobivamo sučelje za izradu bloka u kojem možemo dodavati razne „kučice“ koje želimo da naš blok ima. U prvu tekstualnu „kučicu“ upisat ćemo što naš blok radi te ćemo dodati još jednu brojčanu „kučicu“ u kojoj ćemo našem bloku zadati vrijeme trajanja svake sličice i nazvati je vrijeme.
Nakon što kreiramo blok pojavit će se blok sa slike ispod te će automatski biti generirana varijabla brzina koju možemo koristiti samo unutar našeg bloka.
Na taj blok možemo dodati blokove koje želimo da on sadržava. U našem slučaju animaciju kretanja gliste prema desno u kojoj se svaka sličica prikazuje onoliko sekundi koliko je pohranjeno u varijabli vrijeme.
Napravimo i ostale animacije.
2. Dodajmo sada upravljanje glistom. Slično kao u prethodnoj aktivnosti, ali sada nam je potrebna os-x žiroskopa kako bi utvrdili lijevi i desni nagib Micro:bit-a.
Umjesto konkretnih animacija sada koristimo nove blokove koje smo kreirali. Te u njima zadajemo brzinu izvođenja animacije.
3. Poznata je činjenica da se kišna glista kreće brže kada pada kiša. Kada otvorimo kišobran kiša ne pada. Kako bi glista znala kada mora usporiti i ona mora slušati poruke na kanalu 22. Dodajmo bežičnu komunikaciju i kontrolu brzine glisti. Za to ćemo trebati dodati još jednu varijablu pomoću koje ćemo postaviti brzinu gliste prema potrebi.
4. Program je spreman za upload i testiranje.
Ako imamo tri Micro:bita, na svaki od njih uploadamo odgovarajuće rješenje iz prethodnih aktivnosti. Sve ih priključimo na izvor napajanja. Kiša, kišobran i kišna glista su spremni za međusobnu interakciju.
Citiraj
Novak, Siniša (17.12.2019.). Micro:bit i Mblock 5. Sustav. Preuzeto s https://sustav.sino.com.hr/micro-bit-i-mblock-5 ()