Daftar Isi:

Pengontrol Saat Berjalan: 8 Langkah
Pengontrol Saat Berjalan: 8 Langkah

Video: Pengontrol Saat Berjalan: 8 Langkah

Video: Pengontrol Saat Berjalan: 8 Langkah
Video: RAHASIA KECEPATAN MOVEMENT PRO PLAYER | CARA SETTING KONTROL ANALOG PUBG MOBILE 2024, Juli
Anonim
Pengontrol Saat Berjalan
Pengontrol Saat Berjalan
Pengontrol Saat Berjalan
Pengontrol Saat Berjalan
Pengontrol Saat Berjalan
Pengontrol Saat Berjalan

Apakah Anda suka bermain game di ponsel pintar Anda? Apakah Anda bosan bermain game dengan kontrol layar sentuh yang kikuk? Benci lupa mengisi daya pengontrol Bluetooth Anda? Perlu digunakan untuk itu saat bepergian kabel yang Anda beli tetapi tidak pernah digunakan?

Mengapa tidak membuat pengontrol sendiri saat bepergian?

Saya yakin saya cukup terlambat untuk permainan (permainan kata-kata) tetapi saya baru-baru ini menemukan bahwa smartphone lama saya mampu memainkan game retro melalui emulasi. Tumbuh dewasa, saya adalah penggemar berat sistem Game Boy dan memiliki kenangan indah bermain selama berjam-jam dan berusaha keras untuk mengendarai mobil yang panjang dengan putus asa mencoba menemukan titik penyimpanan sebelum baterai saya mati atau matahari terlalu jauh di luar cakrawala untuk lihat layar saya. Sekarang saya bisa bermain di ponsel saya dan bernostalgia tetapi dengan layar back-lit yang bagus. Terima kasih teknologi!

Penafian: Emulasi game adalah subjek yang sensitif dan menghindari garis pembajakan dalam beberapa kasus. Harap mendidik diri sendiri dan bermain secara bertanggung jawab!

Latar belakang:

Saya memutuskan untuk mengejar proyek ini setelah membuat keyboard shortcut. Saat mempelajari perpustakaan keyboard arduino dan membuat pintasan, saya mengikat beberapa tombol uji ke WASD. Itu segera mulai bekerja dengan game PC saya dan itu membuat roda berputar. Sekitar waktu yang sama saya kehabisan ruang di ponsel saya untuk buku audio dan mencari cara menggunakan USB flash drive dengan ponsel saya karena model saya tidak mengizinkan kartu microSD. Saat itulah saya belajar tentang OTG. OTG menggunakan muatan dari baterai ponsel Anda untuk memberi daya pada perangkat yang terhubung dengannya. Ini termasuk keyboard, mouse, dan flash drive untuk beberapa nama. Telepon dapat memberi daya pada perangkat 5v dan coba tebak apa yang dibutuhkan mikro arduino untuk beroperasi? Itu adalah pertandingan yang dibuat di surga.

Perlengkapan

Arduino Mikro

Papan Prototipe

Tombol 12 x 6mm (saya menggunakan sakelar sesaat taktil papan tempat memotong roti klasik)

Besi Solder dan Solder

Pencetak 3D

kabel saat bepergian (OTG); Saya membuat saya sendiri

Kabel pengisian USB mikro

Langkah 1: Desain

Desain
Desain
Desain
Desain
Desain
Desain

Saya ingin pengontrol saya portabel dan menawarkan semua tombol yang saya perlukan untuk bermain game hingga era Super Nintendo. Ini berarti saya membutuhkan 12 tombol. Empat untuk pad arah (d-pad) dan delapan untuk A, B, X, Y, Start, Select, Left Trigger, dan Right Trigger. Saya juga memiliki persyaratan tambahan bahwa saya ingin itu simetris sehingga saya bisa memainkannya dengan satu tangan menggunakan kedua tangan. Persyaratan tambahan itu mungkin terdengar aneh tetapi untuk memberikan beberapa konteks saya harus menyebutkan bahwa baru-baru ini saya secara teratur menemukan diri saya menggendong bayi yang sedang tidur dan hanya menggunakan satu tangan selama waktu bermain saya yang terbatas.

Dengan persyaratan yang ditentukan, saya mulai merancang pengontrol saya di CAD. Saya pribadi menggunakan OnShape tetapi saya tahu banyak orang juga sukses dengan Fusion360. Saya ingin memberikan teriakan cepat kepada orang lain di situs ini yang merancang kreasi mereka sendiri. Ini kerja keras! Desain yang saya buat sangat sederhana tetapi masih membutuhkan waktu berjam-jam bagi saya untuk puas. Bahkan saat saya mengetik ini, saya melihat banyak perbaikan yang ingin saya lakukan.

(Saya berencana untuk menyimpan file.stl di Thingiverse jika waktu mengizinkan. File akan ada di sana sehingga saya dapat memperbaruinya tanpa harus terus-menerus mengunggah file di sini.)

Langkah 2: Cetak Kreasi Anda

Cetak Kreasi Anda!
Cetak Kreasi Anda!

Saya memiliki printer Ender 3 yang baru saya miliki selama beberapa bulan. Ini adalah printer yang bagus untuk memulai jika Anda ingin masuk ke pencetakan 3D. Saya tidak menyadari betapa rusaknya itu sampai saya mengukur bagian saya untuk proyek ini. Sampai proyek ini saya hanya menggunakannya untuk mencetak mini untuk game meja. Mini keluar dengan baik dan saya tidak terlalu peduli dengan dimensi. Butuh beberapa kubus kalibrasi dan gulungan filamen baru sebelum saya puas dengan hasilnya.

Langkah 3: Mempersiapkan Papan Prototipe Anda

Mempersiapkan Papan Prototipe Anda
Mempersiapkan Papan Prototipe Anda
Mempersiapkan Papan Prototipe Anda
Mempersiapkan Papan Prototipe Anda

Sebelum menyolder tombol ke papan prototipe, saya menguji semua tombol pada papan tempat memotong roti dan menguji kode arduino saya secara bersamaan. Saya akan membahas kodenya di langkah selanjutnya.

Sekarang adalah waktu terbaik untuk memotong papan prototipe Anda menjadi ukuran. Gunakan rumah pengontrol tercetak Anda sebagai panduan dan keringkan tombol untuk memastikan semuanya sejajar. Saya hanya mengambil beberapa potongan kawat dan memotong papan berlebih kemudian mengampelas tepi persegi dengan amplas 150 grit.

Pengkabelan untuk pengontrol sangat mudah karena kami menggunakan resistor pull up internal arduino micro. Semua tombol masuk ke input dan ground. Tombol yang saya gunakan adalah sakelar sesaat taktil 6mm generik.

Menyolder tombol ke arduino adalah teka-teki kecil yang menyenangkan untuk dipecahkan. Beberapa tombol berada di bawah arduino dan saya harus mengeluarkan kabel dari bawahnya sebelum menyolder arduino ke papan prototipe. Jika Anda melihat lebih dekat pada sisi tombol papan, saya melewatkan kiri dan kanan untuk papan arah.

Untuk desain khusus saya, saya menyolder tombol papan arah atas dan bawah (saya melewatkan tombol papan arah kiri dan kanan) ke papan prototipe bersama dengan beberapa kabel ekstra panjang kemudian membalik papan dan menyolder arduino. Saya tidak memiliki diagram karena saya kebanyakan menyolder tombol satu per satu secara acak (saya mungkin mengunggah satu jika ada cukup minat). Setelah arduino diamankan, saya membalik papan kembali ke sisi tombol dan menyolder sisa tombol dan kabelnya.

Langkah 4: Opsional: Merapikan Rumah Pengontrol Anda

Sebelum perakitan akhir adalah saat yang tepat untuk mengampelas, mengisi celah, dan mengecat rumah pengontrol Anda. Saya memilih untuk melewatkan langkah ini untuk prototipe saya karena saya ingin segera memiliki sesuatu untuk digunakan. Ketika saya mau tidak mau meningkatkan desain saya menjadi sesuatu yang lebih halus, saya akan memberikannya pekerjaan yang menyakitkan yang layak.

Langkah 5: Majelis Akhir

Majelis Akhir
Majelis Akhir

Sekarang saatnya untuk meletakkan semua tombol Anda dan papan prototipe yang sudah selesai ke dalam housing. Saya menggunakan sekrup logam #4-24 x 1/2 lembar untuk desain saya. Mereka menyelesaikan pekerjaan tetapi tidak sesuai dengan yang saya inginkan.

Langkah 6: Program Arduino Anda

Anda mungkin ingin melakukan langkah ini lebih awal saat Anda masih mendesain papan atau setelah Anda menyolder semuanya ke papan prototipe. Saya suka memiliki ini di bagiannya sendiri.

Kode ini relatif sangat sederhana untuk sebagian besar program arduino yang pernah saya lihat. Kita hanya perlu menetapkan setiap tombol nilai keyboard dan arduino akan mengulang untuk memeriksa tombol apa yang ditekan dan mengirimkan informasi itu ke telepon kita.

Bagi yang tertarik, saya menggunakan aplikasi retroArch untuk memainkan game retro saya. Tombol yang saya gunakan diatur ke tata letak keyboard default yang digunakan untuk retroArch.

#include #include "Keyboard.h" #define NUM_BUTTONS 12 const uint8_t BUTTON_PINS[NUM_BUTTONS] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; // a = 'x' // b = 'z' // x = 's' // y = 'a' // bahu kiri = 'q' // bahu kanan = 'w' // pilih = 'rshift ' // start = 'enter' // up = 'key:up' // down = 'key:down' // left = 'key:left' // right = 'key:right' const char BUTTON_KEYS[NUM_BUTTONS] = {KEY_RETURN, KEY_DOWN_ARROW, KEY_UP_ARROW, KEY_LEFT_ARROW, KEY_RIGHT_ARROW, KEY_RIGHT_SHIFT, 'z', 'x', 's', 'a', 'q', 'w'}; Pantulan * tombol = Pantulan baru[NUM_BUTTONS]; void setup() { for (int i = 0; i < NUM_BUTTONS; i++) { keys.attach(BUTTON_PINS, INPUT_PULLUP); tombol.interval(25); } // menginisialisasi kontrol atas keyboard: Keyboard.begin(); } void loop() { // periksa apakah nilai berubah untuk (int i = 0; i < NUM_BUTTONS; i++) { keys.update(); if (buttons.fell()) { Keyboard.press(BUTTON_KEYS); } if (buttons.rose()) { Keyboard.release(BUTTON_KEYS); } } }

Langkah 7: Mainkan Game Anda

Mainkan Game Anda!
Mainkan Game Anda!

Atau, pengontrol ini dapat digunakan dengan PC tanpa kabel OTG untuk mengirim penekanan tombol atau makro. Saya juga punya teman yang mengatakan pengontrol seperti ini juga bisa berguna untuk menggambar tablet meskipun saya belum pernah mengacaukannya sebelumnya.

Saya harap Anda menemukan Instructable ini bermanfaat. Di bawah ini adalah bagian pelajaran bagi mereka yang ingin tahu tentang apa yang saya pelajari selama proses dan apa yang ingin saya lakukan secara berbeda.

Langkah 8: Pelajaran yang Dipetik

CAD:

Saya tidak pernah bermain-main dengan perangkat lunak CAD di masa lalu dan harus belajar saat bepergian dengan desain ini. Awalnya saya menggunakan desain yang lebih tegak yang pas di tangan Anda seperti Wii Nunchuk. Pengetahuan saya yang terbatas tentang mendesain dengan bentuk organik adalah kejatuhan saya. Mungkin saya harus mengambil Intructables di kelas desain CAD-nya.

Tombol:

Tombol yang saya gunakan lebih keras daripada yang saya inginkan (terutama ketika Anda mencoba mencegah seseorang bangun). Saya ingin menemukan beberapa tombol yang lebih tenang. Memasukkan pegas di antara kancing dan tutup kancing akan sangat membantu membuat bangunan terasa lebih halus. Tombol-tombolnya terlalu longgar untuk seleraku.

Pematerian:

Saya seorang pemula dalam menyolder dan tidak memiliki tangan yang stabil. Menyolder semua kabel kecil itu di semua tempat membutuhkan waktu lebih lama dari yang saya perkirakan. Jika saya harus melakukannya lagi, saya pasti akan memetakan di mana jalur kabel saya sebelum mengambil setrika. Itu akan mengurangi kesalahan yang saya temukan setelah menempelkan Arduino ke papan prototipe dan akan menghemat waktu saya.

Direkomendasikan: