PXT: Akselerometer
Skrevet av: Julie Christina Revdahl
Introduksjon
Micro:biten har et akselerometer som merker hvilken vei vi holder micro:biten, om den ristes, er i fritt fall og lignende. Akselerasjonen måles langs tre akser: x (høyre/venstre), y (framover/bakover) og z (opp/ned). I dennne oppgaven skal vi se på akselerasjon lengs x- og y-aksen for så å vise piler i hvilken retning micro:biten heller.
Steg 1: Lage variabler
Sjekkliste
basic.forever(function () { ax = input.acceleration(Dimension.X) ay = input.acceleration(Dimension.Y) })
Steg 2: Positiv og negativ akselerasjon
Sjekkliste
På bildet under kan du se forklaring på hvilke helninger som gir positiv og negativ akselerasjon:
Steg 3: Hvor skal pila peke?
Sjekkliste
let ax = 0 let ay = 0 basic.forever(function () { ax = input.acceleration(Dimension.X) ay = input.acceleration(Dimension.Y) if (Math.abs(ax) < Math.abs(ay)) { } else { } })
let ax = 0 let ay = 0 basic.forever(function () { ax = input.acceleration(Dimension.X) ay = input.acceleration(Dimension.Y) if (Math.abs(ax) < Math.abs(ay)) { if (ay > 0) { basic.showArrow(ArrowNames.South) } else { basic.showArrow(ArrowNames.North) } } else { } })
let ax = 0 let ay = 0 basic.forever(function () { ax = input.acceleration(Dimension.X) ay = input.acceleration(Dimension.Y) if (Math.abs(ax) < Math.abs(ay)) { if (ay > 0) { basic.showArrow(ArrowNames.South) } else { basic.showArrow(ArrowNames.North) } } else { if (ax > 0) { basic.showArrow(ArrowNames.East) } else { basic.showArrow(ArrowNames.West) } } })
Test prosjektet
-
Det lastes nå ned en fil som heter
microbit-Uten-navn.hex
til datamaskinen din. Samtidig dukker det opp et vindu som sier at du må flytte denne filen til MICROBIT-disken på datamaskinen din.Nå kan du se hvilken retning micro:biten din har mest akselerasjon i når du beveger på den!
Utfordring :
Lisens: CC BY-SA 4.0
Forbedre denne siden
Funnet en feil? Kunne noe vært bedre?
Hvis ja, vennligst gi oss tilbakemelding ved å lage en sak på Github eller fiks feilen selv om du kan. Vi er takknemlige for enhver tilbakemelding!