فهرست مطالب:

کنسول دستی با کنترلرها و حسگرهای بی سیم (Arduino MEGA & UNO): 10 مرحله (همراه با تصاویر)
کنسول دستی با کنترلرها و حسگرهای بی سیم (Arduino MEGA & UNO): 10 مرحله (همراه با تصاویر)

تصویری: کنسول دستی با کنترلرها و حسگرهای بی سیم (Arduino MEGA & UNO): 10 مرحله (همراه با تصاویر)

تصویری: کنسول دستی با کنترلرها و حسگرهای بی سیم (Arduino MEGA & UNO): 10 مرحله (همراه با تصاویر)
تصویری: BTT - Manta M4P - TMC2208 with Endstops 2024, جولای
Anonim
Image
Image
صفحه (لمسی) را سیم کشی کنید
صفحه (لمسی) را سیم کشی کنید

آنچه من استفاده کردم

- آردوینو MEGA

- 2 برابر Arduino UNO

- صفحه نمایش لمسی Adafruit 3.5 TFT 320x480 HXD8357D

- زنگ

- بلندگوی 4 اهم 3W

- چراغ LED 5 میلی متری

- Ultimaker 2+ Printer with Black PLA Filament

- لیزر برش با چوب MDF

- رنگ اسپری سیاه (مخصوص چوب)

- 3x گیرنده گیرنده بی سیم nRF24L01+

- دکمه 2x 16 میلی متر

- 2 برابر سنسور فشار

- دارنده باتری 3x 3V

- تخته نان

- صفحه نمایش 2x 0.96 OLED I2C

- سیم - نر - سیم زن

- Solderstation

- چسب فوق العاده

- 2 برابر ماژول لمسی یک کانالی (قرمز/آبی)

مرحله 1: صفحه (لمسی) را سیم کشی کنید

صفحه (لمسی) را سیم کشی کنید
صفحه (لمسی) را سیم کشی کنید
صفحه (لمسی) را سیم کشی کنید
صفحه (لمسی) را سیم کشی کنید

بنابراین ما این کنسول دستی را با دو کنترلر بی سیم می سازیم.

بنابراین ما یک واحد اصلی خواهیم داشت (بزرگترین قسمت ، با صفحه LCD)

واحد اصلی با Arduino MEGA اجرا می شود.

دو کنترلر جداگانه هر کدام یک UNO Arduino را اجرا خواهند کرد.

بعداً آردوینوها را وادار می کنیم تا داده های کنترلر را ارسال کنند.

با سیم بندی صفحه 320x480 درست به واحد صفحه اصلی خود (Arduino MEGA) مانند این آموزش شروع کنید. (Adafruit دارای یک آموزش عالی برای سیم کشی و کد است).

برای صدا ، من یک زنگ و یک بلندگوی 3W 4 اهم را برای جدا کردن پین های دیجیتال و GND سیم کشی کردم.

با تن (پین ، فرکانس ، مدت زمان) ؛ شما می توانید برخی از صداهای اصلی تک صدا را ایجاد کنید.

مرحله 2: با کتابخانه ها آشنا شوید

با کتابخانه ها آشنا شوید
با کتابخانه ها آشنا شوید
با کتابخانه ها آشنا شوید
با کتابخانه ها آشنا شوید

صفحه نمایش Adafruit 320x480 از کتابخانه های Adafruit_GFX و Adafruit_TFTLCD مربوطه پشتیبانی می کند.

مستندات را بخوانید. فکر می کنم آنجا به خوبی توضیح داده شده است.

مطمئن شوید که تنظیمات مناسب را در Arduino IDE قرار داده اید:

ابزارها -> برد -> Arduino/Genuino MEGA یا MEGA 2560

ابزارها -> پورت -> [پورت با "Arduino MEGA" در آن]

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

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

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

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

من از کتابخانه Adafruit_GFX عمدتا از tft.fillRect (x ، y ، عرض ، ارتفاع ، رنگ) استفاده کردم. و tft.print (متن) ؛ کارکرد.

آزمایش کلیدی است.

مرحله 3: یک رابط کاربری گرافیکی / منوی اصلی را طراحی کنید

طراحی رابط کاربری گرافیکی / منوی اصلی
طراحی رابط کاربری گرافیکی / منوی اصلی
طراحی رابط کاربری گرافیکی / منوی اصلی
طراحی رابط کاربری گرافیکی / منوی اصلی

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

باز هم به مستطیل ها فکر کنید. حداقل این کاری است که من کردم.

در اینجا کد من برای UI است

pastebin.com/ubggvcqK

می توانید برای روشنایی صفحه ، لغزنده هایی ایجاد کنید تا پین "Lite" را در صفحه لمسی Adafruit خود از طریق پین آنالوگ کنترل کنید.

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

سیم دو کنترل کننده
سیم دو کنترل کننده
سیم دو کنترل کننده
سیم دو کنترل کننده
سیم دو کنترل کننده
سیم دو کنترل کننده

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

خوب ، بنابراین برای کنترل کننده ها تصمیم گرفتم از موارد زیر استفاده کنم:

- سنسور فشار

- دارای صفحه نمایش OLED

- ماژول لمسی یک کاناله که روشن یا خاموش می شود

- حسگر حرکت (RobotDyn APDS9960)

- گیرنده گیرنده nRFL01 (برای ارتباطات بی سیم)

- یک دکمه فشاری

توجه: سنسور حرکت و OLED هر دو از اتصالات SCL / SDA استفاده می کنند. مدتی طول کشید تا متوجه شوم که آردوینو فقط دو عدد دارد: A4 و A5. اما به سادگی می توانید این موازی را روی تخته نان متصل کنید و خوب کار می کند

مرحله 5: سیم کشی اتصال بی سیم را شروع کنید

سیم کشی اتصال بی سیم را شروع کنید
سیم کشی اتصال بی سیم را شروع کنید
سیم کشی اتصال بی سیم را شروع کنید
سیم کشی اتصال بی سیم را شروع کنید
سیم کشی اتصال بی سیم را شروع کنید
سیم کشی اتصال بی سیم را شروع کنید

سیم کشی ماژول های nRF24L01+ مدتی طول کشید تا کار کنم.

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

برای اینکه چندین آردوینو با یکدیگر ارتباط برقرار کنند ، باید مطمئن شویم که حداقل یکی از UNO ها مانند MEGA کار می کند.

از کنسول سریال MEGA برای چاپ نتایج بدست آمده از UNO استفاده کنید و ببینید آیا کار می کند یا خیر.

اینجا کد است

اینجا کتابخانه است

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

وحشی برو! موارد مختلف را امتحان کنید
وحشی برو! موارد مختلف را امتحان کنید

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

از چه نوع دکمه هایی می خواهید استفاده کنید؟

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

در وب سایت ها بگردید ، علاوه بر دکمه های معمولی "A/B" یا جوی استیک های آنالوگ ، اجزای زیادی خواهید یافت. با انگیزه و انگیزه از آن لذت ببرید!

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

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

توجه: برخی از اجزاء ممکن است برای کارکرد صحیح به پین های SCL / SDA نیاز داشته باشند. و اگر دو یا چند سنسور دارید که هر دو به یک نیاز دارند ، احتمالاً مانند من دچار حمله وحشت خواهید شد. اما لازم نیست نگران باشید

شما می توانید هر دو پین SDA و SCL سنسورها را به صورت سری در یکدیگر قرار دهید و به A4 و A5 بروید و کار خواهد کرد

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

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

هنگامی که ایده خوبی برای سنسورهایی که می خواهید استفاده کنید به دست آوردید ، ایده هایی را برای طرحی که دوست دارید ترسیم کنید.

پس از آن ، وارد برنامه های مدل سازی مانند Blender ، Maya ، Cinema 4D شوید.

من از بلندر برای ایجاد یک مدل (خشن) استفاده کردم.

برای اندازه گیری های واضح در بلندر ، می توانید واحد اندازه شبکه را به میلی متر تغییر دهید.

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

اگر می خواهید مانند من از چاپگر سه بعدی استفاده کنید ، فایل را به صورت.stl صادر کنید.

توجه: اگر در مرحله بعد اندازه دقیق Cura را می خواهید ، باید مقیاس صادرات را روی 0.1 تنظیم کنید

مرحله 8: چاپ سه بعدی محفظه

چاپ سه بعدی محفظه
چاپ سه بعدی محفظه
چاپ سه بعدی محفظه
چاپ سه بعدی محفظه
چاپ سه بعدی محفظه
چاپ سه بعدی محفظه

این مدل با فیلامنت 2.85 میلیمتری Black PLA روی چاپگر Ultimaker 2+ چاپ شد.

CURA را بارگیری کنید

. STL خود را در Cura بارگذاری کنید و به شما نشان می دهد که چقدر طول می کشد.

بسته به اندازه ، چاپ تا 10 ساعت طول می کشد.

با این حال ، برای مدلهای با جزئیات کم می توانید روند را تسریع کنید ، کاری که من انجام دادم.

اینجا تنظیمات من است:

ارتفاع لایه: 0.2

ضخامت دیوار: 0.8

بالا/ضخامت پایین: 0.8

نازل: 0.4

دما: 60 درجه سانتیگراد

جریان: 100

حاشیه: هر جایی که صفحه ساخت را لمس می کنید

تراکم پر شدن: 20

تدریجی: 0

دمای نازل: 220 درجه سانتی گراد

سرعت چاپ: 120٪

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

لحیم کاری و نهایی شدن
لحیم کاری و نهایی شدن
لحیم کاری و نهایی شدن
لحیم کاری و نهایی شدن
لحیم کاری و نهایی شدن
لحیم کاری و نهایی شدن

راه زیادی را پیموده اید.

آخرین مرحله این است که یک تخته ورق / ورود تهیه کنید و اتصالات تخته نان خود را به قسمتی از یک تخته نمونه سازی تبدیل کنید.

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

من برای این کار از دستگاه برش لیزری استفاده کردم.

مهمترین چیز این است که سر و کار داشته باشید ، کارهایی را امتحان کنید که تا به حال انجام نداده اید و از آن لذت ببرید!

امیدوارم این آموزش به اندازه کافی واضح بوده باشد … این یک پروژه بسیار دشوار بود که نتیجه بسیار خوبی به همراه داشت!:)

مرحله 10: پیش نمایش

توصیه شده: