← Back to CoursesMicro:bit: De Clubhut
MISSIE 7★★★★

De Clubhut · micro:bit

Desneaker-challenge

Wat bouw je? Een stappenteller voor aan je enkel: elke stap telt, met B start je een nieuwe ronde, bij 20 stappen speel je een level vrij.
Brecht Corbeel · schoolium.me
MISSIE 7

Noor heeft nieuwe sneakers. "Hiermee loop ik in één speeltijd meer stappen dan jullie samen," zegt ze. Sami lacht. "Bewijs het."

Een stappenteller kopen? Te duur. Maar de micro:bit voelt al schudden. En wat is een stap anders dan een klein schokje?

Jouw missie: bouw de stappenteller voor de grote sneaker-challenge.

Level 7 ★★★★Tijd 50 minVoor 11-13 jaar

Zo ziet het eruit als het af is

Echte schermafbeelding uit de simulator van MakeCode.

Skills die je vrijspeelt

  • Een teller maken met 'verander ... met 1'
  • Een teller terug op 0 zetten
  • Een doel instellen: bij 20 gebeurt er iets
  • Een geluidseffect afspelen (micro:bit V2)

Je uitrusting

  • MakeCode, nieuw project 'stappenteller'
  • Een micro:bit met batterijpakje
  • Een sok, haarelastiek of plakband om hem aan je enkel te bevestigen

Hoe telt een stappenteller?

Bij elke stap krijgt je been een schokje als je hiel de grond raakt. De versnellingsmeter meet dat, in milli-g (mg). Stilstaan is ongeveer 1000 mg: dat is de zwaartekracht. Een stap geeft een piek die veel hoger gaat.

'Bij schudden' reageert op zo'n piek. Een echte stappenteller filtert nog slimmer, want ook in de auto schudt je been.

Stap voor stap

1

Tel bij elke schok

Variabelen
Maak een variabele stappen. Zet in bij schudden het blok verander stappen met 1. Elke schok telt er één bij.
Jouw blokken in MakeCode
jouw blokken
Toon de code (JavaScript)
let stappen = 0
input.onGesture(Gesture.Shake, function () {
    stappen += 1
})
Tip. 'verander met 1' telt erbij. Met -1 tel je af.
2

Toon de score

Basis
Zet toon nummer stappen in de hele tijd. Zo zie je altijd je stand.
Jouw blokken in MakeCode
jouw blokken
De simulator
simulator
Toon de code (JavaScript)
let stappen = 0
input.onGesture(Gesture.Shake, function () {
    stappen += 1
})
basic.forever(function () {
    basic.showNumber(stappen)
})
Gelukt als ... Klik drie keer op SHAKE: er staat 3.
3

Nieuwe ronde

Variabelen
Voor elke ronde van de challenge moet de teller terug naar nul. Maak wanneer knop B wordt ingedrukt met stel stappen in op 0 en toon even een vinkje.
Jouw blokken in MakeCode
jouw blokken
Toon de code (JavaScript)
let stappen = 0
input.onGesture(Gesture.Shake, function () {
    stappen += 1
})
basic.forever(function () {
    basic.showNumber(stappen)
})
input.onButtonPressed(Button.B, function () {
    stappen = 0
    basic.showIcon(IconNames.Yes)
    basic.pause(500)
})
4

Level vrijgespeeld bij 20

Logisch
Zet in bij schudden, onder het tellen, een als ... dan. Is stappen = 20, dan speel je het geluid giechelen uit Muziek en toon je een lachend gezicht. Level vrijgespeeld!
Jouw blokken in MakeCode
jouw blokken
Toon de code (JavaScript)
let stappen = 0
input.onGesture(Gesture.Shake, function () {
    stappen += 1
    if (stappen == 20) {
        music.play(music.builtinPlayableSoundEffect(soundExpression.giggle), music.PlaybackMode.InBackground)
        basic.showIcon(IconNames.Happy)
    }
})
basic.forever(function () {
    basic.showNumber(stappen)
})
input.onButtonPressed(Button.B, function () {
    stappen = 0
    basic.showIcon(IconNames.Yes)
    basic.pause(500)
})
Werkt het niet? Hoor je niets? Geluidseffecten werken op de micro:bit V2 (met luidspreker), of met een koptelefoon aan pin 0 en GND.
5

Test in de simulator

Simulator
Klik vijf keer op SHAKE en kijk of de teller meeloopt. Druk op B voor een nieuwe ronde.
De simulator
simulator
Toon de code (JavaScript)
let stappen = 0
input.onGesture(Gesture.Shake, function () {
    stappen += 1
    if (stappen == 20) {
        music.play(music.builtinPlayableSoundEffect(soundExpression.giggle), music.PlaybackMode.InBackground)
        basic.showIcon(IconNames.Happy)
    }
})
basic.forever(function () {
    basic.showNumber(stappen)
})
input.onButtonPressed(Button.B, function () {
    stappen = 0
    basic.showIcon(IconNames.Yes)
    basic.pause(500)
})

Testen en op je micro:bit

Eerst in de simulator

Links in de editor staat de simulator: een micro:bit op je scherm. Telkens je iets verandert, start hij opnieuw. Klik op A en B, of op SHAKE om te schudden. Sensoren krijgen een schuifje of bolletje waarmee je zelf licht, warmte of richting kiest.

Dan op je echte micro:bit

Steek de micro:bit met de USB-kabel in de computer en klik op Downloaden. Heb je hem gekoppeld (basisboekje), dan gaat je programma er meteen op. Anders krijg je een bestand dat eindigt op .hex: sleep het naar de schijf MICROBIT. Het gele lampje achteraan knippert. Stopt het? Dan draait je code.

Kies je pad

Waar bevestig je de micro:bit voor de challenge?

Er is geen fout antwoord. Klik op een keuze en lees de gevolgen. Bespreek ze met je club.

Bonuslevels

Bonuslevel 1
Tel tot 100 en toon dan een beker. Hoeveel stappen zet jij in één speeltijd?
Bonuslevel 2
Spaar de batterij: toon de stand alleen als je op A drukt, in plaats van de hele tijd.
Eindbaas-level
Probeer bij 3g in plaats van bij schudden. Telt je stappenteller dan nauwkeuriger?

Eindbaas-vragen

Niet opzoeken: denk, test, en schrijf je antwoord op.

Missie geslaagd als ...

Woorden voor je codeboek

tellereen variabele die telkens één bij krijgt
verander ... mettelt iets bij een variabele (of trekt af)
milli-g (mg)eenheid van versnelling; stilstaan is ongeveer 1000 mg
micro:bit V2nieuwere micro:bit met luidspreker, microfoon en aanraakbaar logo
Download als PDFGewone A4: één pagina per blad. A5: boekjesformaat. Vouw-A4: dubbelzijdig, korte kant omslaan.