MIKROBIT PROJEKTI I RADIONICE

​Vežba 1: Merenje temperature

​Vežba 2: Alarm

Dobrodošli u vežbu "Alarm na micro:bit-u", gde ćete naučiti kako da napravite jednostavan sistem detekcije pomoću senzora pritiska i radio-veze. Ova vežba je savršen uvod u osnovne koncepte programiranja micro:bit uređaja, kao i praktičnu primenu senzora i komunikacije između uređaja.

Pre nego što započnete, preporučujemo da pogledate sledeće resurse za dodatne informacije i inspiraciju:

Kroz ovu vežbu ćete korak po korak razviti svoj sistem alarma i osigurati dublje razumevanje rada sa micro:bit-om. Uživajte u učenju i istraživanju!


Zadatak: Alarm za otkrivanje lopova

Zamislite sledeću situaciju: Vaša kuća je opremljena modernim sigurnosnim sistemom, ali želite da dodate još jedan sloj zaštite. Na ulazu u garažu želite da postavite alarm koji će vas upozoriti kada neko pokuša da provali. Micro:bit uređaj će vam pomoći da osmislite jednostavan, ali efikasan sigurnosni sistem koristeći radio vezu.

Problem koji rešavamo:
Vaš zadatak:

Napravite dva Micro:bit uređaja:
  1. Detektor: Uređaj koji detektuje uljeza i šalje radio poruku "alarm".
  2. Alarm: Uređaj koji prima poruku, aktivira zvučni signal i prikazuje vizuelnu notifikaciju.

Konkretni koraci za rešavanje problema:
  1. Detektor uljeza:
    • Prvi Micro:bit treba da detektuje pritisak na dugme A.
    • Kada dugme A bude pritisnuto, uređaj treba da pošalje radio poruku "alarm" na specifičnom kanalu.
    • Da bi sistem bio vizuelno intuitivan, nakon slanja poruke prikazuje nasmejano lice (simbolizuje uspešno slanje poruke).
  2. Alarm u kući:
    • Drugi Micro:bit treba da sluša radio poruke na istom kanalu.
    • Kada primi poruku "alarm", uređaj prikazuje iznenađeno lice na ekranu, uključuje zujalicu na pin P0 na jednu sekundu, i zatim isključuje zvuk i briše ekran.

​Korišćeni materijali:
​Ovaj zadatak simulira stvarni alarmni sistem i može se primeniti u raznim situacijama. Na primer, može poslužiti za upozorenje u kući, kao sigurnosni sistem za školu ili kao deo kreativnih projekata za mlade programere.
Sada se bacite na kodiranje i napravite svoj prvi sigurnosni alarm!

1. Hardverske pripreme:

2. Programiranje Micro:bit 1

Kod u python-u za mikrobit 1:

frommicrobitimport * # Uvoz modula za upravljanje Micro:bit uređajem
importradio# Uvoz modula za rad sa radio komunikacijom

radio.on() # Aktivacija radio modula
radio.config(channel=1) # Konfigurisanje radio kanala na 1

whileTrue: # Beskonačna petlja za kontinuirano praćenje stanja
ifbutton_a.is_pressed(): # Provera da li je dugme A pritisnuto
radio.send("alarm") # Slanje poruke "alarm" preko radio veze
display.show(Image.HAPPY) # Prikazivanje srećnog lica na ekranu
sleep(500) # Pauza od 500 milisekundi
display.clear() # Brisanje prikaza sa ekrana

3. Programiranje Micro:bit 2

  1. Takođe u MakeCode editoru, otvorite novi projekat.
  2. Postavite blokove kako biste implementirali sledeće:
    • U okviru on start bloka, podesite radio kanal na isti broj (npr. kanal 1).
    • Dodajte logiku da, kada uređaj primi poruku "alarm", prikaže animaciju i aktivira zvuk.

Kod u python-u za mikrobit 2:

frommicrobitimport * # Uvoz modula za upravljanje Micro:bit uređajem
importradio# Uvoz modula za rad sa radio komunikacijom

radio.on() # Aktivacija radio modula
radio.config(channel=1) # Konfigurisanje radio kanala na 1

whileTrue: # Beskonačna petlja za kontinuirano praćenje radio poruka
message = radio.receive() # Primanje poruke preko radio veze
ifmessage == "alarm": # Provera da li je primljena poruka "alarm"
display.show(Image.SURPRISED) # Prikazivanje iznenađenog lica na ekranu
pin0.write_digital(1) # Aktiviranje zujalice na pinu P0
sleep(1000) # Pauza od 1 sekunde dok zujalica radi
pin0.write_digital(0) # Isključivanje zujalice
display.clear() # Brisanje prikaza sa ekrana

4. Testiranje

Proširenje zadatka

- Dodajte opciju da Micro:bit 2 po prijemu poruke "alarm" šalje potvrdu nazad prvom uređaju. - Napravite sistem sa više uređaja na istom radio kanalu za kompleksnije simulacije.

Projekat 3: Brzina reagovanja

Cilj projekta:
Napraviti uređaj koji meri brzinu reagovanja korisnika pomoću micro:bit uređaja i jednostavnog prekidača napravljenog od aluminijumske folije. Projekat uključuje kreiranje fizičkog prekidača, pisanje programa za micro:bit i testiranje vremena reakcije korisnika.Opis zadatka:Korisnik treba da kreira sistem koji meri vreme reakcije na svetlosni signal. Sistem će koristiti micro:bit uređaj za generisanje signala i merenje vremena, dok će prekidač napravljen od aluminijumske folije služiti kao "taster" za registraciju korisnikovog odgovora.
Potrebni materijali:
  1. micro:bit uređaj (dva uređaja, ako želite dodatni prikaz na drugom micro:bitu).
  2. USB kabl za povezivanje micro:bit uređaja sa računarom.
  3. Karton.
  4. Aluminijumska folija (tri komada).
  5. Sunđer ili penušasti materijal za razdvajanje folija.
  6. Provodnici (kablovi sa krokodil štipaljkama).
  7. Makaze i lepak.

Koraci za realizaciju projekta:

1. Kreiranje prekidača:
  1. Isecite tri komada aluminijumske folije dimenzija oko 10x10 cm.
  2. Na karton zalepite:
    • Prvu foliju (A) – povežite je sa pinom P0 na micro:bitu.
    • Drugu foliju (B) – povežite je sa GND pinom na micro:bitu.
    • Treću foliju (C) – stavite sa suprotne strane kartona tako da bude izolovana (npr. pomoću sunđera).
  3. Složite karton i folije tako da folija (C) može spojiti folije (A) i (B) kada se karton pritisne.
  4. Prekidač postavite na pod ili sto – spreman je za korišćenje.
2. Programiranje micro:bit uređaja:
  1. Glavni micro:bit program:
    • Inicijalizujte pin P0 kao ulaz.
    • Na ekranu micro:bita prikažite simbol (npr. krug) nakon nasumičnog vremenskog perioda (1-5 sekundi).
    • Kada korisnik pritisne prekidač, izmerite vreme između prikaza simbola i aktivacije prekidača.
    • Prikažite rezultat (vreme u milisekundama) na ekranu micro:bit-a.
Kod u Python-u:
importrandom# Uvoz modula za generisanje slučajnih brojeva

importtime# Uvoz modula za merenje vremena

start_time = 0# Inicijalizacija promenljive za početno vreme

defon_pin_pressed():
reaction_time = time.ticks_ms() - start_time# Izračunavanje vremena reakcije u milisekundama
print(reaction_time) # Prikazivanje vremena reakcije na ekranu

defmain_loop():
whileTrue:
pause_time = random.randint(1000, 5000) # Generisanje slučajnog vremena pauze (1-5 sekundi)
time.sleep(pause_time / 1000) # Pauza pre prikaza ikone
print("Ikona se prikazuje!") # Prikazivanje kvadratne ikone (simulirano ispisom)
start_time = time.ticks_ms() # Beleženje trenutnog vremena kada se ikona pojavi

main_loop() # Pokretanje glavne petlje programa
3. Testiranje uređaja:
  1. Priključite micro:bit uređaj na računar ili eksterni izvor napajanja.
  2. Postavite prekidač ispod tepiha, otirača ili na neku ravnu površinu.
  3. Kada micro:bit prikaže simbol, brzo pritisnite prekidač.
  4. Pročitajte vreme reakcije na ekranu micro:bit-a.
Šta ova vežba podrazumeva?
U ovoj vežbi koristite aluminijumsku foliju kao fizički prekidač. Igra je osmišljena tako da meri vašu reakciju kada dodirnete ili "udarite" prekidač napravljen od folije. Cilj je da kreirate jednostavan električni kontakt koji mikrobit može da detektuje.
Povezivanje pinova i aluminijumske folije
  1. Potrebni materijali:
    • Mikrobit.
    • Aluminijumska folija (oblikovana u komade).
    • Krokodilkice (ili žice za povezivanje).
    • Eventualno, traka za pričvršćivanje.
  2. Kako se povezuje?
    • Jedan komad aluminijumske folije povezuje se na jedan od digitalnih pinova mikrobita, npr. P1.
    • Drugi komad folije povezuje se na pin za uzemljenje (GND).
    • Kada "udarite" foliju (ili je spojite prstom), zatvara se strujni krug između P1 i GND.


​Šta se dešava sa stanovišta fizike?

1. Zatvaranje strujnog kruga 2. Detekcija signala 3. Uloga aluminijumske folije Kako igra funkcioniše?
  1. Mikrobit beleži trenutak kada detektuje da je strujni krug zatvoren (dodirivanje folije).
  2. Reakcijsko vreme se meri tako što mikrobit beleži vremenski interval između početnog stanja i trenutka kada se prekidač aktivira.
  3. Možete "udarati" folije koliko god želite, i mikrobit će beležiti vaše reakcije.

Dodatni zadaci (opciono):

  1. Prikaz na drugom micro:bit uređaju:
    • Povežite dva micro:bit-a preko radio komunikacije.
    • Na drugom uređaju prikažite vreme reakcije ili uključite alarm.
  2. Proširenje funkcionalnosti:
    • Dodajte više prekidača za timsku igru.
    • Sačuvajte rezultate i prikažite prosečno vreme reakcije.

Vežba 4: Merenje brzine

Opis problema:
Zamislite da ste postavili eksperiment za merenje brzine kretanja određenog objekta (na primer, automobila, bicikla ili trkača). Cilj ovog zadatka je da pomoću dva Micro:bit uređaja izmerite brzinu objekta koji prolazi između dve tačke.
Problem koji rešavamo:
Prvi Micro:bit detektuje prolazak objekta kroz prvu tačku, dok drugi Micro:bit detektuje prolazak kroz drugu tačku. Komunikacija između uređaja odvija se preko radio veze. Na osnovu vremena koje objektu treba da pređe rastojanje između tačaka, računa se njegova brzina.

Specifikacija zadatka

  1. Uređaj 1 (Start senzor):
    • Ovaj Micro:bit uređaj detektuje početak merenja.
    • Kada se dugme A pritisne, uređaj beleži trenutak početka (start_time) i šalje radio poruku "start".
  2. Uređaj 2 (Stop senzor):
    • Ovaj Micro:bit uređaj čeka poruku "start".
    • Kada detektuje prolazak objekta (pritiskom na dugme B), beleži trenutak završetka (stop_time) i izračunava ukupno vreme kretanja.
    • Na osnovu unapred definisanog rastojanja (npr. 5 metara), uređaj računa brzinu objekta i prikazuje je na ekranu u metrima u sekundi (m/s).
  3. Unapred definisano rastojanje:
    • Pretpostavite da je rastojanje između dve tačke 5 metara.

Koraci za rešavanje zadatka

1. Postavljanje uređaja 1 (Start senzor):

Povežite prvi Micro:bit na računar.

Napišite program koji radi sledeće:

  • Uključuje radio vezu i postavlja kanal za komunikaciju.
  • Pritiskom na dugme A beleži trenutni trenutak (start_time) koristeći ugrađenu funkciju za merenje vremena.
  • Šalje radio poruku "start" drugom Micro:bit uređaju kako bi označio početak merenja.
  • Prikazuje simbol strelice (Image.ARROW_W) kao vizuelni signal da je merenje započeto.

2. Postavljanje uređaja 2 (Stop senzor):

Povežite drugi Micro:bit na računar.

Napišite program koji radi sledeće:

  • Uključuje radio vezu i postavlja kanal za komunikaciju.
  • Prima poruku "start" i prikazuje simbol sata (Image.CLOCK) kao vizuelni signal da je uređaj spreman za merenje.
  • Kada se dugme B pritisne, beleži trenutni trenutak (stop_time).
  • Izračunava ukupno vreme prolaska kao razliku između stop_time i start_time.
  • Na osnovu definisanog rastojanja (5 metara), računa brzinu prema formuli: brzina = rastojanje / vreme.
  • Prikazuje izračunatu brzinu na ekranu u m/s.

3. Testiranje:

  • Postavite prvi Micro:bit na početnu tačku, a drugi na krajnju tačku (rastojanje od 5 metara).
  • Pokrenite program na oba uređaja.
  • Pritisnite dugme A na prvom uređaju da započnete merenje.
  • Kada objekat prođe krajnju tačku, pritisnite dugme B na drugom uređaju.
  • Na ekranu drugog uređaja očitava se brzina kretanja objekta.

​Vežba 5: Zalivanje bašte

​Vežba 6: Ultrasonični senzor