1. korak: Napravi
Što je to?
Odredi koliko dugo gori svjetlo i na taj način prati potrošnju energije. Ovim projektom možeš koristiti u meteorološkoj postaji za mjerenje trajanja sunčanog vremena.
Ovaj projekt spada u seriju projekata koji potiču aktivnosti za rješavanje problema i izradu prototipova u korištenja tehnologije pri izradi rješenja za izazove Globalnih ciljeva održivog razvoja.
Što ćeš naučiti
- kako pratiti zbivanja u okolini koristeći senzore i kôd
- smjestiti zapisivač podataka tako da može bilježiti pouzdane podatke
- prikupljati i uspoređivati podatke kroz neko vrijeme kako bi uočio obrasce u potrošnji energije
- protumačiti i analizirati podatke ne bi li potaknuo promjene ponašanja
- kako korisnik može izmijeniti varijable i namjestiti sustav prije korištenja
Kako koristiti
- Prvo na temelju projekta Mjerač osvjetljenja utvrdi vrijednosti kod upaljenog i ugašenog svjetla. Pazi da to radiš na istom mjestu i pri istim svjetlosnim uvjetima u kojima će se nalaziti micro:bit za mjerenje i pazi da dnevno svjetlo ne stvori lažnu informaciju paljenja svjetla.
- Vrijednost očitanu za upaljeno svjetlo unesi u kôd tamo gdje se postavlja vrijednost varijable LIGHT (svjetlo). Mi smo stavili brojku 100, no vjerojatno ćeš to promijeniti prije flashanja kôda na micro:bit.
- Prikopčaj komplet baterija i smjesti micro:bit pod svjetiljku koju ćeš mjeriti. Dok je svjetiljka ugašena, na zaslonu bi trebala biti točka, a kada se svjetiljka upali, upali se i zaslon. Ako to ne radi, možda bi trebalo projektom Mjerač osvjetljenja ponovo pronaći razinu svjetlosti upaljene svjetiljke ili treba pomaknuti micro:bit
- Micro:bit će nastaviti mjeriti vrijeme, a pritiskom tipke B pokazat će koliko je minuta svjetlo gorjelo.
Kako to radi
- Program koristi Booleovu varijablu vrijeme kojom se upravlja izvođenjem. Booleove varijable mogu imati samo dvije vrijednosti: točno ili netočno.
- Ako je očitanje svjetlosti iznad postavljene razine, tajmer se pokreće i uključuje LED zaslon. Ako je ispod te razine, tajmer se zaustavlja, a na zaslonu se pojavljuje točka.
- Ovaj se projekt koristi histerezom za sprečavanje prečestog uključivanja/isključivanja uslijed variranja razine svjetlosti oko granične vrijednosti. Ona stvara širi pojas oko granične vrijednosti, a cijeli taj prag treba prijeći prije nego što se tajmer uključi/isključi.
- Histereza je česta značajka kontrolnih sustava koji se služe senzorima, primjerice u sustavima grijanja s termostatom. Kada postaviš termostat na željenu temperaturu, ne želiš da se sustav stalno uključuje i isključuje čim se temperatura neznatno promijeni. Histereza to sprečava.
Što ti treba
- micro:bit
- Uređivač MakeCode ili Python
- komplet baterija (preporučeno)
2. korak: Kodiraj
1from microbit import *
2display.show('L')
3
4LIGHT = 100 # <<< Enter your 'measured' reading here
5
6HYSTERESIS = 8
7LIGHT -= (HYSTERESIS/2)
8DARK = LIGHT - HYSTERESIS
9ON_IMAGE = Image('99999:99999:99999:99999:99999')
10OFF_IMAGE = Image('00000:00000:00900:00000:00000')
11timing = False
12start_time = 0
13total_time = 0
14reading = display.read_light_level()
15sleep(1000)
16
17def show_number(n):
18 # Make number display the same as MakeCode
19 if len(str(n)) == 1:
20 display.show(n)
21 else:
22 display.scroll(n)
23
24while True:
25 reading = display.read_light_level()
26 if reading < DARK:
27 if timing:
28 # it has just gone dark, update timer for 'on' time
29 end_time = running_time()
30 total_time += (end_time - start_time)
31 timing = False
32
33 elif reading >= LIGHT:
34 if not timing:
35 # it has just gone light, start the timer
36 start_time = running_time()
37 timing = True
38
39 if button_b.was_pressed():
40 # calculate and display cumulative time in minutes
41 minutes = total_time / 60000
42 if timing:
43 # adjust live for current ON time
44 minutes += (running_time() - start_time) / 60000
45 display.clear()
46 show_number(round(minutes)) # whole numbers only
47 sleep(500)
48
49 # update the display with the ON/OFF state
50 if timing:
51 display.show(ON_IMAGE)
52 else:
53 display.show(OFF_IMAGE)
54 sleep(1000)
55
56
3. korak: Unaprijedi
- Promijeni prikaz na LED zaslonu kako bi baterije dulje trajale ili smanji osvjetljenje na zaslonu.
- Izmjereno vrijeme upotrijebi za izračun potrošnje električne energije i koliko bi to iznosilo. Detalji su navedeni u projektu Kalkulator troškova za energiju
- Isti kôd iskoristi za mjerenje sati sunčanog vremena. Iskoristi projekt Mjerač svjetla za izračun razine svjetla kada sunce sja na micro:bit i kada je oblačno. Bilo bi dobro micro:bit smjestiti u neku kutiju s prozirnim poklopcem koji raspršuje svjetlo, a kutija štiti micro:bit od kiše, to može biti i plastična kutija za hranu.
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.