I-logo ye-sheen.bot

← Ukuqonda Okujulile

Kungani Imilayezo Yomsakazo Ye-Micro:bit Iyeka Ukufika Lapho Lonke Ikilasi Lihlola Kanyekanye

Okt 19, 2026·Sheen Robotics
Kungani Imilayezo Yomsakazo Ye-Micro:bit Iyeka Ukufika Lapho Lonke Ikilasi Lihlola Kanyekanye

Lapho ama-micro:bit angamashumi amabili esakaza eqenjini elijwayelekile lomsakazo ekilasini, ukungqubuzana kwamaphakethe kanye nokugcwala ngokweqile kwesilondolozi sokwamukela kuthulisa iphrojekthi yakho. Nansi indlela yokuhlela amaqembu, izikhathi zokusakaza, kanye nemithwalo yedatha ukuze kuhlolwe ngaphandle kwezihibe.

Lapho abafundi ababili behlola umbhalo wekhodi yomsakazo we-micro:bit bebodwa edeskini, cishe kusebenza ngaso sonke isikhathi. Lapho amapheya angamashumi amabili ehlola umbhalo ofanayo kanyekanye, inethiwekhi iyabhidlika: imilayezo ifika sekwedlule imizuzwana, ifika ngezikhathi ezingalingani, noma inyamalale nya. Izingxenyekazi zekhompyutha (hardware) aziphukile, futhi i-WiFi yesikole ayiphazamisi. Ikilasi lakho lihlangabezane ngqo nezithiyo ezimbili eziyisisekelo zenethiwekhi: ukungqubuzana kwamaphakethe angalawulwanga (unthrottled packet collisions) kanye nokugcwala ngokweqile kwesilondolozi sokwamukela (receive-buffer flooding).

Izithiyo Ezimbili Ezingabonakali

Ukuze ulungise le nkinga, kufanele uqonde ukuthi i-BBC micro:bit yenzani ngempela lapho isebenzisa amabhulokhi omsakazo e-MakeCode. I-micro:bit isebenzisa isithumeli-samukeli sakwa-Nordic Semiconductor (i-nRF51 ku-v1, noma i-nRF52 ku-v2) esebenza kumaza e-2.4 GHz. Ngokuzenzakalelayo, isebenza ngaphandle kokuxhumana kokuhlola umthwali (carrier-sensing handshake) noma iphrothokholi yokuzama kabusha ngokuzenzakalelayo (automatic retry protocol).

Lapho umbhalo wesifundo uyala i-micro:bit ukuthi ithumele isignali, lokhu kubangela izinkinga ezimbili ezihlukene lapho kusetshenziswa amadivayisi amaningi:

  • Ukungqubuzana Emoyeni (Airtime Collisions): Uma ama-micro:bit amabili esakaza eqenjini elifanayo lefrikhwensi ngesikhathi esisodwa ncamashí, izignali zawo zomsakazo ziyanqwabelana emoyeni. I-antenna eyemukelayo ithola ingxube edidayo yakho kokubili okuthunyelwe. I-micro:bit ihlola i-Cyclic Redundancy Check (CRC) yephakethe, ithole umonakalo, bese ililahla phansi iphakethe buthule. Asikho isiphambeko esivelayo; idatha imane inyamalale nje.
  • Ukuphela Kwendawo Yesilondolozi se-RX (RX Buffer Exhaustion): Uhlelo oluqhuba isoftware ye-micro:bit (CODAL / DAL) lugcina amaphakethe omsakazo angenayo esilondolozini esincane sokwamukela esisekelwe ku-hardware, ngokuvamile esigcina amaphakethe amane kuphela ngaphambi kokuwadlulisela kukhodi yomsebenzisi. Uma ama-micro:bit amane ethumela imilayezo ngenkathi isamukeli sibuyekeza isibonisi saso se-LED esingu-5×5 noma silinde ngaphakathi kwebhulokhi yokumisa isikhashana, leso silondolozi sigcwala ngokushesha. Yonke imilayezo elandelayo efika ngaleso sikhathi iyalahlwa.

Inkinga Yangempela: Ukuthululwa Kwemilayezo Nge-Loop ethi "Forever"

Cishe kuwo wonke amakilasi anale nkinga, imbangela iyindlela yokubhala ikhodi yabaqalayo ebukeka kanje:

basic.forever(function () {
    radio.sendNumber(input.acceleration(Dimension.X))
})

Ngaphakathi kwe-loop evamile ye-forever engenawo ukubambezeleka okucacisiwe, i-micro:bit izosakaza amaphakethe aphakathi kwangama-30 nalawo angama-50 njalo ngomzuzwana. Ipheya elilodwa labafundi elikhiqiza amaphakethe angama-40 ngomzuzwana lisebenzisa ingxenye encane yesikhathi somoya wendawo. Phinda lokho ngamapheya ayishumi nanhlanu asebenza kanyekanye ekilasini elilodwa, bese igumbi ligcwala ngokungazelelwe amaphakethe angama-600 ngomzuzwana.

Ngenxa yokuthi ikhodi yomsakazo eyisisekelo ithumela ngobumpumputhe—okusho ukuthi i-micro:bit ayilindi umzila ocacile ngaphambi kokuthumela, futhi ayiceli nesiqinisekiso sokutholakele—ukusakaza ngefrikhwensi ephezulu cishe kuqinisekisa ukuthi konke okuthunyelwayo kuzongqubuzana nephakethe lenye idivayisi emoyeni.

Indlela Yokuhlela Umsakazo Othembekile Wasekilasini

Ukulungisa ukungathembeki komsakazo akudingi amaphrothokholi ezokuxhumana ayinkimbinkimbi. Kudinga imikhuba emine eyisisekelo yokubhala amakhodi ekilasini.

1. Ungalinge Usebenzise Iqembu Lomsakazo Elijwayelekile

Izifundo zivame ukutshela abafundi ukuthi babhale radio.setGroup(1). Uma lonke ikilasi lisebenzisa iqembu 1, isamukeli ngasinye sicubungula amaphakethe aso sonke isithumeli, ngisho noma uwahlunga kamuva kusoftware. I-MakeCode isekela amaqembu asukela ku-0 kuye ku-255. Ekuqaleni kwethemu, nika ideski ngalinye noma ipheya ngalinye inombolo yeqembu yabo ehlala njalo:

  • Ipheya 1 lisebenzisa radio.setGroup(10)
  • Ipheya 2 lisebenzisa radio.setGroup(20)
  • Ipheya 3 lisebenzisa radio.setGroup(30)

Ama-ID eqembu ashintsha ukucushwa kwekheli lenethiwekhi ku-chip. Nakuba amaqembu asondelene asabelana ngomzila ofanayo we-2.4 GHz uwonke, ukuhlunga ezingeni lekheli le-hardware kuvimbela amaphakethe angaphandle ekugcwaliseni uhele lokwamukela lepheya elingumakhelwane.

2. Nqabela Ama-Loop Angalawulwanga

Ngaphandle kwemisebenzi engavamile ye-physics telemetry yefrikhwensi ephezulu, cishe ayikho iphrojekthi yesikole edinga izibuyekezo ezingama-50 ngomzuzwana. Imoto encane elawulwa kude noma isilawuli sokutshekisa sisabela kahle ngezibuyekezo ezi-5 kuye kwezi-10 ngomzuzwana. Faka isikhathi sokumisa esicacile ngaphakathi kwayo yonke i-loop yokusakaza eqhubekayo:

basic.forever(function () {
    radio.sendValue("speed", currentSpeed)
    basic.pause(100) // 10 packets per second maximum
})

Okungcono kakhulu, shintsha usuke ekuthumeleni ngokuphindaphindiwe (polling) uye ekuthumeleni okuqhutshwa izehlakalo (event-driven). Isilawuli kufanele sisakaze kuphela lapho umsebenzisi ecindezela inkinobho, etshekisa edlula izinga elithile, noma ethola isithiyo. Uma kungekho okushintshile, umsakazo kufanele uthule.

3. Faka Umehluko Oyingcosana Wesikhathi (Timing Jitter)

Uma yonke i-micro:bit egumbini isakaza ncamashí njalo ngemva kwamamilisekhondi ayi-100, amawashi azo agcina evumelana ngesinyathelo esisodwa—okusho ukuthi amadivayisi amabili azongqubuzana ngokuphindaphindiwe emzuliswaneni ngamunye. Ungaqeda ukungqubuzana okuhambisana nesigqi ngokungeza "i-jitter" engahleliwe ekubambezelekeni kwe-loop:

basic.pause(100 + Math.randomRange(0, 30))

Lokhu kuhluka okuncane kwamamilisekhondi aphakathi kuka-0 naku-30 kuqinisekisa ukuthi ngisho noma amadivayisi amabili engqubuzana kufremu eyodwa, ukuthumela kwawo okulandelayo ngeke kuqondane, okuvumela amaphakethe ukuthi adlule ngokuphepha.

4. Nciphisa Imithwalo Yakho Yedatha (Payloads)

Ukusakaza ngomsakazo kuthatha isikhathi esingokoqobo; lapho iphakethe lilide, kukhula nethuba lokungqubuzana. I-MakeCode ikuvumela ukuthi uthumele imicu emide yombhalo nge-radio.sendString("FORWARD_LEFT"), kodwa imicu idla amabhayithi amaningi. Esikhundleni salokho, sebenzisa izinombolo eziphelele ezingayedwana noma amapheya amanani anohlamvu olulodwa:

Isenzo EsihlosiweUmthwalo Ongahlakaniphile (Isikhathi Eside Somoya)Umthwalo Ohlelekile (Isikhathi Esifushane Somoya)
Umyalo wokushayelaradio.sendString("DRIVE_LEFT")radio.sendNumber(1)
Ukufundwa kwedatha (telemetry)radio.sendValue("temperature_c", 24)radio.sendValue("T", 24)
Isignali yokumisaradio.sendString("EMERGENCY_STOP")radio.sendNumber(0)

Yini Okufanele Uyenze Lapho Lonke Ikilasi Kufanele Likhulume Nesamukeli Esisodwa

Ekwenzeni imisebenzi yokuvota kweqembu noma ukuloba idatha yesiteshi sezulu, ama-micro:bit abafundi ayishumi nanhlanu kufanele athumele idatha ku-micro:bit eyodwa eyisizinda (hub). Lesi sakhiwo sisengozini enkulu yokuphahlazeka kwesilondolozi (buffer collapse).

Ukuze lokhu kusebenze ngaphandle kokulahleka kwedatha, guqula ukuhamba kokuxhumana: sebenzisa isakhiwo sokubuza ngamunye ngamunye (polling architecture) esikhundleni sokusakaza ngokungahlelekile komuntu wonke. I-micro:bit eyisizinda esiphakathi isakaza isicelo se-ID ethile (ngokwesibonelo, ukuthumela inombolo 1). Yidivayisi yomfundi kuphela ecushwe njengedivayisi 1 ethumela umthwalo wayo wedatha. Uma isitholakele, isizinda sibiza idivayisi 2. Lesi sakhiwo sokushintshana ngokulandelana (round-robin) siqeda ngokuphelele ingozi yokungqubuzana futhi siqinisekisa ukuthi i-micro:bit eyemukelayo ayilokothi ibe nephakethe elingaphezu kwelilodwa elilinde esilondolozini sayo ngesikhathi esisodwa.

Ezinhlelweni ezihlelekile eziphethe inqwaba yabafundi abakha amaphrojekthi we-hardware axhumene, i-Sheen Robotics iveza ikharikhulamu enezigaba nokuhlelwa kwamakilasi nge-Infinity for Schools ukusiza ukugcina imisebenzi engokoqobo ye-hardware isebenza ngendlela elindelekile esikhundleni sokuxazulula ukungqubuzana kwamaza okungabonakali.

#micro:bit#umsakazo#ukuphathwa kwekilasi#imfundo yokubhala amakhodi#ukuxazulula izinkinga

Okunye Ukuqonda Okujulile