Sadržaj:
- Korak 1: Korak 1: Senzor udaljenosti
- Korak 2: Korak 2: Servo motor
- Korak 3: Korak 3: RGB LED
- Korak 4: Korak 4: LCD
- Korak 5: Korak 5: Kôd
Video: Igra brze reakcije: Verzija na daljinu: 5 koraka (sa slikama)
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:37
Bok. Ovo je Instrukcija o tome kako stvoriti igru koja testira i vaše vrijeme reakcije i osjećaj udaljenosti. Ovaj se projekt temelji na starom projektu u kojem sam sudjelovala dva igrača koji su se natjecali da vide tko je brže reagirao pritiskom na gumb kad je svjetlo postalo zeleno. Ovaj ima sličnu namjenu, osim što je za jednog igrača i umjesto da se svjetlo ugasi, igraču se daje vremenski okvir da udalje svoju ruku na određeni prostor od senzora udaljenosti.
Kao i svi Arduino projekti, ova igra će zahtijevati brojne električne komponente u Arduino krugu. Glavne komponente, osim ožičenja i samog Arduina, uključuju matičnu ploču, servo motor, LCD zaslon, RGB LED i senzor udaljenosti.
Korištenjem https://abra-electronics.com, cijena bez žica i Arduina je 32,12 USD CAD.
Korak 1: Korak 1: Senzor udaljenosti
Prvi korak je postavljanje ultrazvučnog senzora udaljenosti na matičnu ploču i njegovo povezivanje s Arduinom. Točan položaj senzora zapravo nije bitan, ali idealno je da je blizu ruba tako da ima mjesta za ostale komponente, kao što je prikazano na gornjoj slici. Na senzoru se nalaze četiri pina; GND, VCC, TRIG i ECHO. GND i VCC moraju se spojiti u tlo, odnosno u tračnice za napajanje, a druga dva pina spojiti u dva pina na Arduinu. Dvije igle koje sam koristio bile su 12 za ECHO i 11 za TRIG. Za napajanje razvodnika upotrijebite dvije druge žice i uzemljite uzemljenu tračnicu spajanjem razvodnika za napajanje na 5V pin i uzemljenja na GND pin.
Korak 2: Korak 2: Servo motor
Sljedeći korak je postavljanje servo motora. U ovom projektu, servo motor funkcionira kao mjerač vremena. Počet će na 1 stupanj, a tijekom vremena u kojem korisnik mora distancirati ruke, rotirat će se na 180 stupnjeva. Koristio sam 2 sekunde kada korisnik sazna koliko moraju udaljeti ruke, pa se servo okreće za 179 stupnjeva u razdoblju od 2 sekunde, rotirajući u kratkim intervalima. Servo motor ima tri žice; obično žuta, crvena i smeđa. Crvena ulazi u razvodnik koji je već ožičen na 5V, a smeđi ide u uzemljenje već spojen u GND. Posljednja žica se priključuje na Arduino pin. Za ovaj sam odabrao pin #9. Zatim vam je potreban kondenzator koji spaja istu tračnicu na koju su priključene žice napajanja i uzemljenja servo motora, kao što se vidi na gornjoj slici.
Korak 3: Korak 3: RGB LED
Funkcija LED diode u ovom slučaju je da djeluje kao ljestvica za rezultat. Kada je rezultat igrača oko 0, LED dioda će biti bijela i postat će sve crvena ako se rezultat igrača smanji i zeleno ako se rezultat igrača poveća. Ova LED dioda ima četiri noge; noga crvenog svjetla, noga plavog svjetla, noga zelenog svjetla i zajednička katoda koje dijele ostale tri noge. Uobičajena katoda, najduža noga, ožičena je u energetski vod tako da prima 5 volti. Pričvrstite otpornike od 330 ohma na ostale tri noge u boji, a ostale krajeve tih otpornika pričvrstite na PWM digitalne pinove na Arduinu. Ja sam koristio digitalne iglice 3, 5 i 6 za crvene, zelene i plave noge.
Korak 4: Korak 4: LCD
Konačna komponenta je LCD, što znači zaslon s tekućim kristalima. Svrha ovoga je reći igraču njihov trenutni rezultat, kao i udaljenost koju trebaju odmaknuti ruke od senzora. Ovdje postoje četiri pribadače; GND, VCC, SDA i SCL. GND i VCC bit će spojeni u tlo, odnosno u ograde za električnu ploču. SDA pin mora biti spojen na analogni pin A4, a SCL pin na analogni pin A5. Za razliku od ostalih komponenti, morate priključiti igle SDA i SCL na A4 i A5.
Korak 5: Korak 5: Kôd
Sada kada smo spojili sve komponente, možemo napisati kôd. Prvi dio koda je uvoz potrebnih knjižnica i deklariranje naših varijabli te u koje pinove su komponente spojene. Za ovaj kôd moramo uvesti knjižnice Wire, LiquidCrystal_I2C i Servo.
#uključi
#uključi
#uključi
Servo myServo;
int const trigPin = 11;
int const echoPin = 12;
int redPin = 3;
int greenPin = 5;
int bluePin = 6;
int rezultat = 0;
int tim = 500;
int struja = slučajno (8, 16); // slučajna vrijednost pri kojoj korisnik mora odmaknuti ruku od senzora
LiquidCrystal_I2C LCD (0x27, 16, 2); // LCD postavljanje
Sada moramo upotrijebiti void setup () da deklariramo svoje vrste pin -ova i postavimo ostale potrebne komponente.
void setup () {myServo.attach (9); Serial.begin (9600); pinMode (trigPin, OUTPUT); pinMode (echoPin, INPUT); pinMode pinMode (redPin, OUTPUT); pinMode (greenPin, OUTPUT); pinMode (bluePin, OUTPUT); lcd.init (); lcd.backlight (); lcd.begin (16, 2); lcd.clear (); // postavljanje LCD -a}
Sada moramo postaviti RGB LED kôd pomoću funkcije i PWM -a:
void setColor (int crvena, int zelena, int plava) {
crvena = 255 - crvena;
zelena = 255 - zelena;
plava = 255 - plava;
analogWrite (redPin, crveno);
analogWrite (greenPin, zeleno);
analogWrite (bluePin, plavo);
}
Sada moramo dodati void petlju (). Ovdje ćemo generirati nasumične cijele brojeve i koristiti niz if naredbi za kontrolu igre za igrača. Trenutna varijabla, gore postavljena, služi za trenutnu udaljenost koju se igrač mora distancirati od senzora.
Budući da je kôd u void loop () jako dugačak, zalijepit ću vezu na dokument koji ima taj kôd:
docs.google.com/document/d/1DufS0wuX0N6gpv…
Konačno, moramo napraviti stvarne izračune za pretvaranje vrijednosti ultrazvučnog senzora udaljenosti u inče. Ultrazvučni senzor udaljenosti ne mjeri izravno udaljenost; ispušta zvuk i bilježi vrijeme potrebno da senzor dobije zvuk iz bilo kojeg predmeta od kojeg se odbija.
long microsecondsToInches (duge mikrosekunde) {
povratne mikrosekunde / 74 /2;
}
Sada priključujemo ožičeni Arduino u računalo s kodom, postavljamo portove i pokrećemo ga! Postoje dva načina igre. Ili možete koristiti samo LCD zaslon, servo motor, senzor i RGB LED i samo znate udaljenost koju morate imati od senzora, što je teži način rada. Lakši način uključuje korištenje serijskog monitora u Alati> Serijski monitor, koji će vas svake sekunde ažurirati koliko ste udaljeni od senzora, tako da možete izvršiti potrebne prilagodbe.
Hvala na čitanju!
Preporučeni:
Lutka za trening reakcije: 9 koraka (sa slikama)
Lutka za reakcijski trening: Kao zahtjev prijatelja sportaša za izgradnju jeftinog, ali učinkovitog uređaja za poboljšanje treninga reakcije, došao sam na ovu ideju! Ideja je bila stvoriti niz LED uređaja koje korisnici moraju deaktivirati pomoću mjerenja blizine. Nakon isključivanja uređaja slučajni
Svemirska utrka Igra Verzija 2: 5 koraka
Igra Space Race verzija 2: Pozdrav svima. Prije ove verzije igre, objavio sam prvu verziju igre. Danas ću vam pokazati Space Race Game verziju 2. Pogledajmo korake
Laptop za brze igre: 9 koraka (sa slikama)
Laptop za brze igre: HiFriends, Danas ću vam pokazati kako kod kuće napraviti najmoćnije i brzo računalo džepne veličine s ugrađenim operativnim sustavom Windows 10. U ovom članku ću vam dati sve informacije kako biste ovo lako izgradili kod kuće sa
LUKA OD BRZE PJENE: 9 koraka (sa slikama)
BRZA PJENSKA STOLKA: Ovdje je brz i jednostavan način za početak okretanja (izrada stvari na tokarilici) - bez tokarilice, drva, metala ili bilo kojeg ispravnog alata za rezanje. Ovo pokriva osnovne koncepte: postavljanje, grubo rezanje, uzorak, oblik, završna obrada. Evo osnovnih koraka: SETUP-As
Fischertechnik LED Vrijeme reakcije Igra: 7 koraka
Fischertechnik LED reakcijsko vrijeme igra: Kako stvoriti fischertechnik LED REAKCIJSKU VREMENSKU IGRU Živim se s različitim obrazovnim manipulativima. (Posjetite www.weirdrichard.com). Aplikacija koju je lako izgraditi je LED REAKCIJSKA VREMENSKA IGRA. Robotski kontroler (u ovom slučaju