Isi kandungan:

Butang Joystick / Roda PC Tanpa Wayar: 4 Langkah (dengan Gambar)
Butang Joystick / Roda PC Tanpa Wayar: 4 Langkah (dengan Gambar)

Video: Butang Joystick / Roda PC Tanpa Wayar: 4 Langkah (dengan Gambar)

Video: Butang Joystick / Roda PC Tanpa Wayar: 4 Langkah (dengan Gambar)
Video: HOW TO RECONNECT PS4 CONTROLLER AFTER BLUETOOTH OTHER DEVICES (Bahasa Melayu) 2024, Julai
Anonim
Butang Joystick / Roda PC Tanpa Wayar
Butang Joystick / Roda PC Tanpa Wayar

Saya telah membina sim perlumbaan baru sejak beberapa tahun kebelakangan ini dan memutuskan untuk menggunakan roda kemudi DIY Direct Drive. Walaupun projek itu sendiri boleh menjadi beberapa instruksinya sendiri, ini adalah petunjuk tentang membuat semua butang pada roda tanpa wayar.

Kenapa?

  • Roda DD mempunyai putaran yang tidak terhad, jadi kabel yang dipintanya akan menjengkelkan.
  • Tidak ada kemampuan untuk mengarahkan kabel melalui poros roda seperti roda komersial
  • Saya ingin menukar roda dengan mudah dengan konfigurasi butang yang berbeza
  • Kerana saya boleh:)

Untuk mencapai matlamat butang tanpa wayar, kita perlu mempertimbangkan:

  • Penghantaran kuasa
  • Kesambungan Tanpa Wayar
  • Masa / kelewatan tindak balas
  • Kebolehpercayaan

Komponen berikut dipilih untuk memenuhi kriteria ini: Tx - Arduino Nano dengan Modul NRF24 Bersepadu di sini atau gunakan Generic Nano atau Pro Mini + NRF24 ModulRx - Arduino Pro Micro / Leonardo / Beetle (Atmega32u4) + modul NRF24USB 'Battery Bank' - Mana-mana bank bateri 18650 tunggal generik harus berfungsi. Ini akan berlangsung lebih kurang 20 jam! Anda mungkin ingin memeriksa sama ada ia boleh mengecas dan memberikan kuasa pada masa yang sama. Ini berguna jika ia berjalan rata dan anda mahu mengecas dan menggunakan pada masa yang sama.

Anda juga memerlukan butang dan suis kuasa pilihan anda, beberapa wayar penyambung dan mungkin beberapa tiub pengecutan haba.

Ini juga dapat digunakan dalam 'kotak butang' bukan pada roda tetapi saya rasa akan ada permintaan yang lebih sedikit kerana tidak ada banyak kelebihan jika tidak bergerak.

Alat yang diperlukan:

Pateri sol panas dan solderA pistol gam panas berguna untuk memasang bahagiannya juga. Arduino IDE dipasang pada komputer anda.

Langkah 1: Pendawaian Pemancar

Pendawaian Pemancar
Pendawaian Pemancar
Pendawaian Pemancar
Pendawaian Pemancar
Pendawaian Pemancar
Pendawaian Pemancar

Mulakan dengan memasang suis sebanyak yang anda perlukan di roda anda dan pertimbangkan lokasi Arduino. Sambungkan semua wayar ke suis seperti dalam rajah. Setiap butang akan disambungkan dengan satu sisi ke GND dan satu lagi ke pin arduino yang berkaitan. Kod ini membolehkan 14 suis / butang yang cukup untuk kebanyakan roda.

Sekiranya anda menggunakan Nano dengan modul NRF tertanam, tentu saja anda tidak perlu menambahkan pendawaian yang berkaitan untuk itu, cukup tekan butang.

Butang mengikut urutan ini (1-14): RX, TX, D2, D3, D4, D5, D6, D7, A0, A1, A2, A3, A4, A5

Tetapi mengapa hanya 14 butang? Sebabnya adalah kerana kita dapat membaca pin penuh dengan cepat dan hanya menghantar 2 bait data tidak memerlukan masa yang lama - Jadi walaupun ini dapat diubah suai untuk memasukkan lebih banyak butang (melalui matriks) dan / atau input analog, ini akan melambatkan sedikit. Bacaan matriks dan pembacaan / penukaran analog memerlukan masa pemproses. Saya hanya memerlukan 12 butang pada roda saya jadi saya menggunakannya tetapi akan mempertimbangkan untuk menambah lagi.

Kuasa Untuk mendapatkan kuasa, anda mempunyai dua pilihan - Anda boleh membiarkan bank bateri dengan berhati-hati dan selamatkannya ke roda entah bagaimana. Ini memberi anda bonus tambahan kerana dapat memutuskan bekalan kuasa dari arduino, mengelakkan suis terpasang dan beberapa pendawaian.

Sekiranya anda lebih suka penyelesaian yang lebih khusus, mungkin perlu membuka celahan bateri dan mengarahkan semula dalaman ke dalam konfigurasi tersuai anda.

Saya tidak mempunyai ruang di roda saya untuk membiarkannya tersusun sehingga ia dilucutkan. Saya mengeluarkan penyambung USB standard dari papan cas dan menyisipkan kabel +5 dan Gnd dari pad port usb ke Arduino melalui suis. Agak sukar untuk memperincikannya kerana banyak pilihan yang ada…

Litar kemudian dipasang di dalam roda, memperlihatkan penyambung cas USB mikro.

Papan pengecas akan mempunyai satu atau lebih LED untuk memaparkan status pengecasan - Sangat berguna untuk menjadikannya kelihatan entah bagaimana atau menggunakan plastik untuk 'mengarahkan' mereka ke tempat yang kelihatan sehingga anda tahu kapan ia selesai mengecas.

Roda apa itu? Bagi mereka yang berminat, reka bentuk roda saya adalah oleh Amstudio - Beberapa rekaan bahagian sim perlumbaan DIY yang hebat boleh didapati dari mereka dengan harga yang berpatutan.

Langkah 2: Penerima

Penerima
Penerima
Penerima
Penerima
Penerima
Penerima

Cukup ikuti rajah pendawaian seperti yang dilampirkan. Sekiranya anda tidak menggunakan Leonardo, anda akan memerlukan pengawal selia 3.3v luaran seperti AMS1117. Pengatur Pro Micro tidak dapat memberikan arus yang cukup untuk Modul NRF24 dan kumbang sama sekali tidak mempunyai satu.

Saya mempunyai kod warna sambungan ke modul NRF yang sama untuk Pro Micro dan kumbang.

Arduino 'Beetle' yang cukup mudah dijumpai di tempat-tempat umum tetapi sekali lagi, pengawal selia 3.3v perlu digunakan kerana tidak mempunyai sama sekali. Saya telah menguji ini dan ia juga berfungsi dengan baik. Sambungannya sama

Langkah 3: Memprogram Peranti

Memprogram Peranti
Memprogram Peranti
Memprogram Peranti
Memprogram Peranti
Memprogram Peranti
Memprogram Peranti

Sekiranya anda belum memasang Arduino IDE ke https://www.arduino.cc dan muat turun versi yang sesuai untuk sistem operasi anda untuk contoh ini saya berada di windows.

Setelah disediakan, anda memerlukan dua perpustakaan yang berbeza - Yang pertama mudah melalui Sketsa -> Sertakan Perpustakaan -> Urus Perpustakaan (atau CTRL + SHIFT + I)

NRFLite oleh Dave Parson (versi 2.2.2 sebagai penerbitan)

Yang kedua perlu dipasang secara manual dari

Klik pada 'Klon atau Muat turun' kemudian 'Muat turun ZIP dan buka fail yang dimuat turun. Anda kemudian perlu mengklik ke folder sehingga anda melihat folder 'Joystick' - Salin ke folder Perpustakaan Arduino anda (Pada tingkap, ini biasanya Di bawah Dokumen -> Arduino -> Perpustakaan.

Mulakan semula Arduino IDE

Sekiranya anda menggunakan Pro Micro untuk penerima, anda juga perlu menambahkan papan itu ke IDE. File -> Preferences -> URL Pengurus Papan Tambahan:

masukkan:

Kemudian pergi ke Tools -> Boards Manager, cari Sparkfun dan pasang 'Sparkfun AVR Boards'

Sekarang kami sudah bersedia! Mari bermula dengan pemancar - Sambungkannya ke PC anda

Di bawah Alat -> Papan, pilih 'Arduino Nano' (atau apa sahaja varian yang anda putuskan untuk digunakan). Sahkan juga port COM di bawah menu alat.

Buka fail Wireless_Wheel_Tx yang dilampirkan.

Hanya ada satu baris yang mungkin anda mahu ubah dalam kod ini dan itu:

int nrfChannel = 22;

Anda mempunyai sehingga 126 saluran yang boleh anda gunakan melalui spektrum 2.4Ghz. Tidak apa-apa untuk meninggalkan apa adanya tetapi jika anda mendapati anda mempunyai masalah dengan kebolehpercayaan, mungkin ubah ini ke nombor yang lain.

Kemudian tekan butang 'muat naik' dan tunggu sehingga selesai.

Perkara yang sama berlaku untuk Leonardo / Pro Micro / Beetle - Pilih papan yang anda mahukan - Untuk Leonardo dan Beetle, pilih papan Arduino leonardo. Untuk Pro Micro, pilih itu dan pilih juga varian / pemproses Atmega32u4 (5v, 16Mhz), buka fail Wireless_Wheel_Rx, ubah tetapan nrfChannel (jika anda mengubahnya pada Tx) dan program pergi.

Setelah peranti dihidupkan semula pada pengaturcaraan, komputer anda akan mengesan peranti kayu bedik. Sekiranya anda menghidupkan pemancar anda juga, anda seharusnya dapat menekan butang dan memaparkannya dalam status peranti!

Ciri sampingan yang menarik ialah anda akan mendapat lampu status pada Leonardo dan Pro Micro - Lampu LED TX akan menyala apabila ia mempunyai sambungan ke butang. Ini tidak terdapat pada kumbang.

DIKEMASKINI 13/2/2021

Saya telah menambah 2 fail tambahan (Tx dan Rx) ke instruksinya di sini untuk versi dengan 4 input Analog dan juga matriks butang 3X8. Sebilangan besar tidak diuji, mungkin mempunyai kelewatan. Sila cuba dan komen.

Langkah 4: Penambahbaikan

Penambahbaikan
Penambahbaikan

Power LEDSetelah menggunakan penyelesaian ini sebentar, saya mempunyai kebiasaan membiarkan roda secara tidak sengaja. Untuk mengatasi masalah ini, saya menambahkan LED ke bahagian depan sehingga saya dapat melihat roda itu dihidupkan. Ini hanyalah larian led 3mm sederhana dari 5v pada arduino melalui perintang. Bahagian atasnya diampelas untuk menyebarkan cahaya sedikit dan mengelakkan silau.

Meter tahap bateri Saya membeli beberapa meter aras bateri dari BG atau Ali tetapi ketika mereka tiba, jumlahnya jauh lebih besar daripada yang saya harapkan tetapi ini adalah sesuatu yang masih ingin saya tambahkan. Terdapat banyak pilihan untuk ini tetapi kerana baterinya tahan lama, saya cenderung untuk mengisi semula setelah beberapa jam penggunaan.

Butang tambahan / pengekod / input analog Masih memikirkan yang satu ini. Bagi saya, tidak begitu penting untuk perlumbaan yang saya lakukan tetapi untuk perkara seperti F1 mungkin lebih berguna. Saya akan mempertimbangkan dua versi atau menambahkannya jika terdapat permintaan yang mencukupi tetapi ini mungkin mempengaruhi masa tindak balas pada butang.

Disyorkan: