- Gambaran keseluruhan:
- Komponen yang Diperlukan:
- Penjelasan Litar:
- Kerja Accelerometer:
- Pengaturcaraan Arduino:
- Pemprosesan Pengaturcaraan:
- Ujian:
Augmented Reality dan Virtual Gaming telah menjadi trend baru-baru ini dalam industri permainan. Masa menggunakan papan kekunci / Joystick dan tetikus untuk bermain permainan komputer sudah ketinggalan zaman. Kini setiap konsol permainan dilengkapi dengan Pengawal Maya yang membantu kita bermain permainan dengan gerakan dan gerak badan kita, dengan cara ini pengalaman permainan telah meningkat banyak dan pengguna merasa lebih terlibat dalam permainan.
Dalam projek ini mari cuba bersenang-senang semasa kita belajar melalui projek ini. Biarkan kami membuat permainan (Ya, anda mendengar saya betul, kami ingin membuat permainan) dan memainkannya menggunakan gerakan tangan anda. Kami membuat Ping Pong Ball Game klasik menggunakan Arduino dan Accelerometer.
Gambaran keseluruhan:
Terdapat banyak perisian sumber terbuka yang tersedia hari ini yang telah membawa banyak kebahagiaan bagi para penggemar seperti kami, dan Pemprosesan adalah salah satu daripadanya. Dengan aplikasi berasaskan JAVA ini kita dapat membina perisian sendiri (format.exe) dan juga aplikasi android (.apk file). Oleh itu, kami akan menggunakan perisian ini untuk membina permainan kami, sebelumnya kami telah menggunakan Pemrosesan dalam membuat Arduino Chat Room.
Bahagian perkakasan akan terdiri dari Arduino yang akan mengambil input dari Accelerometer untuk memasangkannya secara bersiri ke komputer / Laptop kami.
Jadi mari kita pergi membeli-belah !!!!
Komponen yang Diperlukan:
- Arduino (versi atau model apa pun)
- Pecut
- Menyambung wayar
- Minat (Lolz)
Accelerometer dan Arduino Nano
Penjelasan Litar:
Projek Game Circuit of Arduino Ping Pong tidak melibatkan sambungan yang kompleks. Saya telah menggunakan Arduino Nano dengan Accelerometer. Tetapi ada beberapa hal yang harus diperhatikan seperti yang disebutkan di bawah:
1. Accelerometer anda tidak dapat menangani 5V, jadi selalu sambungkan Vcc accelerometer ke pin Arduino 3.3V anda.
2. Setiap Accelerometer mengalami kesan graviti yang harus ditangani semasa memprogram (hanya menggunakan penapis).
Dengan ini, mari kita lihat cara kerja Accelerometer dan bagaimana kita menggunakannya.
Kerja Accelerometer:
An pecutan adalah alat yang boleh menukar pecutan ke segala arah dengan voltan berubah masing-masing. Ini dicapai dengan menggunakan kapasitor (rujuk gambar), ketika Accel bergerak, kapasitor yang ada di dalamnya, juga akan mengalami perubahan (rujuk gambar) berdasarkan pergerakan, karena kapasitans bervariasi, voltan berubah juga dapat diperoleh.
Jadi, seperti yang disebutkan di atas, setiap akselerometer mengalami masalah kesan graviti. Tidak kira seberapa tepat sensor anda dikalibrasi (walaupun telefon bimbit anda Accel.), Ia akan dipengaruhi oleh graviti. Penjelasan yang lebih teknikal untuk masalah ini diberikan di bawah.
Sekarang, di Arduino kita dapat mengurangkan kesan graviti dengan menggunakan Simple Filter. Penapis ini akan terdiri daripada dua tatasusunan, satu digunakan untuk menyimpan nilai sampel dari sensor dan yang lain digunakan untuk menyusun nilai sampel, dan mencari nilai yang paling berulang. Mari kita laksanakan algoritma ini di Arduino kami dan siapkan perkakasan kami.
Pengaturcaraan Arduino:
Program Arduino diberikan di bawah di bahagian Code. Tidak ada data kritikal yang harus diubah suai. Tetapi anda mungkin ingin mempertimbangkan perkara berikut:
Tingkatkan ukuran sampel jika Accel anda masih menunjukkan nilai rawak.
#define Samplesize 13 // filterSampel nombor
Mainkan dengan kadar baud 9600 untuk meningkatkan kelajuan komunikasi antara Arduino dan Processing. Tetapi pastikan anda mengubahnya dalam kedua-dua perisian (Program).
batal persediaan () {Serial.begin (9600); }
Accelerometer saya pada paksi-X memberikan 193 di hujung kiri dan 280 di hujung kanan, ukurnya untuk Accel anda dan kemas kini nilainya.
toSend = peta (smoothData1, 193, 280, 0, 255);
Nilai dipetakan ke dalam satu bait data untuk komunikasi bersiri.
Selanjutnya periksa Komen dalam Kod yang diberikan di bawah ini untuk memahaminya dengan jelas.
Pemprosesan Pengaturcaraan:
Pemprosesan adalah perisian sumber terbuka yang digunakan oleh artis untuk merancang Grafik. Perisian ini digunakan untuk mengembangkan aplikasi perangkat lunak dan Android. Ia cukup mudah dikembangkan dan hampir sama dengan Android Development IDE. Oleh itu saya telah memendekkan penjelasannya.
Kod Pemprosesan untuk Permainan Ping Pong diberikan di sini:
- Memproses Kod untuk Arduino Ping Ball Game
Klik kanan padanya dan klik pada 'Save link as..' untuk memuat turun fail kod. Kemudian buka fail dalam perisian 'Processing' dan klik pada butang 'Run' untuk memainkan Game. Anda perlu memasang perisian 'Memproses' untuk membuka fail *.pde. Bahagian komen dibuka untuk pertanyaan dan periksa juga komen dalam Program untuk memahaminya dengan lebih baik.
Garis bawah, dalam fungsi penyediaan () fungsi pemprosesan kod adalah penting, kerana ia memutuskan dari mana port ke data.
port = Serial baru (ini, Serial.list (), 9600); // Membaca PORT ke-4 pada kadar baud 9600
Di sini saya telah membaca data dari port ke-4 dari Arduino saya.
Jadi sebagai Contoh jika anda mempunyai COM COM COM COM
Kemudian kod di atas akan membaca data dari COM.
Ujian:
Sekarang kerana sketsa Pemprosesan dan Arduino kami sudah siap, muat naik program yang diberikan di bawah ini ke Arduino dan sambungkan Arduino anda ke kabel pengaturcaraan PC pengguna yang lengkap dan lancarkan permainan dengan menjalankan fail kod Pemprosesan (.pde). Itu sahaja! Gerakkan Accelerometer anda dan mainkan Permainan Ping Pong anda. The Video akan membimbing anda melalui projek yang lengkap.
Setelah anda memahami program ini, anda boleh membuat banyak permainan serupa dan memainkannya menggunakan Arduino anda, Lebih jauh paksi-Y dan paksi-Z juga dapat disertakan untuk permainan.