فهرست مطالب:

کنترل کننده در حال حرکت: 8 مرحله
کنترل کننده در حال حرکت: 8 مرحله

تصویری: کنترل کننده در حال حرکت: 8 مرحله

تصویری: کنترل کننده در حال حرکت: 8 مرحله
تصویری: این ۵ کار را در ماشین دنده اتوماتیک هرگز انجام ندهید 2024, جولای
Anonim
روی کنترلر برو
روی کنترلر برو
روی کنترلر برو
روی کنترلر برو
روی کنترلر برو
روی کنترلر برو

آیا بازی با تلفن هوشمند خود را دوست دارید؟ آیا از بازی با کنترل های لمسی صفحه نمایش لمسی خسته شده اید؟ از فراموش کردن شارژ کنترلر بلوتوث خود متنفر هستید؟ آیا نیاز به استفاده از آن در حال حرکت کابل خریداری کرده اید اما هرگز استفاده نمی کنید؟

چرا کنترل خود را در حال حرکت تهیه نمی کنید؟

من مطمئن هستم که من خیلی دیر به بازی (منظور از کلمات) هستم ، اما اخیراً متوجه شده ام که تلفن هوشمند قدیمی من قادر به انجام بازی های یکپارچهسازی با سیستم شبیه سازی است. با بزرگ شدن ، من از طرفداران بزرگ سیستم های Game Boy بودم و خاطرات خوبی از ساعت ها بازی کردن و خستگی چشم هایم در سواری های طولانی ماشین داشتم که ناامیدانه سعی می کردم قبل از اینکه باتری من تمام شود یا خورشید خیلی فراتر از افق باشد ، نقطه ذخیره را پیدا کنم. صفحه من را ببین حالا می توانم با تلفن بازی کنم و دلتنگ باشم اما با صفحه نمایش خوب و روشن. با تشکر از فناوری!

سلب مسئولیت: شبیه سازی بازی یک موضوع حساس است و در برخی موارد خط دزدی دریایی را از بین می برد. لطفاً خود را آموزش دهید و مسئولیت پذیر بازی کنید!

زمینه:

من تصمیم گرفتم این پروژه را پس از ساخت یک صفحه کلید میانبر دنبال کنم. هنگام یادگیری کتابخانه صفحه کلید آردوینو و ارائه میانبر ، برخی از دکمه های تست را به WASD وصل کردم. بلافاصله با بازی های رایانه ای من شروع به کار کرد و این باعث چرخاندن چرخ ها شد. تقریباً در همان زمان فضای تلفن من برای کتاب های صوتی تمام شد و نحوه استفاده از درایو فلش USB را با تلفن خود بررسی کردم ، زیرا مدل من کارت microSD را مجاز نمی داند. آن زمان بود که با OTG آشنا شدم. OTG از شارژ باتری تلفن شما برای تغذیه دستگاه متصل به آن استفاده می کند. این شامل صفحه کلید ، ماوس و درایوهای فلش است که نام چند مورد از آنها را ذکر می کند. تلفن می تواند دستگاه های 5 ولت را تغذیه کند و حدس بزند میکرو آردوینو برای کار به چه چیزی نیاز دارد؟ مسابقه ای بود که در بهشت ساخته شد.

تدارکات

آردوینو میکرو

تابلوی نمونه اولیه

دکمه های 12 * 6 میلی متری (من از کلیدهای لحظه ای لمسی تخته نان استفاده کردم)

لحیم کاری و لحیم کاری

پرینتر سه بعدی

کابل در حال حرکت (OTG) ؛ من خودم درست کردم

کابل شارژ میکرو USB

مرحله 1: طراحی

طرح
طرح
طرح
طرح
طرح
طرح

من می خواستم کنترلر من قابل حمل باشد و تمام دکمه هایی را که برای بازی کردن تا زمان سوپر نینتندو نیاز دارم ارائه دهد. این بدان معناست که من به 12 دکمه نیاز دارم. چهار مورد برای پد جهت (d-pad) و هشت عدد برای A ، B ، X ، Y ، Start ، Select ، Left Trigger و Right Trigger. من همچنین یک الزام دیگر داشتم که می خواستم متقارن باشد تا بتوانم آن را با یک دست با هر دو دست بازی کنم. این الزامات اضافی ممکن است عجیب به نظر برسد ، اما برای بیان مقدمه ای باید اشاره کنم که اخیراً من مرتباً خود را در حالی که یک نوزاد خوابیده را در آغوش گرفته ام می بینم و فقط در زمان محدود بازی خود از یک دست استفاده می کنم.

با الزامات تعریف شده ، من تصمیم گرفتم کنترلر خود را در CAD طراحی کنم. من شخصاً از OnShape استفاده می کنم اما می دانم که بسیاری از افراد با Fusion360 نیز موفق هستند. من می خواهم فریاد فریادی را برای سایر افرادی که در این سایت طراحی شده اند ، ایجاد کنم. کار سختی است! طرحی که من ارائه دادم بسیار ساده بود اما هنوز ساعت های زیادی طول کشید تا من راضی باشم. حتی وقتی این را تایپ می کنم ، متوجه پیشرفت های زیادی می شوم که می خواهم انجام دهم.

(من قصد دارم که فایلهای.stl را در Thingiverse در مواقع مجاز ارائه دهم. فایلها در آنجا خواهند بود تا بتوانم آنها را بدون بارگذاری مداوم در اینجا به روز کنم.)

مرحله 2: آفرینش خود را چاپ کنید

آفرینش خود را چاپ کنید!
آفرینش خود را چاپ کنید!

من یک چاپگر Ender 3 دارم که فقط چند ماه از آن استفاده می کردم. اگر می خواهید به چاپ سه بعدی بپردازید ، یک چاپگر عالی برای شروع است. تا زمانی که قطعات خود را برای این پروژه اندازه گیری نکردم ، نفهمیدم چقدر بد بود. تا قبل از این پروژه ، من فقط از آن برای چاپ مینی برای بازی روی میز استفاده می کردم. مینی ها عالی بیرون آمدند و من خیلی به ابعاد اهمیتی نمی دادم. قبل از اینکه از نتایج راضی باشم چندین مکعب کالیبراسیون و یک رول جدید از فیلامنت طول کشید.

مرحله 3: آماده سازی برد نمونه اولیه

تابلوی نمونه اولیه خود را آماده کنید
تابلوی نمونه اولیه خود را آماده کنید
تابلوی نمونه اولیه خود را آماده کنید
تابلوی نمونه اولیه خود را آماده کنید

قبل از لحیم کاری دکمه ها روی یک تخته نمونه ، همه دکمه ها را روی یک تخته نان تست کردم و همزمان کد آردوینو خود را آزمایش کردم. در مرحله بعد کد را مرور می کنم.

در حال حاضر بهترین زمان برای کوچک کردن اندازه نمونه اولیه تخته است. از محفظه کنترلر چاپی خود به عنوان راهنما استفاده کرده و دکمه ها را به صورت خشک قرار دهید تا مطمئن شوید همه چیز در یک راستا قرار دارد. من فقط چند تکه سیمی برداشتم و تخته اضافی را جدا کردم و سپس لبه ها را با کاغذ سنباده 150 تکه ماسه کردم.

سیم کشی کنترلر واقعاً ساده است زیرا ما از مقاومتهای کششی داخلی arduino micro استفاده می کنیم. همه دکمه ها به یک ورودی و زمین می روند. دکمه هایی که من استفاده می کنم کلیدهای لحظه ای 6 میلی متری لمسی هستند.

اتصال دکمه ها به آردوینو یک معمای کوچک سرگرم کننده برای حل بود. برخی از دکمه ها زیر آردوینو بودند و قبل از لحیم کاری آردوینو به برد نمونه ، مجبور شدم سیم ها را از زیر آن خارج کنم. اگر با دقت به سمت دکمه صفحه نگاه کنید ، من سمت چپ و راست صفحه راهنما را از دست دادم.

برای طراحی خاص خود ، دکمه های پد جهت بالا و پایین (من دکمه های پد جهت چپ و راست را از دست دادم) به همراه نمونه از سیم های بلند دیگر به تخته نمونه لحیم کردم ، سپس تخته را برانداز کردم و آردوینو را لحیم کردم. من نمودار ندارم زیرا بیشتر دکمه ها را یک به یک به طور تصادفی لحیم می کنم (اگر علاقه کافی باشد ممکن است یکی را بارگذاری کنم). بعد از اینکه آردوینو ایمن شد ، تخته را به طرف دکمه برگرداندم و بقیه دکمه ها و سیم های آنها را لحیم کردم.

مرحله 4: اختیاری: خانه کنترل کننده خود را شکوفا کنید

قبل از مونتاژ نهایی زمان مناسبی برای سنباده زنی ، پر کردن شکاف ها و رنگ آمیزی کنترلر است. من ترجیح دادم این مرحله را برای نمونه اولیه خود کنار بگذارم زیرا می خواستم بلافاصله چیزی برای استفاده داشته باشم. هنگامی که من ناگزیر طراحی خود را به چیزی صیقلی تر تبدیل می کنم ، به آن کار دردناکی را می دهم که شایسته آن است.

مرحله 5: مونتاژ نهایی

مجمع نهایی
مجمع نهایی

اکنون زمان آن است که همه دکمه ها و برد نمونه اولیه خود را در محفظه قرار دهید. من برای طراحی خود از پیچ های ورق فلزی #4-24 x 1/2 استفاده کردم. آنها کار را انجام می دهند اما آنطور که من می خواهم مناسب نیستند.

مرحله 6: آردوینو خود را برنامه ریزی کنید

ممکن است بخواهید این مرحله را زودتر زمانی که هنوز تخته را طراحی می کنید یا بعد از اینکه همه چیز را به نمونه اولیه برد لحیم کرده اید انجام دهید. من فقط دوست دارم این را در بخش مخصوص خود داشته باشم.

کد نسبت به اکثر برنامه های آردوینویی که دیده ام بسیار ساده است. ما فقط باید به هر دکمه یک مقدار صفحه کلید اختصاص دهیم و arduino برای بررسی اینکه چه دکمه هایی فشار داده شده اند حلقه می شود و این اطلاعات را به تلفن ما ارسال می کند.

برای علاقه مندان ، من از برنامه retroArch برای انجام بازی های یکپارچهسازی با سیستمعامل خود استفاده می کنم. کلیدهایی که من استفاده کردم روی طرح صفحه کلید پیش فرض استفاده شده برای retroArch تنظیم شده اند.

#شامل #شامل "Keyboard.h" #NUM_BUTTONS 12 const uint8_t BUTTON_PINS [NUM_BUTTONS] = {2، 3، 4، 5، 6، 7، 8، 9، 10، 11، 12، 13}؛ // a = 'x' // b = 'z' // x = 's' // y = 'a' // شانه چپ = 'q' // شانه راست = 'w' // select = 'rshift '// start =' enter '// up =' key: up '// down =' key: down '// left =' key: left '// right =' key: right 'const char BUTTON_KEYS [NUM_BUTTONS] = {KEY_RETURN ، KEY_DOWN_ARROW ، KEY_UP_ARROW ، KEY_LEFT_ARROW ، KEY_RIGHT_ARROW ، KEY_RIGHT_SHIFT ، 'z' ، 'x' ، 's' ، 'a' ، 'q' ، 'w'} ؛ گزاف گویی * دکمه ها = گزاف گویی جدید [NUM_BUTTONS] ؛ void setup () {for (int i = 0؛ i <NUM_BUTTONS؛ i ++) {buttons .attach (BUTTON_PINS ، INPUT_PULLUP)؛ دکمه ها .interval (25)؛ } // مقداردهی اولیه کنترل روی صفحه کلید: Keyboard.begin ()؛ } void loop () {// بررسی کنید که آیا مقدار (int i = 0؛ i <NUM_BUTTONS؛ i ++) {buttons .update () تغییر کرده است یا خیر. if (دکمه .fell ()) {Keyboard.press (BUTTON_KEYS ) ؛ } if (دکمه .rose ()) {Keyboard.release (BUTTON_KEYS ) ؛ }}}

مرحله 7: بازی های خود را انجام دهید

بازی های خود را انجام دهید!
بازی های خود را انجام دهید!

متناوباً ، این کنترل کننده می تواند با رایانه بدون کابل OTG برای ارسال فشارهای کلیدی یا ماکروها استفاده شود. من همچنین دوستی داشتم که می گفت یک کنترلر شبیه به این می تواند برای کشیدن قرص نیز مفید باشد ، گرچه قبلاً هرگز با یکی از آنها اشتباه نکرده ام.

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

مرحله هشتم: درسهای آموخته شده

CAD:

من هرگز با نرم افزار CAD در گذشته اشتباه نکرده بودم و مجبور بودم در حین حرکت با این طراحی یاد بگیرم. در ابتدا من با طراحی عمودی تری کار کردم که تقریباً مانند Wii Nunchuk در دستان شما قرار می گرفت. دانش محدود من در زمینه طراحی با اشکال ارگانیک ضعف من بود. شاید من باید Intructables را در کلاس طراحی CAD آن بیاموزم.

دکمه ها:

دکمه هایی که من استفاده می کردم بلندتر از آن چیزی بود که من می خواهم (مخصوصاً زمانی که شما سعی می کردید کسی از بیدار شدن جلوگیری کند). می خواهم دکمه های کم صدا تری پیدا کنم. قرار دادن فنر بین دکمه ها و درپوش های دکمه تا حد زیادی باعث ایجاد جلوه بیشتر در ساختمان می شود. دکمه ها برای سلیقه من خیلی شل هستند.

لحیم کاری:

من در لحیم کاری مبتدی هستم و دست های ثابتی ندارم. لحیم کاری همه سیم های ریز در سراسر مکان بیش از آنچه پیش بینی کرده بودم به طول انجامید. اگر مجبور باشم این کار را دوباره انجام دهم ، قطعاً نقشه محل سیم هایم را قبل از گرفتن آهن مشخص می کنم. این می تواند خطاهایی را که پس از چسباندن آردوینو به صفحه نمونه اولیه کشف کردم کاهش دهد و در وقت من صرفه جویی کند.

توصیه شده: