Daftar Isi:

USB Paddle Game Controller: 7 Langkah (dengan Gambar)
USB Paddle Game Controller: 7 Langkah (dengan Gambar)

Video: USB Paddle Game Controller: 7 Langkah (dengan Gambar)

Video: USB Paddle Game Controller: 7 Langkah (dengan Gambar)
Video: Percuma? Beli stik PS2 untuk Game HP Android 2024, Desember
Anonim
Pengontrol Game Dayung USB
Pengontrol Game Dayung USB
Pengontrol Game Dayung USB
Pengontrol Game Dayung USB
Pengontrol Game Dayung USB
Pengontrol Game Dayung USB

Anak saya mengadakan malam video game retro untuk ulang tahunnya, dan pada pagi hari saya memutuskan untuk melihat apakah saya dapat membuat sepasang pengontrol permainan dayung USB untuk Pong dengan bantuan printer 3D dan elektronik dari simpanan saya. Sementara saya berhasil membuat mereka pada dasarnya bekerja tepat waktu, orang-orang terlalu sibuk dengan permainan lain untuk Pong pada akhirnya.

Kontroler dapat digunakan untuk Pong dengan emulator tingkat sirkuit DICE atau dengan versi pygame saya yang cukup akurat, untuk game Atari 2600 dengan emulator, dan untuk fungsionalitas seperti Etch-a-Sketch dengan program melukis seperti Tux Paint.

Ada tiga mode yang dapat dialihkan:

  • Emulasi dayung Stelladaptor: mereka harus bekerja dengan semua perangkat lunak emulasi Atari 2600 yang mendukung Stelladaptor; dalam mode Stelladaptor, dayung berfungsi sebagai joystick dua tombol dua sumbu, masing-masing dayung mengendalikan satu sumbu dan satu tombol
  • emulasi joystick ganda: setiap dayung berfungsi sebagai joystick dengan satu tombol (dengan gerakan dayung yang diterjemahkan menjadi gerakan pada kedua sumbu joystick)
  • mouse: setiap dayung mengontrol satu arah gerakan untuk mouse absolut, dan tombolnya adalah tombol mouse; bersama dengan program melukis Anda bisa mendapatkan perangkat berteknologi tinggi yang mirip dengan Etch-a-Sketch.

Perlengkapan

Anda akan perlu:

  • stm32f103c8t6 pil biru
  • 2x potensiometer linier (saya akan merekomendasikan 20K-100K)
  • Microswitch dengan lebar 2x 12mm dengan tombol
  • pencetak 3D
  • aneka (filamen, kabel, solder, besi solder, lem panas)

Langkah 1: Siapkan Papan dan Lingkungan Arduino

Siapkan Papan dan Lingkungan Arduino
Siapkan Papan dan Lingkungan Arduino
Siapkan Papan dan Lingkungan Arduino
Siapkan Papan dan Lingkungan Arduino
  1. Solder enam pin header di tengah papan stm32f103c8t6 Anda.
  2. Periksa resistansi antara A12 dan 3.3V. Itu harus 1,5K untuk kompatibilitas USB yang lebih lengkap. Banyak papan memiliki 10K sebagai gantinya. Jika Anda salah satunya, idealnya solder dalam resistor 1.8K dari A12 ke 3.3V, meskipun Anda mungkin beruntung dan komputer Anda bekerja dengan 10K.
  3. Instal bootloader. Ada instruksi di Langkah 2 dari Instructable ini. Satu hal yang perlu diperhatikan adalah berapa ukuran flash yang dilaporkan oleh STM Demonstrator. Jika 32K, Anda memiliki stm32f103c8 palsu yang mungkin diberi label ulang stm32f103c6. Proyek ini harus tetap berfungsi dengan itu, tetapi perhatikan bahwa Anda memiliki papan palsu untuk langkah selanjutnya.
  4. Instal Arduino, Arduino Zero, dan inti berbasis libmaple Roger dengan mengikuti instruksi pada Langkah 3 dari Instruksi yang Anda gunakan pada langkah sebelumnya. Abaikan instruksi perpustakaan di langkah itu.
  5. Unduh rilis terbaru dari perpustakaan Komposit USB saya dan unzip di folder Arduino/Perpustakaan Anda.
  6. Unduh sketsa paddlecontrollers saya dan unzip di folder Arduino Anda.
  7. Di Arduino, buka Alat | Papan | Seri STM32F103C Generik, kecuali Anda memiliki papan c6 palsu, dalam hal ini pilih Generik STM32F103C6/STM32F103C8 palsu sebagai gantinya. Jika Anda tidak yakin yang mana yang Anda miliki, memilih opsi palsu sebenarnya lebih aman.

Langkah 2: Unggah

Mengunggah
Mengunggah

Pasang papan ke adaptor USB komputer Anda, muat sketsa paddlecontroller, dan klik tombol Unggah (panah penunjuk kanan). Jika semuanya berjalan dengan baik, sketsa harus diunggah, dan papan akan muncul di komputer Anda sebagai joystick dua tombol dua sumbu yang disebut "Stelladaptor". Di Windows, Anda dapat memverifikasi ini dengan Windows-R, joy.cpl[enter].

Tentu saja, ini tidak akan melakukan apa pun sampai Anda memiliki perangkat keras lainnya yang terpasang.

Langkah 3: Cetak

Mencetak
Mencetak
  1. Unduh file stl dan/atau scad dari halaman Thingiverse saya untuk proyek ini. Harap dicatat bahwa tombol dayung dimodifikasi dari sini.
  2. Jika lebar rumah microswitch Anda berbeda dari 12mm, Anda perlu menyesuaikan parameter lebar tombol di file paddlemain-standalone.scad. Anda dapat melakukannya di OpenSCAD atau di Thingiverse Customizer.
  3. Anda mungkin perlu mengubah pengukuran di file paddleknob.scad agar sesuai dengan potensiometer Anda.
  4. Cetak file-file ini (lakukan hanya satu salinan file "2x" jika Anda hanya ingin satu dayung). Saya menggunakan PLA, tetapi ABS juga harus bekerja dengan baik.

    • 2x paddlemain.stl
    • 2x paddleknob.stl
    • 1x paddleconverter.stl
    • 1x pcbholdernarrower.stl
    • 2x buttoncap110.stl (opsional)
    • 1x 12.stl (opsional; cetak dengan warna berbeda dan rekatkan untuk memberi label pada kedua dayung)

Langkah 4: Pengkabelan

Pengkabelan
Pengkabelan
Pengkabelan
Pengkabelan
Pengkabelan
Pengkabelan

Anda perlu menjalankan empat kabel dari papan stm32f103c ke setiap pengontrol dayung. Anda bisa menggunakan kabel USB lama untuk kabel ini. Saya kebetulan memiliki kabel mandiri yang bagus dari kabel ethernet yang saya ikat bersama dengan shrink wrap.

Setiap dayung memiliki satu microswitch dan satu potensiometer. Gunakan multimeter untuk mengidentifikasi sepasang pin yang berdekatan (bukan diagonal) pada microswitch yang terhubung/terputus dengan menekan tombol. Saya akan memberi label pada pin ini S1 dan S2 dalam diagram. Tiga pin pada potensiometer saya beri label P1, P2 dan P3 dari atas ke bawah, melihat dari bagian bawah potensiometer, dengan pin mengarah ke kanan.

Dorong keempat kabel dari papan melalui lubang di sisi rumah dayung (paddlemain.stl).

Saat menghubungkan kabel ke sakelar mikro, pertama-tama dorong kabel melalui lubang di sisi rumah dayung dan solder ke sakelar sementara sakelar terletak di bagian luar rumahan. Kemudian tarik sakelar ke rumahan, buat pin dan kabel yang terpasang pas di lubangnya. Saya memotong pin yang tidak perlu.

Kedua dayung:

  • P1 ke S1
  • P1 ke papan 3.3V (3.3)
  • P3 untuk naik GND (G)

Dayung 1:

  • P2 ke papan A1
  • S2 ke papan A2

Dayung 2:

  • P2 ke papan A3
  • S2 ke papan A4

Sekarang uji koneksi dengan menghubungkan ke komputer Anda dan menggunakan program uji joystick. Pada windows, Windows-R, joy.cpl[enter], pilih Stelladaptor, klik Properties. Dayung 1 harus mengontrol sumbu X dan tombol pertama; dayung 2 harus mengontrol sumbu Y dan tombol kedua.

Langkah 5: Majelis Akhir

Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir
Majelis Akhir

Sakelar mikro dapat direkatkan (lem panas berfungsi untuk saya) di lokasinya di sisi kotak dayung. Tutup kancing dapat dipasang, dengan sedikit lem panas untuk stabilitas.

Potensiometer menempel pada lubang besar di bagian atas kotak dayung. Kenop harus meluncur dan menempel. Perbesar lubang dengan bor sesuai kebutuhan. Dorong penutup bawah, tambahkan sedikit lem panas jika Anda suka.

Papan pil biru pas di dalam slide PCB, yang kemudian disekrup ke bagian bawah kotak konverter, yang juga memiliki penutup yang dapat menutupinya.

Saya menambahkan sedikit Shoe Goo di mana kabel bertemu dengan rumah untuk melindungi kabel. Dan saya menempelkan label "1" dan "2" pada dayung.

Langkah 6: Mode Operasi

Mode Operasi
Mode Operasi
Mode Operasi
Mode Operasi

Dayung memiliki tiga mode operasi. Anda dapat mengganti mode operasi dengan menekan kombinasi tombol tertentu sambil mencolokkannya ke port USB, melepaskannya setelah LED papan berhenti berkedip. Setelah Anda mengganti mode operasi, itu akan disimpan ke memori flash, dan akan tetap ada sampai Anda mengubahnya berikutnya. (Jadi, jika Anda tidak ingin mengubah mode, jangan tekan tombol apa pun saat mencolokkan dayung ke port USB.) Berikut adalah opsinya:

  • Hanya tombol dayung kiri: Satu joystick dua sumbu dua tombol, dengan masing-masing sumbu dan tombol dikendalikan oleh satu dayung. Selain itu, dayung mengidentifikasi sebagai Stelladaptor, adaptor USB yang dihentikan untuk pengontrol Atari 2600, sehingga emulator Atari 2600 seperti Stella dan Z26 yang kompatibel dengan Stelladapter akan bekerja dengan sempurna.
  • Kedua tombol dayung: Setiap dayung menampilkan joystick terpisah. Joystick memiliki satu tombol operasional, dan memutar dayung akan menggerakkan joystick secara diagonal, sehingga sumbu X atau Y berfungsi untuk dayung.
  • Hanya tombol dayung kanan: Dayung muncul sebagai mouse absolut dua tombol. Anda sekarang dapat menggunakan ini mirip dengan Etch-a-Sketsa dengan program menggambar.

Langkah 7: Pong

pong
pong
pong
pong

Pong adalah permainan dayung asli yang hebat. Saya merekomendasikan versi aslinya, karena klon sering gagal untuk memasukkan semua fungsi halus yang indah, seperti perubahan kecepatan dengan pukulan berulang, perubahan sudut tergantung pada bagian dayung yang mengenai bola, atau posisi yang halus tetapi tidak mudah diprediksi. servis setelah gagal. Untuk analisis yang cermat dari aslinya, lihat di sini.

Salah satu cara terbaik untuk bermain Pong adalah dengan emulator tingkat sirkuit DICE jika komputer Anda cukup cepat untuk menggunakannya dengan kecepatan penuh. (Laptop Windows saya, tapi Raspberry PI 3+ terlalu lambat.) Saya merekomendasikan versi 0.8.

Jika Anda menggunakan mode Stelladaptor di dayung, buka Pengaturan | Konfigurasikan Input… di DICE dan pilih Joystick 1 dan Absolute untuk Player 1 Paddle, dan atur Horizontal dan Vertikal ke Joy 1 X-Axis. Kemudian lakukan hal yang sama untuk Player 2 Paddle, kecuali dengan Y-Axis.

Jika komputer Anda terlalu lambat untuk DICE, saya membuat versi Python3+pygame yang pengaturan waktu dan fungsinya dimaksudkan untuk sangat dekat dengan Pong asli (saya berterima kasih atas bantuan dari Dr. Hugo Holden dalam hal ini).

Direkomendasikan: