Mundarija:
- 1 -qadam: 1 -qadam: masofa sensori
- 2 -qadam: 2 -qadam: Servo dvigatel
- 3 -qadam: 3 -qadam: RGB LED
- 4 -qadam: 4 -qadam: LCD
- 5 -qadam: 5 -qadam: Kod
Video: Tezkor reaktsiya o'yini: masofali versiya: 5 qadam (rasmlar bilan)
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:27
Salom. Bu sizning reaktsiya vaqtingizni ham, masofani ham sezadigan o'yinni qanday yaratish bo'yicha ko'rsatma. Bu loyiha eski loyihaga asoslangan bo'lib, men ikkita o'yinchi ishtirokida, chiroq yashil rangga aylanganda tugmani bosish orqali kim tezroq reaktsiya qilganini ko'rish uchun raqobatlashdi. Bu xuddi shunday maqsadga ega, faqat bitta o'yinchi va yorug'lik o'chmasin, o'yinchiga qo'lini masofa sensori masofasidan ma'lum masofada masofalashtirish uchun vaqt beriladi.
Barcha Arduino loyihalari singari, bu o'yin ham Arduino sxemasida ko'plab elektr komponentlarini talab qiladi. Simlar va Arduino -dan boshqa asosiy komponentlarga non paneli, servo dvigatel, LCD displey, RGB LED va masofa sensori kiradi.
Https://abra-electronics.com-dan foydalanib, simlar va Arduino-dan tashqari narx $ 32,12 SAPR.
1 -qadam: 1 -qadam: masofa sensori
Birinchi qadam - ultratovushli masofa sensorini non paneliga o'rnatish va uni Arduino -ga ulash. Sensorning aniq pozitsiyasi muhim emas, lekin u yuqoridagi rasmda ko'rsatilgandek, boshqa qismlar uchun joy bo'lishi uchun chekkaga yaqin. Sensorda to'rtta pin bor; GND, VCC, TRIG va ECHO. GND va VCC mos ravishda er va quvvat relslariga, qolgan ikkita pim esa Arduino -dagi ikkita pimga ulanadi. Men ishlatgan ikkita pin ECHO uchun 12 va TRIG uchun 11 edi. Quvvat panjarasini quvvatlantirish uchun boshqa ikkita simni ishlating va elektr tarmog'ini 5V pinli va tuproqli temir yo'lni GND piniga ulang.
2 -qadam: 2 -qadam: Servo dvigatel
Keyingi qadam - servo dvigatelni sozlash. Ushbu loyihada servo vosita taymer vazifasini bajaradi. U 1 darajadan boshlanadi va foydalanuvchi qo'llarini uzoqlashtirishi kerak bo'lgan vaqt davomida 180 gradusga buriladi. Foydalanuvchi qo'llarini qanchalik uzoqlashtirish kerakligini bilganida men 2 soniya ishlatardim, shuning uchun servo 2 soniya davomida 179 daraja burilib, qisqa vaqt oralig'ida aylanadi. Servo dvigatelda uchta sim bor; odatda sariq, qizil va jigarrang. Qizil temir yo'l 5V ga ulangan elektr tarmog'iga, jigarrang esa GND ga ulangan er osti yo'lakchasiga kiradi. Oxirgi sim Arduino piniga ulanadi. Buning uchun men 9 -pinni tanladim. Keyin, yuqoridagi rasmda ko'rinib turganidek, servo dvigatelning quvvati va topraklama simlari ulangan temir yo'lni bog'laydigan kondansatör kerak.
3 -qadam: 3 -qadam: RGB LED
Bunda LEDning vazifasi ballar shkalasi vazifasini bajaradi. O'yinchining bahosi 0 ga yaqin bo'lganida, LED oq rangda bo'ladi va agar o'yinchining hisobi pasaysa, qizil rang ko'proq yonadi va agar o'yinchi reytingi ko'tarilsa yashil bo'ladi. Bu LED to'rt oyoqli; qizil nurli oyog'i, ko'k oyog'i, yashil chirog'i va qolgan uch oyog'i o'rtasida umumiy katod. Umumiy katod, eng uzun oyoq, elektr tarmog'iga ulanadi, shuning uchun u 5 volt oladi. Qolgan 3 ta rangli oyoqqa 330 ohmli rezistorlarni ulang va rezistorlarning boshqa uchlarini Arduino -dagi PWM raqamli pinlariga ulang. Men ishlatganlar qizil, yashil va ko'k oyoqlari uchun mos ravishda 3, 5 va 6 raqamli pinlar edi.
4 -qadam: 4 -qadam: LCD
Oxirgi komponent - LCD, suyuq kristalli displey. Buning maqsadi - o'yinchiga qo'lini sensordan uzoqlashtirishi kerak bo'lgan masofani, shuningdek, hozirgi ballini aytib berish. Bu erda to'rtta pin bor; GND, VCC, SDA va SCL. GND va VCC navbati bilan taxtaning er va elektr panjaralariga ulanadi. SDA pin A4 analog piniga, SCL pin esa A5 analog piniga ulangan bo'lishi kerak. Boshqa komponentlardan farqli o'laroq, siz SDA va SCL pinlarini A4 va A5 ga ulashingiz kerak.
5 -qadam: 5 -qadam: Kod
Endi biz barcha komponentlarga ulanganmiz, kodni yozishimiz mumkin. Kodning birinchi qismi - kerakli kutubxonalarni import qilish va o'zgarmaydiganlarimizni e'lon qilish va komponentlar qaysi pimlarga ulanganligi. Biz ushbu kod uchun Wire, LiquidCrystal_I2C va Servo kutubxonalarini import qilishimiz kerak.
#qo'shing
#qo'shing
#qo'shing
MyServo xizmat ko'rsatish;
int const trigPin = 11;
int const echoPin = 12;
int redPin = 3;
int greenPin = 5;
int bluePin = 6;
int bal = 0;
int tim = 500;
int joriy = tasodifiy (8, 16); // tasodifiy qiymat, bu erda foydalanuvchi qo'lini sensordan uzoqlashtirishi kerak
LiquidCrystal_I2C lcd (0x27, 16, 2); // LCD sozlash
Endi biz pin turlarini e'lon qilish va boshqa kerakli komponentlarni o'rnatish uchun void setup () dan foydalanishimiz kerak.
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 (); // LCD sozlash}
Endi biz RGB LED kodini funksiya va PWM yordamida sozlashimiz kerak:
void setColor (ichki qizil, yashil yashil, ko'k) {
qizil = 255 - qizil;
yashil = 255 - yashil;
ko'k = 255 - ko'k;
analogWrite (redPin, qizil);
analogWrite (greenPin, yashil);
analogWrite (bluePin, ko'k);
}
Endi biz void loop () ni qo'shishimiz kerak. Bu erda biz tasodifiy tamsayılarni ishlab chiqaramiz va o'yinchi uchun o'yinni boshqarish uchun if iboralaridan foydalanamiz. Joriy o'zgaruvchi, yuqoridagi sozlash, o'yinchi sensordan uzoqlashishi kerak bo'lgan joriy masofaga to'g'ri keladi.
Void loop () kodi juda uzun bo'lgani uchun, men ushbu kodga ega bo'lgan hujjatga havola qo'yaman:
docs.google.com/document/d/1DufS0wuX0N6gpv…
Nihoyat, biz ultratovushli masofa sensori qiymatlarini dyuymga aylantirish uchun haqiqiy hisob -kitoblarni bajarishimiz kerak. Ultrasonik masofa sensori masofani to'g'ridan -to'g'ri o'lchamaydi; u tovush chiqaradi va sensordan qaysi ob'ekt chiqsa, ovozni qaytarishi uchun zarur bo'lgan vaqtni qayd qiladi.
uzun mikrosaniyalarToInches (uzun mikrosaniyalar) {
qaytish mikrosaniyalari / 74/2;
}
Endi biz simli Arduino -ni kompyuterga kod bilan ulaymiz, portlarni o'rnatamiz va ishga tushiramiz! Ushbu o'yinning ikkita rejimi mavjud. Yoki siz faqat LCD displey, servo dvigatel, sensor va RGB LED -dan foydalanishingiz mumkin va siz sensordan qanchalik masofani bilishingiz kerak, bu qiyinroq rejim. Osonroq rejim asboblar> Serial monitorda ketma -ket monitordan foydalanishni o'z ichiga oladi, bu sensordan qanchalik uzoq bo'lganingizni har soniyada yangilab turadi, shuning uchun kerakli sozlashlarni amalga oshirishingiz mumkin.
O'qiganingiz uchun tashakkur!
Tavsiya:
ThreadBoard (3D-bosma bo'lmagan versiya): Elektron to'qimachilik prototipini tezkor taxtasi: 4 qadam (rasmlar bilan)
ThreadBoard (3D-bosma bo'lmagan versiya): E-To'qimachilik tezkor prototiplash taxtasi: ThreadBoard V2 ning 3D bosma versiyasi uchun ko'rsatma bu erda. ThreadBoard-ning 1-versiyasini bu erda topish mumkin. sayohat, pandemiya va boshqa to'siqlar, sizda 3D printerdan foydalanish imkoni bo'lmasligi mumkin, lekin siz
Tap Rainbow -ga teging - 2 kishilik tezkor reaktsiya o'yini: 4 qadam (rasmlar bilan)
Tap Tap Rainbow - 2 o'yinchining tezkor reaktsiyasi o'yini: 2 hafta oldin qizim kamalak ranglari bilan tezkor reaktsiya o'yinini o'tkazish uchun daho fikrga ega edi (u kamalak bo'yicha mutaxassis: D). Menga bu g'oya yoqdi va biz uni qanday qilib haqiqiy o'yinga aylantirishni o'ylay boshladik. Sizda kamalak bor
Reaktsiya o'yini- kompyuter texnikasi loyihasi: 3 qadam
Reaktsiya o'yini- Kompyuter injeneriyasi loyihasi: Reaktsiya o'yini aynan shu nomda aytilgan, u sizning reaktsiya tezligingizni tekshiradi. Siz bu server o'yin -kulgidan tashqari qanday foyda keltirishi mumkinligi haqida so'rashingiz mumkin, bundan siz jarrohlik yoki baxtsiz hodisalardan reabilitatsiya qilinayotgan shaxslar uchun foydalanishingiz mumkin. Ularning reaktsiyasi
Olympus Evolt E510 masofali kabelni chiqarish (2 -versiya avtomatik masofadan boshqarishda): 6 qadam (rasmlar bilan)
Olympus Evolt E510 masofali kabelni chiqarish (2 -versiya avtomatik masofadan boshqarishda): Kecha men Olympus E510 uchun oddiy bitta tugma bilan masofadan boshqarish pultini qurdim. Ko'pgina kameralarda deklanşör tugmasi (siz suratga olish uchun bosilgan) ikkita rejimga ega. Agar tugma sekin bosilsa, kamera avtomatik fokuslanadi va yorug'likni o'lchaydi
Fischertechnik LED reaktsiya vaqti o'yini: 7 qadam
Fischertechnik LED reaktsiya vaqti o'yini: fischertechnik LEDni qanday yaratish kerak REAKSIYA O'YINI Men yashash uchun turli xil ta'lim manipulyativlari bilan o'ynayman. (Www.weirdrichard.com saytiga tashrif buyuring). Qurilishi oson bo'lgan dastur bu LED REAKSIYA O'YINI. Robot boshqaruvchisi (bu holda