Isi kandungan:

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

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

Video: Kawalan Robot Tempur Arduino Murah: 10 Langkah (dengan Gambar)
Video: Robot tenaga matahari ?? 2024, November
Anonim
Kawalan Robot Tempur Arduino Murah
Kawalan Robot Tempur Arduino Murah
Kawalan Robot Tempur Arduino Murah
Kawalan Robot Tempur Arduino Murah
Kawalan Robot Tempur Arduino Murah
Kawalan Robot Tempur Arduino Murah

Kebangkitan Battlebots di Amerika Syarikat dan Robot Wars di UK menghidupkan kembali minat saya terhadap robotik tempur. Oleh itu, saya dapati kumpulan pembuat bot tempatan dan menyelam tepat.

Kami bertarung dengan skala berat semut UK (had berat 150 gram) dan saya dengan cepat menyedari cara tradisional untuk membina bot yang melibatkan gear RC: pemancar RC yang mahal, penerima besar atau mahal dan ESC (pengawal kelajuan elektronik) yang merupakan kotak ajaib yang dapat mengatasi arus lebih lama daripada yang diperlukan untuk bot ukuran ini.

Setelah menggunakan Arduino pada masa lalu, saya ingin mencuba dan melakukan sesuatu dengan cara yang berbeza dan menjadikan diri saya matlamat sistem Arduino yang dapat menerima isyarat undang-undang tempur dan mengendalikan dua motor pemacu dengan harga sekitar USD $ 5 (separuh daripada kos ESC murah)

Untuk membantu mencapai matlamat ini, saya mencampurkan semula kereta RC ini yang dapat dipesan, mengurangkan berat / kos penerima dan menghasilkan 4 isyarat PWM untuk menjalankan cip jambatan yang murah

Pengajaran ini akan tertumpu pada sistem kawalan Arduino tetapi saya akan menambahkan maklumat tambahan untuk membantu orang baru membina bot pertama mereka

Penafian:

Walaupun dalam pertempuran kecil, robot / pertempuran robot boleh berbahaya, lakukan dengan risiko anda sendiri

Langkah 1: Apa yang Anda Perlu

Bahan:

Untuk sistem kawalan:

  • 1x Arduino pro mini 5v (USD $ 1.70)
  • 1x nRF24L01 Modul ($ 1.14)
  • Modul pengatur 1x 3.3v ($ 0.32)
  • Modul dwi-jambatan 1x * ($ 0.90)

Untuk sisa baji asas:

  • 2x motor gear mikro ** (versi murah, versi dipercayai)
  • Bateri polimer Lithium 1x 2s
  • Pengecas keseimbangan 1x
  • Beg cas lipo 1x
  • Suis 1x
  • Penyambung bateri 1x
  • wayar misc (saya menggunakan beberapa wayar jumper Arduino yang saya terbaring)
  • skru kecil
  • (pilihan) epoksi
  • (pilihan) Aluminium (dari tin minuman ringan)
  • (pilihan) LED tambahan

Untuk pengawal asas:

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

Alat:

  • Pemacu skru
  • Besi pematerian
  • Tang
  • Pencetak 3d (pilihan, tetapi menjadikan hidup lebih mudah)

* ketika melihat modul h-bridge, cari modul dengan semua 4 input isyarat bersebelahan, ini akan memudahkan untuk melampirkan ke Arduino nanti

** lihat langkah terakhir untuk beberapa petua memilih kelajuan motor

Langkah 2: Cetak Casis

Cetak Casis
Cetak Casis

Sebelum memulakan sistem kawalan, perhatikan reka bentuk bot yang akan dibina. Lebih baik merancang bot dari senjata keluar. Untuk pemula, saya cadangkan bermula dengan baji asas, mereka dirancang untuk menjadi kuat dan mendorong lawan keluar dari jalan yang bermaksud anda cenderung tidak hancur dalam pertarungan pertama anda, dan lebih mudah untuk merasakan pemanduan ketika anda tidak Tidak perlu risau senjata aktif.

Saya telah merancang bot baji: "Slightly Crude" yang telah diuji pertempuran dengan perisai dan tidak bersenjata. Ini bot pertama yang bagus, senang dicetak dan boleh disatukan dengan 8 skru. Lihat di Thingiverse untuk reka bentuk teratas yang berbeza

Sekiranya anda tidak memiliki pencetak 3d, cubalah perpustakaan tempatan, ruang penggodam atau ruang pembuat

Menambah perisai tambahan mudah dilakukan pada pencetak, pasangkan kedua baji dan minuman ringan boleh menggunakan aluminium dengan kertas pasir, sapu debu pengamplasan, sapukan epoksi pada plastik dan aluminium, tahan bersama dengan pengapit atau gelang getah selama 12-24 jam

Pada masa ini saya tidak mempunyai reka bentuk roda awam kerana saya menggunakan tayar getah dari kit robotik pendidikan melalui hab bercetak 3d. Dalam beberapa minggu akan datang, saya akan merancang hub yang akan menggunakan cincin O untuk mencengkam. Setelah roda selesai saya akan mengemas kini halaman ini dan halaman Thingiverse

Langkah 3: Persiapkan jambatan H

Persiapkan jambatan H
Persiapkan jambatan H

Pemacu motor h-bridge yang berlainan hadir dalam susunan yang berbeza tetapi modul yang dihubungkan dalam senarai awal dilengkapi dengan 2 blok terminal sebagai output. Blok terminal ini berat dan besar, jadi lebih baik membuangnya.

Cara termudah untuk melakukan ini adalah memanaskan kedua-dua alas pada masa yang sama dengan besi pematerian dan menggoyangkan blok dengan berhati-hati dengan sepasang tang

Sebelum meneruskan, tentukan sama ada anda mahu menukar motor dalam persediaan anda. Sekiranya demikian, kabel jumper Arduino dapat disolder ke output modul, maka kabel yang berlawanan dapat disolder ke motor, menjadikannya dapat dilepas jika diperlukan.

Langkah 4: Pendawaian Modul

Pendawaian Modul
Pendawaian Modul
Pendawaian Modul
Pendawaian Modul
Pendawaian Modul
Pendawaian Modul

Pendawaian modul dapat dilakukan dengan 3 cara yang berbeza, sebab itulah langkah reka bentuk sangat penting. Pilihan senjata akan mempengaruhi bentuk bot dan pilihan pendawaian.

3 pilihannya adalah:

  1. Kawat longgar (ringan tetapi lebih rapuh) (gambar 1)
  2. Perfboard (lebih berat dari 1 tetapi lebih kuat dengan jejak yang lebih besar) (gambar 2)
  3. Reka bentuk papan litar tersuai (lebih berat dari 1 tetapi kuat dengan jejak kecil) dilekatkan (gambar 3)

tidak kira pilihan yang dibuat, hubungan sebenarnya adalah sama.

Lakukan sambungan berikut dua kali (sekali untuk pengawal dan sekali untuk penerima)

nRF24L01 (gambar penomboran pin 4 **):

  • Pin 1 -> GND
  • Pin 2 -> pin keluar 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 *
  • Pin keluar -> pin 2 nRF (seperti di atas)
  • Pin GND -> GND

Arduino:

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

Lakukan sambungan berikut sekali untuk membezakan antara pengawal dan penerima

Untuk Pengawal:

Tongkat Joy:

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

Untuk penerima:

modul h-bridge:

  • Vcc -> Vcc *
  • B-IB -> Arduino pin 2
  • B-IA -> Pin Arduino 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 wayar, kemudian membalikkan papan terbalik dan menyolder pin terus ke Arduino, ini mempermudah pematerian dan membuat pemasangan yang pasti untuk pemandu motor

* agar robot tempur menjadi sah, titik pengasingan (suis atau pautan yang boleh ditanggalkan) mesti ditambahkan antara bateri dan litar. Ini bermaksud bahawa positif bateri mesti disambungkan ke suis, kemudian suis disambungkan ke Vcc

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

Langkah 5: Menyiapkan Pengawal

Menyiapkan Pengawal
Menyiapkan Pengawal

Setelah semuanya dihubungkan waktunya untuk beberapa kod.

Bermula dengan pengawal, beberapa nilai potensiometer diperlukan untuk memastikan bahawa kayu bedik tepat yang disambungkan akan berfungsi dengan kod pemancar.

Muatkan kod "joystickTestVals2". Kod ini digunakan untuk membaca nilai potensiometer dan memaparkannya melalui siri

Dengan kod berjalan dan tetingkap bersiri terbuka dengan melihat nilai "UP", tekan joystick ke posisi depan sepenuhnya, nilai "UP" kemungkinan akan melompat antara beberapa angka besar, pilih nilai terkecil dari yang anda lihat, tolak 10 daripadanya (ini akan memastikan bahawa menolak tongkat sepanjang masa akan memberi kekuatan penuh) dan tuliskan sebagai "Up Max" membolehkan batang bedik itu kembali ke tengah. Sekarang pilih nilai terbesar yang anda lihat, tambahkan 20 ke dalamnya dan tuliskan sebagai "UpRestMax". Ulangi proses dengan menekan tongkat ke bawah dan membalikkan penambahan / pengurangan mencatat nilai sebagai "UpMin" dan "UpRestMin"

Ulangi keseluruhan proses sekali lagi untuk kiri dan kanan, mulakan dengan menekan tongkat ke kanan, rakam "SideMax" kemudian "SideRestMax" ketika ia bergerak ke belakang dan tekan kiri untuk merakam "SideMin" dan "SideRestMin"

Nilai-nilai ini sangat penting, terutamanya semua nilai yang mengandungi perkataan "Rehat". nilai-nilai ini mewujudkan "zon mati" di tengah tongkat sehingga bot tidak akan bergerak ketika tongkat itu berada di tengah, pastikan bahawa apabila tongkat itu berpusat, nilai-nilai jatuh antara "restMin" dan "restMax" untuk kedua-dua paksi

Langkah 6: Kod

Kod
Kod
Kod
Kod

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

Perpustakaan yang diperlukan:

  • Perpustakaan nRF24L01 dari sini: GitHub
  • Perisian PWM dari sini: Kod Google

Sediakan alat kawalan anda:

buka kod txMix dan ubah nilai had tongkat ke nilai yang anda tulis pada langkah terakhir. Ini akan memastikan bahawa kod tersebut bertindak balas dengan betul pada kayu bedik anda (Gambar 1)

Sesuaikan paip:

Untuk memastikan anda tidak mengganggu orang lain di majlis anda, anda perlu menukar paip radio. Ini sebenarnya pengecam, dan penerima hanya akan bertindak pada isyarat dari paip yang betul, jadi pastikan untuk menukar paip dalam kedua kod ke perkara yang sama.

Dalam gambar 2 digit hex paip telah diserlahkan. Ini adalah dua digit yang perlu diubah untuk menyesuaikan paip. Tukar "E1" ke nilai heksa 2 digit yang lain dan tuliskannya supaya anda dapat memeriksanya dengan mudah terhadap paip lawan di suatu acara

Muat naik:

  • txMix ke pengawal
  • terima ke modul penerima

Jalankan kod:

txMix:

Kod tersebut dibaca dalam posisi joystick sebagai nilai "UP" dan nilai "side". nilai-nilai ini dikekang berdasarkan nilai maksimum yang diberikan untuk memastikan kuasa penuh akan diberikan pada posisi tongkat maksimum.

Nilai-nilai ini kemudian diperiksa untuk memastikan bahawa tongkat telah bergerak keluar dari kedudukan neutral, jika tidak ada angka nol dihantar.

Nilai kemudian dicampur secara individu menjadi dua pemboleh ubah, satu untuk kelajuan motor kiri dan satu untuk kelajuan motor kanan. Dalam pemboleh ubah ini nilai negatif digunakan untuk menunjukkan motor bergerak ke belakang kerana ia menyederhanakan pencampuran.

Nilai kelajuan kiri dan kanan kemudian dipisahkan menjadi empat nilai pwm, satu untuk masing-masing: motor kanan ke depan, motor kiri ke depan, motor kanan ke belakang, motor kiri ke belakang.

Nilai empat pwm kemudian dihantar ke penerima.

terima:

Hanya menerima isyarat dari pengawal, memeriksa bahawa isyarat tersebut tidak mengandungi nilai pwm untuk maju dan mundur pada satu motor kemudian menerapkan pwm.

Penerima juga gagal mengamankan motor ketika isyarat tidak diterima dari pengawal

Langkah 7: Menahan Semuanya

Menahan Semuanya Bersama
Menahan Semuanya Bersama
Menahan Semuanya Bersama
Menahan Semuanya Bersama
Menahan Semuanya Bersama
Menahan Semuanya Bersama

Penyambung pateri ke motor atau pateri motor terus ke jambatan h. (Saya lebih suka penyambung supaya saya boleh menukar palam sekiranya saya menyambungkan motor dengan tidak betul)

Pateri plumbum positif dari penyambung bateri ke pin tengah suis dan salah satu pin luar pada suis ke Vcc modul yang disambungkan.

Pateri plumbum negatif dari penyambung bateri ke GND modul yang disambungkan.

(Pilihan) tambahkan LED tambahan antara Vcc dan GND. Semua robot tempur memerlukan lampu yang menyala semasa sistem mempunyai kuasa, bergantung pada komponen sistem ini mempunyai LED pada Arduino, modul 3.3v dan jambatan-h selagi sekurang-kurangnya salah satu daripadanya dapat dilihat dari luar bot peraturan ini dipenuhi. LED tambahan boleh digunakan untuk memastikan peraturan ini dipenuhi dan untuk menyesuaikan penampilan

Slightly Crude mudah dipasang bersama, pasang motor di tempatnya terlebih dahulu, tambahkan elektronik, kemudian pasang penutup di tempatnya, sejumlah kecil velcro akan membantu menahan suis ke penutup

Pengawal adalah milik anda untuk merancang dan mencetak. Untuk pengujian, saya telah menggunakan alat kawalan terpasang yang telah diubah suai dari pengawal BB8 V3 James Bruton

Langkah 8: Perkataan mengenai Peraturan Perang Robot

Satu Perkataan mengenai Peraturan Tempur Robot
Satu Perkataan mengenai Peraturan Tempur Robot

Negara, negeri dan kumpulan yang berbeza menjalankan acara pertempuran robot dengan peraturan yang berbeza.

Saya telah membuat sistem ini dan menulis ini agar dapat menjadi seluas mungkin sambil memukul peraturan utama yang berkaitan dengan sistem RC (terutama sistem harus berukuran 2,4 GHz digital dan mempunyai titik pengasingan bateri). Untuk menjalankan sistem ini dan atau merancang bot pertama anda sendiri, lebih baik anda berhubung dengan kumpulan tempatan anda dan mendapatkan salinan peraturan mereka.

Peraturan yang dijalankan oleh kumpulan tempatan anda adalah mutlak, jangan kata saya dalam arahan ini mengenai peraturan kumpulan anda.

Oleh kerana sistem Arduino ini baru bagi komuniti, kemungkinan besar anda akan diminta untuk mengujinya sebelum menggunakannya di suatu acara. Saya telah bertarung menguji sistem ini berulang kali terhadap peralatan RC standard dan terhadapnya tanpa masalah gangguan, jadi ia harus lulus ujian apa pun, namun penganjur di majlis tempatan anda mempunyai keputusan terakhir, menghormati keputusan mereka. Jika mereka menolak penggunaannya, tanyakan apakah ada bot pinjaman yang dapat Anda lawan, atau minta penjelasan mengapa ia ditolak dan cuba perbaiki masalah untuk acara berikutnya

Langkah 9: Maklumat Tambahan mengenai Motor

Maklumat Tambahan mengenai Motor
Maklumat Tambahan mengenai Motor

Motor gear mikro yang digunakan di kelas semut hadir dalam kelajuan yang besar dan sama ada ditandakan menggunakan nisbah RPM atau Gear. Di bawah ini adalah penukaran kasar.

Sebilangan besar bot menggunakan motor antara 75: 1 dan 30: 1 (dengan beberapa pengecualian menggunakan 10: 1). Bot dengan senjata berputar besar dapat memanfaatkan motor 75: 1 yang lebih perlahan kerana kelajuan yang lebih perlahan membolehkan lebih banyak kawalan. Baji, angkat dan sirip lincah terbaik pada jarak 30: 1 di tangan pemandu yang mahir. Saya mengesyorkan motor 50: 1 dalam baji untuk beberapa pertarungan pertama untuk membiasakan diri dengan sistem dan pemanduan

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

Langkah 10: Kemas kini dan Penambahbaikan

Sudah beberapa tahun sejak saya menyiarkan ini dan saya telah belajar banyak mengenai sistem ini sehingga tiba masanya untuk memperbaruinya di sini. Yang paling penting ialah pemilihan komponen, komponen asalnya berfungsi dengan baik tetapi kadangkala gagal semasa pertempuran. 2 pelaku besar adalah modul H-Bridge dan nrf24l01, kerana saya memilih bahagian paling murah yang dapat saya temui. Ini boleh diperbaiki dengan:

  • Meningkatkan jambatan H 0.5A menjadi jambatan H 1.5A, seperti ini: Jambatan H 1.5A
  • Meningkatkan modul nrf24l01 ke reka bentuk SMD sepenuhnya: Buka NRF24l01 pintar

Bersama dengan peningkatan komponen baru, saya telah merancang beberapa PCB baru yang membantu memadatkan RX dan menambahkan lebih banyak ciri pada TX

Saya juga mempunyai beberapa perubahan kod yang akan datang, jadi nantikan mereka

Disyorkan: