Hvor raskt kan et menneske reagere? I disse undervisningsoppleggene skal vi bruke microbiten til å måle reaksjonstiden vår. Det finnes mange varianter av måling av reaksjonstid med microbit, og her er to enkle varianter. Den ene varianten bruker kun microbiten, mens i den andre må elevene bygge et system som bruker en sluttet krets for å foreta målingene.
Kompetansemål naturfag etter 10.trinn:
- stille spørsmål og lage hypoteser om naturfaglige fenomener, identifisere avhengige og uavhengige variabler og samle data for å finne svar
- bruke programmering til å utforske naturfaglige fenomener
Kompetansemål naturfag etter 7.trinn:
- stille spørsmål og lage hypoteser om naturfaglige fenomener, identifisere variabler og samle data for å finne svar
- skille mellom observasjoner og slutninger, organisere data, bruke årsak-virkning-argumenter, trekke slutninger, vurdere feilkilder og presentere funn
- utforske, lage og programmere teknologiske systemer som består av deler som virker sammen
Variant 1 – bruke microbiten til å måle reaksjonstiden
I denne oppgaven skal vi kun bruke microbiten til å måle reaksjonstiden. Når vi trykker på knapp A skal microbiten vente en tilfeldig tid, før den viser et ikon på skjermen. Da handler det om å trykke på B knappen raskest mulig.
Programmet skal da regne ut reaksjonstiden og vise den på skjermen.
Programmet starter når vi trykker på A-knappen. Da skal programmet vente i et tilfeldig antall millisekunder, før det går videre.

Vi skal så vise et ikon på skjermen, som indikerer at klokken som måler reaksjonstiden skal starte.
Velg selv hvilket ikon.
Starttidspunktet legger vi inn i en variabel som vi kaller «start», og så er det bare å vente på at brukeren trykker på B-knappen.

Når vi trykker på B-knappen skal klokken stoppes og skjermen tømmes.

Da er det på tide å regne ut tiden som ble brukt, og vise den på skjermen.
Vi tar slutt tid minus start tid, og får reaksjonstiden. Men siden vi arbeider med millisekunder, må vi dividere med 1000 for å få tiden i sekunder.

Test
På tide å teste.
- Når du trykker på A kommer det fram et bilde etter et tilfeldig antall millisekunder
- Når du trykker på B forsvinner bildet og reaksjonstiden vises på skjermen
- Hva skjer om du trykker på B-knappen før bildet dukker opp?
Her har du funnet feilen med programmet, så vi må gjøre litt om på koden. Vi må laget et flagg, som styrer hvilke knapper som fungerer når. Vi oppretter en variabel vi kaller «spill», og setter den til «usann» når programmet starter.

Når vi trykker på A-knappen tester vi på om flagget er sann eller usann, og har kontroll videre på hva som skjer.

Etter at skjermen er vist og klokken startet, setter vi flagget «spill» til «sann» og gir muligheten for å trykke på B-knappen.
På B-knappen kontrollerer vi på om flagget er «sann» og først da kan en stoppe klokken.

På samme måte som på A-knappen, endrer vi flagget til «usann» etter at vi har regnet ut reaksjonstiden.
Utfordring:
- Klarer dere å regne ut gjennomsnittstiden for flere spill? Den kan vises når dere trykker A+B.
Variant 2
I denne oppgaven skal dere bygge et system som måler reaksjonstiden. Vi skal koble opp strømførende elementer som kabler, kobberteip, binders av ulike typer eller kroppen vår. Her er det litt opp til dere å designe det, og her er noen bilder til å inspirere dere.
Forslag til utstyr dere kan bruke:
- Papp
- Aluminiumsfolie
- Kabler med klemmer
- Kobberteip
- Kobbertråd
- Splittbinders
- Binders
Vi skal bruke tilkoblingsmulighetene i microbiten til å koble sammen systemet, og vi skal bruke både 0 og GND for å skape en sluttet krets.
Som i oppgave 1 skal programmet starte når brukeren trykker på A-knappen. Da skal programmet vente et tilfeldig antall millisekunder før det viser fram et ikon på skjermen. Så raskt som mulig skal brukeren reagere og skape en sluttet krets.
Vi starter med å starte programmet fra knapp A. Vi venter et tilfeldig antall millisekund, og viser deretter et ikon på skjermen.

Deretter setter vi variabelen «start» til kjøretiden på microbiten.

Da er det tid for å vente til brukeren slutter kretsen, som vi har koblet mellom GND og port 0.

Det første som må skje er at klokken leses av og legges i variabelen «slutt».

Deretter kan vi regne ut reaksjonstiden, og vise den på skjermen.
Vi tar slutt tid minus start tid, og får reaksjonstiden. Men siden vi arbeider med millisekunder, må vi dividere med 1000 for å få tiden i sekunder.

Testing
På tide å teste at programmet og installasjonen fungerer. Kommer ikonet fram med ulike mellomrom. Kan du slutte kretsen? Regnes reaksjonstiden ut?
Under testing vil dere oppdage at det er mulig å «lure» programmet og få reaksjonen før bildet vises. Dette kan vi løse ved å lage en variabel vi kaller «spill» som settes til «false» når programmet starter, og deretter får verdien «sann» når vi trykker på knapp A for å initiere et spill.

Når vi trykker på A-knappen tester vi på om flagget er sann eller usann, og har kontroll videre på hva som skjer.

Etter at skjermen er vist og klokken startet, setter vi flagget «spill» til «sann» og gir muligheten for å trykke på B-knappen.
På B-knappen kontrollerer vi på om flagget er «sann» og først da kan en stoppe klokken.

På samme måte som på A-knappen, endrer vi flagget til «usann» etter at vi har regnet ut reaksjonstiden.
Gjennomsnitt
La oss finne gjennomsnittet for reaksjonstiden. Dette skal vises når vi trykker på knapp A+B.
Vi trenger en variabel som tar vare på antall spill vi gjennomfører. Denne må nullstilles ved oppstart, og deretter endres med 1 for hver gang det spilles.

Når reaksjonstiden er regnet ut, legges denne til tidligere målinger. Vi legger den i en egen variabel vi kan kalle «brukt_tid», som vi må huske å nullstille når programmet starter opp.

Når knapp A trykkes, skal den totale tiden vises. Når knapp B trykkes, skal gjennomsnittet for alle spillene vises.

Logge gjennomsnittet
La oss logge testresultatene i loggverktøyet.
Under Avansert, vil du finne en kategori med blokker som heter Serieport. Her finner du en mulighet til å skrive verdiene til loggverktøyet ved hjelp av USB tilkoblingen.

Når microbiten er koblet til datamaskinen ved hjelp av WebUSB kan microbiten sende loggdata direkte tilbake til nettleseren og inn i loggverktøyet som kan vise resultatene som tall og som en graf. En kan også overføre dataene til et regneark om en vi arbeide videre med tallene.

Utfordring 1:
Utvid systemet til å finne min og max reaksjonstid. Disse kan f.eks komme fram når microbiten ristes eller logoen trykkes på (versjon2)
Utfordring 2:
Utvid og design et system, hvor det er flere steder en kan trykke for å vise reaksjonstiden. F.eks vises 1 i displayet skal en trykke et sted, men om det vises 2 skal det trykkes et helt annet sted.