Daftar Isi:

Kontrol Robot Tempur Arduino Murah: 10 Langkah (dengan Gambar)
Kontrol Robot Tempur Arduino Murah: 10 Langkah (dengan Gambar)

Video: Kontrol Robot Tempur Arduino Murah: 10 Langkah (dengan Gambar)

Video: Kontrol Robot Tempur Arduino Murah: 10 Langkah (dengan Gambar)
Video: Cara membuat robot sensor ultrasonik arduino 2024, November
Anonim
Kontrol Robot Tempur Arduino Murah
Kontrol Robot Tempur Arduino Murah
Kontrol Robot Tempur Arduino Murah
Kontrol Robot Tempur Arduino Murah
Kontrol Robot Tempur Arduino Murah
Kontrol Robot Tempur Arduino Murah

Kebangkitan Battlebots di Amerika Serikat dan Robot Wars di Inggris menghidupkan kembali kecintaan saya pada robotika tempur. Jadi saya menemukan sekelompok pembuat bot lokal dan langsung masuk.

Kami bertarung di skala berat semut Inggris (batas berat 150 gram) dan saya segera menyadari cara tradisional untuk membuat bot yang melibatkan peralatan RC: pemancar RC yang mahal, penerima yang besar atau mahal, dan ESC (pengendali kecepatan elektronik) yang merupakan kotak ajaib yang dapat menangani arus jauh lebih banyak daripada yang diperlukan untuk bot sebesar ini.

Setelah menggunakan Arduino di masa lalu, saya ingin mencoba dan melakukan berbagai hal secara berbeda dan menetapkan tujuan sistem Arduino yang dapat menerima sinyal legal pertempuran dan mengendalikan dua motor penggerak dengan harga sekitar USD$5 (setengah biaya ESC murah)

Untuk membantu mencapai tujuan ini, saya me-remix mobil RC ini dengan instruksi, mengurangi berat/biaya penerima dan menghasilkan 4 sinyal PWM untuk menjalankan chip h-bridge yang murah

Instruksi ini akan fokus pada sistem kontrol Arduino tetapi saya akan menambahkan informasi tambahan untuk membantu orang baru membangun bot pertama mereka

Penafian:

Bahkan di bangunan/pertempuran robot tempur skala kecil bisa berbahaya, lakukan dengan risiko Anda sendiri

Langkah 1: Yang Anda Butuhkan

Bahan:

Untuk sistem kendali:

  • 1x Arduino pro mini 5v (USD$1.70)
  • 1x nRF24L01 Modul ($ 1,14)
  • 1x modul regulator 3.3v ($0,32)
  • 1x modul h-bridge ganda* ($0,90)

Untuk sisa bot baji dasar:

  • 2x motor roda gigi mikro** (versi murah, versi andal)
  • 1x2s baterai polimer Lithium
  • 1x pengisi daya keseimbangan
  • 1x tas pengisian lipo
  • 1x sakelar
  • 1x konektor baterai
  • misc wire (saya menggunakan beberapa kabel jumper Arduino yang saya miliki)
  • sekrup kecil
  • (opsional) epoksi
  • (opsional) Aluminium (dari kaleng minuman ringan)
  • (opsional) LED ekstra

Untuk pengontrol dasar:

  • 1x Arduino pro mini 5v
  • 1x nRF24L01 Modul
  • Modul pengatur 1x 3.3v
  • 1x Arduino-joystick

Peralatan:

  • Obeng
  • Besi solder
  • Tang
  • Printer 3d (opsional, tetapi membuat hidup lebih mudah)

*ketika melihat modul h-bridge, cari modul dengan semua 4 input sinyal bersebelahan, ini akan memudahkan untuk dipasang ke Arduino nantinya

**lihat langkah terakhir untuk beberapa tips dalam memilih kecepatan motor

Langkah 2: Cetak Sasis

Cetak Sasis
Cetak Sasis

Sebelum memulai sistem kontrol, perhatikan desain bot yang akan dibangun. Itu selalu yang terbaik untuk merancang bot dari senjata keluar. Untuk pemula, saya sarankan memulai dengan baji dasar, mereka dirancang untuk menjadi kuat dan mendorong lawan keluar dari jalan yang berarti Anda cenderung tidak akan hancur dalam pertarungan pertama Anda, ditambah lebih mudah untuk merasakan mengemudi saat Anda tidak melakukannya. 'tidak perlu khawatir tentang senjata aktif.

Saya telah merancang bot baji: "Slightly Crude" yang telah diuji pertempuran baik lapis baja maupun tidak lapis baja. Ini adalah bot pertama yang bagus, mudah dicetak dan dapat disatukan dengan 8 sekrup. Lihat di Thingiverse untuk desain top yang berbeda

Jika Anda tidak memiliki printer 3d, coba perpustakaan lokal, ruang peretas, atau ruang pembuat

Menambahkan pelindung tambahan mudah dilakukan saat baru keluar dari printer, amplas kedua baji dan kaleng minuman ringan aluminium dengan amplas saja, bersihkan debu pengamplasan, oleskan epoksi ke plastik dan aluminium, pegang bersama dengan klem atau karet gelang selama 12-24 jam

Saat ini saya tidak memiliki desain roda publik karena saya telah menggunakan ban karet dari kit robotika pendidikan melalui hub cetak 3d. Dalam beberapa minggu mendatang, saya akan merancang hub yang akan menggunakan cincin-O untuk pegangan. Setelah roda selesai, saya akan memperbarui halaman ini dan halaman Thingiverse

Langkah 3: Siapkan jembatan-H

Siapkan jembatan-H
Siapkan jembatan-H

Driver motor h-bridge yang berbeda datang dalam pengaturan yang berbeda tetapi modul yang ditautkan dalam daftar awal dilengkapi dengan 2 blok terminal sebagai output. Blok terminal ini berat dan besar sehingga yang terbaik adalah menghapusnya.

Cara termudah untuk melakukannya adalah dengan memanaskan kedua bantalan secara bersamaan dengan besi solder dan dengan hati-hati menggoyangkan balok dengan tang.

Sebelum melanjutkan, putuskan apakah Anda ingin dapat menukar motor dalam pengaturan Anda. Jika demikian, kabel jumper Arduino dapat disolder ke output modul, kemudian kabel yang berlawanan dapat disolder ke motor, membuatnya dapat dilepas sesuai kebutuhan.

Langkah 4: Menghubungkan Modul

Menghubungkan Modul
Menghubungkan Modul
Menghubungkan Modul
Menghubungkan Modul
Menghubungkan Modul
Menghubungkan Modul

Pengkabelan modul dapat dilakukan dengan 3 cara berbeda, itulah sebabnya langkah desain sangat penting. Pilihan senjata akan mempengaruhi bentuk bot dan pilihan kabel.

3 pilihan tersebut adalah:

  1. Kabel longgar (ringan tapi lebih rapuh) (gambar 1)
  2. Perfboard (lebih berat dari 1 tetapi lebih kuat dengan footprint yang lebih besar) (gambar 2)
  3. Papan sirkuit khusus (lebih berat dari 1 tetapi kuat dengan tapak kecil) desain papan terpasang (gambar 3)

terlepas dari pilihan yang dibuat, koneksi sebenarnya adalah sama.

Lakukan koneksi berikut dua kali (sekali untuk pengontrol dan sekali untuk penerima)

nRF24L01 (gambar penomoran pin 4**):

  • Pin 1 -> GND
  • Pin 2 -> pin keluar dari modul 3.3v
  • Pin 3 -> Pin Arduino 9
  • Pin 4 -> Pin Arduino 10
  • Pin 5 -> Pin Arduino 13
  • Pin 6 -> Pin Arduino 11
  • Pin 7 -> Pin Arduino 12

modul 3.3v:

  • Pin Vin -> Vcc*
  • Keluar pin -> pin 2 nRF (seperti di atas)
  • Pin GND -> GND

Arduino:

  • Pin 9-13 -> sambungkan ke nRF seperti di atas
  • Mentah -> Vcc*
  • GND -> GND

Lakukan koneksi berikut sekali untuk membedakan antara pengontrol dan penerima

Untuk Pengendali:

Joystik:

  • +5v -> Arduino 5v
  • vrx -> pin Arduino A2
  • vry -> pin Arduino A3
  • GND -> GND

Untuk penerima:

modul h-jembatan:

  • Vcc ->Vcc*
  • B-IB -> Pin Arduino 2
  • B-IA -> Arduino pin 3
  • A-IB -> Pin Arduino 4
  • A-IA -> Arduino pin 5
  • GND -> GND

Ini paling mudah dilakukan dengan mengganti pin untuk Vcc dan GND dengan kawat, kemudian membalik papan dan menyolder pin langsung ke Arduino, ini menyederhanakan penyolderan dan membuat pemasangan yang pasti untuk driver motor

*agar robot tempur menjadi legal, titik isolasi (sakelar atau tautan yang dapat dilepas) harus ditambahkan antara baterai dan sirkuit. Artinya kutub positif aki harus disambungkan ke saklar, kemudian saklar disambungkan ke Vcc

** gambar dari https://arduino-info.wikispaces.com/Nrf24L01-2.4GHz-HowTo yang merupakan sumber yang bagus untuk modul nRF24L01

Langkah 5: Menyiapkan Pengontrol

Menyiapkan Pengontrol
Menyiapkan Pengontrol

Setelah semuanya terhubung, waktunya untuk beberapa kode.

Dimulai dengan pengontrol, beberapa nilai potensiometer diperlukan untuk memastikan bahwa joystick yang terhubung dengan tepat akan bekerja dengan kode transmisi.

Muat kode "joystickTestVals2". Kode ini digunakan untuk membaca nilai potensiometer dan menampilkannya melalui serial

Dengan kode berjalan dan jendela serial terbuka mulai dengan melihat nilai "UP", dorong joystick ke posisi maju penuh, nilai "UP" kemungkinan akan melompat di antara beberapa angka besar, pilih nilai terkecil yang Anda lihat, kurangi 10 dari itu (ini akan memastikan bahwa mendorong tongkat sepenuhnya akan memberikan kekuatan penuh) dan menuliskannya sebagai "Up Max" memungkinkan joystick untuk melompat kembali ke tengah. Sekarang pilih nilai terbesar yang Anda lihat, tambahkan 20 dan tuliskan sebagai "UpRestMax". Ulangi proses dengan menekan tongkat ke bawah dan membalikkan penambahan/pengurangan nilai rekaman sebagai "UpMin" dan "UpRestMin"

Ulangi seluruh proses lagi untuk kiri dan kanan, mulai dengan mendorong tongkat ke kanan, merekam "SideMax" lalu "SideRestMax" saat muncul kembali dan mendorong ke kiri untuk merekam "SideMin" dan "SideRestMin"

Nilai-nilai ini sangat penting, terutama semua nilai yang mengandung kata "Istirahat". nilai-nilai ini membuat "zona mati" di tengah tongkat sehingga bot tidak akan bergerak saat tongkat beristirahat di tengah, pastikan bahwa ketika tongkat berada di tengah, nilainya berada di antara "restMin" dan "restMax" untuk kedua sumbu

Langkah 6: Kode

Kode
Kode
Kode
Kode

Kode yang diberikan melakukan segalanya untuk bot baji dasar dengan struktur di tempat untuk memungkinkan nilai pwm senjata dikirim juga.

Perpustakaan yang dibutuhkan:

  • Perpustakaan nRF24L01 dari sini: GitHub
  • Perangkat Lunak PWM dari sini: Google Code

Siapkan pengontrol Anda:

buka kode txMix dan ubah nilai batas tongkat ke nilai yang Anda tulis di langkah terakhir. Ini akan memastikan bahwa kode bereaksi dengan benar terhadap joystick Anda (Gambar 1)

Sesuaikan pipa:

Untuk memastikan Anda tidak mengganggu orang lain di acara Anda, Anda perlu mengganti pipa radio. Ini berlaku sebagai pengidentifikasi, dan penerima hanya akan bertindak berdasarkan sinyal dari pipa yang benar, jadi pastikan untuk mengubah pipa di kedua kode menjadi hal yang sama.

Pada gambar 2 digit heksagonal pipa telah disorot. Ini adalah dua digit yang perlu diubah untuk menyesuaikan pipa. Ubah "E1" ke nilai hex 2 digit lainnya dan tuliskan sehingga Anda dapat dengan mudah memeriksanya terhadap pipa lawan di suatu acara

Mengunggah:

  • txMix ke pengontrol
  • terima ke modul penerima

Jalankan kode:

txMix:

Kode terbaca di posisi joystick sebagai nilai "UP" dan nilai "sisi". nilai-nilai ini dibatasi berdasarkan nilai maksimal yang diberikan untuk memastikan kekuatan penuh akan diberikan pada posisi tongkat maksimum.

Nilai-nilai ini kemudian diperiksa untuk memastikan bahwa tongkat telah pindah dari posisi netral, jika tidak ada nol yang dikirim.

Nilai-nilai tersebut kemudian secara individual dicampur menjadi dua variabel, satu untuk kecepatan motor kiri dan satu untuk kecepatan motor kanan. Dalam variabel ini nilai negatif digunakan untuk menunjukkan motor bergerak mundur karena menyederhanakan pencampuran.

Nilai kecepatan kiri dan kanan kemudian dipisahkan menjadi empat nilai pwm, masing-masing satu nilai: motor kanan maju, motor kiri maju, motor kanan mundur, motor kiri mundur.

Empat nilai pwm kemudian dikirim ke penerima.

menerima:

Cukup menerima sinyal dari pengontrol, memeriksa bahwa sinyal tidak mengandung nilai pwm untuk maju dan mundur pada satu motor kemudian menerapkan pwm.

Penerima juga gagal mengamankan motor ketika sinyal tidak diterima dari pengontrol

Langkah 7: Mengikat Semuanya Bersama-sama

Mengikat Semuanya Bersama-sama
Mengikat Semuanya Bersama-sama
Mengikat Semuanya Bersama-sama
Mengikat Semuanya Bersama-sama
Mengikat Semuanya Bersama-sama
Mengikat Semuanya Bersama-sama

Solder konektor ke motor atau solder motor langsung ke h-bridge. (Saya lebih suka konektor sehingga saya dapat dengan mudah mengganti colokan jika saya salah menyambungkan motor)

Solder ujung positif dari konektor baterai ke pin tengah sakelar dan salah satu pin luar sakelar ke Vcc modul yang terhubung.

Solder kabel negatif dari konektor baterai ke GND modul yang terhubung.

(Opsional) tambahkan LED tambahan antara Vcc dan GND. Semua robot tempur memerlukan lampu yang menyala saat sistem memiliki daya, tergantung pada komponen sistem ini memiliki LED di Arduino, modul 3.3v dan h-bridge sehingga setidaknya salah satunya terlihat dari luar. bot aturan ini terpenuhi. LED tambahan dapat digunakan untuk memastikan aturan ini terpenuhi dan untuk menyesuaikan tampilan

Sedikit Mentah mudah untuk dibaut, kencangkan dudukan motor di tempatnya terlebih dahulu, tambahkan elektronik, lalu kencangkan tutupnya di tempatnya, sedikit velcro akan membantu menahan sakelar ke tutupnya

Pengontrol adalah milik Anda untuk dirancang dan dicetak. Untuk pengujian, saya telah menggunakan pengontrol terlampir yang telah dimodifikasi dari pengontrol BB8 V3 James Bruton

Langkah 8: Sepatah Kata tentang Aturan Tempur Robot

Sepatah Kata tentang Aturan Tempur Robot
Sepatah Kata tentang Aturan Tempur Robot

Negara, negara bagian, dan kelompok yang berbeda menjalankan acara pertempuran robot dengan aturan yang berbeda.

Saya telah membuat sistem ini dan menulis ini 'bisa menjadi seumum mungkin sambil memukul aturan utama yang berkaitan dengan sistem RC (terutama sistem harus digital 2.4GHz dan memiliki titik isolasi baterai). Untuk menjalankan sistem ini dan atau merancang bot pertama Anda sendiri, yang terbaik adalah menghubungi grup lokal Anda dan mendapatkan salinan aturan mereka.

Aturan yang dijalankan oleh grup lokal Anda adalah mutlak, jangan mengambil kata-kata saya dalam instruksi ini atas aturan grup Anda.

Karena sistem Arduino ini baru bagi komunitas, kemungkinan besar Anda akan diminta untuk mengujinya sebelum menggunakannya di sebuah acara. Saya telah menguji sistem ini berulang kali terhadap peralatan RC standar dan melawan dirinya sendiri tanpa masalah gangguan sehingga harus lulus tes apa pun, namun, penyelenggara di acara lokal Anda memiliki keputusan akhir, hormati keputusan mereka. Jika mereka menolak penggunaannya, tanyakan apakah ada bot pinjaman yang dapat Anda lawan, atau minta klarifikasi mengapa ditolak dan coba perbaiki masalah untuk acara berikutnya

Langkah 9: Informasi Tambahan tentang Motor

Informasi Tambahan tentang Motor
Informasi Tambahan tentang Motor

Motor roda gigi mikro yang digunakan di kelas semut datang dalam berbagai kecepatan dan ditandai menggunakan RPM atau rasio Roda Gigi. Di bawah ini adalah konversi kasar.

Kebanyakan bot menggunakan motor antara 75:1 dan 30:1 (dengan beberapa pengecualian menggunakan 10:1). Bot dengan senjata berputar besar dapat mengambil manfaat dari motor 75:1 yang lebih lambat karena kecepatan yang lebih lambat memungkinkan lebih banyak kontrol. Baji, pengangkat, dan sirip yang gesit adalah yang terbaik pada 30:1 di tangan pengemudi yang terampil. Saya merekomendasikan motor 50: 1 dalam irisan untuk beberapa pertarungan pertama hanya untuk membiasakan diri dengan sistem dan mengemudi

  • 12V 2000 RPM (atau 6V 1000RPM) -> 30:1
  • 6V 300RPM -> 50:1

Langkah 10: Pembaruan dan Peningkatan

Sudah beberapa tahun sejak saya memposting 'ible ini dan saya telah belajar banyak tentang sistem ini sehingga saatnya untuk memperbaruinya di sini. Yang paling penting adalah pilihan komponen, komponen asli bekerja relatif baik tetapi terkadang gagal selama pertempuran. 2 pelaku besar adalah H-Bridge dan modul nrf24l01, karena saya memilih suku cadang termurah yang bisa saya temukan. Ini dapat diperbaiki dengan:

  • Meng-upgrade 0.5A H-bridge ke 1.5A H-bridge, seperti ini: 1.5A H-bridge
  • Meningkatkan modul nrf24l01 ke desain SMD sepenuhnya: Buka NRF24l01 pintar

Seiring dengan peningkatan komponen baru, saya telah merancang beberapa PCB baru yang membantu memadatkan RX dan menambahkan lebih banyak fitur ke TX

Saya juga memiliki beberapa perubahan kode yang akan datang, jadi pantau terus untuk itu

Direkomendasikan: