6.8 Micro:Bit: Versnellingssensor

De Micro:Bit heeft een ingebouwde versnellingssensor (zie  ook: https://microbit.org/nl/guide/features/#accel) . Dat is makkelijk, hoef je er geen aan te sluiten. Met zo’n versnellingssensor kun je bijvoorbeeld meten of de Micro:bit wordt geschud. 

Met deze versnellingssensor kunnen we een grafiek laten maken van de versnelling van de Micro:Bit, zoals hieronder. Hoe hoger de waarde, hoe sterker de beweging.

Hieronder laten we zien hoe je dat kunt doen met de virtuele Micro:bit die bij de programmeeromgeving zit.

Stap 1 Kopieer de volgende JavaScript code 

Om Javascript te kunnen invoeren, kun je bovenaan de Micro:bit programmeeromgeving op de knop {} JavaScript klikken.

let x = 0
let y = 0
let z = 0
let versnelling  = 0
basic.forever(() => {
   x = input.acceleration(Dimension.X)
   y = input.acceleration(Dimension.Y)
   z = input.acceleration(Dimension.Z)
   versnelling = Math.sqrt(x ** 2 + y ** 2 + z ** 2)
   led.plotBarGraph(versnelling, 2000)
})

Helaas moet dit in JavaScript, want een aantal functies zijn alleen beschikbaar als functie in JavaScript en niet als blok in het blokken programma. Het gaat specifiek om Math.sqrt(), voor het berekenen van de wortel. Het programma zal er vervolgens zo uit zien (klik op ‘Blokken’ bovenaan de programmeeromgeving).

Bij het gebruik van JavaScript moeten de variabelen worden geïnitialiseerd. Daarom staat er bijvoorbeeld: let versnelling = 0.

We kunnen de versnelling van de Micro:Bit berekenen met de stelling van Pythagoras. Aangezien we in een 3D omgeving leven (x, y en z), is de formule als volgt: 
Stap 2 Toon de grafiek

Nu maken we van de versnelling een grafiek, zodat we kunnen zien wat er gebeurt als we de Micro:Bit gaan bewegen. In de Micro:Bit werkomgeving is de volgende knop zichtbaar geworden:

Druk op de knop en dan kan je de grafiek zien. Vergeet niet om op play te drukken onder de virtuele Micro:Bit. Laat de virtuele Micro:Bit nu bewegen met je muis om te zien wat er gebeurt in de grafiek. 

Het valt op dat de grafiek bij de 1023 begint. Dit komt door de Z. De zwaartekracht trekt altijd aan de Micro:Bit, hierdoor is de standaardwaarde van Z: -1023. Met het bewegen van de virtuele Micro:Bit verander je vooral de X en Y waarden. Als je hem in het echt gaat gebruiken zal de standaard lijn nog steeds rond de 1023 liggen, maar zal de grafiek ook onder de 1023 komen.

Overigens de maximale versnelling die je kunt meten met de Micro:bit is: 

Bron:
http://microbit-challenges.readthedocs.io/en/latest/tutorials/accelerometer.html#ideas-for-projects-with-the-accelerometer

In de volgende paragrafen van dit hoofdstuk ga je aan de gang met de echte Micro:bit.

6.8.1 Stappenteller met de Micro:bit
6.8.2 Bewegingsdetectie met de Micro:bit