İçindekiler:
- Gereçler
- Adım 1: Board ve Arduino Ortamını Hazırlayın
- 2. Adım: Yükleyin
- 3. Adım: Yazdır
- Adım 4: Kablolama
- Adım 5: Son Montaj
- Adım 6: Çalışma Modları
- 7. Adım: Pong
Video: USB Paddle Game Controller: 7 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Oğlum doğum günü için retro bir video oyunları gecesi yaşıyordu ve günün sabahı, bir 3D yazıcı ve stoğumdan elektroniklerin yardımıyla Pong için bir çift USB raket oyun denetleyicisi yapıp yapamayacağımı görmeye karar verdim. Onları temelde zamanında çalıştırmayı başarsam da, insanlar sonunda Pong için diğer oyunlarla çok meşguldü.
Kontrolörler, DICE devre seviyesi emülatörü ile Pong için veya benim oldukça hassas pygame versiyonum ile, bir emülatör ile Atari 2600 oyunları için ve Tux Paint gibi bir boyama programı ile Etch-a-Sketch benzeri işlevsellik için kullanılabilir.
Üç değiştirilebilir mod vardır:
- Stelladaptor paddle öykünmesi: Stelladaptor'ı destekleyen tüm Atari 2600 öykünme yazılımlarıyla çalışmalıdırlar; Stelladaptor modunda, kürekler iki eksenli iki düğmeli joystick olarak işlev görür, her kürek bir ekseni ve bir düğmeyi kontrol eder
- çift joystick emülasyonu: her bir kürek tek düğmeli bir joystick işlevi görür (kürek hareketi her iki joystick ekseninde harekete dönüştürülür)
- fare: her kürek mutlak bir fare için bir hareket yönünü kontrol eder ve düğmeler fare düğmeleridir; bir boyama programıyla birlikte, bir Etch-a-Sketch'e benzer yüksek teknoloji ürünü bir cihaz elde edebilirsiniz.
Gereçler
İhtiyacın olacak:
- stm32f103c8t6 mavi hap
- 2x lineer potansiyometre (20K-100K'yı tavsiye ederim)
- 2x 12 mm genişliğinde düğmeli mikro anahtar
- 3 boyutlu yazıcı
- çeşitli (filament, teller, lehim, havya, sıcak tutkal)
Adım 1: Board ve Arduino Ortamını Hazırlayın
- Stm32f103c8t6 kartınızın ortasındaki altı başlık pimini lehimleyin.
- A12 ve 3.3V arasındaki direnci kontrol edin. Tam USB uyumluluğu için 1.5K olmalıdır. Birçok panoda bunun yerine 10K var. Bunlardan biriyseniz, ideal olarak A12'den 3.3V'a 1.8K dirençte lehimleyin, ancak şanslı olabilirsiniz ve bilgisayarlarınızın 10K ile çalışmasını sağlayabilirsiniz.
- Bir önyükleyici yükleyin. Bu Talimatın 2. Adımında talimatlar vardır. Dikkat edilmesi gereken bir şey, STM Göstericisi tarafından bildirilen flaş boyutunun ne olduğudur. 32K ise, muhtemelen yeniden etiketlenmiş bir stm32f103c6 olan sahte bir stm32f103c8'iniz var. Bu proje hala bununla çalışmalı, ancak gelecekteki bir adım için sahte tahtaya sahip olduğunuzu not edin.
- Önceki adımda kullandığınız Talimatın 3. Adımındaki talimatları izleyerek Arduino, Arduino Zero ve Roger'ın libmaple tabanlı çekirdeğini kurun. Bu adımdaki kitaplık yönergelerini yok sayın.
- USB Composite kitaplığımın en son sürümünü indirin ve Arduino/Libraries klasörünüzde açın.
- Paddlecontrollers çizimimi indirin ve Arduino klasörünüzde açın.
- Arduino'da Araçlar | Yönetim Kurulu | Generic STM32F103C Serisi, sahte c6 kartınız yoksa, bunun yerine Generic STM32F103C6/sahte STM32F103C8'i seçin. Hangisine sahip olduğunuzdan emin değilseniz, sahte seçeneği seçmek aslında daha güvenlidir.
2. Adım: Yükleyin
Kartı bilgisayarınızın USB adaptörüne takın, paddlecontroller taslağını yükleyin ve Yükle düğmesine tıklayın (sağa bakan ok). Her şey yolunda giderse, eskiz yüklenmeli ve pano bilgisayarınızda "Stelladaptor" adı verilen iki eksenli iki düğmeli bir joystick olarak görünmelidir. Windows'ta bunu Windows-R, joy.cpl[enter] ile doğrulayabilirsiniz.
Tabii ki, donanımın geri kalanını bir araya getirene kadar bu hiçbir şey yapmaz.
3. Adım: Yazdır
- Bu proje için Thingiverse sayfamdan stl ve/veya scad dosyalarını indirin. Lütfen kürek düğmesinin buradan değiştirildiğini unutmayın.
- Mikro anahtar muhafaza genişliğiniz 12 mm'den farklıysa, paddlemain-standalone.scad dosyasındaki düğme genişliği parametresini ayarlamanız gerekecektir. Bunu OpenSCAD'de veya Thingiverse Özelleştirici'de yapabilirsiniz.
- Potansiyometrenize uyması için paddleknob.scad dosyasındaki ölçümleri ayarlamanız gerekebilir.
-
Bu dosyaları yazdırın (yalnızca bir kürek istiyorsanız "2x" dosyalarının yalnızca bir kopyasını yapın). PLA kullandım ama ABS de iyi çalışmalı.
- 2x paddlemain.stl
- 2x paddleknob.stl
- 1x kürek dönüştürücü.stl
- 1x pcbholderdaral.stl
- 2x buttoncap110.stl (isteğe bağlı)
- 1x 12.stl (isteğe bağlı; farklı bir renkte yazdırın ve iki paleti etiketlemek için yapıştırın)
Adım 4: Kablolama
Her kürek denetleyicisine stm32f103c kartından dört kablo çekmeniz gerekecektir. Bu teller için eski USB kablolarını kullanabilirsiniz. Shrink sargı ile birbirine bağladığım bir ethernet kablosundan güzel bağımsız kablolarım oldu.
Her kürek bir mikro anahtara ve bir potansiyometreye sahiptir. Düğmeye basılarak bağlanan/bağlantısı kesilen mikro anahtar üzerindeki bir çift bitişik (diyagonal olmayan) pimi belirlemek için bir multimetre kullanın. Bu pinleri S1 ve S2 diyagramında etiketleyeceğim. Potansiyometre üzerindeki üç pimi yukarıdan aşağıya P1, P2 ve P3 olarak etiketledim, pimler sağa bakacak şekilde potansiyometrenin altından bakıyor.
Panodan gelen dört kabloyu palet muhafazasının (paddlemain.stl) yanındaki delikten geçirin.
Kabloları mikro anahtara bağlarken, önce kabloları kanat muhafazasının yan tarafındaki deliklerden itin ve anahtar muhafazanın dışındayken anahtara lehimleyin. Ardından, pimleri ve bağlı kabloları deliklere oturacak şekilde anahtarı muhafazaya çekin. Gereksiz pinleri kestim.
Her iki kürek:
- P1'den S1'e
- P1'den 3.3V'a (3.3)
- P3'ten GND'ye (G)
Kürek 1:
- P2'den A1 kartına
- S2'den A2'ye geçiş
Kürek 2:
- P2'den A3 kartına
- S2'den A4 kartına
Şimdi bilgisayarınıza bağlanarak ve bir joystick test programı kullanarak bağlantıları test edin. Windows, Windows-R, joy.cpl[enter]'da Stelladaptor'ı seçin, Özellikler'e tıklayın. Kürek 1, X eksenini ve ilk düğmeyi kontrol etmelidir; kürek 2, Y eksenini ve ikinci düğmeyi kontrol etmelidir.
Adım 5: Son Montaj
Mikro anahtarlar, palet kutusunun yan tarafındaki yerlerine yapıştırılabilir (sıcak tutkal benim için işi yaptı). Düğme kapakları, stabilite için biraz sıcak tutkalla takılabilir.
Potansiyometre, kürek kutusunun üstündeki büyük deliğe takılır. Düğme kaymalı ve yapışmalıdır. Delikleri gerektiği gibi bir matkapla büyütün. İsterseniz biraz sıcak tutkal ekleyerek alt kapağı itin.
Mavi hap panosu, PCB sürgüsünün içine sığar ve daha sonra, onu kapatabilecek bir kapağı da olan dönüştürücü kutusunun altına vidalanır.
Kabloları korumak için kabloların muhafazayla buluştuğu yere biraz Shoe Goo ekledim. Ve kanatların üzerine "1" ve "2" etiketlerini yapıştırdım.
Adım 6: Çalışma Modları
Küreklerin üç çalışma modu vardır. Bir USB bağlantı noktasına takarken belirli bir düğme kombinasyonuna basarak ve kart LED'lerinin yanıp sönmesi durduğunda serbest bırakarak çalışma modunu değiştirebilirsiniz. Çalışma modunu değiştirdiğinizde, flash belleğe kaydedilecek ve bir sonraki değiştirinceye kadar kalacaktır. (Yani, modu değiştirmek istemiyorsanız, kulakçıkları bir USB bağlantı noktasına takarken herhangi bir düğmeye basmayın.) Seçenekler şunlardır:
- Yalnızca sol kanat düğmesi: Her eksen ve düğme bir kanat tarafından kontrol edilen bir adet iki eksenli iki düğmeli joystick. Ayrıca kürekler, Atari 2600 denetleyicileri için üretimi durdurulan bir USB adaptörü olan Stelladaptor olarak tanımlanır ve bu nedenle Stella ve Z26 gibi Stelladapter uyumlu Atari 2600 öykünücüleri mükemmel şekilde çalışmalıdır.
- Her iki kürek düğmesi: Her kürek ayrı bir joystick gösterir. Joystick'in bir işlem düğmesi vardır ve paleti döndürmek joystick'i çapraz olarak hareket ettirir, böylece X veya Y ekseni kanat için çalışır.
- Yalnızca sağ kanat düğmesi: Kanatlar, iki düğmeli mutlak fare olarak görünür. Artık bunu bir çizim programı ile bir Etch-a-Sketch'e benzer şekilde kullanabilirsiniz.
7. Adım: Pong
Pong, harika orijinal kürek oyunuydu. Orijinal versiyonu tavsiye ediyorum, çünkü klonlar genellikle, tekrarlanan vuruşlarla hızdaki değişiklikler, raketin topa çarpan kısmına bağlı olarak açı değişir veya ustaca ama kolayca tahmin edilemeyen pozisyon gibi tüm güzel ince işlevleri içeremez. bir özledim sonra hizmet. Orijinalin dikkatli bir analizi için buraya bakın.
Bilgisayarınız tam hızda kullanmak için yeterince hızlıysa, Pong oynamanın en iyi yollarından biri DICE devre düzeyinde emülatördür. (Windows dizüstü bilgisayarım, ancak Raspberry PI 3+ çok yavaş.) 0.8 sürümünü öneririm.
Kanatlarda Stelladaptor modunu kullanıyorsanız, Ayarlar | Girdileri Yapılandır… DICE'ta ve Oyuncu 1 Kürek için Joystick 1 ve Mutlak'ı seçin ve hem Yatay hem de Dikey'i Joy 1 X-Axis olarak ayarlayın. Ardından, Y Ekseni hariç, Oyuncu 2 Kürek için de aynısını yapın.
Bilgisayarınız DICE için çok yavaşsa, zamanlamaları ve işlevselliği orijinal Pong'a çok yakın olması gereken bir Python3+pygame sürümü yaptım (bu konuda Dr. Hugo Holden'ın yardımına minnettarım).
Önerilen:
3D Baskılı Twin Paddle Cw Key (566gr.): 21 Adım (Resimli)
3D Baskılı Twin Paddle Cw Key (566gr.): Şimdiye kadar hassas, yumuşak ve ağır hizmet tipi bir twin paddle anahtarına sahip olmak çok para harcamak anlamına geliyordu. Bu anahtarı tasarlarken amacım kürek yapmaktı:a)- Ucuz --- Standart bir 3d yazıcı ile plastikten yapılmıştırb)- Dayanıklı --- Top kullandım
Game Boy veya Benzer Elektronikleri Geri Yükle: 7 Adım (Resimlerle)
Game Boy veya Benzer Elektronikleri Geri Yükle: Her şeyden önce, öğreticime göz attığınız için teşekkür ederiz! Harikasın.İkincisi, YouTube videosuna çok zaman ayırdım, o yüzden onu da izle, her şeyi açıklıyor. Video:
Kartondan DIY PC Direksiyon ve Pedallar! Yarış Simülatörleri ve Oyunları için (Geri Bildirim, Paddle Shifters, Ekran): 9 Adım
Kartondan DIY PC Direksiyon ve Pedallar! Yarış Simülatörleri ve Oyunlar için (Geri Bildirim, Paddle Shifters, Ekran): Herkese merhaba! Bu sıkıcı zamanlarda, hepimiz yapacak bir şeyler arıyoruz. Gerçek hayattaki yarış etkinlikleri iptal edildi ve yerini simülatörlere bıraktı. Kusursuz çalışan ucuz bir simülatör oluşturmaya karar verdim,
USB MAME Arcade Controller: 13 Adım (Resimlerle)
USB MAME Arcade Controller: Bu Instructable, MAME aracılığıyla oyun ROM'ları oynamak için bir USB MAME denetleyici yapımımı belgeliyor. Bu denetleyici bir PC'ye 12' USB kablosuyla bağlanır. PC daha sonra televizyonuma bağlı
NES Controller Shuffle (Nintendo Controller MP3, V3.0): 5 Adım (Resimlerle)
NES Controller Shuffle (Nintendo Controller MP3, V3.0): Nintendo Controller MP3, Versiyon 2.0 tasarımında ryan97128'i tamamen söktüm ve onun fikri tamamen bilge Morte_Moya'dan aldığını duydum, bu yüzden kredi alamam hepsi onların dehası. Ben sadece kolaylık ve şarj eklemek istedim-