Mündəricat:
- Addım 1: Kassanı çap edin
- Addım 2: Kassa Montajı
- Addım 3: Dövrə
- Addım 4: Periferik dövrə
- Addım 5: Proqramlaşdırma
- Addım 6: İsteğe bağlı Dock
- Addım 7: Nəticələr
Video: Ev Oyun Konsolu- "NinTIMdo RP": 7 Addım (Şəkillərlə birlikdə)
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Daha ətraflı izahlar, hissələr siyahısı və faylları olan veb səhifəsinə keçid
timlindquist.me
Bu layihə, portativ bir kompüter olaraq ikiqat artan bir portativ oyun sistemi yaratmaq idi. Məqsəd həm funksional, həm də estetik baxımdan xoş bir konsol yaratmaq idi.
Parça siyahısı:
docs.google.com/spreadsheets/d/1Ay6-aW4nAt…
Addım 1: Kassanı çap edin
Cihazı çap etmək üçün 3D model sənədlərimi yükləyin və 3D printerinizə göndərin. İstifadə etdiyim printer qara plastik filamentlə birlikdə Prusa i3 Mk2 idi. Çap keyfiyyətinin orta qətnamə şəraitində ən yaxşı olduğu təsbit edildi. Cihazın altına struktur material əlavə etdiyinizə əmin olun (Əl tutacaqları onsuz da pis görünəcək). Arxa hissələr boşqabla üst -üstə qoyularaq çap edilmişdir. Ön hissələr, ön üzü lövhə ilə bərabər şəkildə yazılmışdır. Başqa bir iş yazsaydım, daxili əşyaları göstərmək üçün atomik bənövşəyi kimi yeni bir rəng istifadə etmək istərdim. Əgər mənim kimiyəmsə və sizinlə işləmək üçün 8 düymlük çap yatağınız varsa, 4 parça versiyasını çap etməlisiniz. çapdan sonra yığılacaq. Bununla birlikdə, yatağınız tək bir parça etmək üçün kifayət qədər böyükdürsə, ön və arxa plakanı tək bir vahid olaraq çap edin və onları bir -birinə yapışdırmaqdan çəkinin.
Model faylları:
github.com/timlindquist/Nintimdo-RP_3D_mod…
Addım 2: Kassa Montajı
Əvvəlcə hizalama deliklərinə metal bir dübel qoyaraq ön sağ və sol hissələri birləşdirin. Sonrakı oynaqlara super yapışqan qoyun və yarısını birlikdə bağlayın. Sağ alt və sol hissələr üçün proseduru təkrarlayın. Bundan sonra yığılmış bir ön və arxa yarısı qalmalıdır. İndi ön və arxa plitələri birləşdirmək üçün 5 metal dayağı bağlamağın vaxtı gəldi. Bunun ən asan yolu, əvvəlcə dayaqları düzgün uzunluğa çatdırmaqdır. Arxada 13 mm dərinlikdə 5 mm dərinlikdə. Buna görə dayanıqlıqları 18 mm və ya bir qədər az edin. Bunu köməkçi tutacaqlarına daha uzun bir dayaq qoyaraq və ölçüsünü qırxmaq üçün bir öğütücü istifadə edərək etdim. Yalnız bir tərəfi kəsdiyinizə əmin olun, çünki digər tərəfdən iplərə ehtiyacınız olacaq. Düzgün uzunluqlu yapışqan əldə etdikdən sonra, bütün dəyirmanı hər tərəfdən ön gorilla yapışqanından istifadə edərək ön tərəfə yapışdırın və qurudun. Bu müddət ərzində hamısının ayağa qalxdığından əmin olun. Quruduqdan sonra köpüklənmiş əla yapışqanı qırışdırın ki, üzlər bir -birinə yapışdırılsın. Ön tərəfə qoşulmaq üçün arxa plakanı dayaqlara yerləşdirə biləcəyinizə baxın. Bərkitmək üçün arxa plakanın içindən vidalayın. Çərçivəni Gorilla Epoxy duel borusu ilə astarlayaraq ekranı yapışdırın. Bunu edərkən çox yüklədim və ekrana axdı. Xoşbəxtlikdən silinir! Qısaldın və bir müddət qurudun, sonra arxa tərəfini adi Gorilla yapışqanı ilə örtün.
** Qeyd: PLA -nı "yandıracaq" və ağ rəngə boyayacağı üçün xaricdən nazik CA yapışqan (super yapışqan) almamağa çalışın.
Addım 3: Dövrə
Düymə dövrəsi:
Bütün düymələrə basmaq Teensy ++ 2.0 istifadə edərək aparılır. Mikro nəzarətçidəki rəqəmsal sancaqlar hər hansı ikili düymələr üçün istifadə olunur. Analoq sancaqlar, joysticklər kimi bir çox vəziyyəti olan düymələr üçün istifadə olunur. Rəqəmsal pinləri sadə bir şəkildə bağlamaq üçün rəqəmsal pimi açara bağlayın, açarın digər ucunu yerə bağlayın. Düymə basıldığında, nəzarətçinin hiss etməsi üçün yüksək gərginlikli pimi aşağı çəkəcək. Rezistorlar Teensy lövhəsinə daxil olduğu üçün narahat olmağınıza ehtiyac yoxdur. Analoq pinləri bağlamaq üçün analoq cihazınızı yüksək və aşağı gərginliyə yönəltməlisiniz və analoq pində bu aralığındakı bir gərginlik səviyyəsini oxumalısınız. Joysticklər üçün hər ox üçün 3 giriş var. Sancaqlardan birinə 5V, digərinə GND və sona qədər gərginlik oxu xətti verin. Bunu düzgün bağladığınızdan əmin olun, əks halda işləməyəcək (çıxış voltajının düzgün pin üzərində dəyişdiyini görmək üçün multimetrdən istifadə edin.) Əslində joystick bir gərginlik bölücü kimi işləyən dəyişkən bir rezistordur. Oxunan pindəki çıxış gərginliyi joysticklərin mövqeyindən asılı olaraq 0 ilə 5V arasında dəyişəcək. (Adətən 5V və GND önyargıları joystickin xarici giriş pinlərindədir, ortada isə dəyişən gərginlikli oxlama pininiz olacaq. 5V və GND mənimkindən fərqli olarsa, idarəetmələriniz ters çevriləcək, bu proqram və ya yenidən qurulmada düzəldilə bilər.).
Güc Dövriyyəsi:
Üç hüceyrəli Anker batareyası bütün cihazı enerji ilə təmin edir. Cihazı açmaq/söndürmək üçün batareya tənzimləyicisinin çıxışı bir açara, sonra da Raspberry Pi -yə bağlanır. Cihaz 2A -a qədər çəkə bildiyi üçün sadə 250mA keçid açarı cari tələbi idarə edə bilməz. Bunun əvəzinə bir keçid məqsədinə xidmət etmək üçün bir PMOS tranzistorundakı qapı gərginliyini idarə etmək üçün keçiddən istifadə edə bilərsiniz. Batareyanın 5V -ni bir PMOS tranzistorunun mənbəyinə və açara bağlayın. Açarın digər ucu PMOS tranzistorunun qapısına və GND -yə qoşulan 10K rezistora bağlanır (qapının üzməsinin qarşısını almaq üçün açar açıq olduqda onu rezistor vasitəsilə GND -yə bağlayır). Drenaj, Raspberry Pi -də yerlə birlikdə 5V girişə bağlanır. Batareyanı doldurmaq üçün mikro USB dişi qırma lövhəsini düzgün şarj pinlərinə bağlayın (girişi qutuya uzadır). Bu açarı cihazın arxasındakı hava girişində gizlətdim. Əvvəlcə batareya düyməsini müəyyən bir müddət saxlayaraq cihazı açıb söndürməyi planlaşdırırdım, təəssüf ki, yerim tükəndi və sadə tətbiq etməli oldum. Bu alternativ dizayn aşağıdakı sxematik şəkildə göstərilmişdir.
Səs dövrəsi:
Səs üçün səsin təbii olaraq dinamiklərdən (səssiz deyilsə) çalınmasını və qoşulduqda qulaqcıqlara yönləndirilməsini istədim. Xoşbəxtlikdən qadın 3.5mm başlıqlı telefon prizlərinin çoxu bunu mexaniki olaraq bacarır. Kişi fişi taxıldıqda, dinamiklərin ucları əyilərək açıq bir dövrə yaradar, beləliklə siqnalın dinamiklərə çatmasını maneə törədir. Dinamiklər daha böyük bir yük olduğundan, eşitmək üçün səs siqnalı gücləndirilməlidir. Bu, adafruitdə tapdığım bir stereo sinif D gücləndiricisini istifadə etməklə edilir. Sadəcə 5V və GND ilə gücləndiriciyə qərəz verin. Diferensial səs girişlərimiz yoxdur, buna görə sol və sağ dinamikləri müsbət terminallara bağlayın və mənfi terminalları GND ilə bağlayın. Qazanc tullanan köməyi ilə tənzimlənir. Mən qazancı maksimuma təyin etdim və səs səviyyəsini tənzimləmək üçün proqram vasitəsi ilə çıxış səs siqnallarının amplitüdünü dəyişirəm. Cihazı səssiz etmək üçün 5V əyilməsini idarə edən bir NMOS transistoru var. Bu NMOS tranzistorlar qapısı Teensy tərəfindən idarə olunur. Məndə bir problem xarici dinamiklərdə daimi yüksək tezlikli səs -küyün olmasıdır. Bunu bir osiloskopda təhlil edəcəyəm, bəzi tənzimləyicilərin batareyanı dəyişdirməsi səbəbindən 5V -dən qaynaqlanmış ola bilər və ya xətlər bir yerdə RF alır. Ayrıca, elektromaqnit müdaxiləsini (EMI) minimuma endirmək üçün sağ və sol xətləri bükdüyünüzdən əmin olun.
Addım 4: Periferik dövrə
Bu sxemə USB bağlayıcıları və LED göstəricisi daxildir. Bağlantıdakı PCB -ni sifariş edin və bant mişarından istifadə edərək nöqtəli xətt boyunca yarıya bölün. USB tərəfində hamısı iki qadın USB portunu lövhəyə lehimləyir. LED tərəfində 5 LED və 5 müqavimət seriyası. 5V, GND, D+, D-Raspberry PI-nin sökülmüş USB-lərindən PCB-ə qədər olan tellər vasitəsilə uzadıla bilər. LED PCB, işığın üstündəki deliklərdən işıq saçması üçün yerləşdirilə bilər. Teensy -nin 5 PWM çıxışını GND ilə birlikdə LED -lərə bağlayın. İşləmə müddətini dəyişdirərək LED -lərin parlaqlığını dəyişə bilərsiniz.
PCB satın alın:
Addım 5: Proqramlaşdırma
Yeniyetmə:
Əgər onu mənimlə eynidirsə, Github -da verdiyim kodu istifadə edə bilərsiniz. Bununla birlikdə, sistemi özünüz daha yaxşı başa düşəcəyiniz və asanlıqla zövqünüzə uyğun olaraq manipulyasiya və fərdiləşdirə biləcəyiniz üçün özünüz yazmağı məsləhət görürəm. Proqramlaşdırma çox sadədir, həqiqətən düymələrinizin basıldığını yoxlamaq üçün bir çox ifadələr yazmaqdan ibarətdir. PJRC -dən faydalı bir təlimat. Kodunuzu yazmaq və Teensy -yə yükləmək üçün Arduino IDE -dən istifadə edə bilərsiniz.
KOD:
github.com/timlindquist/Nintimdo-RP
Rəqəmsal Düymələr: Bu nümunə rəqəmsal pin 20 -nin basıldığını yoxladığımı yoxladığımı və sonra düzgün seriyalı joystick əmrini çıxardığımı göstərir. Düymə üçün hər hansı bir 1 -dən 32 -ə qədər seçə bilərsiniz, çünki Retropie hər halda başlanğıcda bir nəzarətçi Xəritəçəkmə quruluşu qurur. Joystick düyməsi (düymələr: 1-32, Basıldı = 1 Buraxıldı = 0)
Analog düymələr:
Nümunədə, sağ joystick şaquli analog pin 41 -ə bağlanır. AnalogRead (pin) funksiyası 0 ilə 5V arasında bir gərginlik səviyyəsi alır və 0 -dan 1023 -ə qədər bir dəyər qaytarır. İdeal mərkəz mövqeyi 2.5V və ya 512 -ə uyğun gəlir, lakin bu mənim analoq çubuğum üçün belə deyildi, buna görə düzəliş edilməlidir. Bu, aşağıda göstərilən yenidən qurma yolu ilə edildi. Bundan sonra sərhədlərin 0 -dan 1023 -ə keçib -keçmədiyini yoxlamalı oldum. Nəhayət, analog joystick əmri Joystick. Z (0 -dan 1023 -ə qədər) istifadə edərək analog düymə Z olaraq ardıcıl olaraq göndərildi.
Addım 6: İsteğe bağlı Dock
Dock:
Aşağıdakı şəkillərdən birini tərtib etdiyim üçün şarj etmək üçün bir yuva və asan bir TV bağlantısı olmadan bu quruluş tamamlanmayacaq. 3D modellər Github paketimdəki digər modellərlə birlikdə mövcuddur.
Modellər:
github.com/timlindquist/Nintimdo-RP_3D_mod…
Addım 7: Nəticələr
Gələcəkdə əvvəlcədən satın alınan bir qadın divar montajı yerinə PCB ilə HDMI çıxış portunu düzəltmək istərdim. Bu, əslində bir çox yerə qənaət etmiş olardı, kabelin kəsilməməsi və 19 teli yenidən lehimləməməsi üçün spiralə bükmək məcburiyyətində qaldım. Kiçik bir batareya ilə getməkdən bezmişəm, çünki hüceyrənin hündürlüyü bütün cihazın qalınlığını məhdudlaşdıran amildir. Ancaq bunu azaltmaq batareyanın ömrünü mənfi təsir edərdi.
Ümumilikdə bunu etmək üçün 350 dollara başa gəldim. Bura ölçüsünü qırxmağa çalışdığım moruq pi daxil deyil … Hələ də sınadığım üçün xoşbəxtəm. Mümkün qədər kompakt edə biləcəyimi görmək və eyni zamanda içərisində bir çox sərin xüsusiyyətlərə uyğunlaşmaq üçün əyləncəli bir yay layihəsi idi.
Tövsiyə:
DIY Raspberry Pi Zero El Oyun Konsolu: 6 Addım (Şəkillərlə birlikdə)
DIY Raspberry Pi Zero Əl Oyun Konsolu: Bu layihədə sizə Raspberry Pi Zero, NiMH batareyaları, ev şəraitində çox boşalma qoruma dövrəsi, arxa görünüşlü bir lcd və səs gücləndiricisini oynaya bilən bir oyun konsolu yaratmaq üçün necə göstərəcəyəm. retro oyunlar. Gəlin başlayaq
ESP32 Əl Oyun Konsolu: 21 Adım (Şəkillərlə birlikdə)
ESP32 Əl Oyun Konsolu: Bu təlimatlar NES emulator oyun konsolu qurmaq üçün ESP32 və ATtiny861 -dən necə istifadə olunacağını göstərir
1963 Pi Tourer Oyun Konsolu: 9 addım (şəkillərlə birlikdə)
1963 Pi Tourer Oyun Konsolu: Bu, lazımlı bir portativ retro oyun konsoluna çevirdiyim 1963 -cü il Sky Tourer avtomobil radiosudur. Daxili Raspberry Pi 3, 6 arcade düymələri və Picade nəzarətçi lövhəsi vasitəsi ilə bu Vintage RetroPie spritesini idarə edən joystickə malikdir
Əl Oyun Konsolu - Arduboy Clone: 6 Addım (Şəkillərlə birlikdə)
Əl Oyun Konsolu | Arduboy Clone: Bir neçə ay əvvəl rəsmi veb saytına görə onlayn öyrənməyi, paylaşmağı və oynamağı asanlaşdıran 8-bitlik miniatür bir oyun platforması olan Arduboy ilə rastlaşdım. Açıq mənbə platformadır. Arduboy üçün oyunlar istifadəçi tərəfindən hazırlanmışdır
Vizit kartı/oyun konsolu: ATtiny85 və OLED ekranı: 5 addım (şəkillərlə)
Vizit Kartı/Oyun Konsolu: ATtiny85 və OLED Ekranı: Hər kəsə salam! Bu gün sizə öz vizit kartınızı/oyun konsolunuzu/arxa işıqlı I2C OLED ekranı və ATtiny85 Mikroprosessoru olan hər şeyi təsəvvür edə biləcəyinizi göstərəcəyəm. Bu Təlimat kitabında necə dizayn etdiyim bir PCB -dən danışacağam