Skip to content

Aktivnost

Kalkulator cijene energije

Napredni | MakeCode, Python | LED zaslon, Senzor osvjetljenja, Tipke | 13 Klima, Booleova logika, Division, Measurement, Money, Multiplication, Senzori, Ulaz (Input)/izlaz (Output), Varijable

1. korak: Napravi

Što je to?

Posljednji od ova tri projekta služi za prikupljanje podataka o potrošnji energije. Nauči izračunati cijenu energije i napravi tajmer koji će mjeriti koliko košta potrošnja električne energije.

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.

Uvod

Vodič za kodiranje

Što ćeš naučiti

  • Kako koristiti matematiku za preračunavanje mjernih jedinica: vate u kilovate i minute u sate
  • Kako iz izmjerene snage u vatima (W) i vremena izračunati utrošenu energiju u kilovatsatima (kWh).
  • Kako koristiti varijable za pohranu vrijednosti kako bi korisnik prije uključenja mamjestio sustav.

Kako koristiti

Prethodni projekt, Tajmer za osvjetljenje, mjerio je koliko je dugo svjetlo upaljeno. Ovo je inačica istog projekta i djeluje na sličan način, no ovdje se umjesto vremena rada žarulje izračunava i prikazuje cijena energije koju je ta žarulja potrošila.
Za to je potrebno znati tri vrijednosti:

  • Očitanje u trenutku paljenja žarulje. To je vrijednost koja je dobivena prvim projektom, Mjeračem energije osvjetljenja, a korištena je u projektu Tajmer za osvjetljenje.
  • Koliko vata ima osvjetljenje. Obično to piše na žarulji.
  • I koliko se plaća za struju, jedinična cijena za kWh.

Program pohranjuje te tri vrijednosti u varijable koje je potrebno urediti prije aktiviranja projekta.

Pomoću projekta Mjerač osvjetljenja, kao i prije, pronađi vrijednost koju ćeš pohraniti u varijablu LIGHT (Svjetlo).

Na žarulji pogledaj koliko ima vata. Sjeti se da su žarulje obično uključene u električnu mrežu i da mogu biti jako vruće pa zamoli nekog odraslog da to napravi. Pročitani broj stavi u varijablu WATTS (Vati).

Na kraju stavi cijenu za kWh u varijablu COSTPERKWH (Cijena po kWh). Možda ćeš za cijenu morati pitati nekog odraslog ili pronađi svog dobavljača električne enrgije pa na njegovoj web stranici potraži jediničnu cijenu.

Flashaj program na micro:bit i priključi komplet baterija. Postavi tajmer uz neki izvor svjetla, a micro:bit će iz pohranjenih vrijednosti o intenzitetu svjetla, jačini žarulje u vatima i cijeni električne energije zajedno s očitanjima ugrađenog senzora svjetla i procesorskog vremena izračunati cijenu električne energije utrošene u nekom vremenu.

Očitavanje možeš raditi u isto vrijeme svakoga dana ili svakoga tjedna pritiskom na tipku B. Poništava se pritiskom tipke Reset na stražnjoj strani micro:bita i još jednim pritiskom tipke B da se mjerač postavi na nulu.

Uzmi u obzir da je to izračun za samo jednu žarulju pa možeš izračunati cijenu za cijelu zgradu i cijelu godinu.
Sada, kada imaš podatke o potrošnji energije, kako misliš da se može utjecati na ljude da mijenjaju navike, štede energiju i novac te tako pomoći u borbi protiv klimatskih promjena?

Kako to radi

  • Program pomoću micto:bitova senzora svjetlosti određuje koliko će dugo svjetlo biti uključeno.
  • Količina utrošene energije izračunava se množenjem jačine žarulje i vremena. Mjeri se u kilovatsatima (kWh). Snaga žarulje se obično izražava u vatima, a ne u kilovatima, zato program preračunava vate u kilovate tako da ih dijeli s 1000:
    vati ÷ 1000 = kilovati.
    Na primjer, žarulja od 60 vata ima snagu 0.06 kilovata:
    60 W ÷ 1000 = 0.06 kW.

  • Program preračunava i jedinice vremena. Sekunde preračunava u sate tako da ih podijeli sa 60. Zato:
    600 minuta ÷ 60 = 10 sati.
  • Za izračun cijene energije potrošene u nekom vremenu, program množi energiju u kilovatsatima s jediničnom cijenom po kilovatsatu.
  • Ako energija košta £0.16p po kWh, tada će žarulja od 60 W koja gori 10 sati stajati deset penija:
    0.6 kWh × 16p = 9.6p
    .

Š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 = 114  # <<< Enter your 'measured' reading here
5WATTS = 1000  # <<< Enter your bulb wattage here
6COSTPERKWH = 0.18  # <<< Enter unit electricity cost here
7
8HYSTERESIS = 8
9LIGHT -= (HYSTERESIS/2)
10DARK = LIGHT - HYSTERESIS
11ON_IMAGE = Image('99999:99999:99999:99999:99999')
12OFF_IMAGE = Image('00000:00000:00900:00000:00000')
13timing = False
14start_time = 0
15total_time = 0
16reading = display.read_light_level()
17sleep(1000)
18
19def calc_cost(m):
20    # Calculate cost of electricity for this number of mins
21    kw = WATTS / 1000.0  # answer as a decimal
22    hours = m / 60.0  # answer as a decimal
23    kwh = kw * hours
24    cost = kwh * COSTPERKWH
25    return cost  # as pounds and pence
26    
27def show_number(n):
28    # Scroll number as 3 decimal places
29    display.scroll("%.3f" % n)
30
31while True:
32    reading = display.read_light_level()
33    if reading < DARK:
34        if timing:
35            # it has just gone dark, update timer for 'on' time
36            end_time = running_time()
37            total_time += (end_time - start_time)
38            timing = False
39        
40    elif reading >= LIGHT:
41        if not timing:
42            # it has just gone light, start the timer
43            start_time = running_time()
44            timing = True
45        
46    if button_b.was_pressed():
47        # calculate and display cumulative cost in pounds and pence
48        minutes = total_time / 60000
49        if timing:
50            # adjust live for current ON time
51            minutes += (running_time() - start_time) / 60000
52        display.clear()
53        show_number(calc_cost(minutes))
54        sleep(500)
55
56    # update the display with the ON/OFF state
57    if timing:
58        display.show(ON_IMAGE)
59    else:
60        display.show(OFF_IMAGE)
61    sleep(1000)
62
63        

3. korak: Unaprijedi

  • Uzmi više micro:bitova kako bi cijenu mjerio na više mjesta.
  • Pomoću radija pošalji podatke drugom micro:bitu i daljinski resetiraj tajmer.