فهرست مطالب:
- مرحله 1: طراحی سخت افزار
- مرحله 2: انتخاب موتورهای مناسب
- مرحله 3: ساختن پایگاه
- مرحله 4: مونتاژ سخت افزار
- مرحله 5: الکترونیک
- مرحله 6: نرم افزار و رابط سریال
- مرحله 7: نتیجه گیری
تصویری: Q -Bot - منبع باز مکعب روبیک: 7 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:52
تصور کنید یک مکعب روبیک مخلوط دارید ، می دانید که این پازل از دهه 80 است که همه دارند ، اما هیچ کس نمی داند چگونه آن را حل کند ، و شما می خواهید آن را به الگوی اصلی خود برگردانید. خوشبختانه این روزها یافتن دستورالعمل های حل بسیار آسان است. بنابراین ، آنلاین شوید و به تماشای یک ویدئو بیاموزید که چگونه می توانید طرف ها را بچرخانید تا شادی شما را به ارمغان بیاورد. با انجام این کار چند بار ، متوجه می شوید که چیزی کم است. حفره ای در داخل که قابل پر شدن نیست. مهندسان/سازنده/هکر درون شما به سادگی نمی توانند از حل چنین چیزی شگفت انگیز به این سادگی راضی باشند. اگر دستگاهی داشته باشید که همه راه حل ها را برای شما انجام دهد شاعرانه تر نخواهد بود؟ اگر شما چیزی ساخته بودید همه دوستان شما از آن شگفت زده می شدند؟ من می توانم به شما اطمینان دهم که خیلی بهتر از تماشای خلقت شما و حل مکعب روبیک نیست. بنابراین ، بیایید و در سفر فوق العاده ساخت Q-Bot ، منبع باز مکعب روبیک با من همراه شوید ، که مطمئناً هیچ رکورد جهانی را شکست نمی دهد ، اما ساعت ها شادی را به شما هدیه می دهد (البته پس از گذر از همه ناامیدی ها) در طول مراحل ساخت).
مرحله 1: طراحی سخت افزار
حل کننده کامل با CAD در Catia طراحی شده است. به این ترتیب می توان بسیاری از خطاهای طراحی را قبل از ساخت هرگونه اجزای فیزیکی پیدا و اصلاح کرد. اکثر حل کننده ها با استفاده از چاپگر prusa MK3 به صورت سه بعدی در PLA چاپ شدند. علاوه بر این ، سخت افزار زیر استفاده شد:
- 8 قطعه میله آلومینیومی 8 میلی متری (طول 10 سانتی متر)
- 8 بلبرینگ خطی (LM8UU)
- کمی کمتر از 2 متر تسمه تایم GT2 6 میلی متری + چند قرقره
- 6 موتور پله ای دو قطبی NEMA 17
- 6 راننده پله Polulu 4988
- Arudino Mega به عنوان کنترل کننده پروژه
- منبع تغذیه 12 ولت 3 آمپر
- یک مبدل گام به گام برای تغذیه ایمن آردوینو
- برخی از پیچ ها و اتصالات
- مقداری تخته سه لا برای پایه
توضیحات سخت افزار
این بخش به طور مختصر نحوه عملکرد Q-Bot و محل استفاده از اجزای فوق را پوشش می دهد. در زیر می توانید یک مدل CAD مونتاژ شده را مشاهده کنید.
Q-bot با چهار موتور متصل مستقیم به مکعب روبیک با گیره های پرینت سه بعدی کار می کند. این بدان معناست که چپ ، راست ، جلو و عقب را می توان مستقیماً چرخاند. در صورت نیاز به چرخاندن قسمت بالا یا پایین ، کل مکعب باید چرخانده شود و بنابراین دو موتور باید دور شوند. این کار با اتصال هر یک از موتورهای گیرنده به سورتمه هایی که توسط یک استپر موتور دیگر و یک تسمه زمان بندی در امتداد یک سیستم راه آهن خطی انجام می شود ، انجام می شود. سیستم ریلی از دو بلبرینگ 8 تایی تشکیل شده است که در حفره های سورتمه نصب شده و کل سورتمه بر روی دو شفت آلومینیومی 8 میلی متری سوار می شود. در زیر می توانید مجموعه فرعی یک محور حل کننده را مشاهده کنید.
محورهای x و y اساساً یکسان هستند و فقط از نظر ارتفاع محل نصب کمربند متفاوت هستند ، این بدان معناست که هنگام مونتاژ کامل بین دو تسمه برخورد نمی شود.
مرحله 2: انتخاب موتورهای مناسب
البته انتخاب موتورهای مناسب در اینجا بسیار مهم است. بخش اصلی این است که آنها باید به اندازه کافی قوی باشند تا بتوانند مکعب روبیک را بچرخانند. تنها مشکلی که در اینجا وجود دارد این است که هیچ سازنده ای از مکعب های روبیک گشتاور نمی دهد. بنابراین ، مجبور شدم بداهه پردازی کنم و اندازه گیری های خودم را انجام دهم.
به طور کلی گشتاور با نیرویی که عمود بر موقعیت نقطه چرخشی در فاصله r هدایت می شود ، تعریف می شود:
بنابراین ، اگر بتوانم به نحوی نیروی وارد شده به مکعب را اندازه گیری کنم ، می توانم گشتاور را محاسبه کنم. کاری که من دقیقاً انجام دادم. من مکعب خود را به قفسه ای محکم کردم که فقط یک طرف بتواند حرکت کند. اینکه یک نخ دور مکعب بسته شده و یک کیسه در قسمت پایین بسته شده است. اکنون تنها کاری که باید بماند این بود که وزن کیسه را به آرامی افزایش دهید تا مکعب بچرخد. به دلیل نداشتن وزنه دقیق ، من از سیب زمینی استفاده کردم و بعد از آن آنها را اندازه گیری کردم. نه علمی ترین روش ، اما چون من در تلاش برای یافتن حداقل گشتاور نیستم ، کاملاً کافی است.
من سه بار اندازه گیری ها را انجام دادم و بالاترین ارزش را فقط برای ایمن نگه داشتم. وزن حاصل 0.52 کیلوگرم بود. اکنون به دلیل سر اسحاق نیوتن می دانیم که نیرو برابر شتاب برابر با جرم است.
در این مورد شتاب ، شتاب گرانشی است. بنابراین گشتاور مورد نیاز توسط داده می شود
اتصال همه مقادیر ، از جمله نیمی از قطر مکعب روبیک ، در نهایت گشتاور مورد نیاز را نشان می دهد.
من از موتورهای پله ای استفاده کردم که می توانند تا 0.4 نیوتن متر استفاده کنند که احتمالاً بیش از حد است ، اما می خواستم ایمن باشم.
مرحله 3: ساختن پایگاه
پایه از یک جعبه چوبی بسیار ساده تشکیل شده است و تمام لوازم الکترونیکی مورد نیاز را در خود جای داده است. دارای یک دوشاخه برای روشن و خاموش کردن دستگاه ، یک LED برای نشان دادن روشن بودن آن ، یک پورت USB B و یک سوکت برای اتصال منبع تغذیه به آن. این با استفاده از تخته سه لا 15 میلی متری ، چند پیچ و کمی چسب ساخته شده است.
مرحله 4: مونتاژ سخت افزار
در حال حاضر با تمام قطعات مورد نیاز ، از جمله پایه ، Q-bot آماده مونتاژ بود. قطعات سفارشی به صورت سه بعدی چاپ شده و در صورت نیاز تنظیم می شوند. شما می توانید تمام فایل های CAD را در انتهای این ible بارگیری کنید. این مجموعه شامل اتصال تمام قطعات چاپ شده سه بعدی با قطعات خریداری شده ، گسترش کابل های موتور و پیچاندن همه قطعات به پایه است. علاوه بر این ، من آستین هایی را در اطراف کابل های موتور قرار دادم تا فقط زیبا به نظر برسم و اتصالات JST را به انتهای آنها اضافه کردم.
برای برجسته کردن اهمیت پایه ای که من ساخته ام ، در اینجا تصویر قبل و بعد از ظاهر مجموعه را مشاهده می کنید. کمی تنظیم کردن همه چیز می تواند تفاوت بزرگی ایجاد کند.
مرحله 5: الکترونیک
در مورد وسایل الکترونیکی ، پروژه نسبتاً ساده است. یک منبع تغذیه اصلی 12 ولت وجود دارد که می تواند تا 3 آمپر جریان دهد که موتورها را تغذیه می کند. یک ماژول گام به گام برای تغذیه ایمن Arduino استفاده می شود و یک سپر سفارشی برای Arduino طراحی شده است که همه رانندگان موتورهای پله ای را در خود جای می دهد. رانندگان کنترل موتورها را بسیار ساده تر می کنند. رانندگی یک موتور پله ای نیاز به یک دنباله کنترلی خاص دارد اما با استفاده از درایورهای موتور ما فقط باید یک پالس بالا برای هر مرحله ای که موتور باید بچرخد ایجاد کنیم. علاوه بر این ، برخی از اتصالات jst به سپر اضافه شده تا اتصال موتورها راحت تر شود. سپر آردوینو به طور ناگهانی بر روی یک تخته ورق ساخته شد و پس از اطمینان از اینکه همه چیز همانطور که تصور می شد کار می کند ، توسط jlc pcb ساخته شده است.
در اینجا قبل و بعد نمونه اولیه و PCB تولید شده است.
مرحله 6: نرم افزار و رابط سریال
Q-Bot به دو قسمت تقسیم می شود. از یک طرف سخت افزاری وجود دارد که توسط آردوینو کنترل می شود ، از طرف دیگر یک نرم افزار وجود دارد که مسیر حل مکعب را بر اساس تقطیر فعلی محاسبه می کند. سیستم عامل در Arduino توسط خودم نوشته شده است ، اما به منظور کوتاه نگه داشتن این راهنما ، من در اینجا در مورد جزئیات آن صحبت نمی کنم. اگر می خواهید به آن نگاه کنید و با آن بازی کنید ، پیوند مخزن git من در انتهای این سند ارائه می شود. نرم افزاری که محلول را محاسبه می کند بر روی دستگاه ویندوز اجرا می شود و توسط یکی از همکاران من نوشته شده است ، پیوندهایی به کد منبع او در انتهای این آی پیل یافت می شود. این دو قسمت با استفاده از یک رابط سریال ساده ارتباط برقرار می کنند. این راه حل را بر اساس الگوریتم دو فاز کوسییمبا محاسبه می کند. نرم افزار حل ، فرمان متشکل از دو بایت را به حل کننده می فرستد و منتظر می ماند تا ACK را برگرداند. به این ترتیب حل کننده را می توان با استفاده از یک مانیتور سریال ساده آزمایش و اشکال زدایی کرد. مجموعه آموزش کامل را می توانید در زیر مشاهده کنید.
دستورات چرخاندن هر موتور برای یک قدم یک راه حل برای مشکلی است که در آن برخی از پله ها به طور تصادفی پرش های کوچکی را هنگام قدرت انجام می دهند. برای جبران این امر ، موتورها را می توان قبل از فرآیند حل در موقعیت اولیه خود تنظیم کرد.
مرحله 7: نتیجه گیری
پس از هشت ماه توسعه ، فحش دادن ، ضربه زدن به صفحه کلید و رقص Q-bot سرانجام در نقطه ای قرار گرفت که اولین مکعب روبیک آن با موفقیت حل شد. مخلوط مکعب باید به صورت دستی در نرم افزار کنترل قرار داده شود ، اما همه چیز به خوبی کار می کند.
من چند هفته بعد یک پایه برای وب کم اضافه کردم و کالج من نرم افزار را تنظیم کرد تا مکعب را به طور خودکار از تصاویر گرفته شده بخواند. با این حال ، این هنوز به خوبی آزمایش نشده است و هنوز به بهبودهایی نیاز دارد.
اگر این دستورالعمل باعث جلب توجه شما شد ، دریغ نکنید و شروع به ساخت نسخه شخصی خود از Q-bot کنید. ممکن است در ابتدا دلهره آور به نظر برسد ، اما ارزش تلاش را دارد و اگر می توانم این کار را انجام دهم ، شما نیز می توانید.
منابع:
کد منبع سیستم عامل:
github.com/Axodarap/QBot_firmware
کد منبع نرم افزار کنترل
github.com/waldhube16/Qbot_SW
توصیه شده:
حل کننده مکعب روبیک در زمان واقعی با استفاده از Raspberry Pi و OpenCV: 4 مرحله
حل کننده مکعب روبیک در زمان واقعی با استفاده از Raspberry Pi و OpenCV: این دومین نسخه از ابزار مکعب روبیک است که برای حل با چشم بسته ساخته شده است. نسخه اول توسط javascript توسعه یافته است ، می توانید پروژه RubiksCubeBlindfolded1 را مشاهده کنید بر خلاف نسخه قبلی ، این نسخه از کتابخانه OpenCV برای تشخیص رنگها و
لامپ مکعب روبیک بی سیم تغییر رنگ آسان مبتنی بر شیب: 10 مرحله (همراه با تصاویر)
لامپ مکعبی روبیک بی سیم تغییر رنگ آسان مبتنی بر شیب: امروز ما قصد داریم این چراغ فوق العاده روبیک مکعبی را بسازیم که بر اساس کدام طرف بالا رنگ آن تغییر می کند. مکعب با یک باتری کوچک LiPo کار می کند که توسط یک کابل استاندارد micro-usb شارژ می شود و در آزمایش من ، عمر باتری آن چند روز است. این
فلش مموری USB کاربردی روبیک مکعب: 7 مرحله (همراه با تصاویر)
فلش درایو USB کاربردی Rubiks Cube: در این آموزش قصد دارم نحوه ساخت USB Flash Drive Rubik خود را به شما نشان دهم. شما می توانید محصول نهایی را در ویدیوی زیر مشاهده کنید:
سپر آردوینو مگا استپر برای حل کننده مکعب روبیک: 4 مرحله
Arduino Mega Stepper Shield for a Rubiks Cube Solver: چندی پیش من روی دستگاهی کار می کردم که به طور خودکار هر مکعب روبیک 3x3 درهم ریخته را حل می کند. می توانید دستورالعمل های آموزشی من را در این مورد در اینجا ببینید. در این پروژه از رانندگان پله ای polulu برای رانندگی شش موتور استفاده شد. به منظور دو اتصال این d
برد باز نئوپیکسل مدولار متن باز نان متن باز: 4 مرحله (همراه با تصاویر)
نورد نئوپیکسل مدولار متن باز نان ورودی: این دستورالعمل در مورد یک تخته شکست کوچک (8 میلی متر در 10 میلی متر) برای LED های Neopixel است که می توانند روی هم چیده و لحیم شوند ، همچنین استحکام ساختاری بیشتری نسبت به یک نازک دارد. نوار LED در شکل بسیار کوچکتری