UPOTREBA PROMENLJIVIH(PALETA VARIABLE) U PROGRAMIRANJU PROJEKTA ZA MIKROBIT UREĐAJ. MERENJE TEMPERATURE I NIVOA OSVETLJENJA. LED PALETA KOMANDI
U prethodnim lekcijama videli ste kako se upotrebljavaju podaci koji se mogu prikazati na mikrobitu kao broj ili kao tekst, ali to nije dovoljno s obzirom da vrednost promenljive nismo sačuvali u memoriji za kasniju upotrebu. Takođe vrednosti koje koristimo za podatke mogu se imenovati, za lakše korišćenje kasnije. Da bi to omogućili potrebno je podatke kreirati kao promenljive(variable engl.). U Makecode okruženju, a za upravljanje promenljivima predviđena je paleta komandi variable.
Na primer: Za prikaz broja na mikrobitu do sada smo koristili samo funkcije show number [8] i show string [tekst] kao na sledećoj slici:
Na primer: Za prikaz broja na mikrobitu do sada smo koristili samo funkcije show number [8] i show string [tekst] kao na sledećoj slici:
gde bi umesto 0 stavili broj koji želimo, npr. 8, a umesto "Hello" tekst koji želimo.Dosad smo prikazivali podatke poput brojeva i teksta na Microbit ekranu, ali nismo sačuvali te vrednosti za kasniju upotrebu. Korišćenje promenljivih omogućava memorisanje vrednosti koje možemo ponovo koristiti i jednostavnije menjati. U MakeCode okruženju, paleta Variables pomaže u kreiranju i radu s promenljivima.
Na primer, umesto direktnog prikazivanja broja 8 pomoću funkcije show number, možemo dodeliti tu vrednost promenljivoj. Na sledeći način kreiramo promenljivu broj i postavljamo je na 8:
Na primer, umesto direktnog prikazivanja broja 8 pomoću funkcije show number, možemo dodeliti tu vrednost promenljivoj. Na sledeći način kreiramo promenljivu broj i postavljamo je na 8:
let broj = 8;
basic.showNumber(broj);
basic.showNumber(broj);
Upotreba Promenljivih u Programiranju Projekata za Microbit
U ovoj lekciji koristimo MakeCode jezik za Microbit, u kojem je kodiranje sličnije pisanju teksta nego blokovima kao u Scratch-u.
MakeCode nije zaseban programski jezik već okruženje za blokovsko kodiranje koje takođe podržava JavaScript i Python (MicroPython) za tekstualno programiranje. U MakeCode editoru, korisnici mogu birati između blokova (koji su intuitivni za početnike) ili prelaska na JavaScript i Python, koji su moćniji jezici za naprednije kodiranje.
MakeCode nije zaseban programski jezik već okruženje za blokovsko kodiranje koje takođe podržava JavaScript i Python (MicroPython) za tekstualno programiranje. U MakeCode editoru, korisnici mogu birati između blokova (koji su intuitivni za početnike) ili prelaska na JavaScript i Python, koji su moćniji jezici za naprednije kodiranje.
Primer 1: Merač broja koraka
Zadatak: napraviti program koji meri broj koraka tako što registruje vibraciju na mikrobitu i pri svakom potresu povećava vrednost promenljive broj koraka za 1. Prikazati broj koraka na mikrobitu pri svakom koraku.
Rešenje: U paleti Variables:
Rešenje: U paleti Variables:
- kreirati promenljivu pod nazivom broj koraka
- postaviti početnu vrednost na 0 metodom: set [broj koraka] to [0]
- kreirati on shake događaj
- postaviti unutar ovog bloka za taj događaj metode:
- change [broj koraka] by [1] - sa palete variables i
- show number- sa palete basic
Video 1: Brojač koraka
Opis: Da bi napravili brojač koraka prvo treba kreirati promenljivu koja čuva vrednost celog broja koji će predstavljati broj koraka. Korak izaziva protresanje mikrobita, tako da se kreira događaj gesta "on shake". Kao reakcija na ovaj događaj, broj koraka, koji je u početku jednak nuli, se povećava za 1. Pratite sledeće instrukcije:
Instrukcije:
- Kreirajte nov projekat pod nazivom: "Merač broja koraka"
- Na paleti Variables kreirajte novu promenljivu(variable engl)
- Sada će se na paleti pojaviti još dve komande(vidi sliku 2):
- set [broj koraka] to [0]
- change [broj koraka] by [1]
4. Postaviti blok "on start" na radnu površinu
5. Odaberite set [broj koraka] to [0] da bi ste postavili vrednost promenljive broj koraka na nula, u početku.
6. Dodajte blok "on shake" sa palete Input i prevucite na radnu površinu. Ovaj blok predstavlja događaj "drmusanja" mikrobita, što će se proizvesti pri svakom napravljenom koraku osobe koja nosi mikrobit.
7. Dodajte naredbu: change [broj koraka] by [1] i umetnite je u "on shake" blok. Ovo znači da će se vrednost promenljive "broj koraka" promeniti za 1 kada se desi "on shake" događaj.
8. Dodajte komandu show number [broj koraka] dva puta: 1)unutar "on start" bloka, da bi se prikazala nula na mikrobitu na samom početku i 2) unutar bloka "on shake", da bi se pri svakoj promeni broja koraka, ova vrednost prikazala na mikrobit-u.
Kompletan kod sada izgleda kao na slici 3:
5. Odaberite set [broj koraka] to [0] da bi ste postavili vrednost promenljive broj koraka na nula, u početku.
6. Dodajte blok "on shake" sa palete Input i prevucite na radnu površinu. Ovaj blok predstavlja događaj "drmusanja" mikrobita, što će se proizvesti pri svakom napravljenom koraku osobe koja nosi mikrobit.
7. Dodajte naredbu: change [broj koraka] by [1] i umetnite je u "on shake" blok. Ovo znači da će se vrednost promenljive "broj koraka" promeniti za 1 kada se desi "on shake" događaj.
8. Dodajte komandu show number [broj koraka] dva puta: 1)unutar "on start" bloka, da bi se prikazala nula na mikrobitu na samom početku i 2) unutar bloka "on shake", da bi se pri svakoj promeni broja koraka, ova vrednost prikazala na mikrobit-u.
Kompletan kod sada izgleda kao na slici 3:
Na slici je prikazano stanje posle tri koraka, pa se u simulatoru mikrobita prikazuje broj 3. Kod u python-u je prikazan na slici 4:
Merenje osvetljenja u prostoriji
Da bi ste izmerili nivo osvetljenja u prostoriji možete koristiti mikrobit.
Microbit koristi svoju LED mrežu kao senzor osvetljenja, jer nema poseban senzor za svetlost. LED ekran detektuje nivo ambijentalnog osvetljenja mereći svetlost koja pada na njega. Ova funkcionalnost se može koristiti u programiranju pomoću funkcija poput input.lightLevel() u JavaScriptu ili MakeCode okruženju. Očitavanje nivoa osvetljenja vraća vrednost od 0 (potpuni mrak) do 255 (maksimalna osvetljenost), što omogućava da uređaj reaguje na promene osvetljenja u prostoriji.
Nivo osvetljenja ćemo prikazati brojem, dakle koristićemo naredbu show number, ali umesto broja možemo umetnuti blok "light level" sa palete Input, kao što je prikazano na slici 4:
Primer 2: Merenje Osvetljenja i Temperature Pritiskom na Dugme
U ovom zadatku treba programirati microbit tako da prikaže nivo osvetljenja kada se pritisne dugme A, a trenutnu temperaturu kada se pritisne dugme B.
Uputstvo:
Dodatna Objašnjenja:Microbit može meriti temperaturu pomoću svog ugrađenog senzora za temperaturu, koji očitava temperaturu mikroprocesora i koristi je kao približnu vrednost ambijentalne temperature.
Korišćenjem bloka temperature sa Input palete ili korišćenjem komande input.temperature() (u MakeCode okruženju ili JavaScript-u), Microbit očitava i prikazuje temperaturu u stepenima Celzijusa.
Rešenje primera je prikazano na slici 5:
Uputstvo:
- Korak 1: Pritisni dugme A.
- Korak 2: Na ekranu će se prikazati trenutni nivo osvetljenja u prostoriji.
- Korak 3: Pritisni dugme B.
- Korak 4: Na ekranu će se prikazati trenutna temperatura u stepenima Celzijusa.
Dodatna Objašnjenja:Microbit može meriti temperaturu pomoću svog ugrađenog senzora za temperaturu, koji očitava temperaturu mikroprocesora i koristi je kao približnu vrednost ambijentalne temperature.
Korišćenjem bloka temperature sa Input palete ili korišćenjem komande input.temperature() (u MakeCode okruženju ili JavaScript-u), Microbit očitava i prikazuje temperaturu u stepenima Celzijusa.
Rešenje primera je prikazano na slici 5:
Video 2: Vežba- merenje nivoa osvetljenosti i temperature
Samostalan Rad: Merenje Temperature i Osvetljenja u Intervalima
Programiraj Microbit tako da automatski meri i prikazuje nivo osvetljenja i temperaturu svakih 10 sekundi, bez pritiska na dugmad.
Zadaci za Samostalan Rad:
Ovaj zadatak omogućava proveru i beleženje promena u temperaturi i osvetljenju u prostoriji u određenim vremenskim intervalima, što može biti korisno za razumevanje promene ambijentalnih uslova.
Zadaci za Samostalan Rad:
- Programiranje Intervala: Postavi program tako da meri nivo osvetljenja i temperaturu na svakih 10 sekundi.
- Prikaz Rezultata: Prikazuj nivo osvetljenja na ekranu, a zatim odmah nakon toga prikazuj temperaturu.
- Testiranje: Postavi Microbit na različite lokacije (npr. pored prozora i dalje od svetlosti) i uporedi očitavanja.
Ovaj zadatak omogućava proveru i beleženje promena u temperaturi i osvetljenju u prostoriji u određenim vremenskim intervalima, što može biti korisno za razumevanje promene ambijentalnih uslova.
LED paleta komandi
Na Microbit uređaju, LED diode su postavljene u mreži 5x5, koja formira jednostavan koordinatni sistem. Koordinate se kreću od (0,0) u gornjem levom uglu do (4,4) u donjem desnom uglu. Ova konfiguracija omogućava da se svaka LED dioda pojedinačno kontroliše putem X i Y vrednosti: X se povećava s leva na desno, a Y od vrha prema dnu.
U MakeCode okruženju, paleta komandi LED nudi različite opcije za manipulaciju diodama, uključujući blokove za uključivanje i isključivanje specifičnih tačaka (kroz "plot" i "unplot" komande), kao i mogućnost prikaza simbola i animacija. |
U LED paleti komandi u MakeCode okruženju za Microbitnalaze se sledeće osnovne komande:
|
Ako kliknemo na "more" dugme dobićemo još komandi:
|
Primer 3: LED paleta - prikaz slike na LED diodama
Zadatak: Napraviti program za mikrobit uređaj koji će upaliti sijalice na mikrobitu u rasporedu obrnutog slova G(ćirilično) kao što je prikazano na slici 11:
Rešenje:
Za ovaj zadatak, rešenje bi uključivalo aktiviranje određenih LED dioda na osnovu zadanih koordinata u mreži 5x5. Svaka koordinata definiše poziciju određene LED diode koja treba da svetli, a zadatak je da se pomoću tih koordinata prikaže slika.
Objašnjenje rešenja:
Objašnjenje rešenja:
- Razumevanje položaja LED dioda: LED mreža je predstavljena kao koordinatni sistem gde je (0,0) u gornjem levom uglu, a vrednosti se povećavaju ka desnoj strani za x osu i naniže za y osu.
- Uključivanje LED dioda na zadatim koordinatama:
- Horizontalni niz dioda: Aktivira se na koordinatama (1,1), (2,1), i (3,1).
- Vertikalni niz dioda: Aktivira se na koordinatama (3,1), (3,2), i (3,3).
- Implementacija u MakeCode-u: Koriste se komande plot(x, y) iz LED palete kako bi se tačno uključile diode na ovim koordinatama, što će prikazati željeni oblik na ekranu Micro
.
U python-u rešenje bi bilo kao što je prikazano na slici 13:
Primer 4: Podešavanje osvetljenja određene LED diode
Zadatak: Kreirajte program koji podešava intenzitet svetlosti određene LED diode na microbit-u. Potrebno je uključiti LED diodu na poziciji (2,4) i postaviti njen intenzitet svetlosti na vrednost 200.
Instrukcije za rešavanje:
Instrukcije za rešavanje:
- Razumevanje problema: Pozicije LED dioda su definisane koordinatama x i y, gde x predstavlja horizontalni položaj, a y vertikalni (vrednosti od 0 do 4). Svetlost LED dioda može biti podešena od 0 (isključeno) do 255 (maksimalno osvetljenje).
- Pisanje koda:
- Pokrenite novi projekat u MakeCode-u.
- U okviru bloka za početak (on start), dodajte blok set brightness iz palete LED komandi.
- Podesite LED diodu na koordinatama (2,4) i postavite njen nivo osvetljenja na 200.
Zadatak za samostalno rešavanje: Kreiranje „Loading“ animacije na microbit-u
Opis zadatka: Kreirajte animaciju koja prikazuje proces učitavanja („loading“) na microbit uređaju, koristeći kružni oblik na LED mreži. Animacija treba da se ponavlja neprekidno, simulirajući izgled kružne trake učitavanja.
Instrukcije za rešavanje:
Instrukcije za rešavanje:
- Pokrenite novi projekat u MakeCode okruženju za micro.
- U bloku forever postavite kod koji pokreće animaciju.
- Koristite plot (x, y) blok da prikažete LED diode u kružnom rasporedu.
- Dodajte pause (ms) između svake diode kako bi se postigao efekat animacije.
- Na kraju, dodajte clear screen kako biste obrisali ekran pre sledeće iteracije.
Test 2: Proverite svoje znanje - zaokruži tačne odgovore
Kliknite na Start dugme da započnete test! Pogledajte prethodno slike koje su povezane sa pitanjima 3 i 4.
Prethodno
|< Naredbe u Makecode-u |
Sledeće
Radio veza na mikrobitu >| |