فهرست مطالب:
- تدارکات
- مرحله 1: برد و محیط آردوینو را آماده کنید
- مرحله 2: بارگذاری
- مرحله 3: چاپ کنید
- مرحله 4: سیم کشی
- مرحله 5: مونتاژ نهایی
- مرحله 6: روش های عملکرد
- مرحله 7: پنگ
تصویری: USB Paddle Game Controller: 7 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:53
پسرم برای تولدش یک شب بازی های ویدئویی یکپارچهسازی با سیستمعامل داشت و صبح روز تصمیم گرفتم ببینم آیا می توانم با استفاده از چاپگر سه بعدی و وسایل الکترونیکی موجود در من ، یک جفت کنترلر بازی USB paddle برای Pong بسازم. در حالی که من موفق شدم آنها را به موقع وادار کنم ، در نهایت مردم مشغول بازی های دیگر برای پنگ بودند.
کنترل کننده ها را می توان برای Pong با شبیه ساز سطح DICE یا نسخه pygame بسیار دقیق من ، برای بازی های Atari 2600 با شبیه ساز و برای عملکردهای مشابه Etch-a-Sketch با برنامه نقاشی مانند Tux Paint استفاده کرد.
سه حالت قابل تغییر وجود دارد:
- تقلید پارو زدن Stelladaptor: آنها باید با تمام نرم افزارهای شبیه سازی Atari 2600 که از Stelladaptor پشتیبانی می کنند کار کنند. در حالت Stelladaptor ، پاروها به عنوان جوی استیک دو محوره عمل می کنند ، هر پارو یک محور و یک دکمه را کنترل می کند
- تقلید جوی استیک دوگانه: هر پارو با یک دکمه به عنوان جوی استیک عمل می کند (با حرکت حرکت پارو به حرکت در هر دو محور جوی استیک)
- ماوس: هر دست و پا یک جهت حرکت را برای ماوس مطلق کنترل می کند و دکمه ها دکمه های ماوس هستند. همراه با یک برنامه نقاشی می توانید یک دستگاه با تکنولوژی بالا مشابه Etch-a-Sketch تهیه کنید.
تدارکات
شما نیاز خواهید داشت:
- قرص آبی stm32f103c8t6
- پتانسیومتر خطی 2 برابر (من 20K-100K را توصیه می کنم)
- میکروسوئیچ 2x عرض 12 میلی متر با دکمه
- چاپگر سه بعدی
- متفرقه (رشته ، سیم ، لحیم ، آهن لحیم کاری ، چسب حرارتی)
مرحله 1: برد و محیط آردوینو را آماده کنید
- شش پین هدر را در وسط تخته stm32f103c8t6 خود لحیم کنید.
- مقاومت بین A12 و 3.3V را بررسی کنید. برای سازگاری کامل USB باید 1.5K باشد. بسیاری از تابلوها به جای آن 10K دارند. اگر شما یکی از آنها هستید ، در حالت ایده آل در مقاومت 1.8K از A12 تا 3.3V لحیم می شوید ، اگرچه ممکن است خوش شانس باشید و رایانه های خود را با 10K کار کنید.
- یک بوت لودر نصب کنید. دستورالعمل هایی در مرحله 2 این دستورالعمل وجود دارد. نکته ای که باید به آن توجه کنید اندازه فلش گزارش شده توسط STM Demonstrator چقدر است. اگر 32K است ، شما یک stm32f103c8 جعلی دارید که احتمالاً یک stm32f103c6 با نام تجاری دیگر است. این پروژه هنوز باید با آن کار کند ، اما توجه داشته باشید که تخته جعلی را برای گام بعدی در اختیار دارید.
- طبق دستورالعمل های مرحله 3 دستورالعمل مورد استفاده در مرحله قبل ، Arduino ، Arduino Zero و Roger را بر اساس کتابخانه نصب کنید. در آن مرحله دستورالعمل های کتابخانه را نادیده بگیرید.
- آخرین نسخه کتابخانه USB Composite من را بارگیری کرده و در پوشه Arduino/Libraries خود از حالت فشرده خارج کنید.
- اسکچ طرح paddlecontrollers من را بارگیری کرده و در پوشه آردوینو از حالت فشرده خارج کنید.
- در آردوینو ، به Tools | بروید تخته | سری عمومی STM32F103C ، مگر اینکه تخته c6 تقلبی داشته باشید ، در این صورت به جای آن Generic STM32F103C6/جعلی STM32F103C8 را انتخاب کنید. اگر مطمئن نیستید که کدام را دارید ، انتخاب گزینه جعلی در واقع ایمن تر است.
مرحله 2: بارگذاری
برد را به آداپتور USB رایانه خود وصل کنید ، طرح کنترل paddlecontler را بارگذاری کرده و روی دکمه بارگذاری (پیکان اشاره راست) کلیک کنید. اگر همه چیز خوب پیش رفت ، طرح باید بارگذاری شود و صفحه باید به عنوان یک جوی استیک دو محوره با دو محور به نام "Stelladaptor" در رایانه شما نمایش داده شود. در Windows ، می توانید این را با Windows-R ، joy.cpl [enter] تأیید کنید.
البته ، تا زمانی که بقیه سخت افزار را مونتاژ نکنید ، هیچ کاری انجام نمی دهد.
مرحله 3: چاپ کنید
- فایلهای stl و/یا scad را از صفحه Thingiverse من برای این پروژه بارگیری کنید. لطفاً توجه داشته باشید که دستگیره پارو از اینجا تغییر یافته است.
- اگر عرض محفظه میکروسوئیچ شما با 12 میلی متر متفاوت است ، باید پارامتر عرض دکمه را در فایل paddlemain-standalone.scad تنظیم کنید. می توانید این کار را در OpenSCAD یا در Thingiverse Customizer انجام دهید.
- ممکن است لازم باشد اندازه ها را در فایل paddleknob.scad تغییر دهید تا پتانسیومتر شما مناسب باشد.
-
این فایلها را چاپ کنید (فقط یک کپی از فایلهای "2x" انجام دهید اگر فقط یک دست و پا زدن می خواهید). من از PLA استفاده کردم ، اما ABS نیز باید خوب کار کند.
- 2x paddlemain.stl
- 2x paddleknob.stl
- 1x paddleconverter.stl
- 1x pcbholdernarrower.stl
- 2x buttoncap110.stl (اختیاری)
- 1x 12.stl (اختیاری ؛ چاپ در رنگ متفاوت و چسباندن روی برچسب دو پارو)
مرحله 4: سیم کشی
شما باید چهار سیم را از برد stm32f103c به هر کنترل کننده پارو بزنید. می توانید از سیم های قدیمی USB برای این سیم ها استفاده کنید. من به طور اتفاقی سیمهای مستقل خوبی از یک کابل اترنت داشتم که آنها را با بسته بندی کوچک جمع کردم.
هر پارو دارای یک میکروسوئیچ و یک پتانسیومتر است. از یک مولتی متر برای شناسایی یک جفت پین مجاور (نه مورب) روی میکروسوئیچ استفاده کنید که با فشار دادن دکمه به هم متصل/قطع شده اند. من این پین های S1 و S2 را در نمودار برچسب گذاری می کنم. سه پین روی پتانسیومتر که من از بالا به پایین P1 ، P2 و P3 نامگذاری کرده ام ، از قسمت زیرین پتانسیومتر به نظر می رسد ، و پین ها به سمت راست نشان داده شده اند.
چهار سیم را از روی تخته از طریق سوراخ کنار محفظه پدل (paddlemain.stl) فشار دهید.
هنگام اتصال سیم ها به میکروسوئیچ ، ابتدا سیم ها را از طریق سوراخ های کنار محفظه پدل فشار داده و به سوئیچ لحیم کنید در حالی که سوئیچ در قسمت بیرونی محفظه قرار دارد. سپس سوئیچ را به محفظه بکشید و سنجاق ها و سیمهای متصل را در سوراخ ها جا دهید. پین های غیر ضروری را قطع کردم.
هر دو پارو:
- P1 تا S1
- P1 به برد 3.3V (3.3)
- P3 به GND (G)
دست و پا زدن 1:
- P2 به برد A1
- S2 به برد A2
دست و پا زدن 2:
- P2 به برد A3
- S2 به برد A4
اکنون اتصالات را با اتصال به رایانه و استفاده از برنامه تست جوی استیک تست کنید. در پنجره ها ، Windows-R ، joy.cpl [enter] ، Stelladaptor را انتخاب کنید ، روی Properties کلیک کنید. پارو 1 باید محور X و اولین دکمه را کنترل کند. پارو 2 باید محور Y و دکمه دوم را کنترل کند.
مرحله 5: مونتاژ نهایی
میکروسوئیچ ها را می توان چسباند (چسب حرارتی این کار را برای من انجام داد) در محل آنها در کنار جعبه دست و پا زدن. درپوش های دکمه را می توان با کمی چسب حرارتی برای ثبات باز کرد.
پتانسیومتر به سوراخ بزرگ بالای جعبه پارو وصل می شود. دستگیره باید روی آن بلغزد و بچسبد. در صورت نیاز سوراخ ها را با مته بزرگ کنید. درپوش پایینی را فشار دهید و در صورت تمایل کمی چسب حرارتی به آن اضافه کنید.
تخته آبی قرص داخل اسلاید PCB قرار می گیرد و سپس به قسمت پایینی جعبه مبدل ، که دارای یک درپوش است که می تواند آن را بپوشاند ، پیچ می شود.
من مقداری Shoe Goo به محل اتصال سیم ها برای محافظت از سیم ها اضافه کردم. و برچسب های "1" و "2" را روی پاروها چسباندم.
مرحله 6: روش های عملکرد
پاروها دارای سه حالت عملکرد هستند. می توانید با فشردن ترکیبی خاص از دکمه ها هنگام اتصال آنها به پورت USB ، حالت کار را تغییر دهید و هنگامی که LED های صفحه چشمک زن متوقف شوند ، آنها را رها کنید. هنگامی که حالت عملکرد را تغییر می دهید ، در حافظه فلش ذخیره می شود و تا زمانی که آن را تغییر دهید باقی می ماند. (بنابراین ، اگر نمی خواهید حالت را تغییر دهید ، هیچ دکمه ای را هنگام اتصال پدل ها به پورت USB فشار ندهید.) در اینجا گزینه ها وجود دارد:
- فقط دکمه پدال چپ: یک جوی استیک دو محوره با دو محور ، با کنترل هر محور و دکمه توسط یک پارو. علاوه بر این ، پاروها به عنوان Stelladaptor ، یک آداپتور USB قطع شده برای کنترلرهای Atari 2600 شناخته می شوند ، بنابراین شبیه سازهای Atari 2600 مانند Stella و Z26 که با Stelladapter سازگار هستند باید کاملاً کار کنند.
- هر دو دکمه پارو زدن: هر پارو یک جوی استیک جداگانه را نشان می دهد. جوی استیک دارای یک دکمه عملیاتی است و چرخاندن پارو ، جوی استیک را به صورت مورب حرکت می دهد ، بنابراین محور X یا Y برای پدال کار می کند.
- فقط دکمه پدال راست: پاروها به صورت ماوس مطلق دو دکمه نشان داده می شوند. اکنون می توانید از این برنامه مشابه Etch-a-Sketch با برنامه طراحی استفاده کنید.
مرحله 7: پنگ
پنگ عالی ترین بازی پارو زدن اصلی بود. من نسخه اصلی را توصیه می کنم ، زیرا کلون ها اغلب شامل همه عملکردهای ظریف و دوست داشتنی نمی شوند ، مانند تغییرات سرعت در تکرار ضربه ، زاویه بسته به قسمتی از پارو که به توپ برخورد می کند ، یا موقعیت دقیق اما به راحتی قابل پیش بینی قابل تغییر نیست. از سرویس بعد از یک خطا برای تجزیه و تحلیل دقیق اصل ، اینجا را ببینید.
اگر رایانه شما به اندازه کافی سریع است که بتواند از آن با سرعت کامل استفاده کند ، یکی از بهترین راه های بازی پنگ استفاده از شبیه ساز سطح DICE است. (لپ تاپ ویندوز من ، اما Raspberry PI 3+ بسیار کند است.) من نسخه 0.8 را توصیه می کنم.
اگر از حالت Stelladaptor در پاروها استفاده می کنید ، به تنظیمات | بروید ورودی ها را … در DICE پیکربندی کنید و Joystick 1 و Absolute را برای Player 1 Paddle انتخاب کنید و هر دو حالت افقی و عمودی را بر روی Joy 1 X-Axis تنظیم کنید. سپس همین کار را برای Player 2 Paddle انجام دهید ، مگر با Y-Axis.
اگر رایانه شما برای DICE بسیار کند است ، من یک نسخه Pygon3+pygame تهیه کردم که زمان و عملکرد آن بسیار نزدیک به Pong اصلی است (من از کمک دکتر هوگو هولدن در این زمینه سپاسگزارم).
توصیه شده:
پرینت سه بعدی Twin Paddle Cw Key (566 گرم.): 21 مرحله (همراه با تصاویر)
کلید پرینتر دوقلو پرینت سه بعدی (566 گرم.): تا کنون داشتن یک کلید دست و پا دوقلو دقیق ، نرم و سنگین به معنای صرف هزینه زیادی است. قصد من هنگام طراحی این کلید انجام یک پارو زدن بود: الف)- ارزان --- از پلاستیک با یک چاپگر سه بعدی استاندارد ساخته شده است)- با دوام --- من از توپ استفاده کرده ام
دستگاه بازی USB USB Controller: 8 مرحله (همراه با تصاویر)
کنترل کننده USB Game Game Machine: برای تشویق ورزش در خود و خانواده ، من یک آداپتور درست کردم که یک آداپتور کنترل کننده بازی USB استاندارد را شبیه سازی می کند اما سرعت حرکت بازی را با رکاب زدن روی یک دستگاه بیضوی یا دوچرخه ورزشی کنترل می کند. مخصوصاً برای بازیهای مسابقه ای خوب است. این سرو
Game Boy Reader Controller: 17 مرحله (همراه با تصاویر)
Game Boy Reader Controller: در این دستورالعمل سعی خواهم کرد نحوه ساخت دستگاه را در بالا توضیح دهم. این دستگاه به عنوان یک کارتریج خوان Game Boy عمل می کند که می تواند ROM را بخواند و RAM بازی Game Boy را بخواند/بنویسد. پس از آن بازی بطور خودکار بوت می شود تا بتوانید آن را در یو بازی کنید
تطبیق یک گوشی تلفن همراه با تلفن همراه: 7 مرحله (همراه با تصاویر)
انطباق یک گوشی تلفن همراه با یک تلفن همراه: توسط بیل ریو ([email protected]) اقتباس شده برای دستورالعمل ها توسط موس ([email protected]) سلب مسئولیت: روش شرح داده شده در اینجا ممکن است برای شما کارساز نباشد گرفتن. اگر کار نمی کند ، یا اگر چیزی را خراب می کنید ، m نیست
NES Controller Shuffle (Nintendo Controller MP3، V3.0): 5 مرحله (همراه با تصاویر)
NES Controller Shuffle (نینتندو کنترلر MP3 ، V3.0): من ryan97128 را به طور کامل بر روی طراحی وی برای Nintendo Controller MP3 ، نسخه 2.0 پاره کردم و می شنوم که او این ایده را از Morte_Moya خردمند دریافت کرده است ، بنابراین نمی توانم اعتبار آن را بدست آورم. همه نبوغ آنها من فقط می خواستم راحتی و شارژ را اضافه کنم