Isi kandungan:

DIY Pendidikan Mikro: bit Robot: 8 Langkah (dengan Gambar)
DIY Pendidikan Mikro: bit Robot: 8 Langkah (dengan Gambar)

Video: DIY Pendidikan Mikro: bit Robot: 8 Langkah (dengan Gambar)

Video: DIY Pendidikan Mikro: bit Robot: 8 Langkah (dengan Gambar)
Video: Tonton Sampai Habis !!! Belajar Arduino Di Jamin Bisa 2024, Julai
Anonim
Mikro Pendidikan DIY: Robot bit
Mikro Pendidikan DIY: Robot bit
Micro Education DIY: bit Robot
Micro Education DIY: bit Robot

Instruksional ini akan menunjukkan kepada anda bagaimana membina robot yang mudah diakses, berkebolehan dan murah. Tujuan saya merancang robot ini adalah untuk mengusulkan sesuatu yang mampu dimiliki oleh kebanyakan orang, untuk mereka mengajar sains komputer dengan cara yang menarik atau untuk mempelajarinya.

Setelah anda membina robot ini, anda dapat menikmati pelbagai sensor dan penggeraknya untuk melakukan perkara asas tetapi juga cukup maju bergantung pada versi yang anda bina (saya akan memberikan dua versi). Dengan robot ini anda memberikan mata (pandangan 180 °!) Dan kaki (dengan gerakan yang tepat!) Kepada mikro: bit sementara mikro: bit memberikan anda ciri-ciri hebat seperti matriks LED, komunikasi radio, komunikasi bluetooth, akselerometer, kompas, tetapi juga akses ke semua perkara dengan MicroPython atau dengan bahasa pengaturcaraan visual yang serupa dengan calar (sebenarnya juga dalam C ++ dan javascript tetapi saya dapati yang kurang sesuai untuk pendidikan).

Saya juga akan menggunakan instruksional ini agar saya dapat membuat pembaca dan pembuatnya berada di landasan yang betul untuk mengetahui lebih banyak mengenai robotik mudah alih, elektronik, reka bentuk dan pemotongan kayu. Untuk melakukannya, saya merancang segala-galanya agar menjadi modular mungkin. Sebagai contoh, saya tidak akan menggunakan gam untuk membenarkan pemasangan dan pembongkaran secara bebas, menjadikan peningkatan dan penyahpepijatan lebih mudah. Saya juga akan membuat langkah-langkah selangkah yang saya dapat, sehingga anda dapat secara progresif memahami apa yang sedang terjadi, periksa apakah semuanya berjalan sebagaimana mestinya dan sampai ke penghujungnya dengan robot yang berfungsi.

Langkah 1: Mengumpulkan Kepingan

Mengumpulkan Kepingan
Mengumpulkan Kepingan

Untuk projek ini, minimum yang anda perlukan ialah:

  • Kayu MDF setebal 5 mm dan pemotong laser untuk kerangka
  • Bateri lithium 1x18650, perisai bateri 1x untuk tenaga dan gangguan
  • 1xMicro: Kad bit dan 1xMicro: papan pelanjutan bit untuk otak (walaupun kedua-duanya dapat diganti dengan mudah oleh Arduino)
  • Motor stepper 2x28BYJ-5V, pemacu motor stepper 2xA4988 dan papan pengembangan 2x untuk memasang pemandu untuk kaki
  • Motor servo 1x TOF10120 dan 1x Mini 9g untuk mataBeberapa kabel dan skru
  • Roda universal 1x, tinggi = 15mm

Di antaranya, hanya tiga bahagian yang bukan standard, oleh itu berikut adalah pautan untuk mencarinya: cari papan pemanjangan yang saya gunakan di sini (tetapi saya akan mengesyorkan anda menggunakan yang satu ini untuk versi robot yang kemas. Anda perlu mengubah reka bentuk hampir tidak ada dan ia akan menjadikan pendawaian lebih mudah dengan kepala wanita-wanita yang bengkok), pelindung bateri di sini, dan roda universal di sini.

Sebaik-baiknya anda juga mempunyai pilihan:

  • Multimeter
  • Papan roti
  • Setrika pematerian

Bagi mereka dan juga pemotong laser, periksa sama ada anda mempunyai fablab di sekitar tempat anda! Itu adalah tempat yang bagus untuk bertemu dengan beberapa pembuat inspirasi!

Langkah 2: Menyiapkan Kaki

Menyiapkan Kaki
Menyiapkan Kaki
Mempersiapkan Kaki
Mempersiapkan Kaki
Mempersiapkan Kaki
Mempersiapkan Kaki
Menyiapkan Kaki
Menyiapkan Kaki

Misi pertama anda, jika anda menerimanya, adalah menjadikan motor stepper kami berputar menggunakan mikro: bit sebagai pengawal! Mengapa motor stepper? Saya mungkin menggunakan motor DC dengan pengurang tetapi saya mencubanya dan saya sukar mendapatkan motor murah untuk berjalan pada kelajuan rendah. Saya juga berpendapat bahawa adalah baik untuk mengetahui dengan tepat pada kelajuan roda saya berpusing. Atas sebab itulah motor stepper adalah pilihan terbaik.

Jadi sekarang, bagaimana untuk mengawal motor 28BYJ menggunakan pemacu 4988? Jawapannya … agak panjang. Saya tidak berjaya membuatnya sesuai dengan arahan ini, jadi saya membuat yang lain hanya untuk tujuan ini yang anda akan dapati di sini. Saya menjemput anda untuk mengikuti langkah-langkah tersebut hingga akhir dengan penciptaan papan prototaip kecil 26x22mm besar dengan lubang 2x2mm 17 mm untuk memasangnya di sisi seperti yang ditunjukkan dalam gambar di atas (Perhatikan bahawa seperti yang dinyatakan dalam artikel yang dirujuk, wayar kuning di sebelah kiri melekat di sana untuk mengingatkan anda untuk menyatukan SLP dan RST bersama-sama).

Setelah bekerja dengan satu motor dengan papan prototaip, saya juga merancang PCB saya sendiri untuk membuat sesuatu menjadi lebih kemas. Saya melampirkan fail easyEDA yang sesuai. Ini adalah fail txt tetapi anda masih boleh membukanya dengan platform penyuntingan dalam talian percuma easyEDA.

Langkah 3: Saya Melihat Cahaya !! (Pilihan)

Saya nampak cahaya !! (Pilihan)
Saya nampak cahaya !! (Pilihan)
Saya nampak cahaya !! (Pilihan)
Saya nampak cahaya !! (Pilihan)
Saya nampak cahaya !! (Pilihan)
Saya nampak cahaya !! (Pilihan)

Sekiranya anda hanya mahu membina dan tidak lebih, lompat ke perenggan sebelum langkah terakhir ini untuk melihat cara menyambungkan TOF10120 ke mikro: bit. Sekiranya tidak ditindaklanjuti.

Sebagai mikro: bit kami tidak dilengkapi dengan kamera atau sensor jarak, ia menjadikannya buta untuk sebarang aplikasi robotik mudah alih. Ia dilengkapi dengan pemancar radio dan reseptor yang membolehkan kita membina kerangka atas apa yang sudah kita miliki dan mendapatkan robot kawalan jauh. Tetapi bukankah lebih baik membuat robot kita autonomi? Ya ia akan berlaku! Oleh itu mari kita lihat bagaimana menuju ke sana.

Apa yang kami minati sekarang ialah melengkapkan robot kami dengan sensor, agar robot kami memperoleh beberapa maklumat mengenai persekitarannya. Terdapat banyak jenis sensor yang tersedia, tetapi di sini kita akan memberi tumpuan kepada sensor jarak. Semasa saya merancang robot ini, tujuan saya kebanyakannya ialah robot tidak menabrak apa-apa, oleh itu saya mahu ia merasakan halangan. Untuk ini terdapat juga beberapa pilihan. Yang pertama, sangat mudah, boleh menggunakan bumper, tetapi maklumat mengenai persekitaran agak terhad. Sebaliknya, anda boleh berfikir untuk menambah kamera (atau Lidar atau kinect!). Saya suka kamera, penglihatan komputer dan semua perkara, tetapi malangnya Micro: bit tidak menyokongnya (kita harus menggunakan Raspberry Pi untuk menyokong peranti seperti itu, bukan mikro: bit atau Arduino).

Oleh itu, apakah sokongan mikro: bit yang terdapat di antara kamera dan bumper? Terdapat sensor aktif kecil yang mengirimkan cahaya ke persekitaran dan memeriksa apa yang diterima untuk mendapatkan beberapa maklumat mengenai dunia. Yang saya sudah tahu ialah GP2Y0A41SK0F yang menggunakan kaedah triangulasi untuk menganggarkan jarak ke rintangan. Walau bagaimanapun, saya tertanya-tanya apakah saya dapat menemui sesuatu yang lebih baik, jadi saya membuat penyelidikan dan akhirnya saya menemui TOF10120 (dan GY-VL53L0XV2 tetapi saya belum menerimanya:(). Berikut adalah artikel yang bagus untuk anda mencarinya. Pada dasarnya sensor ini memancarkan sinyal inframerah yang memantulkan rintangan dan kemudian menerima cahaya yang dipantulkan. Bergantung pada masa yang diperlukan cahaya untuk pergi dan balik, sensor dapat menganggarkan jarak halangan (maka nama TOF = waktu penerbangan Oleh kerana saiznya yang kecil, jarak jarak dan keperluan kuasa saya memutuskan untuk menggunakan TOF10120.

Walaupun idea pertama saya adalah meletakkan tiga dari robot tersebut (satu di depan dan dua di sisi), tahun baru China dan pandemik COVID-19 tidak menginginkannya seperti itu kerana ia seolah-olah menimbulkan masalah dengan penghantaran. Oleh kerana saya terhad pada satu TOF10120, yang saya mahu lihat di sisi juga dan bahawa saya mempunyai beberapa motor servo di sekitar, saya memutuskan untuk memasang sensor saya pada servo. Jadi dua perkara hilang sekarang: bagaimana saya menggunakan TOF10120 dengan mikro: bit? Dan soalan yang sama dengan servo.

Nasib baik mikro: bit dilengkapi dengan protokol komunikasi I2C dan menjadikan hidup kita sangat mudah: pasangkan wayar merah ke 3.3V, hitam ke tanah, hijau ke SCL dan biru ke SDA dan hanya itu untuk bahagian perkakasan. Untuk perisian, saya menggalakkan anda membaca sedikit mengenai komunikasi I2C dan mencuba kod python yang saya lampirkan pada mikro: bit. Program itu harus mencetak jarak yang diukur oleh sensor pada REPL (Baca Evaluate Print Loop). Itu sahaja. Kami baru sahaja melihat mikro kami: bit.

Sekarang mari kita putar leher jika anda membenarkan saya meneruskan analogi saya dengan anatomi haiwan. Satu-satunya pendapat yang perlu kita lakukan ialah menggerakkan motor servo dengan mikro: bit. Bahagian ini semakin lama jadi saya hanya akan memberikan pautan ini yang mempunyai semua maklumat yang anda perlukan dan kod yang saya gunakan untuk mengujinya. Sekiranya anda mahu, saya juga menambah kod ringkas untuk mengawal servo menggunakan pin0. Jangan lupa untuk menghidupkan servo anda dengan 5V dan bukan 3.3V.

Langkah 4: Meretas Perisai Bateri

Meretas Perisai Bateri
Meretas Perisai Bateri
Meretas Perisai Bateri
Meretas Perisai Bateri
Meretas Perisai Bateri
Meretas Perisai Bateri

Kini setelah kami menyiapkan penggerak dan sensor kami, inilah masanya untuk melihat sistem pengurusan bateri. Untuk anda mengetahui lebih lanjut mengenai pelindung bateri yang saya pilih, saya akan menasihati anda untuk membaca artikel ini. Saya merasa sangat jelas dan mudah dicapai. Dari artikel ini kita dapat melihat banyak kelebihan pelindung bateri ini, tetapi ada satu kelemahan penting yang tidak ingin saya terima: suis ON / OFF hanya mempengaruhi output USB. Ini bermakna jika anda mematikan suis, semua pin 3.3V dan 5V yang lain akan dihidupkan. Hasilnya, ketika kita menggunakan pin tersebut untuk robot kita, suis tidak akan melakukan apa-apa…

Tetapi saya mahu mematikan robot saya untuk tidak mengosongkan bateri saya, jadi saya terpaksa meretas pelindung bateri. Ia tidak akan cantik, tetapi berfungsi dan tidak memerlukan apa-apa. Oleh itu, saya mahu suis membuka atau menutup litar sehingga mengasingkan sel bateri saya dari pelindung bateri. Saya tidak mempunyai peralatan untuk menyentuh PCB, tetapi saya mempunyai kepingan plastik. Jadi sekarang bayangkan bahawa saya memotong sekeping plastik sehingga boleh dipasang di salah satu hujung sel bateri saya di pelindung seperti pada gambar pertama di atas. Litar sekarang terbuka dan bateri saya disimpan dengan selamat.

Ya tetapi saya tidak mahu membuka robot untuk mengakses pelindung bateri untuk meletakkan dan mengeluarkan plastik ini! Mudah: dapatkan suis dan pita dua aluminium kotak kecil ke setiap wayar yang disambungkan ke suis. Sekarang pasangkan kedua kepingan aluminium itu ke kepingan plastik agar kedua kepingan aluminium itu terasing antara satu sama lain dan agar aluminium terkena bahagian luar sistem anda. Kebiasaannya itu mesti dilakukan. Masukkan ciptaan baru anda di pelindung bateri di sebelah sel, dan suisnya membolehkan anda membuka atau menutup litar yang disambungkan ke sel.

Satu perkara terakhir: untuk memudahkan pemasangan dan pembongkaran robot, saya akan menasihatkan anda untuk memasang header wanita pada pelindung bateri. Dengan cara ini anda boleh memasang dan mencabut dengan mudah apa yang anda buat dengan motor dan pemacu mereka.

Langkah 5: Reka Bentuk 3D dan Potong

Reka Bentuk dan Potong 3D
Reka Bentuk dan Potong 3D
Reka Bentuk dan Potong 3D
Reka Bentuk dan Potong 3D

Satu-satunya perkara yang hilang sekarang ialah membina struktur yang akan menyatukan semua komponen kita. Untuk melakukan ini, saya menggunakan platform tinkercad dalam talian. Ini adalah persekitaran yang sangat bagus untuk melakukan beberapa CAD asas yang sering kali cukup untuk merancang sesuatu untuk pemotong laser.

Setelah beberapa lama berfikir, sudah tiba masanya untuk bermain-main. Untuk melakukannya, saya mula mengumpulkan model 3D dari pelbagai bahagian yang saya ada (pertama kali menjaga servo dan TOF dari persamaan). Itu termasuk bateri dan perisai, motor stepper dan pemandu motor, dan tentu saja mikro: bit dengan papan pelanjutannya. Saya melampirkan semua model 3D yang sesuai sebagai fail stl. Untuk memudahkan prosesnya, saya memutuskan untuk menjadikan robot saya simetris. Akibatnya saya hanya bermain dengan separuh robot dan mencapai reka bentuk yang ditunjukkan dalam gambar di atas.

Dari ini beberapa versi menjadi hidup, dari mana saya memilih dua:

  • Yang cukup rapi, tanpa sensor jarak, yang membolehkan kabel tidak muncul. Walaupun tidak otonom versi ini masih dapat diprogramkan melalui bluetooth melalui iPad misalnya, atau dapat diprogram untuk dikendalikan menggunakan isyarat radio yang misalnya dapat dikirim oleh mikro lain: bit seperti yang ditunjukkan dalam video di atas.
  • Satu yang lebih rapi yang memungkinkan untuk pergi lebih jauh ke robotik mudah alih kerana memungkinkan untuk menangkap jarak halangan dengan pandangan 180 ° berkat sensor jarak yang dibina pada motor servo.

Untuk membina ini, pergi ke Fablab kegemaran anda dan gunakan pemotong laser yang anda dapati untuk memotong model pilihan anda: yang pertama sesuai dengan reka bentuk fail1_5mmMDF.svg dan design1_3mmMDF yang masing-masing sesuai dengan bahagian yang akan dipotong pada MDF 5mm kayu dan yang dipotong dari yang 3mm; yang kedua sesuai dengan reka bentuk fail2_5mmMDF.svg. Tetapkan kontur hitam yang akan dipotong dan warna merah yang akan terukir.

Nota sampingan: Saya menambah corak merah hanya untuk memuncaknya. Ini adalah fungsi pengisian Hilbert yang saya hasilkan menggunakan kod python yang dilampirkan.

Langkah 6: Memasang Binatang

Memasang Binatang
Memasang Binatang
Memasang Binatang
Memasang Binatang
Memasang Binatang
Memasang Binatang

Langkah yang saya ikuti untuk memasang robot versi pertama adalah seperti berikut (gambar biasanya berada dalam urutan yang betul):

  1. Tanggalkan penutup biru motor dan potong sedikit untuk membuat kabel melekat dari bahagian belakang motor.
  2. Pasang motor di setiap sisi menggunakan skru dan baut M2.
  3. Pasang papan prototaip di sisi menggunakan lubang 2x2mm dan beberapa skru dan baut.
  4. Pasang pemacu A4988 dan pita kabel motor agar sentiasa kemas.
  5. Pasang roda universal di bawah bahagian bawah dan tambahkan sisi.
  6. Pasang papan pemanjangan mikro: bit di bahagian atas.
  7. Pasang bahagian bawah penutup depan yang fleksibel.
  8. Letakkan perisai pemukul dan sambungkan semuanya (untuk melakukannya, kerana saya masih menunggu penghantaran papan pelanjutan yang saya mahukan dan yang saya hanya mempunyai satu dengan kepala wanita mencuat, saya mengitar semula kabel IDE dari komputer lama untuk berjaya tidak mempunyai kabel saya yang melekat pada papan untuk menutup semua ini dengan penutup depan yang boleh dilipat). Walaupun kod yang saya berikan sangat mudah disesuaikan, untuk menggunakannya secara langsung, anda perlu menyambungkan LANGKAH kiri ke pin 2, LANGKAH kanan ke pin 8, kiri DIR ke pin 12, DIR kanan ke pin 1.
  9. Letakkan mikro: bit pada sambungan.
  10. Uji bahawa semuanya berfungsi dengan MoveTest.py sebelum melangkah lebih jauh.
  11. Pasang suis di bahagian atas dan letakkan bit plastik di sebelah sel litium.
  12. Skru bahagian atas penutup depan.
  13. Pasang belakang, dan anda sudah selesai! Phew! Saya tidak mengharapkan banyak langkah! Jauh lebih mudah untuk memikirkannya dan melakukannya daripada menerangkannya dengan kata-kata! (Dan saya pasti masih ada maklumat yang hilang!)

Sekiranya anda membina versi kedua dengan sensor jarak, maka:

  1. Ikut arahan di atas. Satu-satunya perbezaan ialah anda perlu menambahkan beberapa spacer M2 pada langkah 7 (walaupun itulah yang saya lakukan tetapi tidak diperlukan), abaikan langkah 8 dan langkah 13 (kerana tidak ada penutup depan)
  2. Pasang motor servo dengan skru M2 dan sambungkan VCC dan GND servo secara langsung pada 5V pelindung bateri, dan sambungkan input kawalan ke pin 0 mikro: bit.
  3. Pasang dua kepingan kayu yang akan berada di atas servo dengan skru, pasangkan sensor TOF ini dan juga kepingan plastik putih yang disertakan dengan servo.
  4. Pasang unit terakhir ini pada servo dan sambungkan sensor menggunakan I2C mikro: bit seperti yang dijelaskan dalam langkah 3.

Langkah 7: Program

Itu sahaja! Anda mempunyai robot yang boleh diprogramkan dalam mikro: python atau di makecode. Saya melampirkan di sini beberapa contoh kod yang biasa saya lakukan untuk membuat video di atas:

  • Contoh 1: Letakkan radioControl.py pada mikro: bit robot dan ReadAccelero.py pada mikro: bit lain untuk mengawal robot menggunakan kecenderungan mikro: bit kedua.
  • Contoh 2: Letakkan Autonomous.py pada versi 2 robot itu akan meneroka persekitarannya.

Itu hanya contoh asas yang boleh anda gunakan untuk melangkah lebih jauh. Sebagai contoh, saya suka penyetempatan dan pemetaan serentak, dan biasanya ada semua yang anda perlukan dalam versi 2 robot ini untuk melakukannya! Walaupun satu kelemahan besar bagi saya untuk melakukan projek ini ialah pemacu PWM mikro: bit adalah pemacu perisian yang menggunakan pemasa yang sama untuk semua saluran, yang bermaksud bahawa semua PWM yang kita tetapkan mesti mempunyai frekuensi yang sama (yang merupakan sesuatu yang saya lakukan tidak tahu bila saya menulis contoh kod walaupun saya mengesan sesuatu yang pelik semasa saya menulis Autonomous.py).

Langkah 8: Melangkah Lebih Lanjut

Jangan ragu untuk memperbaiki reka bentuk, menyelesaikan beberapa masalah yang saya tidak nampak. Contohnya saya ingin akhirnya:

  • Tambahkan sensor IR di bahagian bawah robot untuk membuatnya mengesan sama ada tanah hitam atau putih atau jika ia sampai ke hujung meja saya.
  • Tukar sistem pengurusan bateri kerana saya belum berpuas hati dengannya. Pada masa ini, untuk mengisi semula bateri, ia memerlukan pembongkaran robot untuk mengeluarkan sel atau pelindung bateri… Oleh itu, saya merancang untuk: 1. menambahkan penyambung mini-USB di bahagian belakang robot yang saya Saya akan menyambung ke pelindung bateri, supaya saya dapat mengisinya semula; 2. Potong lubang di bahagian bawah untuk melihat LED dari pelindung bateri untuk melihat ketika pengisian selesai.
  • Periksa sama ada terdapat kaedah yang boleh diterima untuk mengeluarkan PWM dengan frekuensi yang berbeza.
  • Cubalah VL53L0XV2 untuk menggantikan TOF10120 kerana ia boleh menjadi pilihan yang lebih murah yang menjadikannya mudah diakses oleh lebih banyak orang. Walaupun saya membaca lebih lanjut mengenai sensor ini dan nampaknya syarikat yang membuat ini murah menjadikannya sukar untuk ditangani …
  • Uji reka bentuk roda yang berbeza untuk menjadikannya lebih tahan lama (Sekarang saya menjangkakan bahawa jika saya membawa roda masuk dan keluar berkali-kali, kayu akan rosak secara beransur-ansur. Sekiranya saya membuat kayu lebih elastik mengubah reka bentuk saya mungkin dapat bertahan lebih lama)

Ucapan terima kasih yang tidak terhingga kepada orang-orang dari pasukan robotik Bergerak (kini menjadi sebahagian daripada makmal Biorobotik) EPFL yang banyak membantu saya mengembangkan pengetahuan saya mengenai elektronik dan mekanik!

Disyorkan: