Mundarija:

Simsiz 4 o'yinchi oilaviy o'yin boshqaruvchisi: 3 qadam
Simsiz 4 o'yinchi oilaviy o'yin boshqaruvchisi: 3 qadam

Video: Simsiz 4 o'yinchi oilaviy o'yin boshqaruvchisi: 3 qadam

Video: Simsiz 4 o'yinchi oilaviy o'yin boshqaruvchisi: 3 qadam
Video: Pubgchila bormi? #appleuzb #pubg #shorts 2024, Iyul
Anonim
Simsiz 4 o'yinchi oilaviy o'yin boshqaruvchisi
Simsiz 4 o'yinchi oilaviy o'yin boshqaruvchisi
Simsiz 4 o'yinchi oilaviy o'yin boshqaruvchisi
Simsiz 4 o'yinchi oilaviy o'yin boshqaruvchisi
Simsiz 4 o'yinchi oilaviy o'yin boshqaruvchisi
Simsiz 4 o'yinchi oilaviy o'yin boshqaruvchisi

Bu bir vaqtning o'zida 4 kishi o'ynashi mumkin bo'lgan simsiz arja uslubi boshqaruvchisi. Kompyuteringizni 5 yoshli bolalar boshqaradigan qurilmaga ulash shart emasligi uchun simsiz. Ular har doim yiqilib tushishadi va men ularning o'yinchoqlarimni sim bilan uchib ketishlarini xohlamayman. Yaqinda biz yangi kompyuter monitorini sotib oldik va uning ichida juda mustahkam strafor o'rnatilgan. Sitcom -dagi kabi, men rafiqam bilan qutini saqlash haqida doimo tortishib turardim. Menga bu narsaga aylanishni iltimos qilayotgandek tuyuldi, unga esa bu yomon axlat edi. Keyin, Instructables kartonga asoslangan tezlik tanlovini o'tkazib yubordi. Shunday qilib, tushdan keyin tortishuv hal qilindi va bu loyiha tug'ildi.

Loyihani hayotga tatbiq etish uchun biz uy atrofida bo'lgan har xil imkoniyatlardan foydalandik. G'oya shunchaki o'tirgan narsamizdan foydalanib, salqin ish qilishdan iborat edi - xayriyatki, bizda arja shkafi qilish uchun qadimdan sotib olingan arja tugmachalari va malina pi bor edi. Kesish uchun biz arra va eski eski cho'ntak pichog'idan foydalanardik.

Ta'minotlar

1. Karton quti2. Strafor yoki boshqa zich to'ldiruvchi 3. Ali Express yoki Amazon -dan arja tugmalari 4. Raspberry Pi 3B + 5. Boshqa kompyuter + ekrani. 6. Kartonda teshiklarni kesish uchun pichoq yoki biror narsa 7. Maskalash tasmasi8. Bo'yoq spreyi

1 -qadam: qurilish

Qurilish
Qurilish
Qurilish
Qurilish
Qurilish
Qurilish

Biz tezda kerakli narsaning eskizini tayyorladik, keyin karton va straforni kerakli o'lchamdagi pichoq va yog'och arra yordamida kesib oldik. Biz kartonni tugma/joystikning yaxshi joylashuvi bilan belgilab qo'ydik va teshiklarni pichoq bilan ehtiyotkorlik bilan kesib tashladik. Bu bolalar uchun asosiy matematikadan ajoyib mashq edi. Kartonni kesib bo'lgach, biz uni bo'yab, keyin barcha tugmalarni joyiga qo'ydik. Biz qilgan asosiy qiziq narsa - bu qattiqroq bo'lish uchun, tekshirgichning yuqori qismiga kartonning uch qatlamini yopishtirish edi. Bu kesishni biroz qiyinlashtirdi, lekin yuqori qismini deyarli yog'och kabi mustahkam qilish uchun juda yaxshi ishladi.

Raspberry Pi 3B+ to'rt usb portiga ega. Bizda to'rt va to'rtta arja tugmachalari oilasi bor! Bu oldindan belgilash edi.

2 -qadam: Dasturlash

Dasturlash
Dasturlash
Dasturlash
Dasturlash
Dasturlash
Dasturlash
Dasturlash
Dasturlash

Ushbu loyihaning kodi oddiy va xato. Hammasini bu erda topish mumkin:

github.com/melvyniandrag/SuperTuxJunkKart 4 ta nazoratchi usb orqali malina pi ga ulangan. Raspberry pi -da kichik python skriptlari ishlaydi. Men tugmalar va joystiklardan signallarni olish uchun Python kirish kutubxonasidan foydalandim. Keyin dastur signalni qisqa ASCII kodiga o'zgartiradi va uni Wi -Fi orqali TCP uyasi orqali o'yin o'ynaydigan kompyuterga yuboradi (men buni o'yin serveri deb atayman). Masalan, 0 -o'yinchi joystikni chapga siljitganda, "0XL" belgisi o'yin serveriga TCP soketi orqali yuboriladi. Sinov uchun men SuperTuxKart -ni fikr panelida ishga tushirdim. Kichkina server ilovasi Thinkpad -da ishlaydi va TCP soketida tinglaydi. Wi -Fi orqali malina pi dan kelgan kodlar pyautogui kutubxonasi orqali klaviaturadagi tugmachalarga bosiladi. Shunday qilib, karton tekshirgichidagi 0 -o'yinchi joystikni chapga siljitganda va nazoratchi "OXL" ni chiqarganda, o'yinni boshqaruvchi server o'yinchi klaviaturadagi "1" tugmasini bosgan deb o'ylaydi. O'yin bu klaviatura bosilishini taniy oladigan tarzda sozlanishi kerak, bu erda variantlar ekranida ko'rsatilgandek, bu o'yin bir yoki ikkita o'yinchi bilan yaxshi ishlaydi, lekin 4 kishi SuperTuxKartni agressiv tarzda o'ynasa, server nazoratchi ma'lumotlarini yo'qotadi. Bu xato yoki yo'qligini bilmayman: 1. Mijoz (nazoratchi) tomonida2. Serverda (fikr paneli) 3. Linuxda o'rnatilgan funksionallik. Ehtimol, mening Ubuntu noutbukim bir vaqtning o'zida ko'p sonli tugmachalarni taniy olmaydi. Agar 0, 1 va 2 -o'yinchi rulda va chapda bo'lsa, demak, bir vaqtning o'zida 2 * 3 = 6 tugmachalari bosiladi. Ishonchim komilki, mening kompyuterim (yoki biron bir kompyuter) bu vazifani bajarish uchun mo'ljallangan. Odatda tezkor tugmalar 3 yoki undan kam tugmalardan iborat. CTRL + ALT + DEL. Kelgusida men har bir kontroller uchun bittadan 4 ta protsessor rozetkasini ishga tushirishga harakat qilaman, keyin esa server tomonida virtual o'yin maydonchasini yarataman. Buni qanday qilish kerakligini ko'rish uchun vaqt yo'q edi, lekin bolalarni tarbiyalash, ishlash va karton qutilarni kesish o'rtasida.

3 -qadam: kelajak

Bu kontseptsiyaning oddiy isboti edi. Kelgusida kod yaxshiroq bo'lishi kerak. Men ulanishni bluetooth HID qurilmasi sifatida kodlashni xohlayman, lekin Linuxda bluez5 - bu ishlash uchun biroz vaqt, shuning uchun men TCP + Python rozetkasi bilan bordim. go'yo. Vaqt o'tishi bilan men ehtiyotkorlik bilan kesishga biroz ko'proq kuch sarflayman. Keyin men ko'proq tayanchlar qo'yardim -qutining yon tomonlari biroz burishib ketayapti. Bu nima va uning narxi qancha bo'lsa ham, bu narsa etarlicha yaxshi ko'rinadi. Men kechqurun film tomosha qilayotganimizda, o'ylashni davom ettiraman.

Tavsiya: