Microbit kasse

Test din reaktionstid med en microbit

clock 60 min
user 7. – 9. klasse
Middel
Test din reaktionstid ved at lave opgaverne i lektionen. For at gøre det, skal du lave et program i MakeCode og bruge en microbit. Du skal lave 2 programmer. Det første er et spil og det næste viser præcist hvor hurtig din reaktionstid er.
Materialeliste til forsøg
Det her skal du bruge:

Introduktion

Når du er færdig med leksionen:

  • Har du lært om milli og mikro sekunder
  • Ved du hvordan hvad tilfældighed er og hvordan du kan bruge det
  • Kender du din reaktionstid
  • Kan du bruge kodeblokke som "pause", "variabler" og "vent"

 

Klik her for at få hjælp til at finde kodeblokke

Få startet godt op

Først skal micro:bitten og computeren forbindes (paires).

For at gøre det, kan du vælge mellem at se videoen, eller følge vores step by step guide nedenfor:

 

Step 1

Forbind din micro:bit til din computer med USB-kablet.

 

Step 2

Åben Google Chrome browseren, for at være sikker på, at det hele virker som i denne guide.

Gå ind på https://makecode.microbit.org/beta

Tryk "nyt projekt" og kald dit projekt "Datalogning af temperatur".

 

Step 3

Slet kodeblokken "for altid", så du kun har "når programmet starter". Det gøres ved at trække den ud til venstre.

Slet for altid

 

Step 4

Indsæt "Vis ikon" og vælg dit eget ikon som vist på billedet.

ikonBillede

 

Step 5

Overfør programmet til din micro:bit ved at trykke på knappen med de 3 prikker:

parEnhed

Tryk derefter "par enhed" 2 gange.

Nu vil din micro:bit blive vist, som på følgende billede. Du skal nu connecte din micro:bit. Det gøres ved at trykke på BBC micro:bit og trykke connect.

connectMicrobit

Tryk på den micro:bit der skal connectes og tryk derefter "connect".

Tryk paa connect

 

Step 6
Hent nu din kode ved at trykke "Hent".

hent kode 2

 

Step 7

Nu bør  du kunne se dit ikon på din micro:bit. Hvis den ikke er der eller du ikke kunne connecte din micro:bit, så spørg en sidemakker og eller din lærer om hjælp.

Nu har du sat din micro:bit op, følg den næste guide for at lave dit reaktionstidspil

Klik her for at få hjælp til at finde kodeblokke

Se videoen herunder, eller følg step by step guiden under videoen

Lav et spil med reaktionstid

Introduktion

I denne guide skal du læse "læs" stykkerne og selv lave det der står under "step".

Du skal i denne step by step guide lave dit eget spil. Spillet handler om at være den første til at trykke på sin knap ("A" eller "B"), når et kryds bliver vist på micro:bitten.

  • Så f.eks. har Anne knap "A" og Peter har knap "B".
  • Når krydset bliver vist trykker de begge så hurtigt de kan.
  • Den der er hurtigtst til at trykke, får et point. Point tæller man selv på et stykke papir.

 

LÆS: Pause funktion med millisekunder og mikrosekunder

I dette forløb skal du bruge en funktion, der laver en pause og en ventetid. Tiden i pausefunktionen er ikke angivet i sekunder, men i millisekunder(ms), som vist på billedet.

Pause

Når der f.eks. står, at det er en pause på 1000 millisekunder(ms), så betyder det, at der er en pause på 1 sekund. 2000 millisekunder(ms) ville så være 2 sekunder osv. Du skal altså gange den tid du vil holde pause i sekunder med 1000, for at få tiden i millisekunder.

 

Step 1

Vi skal lave et program, der når micro:bitten starter, først pauser koden i mellem 1-10 sekunder (tilfældigt), hvorefter et ikon (eks. et kryds) vises på micro:bitton.

Ny pause

 

LÆS: Tilfældig værdi

Da vi skal lave et spil, hvor vi skal se hvem, der har den bedste reaktionstid, så skal det være tilfældigt hvornår krydset vises, så man ikke kan forudse, hvornår man skal trykke på knappen.

Derfor bruger vi en funktion fra MakeCode, der tager en tilfældig værdi i millisekunder fra 0-10000. Det svarer til en tilfældig tid på 0-10 sekunder.

Markeret ny pause

Her kan du læse mere om tilfældighed

 

Step 2

Når der trykkes på knap “A”, så skal LED’erne vise et 1-tal, når der trykkes på knap “B”, så skal LED’erne vise et 2-tal.

1mod1 opdateret

 

Step 3

Sæt en “vent” funktion ind efter 1-tallet eller 2-tallet er blevet vist med LED’erne.
ventetiden skal være på 3 sekunder:

ventogTal

 

LÆS: Vent funktionen

Denne gang skal du bruge "vent" og ikke "pause"

vent 1000ms

Det dog ikke længere målt i millisekunder, men i mikrosekunder. Her vil 1 millisekund svare til 1000 mikrosekunder og 1 sekund ville derfor svare til 1.000.000 mikrosekunder, altså én million mikrosekunder.

Funktionerne bruges for at have kontrol over, hvor lange pauser man holder i sit program. F.eks. hvis man vil have noget til at tage et bestemt stykke tid, såsom at få en lysdiode til at lyse i 3 sekunder.

 

Step 4

Hvorfor skal der bruges vent og ikke pause?

Det er nu din opgave at teste hvorfor der skal bruges vent og ikke pause.
Undersøg dette ved at bruge pause i stedet for vent og se hvad forskellen er, når du bruger programmet.

 

Step 5

Du har nu lavet et program, hvor du kan dyste imod en af dine venner i hvem, der har den hurtigste reaktionstid.
Find en ven og spil imod bedst af 5, så du kan finde ud af hvem der har den bedste reaktionstid.

 

Step 6 - Ekstraopgave

Er du en af de hurtige i klassen kan du også lave denne opgave
Brug en sensor på micro:bit’en til at genstarte programmet i stedet for, at du selv skal genstarte programmet hver gang.

 

Nu skal du programmere dit eget program til at måle din reaktionstid, løs nedenstående opgaver.

Der er 2 forskellige niveauer. Start med opgave 1 og derefter lav opgave 2.

Opgaver

Har du en hurtigere reaktionstid end gennemsnittet?

Den gennemsnitlige reaktionstid for et menneske er på mellem 150-250 ms, hvor hurtig er du?

Lav opgaven og test din reaktionstid - det er en god ide at lave opgaven i et nyt projekt.

Opgave 1

Lav en timer:

a) Du skal lave en kode, så når man trykker på “A”-knappen, er der først en kort pause på 1-10 sekunder (tilfældigt - se billedet nedenfor).

Markeret ny pause

b) Efter pausen skal et ikon (eks. et kryds) vises på skærmen.
Ikonet viser hvornår reaktionstiden begynder at blive målt.

c) Begynd at mål reaktionstiden.

Lav nu en ny variabel og kald den “start”.
I variablen vil vi gemme den tid der er gået, siden micro:bitten blev tændt og indtil nu.
Den tid kaldes "køretid" (se billedet nedenfor).

*Hint, læs dette leksikon om variabler, for at finde ud af hvad det betyder.

saet start til koeretid

 

Find din reaktionstid:

d) Lav en kode, så når man trykker på “B”-knappen, bliver tiden der er gået fra micro:bitten blev tændt og til vi trykkede på "B" knappen, gemt i en variabel vi kalder "slut"

saet start til koeretid minus start

e) Du skal nu finde ud af hvor lang tid der er gået fra at ikonet bliver vist og til du trykkede på "B" knappen, husk at:

  • I variablen "start" har vi gemt hvor lang tid der var gået fra micro:bitten blev tændt og til ikonet blev vist (eks. 5 sekunder).
  • I variablen "slut", har vi gemt hvor lang tid der var gået fra micro:bitten blev tændt og til vi trykkede på "B" knappen (eks. 7 sekunder).

Ved at trække "start" tiden (eks. 5 sekunder), fra "slut" tiden (eks. 7 sekunder), finder vi den tid der er gået mellem dem, dvs. reaktionstiden, eks.:

  • "slut" (7 sekunder) - "start" (5 sekunder) = reaktionstid (2 sekunder).

Den tid kan vi gemme i en variabel vi kalder "reaktionstid".

f) Tilføj en "vis nummer" blok til koden, og få reaktionstiden vist på micro:bitten.

vis nummer reaktionstid

 

Få reaktionstiden vist i sekunder:

g) Din reaktionstid bliver lige nu vist i millisekunder (ms), hvordan kan vi vise det i sekunder?

Husk at der går 1000 millisekunder, på 1 sekund.

 

Lav dine egne udvidelser:

h) Lav din egen udvidelse til programmet og få en klassekammerat til at læse koden og gætte hvad programmet gør.

 

Opgave 2

Brug din egen knap:

a) Nu skal du stort set genbruge koden fra step by step guiden eller fra opgave 2 og så lave det med hardware. Tag din micro:bit og put den i firefly’en og sæt den ned i et breadboard. 

b) Sæt derefter en knap til pin 0, som vist på billedet. 

firefly og knap

c) Gør det samme for pin 1, med en anden knap et andet sted på breadboardet.

d) Genbrug koden fra opgave 1 eller opgave 2 og i stedet for når man trykker på knap “A” og/eller “B”, så brug p0 og p1, som vist på billedet.

trykkes paa p0 og p1