Talaan ng mga Nilalaman:
- Hakbang 1: Mga Kinakailangan
- Hakbang 2: HARDWARE
- Hakbang 3: SOFTWARE
- Hakbang 4: MAIN CODE
- Hakbang 5: MGA CODES SA PAGSUSULIT
- Hakbang 6: KONTROL ng LARO
- Hakbang 7: PAG-SET up
Video: Virtual Reality Suit Gamit ang Arduino: 7 Hakbang (na may Mga Larawan)
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:14
Nilikha ko ang proyektong ito upang maglaro ng normal na mga laro sa computer sa buong VR. Ginaya ng proyektong ito ang iyong mga paggalaw sa pagpindot o pagpindot sa mga key ng iyong keyboard
Halimbawa- kapag isinulong mo ang aksyon ng pagpindot sa key na 'w' ay ginaya.
Ginaya ko ang laro Call of Duty 4: Modern Warfare ngunit huwag pumili ng mga larong may recoil habang nag-shoot dahil mababago nito ang default na posisyon ng mouse
Hakbang 1: Mga Kinakailangan
Ang mga kinakailangan ay-
Mayroong isang listahan na puno ng mga bagay na kailangan mo upang magawa ang suit na ito
Pindutin ang mga sensor-5
Pilit na sensor-1
GPU 6050 - 4
(o)
GPU 6050 - 2 at Accelerometer - 2
Vr na baso
Vr pinagana ang telepono
PC
WiFi hotspot
Isang laruang baril
Isang laro ng pc (ginamit ko ang Call of Duty- Modern Warfare 1)
Mga wires board ng tinapay (Lalaki-Babae)
ARDUINO LEONARDO-2
Auton sheild - 2
Pinagmulan ng kuryente (lipo)
Wire ng bahaghari
Hakbang 2: HARDWARE
* reload_pin, shoot_pin, night vision_pin, granada_pin, pagbabago ng sandata ay mga sensor ng touch. Ang target_pin ay force sensor at ang mouse ay ginaya ng MPU6050 iba pang mga sensor ay accelerometer (pustura, paggalaw1 & 2)
1.1) SOLDERING
SOLDER MPU 6050, Accelerometer, Touch Sensor at force sensor gamit ang mga wires
1.2) WIRING
Para sa MPU 6050-
I-pin ang 2- SDA
Pin 3- SCL
GND - GND
5v - PWR / VCC
Para sa movement_pin1-
I-pin ang A1- x axis
GND-GND
5v - PWR / VCC
Para sa movement_pin2-
I-pin ang A2- x axis
GND-GND
5v - PWR / VCC
Para sa posture_pin-
I-pin ang A0- x axis
GND-GND
5v - PWR / VCC
para sa sand_pin -
sig-5v
GND-GND
5v - PWR / VCC
Para sa Reload_pin -
pin12 - 5v
GND-GND
5v - PWR / VCC
Para sa Nightvision_pin -
pin 10 - 5v
GND-GND
5v - PWR / VCC
Para sa shoot_pin -
Pin7 - 5v
GND-GND
5v - PWR / VCC
Para sa aim_pin -
Pin 8 - 5v
5v - PWR / VCC
1.3) SOLDERING WIRES
Paghinang ang mga wire board ng tinapay gamit ang mga wire ng bahaghari
1.4) INSULASYON
I-tape ang mga wire gamit ang insulate tape sa lugar kung saan ka nag-solder upang maiwasan ang mga maikling circuit
Hakbang 3: SOFTWARE
Gumamit ako ng isang app na tinatawag na 'Remotr' mula sa Play store upang maipadala ang video mula sa laptop patungo sa telepono
2.1) REMOTR-
Mag-install ng application ng REMOTR sa iyong computer at lumikha ng isang account
Nandito ang link-
remotrapp.com/#download
I-install ang REMOTR app sa iyong smartphone
2.2) VIDEO STREAMING
Una ikonekta ang parehong computer at ang parehong WiFi network at ipasok ang iyong RemOTR account sa parehong mga aparato
ngayon manu-manong idagdag ang laro na nais mong i-stream sa software
ngayon ay ipapakita ng app ang computer habang na-click ito ng admin upang simulang mag-streaming
Upang mag-stream sa VR paganahin ang vr mode sa iyong smartphone
Kung hindi mo maintindihan Suriin ang link na ito para sa detalyadong impormasyon
remotrapp.com/en/howto
Hakbang 4: MAIN CODE
Ang code para sa proyektong ito ay hindi matigas o kumplikado ngunit mahaba
Narito ang code kopyahin lamang ito at i-paste ito sa iyong arduino file
ARDUINO
LEONARDO Mouse-
Pinatunayan ko si Gabry295. Ang code ng mouse na ito ay batay sa kanyang utos na itinuturo sa mouse
# isama
# isama
# isama
# isama
int aim_pin;
int shoot_pin;
MPU6050 mpu;
int16_t ax, ay, az, gx, gy, gz;
int vx, vy;
walang bisa ang pag-setup () {
Serial.begin (9600);
Mouse.begin ();
Wire.begin ();
mpu.initialize ();
kung (! mpu.testConnection ()) {
habang (1);
}
pinMode (7, INPUT);
pinMode (8, INPUT);
}
void loop () {
shoot_pin = digitalRead (7);
aim_pin = digitalRead (8);
mpu.getMotion6 (& ax, & ay, & az, & gx, & gy, & gz);
vx = (gx-300) / 200; // Naglagay ako ng -300 at +490 bilang aking mpu6050 ipakita ang mga halagang ito kapag hindi gumagalaw na tseke
vy = - (gz + 490) / 200; // suriin ang code ng head mouse ni Gabry295 para sa higit pang mga detalye sa mga halagang ito
Mouse.move (vx, vy);
pagkaantala (20);
habang (shoot_pin == TAAS);
{
Mouse.click ();
}
habang (aim_pin == TAAS);
{
Mouse.click ();
}
}
Leonardo Keyboard
# isama
int Grenade;
int armas_pin;
int reload_pin;
int movement1_pin;
int movement2_pin;
int posture_pin;
char nightvision_pin;
walang bisa ang pag-setup ()
{
pinMode (7, INPUT);
pinMode (8, INPUT);
pinMode (9, INPUT);
pinMode (10, INPUT);
pinMode (11, INPUT);
pinMode (12, INPUT);
pinMode (A0, INPUT);
pinMode (A1, INPUT);
Keyboard.begin ();
}
walang bisa loop ()
{
Grenade_pin = digitalRead (8);
armas_pin = digitalRead (9);
movement1_pin = analogRead (A1);
movement2_pin = analogRead (A2);
posture_pin = analogRead (A0);
reload_pin = digitalRead (12);
nightvision_pin = digitalRead (10);
kung (granada == TAAS)
{
Keyboard.press ('g');
}
habang (armas_pin == TAAS)
{
Keyboard.press ('q');
}
habang (reload_pin == TAAS)
{
Keyboard.press ('r');
}
habang (movement1_pin> 340 && movement1_pin <420)
{
Keyboard.press ('w');
}
habang (movement1_pin> 420)
{
Keyboard.press ('w');
Keyboard.press ('p');
}
habang (movement2_pin> 340 && movement2_pin <420)
{
Keyboard.press ('w');
}
habang (movement2_pin> 420)
{
Keyboard.press ('p');
Keyboard.press ('w');
}
habang (posture_pin> 340 && posture_pin <420)
{
Keyboard.press ('c');
}
habang (posture_pin> 420)
{
Keyboard.press ('l');
}
habang (posture_pin <340)
{
Keyboard.press ('z');
}
habang (nightvision_pin == TAAS)
{
Keyboard.press ('n');
}
}
}
Hakbang 5: MGA CODES SA PAGSUSULIT
Narito ang ilang mga code na hinati mula sa pangunahing code ayon sa pagpapaandar
SHOOTING-
# isama
int x;
walang bisa ang pag-setup () {
pinMode (8, INPUT);
Mouse.begin ();
}
void loop () {
x = digitalRead (8);
kung (x == TAAS)
{
Mouse.click ('g');
}
}
AIMING-
# isama
# isama
# isama
# isama
MPU6050 mpu;
int16_t ax, ay, az, gx, gy, gz;
int vx, vy;
walang bisa ang pag-setup () {
Serial.begin (9600);
Mouse.begin ();
Wire.begin ();
mpu.initialize ();
kung (! mpu.testConnection ()) {
habang (1);
}
}
void loop () {
shoot_pin = digitalRead (7);
aim_pin = digitalRead (8);
mpu.getMotion6 (& ax, & ay, & az, & gx, & gy, & gz);
vx = (gx + 300) / 200; // "+300" dahil ang x axis ng gyroscope ay nagbibigay ng mga halagang tungkol sa -350 habang hindi ito gumagalaw. Baguhin ang halagang ito kung makakakuha ka ng ibang bagay gamit ang TEST code, chacking kung may mga halagang malayo sa zero.
vy = - (gz_-100) / 200; // pareho dito tungkol sa "-100"
Pag-reload-
# isama
int x;
walang bisa ang pag-setup () {
pinMode (8, INPUT);
Keyboard.begin ();
}
void loop () {
x = digitalRead (8);
kung (x == TAAS)
{
Keyboard.press ('r');
}
iba pa
{
Keyboard.release ('r');
}
}
GABING VISIO # isama
int x;
walang bisa ang pag-setup () {
pinMode (8, INPUT);
Keyboard.begin ();
}
void loop () {
x = digitalRead (8);
kung (x == TAAS)
{
Keyboard.press ('g');
}
iba pa
{
Keyboard.release ('g');
}
}
CROUCH AT PRONE-
# isama
int y;
walang bisa ang pag-setup () {
pinMode (A0, INPUT);
Serial.begin (9600);
}
void loop () {
y = analogRead (A0);
kung (y <260)
{
Keyboard.release ('c');
Keyboard.release ('p');
}
kung hindi man (y> 260 && y <310)
{
Keyboard.press ('c');
}
kung hindi man (y> 310)
{
Keyboard.press ('p');
}
}
Hakbang 6: KONTROL ng LARO
baguhin ang mga kontrol ng laro tulad ng sumusunod
yumuko - x
madaling kapitan - l
pagbabago ng sandata - q
sprint - p
tumayo / tumalon - z
night vision - n
paggalaw ng pasulong - w
granada - g
Hakbang 7: PAG-SET up
Sa wakas nakarating kami sa huling hakbang ngayon ilagay ang arduino
board sa isang kahon at isulid ito sa bag
Ngayon ikonekta ang micro USB ng arduino sa mga USB port ng laptop ngayon ikonekta ang mga sensor tulad ng nakadirekta sa itaas
* Ang mga marka ng arrow sa mga larawan sa itaas ay kumakatawan sa direksyon na dapat harapin ng sensor
Kung mayroon kang anumang mga pagdududa huwag mag-atubiling mag-iwan ng isang komento at huwag kalimutang ibahagi ang iyong karanasan
Yun lang salamat at
BYE.
Inirerekumendang:
Manatiling Ligtas Gamit ang Bikelight na Ito Gamit ang Mga Senyas na Pagliko: 5 Hakbang (na may Mga Larawan)
Manatiling Ligtas Gamit ang Bikelight na Ito Gamit ang Mga Sinyales na Pag-turn: Gustong-gusto kong sumakay ng bisikleta, karaniwang ginagamit ko ito upang makarating sa paaralan. Sa oras ng taglamig, madalas na madilim pa rin sa labas at mahirap para sa ibang mga sasakyan na makita ang mga signal ng aking kamay na lumiliko. Samakatuwid ito ay isang malaking panganib dahil maaaring hindi makita ng mga trak na nais kong
Tumalbog ! Laro ng Virtual Reality Gamit ang Arduino & Acclerometer: 9 Mga Hakbang
Tumalbog ! Laro ng Virtual Reality Gamit ang Arduino & Acclerometer: Sa tutorial na ito lilikha kami ng isang laro ng Virtual Reality gamit ang Arduino at Acclerometer
Wireless Remote Gamit ang 2.4Ghz NRF24L01 Module Sa Arduino - Nrf24l01 4 Channel / 6 Channel Transmitter Receiver para sa Quadcopter - Rc Helicopter - Rc Plane Gamit ang Arduino: 5 Hakbang (na may Mga Larawan)
Wireless Remote Gamit ang 2.4Ghz NRF24L01 Module Sa Arduino | Nrf24l01 4 Channel / 6 Channel Transmitter Receiver para sa Quadcopter | Rc Helicopter | Rc Plane Gamit ang Arduino: Upang mapatakbo ang isang Rc car | Quadcopter | Drone | RC eroplano | RC boat, palagi kaming nangangailangan ng isang reciever at transmitter, kumbaga para sa RC QUADCOPTER kailangan namin ng isang 6 channel transmitter at receiver at ang uri ng TX at RX ay masyadong magastos, kaya gagawa kami ng isa sa aming
Kontrolin ang Arduino Gamit ang Smartphone Sa pamamagitan ng USB Gamit ang Blynk App: 7 Mga Hakbang (na may Mga Larawan)
Kontrolin ang Arduino Gamit ang Smartphone Sa Pamamagitan ng USB Sa Blynk App: Sa tutorial na ito, matututunan namin kung paano gamitin ang Blynk app at Arduino upang makontrol ang lampara, ang kumbinasyon ay sa pamamagitan ng USB serial port. Ang layunin ng pagtuturo na ito ay upang ipakita ang pinakasimpleng solusyon sa malayo-pagkontrol ng iyong Arduino o c
Mobile Virtual Reality Gamit ang Pagproseso para sa Android (TfCD): 7 Mga Hakbang (na may Mga Larawan)
Mobile Virtual Reality Gamit ang Pagproseso para sa Android (TfCD): Ang Virtual Reality (VR) ay isa sa mga bagong teknolohiya na maaaring maging kawili-wili ay mga produkto sa hinaharap. Mayroon itong maraming mga pagkakataon at hindi mo na kailangan ng mamahaling mga VR baso (Oculus Rift). Maaaring mukhang napakahirap gawin ang iyong sarili, ngunit ang pangunahing kaalaman ay