Petunjuk Arah Mikro: bit untuk Helmet Basikal: 5 Langkah
Petunjuk Arah Mikro: bit untuk Helmet Basikal: 5 Langkah
Anonim
Petunjuk Arah Mikro: bit untuk Helmet Basikal
Petunjuk Arah Mikro: bit untuk Helmet Basikal
Petunjuk Arah Mikro: bit untuk Helmet Basikal
Petunjuk Arah Mikro: bit untuk Helmet Basikal
Petunjuk Arah Mikro: bit untuk Helmet Basikal
Petunjuk Arah Mikro: bit untuk Helmet Basikal

Versi Dikemas kini 2018-Mei-12

Di bawah ini anda memberi arahan bagaimana membina penunjuk arah mikro: bit berdasarkan helmet basikal (atau serupa). Ia menggunakan percepatan yang dibina dalam mikro: bit sebagai kawalan.

Skrip mikrofon mikro yang disediakan dioptimumkan untuk mu, penyunting mikro python dengan "mod" khusus untuk mikro: bit. Dalam versi terbarunya ia dilengkapi dengan plotter bersiri dan pada mulanya saya hanya ingin memahami cara menggunakannya untuk memaparkan nilai yang diukur (petunjuk: hantar data sebagai tuple: print ((x, y, z)), menggunakan kurungan berganda).

Empat corak dipaparkan pada mikro: paparan LED 5x5 bit:

  • Dalam keadaan rehat, corak rawak yang bagus dipaparkan. Pada masa ini anda menemui skrip untuk tiga corak yang berbeza, corak 'kunang-kunang', 'hujan' dan 'bintang jatuh'. Lihat dan pilih yang paling anda sukai. Jangan ragu untuk menyesuaikan parameter, menjadikannya lebih padat atau berjalan lebih cepat atau lebih perlahan.
  • Kemudian terdapat petunjuk "belok kanan" atau "belok kiri" dalam bentuk anak panah bergerak. Mereka diaktifkan dengan mencondongkan kepala ke kiri atau kanan, dengan menekan butang pada mikro: bit. Dalam versi skrip butang luaran, aktifkan dengan menekan salah satu butang luaran yang disambungkan ke pin 0 dan 1.
  • Sekiranya anda menundukkan kepala ke belakang, atau kedua-dua butang pada mikro: bit diaktifkan pada masa yang sama, corak "amaran" atau "putus" dipaparkan.

Mikro paparan corak ini: bit mungkin digunakan sebagai petunjuk arah mis. untuk berbasikal, meluncur atau bermain ski. Betulkan mikro: bit pada helmet anda dan kendalikan dengan kedudukan kepala anda. Atau betulkan pada basikal anda, muat skrip butang luaran dan kendalikannya dengan dua suis luaran yang terpasang pada mikro: bit melalui beberapa kabel.

Bagi mereka yang bekerja dengan MakeCode, saya menambahkan skrip blok pada langkah terakhir, yang dapat disalin terus ke mikro: bit. Kurang mewah tetapi memberikan fungsi asas tanpa perlu memasang mu.

Perlu diingat:

  • Walaupun projek ini mungkin bermanfaat untuk keselamatan anda, pastikan anda selalu memberi petunjuk yang jelas di mana anda mahu memandu menggunakan tangan dan lengan anda.
  • Konsep ini belum diuji secara meluas di jalan raya dan hanya bertujuan sebagai contoh pengaturcaraan. Gunakannya atas risiko anda sendiri.
  • Gunakan versi asas hanya dalam keadaan cuaca kering, kerana mikro: bit dan bateri atau pek LiPo sensitif terhadap kelembapan. Terdapat penerangan bagaimana membina versi yang dikemas di bawah ini.

Langkah 1: Bahan Yang Digunakan

Mikro: bit. Komputer dengan penyunting mu dipasang. Pek bateri atau pek LiPo untuk mikro: bit. Helmet basikal. Saya menggunakan yang dulu mempunyai lampu latar LED. Sekeping kadbod polipropilena 3mm, sebagai jarak antara mikro: bit dan topi keledar. Pita saluran dua sisi untuk memperbaiki mikro: bit ke bahagian jarak dan ini ke helmet. pita, untuk membetulkan mikro: bit dan pek bateri di topi keledar.

Untuk versi yang dibungkus: kotak plastik jernih 59 x 59 x 30 mm, Modulor, Berlin: 0, 70 Euro Kitronic MI: papan kuasa, pita saluran dua sisi 5 GBP dan sekeping plat PP

Untuk versi suis luaran (butiran tidak ditunjukkan di sini): Kabel pelompat dan dua suis, dua LED putih, perintang 10 kOhm, papan roti. Pengapit buaya. Skru tembaga M3 (20 mm), kacang nilon M3; masing-masing empat, untuk pin 0, pin 1, 3V dan Ground. Letakkan skru melalui lubang pada mikro: bit PCB dan pasangkan dengan skru. Mereka mempermudah memasang pengapit buaya.

Langkah 2: Menyiapkan Peranti, Pemasangan Skrip

Menyiapkan Peranti, Pemasangan Skrip
Menyiapkan Peranti, Pemasangan Skrip
Menyiapkan Peranti, Pemasangan Skrip
Menyiapkan Peranti, Pemasangan Skrip
  • Pasang editor mu di komputer anda.
  • Sambungkan bit mikro ke komputer.
  • Muatkan skrip yang dikehendaki.
  • Flash skrip ke mikro: bit.
  • Sekiranya skrip pecutan (helmet), pasangkan mikro: bit dan pek bateri ke helmet anda. Saya menggunakan sekeping kadbod plastik kecil, bahan yang anda dapati di kedai perkakasan anda, sebagai potongan jarak dan saluran dua sisi pita di kedua sisi untuk memasang mikro: bit ke helmet. Kemudian pasangkan mikro: bit dan pek bateri dengan pita saluran pada topi keledar anda.
  • Untuk membuktikan cuaca, lihatlah langkah selanjutnya.
  • Sekiranya diperlukan, sesuaikan nilai ambang x dan z mengikut keperluan anda.

Sekiranya skrip menggunakan butang dan jika anda ingin menggunakan butang luaran, sambungkan rel kuasa papan roti ke port Gnd dan 3V mikro: bit. Sambungkan butang ke port Gnd dan Pin0 dan Pin1

Langkah 3: Skrip Python Mikro

Dilampirkan anda menemui skrip python mikro untuk mu dan mikro: bit.

Terdapat empat skrip: satu yang mengawal paparan menggunakan butang bawaan dan luaran, tiga menggunakan akselerometer binaan mikro: bit. Mereka mempunyai penjana corak rawak yang berbeza untuk keadaan rehat.

Terdapat corak 'kunang-kunang', corak 'hujan' dan corak 'jatuh bintang' (gaya matriks). Skrip firefly / accelerometer disenaraikan di bawah. Ada juga skrip yang memiliki ketiga pola dan menjalankannya dalam urutan acak, dengan pilihan baru setiap kali indikator diaktifkan.

Nilai pecutan dihantar ke komputer dan dapat dibaca melalui monitor bersiri editor mu atau dipaparkan pada plotter bersiri.

Sangat mudah untuk mengubah parameter untuk menyesuaikan skrip untuk keperluan dan pilihan anda.

'' 'Angle / accelerometer atau versi terkawal butang bawaan. 2018-Mei-07 Skrip ringkas yang menghasilkan corak "kunang-kunang" dalam keadaan rehat, anak panah bergerak kiri atau kanan jika m-bit dipusingkan ke arah yang sesuai, atau butang A atau B ditekan atau petunjuk / tanda amaran putus jika kedua-dua butang ditekan atau m-bit dibengkokkan ke belakang. Boleh digunakan untuk lampu latar helmet basikal atau yang serupa. Bina untuk penyunting mikro python oleh Dr H. 3433) # masukkan nombor bertuah anda de = 100 # set masa kelewatan paparan dalam ms ff1 = 100 # set masa kelewatan kunang-kunang 1 dalam ms ff2 = 50 # set masa kelewatan kunang-kunang 2 dalam ms fn = 3 # set bilangan titik benih kunang-kunang thresh_z = 80 # nilai ambang untuk ambang mundur_x = 350 # nilai ambang untuk sisi # tentukan gambar image_l_1 = Gambar ("00900:" "09000:" "97531:" "09000:" "00900") image_l_2 = Gambar ("09000:" "90000:" "75319:" "90000:" "09000") image_l_3 = Gambar ("90000:" "00009:" "53197:" "00009:" "90000") image_l_4 = Gambar ("00009:" "00090: "" 31975: "" 00090: "" 00009 ") image_l_5 = Gambar (" 00090: "" 00900: "" 19753: "" 00900: "" 00090 ") image_r_1 = Gambar (" 00900: "" 00090: " "13579:" "00090:" "00900") image_r_2 = Gambar ("00090:" "00009:" "91357:" "00009:" "00090") image_r_3 = Gambar ("00009:" "90000:" "79135: "" 90000: "" 00009 ") image_r_4 = Gambar ("90000:" "09000:" "57913:" "09000:" "90000") image_r_5 = Gambar ("09000:" "00900:" "35791:" "00900:" "09000") image_z_1 = Image ("90009:" "00000:" "00900:" "00000:" "90009") image_z_2 = Image ("09090:" "90009:" "00000:" "90009:" "09090") # mulakan program sementara True: print ((accelerometer.get_x (), accelerometer.get_y (), accelerometer.get_z ())) # untuk digunakan dengan monitor bersiri atau plotter untuk pengoptimuman nilai ambang; # bisu dengan '#' jika tidak digunakan jika ((accelerometer.get_z ()> thresh_z) # kepala dibungkuk ke belakang, sesuaikan jika diperlukan atau (button_a.is_pressed () dan button_b.is_pressed ())): # untuk tujuan kawalan ditampilkan. tunjukkan (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) # penunjuk arah ke kanan; untuk mengaktifkan kepala bengkok kira-kira 20 darjah ke kanan atau butang_b.is_pressed ()): display.show (image_r_1) sleep (de) display.show (image_r_2) display sleep (de) sleep. tunjukkan (image_r_3) sleep (de) display.show (image_r_4) sleep (de) display.show (image_r_5) sleep (de) display.clear () other: # 'firefly' pattern generator for g in range (0, fn): # benih bilangan tertentu (fn) piksel x = random.randint (0, 4) # memilih kedudukan rawak y = random.randint (0, 4) v = 9 # maksimum kecerahan biji # v = rawak.randint (0, 9) # pilihan: paparan kecerahan biji rawak.set_pixel (x, y, v) # tetapkan tidur kelajuan kunang-kunang (ff1) # paparan untuk ff ms # mengurangkan intensiti semua piksel dengan satu langkah untuk j dalam julat (0, 5): # untuk setiap piksel array LED untuk i dalam julat (0, 5): b = display.get_pixel (i, j) # dapatkan intensiti semasa jika (b> 0): f = b - 1 # kurangkan kecerahan satu sama lain: f = 0 # menetapkan 0 sebagai paparan nilai yang dibenarkan paling rendah.set_pixel (i, j, f) tidur (ff2)

Langkah 4: Versi Bukti Cuaca yang Dibungkus

Versi Bukti Cuaca yang Dibungkus
Versi Bukti Cuaca yang Dibungkus
Versi Bukti Cuaca yang Dibungkus
Versi Bukti Cuaca yang Dibungkus
Versi Bukti Cuaca yang Dibungkus
Versi Bukti Cuaca yang Dibungkus
Versi Bukti Cuaca yang Dibungkus
Versi Bukti Cuaca yang Dibungkus

Seperti yang dinyatakan di atas, versi asasnya tidak tahan cuaca. Oleh itu, saya telah membina versi yang dikemas.

Untuk menghidupkan mikro: bit di sini saya menggunakan papan kuasa Kitronic MI:. Ia dikuasakan oleh sel duit syiling 3V dan boleh dipasang ke mikro: bit dengan tiga baut dan mur. Ia juga mempunyai suis kuasa binaan. Sebagai alternatif anda boleh menggunakan bateri LiPo.

Sebagai perumahan saya menggunakan kotak plastik jernih 59 x 59 x 30 mm. Sekeping kadbod plastik 3 mm ditutup dengan pita saluran dua sisi digunakan sebagai kepingan jarak. Ia diperlukan sebagai bahagian belakang MI: kuasa bahkan tidak disebabkan oleh kacang dan menahan mikro: bit di tempat.

Kotak dengan mikro: bit kemudian dilekatkan pada topi keledar dengan sekeping kadbod plastik lain yang ditutup dengan pita dua sisi.

Langkah 5: Skrip MakeCode

Bagi mereka yang tidak bersedia atau tidak dapat memasang mu, saya telah menambahkan skrip blok MakeCode dengan fungsi yang serupa. Sejauh ini tidak begitu mewah, tetapi cukup bagus untuk menunjukkan prinsipnya.

Anda mungkin hanya menyalin fail ke mikro: bit dan main.

Disyorkan: