Orodha ya maudhui:

Suti halisi ya Ukweli Kutumia Arduino: Hatua 7 (na Picha)
Suti halisi ya Ukweli Kutumia Arduino: Hatua 7 (na Picha)

Video: Suti halisi ya Ukweli Kutumia Arduino: Hatua 7 (na Picha)

Video: Suti halisi ya Ukweli Kutumia Arduino: Hatua 7 (na Picha)
Video: KWELI SAMAKI MTU, #NGUVA APATIKANA MOMBASA 2024, Julai
Anonim
Ukweli wa Suti ya Kutumia Arduino
Ukweli wa Suti ya Kutumia Arduino

Nimeunda mradi huu kucheza michezo ya kawaida ya kompyuta katika VR kamili. Mradi huu huiga harakati zako kwa kubonyeza au kushikilia funguo za kibodi yako

Mfano- unaposonga mbele hatua ya kubonyeza kitufe cha 'w' inaigwa.

Nimeiga mchezo Wito wa Ushuru 4: Vita vya kisasa lakini usichague michezo ambayo imerudi wakati wa kupiga risasi kwa sababu itabadilisha msimamo wa panya.

Hatua ya 1: Mahitaji

Mahitaji ni-

Kuna orodha kamili ya vitu unahitaji kutengeneza suti hii

Gusa sensorer-5

Lazimisha sensor-1

GPU 6050 - 4

(au)

GPU 6050 - 2 & Accelerometer - 2

Vr glasi

Simu iliyowezeshwa na Vr

PC

Hoteli ya WiFi

Bunduki ya kuchezea

Mchezo wa pc (nimetumia Wito wa Ushuru- Vita vya kisasa 1)

Waya za bodi ya mkate (Mwanaume-Mwanamke)

ARDUINO LEONARDO-2

Msichana wa Auton - 2

Chanzo cha nguvu (lipo)

Waya za upinde wa mvua

Hatua ya 2: HARDWARE

HARDWARE
HARDWARE
HARDWARE
HARDWARE
HARDWARE
HARDWARE

* pakia tena_pini, piga-pini, pini-usiku, grenade_pini, mabadiliko ya silaha-pini ni sensorer za kugusa. aim_pin ni sensorer ya nguvu na panya inaigwa na MPU6050 sensorer zingine ni accelerometer (mkao, harakati1 & 2)

1.1) KUUZA

SOLDER MPU 6050, Accelerometer, Touch Sensor & sensor nguvu na waya

1.2) Wiring

Kwa MPU 6050-

Bandika 2- SDA

Bandika 3- SCL

GND - GND

5v - PWR / VCC

Kwa harakati_pini1-

Bandika mhimili A1- x

GND-GND

5v - PWR / VCC

Kwa harakati_pin2-

Bandika mhimili A2- x

GND-GND

5v - PWR / VCC

Kwa mkao_pini-

Bandika mhimili A0- x

GND-GND

5v - PWR / VCC

kwa pini ya silaha -

sig-5v

GND-GND

5v - PWR / VCC

Kwa Pakia tena_pini -

pin12 - 5v

GND-GND

5v - PWR / VCC

Kwa Usiku_pini -

pini 10 - 5v

GND-GND

5v - PWR / VCC

Kwa shoot_pin -

Pin7 - 5v

GND-GND

5v - PWR / VCC

Kwa aim_pin -

Bandika 8 - 5v

5v - PWR / VCC

1.3) KUUZA WIMA

Solder waya za bodi ya mkate na waya za upinde wa mvua

1.4) DUDU

Piga waya na mkanda wa kuhami mahali ambapo umeuza ili kuepuka mizunguko fupi

Hatua ya 3: SOFTWARE

SOFTWARE
SOFTWARE
SOFTWARE
SOFTWARE

Nimetumia programu iitwayo 'Remotr' kutoka Duka la Google Play kutupia video kutoka kwa kompyuta ndogo kwenda kwa simu

2.1) RIMOTI-

Sakinisha programu ya REMOTR kwenye kompyuta yako na uunda akaunti

Hapa kuna kiunga-

remotrapp.com/#download

Sakinisha programu ya REMOTR katika smartphone yako

2.2) MTANDAO WA VIDEO

Kwanza unganisha kompyuta na mtandao huo wa WiFi na uweke akaunti yako ya REMOTR katika vifaa vyote viwili

sasa ongeza mwenyewe mchezo ambao unataka kutiririka kwenye programu

sasa programu itaonyesha kompyuta kama admin bonyeza hiyo ili kuanza kutiririka

Ili kutiririka katika VR wezesha hali ya vr kwenye smartphone yako

Ikiwa hauwezi kuelewa Angalia kiunga hiki kwa habari ya kina

remotrapp.com/en/howto

Hatua ya 4: CODE kuu

Nambari ya mradi huu sio ngumu au ngumu lakini ndefu

Hapa kuna nambari tu nakili na ibandike kwenye faili yako ya arduino

ARDUINO

Panya wa LEONARDO-

Nimemrejeshea Gabry295. Nambari hii ya panya inategemea kichwa chake kipanya kinachoweza kufundishwa

# pamoja

# pamoja

# pamoja

# pamoja

int aim_pin;

int shoot_pin;

MPU6050 mpu;

int16_t shoka, ay, az, gx, gy, gz;

int vx, vy;

usanidi batili () {

Serial. Kuanza (9600);

Panya kuanza ();

Wire.begin ();

mpu kuanzisha ();

ikiwa (! mpu.testConnection ()) {

wakati (1);

}

pinMode (7, INPUT);

pinMode (8, INPUT);

}

kitanzi batili () {

risasi_pin = dijitiSoma (7);

aim_pin = digitalRead (8);

mpu.getMotion6 (& shoka, & ay, & az, & gx, & gy, & gz);

vx = (gx-300) / 200; // Nimeweka -300 na + 490 kwani mpu6050 yangu inaonyesha maadili haya wakati wa kusonga hundi

vy = - (gz + 490) / 200; // angalia nambari ya panya ya kichwa na Gabry295 kwa maelezo zaidi juu ya maadili haya

Panya.sogea (vx, vy);

kuchelewesha (20);

wakati (shoot_pin == JUU);

{

Panya bonyeza ();

}

wakati (aim_pin == JUU);

{

Panya bonyeza ();

}

}

Kinanda ya Leonardo

# pamoja

int Grenade;

silaha ya silaha;

int reload_pin;

harakati ya 11_pin;

harakati ya int2_pin;

int mkao_pin;

char nightvision_pin;

kuanzisha batili ()

{

pinMode (7, INPUT);

pinMode (8, INPUT);

pinMode (9, INPUT);

pinMode (10, Pembejeo);

pinMode (11, INPUT);

pinMode (12, INPUT);

pinMode (A0, INPUT);

pinMode (A1, INPUT);

Kinanda.anza ();

}

kitanzi batili ()

{

Grenade_pin = dijitaliSoma (8);

silaha_pin = dijitiSoma (9);

harakati1_pin = AnalogSoma (A1);

harakati2_pin = AnalogSoma (A2);

mkao_pin = AnalogSoma (A0);

reload_pin = dijitiSoma (12);

usiku wa macho_pin = dijitiSoma (10);

ikiwa (grenade == JUU)

{

Kinanda.press ('g');

}

wakati (silaha_pini == JUU)

{

Kinanda.press ('q');

}

wakati (reload_pin == JUU)

{

Kinanda.press ('r');

}

wakati (harakati1_pin> 340 && harakati1_pin <420)

{

Kinanda.press ('w');

}

wakati (harakati1_pin> 420)

{

Kinanda.press ('w');

Kinanda.press ('p');

}

wakati (harakati2_pin> 340 && harakati2_pin <420)

{

Kinanda.press ('w');

}

wakati (harakati2_pin> 420)

{

Kinanda.press ('p');

Kinanda.press ('w');

}

wakati (posture_pin> 340 && posture_pin <420)

{

Kinanda.press ('c');

}

wakati (posture_pin> 420)

{

Kinanda.press ('l');

}

wakati (posture_pin <340)

{

Kinanda.press ('z');

}

wakati (nightvision_pin == JUU)

{

Kinanda.press ('n');

}

}

}

Hatua ya 5: KODI ZA Mtihani

Hapa kuna nambari chache zilizogawanywa kutoka kwa nambari kuu kulingana na utendakazi

KUPIGA RISASI-

# pamoja

int x;

usanidi batili () {

pinMode (8, INPUT);

Panya kuanza ();

}

kitanzi batili () {

x = kusoma kwa dijiti (8);

ikiwa (x == JUU)

{

Panya bonyeza ('g');

}

}

KUSUDI-

# pamoja

# pamoja

# pamoja

# pamoja

MPU6050 mpu;

int16_t shoka, ay, az, gx, gy, gz;

int vx, vy;

usanidi batili () {

Serial. Kuanza (9600);

Panya kuanza ();

Wire.begin ();

mpu kuanzisha ();

ikiwa (! mpu.testConnection ()) {

wakati (1);

}

}

kitanzi batili () {

risasi_pin = dijitiSoma (7);

aim_pin = digitalRead (8);

mpu.getMotion6 (& shoka, & ay, & az, & gx, & gy, & gz);

vx = (gx + 300) / 200; // "+ 300" kwa sababu mhimili wa x wa gyroscope hutoa maadili karibu -350 wakati haujisogei. Badilisha thamani hii ikiwa unapata kitu tofauti kwa kutumia nambari ya Jaribio, ukifunga ikiwa kuna maadili mbali na sifuri.

vy = - (gz_-100) / 200; // sawa hapa kuhusu "-100"

Upakiaji upya-

# pamoja

int x;

usanidi batili () {

pinMode (8, INPUT);

Kinanda.anza ();

}

kitanzi batili () {

x = kusoma kwa dijiti (8);

ikiwa (x == JUU)

{

Kinanda.press ('r');

}

mwingine

{

Kinanda.tafadhali ('r');

}

}

MAONI YA USIKU # pamoja

int x;

usanidi batili () {

pinMode (8, INPUT);

Kinanda.anza ();

}

kitanzi batili () {

x = kusoma kwa dijiti (8);

ikiwa (x == JUU)

{

Kinanda.press ('g');

}

mwingine

{

Kinanda.tafadhali ('g');

}

}

KIJIVU NA KUSUDI-

# pamoja

int y;

usanidi batili () {

pinMode (A0, INPUT);

Serial. Kuanza (9600);

}

kitanzi batili () {

y = AnalogSoma (A0);

ikiwa (y <260)

{

Kinanda.tafadhali ('c');

Kinanda.tafadhali ('p');

}

vinginevyo ikiwa (y> 260 && y <310)

{

Kinanda.press ('c');

}

vinginevyo ikiwa (y> 310)

{

Kinanda.press ('p');

}

}

Hatua ya 6: UDHIBITI WA MCHEZO

badilisha udhibiti wa mchezo kama ifuatavyo

kuinama - x

kukabiliwa - l

mabadiliko ya silaha - q

mbio - uk

kusimama / kuruka - z

maono ya usiku - n

harakati mbele - w

grenade - g

Hatua ya 7: KUWEKA

KUWEKA
KUWEKA
KUWEKA
KUWEKA
KUWEKA
KUWEKA

Mwishowe tumefika hatua ya mwisho sasa weka arduino

bodi kwenye sanduku na uingize kwenye begi

Sasa unganisha USB ndogo ya arduino kwenye bandari za USB za mbali sasa unganisha sensorer kama ilivyoelekezwa hapo juu

* alama za mshale kwenye picha zilizo hapo juu zinawakilisha mwelekeo ambao lazima sensorer ikabili

Ikiwa una mashaka yoyote usisite kuacha maoni na usisahau kushiriki uzoefu wako

Hiyo ni asante na

BYE.

Ilipendekeza: