Sadržaj:

Arduino kontroler video igara: 4 koraka
Arduino kontroler video igara: 4 koraka

Video: Arduino kontroler video igara: 4 koraka

Video: Arduino kontroler video igara: 4 koraka
Video: ДИСТАНЦИОННАЯ АППАРАТУРА УПРАВЛЕНИЯ НА АРДУИНО 2024, Novembar
Anonim
Arduino kontroler video igara
Arduino kontroler video igara

Imate li Arduino kit u blizini, ali nemate pojma što s njim učiniti? Možda ne, ali u ovom Instructable -u pokazat ću vam korak po korak kako izgraditi, kodirati i integrirati Arduino u vaš projekt. Trenutno je ovaj vodič testiran samo s Clickteam Fusion Developer 2.5, ali koraci izgradnje i Arduino koda mogu se koristiti univerzalno. Ovaj bi se vodič u budućnosti mogao ažurirati za Unreal i Unity.

Korak 1: Lista za kupovinu

  • Arduino Uno ili slično
  • USB kabel
  • (400 bodova) Breadboard ili 1 x perf/board ploča
  • Arduino kompatibilne žice.
  • Razni senzori. U svom primjeru projekta koristio sam sljedeće:
  • Potenciometar za montiranje na ploču 10K prikladan za izradu ploče
  • Fotootpornik
  • Otpornik osjetljiv na silu

Korak 2: Veze

Connections
Connections

Napomena: Ovo su samo senzori koje sam lično koristio za svoj projekat. To znači da postoji mnogo više opcija. Korak po korak upute o tome kako ih spojiti mogu se pronaći na različitim web lokacijama, ovisno o senzoru.

Korak 3: Arduino kod

Kopirajte i prenesite ovaj kôd na svoj Arduino ako želite koristiti iste vrste senzora kao ja. U protivnom možete koristiti vlastiti kod za svoje senzore. Jedina globalno važna stvar koja je potrebna je da se varijable koje želite koristiti u svom engineu za igre ispišu na serijski monitor ili da se mogu pročitati na neki drugi način.

// Oni su postavljeni na početku i ne mijenjaju se dok je program pokrenut. Na primjer koji ANALOG IN pin koristi.

const int potPin = A0; const int fsrAnalogPin = 5; const int fotoćelijaPin = 2; // Varijable: // LIGHT SENSOR: // Varijabla svjetlosne količine: int photocellReading; // POTENTIOMETER // Vrijednost potenciometra int vrijednost; // OSJETNIK PRITISKA // Ovo je varijabla sirovih podataka senzora pritiska. int fsrReading; // Mapirana verzija varijable fsrReading int pressure; void setup () {// stavite svoj kod za postavljanje ovdje, da biste ga jednom pokrenuli: pinMode (potPin, INPUT); Serial.begin (9600); } void loop () {// OSJETNIK PRITISKA // Ovdje koristimo navedeni fsrAnalogPin za čitanje podataka s tog pina. fsrReading = analogRead (fsrAnalogPin); // Vrijednost karte 0-1023 do 0-255. pritisak = karta (fsrReading, 0, 1023, 0, 255); // Provjerite je li tlak ispod ili iznad određene količine ispisujući jednu od dvije. Ova štampana varijabla se kasnije koristi u mašini za igre. if (pritisak 70) {Serial.print ("6"); } // POTENTIOMETER vrijednost = analogRead (potPin); // Očitavanje i spremanje analogne vrijednosti s potenciometra value = map (value, 0, 1023, 0, 360); // Vrijednost karte 0-1023 do 0-360 // Ovdje smo podijelili 360 na šest različitih segmenata. // Možete promijeniti količinu segmenata na veći iznos. Svaki segment tada bi imao manji raspon. Na primjer, 8 segmenata bi imalo raspon od 45. (360 /količina segmenata) // Ako trenutna vrijednost spada u segment, ispisat će naziv tog segmenta. if (vrijednost 60 i vrijednost 120 i vrijednost 180 i vrijednost 240 i vrijednost 300 i vrijednost <375) Serial.print ("Šest"); // LIGHT SENSOR // Ovdje ponovo čitamo i postavljamo varijablu, u ovom slučaju photocellReading. photocellReading = analogRead (photocellPin); // Provjeravamo količinu svjetla, tamnim i vrlo tamnim ispisom a 3 i normalnim svjetlosnim vrijednostima ispisujemo 4. if (photocellReading <10) {Serial.println (" - 3"); } else if (photocellReading <200) {Serial.println (" - 3 -"); } else if (photocellReading <500) {Serial.println (" - 4 -"); } // Brojevi u serijskom broju: // Prvi broj je senzor pritiska, 5 nije pritisnuto, a 6 je pritisnuto. // Nakon toga je na kojem segmentu je potenciometar trenutno uključen. // I zadnji broj je ili 3 = taman ili 4 = svijetli.

Korak 4: U Engine Engineu: kliknite Team 2.5

U Menadžeru proširenja pronađite serijski objekt i instalirajte ga.

Postavite serijski objekt, brojač i niz u okvir. (Desni klik u okviru - umetnite objekt)

U uređivaču događaja stvorite događaj: Ako podaci čekaju: Postavite promjenjivi niz na GetData ("Serijski objekt")

Ovo će niz postaviti na sve podatke koje šalje Arduino, string bi sada trebao izgledati slično serijskom monitoru.

Kreiraj drugi događaj Uvijek: Podesi brojač na: Pronađi (string $ ("String"), "4", 0)

Ovaj primjer će pokušati pronaći 4 koja je jednaka svjetlosti kao što se može vidjeti u Arduino kodu.

Ako pronađe 4, brojač će postaviti na 4, ako ne uspije pronaći 4, brojač će biti -1.

Sada možete dodati novi događaj kako biste učinili nešto s ovim rezultatom:

Ako je brojač = -1: Ovdje možete postaviti šta bi se trebalo dogoditi ako je lažno, na primjer isključiti Animaciju lampe.

Ako je brojač = -1: To znači da je pronašao varijablu i da je brojač postavljen na bilo koju varijablu (sve dok nije -1), ovdje to možete učiniti tako da se animacija lampe uključi.

U osnovi, pomoću brojača koji su postavljeni na -1 što je netačno ili -1 što je tačno, možete dogoditi događaje.

Preporučuje se: