Cam 1: Gwneud
Beth yw e?
Defnyddio radio i synhwyro pa mor agos mae micro:bit arall ac wedyn gwneud gêm helfa drysor neu'i ddefnyddio i helpu i roi gwybod i bobl eu bod yn cadw pellter cymdeithasol diogel.
Cyflwyniad
Canllaw codio
Sut mae'n gweithio
- Bydd angen o leiaf 2 micro:bit arnoch ar gyfer hyn. Byddwn yn creu dwy raglen wahanol, un ar gyfer y tywysydd sy'n anfon neges â phŵer isel dros radio'n barhaus. Mae'r rhaglen arall yn mynd ar y derbynnydd.
- Pan fydd y derbynnydd yn derbyn neges gan y tywysydd, bydd yn storio ei chryfder mewn newidyn a elwir yn signal ac yn ei dangos ar ei ddangosydd LED.
- Mae signalau radio'n dod yn gryfach wrth i chi ddod yn fwy agos at y trosglwyddydd, felly os bydd y signal yn gryf mae'n golygu bod y micro:bit arall yn agos, yn ôl pob tebyg.
- Os bydd y signal radio yn wan, mae'r micro:bit arall yn fwy pell, yn ôl pob tebyg.
- Mae'n dangos graff bar sy'n dod yn fwy wrth i'r signal ddod yn gryfach ac wrth i chi symud yn agosach. Mae'n defnyddio'r bloc map mathemateg i fapio rhifau cryfder signal radio o'r amrediad -95 (gwan) i -42 (cryf) i amrediad 0 i 9 y gallwn ei ddefnyddio i dynnu graff bar.
Fersiwn Python
- Nid oes gan Python swyddogaeth fap neu graff barod, felly mae'n gweithio ychydig yn wahanol. Mae pob LED yn goleuo wrth i chi symud yn agos at y tywysydd, ac maent yn dod yn fwy disglair wrth i chi symud yn agosach.
- Mae'n cymryd darlleniadau cryfder radio gan ddefnyddio'r gorchymyn
radio.receive_full()
. Mae hyn yn rhoi'r neges, cryfder y signal a stamp amser. Rydym eisiau gwybod cryfder y signal yn unig, felly rydym yn defnyddiosignal = neges[1]
i echdynnu hyn a'i storio mewn newidyn a elwir yn signal. - Efallai bod cryfder y signal yn yr amrediad -98 (gwannaf) i -45 (cryfaf), ac mae'r rhaglen Python yn diffinio swyddogaeth a elwir yn map i drosi'r rhifau yn yr amrediad hwn yn amrediad 0 – 9 y gallwn ei ddefnyddio ar gyfer newid disgleirdeb yr LEDs: mae 0 yn golygu eu bod wedi'u diffodd, a 9 yw disgleirdeb mwyaf LED. (Efallai byddwch eisiau ailddefnyddio'r swyddogaeth hon mewn prosiectau Python eraill gan ei bod yn gweithio fel y bloc map yn MakeCode).
- Mae rhaglen Python yn creu delwedd 5x5 wag a elwir yn golau gan ddefnyddio'r gorchymyn
golau = Delwedd(5,5)
Newidir ei disgleirdeb gan ddefnyddio'r gorchymynlight.fill()
.
Beth sydd ei angen arnoch
- 2 micro:bit a phecynnau batri
- Golygydd MakeCode neu Python
- pecyn batri (opsiynol)
Cam 2: Codio
Trosglwyddydd / tywysydd
Derbynnydd
1from microbit import *
2import radio
3radio.config(group=1)
4radio.on()
5light = Image(5,5) # create an empty image
6
7# function to map signal stength to LED brightness
8def map(value, fromMin, fromMax, toMin, toMax):
9 fromRange = fromMax - fromMin
10 toRange = toMax - toMin
11 valueScaled = float(value - fromMin) / float(fromRange)
12 return toMin + (valueScaled * toRange)
13
14while True:
15 message = radio.receive_full()
16 if message:
17 signal = message[1]
18 brightness = map(signal, -98, -44, 0, 9)
19 light.fill(round(brightness))
20 display.show(light)
21
Cam 3: Gwella
- Cyfuno codau'r tywysydd a'r derbynnydd fel bod gennych un micro:bit sy'n gwneud y ddwy dasg.
- Gwneud bandiau arddwrn fel eich bod yn gallu gwisgo'ch synwyryddion agosrwydd.
- Pa mor gryf yw'r signal pan fyddwch 1 neu 2 fedr ar wahân? Addasu'r cod i sbarduno larwm gweledol neu glywadwy pan fydd rhywun yn rhy agos.
- Defnyddio'r rhaglenni hyn i wneud gêm helfa drysor: cuddio'r tywysydd a rhoi cod y derbynnydd ar lawer o micro:bits
- Os byddwch yn yr awyr agored neu le mawr, arbrofi wrth newid pŵer y trosglwyddydd. Gall fod yn unrhyw rif rhwng 0 a 7.
This content is published under a Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) licence.
Translation generously supported by the Welsh Government.