جدول المحتويات:

Q-Bot - حل مكعب روبيك مفتوح المصدر: 7 خطوات (بالصور)
Q-Bot - حل مكعب روبيك مفتوح المصدر: 7 خطوات (بالصور)

فيديو: Q-Bot - حل مكعب روبيك مفتوح المصدر: 7 خطوات (بالصور)

فيديو: Q-Bot - حل مكعب روبيك مفتوح المصدر: 7 خطوات (بالصور)
فيديو: FREE Amazon FBA Course | COMPLETE Step by Step Tutorial For Beginners 2024, ديسمبر
Anonim
Image
Image
صورة
صورة

تخيل أن لديك مكعب روبيك مخلوط ، فأنت تعلم أن اللغز من الثمانينيات يمتلكه الجميع ولكن لا أحد يعرف حقًا كيفية حله ، وتريد إعادته إلى نمطه الأصلي. لحسن الحظ في هذه الأيام ، من السهل جدًا العثور على تعليمات حل. لذا ، ابحث على الإنترنت عن مقطع فيديو وتعرف على كيفية قلب الجوانب لتجلب لك السعادة. بعد القيام بذلك عدة مرات ، ستدرك أن هناك شيئًا مفقودًا. ثقب في الداخل لا يمكن ملؤه. لا يمكن للمهندسين / المُصنِّعين / المخترقين بداخلك الاكتفاء بحل شيء مذهل بهذه الطريقة البسيطة. ألن يكون الأمر أكثر شاعرية إذا كان لديك آلة تقوم بكل الحلول من أجلك؟ إذا كنت قد بنيت شيئًا ما سيدهش جميع أصدقائك؟ يمكنني أن أضمن لك أنه لن يكون أفضل بكثير من مشاهدة إبداعك وهو يفعل العجائب ويحل مكعب روبيك. لذا ، تعال وانضم إلي في الرحلة الرائعة لبناء Q-Bot ، المصدر المفتوح Rubik's Cube Solver الذي بالتأكيد لن يتغلب على أي أرقام قياسية عالمية ، ولكنه سيمنحك ساعات من الفرح (بعد المرور بكل الإحباطات بالطبع أثناء عملية البناء).

الخطوة 1: تصميم الجهاز

تم تصميم الحل الكامل باستخدام CAD في Catia. بهذه الطريقة يمكن العثور على معظم أخطاء التصميم وتصحيحها قبل تصنيع أي مكونات مادية. تمت طباعة معظم الحلول ثلاثية الأبعاد في PLA باستخدام طابعة prusa MK3. بالإضافة إلى ذلك ، تم استخدام الأجهزة التالية:

  • 8 قطع من قضبان الألومنيوم 8 مم (طول 10 سم)
  • 8 محامل كروية خطية (LM8UU)
  • أقل بقليل من 2 متر من حزام توقيت GT2 6 مم + بعض البكرات
  • 6 نيما 17 محرك خطوي ثنائي القطب
  • 6 Polulu 4988 السائقين السائر
  • Arudino Mega بصفته المتحكم في المشروع
  • مصدر طاقة 12 فولت 3 أمبير
  • محول تنحي لتشغيل اردوينو بأمان
  • بعض البراغي والموصلات
  • بعض الخشب الرقائقي للقاعدة

وصف الأجهزة

يغطي هذا القسم بإيجاز كيفية عمل Q-Bot حتى وأين يتم استخدام المكونات المذكورة أعلاه. أدناه يمكنك رؤية عرض لنموذج CAD المجمع بالكامل.

يعمل Q-bot من خلال توصيل أربعة محركات مباشرة بمكعب روبيك مع القابض المطبوعة ثلاثية الأبعاد. هذا يعني أنه يمكن الاستدارة لليسار واليمين والأمام والخلف مباشرة. إذا احتاج الجانب العلوي أو السفلي إلى الدوران ، فيجب تدوير المكعب بالكامل وبالتالي يجب تحريك اثنين من المحركات بعيدًا. يتم ذلك عن طريق ربط كل من محركات الإمساك بزلاجات يقودها محرك متدرج آخر وحزام توقيت على طول نظام السكك الحديدية الخطية. يتكون نظام السكة من محامل 8 كريات مثبتة في تجاويف في الزلاجة وركوب الزلاجة بالكامل على عمودين من الألمنيوم 8 مم. أدناه يمكنك رؤية التجميع الفرعي لمحور واحد للحل.

المحوران السيني والصادي متطابقان بشكل أساسي ، فهما يختلفان فقط في ارتفاع نقطة تثبيت الحزام ، وذلك حتى لا تحدث تصادمات بين الحزامين عند تجميعهما بالكامل.

صورة
صورة

الخطوة الثانية: اختيار المحركات المناسبة

بالطبع ، يعد اختيار المحركات المناسبة أمرًا مهمًا للغاية هنا. الجزء الرئيسي هو أنهم بحاجة إلى أن يكونوا أقوياء بما يكفي ليتمكنوا من قلب مكعب روبيك. المشكلة الوحيدة هنا هي أنه لا يوجد مصنع لمكعبات روبيك يعطي معدل عزم الدوران. لذلك ، كان علي أن أرتجل وأقوم بالقياسات الخاصة بي.

بشكل عام ، يتم تحديد عزم الدوران من خلال القوة الموجهة عموديًا على موضع نقطة الدوران على المسافة r:

صورة
صورة
صورة
صورة

لذا ، إذا تمكنت بطريقة ما من قياس القوة المطبقة على المكعب ، يمكنني حساب عزم الدوران. وهو بالضبط ما فعلته. لقد قمت بتثبيت المكعب الخاص بي على الرف بطريقة يمكن أن يتحرك بها جانب واحد فقط. أن خيطًا تم ربطه حول المكعب وحقيبة مثبتة في الأسفل. الآن كل ما تبقى القيام به هو زيادة الوزن ببطء في الكيس حتى يتحول المكعب. لعدم وجود أي أوزان دقيقة استخدمت البطاطس وقمت بقياسها بعد ذلك. ليست الطريقة الأكثر علمية ولكن لأنني لا أحاول العثور على الحد الأدنى من عزم الدوران فهو كافٍ تمامًا.

صورة
صورة

لقد أجريت القياسات ثلاث مرات وأخذت أعلى قيمة لمجرد أن أكون آمنًا. كان الوزن الناتج 0.52 كجم. الآن بسبب السير إسحاق نيوتن ، نعلم أن القوة تساوي الكتلة مضروبة في التسارع.

صورة
صورة

العجلة ، في هذه الحالة ، هي عجلة الجاذبية. لذلك يتم إعطاء عزم الدوران المطلوب بواسطة

صورة
صورة

إن إدخال جميع القيم ، بما في ذلك نصف القطر لمكعب روبيك ، يكشف أخيرًا عن عزم الدوران المطلوب.

صورة
صورة

لقد استخدمت محركات متدرجة قادرة على تطبيق ما يصل إلى 0.4 نيوتن متر وهو على الأرجح مبالغة ، لكنني أردت أن أكون آمنًا.

الخطوة الثالثة: بناء القاعدة

تتكون القاعدة من صندوق خشبي بسيط للغاية ويحتوي على جميع الأجهزة الإلكترونية المطلوبة. يتميز بمقبس لتشغيل وإيقاف تشغيل الجهاز ، ومصباح LED للإشارة إلى ما إذا كان قيد التشغيل ، ومنفذ USB B ومقبس لتوصيل مزود الطاقة به. تم تشييده باستخدام خشب رقائقي مقاس 15 مم وبعض البراغي وقليلًا من الغراء.

صورة
صورة
صورة
صورة
صورة
صورة
صورة
صورة

الخطوة 4: تجميع الأجهزة

الآن مع جميع الأجزاء المطلوبة ، بما في ذلك القاعدة ، كان Q-bot جاهزًا للتجميع. تمت طباعة الأجزاء المخصصة ثلاثية الأبعاد وتعديلها عند الحاجة. يمكنك تنزيل جميع ملفات CAD في نهاية هذا الملف. تضمن التجميع تركيب جميع الأجزاء المطبوعة ثلاثية الأبعاد مع الأجزاء المشتراة ، وتمديد كبلات المحرك وربط جميع الأجزاء بالقاعدة. بالإضافة إلى ذلك ، أضع الأكمام حول كابلات المحرك ، فقط لإضفاء مظهر أكثر إتقانًا ، وأضفت موصلات JST إلى نهاياتها.

لتسليط الضوء على أهمية القاعدة التي قمت ببنائها ، إليك لقطة قبل وبعد لما بدا عليه التجميع. إن إدارة كل شيء قليلاً يمكن أن يحدث فرقًا كبيرًا.

صورة
صورة
صورة
صورة

الخطوة الخامسة: الإلكترونيات

أما بالنسبة للإلكترونيات ، فإن المشروع بسيط إلى حد ما. يوجد مصدر طاقة رئيسي بجهد 12 فولت ، يمكنه توصيل ما يصل إلى 3 أمبير من التيار ، والذي يعمل على تشغيل المحركات. يتم استخدام وحدة تنحي لتشغيل Arduino بأمان وتم تصميم درع مخصص لـ Arduino يضم جميع سائقي المحركات المتدرجة. يجعل السائقون التحكم في المحركات أسهل بكثير. تتطلب قيادة محرك متدرج تسلسل تحكم محدد ولكن باستخدام محركات المحركات ، نحتاج فقط إلى توليد نبضة عالية لكل خطوة يجب أن يدور المحرك. بالإضافة إلى ذلك ، تمت إضافة بعض موصلات jst إلى الدرع لتسهيل توصيل المحركات. تم بناء درع Arduino بشكل خشن على قطعة من perfboard وبعد التأكد من أن كل شيء يعمل كما كان من المفترض أن يتم تصنيعه بواسطة jlc pcb.

إليك ما قبل وبعد النموذج الأولي وثنائي الفينيل متعدد الكلور المُصنَّع.

صورة
صورة
صورة
صورة

الخطوة 6: البرنامج والواجهة التسلسلية

ينقسم Q-Bot إلى قسمين. من ناحية ، هناك الأجهزة التي يتم التحكم فيها بواسطة Arduino ، ومن ناحية أخرى هناك قطعة من البرامج التي تحسب مسار حل المكعب بناءً على التدافع الحالي. تمت كتابة البرامج الثابتة التي تعمل على Arduino بنفسي ولكن من أجل الحفاظ على هذا الدليل قصيرًا ، لن أخوض في أي تفاصيل عنه هنا. إذا كنت ترغب في إلقاء نظرة عليها والتلاعب بها ، فسيتم توفير الرابط إلى مستودع git الخاص بي في نهاية هذا المستند. يعمل البرنامج الذي يحسب الحل على جهاز windows وقد كتبه زميل لي ، ومرة أخرى يمكن العثور على روابط إلى شفرة المصدر الخاصة به في نهاية هذا الملف. يتواصل الجزءان باستخدام واجهة تسلسلية بسيطة. يقوم بحساب الحل بناءً على خوارزمية Kociemba ذات المرحلتين. يرسل برنامج الحل أمرًا يتكون من وحدتي بايت إلى المحلل وينتظر إعادة "ACK". بهذه الطريقة يمكن اختبار الحل وتصحيحه باستخدام جهاز عرض تسلسلي بسيط. يمكن العثور على مجموعة التعليمات الكاملة أدناه.

صورة
صورة

أوامر تشغيل كل محرك لخطوة واحدة هي حل بديل لمشكلة حيث يقوم بعض السائر بشكل عشوائي بأداء قفزات صغيرة عند زيادة الطاقة. للتعويض عن ذلك ، يمكن تعديل المحركات إلى موضعها الأولي قبل عملية الحل.

الخطوة 7: الخاتمة

بعد ثمانية أشهر من التطوير والشتائم والضرب على لوحة المفاتيح والرقص ، وصل Q-bot أخيرًا إلى نقطة تم فيها حل أول مكعب روبيك بنجاح. كان لابد من إدخال تدافع المكعب يدويًا في برنامج التحكم ، لكن كل شيء سار بشكل جيد.

أضفت حاملًا لكاميرا الويب بعد أسبوعين وعدلت كليتي البرنامج لقراءة المكعب تلقائيًا من الصور الملتقطة. ومع ذلك ، لم يتم اختبار هذا جيدًا بعد ولا يزال بحاجة إلى بعض التحسينات.

صورة
صورة

إذا أثار هذا التوجيه اهتمامك ، فلا تتردد وابدأ في إنشاء نسختك الخاصة جدًا من Q-bot. قد يبدو الأمر شاقًا في البداية ، لكنه يستحق كثيرًا الجهد المبذول وإذا كان بإمكاني القيام بذلك ، يمكنك ذلك.

موارد:

كود المصدر للبرنامج الثابت:

github.com/Axodarap/QBot_firmware

كود المصدر لبرنامج التحكم

github.com/waldhube16/Qbot_SW

موصى به: