Skip to content

Activiteit

micro:bit huisdier

Gevorderd | MakeCode, Python | Aanraak logo, Acceleratiemeter, LED scherm, Luidspreker | Herhalingen (iteratie), Selectie, Variabelen

Stap 1: Maak het

Wat is het?

Codeer je eigen elektronische huisdier en pas het aan om het van jezelf te maken. De ingebouwde luidspreker van de micro:bit maakt het nog leuker met zijn expressieve geluiden.

Inleiding

Codeer instructies

Wat je gaat leren

  • Hoe variabelen en lussen te gebruiken om een eenvoudige timer te maken.
  • Hoe je selectie kunt gebruiken om verschillende gebeurtenissen op verschillende tijdstippen te laten plaatsvinden.
  • Een trucje om het te laten lijken alsof een micro:bit programma niet meer werkt!

Zo werkt het

  • Elektronische huisdieren werden in de jaren negentig in Japan uitgevonden en werden al snel een populair speelgoed over de hele wereld.
  • Het zijn kleine gadgets die je aan je sleutelhanger kunt hangen. Een wezen wordt getoond op een eenvoudig scherm. Je moet er voor zorgen, ermee omgaan door op knoppen te drukken en eenvoudige spelletjes te spelen. Als je het geen aandacht geeft en het niet voedt of schoonmaakt, zal het verdrietig worden, zich misdragen of onwel worden.
  • De code gebruikt een variabele genaamd timer om bij te houden hoe lang je huisdier is genegeerd. Een voor altijd lus voegt elke seconde 1 (1000 milliseconden) toe aan de timer.
  • Als timer 20 bereikt, heeft je huisdier een droevig gezicht op het LED-scherm en laat een droevig geluid horen op de ingebouwde luidsprekers uitgang.
  • Als het 30 bereikt, valt je huisdier in slaap.
  • Als het de 40 bereikt, speelt je huisdier een mysterieus geluid en sterft. De code gebruikt het blok 'ingebouwde luidspreker uit' om te voorkomen dat andere geluiden uit de luidspreker komen. Een 'terwijl waar' lus zorgt ervoor dat alleen het schedelpictogram op het LED display wordt weergegeven.
  • Je huisdier blijft echter in leven en gelukkig als je het aandacht geeft! Streel het logo om het vrolijk te maken, of schud het om het te laten giechelen. Hierdoor wordt de timer weer op 0 gezet.
  • Als je huisdier sterft, kun je het weer tot leven wekken door op de resetknop op de achterkant van je micro:bit te drukken.

Benodigdheden

  • V2 micro:bit met geluid (of MakeCode-simulator)
  • MakeCode of Python editor
  • batterijpakket (optioneel)

Step 2: Codeer het

1from microbit import *
2import audio
3
4timer = 0
5display.show(Image(
6    "00000:"
7    "09090:"
8    "00000:"
9    "09990:"
10    "00000"))
11audio.play(Sound.HELLO)
12
13while True:
14    if pin_logo.is_touched():
15        timer = 0
16        display.show(Image.HAPPY)
17        audio.play(Sound.HAPPY)
18    elif accelerometer.was_gesture('shake'):
19        timer = 0
20        display.show(Image.SURPRISED)
21        audio.play(Sound.GIGGLE)
22    else:
23        sleep(500)
24        timer += 0.5
25        # sleep for half a second only to make it react more quickly to logo touch & shake
26        
27    if timer == 20:
28        display.show(Image.SAD)
29        audio.play(Sound.SAD)
30    elif timer == 30:
31        display.show(Image.ASLEEP)
32        audio.play(Sound.YAWN)
33    elif timer == 40:
34        display.show(Image.SKULL)
35        audio.play(Sound.MYSTERIOUS)
36        break
37    

Stap 3: Verbeter het

  • Experimenteer met verschillende tijden voor elke fase van zijn leven.
  • Maak je eigen gezichtsuitdrukkingen met behulp van het LED display van de micro:bit.
  • Voeg meer variabelen toe om bij te houden hoe hongerig of vies je huisdier is, en voeg nieuwe interacties toe om jouw huisdier te voeren of schoon te maken, bijvoorbeeld door op knoppen te drukken of een hard geluid te maken dat wordt opgevangen door de nieuwe micro:bit's ingebouwde microfoon.