Level 3Python: Retninger

Skrevet av: Oversatt fra microbit-micropython.readthedocs.io

Oversatt av: Øistein Søvik

Kurs: Microbit
Tema: Elektronikk, Tekstbasert
Fag: Programmering, Teknologi
Klassetrinn: 8.-10. klasse

Introduksjon

Visste du at micro:bit'en inneholder et kompass? Dersom du noen gang skal lage en værstasjon kan du bestemme vindretningen, eller navigere deg igjennom Amazonas.

Kompass

Et bruksområde for kompasset er å fortelle deg hvilken retning som er Nord:

from microbit import *

compass.calibrate()

while True:
    needle = ((15 - compass.heading()) // 30) % 12
    display.show(Image.ALL_CLOCKS[needle])

Merk

Du må kalibrere kompasset før det kan gjøre målinger. Dersom du glemmer å gjøre dette vil kompasset bare vise tull. calibration metoden kjører et kjekt lite programm som hjelper enheten å finne ut hvor den er i forhold til jordens magnetfelt.

For å kalibrere kompasset, snu rundt på micro:bit'en til en sirkel av pixler er tegnet på kanten av displayet.

I resten av oppgaven skal vi prøve å bryte ned hva koden ovenfor gjør, da det kan være vanskelig å forstå detaljene med en gang.

checkActivity checklist

Viser de fire himmelretningene

Vi skal nå se nærmere på hva compass.calibrate() gjør.

from microbit import *

compass.calibrate()

while True:
    display.scroll(str(compass.calibrate()))
Hint

Funksjonen compass.calibrate() viser altså hvor mange grader unna Nord vi står. Med andre ord spytter funksjonen ut ett tall slik at 0 ≤ compass.calibrate() ≤ 360.

from microbit import *

display.show(Image.ALL_CLOCKS[A])
Hint

Som du kanskje har funnet ut er ALL_CLOCKS en liste som inneholder 12 ulike bilder, disse kan velges fra og med 0 til og med 11.

from microbit import *

display.show(((15 - A // 30) % 12)

Gratulererer. Dersom du har klart å løse oppgavene ovenfor er du klar til å gå ut og utforske verden med kompasset ditt!

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!