Spisu treści:

Kontroler gier USB Paddle: 7 kroków (ze zdjęciami)
Kontroler gier USB Paddle: 7 kroków (ze zdjęciami)

Wideo: Kontroler gier USB Paddle: 7 kroków (ze zdjęciami)

Wideo: Kontroler gier USB Paddle: 7 kroków (ze zdjęciami)
Wideo: ROZWALE PS5 jak NIE DZIAŁA! #LIVE 72 2024, Listopad
Anonim
Kontroler gier wiosłowych USB
Kontroler gier wiosłowych USB
Kontroler gier wiosłowych USB
Kontroler gier wiosłowych USB
Kontroler gier wiosłowych USB
Kontroler gier wiosłowych USB

Mój syn urządzał wieczór retro gier wideo z okazji swoich urodzin, a rano tego dnia postanowiłem sprawdzić, czy uda mi się zrobić parę kontrolerów USB do gier wiosłowych dla Ponga za pomocą drukarki 3D i elektroniki z mojej skrytki. Chociaż udało mi się zmusić ich do pracy na czas, ostatecznie ludzie byli zbyt zajęci innymi grami dla Ponga.

Kontrolery mogą być używane do gry Pong z emulatorem obwodu DICE lub z moją dość dokładną wersją pygame, do gier na Atari 2600 z emulatorem oraz do funkcjonalności podobnej do Etch-a-Sketch z programem do malowania, takim jak Tux Paint.

Istnieją trzy przełączalne tryby:

  • Emulacja wiosła Stelladaptor: powinny działać ze wszystkimi programami emulacyjnymi Atari 2600, które obsługują Stelladaptor; w trybie Stelladaptor łopatki działają jako dwuosiowy dwuprzyciskowy joystick, każde łopatki steruje jedną osią i jednym przyciskiem
  • emulacja podwójnego joysticka: każde łopatki działa jak joystick z jednym przyciskiem (ruch łopatki przekłada się na ruch w obu osiach joysticka)
  • mysz: każde wiosło kontroluje jeden kierunek ruchu dla myszy bezwzględnej, a przyciski są przyciskami myszy; wraz z programem do malowania można uzyskać zaawansowane technologicznie urządzenie podobne do Etch-a-Sketch.

Kieszonkowe dzieci

Będziesz potrzebować:

  • stm32f103c8t6 niebieska pigułka
  • 2x potencjometr liniowy (polecam 20K-100K)
  • 2x mikroprzełącznik o szerokości 12mm z przyciskiem
  • drukarka 3d
  • różne (filament, druty, lut, lutownica, gorący klej)

Krok 1: Przygotuj płytkę i środowisko Arduino

Przygotuj płytkę i środowisko Arduino
Przygotuj płytkę i środowisko Arduino
Przygotuj płytkę i środowisko Arduino
Przygotuj płytkę i środowisko Arduino
  1. Przylutuj sześć pinów nagłówka na środku swojej płyty stm32f103c8t6.
  2. Sprawdź rezystancję między A12 a 3,3V. Powinno to być 1.5K dla pełnej kompatybilności USB. Wiele płyt ma zamiast tego 10K. Jeśli jesteś jednym z nich, najlepiej wlutuj rezystor 1,8K od A12 do 3,3V, chociaż możesz mieć szczęście i mieć komputery pracujące z 10K.
  3. Zainstaluj bootloader. W kroku 2 tej instrukcji znajdują się instrukcje. Należy zwrócić uwagę na wielkość pamięci flash zgłoszoną przez demonstratora STM. Jeśli ma 32 KB, masz fałszywy stm32f103c8, który prawdopodobnie jest przemianowanym na stm32f103c6. Ten projekt powinien nadal działać, ale pamiętaj, że masz fałszywą tablicę na przyszły krok.
  4. Zainstaluj Arduino, Arduino Zero i rdzeń oparty na libmaple Rogera, postępując zgodnie z instrukcjami w kroku 3 instrukcji, której użyłeś w poprzednim kroku. Zignoruj instrukcje biblioteki w tym kroku.
  5. Pobierz najnowszą wersję mojej biblioteki USB Composite i rozpakuj ją w folderze Arduino/Libraries.
  6. Pobierz mój szkic kontrolerów wiosłowych i rozpakuj go w folderze Arduino.
  7. W Arduino przejdź do Narzędzia | Zarząd | Generic STM32F103C Series, chyba że masz fałszywą płytę c6, w takim przypadku wybierz Generic STM32F103C6/fałszywy STM32F103C8. Jeśli nie masz pewności, którą masz, wybór fałszywej opcji jest w rzeczywistości bezpieczniejszy.

Krok 2: Prześlij

Wgrywać
Wgrywać

Podłącz płytkę do adaptera USB komputera, załaduj szkic kontrolera łopatek i kliknij przycisk Prześlij (strzałka skierowana w prawo). Jeśli wszystko pójdzie dobrze, szkic powinien zostać załadowany, a tablica powinna pojawić się na komputerze jako dwuosiowy joystick z dwoma przyciskami o nazwie „Stelladaptor”. W systemie Windows możesz to sprawdzić za pomocą Windows-R, joy.cpl[enter].

Oczywiście to nic nie da, dopóki nie zmontujesz reszty sprzętu.

Krok 3: Drukuj

Wydrukować
Wydrukować
  1. Pobierz pliki stl i/lub scad z mojej strony Thingiverse dla tego projektu. Należy pamiętać, że pokrętło łopatki zostało zmodyfikowane z tego miejsca.
  2. Jeśli szerokość obudowy mikroprzełącznika jest inna niż 12 mm, należy dostosować parametr szerokości przycisku w pliku paddlemain-standalone.scad. Możesz to zrobić w OpenSCAD lub w Thingiverse Customizer.
  3. Może być konieczne dostosowanie pomiarów w pliku paddleknob.scad, aby pasowały do potencjometru.
  4. Wydrukuj te pliki (wykonaj tylko jedną kopię plików "2x", jeśli potrzebujesz tylko jednej paletki). Użyłem PLA, ale ABS też powinien działać dobrze.

    • 2x paddlemain.stl
    • 2x paddleknob.stl
    • 1x konwerter wiosła.stl
    • 1x pcbholdernarrower.stl
    • 2x nasadka guzikowa 110.stl (opcjonalnie)
    • 1x 12.stl (opcjonalnie; nadruk w innym kolorze i przyklej, aby oznaczyć dwa wiosła)

Krok 4: Okablowanie

Okablowanie
Okablowanie
Okablowanie
Okablowanie
Okablowanie
Okablowanie

Będziesz musiał poprowadzić cztery przewody z płyty stm32f103c do każdego kontrolera łopatkowego. Do tych przewodów można użyć starych kabli USB. Zdarzyło mi się mieć ładne, wolnostojące przewody z kabla ethernetowego, które związałem razem folią termokurczliwą.

Każda łopatka ma jeden mikroprzełącznik i jeden potencjometr. Za pomocą multimetru zidentyfikuj parę sąsiednich (nie ukośnych) styków mikroprzełącznika, które są podłączane/odłączane przez naciśnięcie przycisku. Oznaczę te piny S1 i S2 na schemacie. Trzy piny potencjometru, które oznaczyłem P1, P2 i P3 od góry do dołu, patrząc od spodu potencjometru, z pinami skierowanymi w prawo.

Przepchnij cztery przewody z płytki przez otwór z boku obudowy wiosła (paddlemain.stl).

Podłączając przewody do mikroprzełącznika, najpierw przełóż przewody przez otwory z boku obudowy łopatki i przylutuj do przełącznika, gdy przełącznik leży na zewnątrz obudowy. Następnie pociągnij przełącznik do obudowy, tak aby kołki i dołączone przewody weszły w otwory. Odciąłem niepotrzebne szpilki.

Oba wiosła:

  • P1 do S1
  • P1 do płytki 3,3 V (3,3)
  • P3 do płyty GND (G)

Wiosło 1:

  • P2 do tablicy A1
  • S2 do tablicy A2

Wiosło 2:

  • P2 do tablicy A3
  • S2 do tablicy A4

Teraz przetestuj połączenia, podłączając się do komputera i używając programu do testowania joysticka. W systemie Windows, Windows-R, joy.cpl[enter], wybierz Stelladaptor, kliknij Właściwości. Wiosło 1 powinno kontrolować oś X i pierwszy przycisk; wiosło 2 powinno sterować osią Y i drugim przyciskiem.

Krok 5: Montaż końcowy

Montaż końcowy
Montaż końcowy
Montaż końcowy
Montaż końcowy
Montaż końcowy
Montaż końcowy
Montaż końcowy
Montaż końcowy

Mikroprzełączniki można przykleić (gorący klej zrobił dla mnie robotę) w swoich miejscach z boku skrzynki wiosła. Nakładki na guziki można zapiąć, z odrobiną gorącego kleju dla stabilności.

Potencjometr mocuje się do dużego otworu w górnej części skrzynki z łopatkami. Pokrętło powinno się wsunąć i przykleić. W razie potrzeby powiększ otwory wiertłem. Załóż dolną pokrywę, dodając trochę gorącego kleju, jeśli chcesz.

Niebieska płytka pasuje do prowadnicy PCB, którą następnie przykręca się do dolnej części skrzynki konwertera, która ma również pokrywę, która może ją zakryć.

Dodałem trochę Shoe Goo, gdzie przewody stykają się z obudową, aby chronić przewody. A na wiosłach przykleiłem etykiety "1" i "2".

Krok 6: Tryby działania

Tryby działania
Tryby działania
Tryby działania
Tryby działania

Wiosła mają trzy tryby działania. Możesz przełączać tryb działania, naciskając określoną kombinację przycisków podczas podłączania ich do portu USB, zwalniając, gdy diody na płycie przestaną migać. Po zmianie trybu pracy zostanie on zapisany w pamięci flash i pozostanie do następnej zmiany. (Jeśli więc nie chcesz zmieniać trybu, nie naciskaj żadnego przycisku podczas podłączania łyżek do portu USB). Oto opcje:

  • Tylko lewy przycisk łopatkowy: Jeden dwuosiowy joystick z dwoma przyciskami, z każdą osią i przyciskiem kontrolowanym przez jedną łopatkę. Co więcej, łopatki identyfikują się jako Stelladaptor, wycofany adapter USB dla kontrolerów Atari 2600, więc emulatory Atari 2600, takie jak Stella i Z26, które są kompatybilne ze Stelladapter, powinny działać idealnie.
  • Oba przyciski wiosła: Każde wiosło pokazuje oddzielny joystick. Joystick ma jeden przycisk operacyjny, a obracanie wiosła przesuwa joystick po przekątnej, więc oś X lub Y działa dla wiosła.
  • Tylko prawy przycisk łopatki: Łopatki są wyświetlane jako dwuprzyciskowa mysz bezwzględna. Możesz teraz używać tego podobnie do Etch-a-Sketch z programem do rysowania.

Krok 7: Pong

Pong
Pong
Pong
Pong

Pong był świetną oryginalną grą wiosłową. Polecam oryginalną wersję, ponieważ klony często nie zawierają wszystkich uroczych, subtelnych funkcji, takich jak zmiany prędkości przy powtarzających się uderzeniach, kąt zmienia się w zależności od części wiosła, która uderza piłkę, lub subtelnie, ale niełatwej do przewidzenia pozycji serwu po chybieniu. Dokładną analizę oryginału znajdziesz tutaj.

Jednym z najlepszych sposobów gry w Ponga jest korzystanie z emulatora poziomu obwodu DICE, jeśli komputer jest wystarczająco szybki, aby używać go z pełną prędkością. (Mój laptop z systemem Windows jest, ale Raspberry PI 3+ jest zbyt wolny.) Polecam wersję 0.8.

Jeśli używasz trybu Stelladaptor w wiosłach, przejdź do Ustawienia | Skonfiguruj wejścia… w DICE i wybierz Joystick 1 i Absolute dla wiosła Player 1, a następnie ustaw poziome i pionowe na Joy 1 X-Axis. Następnie zrób to samo dla wiosła gracza 2, z wyjątkiem osi Y.

Jeśli twój komputer jest zbyt wolny dla DICE, stworzyłem wersję Python3+pygame, której taktowanie i funkcjonalność mają być bardzo zbliżone do oryginalnego Ponga (jestem wdzięczny za pomoc dr Hugo Holdena w tym zakresie).

Zalecana: