Kazalo:

Nagib: 6 korakov
Nagib: 6 korakov

Video: Nagib: 6 korakov

Video: Nagib: 6 korakov
Video: Что качать в War Thunder? СССР ранг 6: Лучшие и Худшие танки. Аналитика и Обзор наземной ветки. 2024, November
Anonim
Tylt
Tylt
Tylt
Tylt
Tylt
Tylt

Opis projekta: Ustvarjanje krmilnika na podlagi gibanja, ki lahko posreduje podatke naprej in nazaj z arduino plošče v motor za oblikovanje iger Unity 5. V tem primeru uporabljamo troosni merilnik pospeška (Adxl345) za nadzor položaja X in Y igralnih predmetov znotraj mehanizma Unity. Merilnik pospeška in arduino sta sestavljena v pravokotno škatlo, da tvorita udoben in uporabniku prijazen krmilnik.

Materiali:

Merilnik pospeška

Lepilo za lepilo

Arduino BoardBasic spajkanje

BreadboardLaser Cutter (Tudi tračna žaga bi delovala, vendar ne tako natančno)

Pleksi steklo (ali kateri koli drug material, v katerega želite sestaviti arduino in merilnik pospeška) Kabel USB 1.1

Žice

Korak: Mehanska montaža

Mehanski sklop
Mehanski sklop
Mehanski sklop
Mehanski sklop
Mehanski sklop
Mehanski sklop

Najprej zmešajte svoje zatiče v pospeševalniku. V tem primeru so vsi zatiči spajkani, vendar so edini potrebni zatiči: vrata VIN, vrata Grnd, vrata SDA in vrata SCL. Merilnik pospeška postavite na mizo, tako da so vsi zatiči v različnih vrsticah, vendar v istem stolpcu. Nato povežite štiri žice od arduina do pospeševalnika. Ena žica mora iti od vrat 5V na arduinu do vrat VIN na merilniku pospeška. Povezati morata tudi zemeljska vrata na arduinu in merilnik pospeška. Vrata SDA in SCL na arduinu bi morala biti povezana (in usklajena) z vrati SDA in SCL na merilniku pospeška. Preverite zadnjo stran vašega arduina in ugotovite, katera od njegovih vrat so SDA in SCL. Ne skrbite za priključitev napajalnika, vsa energija se bo napajala na arduino prek kabla USB 1.1.

2. korak: Oblikujte svojo igro

To je verjetno najpomembnejši del igre in zelo priporočljivo je, da se pri tem projektu zadovoljite z enotnostjo. Resnično lahko naredite katero koli igro, ki jo želite, odločili smo se, da naredimo igro v stilu žoge in labirinta. Pri ustvarjanju igre poskrbite, da bodo vsi predmeti, ki jih je treba nadzorovati, sestavljeni iz večjega predmeta igre.

3. korak: Kodiranje

To je verjetno najtežji del projekta. Prva stvar, ki jo boste želeli narediti, je, da v Arduino IDE prenesete knjižnico kod za merilnik pospeška ADXL345. Najdete ga na spletnem mestu adafruit. Ko bo naložen na arduino, bo izpisal kup podatkov v serijski monitor. V resnici bi bilo idealno, da bi zgrabili podatke o položaju XYZ in jih poslali naravnost v projekt enotnosti, vendar pošiljanje plovcev ni tako preprosto, kot se zdi. Ko bo podatke pošiljal, jih bo Unit vedno prebral kot niz, s čimer se bo izkazalo, da je težko delati. Če se želite tega izogniti, lahko naredimo vrsto if stavkov za arduino. na primer:

if (event.acceleration.y> 3) {

Serial.println ("desno");

}

Želeli bomo narediti te vrste primerjav za osem različnih smeri: gor, dol, levo, desno, gor-desno, gor-levo, dol-desno in dol-levo.

S pošiljanjem teh nizov navodil jih lahko dejansko uporabimo! V Unityju bomo na našem krmilniku predvajalnika (ki mora biti pritrjen na predmet ali skupino predmetov, ki jih želite nadzirati) želeli uporabiti stavek if, ki bo uporabil niz, ki se bere v:

if (serial. ReadLine () == "left") {

Debug. Log ("levo");

transform. Rotate ((-Time.deltaTime * 50), 0, 0);

}

In spet bomo to želeli narediti za vseh osem smeri.

Zdaj je najtežje, da dejansko omogočimo pošiljanje podatkov v enotnost. V istem skriptu bomo želeli dovoliti serijsko knjižnico: z uporabo System. IO. Ports

Nato bomo želeli ustvariti nov primerek serijskih vrat:

SerialPort serial = nov SerialPort ("COM5", 9600);

** Če želite preveriti, kateri COM uporablja vaš arduino, lahko to storite v Arduino IDE, najpogostejša pa sta COM3 in COM5. **

Znotraj naše zagonske funkcije želimo zdaj odpreti serijska vrata:

if (! serial. IsOpen) {

serial. Open ();

serial. ReadTimeout = 10;

}

Po vsem tem poskusite preizkusiti prenos podatkov in videli boste, da deluje!

4. korak: Rezanje

Rezanje
Rezanje
Rezanje
Rezanje

Zdaj, ko imate kodirano igro in vaš arduino komunicira z Unity 5, je projekt v bistvu zaključen. Vendar pa ga želite sestaviti v uporabniku prijazen in privlačen krmilnik, ki ga bodo lahko uporabljali vsi vaši prijatelji! Če želite ustvariti ta krmilnik, lahko uporabite poljuben material, samo pazite, da ne odvrže vaših koordinat v pospeševalniku. Morda se boste morali vrniti in ustrezno prilagoditi kodo. Prav tako pustite vrata USB 1.1 odprta, da povežete krmilnik z računalnikom. V tem primeru smo uporabili pleksi steklo. Najprej morate izmeriti dimenzije vsakega kosa, da ustrezajo vašim potrebam. Ponovno upoštevajte odpiranje vrat USB 1.1. Nato z laserskim rezalnikom izrežite vse kose za krmilno omarico. Pleksi steklo lahko razrežete tudi s tračno žago, vendar je laserski rezalnik natančnejši. Poleg tega smo s tračno žago izrezali majhen kos lesa, ki je bil enakih dimenzij kot arduino. Čeprav to ni potrebno, je priporočljivo za korak montaže.

5. korak: Montaža krmilnika

Sklop krmilnika
Sklop krmilnika
Sklop krmilnika
Sklop krmilnika

(Če lesa niste rezali, kot je priporočeno v prejšnjem koraku, preskočite to prvo navodilo.) Vzemite kos lesa in nanj položite arduino ploščo. Nato privijte desko na les in se prepričajte, da je trdno na svojem mestu, nato pa lepilo prilepite na spodnji kos pleksi stekla. Če ste les preskočili, lahko ploščo privijete neposredno na pleksi steklo, čeprav bi jo lahko poškodovali ali postali neprijetni, če ni dovolj debela za vijak. Nato odstranite lepilno nalepko z zadnje strani vaše plošče, jo postavite blizu in se prilepite poleg arduina. Nato lepite preostale dele škatle, da oblikujete krmilnik, znova preverite, ali so vrata USB 1.1 še vedno dostopna.

6. korak: Plug and Play

Končali ste! Priključite svoj sladki krmilnik na računalnik s kablom USB 1.1 in preizkusite svojo igro!

Priporočena: