5: Movement

De micro:bit heeft een accelerometer. Dat is een versnellingsmeter waarmee je beweging kunt detecteren. In verschillende gsm's, smartphones en sommige iPods zit een versnellingsmeter die wordt gebruikt om te registreren wanneer de gebruiker ermee schudt, zodat bijvoorbeeld de afspeellijst wordt geshuffeld. Ook in de Wii remote en de PlayStation 3 controller zit een versnellingsmeter om bewegingen van de gebruiker waar te nemen.

De accelerometer meet langs drie assen:

Voor elke as is er een methode om de accelerometer uit te lezen. De waarde 0 is de basiswaarde.

Zet onderstaand script op de micro:bit en probeer het uit. Als de micro:bit precies waterpas wordt gehouden, zie je drie puntjes (een streepje) in het midden van het display. Beweeg de accelerometer van links naar rechts en andersom en je ziet dat er een L en een R tevoorschijn komen. Probeer deze code.

from microbit import *

while True:
    reading = accelerometer.get_x()
    if reading > 20:
        display.show("R")
    elif reading < -20:
        display.show("L")
    else:
        display.show("-")

De y en z as kun je op dezelfde manier uitlezen.Het apparaat moet constant die waardes uitlezen en daarom wordt er een eindeloze lus gebruikt. De waarde van een as wordt in een variabele gezet. In bovenstaand voorbeeld stop je de waarde van de x as dus in de variabele reading.

Op deze manier kan je telefoon bijvoorbeeld bepalen hoe een afbeelding getoond moet worden, rechtop met de korte zijdes boven en onder of met de lange zijdes boven en onder.