Isi kandungan:
- Langkah 1: Keperluan
- Langkah 2: PERKAKASAN
- Langkah 3: PERISIAN
- Langkah 4: KOD UTAMA
- Langkah 5: KOD UJIAN
- Langkah 6: KAWALAN PERMAINAN
- Langkah 7: MENYEDIAKAN
Video: Suit Realiti Maya Menggunakan Arduino: 7 Langkah (dengan Gambar)
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:12
Saya telah membuat projek ini untuk bermain permainan komputer biasa dalam VR penuh. Projek ini meniru pergerakan anda menekan atau menahan kekunci papan kekunci anda
Contoh- ketika anda bergerak maju tindakan menekan kekunci 'w' ditiru.
Saya telah meniru permainan Call of Duty 4: Modern Warfare tetapi tidak memilih permainan yang mundur ketika menembak kerana ia akan mengubah kedudukan lalai tetikus
Langkah 1: Keperluan
Keperluan adalah-
Terdapat senarai yang penuh dengan perkara yang anda perlukan untuk membuat pakaian ini
Sensor sentuh-5
Sensor paksa-1
GPU 6050 - 4
(atau)
GPU 6050 - 2 & Accelerometer - 2
Cermin mata Vr
Telefon didayakan Vr
PC
Tempat liputan WiFi
Senapang mainan
Permainan komputer (saya telah menggunakan Call of Duty- Modern Warfare 1)
Kawat papan roti (Lelaki-Perempuan)
ARDUINO LEONARDO-2
Helaian Auton - 2
Sumber kuasa (lipo)
Wayar pelangi
Langkah 2: PERKAKASAN
* reload_pin, shoot_pin, night vision_pin, grenade_pin, senjata_pin senjata adalah sensor sentuh. aim_pin adalah sensor daya dan tetikus ditiru oleh MPU6050 sensor lain adalah pecutan (postur, pergerakan1 & 2)
1.1) PENJUALAN
SOLDER MPU 6050, Accelerometer, Touch Sensor & force sensor dengan wayar
1.2) WIRING
Untuk MPU 6050-
Pin 2- SDA
Pin 3- SCL
GND - GND
5v - PWR / VCC
Untuk pergerakan_pin1-
Paksi paksi A1- x
GND-GND
5v - PWR / VCC
Untuk pergerakan_pin2-
Paksi A2- x paksi
GND-GND
5v - PWR / VCC
Untuk postur_pin-
Paksi paksi A0- x
GND-GND
5v - PWR / VCC
untuk senjata_pin -
sig-5v
GND-GND
5v - PWR / VCC
Untuk Reload_pin -
pin12 - 5v
GND-GND
5v - PWR / VCC
Untuk Nightvision_pin -
pin 10 - 5v
GND-GND
5v - PWR / VCC
Untuk shoot_pin -
Pin7 - 5v
GND-GND
5v - PWR / VCC
Untuk tujuan_pin -
Pin 8 - 5v
5v - PWR / VCC
1.3) WANG PENJUALAN
Pateri wayar papan roti dengan wayar pelangi
1.4) INSULASI
Pita wayar dengan pita penebat di tempat yang anda telah solder untuk mengelakkan litar pintas
Langkah 3: PERISIAN
Saya telah menggunakan aplikasi bernama 'Remotr' dari Play store untuk menghantar video dari komputer riba ke telefon
2.1) REMOTR-
Pasang aplikasi REMOTR ke komputer anda dan buat akaun
Inilah pautan-
remotrapp.com/#download
Pasang aplikasi REMOTR di telefon pintar anda
2.2) PENYAMPAIAN VIDEO
Mula-mula sambungkan komputer dan rangkaian WiFi yang sama dan masukkan akaun REMOTR anda di kedua-dua peranti
sekarang tambahkan permainan yang anda mahu streaming secara manual dalam perisian
sekarang aplikasi akan menunjukkan komputer sebagai pentadbir mengkliknya untuk memulakan streaming
Untuk streaming dalam VR aktifkan mod vr di telefon pintar anda
Sekiranya anda tidak faham Periksa pautan ini untuk maklumat terperinci
remotrapp.com/en/howto
Langkah 4: KOD UTAMA
Kod untuk projek ini tidak sukar atau rumit tetapi panjang
Inilah kodnya, salin dan tampal di fail arduino anda
ARDUINO
Tetikus LEONARDO-
Saya telah merujuk Gabry295. Kod tetikus ini berdasarkan kepalanya yang diperintahkan oleh tetikus
#sertakan
#sertakan
#sertakan
#sertakan
int aim_pin;
int shoot_pin;
MPU6050 mpu;
int16_t ax, ay, az, gx, gy, gz;
int vx, vy;
batal persediaan () {
Serial.begin (9600);
Mouse.begin ();
Wire.begin ();
mpu.initialize ();
jika (! mpu.testConnection ()) {
sementara (1);
}
pinMode (7, INPUT);
pinMode (8, INPUT);
}
gelung kosong () {
shoot_pin = digitalRead (7);
aim_pin = digitalRead (8);
mpu.getMotion6 (& ax, & ay, & az, & gx, & gy, & gz);
vx = (gx-300) / 200; // Saya telah meletakkan -300 dan +490 sebagai mpu6050 saya menunjukkan nilai-nilai ini ketika tidak bergerak
vy = - (gz + 490) / 200; // periksa kod tetikus kepala oleh Gabry295 untuk maklumat lebih lanjut mengenai nilai-nilai ini
Mouse.move (vx, vy);
kelewatan (20);
semasa (shoot_pin == TINGGI);
{
Tetikus.klik ();
}
sementara (aim_pin == TINGGI);
{
Tetikus.klik ();
}
}
Papan Kekunci Leonardo
#sertakan
int Grenade;
int senjata_pin;
int reload_pin;
int pergerakan1_pin;
int pergerakan2_pin;
int posture_pin;
char nightvision_pin;
persediaan tidak sah ()
{
pinMode (7, INPUT);
pinMode (8, INPUT);
pinMode (9, INPUT);
pinMode (10, INPUT);
pinMode (11, INPUT);
pinMode (12, INPUT);
pinMode (A0, INPUT);
pinMode (A1, INPUT);
Papan kekunci.begin ();
}
gelung kosong ()
{
Grenade_pin = digitalRead (8);
senjata_pin = digitalRead (9);
pergerakan1_pin = analogRead (A1);
pergerakan2_pin = analogRead (A2);
posture_pin = analogRead (A0);
tambah nilai_pin = digitalRead (12);
nightvision_pin = digitalRead (10);
jika (bom tangan == TINGGI)
{
Papan kekunci.press ('g');
}
semasa (senjata_pin == TINGGI)
{
Papan kekunci.press ('q');
}
semasa (tambah nilai_pin == TINGGI)
{
Papan kekunci.press ('r');
}
sementara (pergerakan1_pin> 340 && pergerakan1_pin <420)
{
Papan kekunci.press ('w');
}
semasa (pergerakan1_pin> 420)
{
Papan kekunci.press ('w');
Papan kekunci.press ('p');
}
sementara (pergerakan2_pin> 340 && pergerakan2_pin <420)
{
Papan kekunci.press ('w');
}
semasa (pergerakan2_pin> 420)
{
Papan kekunci.press ('p');
Papan kekunci.press ('w');
}
sementara (posture_pin> 340 && posture_pin <420)
{
Papan kekunci.press ('c');
}
sementara (postur_pin> 420)
{
Papan kekunci.press ('l');
}
sementara (postur_pin <340)
{
Papan kekunci.press ('z');
}
sementara (nightvision_pin == TINGGI)
{
Papan kekunci.press ('n');
}
}
}
Langkah 5: KOD UJIAN
Berikut adalah beberapa kod yang dibahagikan dari kod utama mengikut fungsinya
PEMBAKARAN-
#sertakan
int x;
batal persediaan () {
pinMode (8, INPUT);
Mouse.begin ();
}
gelung kosong () {
x = digitalRead (8);
jika (x == TINGGI)
{
Tetikus.klik ('g');
}
}
TUJUAN-
#sertakan
#sertakan
#sertakan
#sertakan
MPU6050 mpu;
int16_t ax, ay, az, gx, gy, gz;
int vx, vy;
batal persediaan () {
Serial.begin (9600);
Mouse.begin ();
Wire.begin ();
mpu.initialize ();
jika (! mpu.testConnection ()) {
sementara (1);
}
}
gelung kosong () {
shoot_pin = digitalRead (7);
aim_pin = digitalRead (8);
mpu.getMotion6 (& ax, & ay, & az, & gx, & gy, & gz);
vx = (gx + 300) / 200; // "+300" kerana paksi x giroskop memberikan nilai sekitar -350 semasa ia tidak bergerak. Tukar nilai ini jika anda mendapat sesuatu yang berbeza menggunakan kod TEST, chacking jika ada nilai yang jauh dari sifar.
vy = - (gz_-100) / 200; // sama di sini mengenai "-100"
MEMBACA-
#sertakan
int x;
batal persediaan () {
pinMode (8, INPUT);
Papan kekunci.begin ();
}
gelung kosong () {
x = digitalRead (8);
jika (x == TINGGI)
{
Papan kekunci.press ('r');
}
yang lain
{
Papan Kekunci.release ('r');
}
}
VISIO MALAM #sertakan
int x;
batal persediaan () {
pinMode (8, INPUT);
Papan kekunci.begin ();
}
gelung kosong () {
x = digitalRead (8);
jika (x == TINGGI)
{
Papan kekunci.press ('g');
}
yang lain
{
Papan Kekunci.release ('g');
}
}
JALAN DAN PRONE-
#sertakan
int y;
batal persediaan () {
pinMode (A0, INPUT);
Serial.begin (9600);
}
gelung kosong () {
y = analogRead (A0);
jika (y <260)
{
Papan Kekunci.release ('c');
Papan Kekunci.release ('p');
}
lain jika (y> 260 && y <310)
{
Papan kekunci.press ('c');
}
jika tidak (y> 310)
{
Papan kekunci.press ('p');
}
}
Langkah 6: KAWALAN PERMAINAN
ubah kawalan permainan seperti berikut
berjongkok - x
terdedah - l
pertukaran senjata - q
pecut - p
berdiri / melompat - z
penglihatan malam - n
pergerakan ke hadapan - w
bom tangan - g
Langkah 7: MENYEDIAKAN
Akhirnya kita sampai ke langkah terakhir sekarang meletakkan arduino
papan dalam kotak dan memasukkannya ke dalam beg
Sekarang sambungkan USB mikro arduino ke port USB komputer riba sekarang sambungkan sensor seperti yang diarahkan di atas
* Tanda anak panah pada gambar di atas mewakili arah yang mesti dihadapi oleh sensor
Sekiranya anda mempunyai keraguan, jangan ragu untuk memberikan komen dan jangan lupa untuk berkongsi pengalaman anda
Itu sahaja terima kasih dan
BYE.
Disyorkan:
Realiti Maya pada Raspberry Pi Dengan BeYourHero !: 19 Langkah (dengan Gambar)
Realiti Maya pada Raspberry Pi Dengan BeYourHero !: Selamat Datang di " Jadilah Pahlawan Anda " projek! Saya harap anda bersedia memasuki perendaman Realiti Maya generasi seterusnya! Projek ini akan memberi anda kawalan gerak isyarat sepenuhnya kepada Wira maya yang anda suka dengan satu set peranti mudah yang murah dengan menggunakan
Lubang Maya Maya: 4 Langkah (dengan Gambar)
Virtual Peephole: Terdapat kira-kira 770 juta kamera pengawasan di seluruh dunia. Sebilangan dari mereka masih mempunyai kata laluan lalai mereka, menjadikannya mudah diakses, oleh sesiapa sahaja yang mempunyai sambungan internet. Lubang ini maya adalah peranti untuk menonton beberapa
Melantun kembali ! Permainan Realiti Maya Menggunakan Arduino & Acclerometer: 9 Langkah
Melantun kembali ! Permainan Realiti Maya Menggunakan Arduino & Acclerometer: Dalam tutorial ini kita akan membuat permainan Realiti Maya menggunakan Arduino dan Acclerometer
Kacamata Realiti Maya dan Campuran: 15 Langkah (dengan Gambar)
Kacamata Realiti Maya dan Campuran: Pengenalan: Semasa kursus master Teknologi untuk Konsep Reka Bentuk, kami diminta untuk meneroka teknologi baru yang sesuai dengan projek utama kami dan menguji teknologi ini dengan membuat prototaip. Teknologi yang kami pilih adalah realiti maya
Realiti Maya Mudah Alih Menggunakan Pemprosesan untuk Android (TfCD): 7 Langkah (dengan Gambar)
Realiti Maya Mudah Alih Menggunakan Pemprosesan untuk Android (TfCD): Realiti Maya (VR) adalah salah satu teknologi baru yang mungkin menarik adalah produk masa depan. Ia mempunyai banyak peluang dan anda bahkan tidak memerlukan kacamata VR yang mahal (Oculus Rift). Nampaknya sangat sukar untuk dilakukan sendiri, tetapi asasnya adalah