مهارات السوفت وير بعالم الروبوت

مقدمة :

أولاً قصتي مع مشكلة برامج الروبوت ….

كيف بدأت المشكلة ؟ ، في 7-2021 طلب مني تقديم برنامج لمجموعة من الطلاب في موضوع الروبوت ، و الحقيقة لم أكن جاهزا ، فاضطررت للبحث المكثف لمدة 3 أشهر تقريبا عن أهم المهارات اللازمة للدخول في مجال الروبوت .
يمكن تقسيم الروبوتات إلى روبوتات مصنعة من مصانع عالمية مثل – كوكا KUKA –  و ايه بيبي ABB –  و فيستو Festo . 
ولها طرق استخدام و برمجة خاصة بكل شركة . ولكن هذه الروبوتات غالية جدا و يصعب العمل عليها و شراءها . في المقابل يوجد مجال تطوير الروبوتات مفتوحة المصدر ، و التي يمكن فيها استخدام أي متحكم إلكتروني و أي محرك و أي قطع سواء صنعتها بالطباعة الثلاثية أو باللحام أو بماكينة السي ان سي أو بالنجارة أو إلخ…

في هذا المقال سألخص خلاصة بحثي في أهم المهارات اللازمة للدخول في مجال تطوير الروبوت مفتوح المصدر من ناحية السوفتوير – و ليس من ناحية التصنيع :

أهم شركات الروبوتيك حول العالم في 2021

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

!  وجب التنويه أن لكل شركة متفردة في طريقة التصنيع والتشغيل وتختلف واجهات التحكم من شركة إلى أخرى

نصيحة !

قبل أن تشتت نفسك في البرامج و البرمجة و الأنواع المختلفة من الروبوتات إذا كنت ستعمل في شركة محددة و هذه الشركة تستخدم روبوتات من شركة محددة ( مثلا ABB) فالأفضل هو التركيز على برامج ABB فقط حتى لا تشتت نفسك بين البرامج المختلفة في الفيديو – برنامج ABB RobotStudio

المهارات والأدوات

1-البرمجة /Coding

تعتبر مهارة البرمجة والتكويد من أهم المهارات التي يجب إتقانها وحتى تمتلك هذه المهارة عليك بالاهتمام بالتفكير المنطقي Logical Thinking (الخوارزميات – والرياضيات – والعمليات الرياضية الهندسية )

ومن أهم لغات البرمجة التي تستخدم  في برمجة الروبوت 

  • C
  • Python
  • ++C
  • Java

كما يجب معرفة البرمجة كائنية التوجه OOP كإنشاء كلاس Class و أوبجيكت Object وبناء الدوال والتوابع.

أما إذا كان الروبوت لتتبع المسار مثلاً فما عليك إلا استخدام  If /else 

2-Git

وهو أداة التحكم وإدارة الكود ويمكنك مشاركة كودك للفريق يعمل كمستودع ومخزن للأكواد  

في هذه الصورة شرح لكيفية عمل Git 

3-المتحكمات الإلكترونية

تعتبر المتحكمات الإلكترونية  الدماغ بالنسبة للروبوت وبالأخص إذا كنت التعامل مع روبوتات مفتوحة المصدر ومن أهم هذه المتحكمات :

ِARDUINO

يستخدم لغة ++c للبرمجة

RASBERRY PI

بإمكانك استخدام لغة Python للبرمجة وأي لغة باعتباره مفتوح المصدر

ُESP32

ESP

بإمكانك استخدام أي لغة للبرمجة باعتباره مفتوح المصدر

JESTON NANO

بإمكانك استخدام إحدى اللغتين إما ++C أو Python باعتباره مفتوح المصدر

4-أنظمة التشغيل

من الأدوات المهمة استخدام نظام تشغيل ملائم لعملية البرمجة ومن أفضل أنظمة التشغيل التي تستخدم هو Ubuntu  فهو المفضل لمطوري الروبوت كونه نظام مفتوح المصدر على عكس ويندوز .

وبالتالي مصادر التعلم للأبونتو أكثر 

ملاحظة: على اعتبار استخدام نظام أبونتو Ubutnu يجب أن تطور مهاراتك في استخدام Command Line  لايكفي استخدام النوافذ أو واجهات البرمجة المبسطة IDE  مثل Pycharm

5-"Command LINE "CMD

على اعتبار استخدام نظام أبونتو Ubutnu يجب أن تطور مهاراتك في استخدام Command Line 

وهي طريقة أصعب في التحكم بالكمبيوتر من الطريقة المعتادة – ففيها لا يتم استخدام الفأرة

لايكفي استخدام النوافذ أو واجهات البرمجة المبسطة IDE  مثل Pycharm.

6- برامج المحاكاة simulation

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

  • Webot : برنامج خفيف ومجاني وسهل الاستخدام.
  • Gazebo: برنامج سهل ومجاني مرتبط مع Ros.
  • RoboDK: برنامج مدفوع تستخدمه وكالة الفضاء الأمريكية NASA يتيح لك التجريب المجاني لأيام محدودة.

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

7--نظام تشغيل الروبوت ROS

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

ملاحظة:يتم تنزيل ROS تلقائياً في أوبونتو 

خبراء عرب يمكنك متابعتهم والتواصل معهم حول موضوع الروبوت :

انتقال إلى الأعلى