Spisu treści:
- Krok 1: Sprawa drukowania
- Krok 2: Montaż obudowy
- Krok 3: Obwody
- Krok 4: Obwody peryferyjne
- Krok 5: Programowanie
- Krok 6: Opcjonalna stacja dokująca
- Krok 7: Wyniki
Wideo: Domowa konsola do gier- „NinTIMdo RP”: 7 kroków (ze zdjęciami)
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Link do strony internetowej z bardziej szczegółowymi wyjaśnieniami, listą części i plikami
timlindquist.me
Ten projekt miał na celu stworzenie przenośnego systemu do gier, który mógłby również pełnić funkcję przenośnego komputera. Celem było stworzenie konsoli funkcjonalnej i estetycznej.
Lista części:
docs.google.com/spreadsheets/d/1Ay6-aW4nW…
Krok 1: Sprawa drukowania
Aby wydrukować urządzenie, pobierz moje pliki modeli 3D i wyślij je do drukarki 3D. Drukarka, której użyłem, to Prusa i3 Mk2 wraz z czarnym plastikowym filamentem. Stwierdzono, że jakość druku jest najlepsza przy ustawieniu średniej rozdzielczości. Pamiętaj, aby dodać materiał strukturalny pod urządzeniem (bez niego uchwyty będą wyglądać kiepsko). Tył wydrukowano tak, aby tył był wyrównany z talerzem. Fronty zostały wydrukowane tak, aby przednia strona była zlicowana z talerzem. Gdybym miał wydrukować inny przypadek, chciałbym użyć nowego koloru, takiego jak atomic purple, aby pokazać wnętrze. Jeśli jesteś podobny do mnie i masz 8-calowy stół do drukowania, będziesz musiał wydrukować 4-częściową wersję, która zostanie złożony po wydrukowaniu. Jeśli jednak twoje łóżko jest wystarczająco duże, aby zrobić je jako pojedynczy element, wydrukuj przednią i tylną płytę jako jedną całość i uniknij bólu związanego z ich łączeniem.
Pliki modeli:
github.com/timlindquist/Nintimdo-RP_3D_mod…
Krok 2: Montaż obudowy
Aby zmontować, najpierw połącz przednie prawe i lewe elementy, wkładając metalowy kołek w otwory wyrównujące. Następnie umieść super klej na złączach i skręć połówki razem. Powtórz ten proces dla prawego i lewego dołu. Po tym należy pozostawić zmontowaną przednią i tylną połówkę. Teraz nadszedł czas, aby przymocować 5 metalowych wsporników, aby połączyć przednią i tylną płytę. Najłatwiej to zrobić, aby najpierw ustawić wsporniki na odpowiednią długość. Głębokość 13 mm z tyłu Głębokość 5 mm z przodu. Zrób więc dystanse 18 mm lub nieco mniej. Zrobiłem to, umieszczając dłuższy dystans w uchwytach imadła i używając szlifierki, aby zmniejszyć rozmiar. Pamiętaj, aby szlifować tylko jedną stronę, ponieważ będziesz potrzebować nici z drugiej. Po uzyskaniu odpowiedniej długości przyklej wszystkie boki szlifierki do przedniej powierzchni za pomocą zwykłego kleju goryla i pozostaw do wyschnięcia. Upewnij się, że podczas tego procesu wszyscy stoją prosto. Po wyschnięciu zeskrob doskonały klej, który się spienił, aby powierzchnie mogły być równe po złożeniu. Teraz sprawdź, czy możesz włożyć tylną płytkę na wsporniki, aby połączyć się z przednią. Przykręć razem przez tylną płytkę, aby zabezpieczyć. Przyklej ekran, wyścielając ramę pojedynczą tubą Gorilla Epoxy. Włożyłem za dużo, kiedy to robiłem i wylało się to na ekran. Na szczęście się ściera! Zaciśnij i pozostaw do wyschnięcia na chwilę, a następnie wyrównaj tył zwykłym klejem Gorilla.
**Uwaga: Staraj się nie nakładać cienkiego kleju CA (super klej) na zewnątrz, ponieważ "spali" on PLA i zabarwi na biały kolor.
Krok 3: Obwody
Obwód przycisku:
Przechwytywanie wszystkich naciśnięć przycisków odbywa się za pomocą Teensy ++ 2.0. Cyfrowe piny na mikrokontrolerze są używane do dowolnych binarnych przycisków. Piny analogowe są używane do przycisków, które mają wiele stanów, takich jak joysticki. Aby podłączyć piny cyfrowe, wystarczy podłączyć pin cyfrowy do przełącznika, drugi koniec przełącznika należy podłączyć do uziemienia. Po naciśnięciu przycisku pociągnie on pin wysokiego napięcia w dół, aby kontroler mógł go wykryć. Nie musisz się martwić o rezystory, ponieważ znajdują się one na płycie Teensy. Aby okablować piny analogowe, będziesz musiał polaryzować swoje urządzenie analogowe wysokim i niskim napięciem i odczytać poziom napięcia w tym zakresie na pinie analogowym. Dla joysticków są 3 wejścia dla każdej osi. Doprowadź napięcie 5V do jednego z pinów, GND do drugiego, a linię odczytu napięcia do ostatniego. Upewnij się, że podłączyłeś to poprawnie, w przeciwnym razie nie zadziała (użyj multimetru, aby sprawdzić, czy napięcie wyjściowe zmienia się na właściwym styku). Zasadniczo joystick jest zmiennym rezystorem, który działa jak dzielnik napięcia. Napięcie wyjściowe na pin do odczytu będzie się wahać od 0 do 5 V w zależności od położenia joysticka. (Zwykle odchylenie 5 V i GND znajdują się na zewnętrznych pinach wejściowych joysticka, a środkowy będzie pinem odczytu napięcia zmiennego. Jeśli 5 V i GND są inne niż moje, sterowanie zostanie odwrócone, można to naprawić w oprogramowaniu lub w okablowaniu).
Obwody zasilające:
Trzy ogniwowa bateria Anker zasila całe urządzenie. Aby włączyć/wyłączyć urządzenie, wyjście regulatora baterii jest podłączone do przełącznika, a następnie do Raspberry Pi. Ponieważ urządzenie może pobierać do 2A, prosty przełącznik 250mA nie jest w stanie sprostać bieżącym wymaganiom. Zamiast tego możesz użyć przełącznika do sterowania napięciem bramki na tranzystorze PMOS, aby służyć jako przełącznik. Podłącz 5 V akumulatora do źródła tranzystora PMOS i przełącznika. Drugi koniec przełącznika jest podłączony do bramki tranzystora PMOS i do rezystora 10K podłączonego do GND (gdy przełącznik jest otwarty, aby zapobiec pływaniu bramki, wiąże go z GND przez rezystor). Drain jest podłączony do wejścia 5 V na Raspberry Pi wraz z masą. Aby naładować baterię, wystarczy podłączyć żeńską płytkę zaciskową micro USB do odpowiednich pinów ładowania (rozszerza wejście do obudowy). Ukryłem ten włącznik w wlocie powietrza z tyłu urządzenia. Początkowo planowałem zamiast tego przycisk baterii włączać i wyłączać urządzenie, przytrzymując go przez określony czas, niestety zabrakło mi miejsca i musiałem wykonać prostą implementację. Ta alternatywna konstrukcja jest pokazana na poniższym schemacie.
Obwody audio:
W przypadku dźwięku chciałem, aby dźwięk naturalnie odtwarzał się z głośników (jeśli nie był wyciszony) i przekierowywał do słuchawek, jeśli są podłączone. Na szczęście wiele żeńskich gniazd słuchawek 3,5 mm jest mechanicznie zdolnych do tego. Po włożeniu wtyczki męskiej przewody głośnikowe ulegną zgięciu i utworzą obwód otwarty, uniemożliwiając w ten sposób dotarcie sygnału do głośników. Ponieważ głośniki są większym obciążeniem, sygnał audio musi zostać wzmocniony, aby móc go usłyszeć. Odbywa się to za pomocą wzmacniacza stereo klasy D, który znalazłem na adafruit. Po prostu spolaryzuj wzmacniacz za pomocą 5V i GND. Nie mamy różnicowych wejść audio, więc podłącz lewy i prawy głośnik do dodatnich zacisków, a ujemne zaciski do GND. Wzmocnienie reguluje się za pomocą zworki. Ustawiam wzmocnienie na maksimum i zmieniam amplitudę wyjściowych sygnałów audio za pomocą oprogramowania, aby dostosować głośność. Aby wyciszyć urządzenie mam tranzystor NMOS kontrolujący bias 5V. Ta bramka tranzystorów NMOS jest kontrolowana przez Teensy. Problem, który mam, to stały szum o wysokiej częstotliwości w głośnikach zewnętrznych. Przeanalizuję to na oscyloskopie, może pochodzić z odchylenia 5V z powodu jakiegoś przełączania regulatora na akumulatorze lub linie mogą gdzieś odbierać RF. Pamiętaj również, aby skręcić prawą i lewą linię, aby zminimalizować zakłócenia elektromagnetyczne (EMI).
Krok 4: Obwody peryferyjne
Ten obwód zawiera uchwyty USB i wskaźnik LED. Zamów płytkę drukowaną w moim linku i przetnij na pół wzdłuż przerywanej linii za pomocą piły taśmowej. Po stronie USB wszystkie przylutuj dwa żeńskie porty USB do płyty. Po stronie LED przylutuj szeregowo 5 diod i 5 rezystorów. 5V, GND, D+, D-można rozszerzyć za pomocą przewodów z wylutowanych USB Raspberry PI do PCB. Płytkę LED można umieścić tak, aby światło wpadało przez otwory w górnej części obudowy. Podłącz 5 wyjść PWM Teensy do diod LED wraz z GND. Zmieniając cykl pracy, możesz zmienić jasność diod LED.
Zakup PCB:
Krok 5: Programowanie
Malutkie:
Jeśli podłączyłeś go dokładnie tak samo jak ja, możesz po prostu użyć kodu, który podałem na Github. Zalecam jednak napisanie go samemu, ponieważ lepiej zrozumiesz system i będziesz mógł łatwo manipulować nim i dostosowywać go do własnych upodobań. Programowanie jest bardzo proste, tak naprawdę sprowadza się do napisania kilku instrukcji if, aby sprawdzić, czy zostały naciśnięte przyciski. Pomocny zestaw instrukcji z PJRC. Możesz użyć Arduino IDE, aby napisać swój kod, a także przesłać go do Teensy.
KOD:
github.com/timlindquist/Nintimdo-RP
Przyciski cyfrowe: Ten przykład pokazuje, jak sprawdzam, czy został naciśnięty cyfrowy pin 20, a następnie wyprowadzam prawidłowe polecenie szeregowego joysticka. Możesz wybrać dowolny od 1 do 32 dla przycisku, ponieważ Retropie i tak na początku wykonuje konfigurację mapowania kontrolera. Joystick.button (przyciski: 1-32, Wciśnięty = 1 Zwolniony = 0)
Przyciski analogowe:
W tym przykładzie prawy pionowy joystick jest podłączony do pinu analogowego 41. Funkcja analogRead(pin) odbiera poziom napięcia pomiędzy 0 a 5V i zwraca wartość od 0 do 1023. Idealna pozycja środkowa odpowiadałaby 2.5V lub 512, jednak tak nie było w przypadku mojego drążka analogowego, więc trzeba było dokonać regulacji. Dokonano tego poprzez ponowne mapowanie pokazane poniżej. Następnie musiałem sprawdzić, czy granice nie zostały przekroczone od 0 do 1023. Na koniec polecenie analogowego joysticka zostało wysłane przez port szeregowy jako analogowy przycisk Z za pomocą Joystick. Z (wartość od 0 do 1023).
Krok 6: Opcjonalna stacja dokująca
Dok:
Ta kompilacja nie byłaby kompletna bez stacji dokującej do ładowania i łatwego podłączenia telewizora, więc zaprojektowałem ją na poniższych zdjęciach. Modele 3D są dostępne z innymi w moim pakiecie Github.
Modele:
github.com/timlindquist/Nintimdo-RP_3D_mod…
Krok 7: Wyniki
Z perspektywy czasu żałuję, że nie zrobiłem portu wyjściowego HDMI z płytką drukowaną zamiast wcześniej kupionego żeńskiego uchwytu ściennego. W rzeczywistości zaoszczędziłoby to dużo miejsca. Musiałem zwinąć kabel w spiralę, aby uniknąć przecięcia go i ponownego lutowania 19 przewodów. Jestem rozdarty na temat chodzenia z mniejszą baterią, ponieważ wysokość ogniwa była moim czynnikiem ograniczającym grubość całego urządzenia. Jednak zmniejszenie tego miałoby negatywny wpływ na żywotność baterii.
Łącznie kosztowało mnie to około 350 dolarów. Nie obejmuje to malinowego pi, które złamałem, próbując zmniejszyć rozmiar… Nadal jestem szczęśliwy, że go wypróbowałem. To był fajny letni projekt, aby zobaczyć, czy mogę zrobić go tak kompaktowym, jak to tylko możliwe, a jednocześnie umieścić w nim wiele fajnych funkcji.
Zalecana:
Przenośna konsola do gier DIY Raspberry Pi Zero: 6 kroków (ze zdjęciami)
Przenośna konsola do gier DIY Raspberry Pi Zero: W tym projekcie pokażę, jak użyłem Raspberry Pi Zero, akumulatorów NiMH, domowego obwodu zabezpieczającego przed nadmiernym rozładowaniem, tylnego wyświetlacza LCD i wzmacniacza audio, aby stworzyć przenośną konsolę do gier, która może grać gry retro. Zacznijmy
Przenośna konsola do gier ESP32: 21 kroków (ze zdjęciami)
Przenośna konsola do gier ESP32: Ta instrukcja pokazuje, jak używać ESP32 i ATtiny861 do zbudowania konsoli do gier NES
1963 Konsola do gier Pi Tourer: 9 kroków (ze zdjęciami)
Konsola do gier Pi Tourer z 1963 r.: Jest to radio samochodowe Sky Tourer z 1963 r., Które przerobiłem na poręczną przenośną konsolę do gier w stylu retro. Ma wbudowane Raspberry Pi 3, z 6 przyciskami arkadowymi i joystickiem kontrolującym te zabytkowe sprite RetroPie za pomocą płyty kontrolera Picade. Ten
Przenośna konsola do gier - Klon Arduboy: 6 kroków (ze zdjęciami)
Przenośna konsola do gier | Arduboy Clone: Kilka miesięcy temu natknąłem się na Arduboy, który według oficjalnej strony internetowej jest miniaturową 8-bitową platformą gier, która ułatwia naukę, udostępnianie i granie w gry online. Jest to platforma open source. Gry na Arduboy są tworzone przez użytkownika
Wizytówka/konsola do gier: ATtiny85 i ekran OLED: 5 kroków (ze zdjęciami)
Wizytówka/konsola do gier: ATtiny85 i ekran OLED: Cześć wszystkim! Dzisiaj pokażę wam, jak można zbudować własną wizytówkę/konsolę do gier/cokolwiek, co można sobie wyobrazić, wyposażone w podświetlany wyświetlacz I2C OLED i mikroprocesor ATtiny85. W tym instruktażowym opowiem ci, jak projektuję płytkę drukowaną