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, Studeni
Anonim
Arduino kontroler video igara
Arduino kontroler video igara

Imate li Arduino kit u blizini, ali nemate pojma što učiniti s njim? Možda ne, ali u ovom Instructableu 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: Popis za kupovinu

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

Korak 2: Veze

Veze
Veze

Napomena: Ovo su samo senzori koje sam osobno koristio za svoj projekt. To znači da postoji puno više mogućnosti. Korak po korak upute o tome kako ih spojiti mogu se pronaći na različitim web mjestima, 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 kôd za svoje senzore. Jedina globalno važna stvar koja je potrebna je da se varijable koje želite koristiti u svom mehanizmu 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. Kao što ANALOG IN koristi pin.

const int potPin = A0; const int fsrAnalogPin = 5; const int fotoćelijaPin = 2; // Varijable: // OSJETNIK SVJETLOSTI: // Varijabla količine svjetlosti: int photocellReading; // POTENTIOMETER // Vrijednost int vrijednosti potenciometra; // OSJETNIK TLAKA // Ovo je varijabla sirovih podataka senzora tlaka. int fsrReading; // Mapirana verzija varijable fsrReading int pressure; void setup () {// ovdje postavite svoj kod za postavljanje, 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. tlak = karta (fsrReading, 0, 1023, 0, 255); // Provjerite je li tlak ispod ili iznad određene količine ispisujući jedno od dva. Ova se ispisana varijabla kasnije koristi u stroju za igre. if (tlak 70) {Serial.print ("6"); } // vrijednost POTENTIOMETRA = analogRead (potPin); // Očitavanje i spremanje analogne vrijednosti s potenciometra value = map (vrijednost, 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 ima 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"); // OSJETNIK SVJETLOSTI // Ovdje ponovo čitamo i postavljamo varijablu, u ovom slučaju fotoćeliju Čitanje. 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 tlaka, 5 nije pritisnuto, a 6 pritisnuto. // Nakon toga je na kojem segmentu je potenciometar trenutno uključen. // I zadnji broj je ili 3 = tamno ili 4 = svjetlo.

Korak 4: U Game Engineu: kliknite Team 2.5

U Upravitelju 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 izmjenjivi niz na GetData ("Serijski objekt")

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

Uvijek izradi drugi događaj: Postavite brojač na: Pronađi (niz $ ("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 ono što bi se trebalo dogoditi ako je lažno, poput isključenja Animacije 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 žarulje uključi.

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

Preporučeni: