جدول المحتويات:
- الخطوة 1: نظرة عامة على المشروع
- الخطوة 2: المخططات
- الخطوة 3: مخطط تحكم PS2
- الخطوة 4: إعداد اتصال Zio Modules
- الخطوة 5: قم بتوصيل Robotic Arm Servo بوحدة التحكم Zio 16 Servo
- الخطوة 6: قم بتوصيل 16 Servo بـ DC / DC Booster وقم بتعيينها على 6.0V
- الخطوة 7: قم بتوصيل Zuino M Uno بوحدة التحكم Zio 16 Servo
- الخطوة 8: توصيل Uno بجهاز استقبال PS2
- الخطوة 9: كود الذراع الآلية
- الخطوة 10: قم بتشغيل الكود الخاص بك
- الخطوة 11: شرح الكود
فيديو: الذراع الروبوتية مع وحدات Zio الجزء 2: 11 خطوة
2024 مؤلف: John Day | [email protected]. آخر تعديل: 2024-01-30 07:39
في البرنامج التعليمي اليوم ، سوف نستخدم جميع الماكينات الأربع ووحدة تحكم لاسلكية PS2 للتحكم في الذراع الآلية.
منشور المدونة هذا جزء من سلسلة Zio Robotics.
مقدمة
في مدونتنا السابقة ، نشرنا الجزء الأول من البرنامج التعليمي حول كيفية التحكم في الذراع الآلية باستخدام وحدات Zio. ركز الجزء الأول في الغالب على التحكم التلقائي في مخلب الذراع الروبوتية لفتحه وإغلاقه.
في البرنامج التعليمي اليوم ، سنقوم بتحسينه قليلاً من خلال تضمين وحدة تحكم PS2 اللاسلكية للتحكم في الذراع الآلية. بالنسبة لهذا المشروع ، سنستخدم 4 أجهزة.
الخطوة 1: نظرة عامة على المشروع
مستوى الصعوبة:
زيو بادوان
موارد مفيدة:
يجب أن يكون لديك فهم أساسي لكيفية تثبيت لوحات تطوير Zio. في هذا البرنامج التعليمي ، نفترض أن لوحة التطوير الخاصة بك قد تم تكوينها بالفعل وجاهزة للإعداد. إذا لم تكن قد قمت بتهيئة اللوحة الخاصة بك حتى الآن ، فراجع البرنامج التعليمي الخاص بـ Zio Qwiic Start Guide أدناه للبدء:
دليل البدء Zio Zuino M UNO Qwiic
الخطوة 2: المخططات
فيما يلي مخططات الأسلاك الخاصة بمشروع Robotic Arm Part 2 بالإضافة إلى مخطط وحدة التحكم PS2 اللازم لفهم جزء الترميز الخاص بك.
الخطوة 3: مخطط تحكم PS2
الخطوة 4: إعداد اتصال Zio Modules
يوجد أدناه اتصال وحدات Zio التي سيتم إعدادها باستخدام الذراع الروبوتية. يعد توصيل جميع الوحدات معًا أمرًا سهلاً للغاية ولن يستغرق إعداده أكثر من 10 دقائق.
الخطوة 5: قم بتوصيل Robotic Arm Servo بوحدة التحكم Zio 16 Servo
الخطوة 6: قم بتوصيل 16 Servo بـ DC / DC Booster وقم بتعيينها على 6.0V
نحن نستخدم DC / DC Booster لزيادة وضبط جهد إمداد البطارية إلى 6.0.
استخدم مقياس الجهد في DC Booster لضبط الجهد حتى تحصل على 6.0. اضغط على زر In / Out حتى تظهر الشاشة 6.0. تحتاج إلى إمداد الطاقة (بطارية 3.7 فولت) أولاً إلى DC / DC Booster من أجل ضبط الجهد.
الخطوة 7: قم بتوصيل Zuino M Uno بوحدة التحكم Zio 16 Servo
تقوم Qwiic بتوصيل Zuino M Uno بوحدة التحكم Zio Servo باستخدام كابل qwiic.
الخطوة 8: توصيل Uno بجهاز استقبال PS2
هنا رسم تخطيطي للوصلات. أنت بحاجة إلى 5 أسلاك توصيل من الذكور إلى الإناث لهذا الجزء.
الخطوة 9: كود الذراع الآلية
سنستخدم مكتبة PS2 Arduino لترميز وحدة التحكم اللاسلكية PS2 الخاصة بنا للعمل مع الذراع الروبوتية الخاصة بنا. يمكنك العثور على الكود المصدري وتنزيله لمشروع Robotic Arm Part 2 على صفحة Github الخاصة بنا.
قم بتنزيل وتثبيت المكتبات التالية وحفظها في مجلد مكتبات Arduino IDE المحلي:
- مكتبة Adafruit PWM Servo Driver
- مكتبة PS2 Arduino
لتثبيت المكتبات ، افتح Arduino IDE ، انتقل إلى علامة التبويب Sketch ، وحدد Include Library -> Add. Zip Library. حدد المكتبات أعلاه ليتم تضمينها في IDE الخاص بك.
Arduino لديه دليل مفيد حول كيفية تثبيت المكتبات على Arduino IDE الخاص بك. تحقق منها هنا!
الخطوة 10: قم بتشغيل الكود الخاص بك
افتح Arduino IDE. ضمن ملفات> أمثلة> PS2_Arduino_Library ، حدد PS2X_Servo
ملاحظة: قبل أن تتمكن من التحكم في ذراعك الآلي باستخدام وحدة تحكم PS2 ، تحقق من الخطوات التالية: قم بتشغيل وحدة تحكم PS2. تأكد من أن مؤشر LED للوضع يضيء. إذا لم يحدث ذلك ، فاضغط على زر الوضع في وحدة التحكم الخاصة بك. بعد القيام بما ورد أعلاه ، تحتاج إلى الضغط على زر إعادة الضبط في Zuino M Uno لقراءة إعدادات وحدة التحكم الخاصة بك. تحتاج إلى الضغط على L1 وعصا التحكم لتحريك ذراعك الآلي.
- يتحكم ذراع التحكم الأيسر في ثني الذراع لأعلى أو لأسفل
- يتحكم ذراع التحكم الأيمن في المخلب إما لفتح أو إغلاق وتدوير المخلب إلى اليسار أو اليمين.
الخطوة 11: شرح الكود
يعد استخدام مكتبة PS2X Arduino أمرًا بسيطًا ، ولا يتطلب سوى التهيئة والإعداد ثم أمر القراءة.
لتعيين اتصال وحدة تحكم PS2 الخاصة بك باستخدام Uno ، فيما يلي الدبابيس التي تحتاج إلى تحديدها في التعليمات البرمجية الخاصة بك:
/ *************************************************** *************** * مجموعة دبابيس متصلة بوحدة تحكم PS2: * - عمود 1e: أصلي * - 2e colmun: Stef؟ * استبدل الأرقام السرية بالأرقام التي تستخدمها ******************************************** ********************** / # حدد PS2_DAT 13 // 14 # تعريف PS2_CMD 11 // 15 # حدد PS2_SEL 10 // 16 # حدد PS2_CLK 12 // 17
لقد استبدلنا المسامير بالدبابيس التي نستخدمها للاتصال بـ Uno كما هو موضح في الرسم البياني Pin أعلاه.
/ *************************************************** **************** حدد أوضاع وحدة تحكم PS2: * - الضغوط = القراءة التناظرية لأزرار الضغط * - الدمدمة = هدير المحرك * إلغاء التعليق 1 من الخطوط لكل تحديد وضع ** **************************************************** ************ / // # حدد الضغط صحيح # حدد الضغوط خطأ // # عرّف صوابًا # عرّف rumble false
هنا قمنا بتعريف وضع PS2 للضغوط والدمدمة على أنها خاطئة. علقنا على تلك التي لا نستخدمها.
سنستخدم فقط أمر جويستيك ووحدة التحكم L1 للتحكم في حركة ذراعنا الآلية.
حلقة فارغة () {/ * يجب عليك قراءة Gamepad للحصول على قيم جديدة وتعيين قيم الاهتزاز ps2x.read_gamepad (تشغيل / إيقاف محرك صغير ، قوة محرك أكبر من 0-255) إذا لم تقم بتمكين الدمدمة ، استخدم ps2x.read_gamepad () ؛ مع عدم وجود قيم يجب عليك استدعاء هذا مرة واحدة على الأقل في الثانية * / if (خطأ == 1) // حلقة تخطي إذا لم يتم العثور على وحدة تحكم عودة ؛ else {// DualShock Controller ps2x.read_gamepad (false، vibrate)؛ // قراءة وحدة التحكم وتعيين محرك كبير للدوران بسرعة "اهتزاز" إذا كان (ps2x. Button (PSB_START)) // سيكون صحيحًا طالما تم الضغط على الزر Serial.println ("بدء قيد الانتظار") ؛ if (ps2x. Button (PSB_SELECT)) Serial.println ("التحديد قيد الانتظار") ؛ اهتزاز = ps2x. Analog (PSAB_CROSS) ؛ // سيؤدي هذا إلى ضبط سرعة اهتزاز المحرك الكبير بناءً على مدى صعوبة الضغط على الزر الأزرق (X) إذا كان (ps2x. Button (PSB_L1) || ps2x. Button (PSB_R1)) {// قيم عصا الطباعة إذا كان أي منهما TRUE RY_Value = ps2x. Analog (PSS_RY) ؛ RX_Value = ps2x. Analog (PSS_RX) ، LY_Value = ps2x. Analog (PSS_LY) ، LX_Value = ps2x. Analog (PSS_LX) ؛ Serial.print ("Stick Values:") ؛ Serial.print (RX_Value) ؛ Serial.print ("") ؛ Serial.print (RY_Value) ؛ Serial.print ("") ؛ Serial.print (LY_Value) ؛ Serial.print ("") ؛ Serial.println (LX_Value) ؛
الكود أدناه هو المكان الذي نقوم فيه بترميز الماكينات الخاصة بنا التي تتحكم في ذراعنا الروبوتية والتي نقوم بتضمينها في استدعاء الوظيفة تحت ps2x.button (PSB_L1) || زر ps2x (PSB_R1).
تحتاج إلى الضغط على الزر L1 أو R1 جنبًا إلى جنب مع عصا التحكم للتحكم في ذراعك الآلي.
أجهزة التحكم في ذراع التحكم الأيسر 2 و 3 لجزء الذراع - تتحكم في الانحناء لأعلى ولأسفل من الذراع على التوالي ، في حين أن أجهزة التحكم في ذراع التحكم الأيمن 0 و 1 من مخلب الذراع الروبوتية للفتح أو الإغلاق ، والتدوير لليسار أو اليمين.
SERVO 0 ، 1 - مخلب SERVO 2 ، 3 - الذراع
يمكنك إجراء تغييرات على القيم في هذا القسم للتحكم في درجة زاوية ذراعك الآلية:
pulselen0 = map (RY_Value، 0، 127، SERVOMIN0، SERVOMAX0) ؛ pulselen1 = map (RX_Value، 0، 127، SERVOMIN0، SERVOMAX0) ؛ pulselen2 = map (LY_Value، 0، 127، SERVOMIN2، SERVOMAX2) ؛ pulselen3 = map (LX_Value، 0، 255، SERVOMIN3، SERVOMAX3) ؛
موصى به:
الذراع الروبوتية ثلاثية الأبعاد مع محركات السائر التي يتم التحكم فيها عن طريق البلوتوث: 12 خطوة
الذراع الروبوتية ثلاثية الأبعاد مع محركات السائر التي يتم التحكم فيها عن طريق البلوتوث: في هذا البرنامج التعليمي ، سنرى كيفية صنع ذراع روبوتية ثلاثية الأبعاد ، بمحركات 28byj-48 السائر ، ومحرك مؤازر وأجزاء مطبوعة ثلاثية الأبعاد. يتم تضمين لوحة الدوائر المطبوعة وكود المصدر والمخطط الكهربائي وكود المصدر والكثير من المعلومات على موقع الويب الخاص بي
الذراع الروبوتية لعصا المصاصة: 17 خطوة (مع صور)
الذراع الروبوتية لعصا المصاصة: إليك كيفية بناء ذراع آلي بسيط باستخدام أداة إمساك باستخدام عصي المصاصة واردوينو وعدد قليل من الماكينات
الذراع الروبوتية مع وحدات Zio الجزء 3: 4 خطوات
الذراع الروبوتية مع وحدات Zio الجزء 3: منشور المدونة هذا هو جزء من سلسلة Zio Robotics. مقدمة في مدونتنا السابقة ، نشرنا الجزء الأول والثاني من البرنامج التعليمي حول كيفية التحكم في الذراع الآلية باستخدام وحدات Zio. ركز الجزء الأول في الغالب على التحكم التلقائي في مخلب ذراعك الروبوتية لـ
تحكم في ذراع آلية باستخدام وحدات Zio الجزء 1: 8 خطوات
تحكم في ذراع آلية باستخدام Zio Modules الجزء 1: منشور المدونة هذا هو جزء من سلسلة Zio Robotics Series. مقدمة في هذا البرنامج التعليمي ، سنبني مشروعًا حيث سنستخدم وحدات Zio للتحكم في الذراع الآلية. سيعلمك هذا المشروع كيفية جعل مخلب ذراعك الآلي يفتح ويغلق. هذا n
الذراع الروبوتية التي يتم التحكم فيها من Nunchuk (مع Arduino): 14 خطوة (بالصور)
الذراع الآلية التي يتم التحكم فيها من Nunchuk (مع Arduino): الأذرع الروبوتية رائعة! تمتلك المصانع في جميع أنحاء العالم هذه المعدات ، حيث يرسمون ويلحمون ويحملون الأشياء بدقة. يمكن العثور عليها أيضًا في استكشاف الفضاء ، والمركبات التي يتم تشغيلها عن بُعد تحت سطح البحر ، وحتى في التطبيقات الطبية! والآن يمكنك