مقدمة موجزة عن ROS.

CCNA 200-301

CCNA 200-301

CCNP Enterprise

CCNP Enterprise

CCNP Security

CCNP Security

CCIE Enterprise Lab

CCIE Enterprise Lab

CCIE Security Lab

CCIE Security Lab

CCNP Service Provider

CCNP Service Provider

CCNP Data Center

CCNP Data Center

CCNP Collaboration

CCNP Collaboration

CCIE DC Lab

CCIE DC Lab

ic_r
ic_l
مقدمة موجزة عن ROS.
images

ROS هي تقنية حيوية، و SPOTO سأقدمها لكم. SPOTO هي شركة متخصصة في تدريب مختلف الشهادات. فيما يلي ما هي ROS.

1. أصل ROS

نظام ROS هو عبارة عن تعاون بين مشروع مختبر الذكاء الاصطناعي بجامعة ستانفورد لعام 2007 وبرنامج الروبوتات الشخصية لشركة الروبوتات Willow Garage.

تم قيادتها بواسطة Willow Garage بعد عام 2008

في عام 2010، أطلقت شركة Willow Garage نظام التشغيل الروبوتي مفتوح المصدر ROS (نظام تشغيل الروبوت)، وسرعان ما أطلقت موجة من التعلم واستخدام ROS في مجال أبحاث الروبوتات.

2. نظرة عامة على ROS

ROS هو نظام مفتوح المصدر، وهو نظام تشغيل لاحق للروبوتات، أو نظام تشغيل ثانوي.

يوفر وظائف مماثلة لتلك التي يوفرها نظام التشغيل، بما في ذلك الوصف المجرد للأجهزة، وإدارة برامج التشغيل الأساسية، وتنفيذ الوظائف المشتركة، وتمرير الرسائل بين البرامج، وإدارة حزمة توزيع البرامج. كما يوفر أدوات ومكتبات للحصول على برامج متكاملة متعددة الأجهزة وبنائها وكتابتها وتشغيلها، ROS ليس نظام تشغيل تقليديًا مثل Windows وLinux وAndroid

بدلاً من ذلك، يستخدمون أنظمة التشغيل الموجودة. قبل استخدام ROS، تحتاج إلى تثبيت نظام تشغيل توزيع Linux مثل Ubuntu قبل تثبيت ROS. الآن، يدعم نظام التشغيل Win10 أيضًا تثبيت ROS تدريجيًا.

3. الغرض من ROS

الهدف الأساسي هو زيادة إعادة استخدام التعليمات البرمجية في مجال الروبوتات وإنشاء بيئة للتطوير التعاوني للروبوتات على نطاق عالمي.

ROS هو إطار عمل معالجة موزعة (المعروف أيضًا باسم Nodes)

يتيح هذا إمكانية تصميم الملفات القابلة للتنفيذ بشكل منفصل ومقترنة بشكل فضفاض في وقت التشغيل

يمكن تجميع هذه العمليات في حزم ومكدسات لتسهيل مشاركتها وتوزيعها.

يدعم ROS أيضًا نظامًا اتحاديًا لقواعد التعليمات البرمجية التي تتيح توزيع التعاون

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

يمكن تنفيذ كافة الوظائف المذكورة أعلاه بواسطة الأدوات الأساسية لـ ROS.

4. خصائص ROS

هندسة تشغيل ROS: هندسة معالجة لاتصالات الشبكة المرتبطة بشكل فضفاض باستخدام P2P بين الوحدات النمطية باستخدام وحدات اتصال ROS

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

لكن ROS بحد ذاته ليس في الوقت الحقيقي.

عملية موزعة

يستخدم ROS إطار عمل موزعًا

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

يتم برمجته على شكل أصغر وحدة من العملية القابلة للتنفيذ (العقدة Node)، كل عملية تعمل بشكل مستقل وترسل وتستقبل البيانات بشكل عضوي.

إدارة وحدة حزمة الميزات

لأنه يدير عمليات متعددة بنفس الغرض في شكل حزمة ميزات

لذا فمن السهل تطويره واستخدامه، ومن السهل مشاركته وتعديله وإعادة توزيعه

دعم متعدد اللغات

يدعم ROS لغات برمجة متعددة

تعد لغات C++ وPython والمترجمة في ROS أكثر لغات تطوير ROS استخدامًا على نطاق واسع.

تم أيضًا تنفيذ مكتبات اختبار للغات مثل Lisp وC# وJava.

لدعم البرمجة متعددة اللغات، يستخدم ROS لغة تعريف واجهة محايدة للغة لتنفيذ المراسلة بين الوحدات النمطية.

المفهوم الشائع هو أن تنسيق الاتصال في ROS مستقل عن لغة البرمجة التي سيتم كتابتها. فهو يستخدم مجموعة من واجهات الاتصال التي يحددها بنفسه.

مجتمع مفتوح المصدر

لدى ROS مجتمع كبير ROS WIKI

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

علاوة على ذلك، يتوافق ROS مع بروتوكول BSD وهو مجاني تمامًا للتطبيقات والتعديلات الشخصية والتجارية.

5. إصدار ROS

تم إصدار إصدار ROS 1.0 في عام 2010 وتم تطوير سلسلة من الحزم الأساسية المتعلقة بالروبوت استنادًا إلى روبوتات PR2.

تم بعد ذلك تكرار إصدار ROS بشكل متكرر وتم إصداره إلى Melodic.

على الرغم من أن الإصدارات الأكثر استخدامًا هي Kinetic و Indigo، إلا أن الموقع الرسمي (2019.5.20) يوصي الآن بالإصدار Melodic، ولكن بشكل عام، من الممكن أيضًا استخدام إصدارات مختلفة من ترحيل الملفات.