Talaan ng mga Nilalaman:

Isang Micro: bit Direksyon ng Tagapagpahiwatig para sa Mga Helmet ng Bisikleta: 5 Mga Hakbang
Isang Micro: bit Direksyon ng Tagapagpahiwatig para sa Mga Helmet ng Bisikleta: 5 Mga Hakbang

Video: Isang Micro: bit Direksyon ng Tagapagpahiwatig para sa Mga Helmet ng Bisikleta: 5 Mga Hakbang

Video: Isang Micro: bit Direksyon ng Tagapagpahiwatig para sa Mga Helmet ng Bisikleta: 5 Mga Hakbang
Video: Basic AK Course Session 2 | Chiropractic Kinesiology 2024, Nobyembre
Anonim
Isang Micro: bit Direksyon ng Tagapagpahiwatig para sa Mga Helmet ng Bisikleta
Isang Micro: bit Direksyon ng Tagapagpahiwatig para sa Mga Helmet ng Bisikleta
Isang Micro: bit Direksyon ng Tagapagpahiwatig para sa Mga Helmet ng Bisikleta
Isang Micro: bit Direksyon ng Tagapagpahiwatig para sa Mga Helmet ng Bisikleta
Isang Micro: bit Direksyon ng Tagapagpahiwatig para sa Mga Helmet ng Bisikleta
Isang Micro: bit Direksyon ng Tagapagpahiwatig para sa Mga Helmet ng Bisikleta

Nai-update na Bersyon 2018-May-12

Nasa ibaba ka ng mga tagubilin kung paano bumuo ng isang simpleng micro: bit based na direksyong tagapagpahiwatig para sa mga helmet ng bisikleta (o katulad). Gumagamit ito ng build ng mga accelerometro sa micro: kagaya ng mga kontrol.

Ang ibinigay na mga script ng micro python ay na-optimize para sa mu, isang editor ng micro python na may isang tukoy na "mode" para sa micro: bit. Sa pinakabagong bersyon na ito ay mayroong isang serial plotter at una kong nais na maunawaan kung paano ito gamitin upang ipakita ang mga sinusukat na halaga (pahiwatig: magpadala ng data bilang mga tuple: print ((x, y, z)), gamit ang mga doble na bracket).

Ang apat na mga pattern ay ipinapakita sa micro: 5x5 LED display ng bit:

  • Sa estado ng pamamahinga ang isang maganda, randomized na pattern ay ipinapakita. Sa kasalukuyan nakakahanap ka ng mga script para sa tatlong magkakaibang mga pattern, isang 'firefly', isang 'ulan' at isang 'bumabagsak na bituin' na pattern. Magkaroon ng isang hitsura at piliin ang isa na gusto mo pinakamahusay. Huwag mag-atubiling ayusin ang mga parameter, upang gawing higit o mas mababa ang siksik o tumakbo nang mas mabilis o mas mabagal.
  • Pagkatapos mayroong mga "lumiko sa kanan" o "lumiko sa kaliwa" na mga tagapagpahiwatig sa anyo ng paglipat ng mga arrow. Aktibo ang mga ito sa pamamagitan ng pagsandal sa iyong ulo pakaliwa o pakanan, sa pamamagitan ng pagpindot sa mga pindutan sa micro: bit. Sa panlabas na bersyon ng pindutan ng script, buhayin sa pamamagitan ng pagpindot sa isa sa mga panlabas na pindutan na konektado sa mga pin 0 at 1.
  • Kung yumuko mo ang iyong ulo paatras, o ang parehong mga pindutan sa micro: kaunti ay pinapagana nang sabay-sabay isang pattern na "alerto" o "break" ang ipinakita.

Ang micro na nagpapakita ng pattern na ito: maaaring magamit bilang isang tagapagpahiwatig na itinuro hal. para sa pagbibisikleta, skating o skiing. Ayusin ang micro: kagatin sa iyong helmet at kontrolin ito sa posisyon ng iyong ulo. O ayusin ito sa iyong bisikleta, i-load ang panlabas na script ng pindutan at kontrolin ito ng dalawang panlabas na switch na nakakabit sa micro: bit sa pamamagitan ng ilang mga cable.

Para sa mga nagtatrabaho sa MakeCode, nagdagdag ako ng isang block script sa huling hakbang, na maaaring makopya nang direkta sa micro: bit. Hindi gaanong magarbong ngunit nagbibigay ng pangunahing pag-andar nang hindi na kailangang mag-install ng mu.

Mangyaring tandaan:

  • Habang ang proyektong ito ay maaaring maging kapaki-pakinabang para sa iyong kaligtasan, mangyaring tiyakin na palagi kang nagbibigay ng malinaw na mga pahiwatig kung saan mo nais na magmaneho gamit ang iyong mga kamay at braso.
  • Ang konsepto ay hindi nasubukan nang malawakan sa kalsada at inilaan bilang isang halimbawa lamang sa pagprograma. Gamitin ito sa iyong sariling peligro.
  • Gumamit lamang ng pangunahing bersyon sa ilalim ng mga kundisyon ng tuyong panahon, dahil ang micro: bit at ang baterya o LiPo pack ay sensitibo sa halumigmig. Mayroong isang paglalarawan kung paano bumuo ng isang naka-encapsulate na bersyon sa ibaba pa.

Hakbang 1: Ginamit na Mga Materyales

Isang micro: bit. Isang computer na naka-install ang editor ng mu. Pack ng baterya o LiPo pack para sa micro: bit. Isang helmet ng bisikleta. Gumamit ako ng isa na dati ay may LED backlight. Isang piraso ng 3mm polypropylene karton, bilang distansya na piraso sa pagitan ng micro: bit at helmet. Dobleng panig na duct tape upang ayusin ang micro: bit sa distansya na piraso at ito sa helmet. Duct tape, upang ayusin ang micro: bit at baterya pack sa helmet.

Para sa isang encapsulated na bersyon: isang 59 x 59 x 30 mm malinaw na kahon ng plastik, Modulor, Berlin: 0, 70 Euro Kitronic MI: power board, 5 GBP double sided duct tape at isang piraso ng mga plato ng PP

Para sa panlabas na bersyon ng switch (hindi ipinakita ang mga detalye dito): Mga cable ng jumper at dalawang switch, dalawang puting LEDs, isang resistor na 10 kOhm, isang breadboard. Mga clamp ng buwaya. M3 screws ng tanso (20 mm), M3 nylon nut; apat bawat isa, para sa pin 0, pin 1, 3V at Ground. Ilagay ang mga turnilyo sa mga butas sa micro: PCB ni bit at ayusin sa mga tornilyo. Pinasimple nila upang maglakip ng mga clamp ng buwaya.

Hakbang 2: Pag-set up ng Device, Pag-install ng Script

Pag-set up ng Device, Pag-install ng Script
Pag-set up ng Device, Pag-install ng Script
Pag-set up ng Device, Pag-install ng Script
Pag-set up ng Device, Pag-install ng Script
  • I-install ang mu editor sa iyong computer.
  • Ikonekta ang micro: bit sa computer.
  • I-load ang nais na script.
  • I-flash ang script sa micro: bit.
  • Sa kaso ng mga script ng accelerometer (helmet), ayusin ang micro: bit at ang pack ng baterya sa iyong helmet. Gumamit ako ng isang maliit na piraso ng plastik na karton, isang materyal na maaari mong makita sa iyong tindahan ng hardware, bilang piraso ng distansya at dobleng panig na maliit na tubo tape sa magkabilang panig upang ayusin ang micro: bit sa helmet. Pagkatapos ayusin ang micro: bit at pack ng baterya na may duct tape sa iyong helmet.
  • Upang mapatunayan ito ng panahon, tingnan ang susunod na hakbang.
  • Kung kinakailangan, ayusin ang mga halagang x at z threshold alinsunod sa iyong mga pangangailangan.

Sa kaso ng script na hinimok ng pindutan at kung nais mong gumamit ng panlabas na mga pindutan, ikonekta ang mga riles ng kapangyarihan ng breadboard sa Gnd at 3V port ng micro: bit. Ikonekta ang mga pindutan sa Gnd at ang mga port ng Pin0 at Pin1

Hakbang 3: Ang Mga Micro Python Script

Nakalakip na mahahanap mo ang mga script ng micro python para sa mu at sa micro: bit.

Mayroong apat na mga script: isa na kumokontrol sa display gamit ang built-in at panlabas na mga pindutan, tatlo gamit ang build-in na mga accelerometers ng micro: bit. Mayroon silang magkakaibang mga random pattern generator para sa estado ng pahinga.

Mayroong pattern na 'firefly', isang pattern na 'ulan' at isang pattern na 'bumabagsak na bituin' (estilo ng matrix). Ang firefly / accelerometer script ay nakalista sa ibaba. Mayroon ding isang script na mayroong lahat ng tatlong mga pattern at pinapatakbo ang mga ito sa isang randomized order, na may isang bagong pagpili sa tuwing ang isang tagapagpahiwatig ay naisaaktibo.

Ang mga halaga ng accelerometer ay ipinadala sa computer at maaaring mabasa sa pamamagitan ng serial monitor ng mu editor o ipinapakita sa serial plotter.

Madaling baguhin ang mga parameter upang ayusin ang mga script para sa iyong mga kinakailangan at kagustuhan.

'' 'Angle / accelerometer o build-in na mga pindutan na kinokontrol na bersyon. 2018-May-07 Isang simpleng script na gumagawa ng isang "alitaptap" na pattern sa estado ng pahinga, kaliwa o kanan na gumagalaw na mga arrow kung ang m-bit ay napilipit sa direksyon ng coresponding, o ang mga pindutan A o B ay pinindot o isang break na tagapagpahiwatig / pattern ng alerto kung ang parehong mga pindutan ay pinindot o ang m-bit ay baluktot paatras. Maaaring magamit para sa isang backlight ng bisikleta ng bisikleta o katulad. Bumuo para sa mu micro python editor ni Dr H. https://www.instructables.com/id/A-Microbit-Direction-Indicator-for-Biking-Helmets/ "" mula sa microbit import * import random random.seed (3433) # ipasok ang iyong masuwerteng numero de = 100 # nagtatakda ng oras ng pagkaantala ng pagpapakita sa ms ff1 = 100 # nagtatakda ng oras ng pagkaantala ng firefly 1 sa ms ff2 = 50 # nagtatakda ng oras ng pagka-antala ng firefly 2 sa ms fn = 3 # na nagtatakda ng bilang ng mga firefly seed point thresh_z = 80 # halaga ng threshold para sa paatras na thresh_x = 350 # halaga ng threshold para sa mga sidewards # tukuyin ang mga imahe image_l_1 = Larawan ("00900:" "09000:" "97531:" "09000:" "00900") image_l_2 = Image ("09000:" "90000:" "75319:" "90000:" "09000") image_l_3 = Image ("90000:" "00009:" "53197:" "00009:" "90000") image_l_4 = Image ("00009:" "00090: "" 31975: "" 00090: "" 00009 ") image_l_5 = Image (" 00090: "" 00900: "" 19753: "" 00900: "" 00090 ") image_r_1 = Image (" 00900: "" 00090: " "13579:" "00090:" "00900") image_r_2 = Image ("00090:" "00009:" "91357:" "00009:" "00090") image_r_3 = Image ("00009:" "90000:" "79135: "" 90000: "" 00009 ") image_r_4 = Image ("90000:" "09000:" "57913:" "09000:" "90000") image_r_5 = Image ("09000:" "00900:" "35791:" "00900:" "09000") image_z_1 = Image ("90009:" "00000:" "00900:" "00000:" "90009") image_z_2 = Image ("09090:" "90009:" "00000:" "90009:" "09090") # simulan ang programa habang Totoo: i-print ((accelerometer.get_x (), accelerometer.get_y (), accelerometer.get_z ())) # na gagamitin sa serial monitor o plotter para sa pag-optimize ng halaga ng threshold; # mute with '#' kung hindi nagamit kung ((accelerometer.get_z ()> thresh_z) # ulo baluktot pabalik, ayusin kung kinakailangan o (button_a.is_pressed () at button_b.is_pressed ())): # para sa display ng mga layuning kontrol. show (Image. DIAMOND_SMALL) sleep (de) display.show (Image. DIAMOND) sleep (de) display.show (image_z_2) sleep (de) display.show (image_z_1) sleep (de) display.clear () elif ((accelerometer.get_x () thresh_x) # tagapagpahiwatig ng direksyon pakanan; upang i-aktibo ang ulo ng liko mga 20 degree pakanan o button_b.is_pressed ()): display.show (image_r_1) pagtulog (de) display.show (image_r_2) pagtulog (de) display. ipakita (image_r_3) pagtulog (de) display.show (image_r_4) pagtulog (de) display.show (image_r_5) pagtulog (de) display.clear () iba pa: # 'firefly' pattern generator para sa g sa saklaw (0, fn): # binhi ng isang naibigay na numero (fn) ng mga pixel x = random.randint (0, 4) # pumili ng isang random na posisyon y = random.randint (0, 4) v = 9 # seed brightness maximum # v = random.randint (0, 9) # opsyonal: randomized seed brightness display.set_pixel (x, y, v) # set firefly velocity sleep (ff1) # display para sa ff ms # binabawasan ang tindi ng lahat ng mga pixel ng isang hakbang para sa j sa saklaw (0, 5): # para sa bawat pixel ng LED array para sa ako sa saklaw (0, 5): b = display.get_pixel (i, j) # makakuha ng kasalukuyang intensity kung (b> 0): f = b - 1 # bawasan ang ningning ng isa pa: f = 0 # set 0 bilang pinakamababang pinahintulutang pagpapakita ng halaga.set_pixel (i, j, f) pagtulog (ff2)

Hakbang 4: Isang Encapsulated, Bersyon ng Patunay na Panahon

Isang Encapsulated, Bersyon ng Patunay na Panahon
Isang Encapsulated, Bersyon ng Patunay na Panahon
Isang Encapsulated, Bersyon ng Patunay na Panahon
Isang Encapsulated, Bersyon ng Patunay na Panahon
Isang Encapsulated, Bersyon ng Patunay na Panahon
Isang Encapsulated, Bersyon ng Patunay na Panahon
Isang Encapsulated, Bersyon ng Patunay na Panahon
Isang Encapsulated, Bersyon ng Patunay na Panahon

Tulad ng nabanggit sa itaas, ang pangunahing bersyon ay hindi hindi tinatablan ng panahon. Samakatuwid nakabuo ako ng isang naka-encapsulate na bersyon.

Upang mapagana ang micro: kaunti dito Gumamit ako ng isang Kitronic MI: power board. Ito ay pinalakas ng isang 3V coin cell at maaaring maayos sa micro: bit na may tatlong bolts at nut. Mayroon din itong build sa power switch. Bilang kahalili maaari kang gumamit ng isang baterya ng LiPo.

Bilang pabahay ay gumagamit ako ng isang 59 x 59 x 30 mm na malinaw na plastik na kahon. Ang isang piraso ng 3 mm na plastik na karton na natatakpan ng dobleng panig na maliit na tubo ay ginamit bilang isang piraso ng distansya. Kinakailangan ito bilang likuran ng MI: ang lakas ay hindi dahil sa mga mani at hinahawakan ang micro: medyo nasa lugar.

Ang kahon na may micro: kaunti ay naayos sa helmet ng isa pang piraso ng plastik na karton na natatakpan ng dobleng panig na tape.

Hakbang 5: Isang MakeCode Script

Para sa mga hindi nais o mai-install ang mu, nagdagdag ako ng isang block ng MakeCode na may isang katulad na pag-andar. Sa ngayon hindi gaanong magarbong, ngunit sapat na mahusay upang ipakita ang prinsipyo.

Maaari mo lamang kopyahin ang file sa iyong micro: bit at maglaro.

Inirerekumendang: