Tartalomjegyzék:
- 1. lépés: 1. lépés: Távolságérzékelő
- 2. lépés: 2. lépés: szervomotor
- 3. lépés: 3. lépés: RGB LED
- 4. lépés: 4. lépés: LCD
- 5. lépés: 5. lépés: a kód
Videó: Gyorsreagálású játék: Távoli verzió: 5 lépés (képekkel)
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
Szia. Ez egy utasítás, hogyan kell létrehozni egy játékot, amely teszteli a reakcióidőt és a távolságérzetet. Ez a projekt egy régi projekten alapul, amelyben két játékos vett részt, akik versenyeztek, hogy lássák, kinek gyorsabb a reakcióideje, ha rákattint egy gombra, amikor zöldre vált a lámpa. Ennek a célnak is hasonló a célja, kivéve, ha egyjátékos, és nem világít, hanem egy időkeretet kap a játékos, hogy távolítsa el a kezét egy bizonyos távolságtól a távolságérzékelőtől.
Mint minden Arduino projekt, ez a játék is számos elektromos alkatrészt igényel az Arduino áramkörben. A fő komponensek, a kábelezésen és az Arduino -n kívül, a kenyérlap, a szervomotor, az LCD -kijelző, az RGB LED és a távolságérzékelő.
A https://abra-electronics.com használatával az ár a vezetékek és az Arduino nélkül 32,12 USD.
1. lépés: 1. lépés: Távolságérzékelő
Az első lépés az ultrahangos távolságérzékelő beállítása a kenyértáblán, és vezetékezése az Arduino -hoz. Az érzékelő pontos elhelyezkedése valójában nem számít, de ideális esetben közel van az élhez, hogy legyen hely a többi alkatrésznek, amint az a fenti képen látható. Négy csap van az érzékelőn; GND, VCC, TRIG és ECHO. A GND -t és a VCC -t a földhöz és a tápcsatlakozásokhoz kell bekötni, a másik két érintkezőt pedig az Arduino két tűjéhez kell vezetni. Az általam használt két csap 12 volt az ECHO és 11 a TRIG esetében. Két másik vezetékkel táplálja a tápkábelt, és földelje le a földelősínt úgy, hogy a tápkábelt az 5 V -os, a földi sávot pedig egy GND -csaphoz csatlakoztatja.
2. lépés: 2. lépés: szervomotor
A következő lépés a szervomotor beállítása. Ebben a projektben a szervomotor időzítőként működik. 1 fokkal kezdődik, és azon időtartam alatt, ameddig a felhasználónak távol kell tartania a kezét, 180 fokra fog forogni. 2 másodpercet használtam, amikor a felhasználó megtudja, milyen messzire kell távolítani a kezét, így a szervó 2 másodperc alatt 179 fokot forog, rövid időközönként. A szervomotornak három vezetéke van; általában sárga, vörös és barna. A piros az 5 V -os, a barna pedig a GND -be már bekötött földi sínbe kerül. Az utolsó huzal bedugható egy Arduino csapba. Ehhez a #9 -es tűt választottam. Ezután szüksége van egy kondenzátorra, amely ugyanazt a sínet köti össze, amelyhez a szervomotor táp- és földvezetékei vannak csatlakoztatva, amint a fenti képen látható.
3. lépés: 3. lépés: RGB LED
A LED funkciója ebben az, hogy skálaként szolgál a pontszámhoz. Ha a játékos pontszáma 0 körül van, a LED fehér lesz, és pirosabbra vált, ha a játékos pontszáma csökken, és zöldre, ha a játékos pontszáma emelkedik. Ennek a LED -nek négy lába van; egy piros lámpa, egy kék lámpa, egy zöld lámpa és egy közös katód, amely a másik három láb között oszlik meg. A közös katód, a leghosszabb láb, be van kötve a hálózati sínbe, így 5 voltot kap. Csatlakoztasson 330 ohmos ellenállást a másik három színes lábhoz, és az ellenállások másik végét az Arduino PWM digitális csapjaihoz. Az általam használt digitális, 3 -as, 5 -ös és 6 -os tűket használtam a piros, a zöld és a kék lábakhoz.
4. lépés: 4. lépés: LCD
Az utolsó komponens az LCD, amely a folyadékkristályos kijelzőt jelenti. Ennek célja, hogy elmondja a játékosnak az aktuális pontszámát, valamint azt a távolságot, amelyre szüksége van, hogy eltegye a kezét az érzékelőtől. Itt négy csap található; GND, VCC, SDA és SCL. A GND és a VCC a kenyérsütő talaj és a tápcsövekhez lesz csatlakoztatva. Az SDA -tűt az A4 -es analóg érintkezőbe, az SCL -tűt pedig az A5 -ös analóg érintkezőbe kell bekötni. A többi alkatrésztől eltérően az SDA és SCL csatlakozókat A4 -re és A5 -re kell kötni.
5. lépés: 5. lépés: a kód
Most, hogy bekötöttük az összes komponenst, írhatjuk a kódot. A kód első része a szükséges könyvtárak importálása és a változóink deklarálása, valamint az összetevők bekötése. Ehhez a kódhoz importálnunk kell a Wire, a LiquidCrystal_I2C és a Servo könyvtárat.
#befoglalni
#befoglalni
#befoglalni
Szervo myServo;
int const trigPin = 11;
int const echoPin = 12;
int redPin = 3;
int greenPin = 5;
int bluePin = 6;
int pontszám = 0;
int tim = 500;
int áram = véletlenszerű (8, 16); // véletlen érték, ahol a felhasználónak el kell távolítania a kezét az érzékelőtől
LiquidCrystal_I2C LCD (0x27, 16, 2); // LCD beállítás
Most a void setup () segítségével ki kell jelentenünk a tűtípusokat, és más szükséges összetevőket kell beállítanunk.
void setup () {myServo.attach (9); Sorozat.kezdet (9600); pinMode (trigPin, OUTPUT); pinMode (echoPin, INPUT); pinMode pinMode (redPin, OUTPUT); pinMode (greenPin, OUTPUT); pinMode (bluePin, OUTPUT); lcd.init (); lcd.backlight (); lcd. kezdet (16, 2); lcd.clear (); // LCD beállítás}
Most be kell állítanunk az RGB LED kódot egy funkció és a PWM segítségével:
void setColor (int piros, int zöld, int kék) {
piros = 255 - piros;
zöld = 255 - zöld;
kék = 255 - kék;
analogWrite (redPin, piros);
analogWrite (zöldPin, zöld);
analogWrite (bluePin, kék);
}
Most hozzá kell adnunk a void ciklust (). Itt véletlenszerű egész számokat fogunk generálni, és egy sor if utasítással fogjuk irányítani a játékot a játékos számára. Az aktuális változó, a fenti beállítás, arra az aktuális távolságra vonatkozik, amelyet a játékosnak el kell távolítania az érzékelőtől.
Mivel a void loop () kódja nagyon hosszú, beillesztek egy linket egy olyan dokumentumra, amely tartalmazza ezt a kódot:
docs.google.com/document/d/1DufS0wuX0N6gpv…
Végül el kell végeznünk a tényleges számításokat, hogy az ultrahangos távolságérzékelő értékeit hüvelykre alakítsuk át. Az ultrahangos távolságérzékelő nem közvetlenül méri a távolságot; hangot bocsát ki, és rögzíti azt az időt, ameddig az érzékelő visszakapja a hangot bármilyen tárgyról, amelyről lepattan.
hosszú mikroszekundumokToInches (hosszú mikroszekundumok) {
visszatérő mikroszekundumok / 74 /2;
}
Most csatlakoztassa a vezetékes Arduino -t a számítógéphez a kóddal, állítsa be a portokat és futtassa! Ennek a játéknak két módja van. Vagy csak az LCD -kijelzőt, a szervomotort, az érzékelőt és az RGB LED -et használhatja, és csak azt a távolságot tudja, amely távolságra van az érzékelőtől, ami a nehezebb mód. A könnyebb üzemmód magában foglalja a soros monitor használatát az Eszközök> Soros monitor menüben, amely másodpercenként frissíti Önt arról, hogy milyen messze van az érzékelőtől, így elvégezheti a szükséges beállításokat.
Köszönöm, hogy elolvasta!
Ajánlott:
Tap Tap Rainbow - 2 játékos gyorsreagálású játék: 4 lépés (képekkel)
Tap Tap Rainbow - 2 játékos gyorsreagálású játék: 2 héttel ezelőtt a lányomnak zseniális ötlete támadt, hogy gyors reakciót készítsen a szivárvány színeivel (szivárvány szakértő: D). Rögtön megszerettem az ötletet, és azon kezdtünk gondolkodni, hogyan csinálhatnánk egy igazi játékot. Az ötlet az volt. Szivárvány van benned
Puha játék Bluetooth kocka és Android játék fejlesztése az MIT App Inventor segítségével: 22 lépés (képekkel)
Puha játék Bluetooth kocka és Android játék fejlesztése az MIT App Inventor segítségével: A kockajátéknak különböző módszerei vannak 1) Hagyományos játék fa vagy sárgaréz kockákkal. 2) Játssz mobilon vagy PC -n a mobil vagy a PC által véletlenszerűen létrehozott kockával. fizikailag játszani a kockával, és mozgatni az érmét a mobilon vagy a számítógépen
Simon játék - szórakoztató játék!: 5 lépés
Simon Game - Szórakoztató játék !: Referencia: IttHosszú hétvége után valóban keményen kell próbálnia elvégezni az összes feladatot és munkát, amelyekért Ön felelős. Itt az ideje, hogy edzjük az agyunkat, nem? Az unalmas és értelmetlen játékok mellett van egy Simon Game nevű játék
Űrverseny játék 2. verzió: 5 lépés
Űrverseny játék 2. verzió: Hé mindenkinek. A játék verziója előtt közzétettem a játék első verzióját. Ma ı megmutatja a Space Race Game 2. verzióját. Nézzük a lépéseket
Olympus Evolt E510 távoli kábelkioldó (2. verzió, automatikus élességállítással a távirányítón): 6 lépés (képekkel)
Olympus Evolt E510 távoli kábelkioldó (2. verzió, automatikus élességállítással a távirányítón): Tegnap építettem egy egyszerű, egygombos távirányítót az Olympus E510 készülékhez. A legtöbb fényképezőgép rendelkezik egy kioldógombbal (az egyik, amellyel lenyomja a képet), amely két üzemmóddal rendelkezik. Ha a gombot finoman lenyomja, a kamera automatikusan fókuszál és méri a fényt