Med det digitala kompass (magnetometer) som finns på micro:bit kan den känna av magnetiska krafter som var norden ligger eller när en vanlig magnet kommer nära.
I kategorin Input finns kompassriktning-blocket. Den ger oss ett värde från 0 till 359 vilket står för hur många grader micro:bit är roterade jämfört med var magnetiska norden ligger. (Läs mer på wikipedia om skillnaden mellan nordpolen och magnetiska fältet.)
Kalibrering
När micro:bit startar med ett program som använder sig av kompassen behövs det kalibreras. Först visas texten ”Draw a circle” på skärmen. Efter det ska du rotera runt micro:bit så att skärmen har pekat en hel cirkel runt åt alla väderstreck. För varje riktning som är kalibrerad tänds en pixel, som alla tillsammans ska forma en cirkel på skärmen. Då visas en glad gubbe och är kalibreringen färdigt. Nu körs ditt program igång. Nästa gång du kör programmet behöver du kanske inte göra detigen, om micro:bit kommer ihåg kalibreringen.
Testa värden
Följande program är ett enkelt sätt att testa vilka värden vi får. Tänk på att det tar lite tid att visa siffran, så det uppdateras inte så snabbt.
basic.forever(() => { basic.showNumber(input.compassHeading()) })
Digital kompass
Vi kan bygga ett digitalt kompass som visar kompassrosens bokstäver baserad på sensorn. Då delar vi upp 360 grader (hela cirkeln runt) i fyra delar, och beroende på i vilken del vi hamnar visar vi olika bokstäver. Norra delen är olika från dom andra eftersom det ligger vid dom högsta och lägsta värden. Så där blir villkoret en kombination med hjälp av ”eller”.
basic.forever(() => { if(input.compassHeading()> 315 || input.compassHeading()< 45){ basic.showString("N") }elseif(input.compassHeading()< 135){ basic.showString("O") }elseif(input.compassHeading()< 225){ basic.showString("S") }else{ basic.showString("V") } })
Känna kraften
Under Mer i Input kategorin finns ett block som ger oss ett mätvärde på magnetiska kraften i olika riktningar. Enheten för att mäta magnetiska krafter är Tesla (T). Eftersom 1 Tesla är ett riktigt starkt magnetfält ger micro:bit värden i mikrotesla (µT).
Några exempel:
- 31 µT Jordens magnetfält på ekvatorn
- 5 mT Vanlig kylskåpsmagnet
- 1,5 till 3 T MRI kamera i sjukhuset (Se experiment på youtube)
Vi kan göra ett litet program för att testa nära till olika magneter. Du kan experimentera med olika riktningar (x, y, z, och ”Styrka” som kombinerar alla). Micro:bit kommer visa en graf baserad på hur stor kraft den mäter, med som högst 5000 µT.
basic.forever(() => { led.plotBarGraph( input.magneticForce(Dimension.X), 5000 ) })