Skip to content

Activiteit

Warm en koud spel

Gevorderd | MakeCode, Python | Knoppen, LED scherm, Radio | Communicatie, Data types

Stap 1: Maak het

Wat is het?

Maak dit leuke spel voor twee spelers met behulp van de BBC micro:bit's radiofunctie.

Wat je gaat leren

Door dit project te maken leer je meer over netwerken, hoe informatie wordt verzonden tussen elektronische apparaten via de radio, en hoe computers informatie in verschillende gegevenstypen opslaan, zoals hoe woorden worden opgeslagen in tekenreeksen.

Zo werkt het

  • Dit is een spel voor twee personen. Een persoon verbergt een object en geeft de zoeker aanwijzingen: "warm" wanneer ze dicht bij het object zijn, “kouder” als ze verder weg gaan en “warmer” als ze dichterbij komen.
  • Meestal wordt dit spel gespeeld door de woorden ‘warm’, 'kouder' en 'warmer' te roepen, maar in deze versie van het spel worden de woorden verzonden door de radio van de ene micro:bit naar de andere en verschijnen ze op het LED-display.
  • Er zijn twee programma's, een voor de verstopper en een voor de zoeker.
  • Als eerste stelt elk programma de radiogroep op 47 in. Groepen zijn als kanalen, dus elke micro:bit die dezelfde groep gebruikt krijgt het bericht. Je kunt elk groepnummer kiezen dat je leuk vindt van 0 tot 255.
  • De verstopper drukt op knop A om het bericht ‘warmer’ te versturen, drukt op knop B om het bericht ‘kouder’ te versturen en drukt op knoppen A en B samen om het bericht ‘warm’ te versturen.
  • De micro:bit kan berichten verzenden als getallen of tekst. We gebruiken tekstberichten in dit project, dus zorg ervoor dat je radioblokken gebruikt die tekenreeksen gebruiken i.p.v. getallen of waarden.
  • Op computers is een tekenreeks een reeks karakters die letters, cijfers, symbolen en spaties kan bevatten.
  • Wanneer de micro:bit van de zoeker een radiobericht ontvangt, toont het de ontvangen tekenreeks op het LED-display. De tekenreeksen worden ook weergegeven op de micro:bit van de verstopper.

Benodigdheden

  • 2 micro:bits
  • MakeCode editor
  • Batterijpakketten (aanbevolen)

Stap 2: codeer het

Verstopper-code

1# Imports go at the top
2from microbit import *
3import radio
4radio.config(group=47)
5radio.on()
6
7while True:
8    if button_a.is_pressed() and button_b.is_pressed():
9            radio.send('HOT!')
10            display.scroll('HOT!')
11    elif button_a.is_pressed():
12        radio.send('warmer')
13        display.scroll('warmer')
14    elif button_b.is_pressed():
15        radio.send('colder')
16        display.scroll('colder')
17    sleep(100)

Zoeker-code

1# Imports go at the top
2from microbit import *
3import radio
4radio.config(group=47)
5radio.on()
6
7while True:
8    message = radio.receive()
9    if message:
10        display.scroll(message)
11    sleep(100)

Stap 3: Verbeter het

  1. Bewerk het programma zodat verschillende woorden verschijnen in plaats van 'warm', 'kouder' en 'warmer'. Je zou bijvoorbeeld de woorden kunnen gebruiken voor 'warm', 'kouder' en 'warmer' in een vreemde taal die je leert.
  2. Voeg geluidseffecten toe aan het programma.
  3. Gebruik dit spel met een timer of stappentellerprogramma om te zien hoe snel je het object hebt gevonden.