عروض لقاء ROS الثاني حول المواضيع: Gazebo وأدوات للروبوتات


في 18 أبريل ، سيعقد ROS Meetup التالي عبر الإنترنت ، وسنواصل نشر تسجيلات التقارير من ROS Meetup السابقة ، والتي جرت في 30 نوفمبر 2019 في موسكو وجمعت أكثر من 200 من هواة ROS الذين تبادلوا خبراتهم ومعرفتهم.

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

إذن هيا بنا نذهب!

استخدام محاكي Gazebo في الروبوتات


مؤلف التقرير: Alexander Bogoslovsky


شرائح العروض التقديمية في بعض الأحيان لا يمكن التفاعل مع الروبوت "مباشر" ، وفي هذه الحالة عليك اللجوء إلى المحاكيات. وإذا كان الأمر يتعلق بـ ROS ، فقبل كل شيء إلى محاكي Gazebo ، حيث تم إنشاؤه في الأصل للاستخدام مع ROS. يحمل Gazebo العديد من المسابقات الروبوتية ، بما في ذلك في منظمات بارزة مثل DARPA و NASA. سيساعد هذا المحاكي على تنفيذ أي إنسان آلي تقريبًا ، مثل الروبوت ، والروبوت ذو العجلات ، والمروحية ، والروبوت تحت الماء ، وما إلى ذلك.

يتم إنشاء الروبوتات من أجل Gazebo بتنسيق URDF (تنسيق وصف آلي موحد) - ترميز XML يصف روابط الروبوت ونقاط الاتصال بينهما. نظرًا لأن هذا هو تنسيق عالمي ، وهو ضروري أيضًا لوضع الروبوتات الحقيقية على ROS (على سبيل المثال ، حزم robot_state_publisher و joint_state_publisher) ، لم يكن الغرض منه في الأصل وصف الروبوت بالكامل. لذلك ، عند استيراد نموذج إلى Gazebo ، يتم تحويل تنسيق URDF إلى SDF (تنسيق وصف المحاكاة) ، والذي يمكن أن يحتوي بالفعل على جميع المعلومات اللازمة للنمذجة ، بما في ذلك المواد السطحية واللون وأجهزة الاستشعار وما إلى ذلك. إن عالم المحاكاة ، الذي نضع فيه الروبوت ، لديه بشكل أساسي نفس تنسيق SDF. وامتدادات أسماء هذه الملفات لوصف العالم لها شكل ".world".

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

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

شجرة السلوك كطريقة لتحديد برنامج عمل الروبوت


مؤلف التقرير: Evgeny Safronov

شرائح العرض التقديمي
في كثير من الحالات ، يجب ألا يكون سلوك الروبوت معقدًا ومتنوعًا فحسب ، بل يجب أن يكون متوقعًا قدر الإمكان (يفضل 100٪). تسمح نماذج السلوك الإحصائي القائمة على طرق ML بمحاكاة الإجراءات المعقدة للغاية ، ولكن لا يزال من الصعب ضمان سلامة وشفافية سلوك الروبوت. في مثل هذه الحالات ، يلجأ المهندسون إلى أجهزة الدولة المختلفة. بديل لهم هو أشجار السلوك / BT ، التي جاءت إلى الروبوتات من صناعة الألعاب.

في هذا الفيديو ، سنبدأ بأساسيات شجرة السلوك - ضع في اعتبارك أنواع العقد والأوراق ، وقواعد اجتياز الشجرة (التنفيذ) ، ونحلل النمطين الرئيسيين لإنشاء BT - ضرورة وتفاعلية ، والتأكد من أنه نادرًا ما يتم استخدامها في شكلها النقي. سنناقش ما يمكن أن يكون BT من وجهة نظر التعلم الآلي وكيف يمكن دمج طرق ML في بنية شجرة تم إنشاؤها يدويًا ، وسنرى أن قوالب العقدة ، مثل الفصول في OOP ، تساعد على تغليف السلوك ، وزيادة قابلية قراءة منطق الشجرة وإنشاء مكتبات منفصلة. أخيرًا - نظرة عامة موجزة على الأطر الجاهزة للعمل مع ROS. لا يوجد قائد واضح ، لكل شخص مقاربات مختلفة للعديد من الجوانب الرئيسية ، من دلالات أساسية إلى التفاعل مع ROS. ومع ذلك ، يمكنك الآن تنزيل ومحاولة ربط BT بجهاز الروبوت / جهاز محاكاة!

ماذا في حقيبتك؟ كيفية التعامل مع ملفات الأكياس وعدم غرقها في البيانات


مؤلف التقرير: Oleg Shipitko

شرائح العرض التقديمي
ليس سراً أن ملفات الأكياس هي تنسيق تسجيل البيانات الرئيسي في ROS. معظم المطورين الذين واجهوا ROS مرة واحدة على الأقل يعرفون ما هي ملفات الأكياس وكيفية العمل معها. ومع ذلك ، لم يفكر الجميع في قضايا مثل:
  • كيف ملف الحقيبة داخل؟
  • كيف تقلل من حجمها؟
  • ماذا يمكنني أن أفعل أيضًا بملفات الحقائب بجانب التسجيل والتشغيل؟
  • ماذا أفعل إذا تغير نوع إحدى الرسائل ، لكني لا أريد إخراج جميع الملفات المسجلة مسبقًا؟

الإجابات على هذه الأسئلة وغيرها مكرسة لعرضنا التقديمي.

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

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

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

يمكن استخدام البيانات المسجلة في ملفات الأكياس لاختبار خوارزميات التصنيف المختلفة. في هذه الحالة ، تنشأ مهمة ترميز البيانات - مطابقة مجموعة البيانات مع علامة معينة تحدد الفئة الصحيحة لمجموعة البيانات المحددة. كمثال على أداة لحل هذه المشكلة ، يعتبر التقرير الحزمة rosbag-sliding-windows-annotator ، والتي تسمح لك باستخدام البيانات من المواضيع المرئية كأساس لتعليق البيانات الرقمية. في الوقت نفسه ، يتم تحميل الفئات اللازمة للترميز من ملف json المستخدم ، مما يجعل الحزمة قابلة للتكوين للعديد من مهام الترميز.

عند تخزين عدد كبير من ملفات الأكياس ، تنشأ مهمة العثور بسرعة على ملف يلبي بعض المعايير. بالنسبة إلى الروبوت المحمول ، قد تكون هذه المعايير ، على سبيل المثال ، طقس معين ، أو مسار حركة ، أو وجود / عدم وجود حدث معين في ملف (على سبيل المثال ، شخص يحظر مسار الروبوت) ، إلخ. للبحث بسرعة عن ملف يفي بالمجموعة المطلوبة من المعايير ، يمكن وضع تعليقات توضيحية على الملفات - قم بتعيين كل ملف كمية معينة من المعلومات المضغوطة تحتوي على البيانات اللازمة للبحث السريع. يناقش التقرير نهج التعليق التوضيحي لملفات الحقائب ، المستخدم في شركة "خدمة Visilelect" ، - رسم خرائط لكل صورة ملف حقيبة ، مما يتيح لك عرض ومقارنة المعلومات حول العديد من الملفات بسرعة.

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

استنتاج


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

إذا كنت مهتمًا بتطوير الروبوتات أو الوحدات الروبوتية أو مكونات البرامج ، إذا كنت ترغب في إظهار التطورات الخاصة بك أو مجرد الدردشة مع أشخاص متشابهين في التفكير ، فمرحبًا بك في ROS Meetup القادم ، والذي سيعقد في 18 أبريل بتنسيق عبر الإنترنت !

All Articles