فهرست مطالب:

KerbalController: یک کنترل پنل سفارشی برای بازی موشکی برنامه فضایی Kerbal: 11 مرحله (همراه با تصاویر)
KerbalController: یک کنترل پنل سفارشی برای بازی موشکی برنامه فضایی Kerbal: 11 مرحله (همراه با تصاویر)

تصویری: KerbalController: یک کنترل پنل سفارشی برای بازی موشکی برنامه فضایی Kerbal: 11 مرحله (همراه با تصاویر)

تصویری: KerbalController: یک کنترل پنل سفارشی برای بازی موشکی برنامه فضایی Kerbal: 11 مرحله (همراه با تصاویر)
تصویری: KSP Xbox Tutorial: VAB / SPH Controls 2024, جولای
Anonim
KerbalController: یک کنترل پنل سفارشی برای برنامه فضایی Kerbal Rocket Game
KerbalController: یک کنترل پنل سفارشی برای برنامه فضایی Kerbal Rocket Game

چرا یک KerbalController بسازیم؟

خوب ، زیرا فشار دادن دکمه ها و پرتاب سوئیچ های فیزیکی بسیار مهمتر از کلیک روی موس است. به خصوص هنگامی که یک سوئیچ ایمنی قرمز بزرگ است ، جایی که ابتدا باید درپوش را باز کنید ، سوئیچ را تکان دهید تا موشک خود را مسلح کنید ، شمارش معکوس را شروع کنید و 3.. 2.. 1.. ما liftoff داریم!

KerbalController چیست؟

KerbalController ، که به عنوان کنترل پنل ، Simpit (شبیه سازی شده در کابین خلبان) ، DSKY (صفحه کلید صفحه نمایش) یا جوی استیک سفارشی نیز شناخته می شود ، یک دستگاه ورودی سفارشی برای کنترل ساخت موشک و پرواز و پرواز و امیدوارم منفجر نشود. بازی Kerbal Space Space همراه با خروجی اختیاری از بازی ، مانند چراغ های وضعیت ، نمایشگرهای دورسنجی و/یا اندازه گیری سوخت.

این ساختار خاص شامل ورودی هایی مانند چرخش و کنترل ترجمه از طریق جوی استیک ، یک لغزنده دریچه گاز ، تعداد زیادی دکمه با چراغ های وضعیت ، سنج های سوخت LED و یک نمایشگر LCD تله متری با چندین حالت است.

این راهنما شامل همه چیزهایی است که برای ساختن یک نسخه یکسان یا ایجاد تغییرات و بهبود در طول راه ، به نظر خود مناسب است. شامل:

  • یک لیست قطعات
  • نقشه های دیجیتالی آماده برای برش لیزری
  • دستورالعمل سیم کشی
  • کد آردوینو
  • کد افزونه همراه KSP
  • تعداد زیادی عکس

آماده برای پرواز؟ بیا بریم!

مرحله 1: ابزارها

ابزارها
ابزارها

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

ابزار دیگر عبارتند از: سیم برش ، سیم برش ، موچین و چند پیچ گوشتی کوچک.

مرحله 2: قطعات و طرح اولیه

قطعات و طرح اولیه
قطعات و طرح اولیه
قطعات و طرح اولیه
قطعات و طرح اولیه

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

به ترسیم همه قسمتها در اندازه تقریبی آنها و کشیدن آنها در یک برنامه طراحی بردار (مانند Affinity Designer یا Inkscape) یا برنامه طراحی سه بعدی (مانند SketchUp) کمک می کند.

اگر می خواهید ساخت راحت تری داشته باشید ، فقط می توانید کنترلر من را کپی کرده و قطعات ذکر شده در لیست قطعات پیوست را دریافت کنید.

مرحله 3: ایجاد یک نمونه اولیه (اختیاری)

ایجاد نمونه اولیه (اختیاری)
ایجاد نمونه اولیه (اختیاری)
ایجاد نمونه اولیه (اختیاری)
ایجاد نمونه اولیه (اختیاری)

اگر از کنترلر من کپی می کنید ، می توانید این مرحله را رد کنید.

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

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

نکاتی در مورد سیم کشی
نکاتی در مورد سیم کشی
نکاتی در مورد سیم کشی
نکاتی در مورد سیم کشی
نکاتی در مورد سیم کشی
نکاتی در مورد سیم کشی

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

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

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

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

مرحله 5: گرفتن لیزر Faceplate

گرفتن لیزر Faceplate
گرفتن لیزر Faceplate
گرفتن لیزر Faceplate
گرفتن لیزر Faceplate
گرفتن لیزر Faceplate
گرفتن لیزر Faceplate

دستیابی به ظاهری تمیز و حرفه ای هنگام اره و نقاشی با دست بسیار سخت است. خوشبختانه برش لیزری دیگر گران نیست. این امکان را برای شما فراهم می کند تا زمانی که طراحی شما دقیق باشد.

پیوست طراحی صفحه من است ، در قالب های مناسب برای Affinity Designer و سایر برنامه های طراحی بردار مانند InkScape رایگان.

من در هلند در لیختزوارد برش لیزری صورت را انجام دادم. آنها از آن زمان بسته شده اند و فعالیتها توسط Laserbeest انجام شده است ، جایی که من لیزر جعبه را برش داده بودم. هر مغازه ممکن است الزامات متفاوتی برای طراحی داشته باشد ، بنابراین قبل از ارسال با مغازه خود مشورت کنید. آنها تقریباً همیشه کمک طراحی را با نرخ ساعتی ارائه می دهند.

نکات مهمی که باید در نظر داشته باشید:

  • همه چیز باید بر اساس بردار باشد. به همین دلیل لوگو در طرح صفحه من حک نشد. توجه داشته باشید که در طرح های پیوست ثابت نشده است.
  • حتی متن باید بردار باشد. بنابراین آن حروف را به منحنی تبدیل کنید!
  • اندازه گرفتن. اندازه گرفتن. اندازه گرفتن. من نتوانستم اندازه مورد نیاز برای نصب جوی استیک را در نظر بگیرم و مجبور شدم آن را هک کنم. خوب شد خوشبختانه توجه داشته باشید که در طرح های پیوست ثابت شده است.

پس از بررسی کامل همه چیز ، آن را به مغازه لیزر برش ارسال کنید. انتظار دارید 40-50 یورو در هلند بپردازید و روز بعد این نتیجه زیبا را از طریق پست دریافت کنید!

مرحله 6: اتصال دکمه ها و سوئیچ ها

اتصال دکمه ها و سوئیچ ها
اتصال دکمه ها و سوئیچ ها
اتصال دکمه ها و سوئیچ ها
اتصال دکمه ها و سوئیچ ها
اتصال دکمه ها و سوئیچ ها
اتصال دکمه ها و سوئیچ ها

اکثر سوئیچ ها و دکمه ها دارای اتصالات با برچسب C ، NO ، NC ، +، -هستند. در اینجا نحوه اتصال آنها به آردوینو آمده است.

کلید یا دکمه ساده:

  • زمین C (مشترک)
  • پین دیجیتال آردوینو NO (معمولاً باز است)

ما پین دیجیتال را به صورت INPUT_PULLUP پیکربندی می کنیم ، بدین معنی که آردوینو پین را در 5 ولت نگه می دارد و تشخیص می دهد که پین چگونه زمین می خورد و آن را به عنوان یک ورودی در نظر می گیرد. اتصال NO روی سوئیچ یا دکمه معمولاً باز است ، بنابراین مدار متصل نیست. وقتی دکمه را فشار می دهید یا سوئیچ را عوض می کنید ، مدار بسته می شود و پین زمین می خورد.

دکمه فشاری با LED:

قسمت دکمه همان بالا است. برای LED ، سیمهای اضافی را وصل می کنید:

  • زمین - (منفی)
  • پین دیجیتال آردوینو + (مثبت)

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

کلیدهای ایمنی با LED:

اینها کمی متفاوت هستند و اجازه نمی دهند LED را مستقل از موقعیت سوئیچ کنترل کنید. LED همیشه هنگامی روشن می شود که سوئیچ روشن باشد. آنها دارای یک +، - و اتصال سیگنال هستند.

  • زمین - (منفی)
  • 5 ولت + (مثبت)
  • پین دیجیتال آردوینو S (سیگنال)

ما از پین آردوینو در حالت INPUT استفاده می کنیم. هنگامی که سوئیچ روشن است ، LED روشن می شود و پین سیگنال بالا می رود.

مرحله 7: اتصال جوی استیک و LCD

اتصال Joysticks و LCD
اتصال Joysticks و LCD
اتصال جوی استیک و LCD
اتصال جوی استیک و LCD
اتصال Joysticks و LCD
اتصال Joysticks و LCD

LCD

LCD بسیار ساده است. فقط به قدرت ، زمین و سریال نیاز دارد.

  • 5 ولت VDD
  • GND Ground
  • Arduino Tx PIN RX

می توانید از اتصال JST استفاده کنید یا سیمها را مستقیماً به برد بچسبانید.

جوی استیک

جوی استیک ها ممکن است در ابتدا دلهره آور به نظر برسند ، اما اتصال آنها بسیار آسان است. سه محور وجود دارد که به هم متصل هستند. دو مورد از آنها از اتصال دهنده های پایین جوی استیک استفاده می کنند. سومی از سیم استفاده می کند.

  • زمین
  • پین ورودی آنالوگ برف پاک کن آردوینو
  • 5 ولت

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

سیم ها ممکن است رنگ آمیزی متفاوتی روی جوی استیک شما داشته باشند ، اما به طور کلی: دو سیم با رنگ های یکسان برای دکمه بالای صفحه است. قرمز یا نارنجی 5V ، سیاه یا قهوه ای Ground است. سیم باقی مانده برف پاک کن است.

مرحله 8: سنج های سوخت نوار LED

سنج های سوخت نوار LED
سنج های سوخت نوار LED
سنج های سوخت نوار LED
سنج های سوخت نوار LED
سنج های سوخت نوار LED
سنج های سوخت نوار LED

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

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

من در ابتدا آی سی های راننده را با آنها سفارش دادم. آنها عالی کار می کنند! شما می توانید حالت نقطه یا حالت نوار را انتخاب کنید و ولتاژ ورودی آنالوگ به عنوان یک LED واحد (نقطه) یا طیف وسیعی از LED ها (نوار) نمایش داده می شود. اما یک آردوینو ولتاژ آنالوگ را خروجی نمی دهد! و ویژگی PWM که به شما امکان می دهد LED را با شبیه سازی ولتاژ آنالوگ کم کنید ، با این IC های راننده کار نمی کند.

در برنامه 2: تغییر رجیسترها. شما می توانید در هر کیت استارت آردوینو با آنها کار کنید. و می توانید در اینجا درباره آنها بیشتر بدانید:

این برنامه به گونه ای است که سطوح سوخت را به رشته مناسب بیت تبدیل می کند که نشان دهنده سطح سوخت در میله های LED است. با 5 سنج سوخت، تمام سطوح سوخت پر می باید 10000000001000000000100000000010000000001000000000. با monopropellant خالی، آن را تبدیل به: 10000000001000000000100000000010000000000000000001.

به اندازه کافی ساده به نظر می رسد. برخی از عوارض وجود دارد. شیفت رجیسترها دارای 8 پایه هستند ، در حالی که نوارهای LED دارای 10 LED هستند. من از 7 رجیستر شیفت برای دریافت 56 خروجی استفاده می کنم. هنگام وصل کردن آنها ، من یک پین IC را در جایی رد کردم (ما آن را در کد قرار می دهیم). و یک نوار LED را از انتهای دیگر شروع می کنم (ما آن را در کد برطرف می کنیم). اوه و ریاضیات آردوینو که گاهی اوقات به آن احتیاج داریم از حساب نقاط شناور استفاده می کند که باعث خطاهای گرد شدن می شود (این را در کد برطرف می کنیم). توجه داشته باشید که کد را در مرحله بعد به اشتراک می گذارم.

آخرین ساخت من با نمودار سیم کشی پیوست شده مطابقت ندارد ، بنابراین اگر این کنترلر را بازسازی کنید ، برخی از به روز رسانی ها در کد مورد نیاز است. در صورت نیاز به کمک در زیر نظر دهید.

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

نتیجه نهایی: به جای 50 پین دیجیتالی لازم برای تغذیه 5 نوار LED ، به 3 کاهش می یابد: سیگنال ساعت ، سیگنال قفل و سیگنال داده.

مرحله 9: ساختن محوطه

ساخت محوطه
ساخت محوطه
ساخت محوطه
ساخت محوطه
ساخت محوطه
ساخت محوطه
ساخت محوطه
ساخت محوطه

زمان انتقام از آن لوگوها رسیده است!

من لوگوها را به نقاشی های بردار مناسب تبدیل کردم تا به خوبی حک شوند. این بار ، من یک مسئله متفاوت دارم. سوراخ های پیچ برای مونتاژ مناسب جعبه در مکان های مناسب نیستند. من برای جعبه از MDF 6 میلی متری استفاده کردم. متأسفانه پیچاندن میخ به لبه ها باعث تقسیم آنها می شود. من آن را با ضایعات چوب و چسب اضافی هک کردم. چسب زیادی

برای کسانی که با چوب ، چسب و/یا میخ بهتر هستند ، من نسخه ای از طرح ها را بدون سوراخ پیچ به طور کامل پیوست کرده ام.

با وجود مشکلات ، نتیجه نهایی کاملاً نرم است.

مرحله 10: نرم افزار و آزمایش

Image
Image
نرم افزار و تست
نرم افزار و تست

نرم افزار زیر را بارگیری کنید تا کنترل کننده با Kerbal Space Program کار کند:

افزونه KSP:

فایل ZIP افزونه کامپایل شده است. بقیه کد منبع است که می توانید برای اصلاح افزونه و کامپایل نسخه خود استفاده کنید. افزونه را در فهرست GamaData باز کنید.

کد آردوینو:

برای بارگذاری کد بر روی Arduino Mega در کنترلر خود از Arduino IDE استفاده کنید.

به پایین سمت راست Arduino IDE نگاه کنید تا دریابید کنترلر در کدام پورت سریال است (به عنوان مثال /dev/cu.usbmodem1421). فایل config.xml را از فهرست افزونه ها باز کنید و مطمئن شوید که پورت شما پر شده است. حالا شما خوب هستید!

می توانید با قرار دادن کلید روشن/خاموش کوچک سمت چپ در موقعیت ON از حالت اشکال زدایی استفاده کنید. LCD باید یک رشته حروف را نمایش دهد. هر حرف یک دکمه یا سوئیچ را نشان می دهد و وقتی دکمه را فشار می دهید یا سوئیچ را تغییر می دهید بین حروف کوچک و بزرگ جابجا می شود. تنظیم سوئیچ های xyz به Xyz (روشن/خاموش/خاموش) نیز مقدار لغزنده دریچه گاز را نشان می دهد. xYz مقادیر جوی استیک را برای جوی استیک ترجمه (سمت چپ) نمایش می دهد. جوی استیک برای چرخش (راست).

حالت های LCD

با استفاده از کلیدهای x ، y و z می توانید حالت های نمایش زیر را برای نمایش روی LCD انتخاب کنید

حالت TakeOff: سرعت / شتاب سطح (G)

حالت مداری: Apoapsis + زمان تا Apoapsis / Periapsis + زمان Periapsis

حالت مانور: زمان گره مانور بعدی / باقی ماندن Delta-V برای گره بعدی

حالت قرار ملاقات: فاصله تا هدف / سرعت نسبت به هدف

حالت ورود مجدد: درصد بیش از حد گرم شدن (حداکثر) / کاهش سرعت (G)

حالت پرواز: ارتفاع / ماخ شماره

حالت فرود: ارتفاع رادار / سرعت عمودی

حالت اضافی: اجرا نشده است (هنوز)

برای مشاهده حالت های مختلف در حال اجرا ، به فیلم در انتهای دستورالعمل نگاه کنید.

مرحله 11: به ماه

Image
Image
به ماه!
به ماه!

KSP را آتش بزنید ، کشتی مورد علاقه خود را بارگیری کنید ، یا یک کشتی جدید بسازید و بروید!

نکات:

  • از گروه اقدام سفارشی 5 برای نردبان خود استفاده کنید
  • برای پنل های خورشیدی خود از گروه اقدام سفارشی 6 استفاده کنید
  • از گروه اکشن سفارشی 7 برای چتر نجات یا شات های سرکش استفاده کنید
  • سیستم فرار پرتاب و جدا کننده های مناسب را به گروه اقدام Abort اختصاص دهید
  • فراموش نکنید که باید دکمه Staging را مسلح کنید
مسابقه آردوینو 2017
مسابقه آردوینو 2017
مسابقه آردوینو 2017
مسابقه آردوینو 2017

نفر دوم مسابقات آردوینو 2017

اولین مسابقه نویسنده 2018
اولین مسابقه نویسنده 2018
اولین مسابقه نویسنده 2018
اولین مسابقه نویسنده 2018

نفر اول در مسابقه نویسنده اولین بار 2018

توصیه شده: