I naturfag etter 10. årstrinn skal elevene "utforske, forstå og lage teknologiske systemer som består av en sender og en mottaker". Under vil du se et eksempel på hvordan man kan gjøre dette
Klikk her for å se hvordan du kobler microbiten til enten iPad eller PC/Chromebook (punkt 1 og 2)
PS: Bruker du iPad må du gjøre to tilkoblinger, og bytte mellom microbitene inne i Micro:bit appen...
I dette prosjektet skal vi utforske hvordan radiokommunikasjon fungerer med micro:biter. Vi skal bruke "radio"-blokkene slik at to micro:biter vil være sendere og mottakere til hverandre.
Målet er at vi ved å trykke på micro:bitens A, B og A+B-knapp kan sende "prikk" og "strek" til den andre microbiten.
Først skal vi finne ut av hvordan radiokommunikasjonen fungerer, og her er et viktig stikkord at begge microbitene må være på samme kanal/gruppe.
I prosjektet vårt trenger vi ikke lage to ulike programmer. Vi kan lage et program som lastes inn på begge micro:bitene, fordi de skal kunne gjøre nøyaktig det samme.
Det første vi må gjøre er å velge en radiokanal. Under verktøyet "radio" drar du inn "Radio sett gruppe X" til "ved start"-blokken. Velg en radiokanal mellom 0 og 255, som ingen andre bruker...
Radio fungerer slik at den sender ut et "signal", og ser om noen tar det i mot... Vi kan så bestemme hva den andre microbiten skal gjøre hvis den får et signal. Velg "når knapp A trykkes" i "Inndata", og hent inn "radio send tall X" fra verktøyet "radio".
Nå sender microbiten ut tallet 1, og vi må bestemme hva den andre microbiten gjør hvis den mottar signalet (tallet 1). Under verktøyet "radio" finner du "når jeg mottar .. recievedNumber". Viktig at du velger riktig, og ikke "recievedString", da "string" er tekst, og ikke tall.
Inne i den legger du blokken "vis tall", og drar ned "recievedNumber" blokken rett over og inn der tallet 0 står.
Nå må du laste over dette programmet til begge micro:bitene og se om dette virker. Husk å koble til strøm på micro:bitene.
Nå som forhåpentligvis radiokommunikasjonen fungerer må vi begynne på selve maskinen. Vi skal sende en beskjed bestående av flere ord. Vi skal sende "prikk", "strek", og kanskje både et "mellomrom" og "ferdig"-signal hadde vært praktisk? Totalt trenger vi 4 måter å sende et signal på.
Lag koden du ser på bildet.
Tenk gjennom: Hva skal skje på den andre microbiten når den mottar tallet 1? Hva med tallet 2? Tallet 3? Legg merker til at den fjerde er en tekst som sendes, og at jeg allerede har kalt den for "ferdig"...
Gå videre...
Vi må nå bestemme hva som skal skje når den andre micro:biten mottar signalene (tallene) 1, 2, 3 og teksten "ferdig".
Forslag: 1 = prikk, 2 = strek, 3 = et tegn for mellomrom, "ferdig" = noe som viser at setningen er ferdig.
Vi bruker da en "hvis"-setning for å oversette hva signalene skal vises som. Ta bort "vis tall recievednumber" i blokken "når radio mottar..." og erstatt den med en hvis-setning du finner i "logikk" (se bilde)
Utforsk: Du skal nå prøve å fortelle micro:biten at: hvis tallet (receivedNumber) den mottar er tallet 1, så skal den vise et bilde ("vis skjerm" under "Basis") av en prikk... Og gjøre det samme med tallet 2 for strek, og 3 for mellomrom... Tips: Klikk på "+" i "hvis"-setningen for å få flere linjer, og bruk klossen "0" = "0" som ligger under logikk.
Utforsk 2: Hva så med teksten/signalet "ferdig" ? Se om du finner en kloss under "radio" som handler om å motta tekst/String. PS: Du må bruke klossen " " = " " når det er tekst, og ikke tall...
Bruk denne koden hvis du ikke fikk til det over
Fungerer koden når du har overført den? Får du sendt morsekode til den andre micro:biten?
Oppdaget du noen mangler, eller noe som har forbedringspotensialet?
Hva hvis bokstaven du skriver har to eller flere prikk eller strek etter hverandre? Blir det synlig? Hvis ikke; klarer du legge til noe i koden som gjør at en prikk / strek bare vises i en gitt tid før skjermen tømmes?
Hva med forskjellen i lengde på prikk-signal og strek-signal. Og avstanden mellom ord (mellomrom). Kan det tilpasses?
Når du sender signaler fra din micro-bit så viser den ikke hva den sender.. Klarer du legge inn i koden at den viser det du sender i stedet for sort skjerm?
En kombinasjon av klossen "pause" og "tøm skjermen" kan brukes. Klossen "Pause" viser til hvor lenge noe skal vare før neste del av koden inntreffer...