Mundarija:

Uy qurilishi o'yin konsoli- "NinTIMdo RP": 7 qadam (rasmlar bilan)
Uy qurilishi o'yin konsoli- "NinTIMdo RP": 7 qadam (rasmlar bilan)

Video: Uy qurilishi o'yin konsoli- "NinTIMdo RP": 7 qadam (rasmlar bilan)

Video: Uy qurilishi o'yin konsoli-
Video: Летний Ламповый стрим. Отвечаем на вопросы. 2024, Noyabr
Anonim
Image
Image
Uy qurilishi o'yin konsoli
Uy qurilishi o'yin konsoli

Ko'proq tushuntirishlar, qismlar ro'yxati va fayllar bilan veb-sahifaga havola

timlindquist.me

Ushbu loyiha portativ o'yin tizimini yaratish edi, u ham ko'chma kompyuter sifatida ikki baravar ko'p bo'lishi mumkin edi. Maqsad, funktsional va estetik jihatdan yoqimli konsol yaratish edi.

Qismlar ro'yxati:

docs.google.com/spreadsheets/d/1Ay6-aW4nAt…

1 -qadam: Kosonni chop etish

Kosonni chop etish
Kosonni chop etish
Kosonni chop etish
Kosonni chop etish

Qurilmani chop etish uchun 3D modelli fayllarni yuklab oling va ularni 3D printeringizga yuboring. Men ishlatgan printer qora plastmassa filament bilan birga Prusa i3 Mk2 edi. Chop etish sifati o'rtacha aniqlikda eng yaxshi deb topildi. Qurilmaning ostiga konstruktiv material qo'shganingizga ishonch hosil qiling (Qo'l ushlagichlari ularsiz yomon ko'rinadi). Orqa qismlar orqa plastinka bilan bir xilda bosilgan. Old qismlar plastinka bilan yuzi bir xil bo'lgan holda bosilgan. Agar men boshqa ishni chop qilmoqchi bo'lsam, ichki binoni ko'rsatish uchun atomik binafsha rang kabi yangi rangdan foydalanmoqchiman. Agar siz menga o'xshasangiz va siz bilan ishlash uchun 8 dyuymli bosma to'shak bo'lsa, siz 4 qismli versiyani chop etishingiz kerak bo'ladi. chop etilgandan keyin yig'iladi. Ammo, agar sizning to'shagingiz bitta bo'lak bo'ladigan darajada katta bo'lsa, old va orqa plastinani bitta birlik qilib chop eting va ularni bir -biriga bog'lab qo'yishdan saqlaning.

Model fayllari:

github.com/timlindquist/Nintimdo-RP_3D_mod…

2 -qadam: Kosonni yig'ish

Koson yig'ilishi
Koson yig'ilishi
Koson yig'ilishi
Koson yig'ilishi

Oldin yig'ish uchun old va o'ng bo'laklarni birlashtirish uchun teshiklarga metall dübel soling. Keyingi bo'g'inlarga super elim qo'ying va yarmini mahkamlang. Jarayonni o'ng va chap pastki qismlar uchun takrorlang. Shundan so'ng siz old va orqa yarmini yig'ilgan holda qoldirishingiz kerak. Endi old va orqa plitalarni birlashtirish uchun 5 ta metall tokchalarni biriktirish vaqti keldi. Buni amalga oshirishning eng oson yo'li - dastani to'g'ri uzunlikka olib chiqish. Orqa tarafdagi 13 mm chuqurlik, old tomondan 5 mm. Shunday qilib, qarshiliklarni 18 mm yoki biroz kamroq qilib qo'ying. Men buni vitse ushlagichida uzoqroq turish va o'lchamini qirqish uchun maydalagich yordamida qildim. Faqat bir tomondan maydalashga ishonch hosil qiling, chunki sizga boshqa tomondan iplar kerak bo'ladi. To'g'ri uzunlikdagi elim olgandan so'ng, silliqlash mashinasining old tomoniga oddiy gorilla elimidan foydalanib, quriting. Bu jarayonda ularning hammasi tik turganiga ishonch hosil qiling. Bir marta quritib, ko'piklangan ajoyib elimni tozalang, shunda yuzlar bir -biriga yopishib ketishi mumkin. Endi qarangki, siz orqa plastinkani old tomonga ulash uchun tirgaklarga joylashtirasizmi? O'rnatish uchun orqa plastinka orqali vidalang. Gorilla epoksi duel trubkasi bilan ramkani yopish orqali ekranni yopishtiring. Men buni qilganimda juda ko'p yukladim va u ekranga to'lib ketdi. Yaxshiyamki, u ishdan chiqadi! Qisqating va bir muddat quriting, so'ngra orqa tomonini oddiy Gorilla elim bilan surting.

** Eslatma: tashqi tomondan ingichka CA elimini olmaslikka harakat qiling, chunki u PLAni "yoqib yuboradi" va oq rangga bo'yaladi.

3 -qadam: O'chirish

O'chirish
O'chirish
O'chirish
O'chirish
O'chirish
O'chirish

Tugma davri:

Barcha tugmachalarni bosib olish Teensy ++ 2.0 yordamida amalga oshiriladi. Mikrokontrollerdagi raqamli pinlar har qanday ikkilik bosish tugmalari uchun ishlatiladi. Analog pinlar joystiklar kabi bir nechta holatga ega tugmalar uchun ishlatiladi. Raqamli pinlarni oddiy sim bilan ulash uchun raqamli pinni kalitga ulang, kalitning boshqa uchini erga ulang. Tugma bosilganda nazoratchi sezishi uchun yuqori kuchlanishli pinni pastga tushiradi. Rezistorlar haqida o'ylashning hojati yo'q, chunki ular o'smirlar taxtasida. Analog pinlarni ulash uchun siz analog qurilmangizni yuqori va past kuchlanishli burishingiz va analog pimdagi shu darajadagi kuchlanish darajasini o'qishingiz kerak bo'ladi. Joystiklar uchun har bir o'q uchun 3 ta kirish mavjud. Pimlardan biriga 5V, ikkinchisiga GND va oxirgi kuchlanish chizig'ini bering. Buni to'g'ri ulashga ishonch hosil qiling, aks holda u ishlamaydi (chiqish voltajining to'g'ri pimdagi o'zgarishini tekshirish uchun multimetrdan foydalaning.) Aslida joystik - kuchlanish bo'luvchi kabi ishlaydigan o'zgaruvchan qarshilik. O'qish pinidagi chiqish voltaji joystiklarning joylashishiga qarab 0 dan 5V gacha o'zgarib turadi. (Odatda 5V va GND tarafkashlik joystikning tashqi kirish pimlarida, o'rtada esa o'zgaruvchan kuchlanish o'qi bo'ladi. Agar 5V va GND menikidan farq qilsa, boshqaruv elementlari teskari bo'ladi, bu dasturiy ta'minot yoki qayta ulanishda o'rnatilishi mumkin.).

Quvvat davri:

Uch hujayrali Anker batareyasi butun qurilmani quvvat bilan ta'minlaydi. Qurilmani yoqish/o'chirish uchun batareya regulyatorining chiqishi kalitga, so'ngra Raspberry Pi ga ulanadi. Qurilma 2A gacha chizishga qodir bo'lgani uchun 250mA oddiy o'tish tugmasi hozirgi talabni bajara olmaydi. Buning o'rniga siz kalitni PMOS tranzistoridagi kalit kuchlanishini boshqarish uchun ishlatishingiz mumkin. 5V batareyani PMOS tranzistorining manbaiga va kalitga ulang. Kommutatorning boshqa uchi PMOS tranzistorining eshigiga va GND ga ulangan 10K rezistorga ulanadi (eshik suzmasining oldini olish uchun kalit ochiq bo'lsa, uni rezistor orqali GND bilan bog'laydi). Drenaj er bilan birga Raspberry Pi -dagi 5V -ga ulanadi. Batareyani zaryad qilish uchun micro USB -dagi ulagichni to'g'ri zaryad pimlariga ulang (kirish holatini kengaytiradi). Men bu kalitni qurilmaning orqa qismidagi havo kirishiga yashirdim. Avvaliga men batareyaning tugmachasini ma'lum vaqt ushlab turish orqali qurilmani yoqishni va o'chirishni rejalashtirgandim, afsuski, men xonadan chiqib ketdim va oddiy dasturni bajarishga majbur bo'ldim. Ushbu alternativ dizayn quyidagi sxemada ko'rsatilgan.

Ovoz davri:

Ovoz uchun men ovozni tabiiy ravishda karnaylardan chiqarishni xohlardim (agar u o'chirilmasa) va agar ular rozetkaga ulangan bo'lsa minigarnituraga yo'naltirilsin. Yaxshiyamki, 3,5 mm boshli ayol telefon raz'emlarining ko'pchiligi mexanik ravishda bunga qodir. Erkak vilkasi o'rnatilganida, karnay simlari egilib, ochiq kontaktlarning zanglashiga olib keladi va shu bilan signalning karnaylarga etib borishiga to'sqinlik qiladi. Karnay kattaroq yuk bo'lgani uchun uni eshitish uchun ovozli signal kuchaytirilishi kerak. Bu adafruitda topilgan D stereo sinfli kuchaytirgich yordamida amalga oshiriladi. Kuchaytirgichni 5V va GND bilan yonma -yon qo'ying. Bizda differentsial audio kirish yo'q, shuning uchun chap va o'ng karnaylarni musbat terminallarga ulang va salbiy terminallarni GND bilan bog'lang. Daromad jumper yordamida o'rnatiladi. Men daromadni maksimal darajaga qo'ydim va ovoz balandligini sozlash uchun dasturiy ta'minot orqali chiqish signallarining amplitudasini o'zgartiraman. Qurilmaning ovozini o'chirish uchun menda 5V kuchlanishni boshqaruvchi NMOS tranzistor bor. Bu NMOS tranzistorlar eshigi Teensy tomonidan boshqariladi. Menda muammo - tashqi dinamiklarda doimiy yuqori chastotali shovqin. Men buni osiloskopda tahlil qilaman, chunki 5V kuchlanishidan kelib chiqqan bo'lishi mumkin, chunki ba'zi regulyator batareyani o'zgartiradi yoki chiziqlar biron bir joyda chastotani oladi. Bundan tashqari, elektromagnit shovqinni (EMI) kamaytirish uchun o'ng va chap chiziqlarni burishingizga ishonch hosil qiling.

4 -qadam: Periferik davrlar

Periferik davrlar
Periferik davrlar
Periferik davrlar
Periferik davrlar

Ushbu sxema USB ulagichlari va LED indikatorini o'z ichiga oladi. Mening havolamda tenglikni buyurtma qiling va chiziqli arra yordamida nuqta chiziq bo'ylab yarmiga bo'ling. USB tomonida ikkita ayol USB portini taxtaga lehimlang. LED tomonida 5 LED va 5 rezistor ketma -ket lehimlanadi. 5V, GND, D+, D-ni Raspberry PI-ning simsiz USB-dan PCBga uzatilgan simlar yordamida uzaytirish mumkin. LED tenglikni shunday joylashtirilishi mumkinki, korpus ustidagi teshiklardan yorug'lik tushadi. Teensy -ning 5 ta PWM chiqishlarini GND bilan birga LED -larga o'tkazing. Ish vaqtini o'zgartirish orqali siz LEDlarning yorqinligini o'zgartirishingiz mumkin.

PCB sotib oling:

5 -qadam: Dasturlash

Dasturlash
Dasturlash
Dasturlash
Dasturlash
Dasturlash
Dasturlash

Yoshlik:

Agar siz uni xuddi mennikiga o'xshatgan bo'lsangiz, men Github -da taqdim etgan kodni ishlatishingiz mumkin. Ammo, men buni o'zingiz yozishni maslahat berardim, chunki siz tizimni yaxshiroq tushunasiz va uni o'zingiz xohlaganingizcha osonlikcha boshqarishingiz va sozlashingiz mumkin bo'ladi. Dasturlash juda oddiy, bu sizning tugmalaringiz bosilganligini tekshirish uchun "if" iboralarini yozishga to'g'ri keladi. PJRC -dan foydali ko'rsatmalar to'plami. Siz kodingizni yozish va Teensy -ga yuklash uchun Arduino IDE -dan foydalanishingiz mumkin.

KOD:

github.com/timlindquist/Nintimdo-RP

Raqamli tugmalar: Bu misolda men raqamli pin 20 bosilganligini tekshirib ko'rdim va keyin ketma -ket joystik buyrug'ini chiqardim. Siz tugma uchun 1 dan 32 gacha tanlashingiz mumkin, chunki Retropie baribir boshida nazoratchi xaritalashini o'rnatadi. Joystick tugmasi (tugmalar: 1-32, bosilgan = 1 ta chiqarilgan = 0)

Analog tugmalar:

Masalan, o'ng joystik vertikal analog pin 41 ga ulangan. AnalogRead (pin) funktsiyasi 0 dan 5V gacha kuchlanish darajasini oladi va 0 dan 1023 gacha qiymatni qaytaradi. Ideal markaz pozitsiyasi 2,5 V yoki 512 ga to'g'ri keladi ammo bu mening analog tayog'im uchun bunday emas edi, shuning uchun sozlash kerak edi. Bu quyida ko'rsatilgan qayta tuzish orqali amalga oshirildi. Shundan so'ng men chegaralar 0 dan 1023 gacha oshmaganligini tekshirishim kerak edi. Oxir -oqibat analog joystik buyrug'i ketma -ket Joystick. Z (analog qiymati 0 dan 1023 gacha) yordamida Z analog tugmasi sifatida yuborildi.

6 -qadam: ixtiyoriy dok

Ixtiyoriy dok
Ixtiyoriy dok
Ixtiyoriy dok
Ixtiyoriy dok
Ixtiyoriy dok
Ixtiyoriy dok

Dock:

Zaryadlash uchun dock va televizorni ulash oson bo'lmaganda, bu qurilish to'liq bo'lmaydi, shuning uchun men quyidagi rasmlardan birini yaratdim. 3D modellar boshqalar bilan Github paketimda mavjud.

Modellar:

github.com/timlindquist/Nintimdo-RP_3D_mod…

7 -qadam: Natijalar

Natijalar
Natijalar
Natijalar
Natijalar
Natijalar
Natijalar
Natijalar
Natijalar

Ochig'ini aytganda, men ilgari sotib olingan ayol devorga o'rnatish o'rniga, PCB bilan HDMI chiqish portini qilgan bo'lardim. Bu juda ko'p joyni tejashga olib kelardi, chunki men kabelni kesib olmaslik va 19 simni qayta lehimlamaslik uchun spiral bilan bog'lab qo'yishim kerak edi. Men kichikroq batareya bilan ishlashdan juda xafa bo'ldim, chunki hujayraning balandligi butun qurilmaning qalinligida cheklovchi omil edi. Biroq, buni kamaytirish batareyaning ishlash muddatiga salbiy ta'sir qiladi.

Umuman olganda, bu menga taxminan 350 dollar sarfladi. Bu men qirqib tashlamoqchi bo'lgan malina pi ni o'z ichiga olmaydi … Men buni sinab ko'rganimdan xursandman. Bu yozgi loyiha bo'lib, men uni iloji boricha ixcham qila olamanmi, shu bilan birga ichkariga juda ko'p ajoyib xususiyatlar mos keladi.

Tavsiya: