Skip to content

Aktivnost

Svjetla na pljeskanje

Početni | MakeCode, Python | LED zaslon, Mikrofon | Booleova logika, Odabir, Senzori

1. korak: Napravi

Što je to?

Napravi od micro:bita svjetiljku koju možeš paliti i gasiti pljeskanjem ili nekim drugim glasnim zvukom.

Uvod

Vodič za kodiranje

Što ćeš naučiti

  • Kako promijeniti izlaze da bi reagirali na na senzorove naredbe
  • Kako koristiti Booleovu logiku da biste napravili prekidač koji se uključuje i isključuje nakon što ga ista radnja pokrene

Kako to radi

  • Program koristi varijablu Upaljenokako bi pratila je li svjetiljka uključena ili ne. Mi ćemo je koristiti kao određeni tip varijable, kao Booleovu varijablu. Booleove varijable mogu imati samo dvije vrijednosti: točno (uključeno) ili netočno (isključeno).
  • Kada mikrofon otkrije glasan zvuk, kôd mijenja vrijednost varijable Upaljeno tako da ju postavi na Ugašeno.
  • To znači da kada zaplješćeš, ako je Upaljeno bilo netočno (a svjetiljka je ugašena), to postaje točno i program upali LED-ice.
  • Ako je Uključeno bilo točno (a svjetiljka upaljena), to postaje netočno i program prikaže prazan zaslon tako da ugasi LED-ice.

Što ti treba

  • micro:bit
  • Uređivač MakeCode ili Python
  • baterije (prema potrebi)

2. korak: Kodiraj

1from microbit import *
2lightsOn = False
3
4while True:
5    if microphone.was_event(SoundEvent.LOUD):
6        lightsOn = not lightsOn
7        if lightsOn:
8            display.show(Image('99999:'
9                               '99999:'
10                               '99999:'
11                               '99999:'
12                               '99999'))
13        else:
14            display.clear()
15    sleep(100)

3. korak: Unaprijedi

  • Blok 'on loud sound' (na glasni zvuk) može se napraviti manje ili više osjetljivim tako da se bloku 'on start' (na početku) doda blok 'set loud sound threshold' (postavi graničnu vrijednost glasnoće). Za tiše zvukove uzmi manje brojke, a veće brojke za glasnije zvukove. Video pokazuje kako se to kodira.
  • Ako želiš promijeniti graničnu vrijednost glasnoće zvuka, u Pythonovoj naredbi microphone.set_threshold(SoundEvent.LOUD, 128) promijeni brojku 128 u neku drugu vrijednost između 0 i 255.
  • Napravi da se zajedno s paljenjem svjetla odsvira i neka melodija.
  • Uvedi zvučno upravljanje i u druge projekte, recimo u paljenje LED-ica ili servo motora spojenih na pinove micro:bita.