Sadržaj:
- Korak 1: Zahtjevi
- Korak 2: HARDVER
- Korak 3: SOFTVER
- Korak 4: GLAVNI KOD
- Korak 5: TESTIRAJTE KODOVE
- Korak 6: KONTROLE IGRE
- Korak 7: POSTAVLJANJE
Video: Odijelo za virtualnu stvarnost pomoću Arduina: 7 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:08
Napravio sam ovaj projekt za igranje normalnih računarskih igara u punoj VR. Ovaj projekt oponaša vaše pokrete pritiskom ili držanjem tipki na tastaturi
Primjer- pri kretanju naprijed oponaša se radnja pritiskom na tipku 'w'.
Oponašao sam igru Call of Duty 4: Modern Warfare, ali ne birajte igre koje ustuknu tijekom snimanja jer će promijeniti zadanu poziciju miša
Korak 1: Zahtjevi
Uslovi su-
Postoji popis stvari koje su vam potrebne za izradu ovog odijela
Senzori dodira-5
Senzor sile-1
GPU 6050 - 4
(ili)
GPU 6050 - 2 i akcelerometar - 2
Vr čaše
Telefon sa vr -om
PC
WiFi pristupna tačka
Pištolj za igračke
PC igra (koristio sam Call of Duty-Modern Warfare 1)
Žice za hljeb (muško-žensko)
ARDUINO LEONARDO-2
Autonska oplata - 2
Izvor napajanja (lipo)
Rainbow žice
Korak 2: HARDVER
*reload_pin, shoot_pin, pin night night, granade_pin, pin change_pin su senzori dodira. aim_pin je senzor sile i miš emulira MPU6050, drugi senzori su mjerači ubrzanja (držanje, kretanje1 i 2)
1.1) LEGLJENJE
SOLDER MPU 6050, akcelerometar, senzor dodira i senzor sile sa žicama
1.2) Ožičenje
Za MPU 6050-
Pin 2- SDA
Pin 3- SCL
GND - GND
5v - PWR/VCC
Za pokret_pin1-
Pin A1- x osa
GND-GND
5v - PWR/VCC
Za motion_pin2-
Pin A2- x osa
GND-GND
5v - PWR/VCC
Za posture_pin-
Pin A0- x osa
GND-GND
5v - PWR/VCC
za pištolj za oružje -
sig-5v
GND-GND
5v - PWR/VCC
Za Reload_pin -
pin12 - 5v
GND-GND
5v - PWR/VCC
Za Nightvision_pin -
pin 10 - 5v
GND-GND
5v - PWR/VCC
Za shoot_pin -
Pin7 - 5v
GND-GND
5v - PWR/VCC
Za aim_pin -
Pin 8 - 5v
5v - PWR/VCC
1.3) ŽICE ZA LEMLJENJE
Lemite žice ploče za hljeb sa žicama duginih boja
1.4) IZOLACIJA
Zalijepite žice izolacijskom trakom na mjesto gdje ste zalemljeni kako biste izbjegli kratke spojeve
Korak 3: SOFTVER
Koristio sam aplikaciju pod nazivom 'Remotr' iz Play trgovine za prebacivanje videozapisa s prijenosnog računala na telefon
2.1) DALJINSKI
Instalirajte aplikaciju REMOTR na računalo i otvorite račun
Evo linka-
remotrapp.com/#download
Instalirajte aplikaciju REMOTR na svom pametnom telefonu
2.2) VIDEO STREAMING
Prvo povežite računar i istu WiFi mrežu i unesite svoj REMOTR račun na oba uređaja
sada ručno dodajte igru koju želite prenositi u softver
sada će aplikacija prikazati računalo kao administrator, kliknite na nju za početak streaminga
Za streaming u VR -u omogućite vr način rada na svom pametnom telefonu
Ako ne razumijete, provjerite ovu vezu za detaljne informacije
remotrapp.com/en/howto
Korak 4: GLAVNI KOD
Kôd za ovaj projekt nije težak ili složen, već dugačak
Evo koda, samo ga kopirajte i zalijepite u svoju arduino datoteku
ARDUINO
LEONARDO miš-
Referirao sam Gabry295. Ovaj kôd miša je zasnovan na njegovoj glavi
#include
#include
#include
#include
int aim_pin;
int shoot_pin;
MPU6050 mpu;
int16_t sjekira, ay, az, gx, gy, gz;
int vx, vy;
void setup () {
Serial.begin (9600);
Mouse.begin ();
Wire.begin ();
mpu.initialize ();
if (! mpu.testConnection ()) {{100} {101}
while (1);
}
pinMode (7, INPUT);
pinMode (8, INPUT);
}
void loop () {{100} {101}
shoot_pin = digitalRead (7);
aim_pin = digitalRead (8);
mpu.getMotion6 (& ax, & ay, & az, & gx, & gy, & gz);
vx = (gx-300)/200; // Stavio sam -300 i +490 jer moj mpu6050 prikazuje ove vrijednosti kada se ne pomiče ček
vy = -(gz+490)/200; // za više detalja o ovim vrijednostima provjerite kôd miša za glavu od strane Gabry295
Mouse.move (vx, vy);
kašnjenje (20);
while (shoot_pin == HIGH);
{
Mouse.click ();
}
while (aim_pin == HIGH);
{
Mouse.click ();
}
}
Leonardo tastatura
#include
int Grenade;
int weapon_pin;
int reload_pin;
int movement1_pin;
int movement2_pin;
int posture_pin;
char nightvision_pin;
void 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 ();
}
void loop ()
{
Grenade_pin = digitalRead (8);
arm_pin = digitalRead (9);
pokret1_pin = analogno čitanje (A1);
motion2_pin = analogRead (A2);
posture_pin = analogRead (A0);
reload_pin = digitalRead (12);
nightvision_pin = digitalRead (10);
if (granata == HIGH)
{
Keyboard.press ('g');
}
dok (oruzje = = VISINA)
{
Keyboard.press ('q');
}
while (reload_pin == HIGH)
{
Keyboard.press ('r');
}
while (pokret1_pin> 340 && pokret1_pin <420)
{
Keyboard.press ('w');
}
dok je (motion1_pin> 420)
{
Keyboard.press ('w');
Keyboard.press ('p');
}
while (pokret2_pin> 340 && pokret2_pin <420)
{
Keyboard.press ('w');
}
while (pokret2_pin> 420)
{
Keyboard.press ('p');
Keyboard.press ('w');
}
while (posture_pin> 340 && posture_pin <420)
{
Keyboard.press ('c');
}
dok (posture_pin> 420)
{
Keyboard.press ('l');
}
while (posture_pin <340)
{
Keyboard.press ('z');
}
while (nightvision_pin == HIGH)
{
Keyboard.press ('n');
}
}
}
Korak 5: TESTIRAJTE KODOVE
Evo nekoliko kodova podijeljenih od glavnog koda prema funkciji
STRELJENJE-
#include
int x;
void setup () {
pinMode (8, INPUT);
Mouse.begin ();
}
void loop () {{100} {101}
x = digitalRead (8);
ako (x == VISOKO)
{
Mouse.click ('g');
}
}
CILJANJE-
#include
#include
#include
#include
MPU6050 mpu;
int16_t sjekira, ay, az, gx, gy, gz;
int vx, vy;
void setup () {
Serial.begin (9600);
Mouse.begin ();
Wire.begin ();
mpu.initialize ();
if (! mpu.testConnection ()) {{100} {101}
while (1);
}
}
void loop () {{100} {101}
shoot_pin = digitalRead (7);
aim_pin = digitalRead (8);
mpu.getMotion6 (& ax, & ay, & az, & gx, & gy, & gz);
vx = (gx+300)/200; // "+300" jer osa x žiroskopa daje vrijednosti oko -350 dok se ne kreće. Promijenite ovu vrijednost ako dobijete nešto drugačije pomoću TEST koda, provjeravajući postoje li vrijednosti daleko od nule.
vy = -(gz_ -100)/200; // isto ovdje o "-100"
PONOVNO ČITANJE-
#include
int x;
void setup () {
pinMode (8, INPUT);
Keyboard.begin ();
}
void loop () {{100} {101}
x = digitalRead (8);
ako (x == VISOKO)
{
Keyboard.press ('r');
}
else
{
Keyboard.release ('r');
}
}
NIGHT VISIO #include
int x;
void setup () {
pinMode (8, INPUT);
Keyboard.begin ();
}
void loop () {{100} {101}
x = digitalRead (8);
ako (x == VISOKO)
{
Keyboard.press ('g');
}
else
{
Keyboard.release ('g');
}
}
KROUCH AND PRONE-
#include
int y;
void setup () {
pinMode (A0, INPUT);
Serial.begin (9600);
}
void loop () {{100} {101}
y = analogRead (A0);
ako (y <260)
{
Keyboard.release ('c');
Keyboard.release ('p');
}
inace if (y> 260 && y <310)
{
Keyboard.press ('c');
}
inače ako (y> 310)
{
Keyboard.press ('p');
}
}
Korak 6: KONTROLE IGRE
promijenite kontrole igre na sljedeći način
čučnuti - x
sklon - l
promjena oružja - q
sprint - str
stajati/skakati - z
noćni vid - n
kretanje prema naprijed - w
granata - g
Korak 7: POSTAVLJANJE
Konačno smo došli do posljednjeg koraka, sada stavite arduino
daske u kutiji i gurnite ih u vrećicu
Sada spojite mikro USB arduina na USB portove prijenosnog računala. Sada povežite senzore prema gore navedenim uputama
*strelice na gornjim slikama predstavljaju smjer prema kojem senzor mora biti okrenut
Ako imate bilo kakvih nedoumica, ne ustručavajte se ostaviti komentar i ne zaboravite podijeliti svoje iskustvo
To je to, hvala i
BYE.
Preporučuje se:
Stvaranje zakrivljenog korisničkog sučelja u jedinstvu za virtualnu stvarnost: 4 koraka
Stvaranje zakrivljenog korisničkog sučelja u Unityju za virtualnu stvarnost: Ako tražite besplatno i jednostavno rješenje za stvaranje zakrivljenog korisničkog sučelja za svoju aplikaciju za virtualnu stvarnost ili VR igru, na pravom ste mjestu. Na ovom ćete blogu naučiti stvarati zakrivljeni element korisničkog sučelja u jedinstvu pomoću Unity UI ekstenzija
Slušalice za virtualnu stvarnost-Google karton: 4 koraka
Slušalice za virtualnu stvarnost-Google karton: Zdravo momci, evo jednostavnog vodiča o tome kako napraviti Google karton, domaće slušalice za virtualnu stvarnost. Bilo bi bolno ugodno gledati Horror film u ovim slušalicama. Također i video zapis Roller Coaster -a bit će nezaboravno iskustvo. Upozorenje
Napravite sami pametne naočare za proširenu stvarnost pomoću Arduina: 7 koraka
DIY Pametne naočare za proširenu stvarnost koristeći Arduino: Kako tehnologija brzo raste i integrira se u sve aspekte života ljudi, dizajneri i programeri pokušali su ljudima pružiti ugodnije iskustvo tehnologije. Jedan od tehnoloških trendova koji imaju za cilj olakšati život je nošenje
Napravite vlastite naočale za virtualnu stvarnost: 4 koraka
Napravite vlastite naočale za virtualnu stvarnost: Materijali:- Kartonska kutija za cipele- Škare / X-Acto nož- 2 bikonveksna sočiva od 45 mm- 4 trake od čička- ljepilo
Mobilna virtualna stvarnost pomoću obrade za Android (TfCD): 7 koraka (sa slikama)
Mobilna virtualna stvarnost pomoću obrade za Android (TfCD): Virtualna stvarnost (VR) jedna je od novih tehnologija koja bi mogla biti zanimljiva budući proizvodi. Ima mnogo mogućnosti i ne trebaju vam čak ni skupe VR naočare (Oculus Rift). Možda vam se čini da je to jako teško učiniti sami, ali osnove su