فهرست مطالب:

USB Paddle Game Controller: 7 مرحله (همراه با تصاویر)
USB Paddle Game Controller: 7 مرحله (همراه با تصاویر)

تصویری: USB Paddle Game Controller: 7 مرحله (همراه با تصاویر)

تصویری: USB Paddle Game Controller: 7 مرحله (همراه با تصاویر)
تصویری: 50 Best Electric Bikes for Adults | eBike Gadgets You Need 2024, نوامبر
Anonim
کنترل بازی USB Paddle
کنترل بازی USB Paddle
کنترل بازی USB Paddle
کنترل بازی USB Paddle
کنترل بازی USB Paddle
کنترل بازی USB Paddle

پسرم برای تولدش یک شب بازی های ویدئویی یکپارچهسازی با سیستمعامل داشت و صبح روز تصمیم گرفتم ببینم آیا می توانم با استفاده از چاپگر سه بعدی و وسایل الکترونیکی موجود در من ، یک جفت کنترلر بازی 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: برد و محیط آردوینو را آماده کنید

برد و محیط آردوینو را آماده کنید
برد و محیط آردوینو را آماده کنید
برد و محیط آردوینو را آماده کنید
برد و محیط آردوینو را آماده کنید
  1. شش پین هدر را در وسط تخته stm32f103c8t6 خود لحیم کنید.
  2. مقاومت بین A12 و 3.3V را بررسی کنید. برای سازگاری کامل USB باید 1.5K باشد. بسیاری از تابلوها به جای آن 10K دارند. اگر شما یکی از آنها هستید ، در حالت ایده آل در مقاومت 1.8K از A12 تا 3.3V لحیم می شوید ، اگرچه ممکن است خوش شانس باشید و رایانه های خود را با 10K کار کنید.
  3. یک بوت لودر نصب کنید. دستورالعمل هایی در مرحله 2 این دستورالعمل وجود دارد. نکته ای که باید به آن توجه کنید اندازه فلش گزارش شده توسط STM Demonstrator چقدر است. اگر 32K است ، شما یک stm32f103c8 جعلی دارید که احتمالاً یک stm32f103c6 با نام تجاری دیگر است. این پروژه هنوز باید با آن کار کند ، اما توجه داشته باشید که تخته جعلی را برای گام بعدی در اختیار دارید.
  4. طبق دستورالعمل های مرحله 3 دستورالعمل مورد استفاده در مرحله قبل ، Arduino ، Arduino Zero و Roger را بر اساس کتابخانه نصب کنید. در آن مرحله دستورالعمل های کتابخانه را نادیده بگیرید.
  5. آخرین نسخه کتابخانه USB Composite من را بارگیری کرده و در پوشه Arduino/Libraries خود از حالت فشرده خارج کنید.
  6. اسکچ طرح paddlecontrollers من را بارگیری کرده و در پوشه آردوینو از حالت فشرده خارج کنید.
  7. در آردوینو ، به Tools | بروید تخته | سری عمومی STM32F103C ، مگر اینکه تخته c6 تقلبی داشته باشید ، در این صورت به جای آن Generic STM32F103C6/جعلی STM32F103C8 را انتخاب کنید. اگر مطمئن نیستید که کدام را دارید ، انتخاب گزینه جعلی در واقع ایمن تر است.

مرحله 2: بارگذاری

بارگذاری
بارگذاری

برد را به آداپتور USB رایانه خود وصل کنید ، طرح کنترل paddlecontler را بارگذاری کرده و روی دکمه بارگذاری (پیکان اشاره راست) کلیک کنید. اگر همه چیز خوب پیش رفت ، طرح باید بارگذاری شود و صفحه باید به عنوان یک جوی استیک دو محوره با دو محور به نام "Stelladaptor" در رایانه شما نمایش داده شود. در Windows ، می توانید این را با Windows-R ، joy.cpl [enter] تأیید کنید.

البته ، تا زمانی که بقیه سخت افزار را مونتاژ نکنید ، هیچ کاری انجام نمی دهد.

مرحله 3: چاپ کنید

چاپ
چاپ
  1. فایلهای stl و/یا scad را از صفحه Thingiverse من برای این پروژه بارگیری کنید. لطفاً توجه داشته باشید که دستگیره پارو از اینجا تغییر یافته است.
  2. اگر عرض محفظه میکروسوئیچ شما با 12 میلی متر متفاوت است ، باید پارامتر عرض دکمه را در فایل paddlemain-standalone.scad تنظیم کنید. می توانید این کار را در OpenSCAD یا در Thingiverse Customizer انجام دهید.
  3. ممکن است لازم باشد اندازه ها را در فایل paddleknob.scad تغییر دهید تا پتانسیومتر شما مناسب باشد.
  4. این فایلها را چاپ کنید (فقط یک کپی از فایلهای "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 اصلی است (من از کمک دکتر هوگو هولدن در این زمینه سپاسگزارم).

توصیه شده: