Satura rādītājs:
- 1. darbība: 1. darbība: attāluma sensors
- 2. darbība: 2. darbība: servomotors
- 3. darbība: 3. darbība: RGB gaismas diode
- 4. darbība: 4. darbība: LCD
- 5. darbība: 5. darbība: kods
Video: Ātrās reakcijas spēle: Attāluma versija: 5 soļi (ar attēliem)
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Sveiki. Šī ir pamācība, kā izveidot spēli, kas pārbauda gan jūsu reakcijas laiku, gan attāluma sajūtu. Šis projekts ir balstīts uz vecu projektu, kurā es piedalījos, iesaistot divus spēlētājus, kuri sacentās, lai uzzinātu, kam bija ātrāks reakcijas laiks, noklikšķinot uz pogas, kad gaisma kļuva zaļa. Šim nolūkam ir līdzīgs mērķis, izņemot gadījumus, kad tas ir viens spēlētājs, un nevis iedegas gaisma, bet spēlētājam tiek dots laiks, lai attālinātu savu roku noteiktā attālumā no attāluma sensora.
Tāpat kā visiem Arduino projektiem, arī šai spēlei Arduino ķēdē būs nepieciešami daudzi elektriskie komponenti. Galvenās sastāvdaļas, izņemot elektroinstalāciju un pašu Arduino, ietver maizes dēli, servomotoru, LCD displeju, RGB LED un attāluma sensoru.
Izmantojot vietni https://abra-electronics.com, cena bez vadiem un Arduino ir 32,12 USD.
1. darbība: 1. darbība: attāluma sensors
Pirmais solis ir uzstādīt ultraskaņas attāluma sensoru uz maizes dēļa un pieslēgt to Arduino. Precīzam sensora stāvoklim faktiski nav nozīmes, bet ideālā gadījumā tas ir tuvu malai, lai būtu vietas citām sastāvdaļām, kā parādīts attēlā iepriekš. Uz sensora ir četras tapas; GND, VCC, TRIG un ECHO. GND un VCC ir jāpievieno attiecīgi zemei un strāvas sliedēm, un pārējās divās tapās jāpievieno divās Arduino tapās. Abas manis izmantotās tapas bija 12 ECHO un 11 - TRIG. Izmantojiet divus citus vadus, lai barotu strāvas sliedi un iezemētu sliedi, savienojot strāvas sliedi ar 5V tapu un zemējuma sliedi ar GND tapu.
2. darbība: 2. darbība: servomotors
Nākamais solis ir servomotora iestatīšana. Šajā projektā servomotors darbojas kā taimeris. Tas sāksies ar 1 grādu, un laika posmā, kurā lietotājam ir jānošķir rokas, tas pagriezīsies līdz 180 grādiem. Es izmantoju 2 sekundes, kad lietotājs uzzina, cik tālu viņiem ir jāatdala rokas, tāpēc servo 2 sekunžu laikā rotē 179 grādus, rotējot īsos intervālos. Servomotoram ir trīs vadi; parasti dzeltens, sarkans un brūns. Sarkanais nonāk barošanas sliedē, kas jau ir pievienota 5 V spriegumam, un brūnais - zemes sliedē, kas jau ir pievienota GND. Pēdējais vads tiek pievienots Arduino tapai. Šim es izvēlējos tapu #9. Tad jums ir nepieciešams kondensators, kas savieno to pašu sliedi, kurai ir pievienots servomotora barošanas un zemējuma vadi, kā redzams attēlā iepriekš.
3. darbība: 3. darbība: RGB gaismas diode
Gaismas diodes funkcija šajā gadījumā ir rādītāja skala. Ja spēlētāja rezultāts ir ap 0, gaismas diode būs balta un kļūs sarkanāka, ja spēlētāja rezultāts samazināsies, un zaļa, ja spēlētāja rezultāts palielinās. Šim LED ir četras kājas; sarkanās gaismas kāja, zilās gaismas kāja, zaļās gaismas kāja un kopējais katods, kas sadalīts starp pārējām trim kājām. Kopējais katods, garākā kāja, ir pievienots barošanas sliedei, lai tas saņemtu 5 voltus. Pārējām trim krāsu kājām piestipriniet 330 omu rezistorus un pārējos šo rezistoru galus pie PWM digitālajām tapām Arduino. Es izmantoju digitālās tapas 3, 5 un 6 attiecīgi sarkanajām, zaļajām un zilajām kājām.
4. darbība: 4. darbība: LCD
Pēdējais komponents ir LCD, kas apzīmē šķidro kristālu displeju. Tā mērķis ir pateikt spēlētājam savu pašreizējo rezultātu, kā arī attālumu, kas nepieciešams, lai rokas novirzītu no sensora. Šeit ir četras tapas; GND, VCC, SDA un SCL. GND un VCC tiks pievienoti attiecīgi maizes dēļa zemei un barošanas sliedēm. SDA tapa ir jāpievieno analogajai tapai A4, un SCL tapa jāpievieno analogajai tapai A5. Atšķirībā no citiem komponentiem, SDA un SCL tapas ir jāpievieno A4 un A5.
5. darbība: 5. darbība: kods
Tagad, kad esam pievienojuši visus komponentus, mēs varam uzrakstīt kodu. Pirmā koda daļa ir vajadzīgo bibliotēku importēšana un mūsu mainīgo deklarēšana un to kontaktu pieslēgšana. Šim kodam mums ir jāimportē Wire, LiquidCrystal_I2C un Servo bibliotēkas.
#iekļaut
#iekļaut
#iekļaut
Servo myServo;
int const trigPin = 11;
int const echoPin = 12;
int redPin = 3;
int greenPin = 5;
int bluePin = 6;
int rezultāts = 0;
int tim = 500;
int strāva = nejauša (8, 16); // nejauša vērtība, kur lietotājam ir jānovieto roka no sensora
LiquidCrystal_I2C LCD (0x27, 16, 2); // LCD iestatīšana
Tagad mums ir jāizmanto void setup (), lai deklarētu mūsu tapu veidus un iestatītu citus nepieciešamos komponentus.
void setup () {myServo.attach (9); Sērijas sākums (9600); pinMode (trigPin, OUTPUT); pinMode (echoPin, INPUT); pinMode pinMode (redPin, OUTPUT); pinMode (greenPin, OUTPUT); pinMode (bluePin, OUTPUT); lcd.init (); lcd.fona apgaismojums (); lcd. sākums (16, 2); lcd.clear (); // LCD iestatīšana}
Tagad mums ir jāiestata RGB LED kods, izmantojot funkciju un PWM:
void setColor (int sarkans, int zaļš, int zils) {
sarkans = 255 - sarkans;
zaļš = 255 - zaļš;
zils = 255 - zils;
analogWrite (redPin, sarkans);
analogWrite (zaļšPin, zaļš);
analogWrite (zilsPin, zils);
}
Tagad mums jāpievieno tukšuma cilpa (). Šeit mēs ģenerēsim nejaušus veselus skaitļus un izmantosim virkni paziņojumu, lai kontrolētu spēlētāja spēli. Pašreizējais mainīgais, kas iestatīts iepriekš, attiecas uz pašreizējo attālumu, kas spēlētājam jāatrodas no sensora.
Tā kā kods tukšuma cilpā () ir ļoti garš, es ielīmēšu saiti uz dokumentu, kuram ir šis kods:
docs.google.com/document/d/1DufS0wuX0N6gpv…
Visbeidzot, mums ir jāveic faktiskie aprēķini, lai ultraskaņas attāluma sensora vērtības pārvērstu collās. Ultraskaņas attāluma sensors tieši nemēra attālumu; tas izdala skaņu un reģistrē laiku, kas nepieciešams, lai sensors atgūtu skaņu no jebkura objekta, no kura tas atlec.
garas mikrosekundesToInches (garas mikrosekundes) {
atgriešanās mikrosekundes / 74 /2;
}
Tagad mēs pievienojam vadu Arduino datoram ar kodu, iestatām portus un palaižam to! Šai spēlei ir divi režīmi. Vai nu jūs varat izmantot tikai LCD displeju, servomotoru, sensoru un RGB LED, un jūs zināt tikai attālumu, kas jums jāatrodas no sensora, kas ir grūtāks režīms. Vienkāršākais režīms ietver seriālā monitora izmantošanu izvēlnē Rīki> Sērijas monitors, kas katru sekundi informēs par to, cik tālu esat no sensora, lai jūs varētu veikt nepieciešamos pielāgojumus.
Paldies, ka izlasījāt!
Ieteicams:
Pieskarieties Tap Rainbow - divu spēlētāju ātrās reaģēšanas spēle: 4 soļi (ar attēliem)
Pieskarieties Tap Rainbow - divu spēlētāju ātrās reaģēšanas spēle: pirms 2 nedēļām manai meitai bija ģeniāla ideja izveidot ātras reakcijas spēli ar varavīksnes krāsām (viņa ir varavīksnes eksperte: D). Man uzreiz patika šī ideja, un mēs sākām domāt, kā mēs to varētu padarīt par īstu spēli. Ideja bija. Jums ir varavīksne
555 Taimera reakcijas spēle: 5 soļi
555 Taimera reakcijas spēle: Mērķauditorija Grūtības līmenis Tas būtu grūti, ja
Smieklīga Arduino reakcijas spēle: 3 soļi
Smieklīga Arduino reakcijas spēle: Smieklīga Arduino reakcijas spēle visai ģimenei;) Pamatojoties uz pārrobežu Bluetooth komunikāciju. Jums ir vajadzīgas tikai dažas Arduino lietas, Android viedtālrunis un apavu kaste. Ja jums nav neviena no šiem, ticiet tam stingri: nav nekā tāda, kas
Reakcijas spēle- Datoru inženierijas projekts: 3 soļi
Reakcijas spēle- Datoru inženierijas projekts: Reakcijas spēle ir tieši tā, kā norāda nosaukums, tā pārbauda jūsu reakcijas ātrumu. Jūs varētu jautāt, kādas priekšrocības šis serveris varētu sniegt ārpus izklaides, un jūs varat to izmantot personām, kas rehabilitējas pēc operācijas vai nelaimes gadījumiem. Viņu reakcija konkrēti
Arduino reakcijas spēle: 9 soļi
Arduino reakcijas spēle: Es izveidoju šo spēli kā skolas uzdevumu. Mums bija jāveido kaut kas interaktīvs ar arduino. Šis ir mans pirmais Arduino projekts, ko esmu izveidojis, tāpēc tas bija diezgan grūti, bet ne neiespējami