شرح الموضوع
مبادئ البرمجة والتنفيذ
لقد رأينا كيف يمكن تخصيص الروبوتات الصناعية، والاستخدامات التي يمكنها تحقيقها، وأنها تتكون من عدة أجزاء. ولم نتناول بعد كيف يعرف الروبوت ما يحتاج إلى فعله. وهذا هو الجانب الذي يجب أن تُنفذ فيه "برمجة" الروبوت.
البرمجة بالتوجيه اليدوي
كجزء من نظام الروبوت الصناعي، إلى جانب الروبوت نفسه ووحدة التحكم في الروبوت، ستكون هناك وحدة تلقين محمولة.
وهي عبارة عن جهاز محمول باليد، متصل سلكيًا بوحدة تحكم الروبوت، ما يسمح لمشغل الروبوت ببرمجة مواضع الروبوت وتصرفاته وسرعاته مع رؤية الروبوت أو، في حالات معينة، مع الروبوت. وتتكون من شاشة ولوحة مفاتيح وعصا تحكم (أو مفاتيح الأسهم) وبعض خصائص الأمان التي سنتناولها لاحقًا.
لا يلمس المشغل الروبوت، بل يمكنه بدلًا من ذلك "التحريك التدريجي" للروبوت بزيادات صغيرة باستخدام المفاتيح أو عصا التحكم في وحدة التلقين المحمولة. يمكن بعد ذلك تخزين هذه المواضع في ذاكرة الروبوت والإشارة إليها داخل برنامج الروبوت نفسه.
وتسمح وحدة التلقين المحمولة للمستخدم بتسجيل هذه المواضع وتشغيلها بالتتابع لاختبار العمليات الصغيرة بمعزل عن غيرها لتحسين تشغيلها. بهذه الطريقة، يُسمح للروبوت بالعمل بشكل مستقل في أثناء وجود المشغل في مساحة العمل الخاصة به. ومع ذلك، في وضع "التلقين"، في سيقتصر الروبوت على التشغيل بسرعة منخفضة جدًا.
نظرًا لأن المشغل قد يكون في مساحة عمل الروبوت، فإن وحدة التلقين المحمولة تتوافر مجهزة بجهازي أمان. يوجد جهاز التمكين وزر التوقف في حالات الطوارئ (e-stop). ويمكن الضغط على هذا في أي وقت لإيقاف الروبوت على الفور، وإذا لزم الأمر، قم بتنشيط مكابح مفاصل الروبوت لضمان عدم "تراخي" الذراع أو إفلات القوابض لقطعة العمل. غالبًا ما يلزم هذا عند تلقين الروبوت، حيث قد لا تكون الحركة الناتجة في بعض الأحيان على النحو المتوقع.
إن الكتابة بالإحداثيات الدقيقة أو استخدام حركات تدريجية صغيرة لمحاذاة الروبوت بدقة مع هدفه تجعل برمجة وحدة التلقين المحمولة خيارًا شائعًا لمهام البرمجة الصغيرة.
يوضح الشكل 56.9 أدناه شاشة التحريك في وحدة التلقين المحمولة "ABB FlexPendant". يمكننا أن نرى أن الروبوت يتحرك حاليًا في حركة مفصلية، حيث تعطي نافذة "الموضع" مواضع المحاور بالدرجات.
تعرض الشاشة المحاور التي يتم تحريكها (المحاور 1-3). حيث ستُحرّك بواسطة عصا التحكم في وحدة التلقين المحمولة، وستظهر نافذة "اتجاهات عصا التحكم" كيفية تحرك المحاور باستخدام أوامر عصا التحكم.
سيودي تحريك عصا التحكم عموديًا لأعلى ولأسفل إلى تحريك المحور 2. سيودي تحريك عصا التحكم أفقيًا إلى اليسار واليمين إلى تحريك المحور 1. سيودي تدوير (لف) عصا التحكم في اتجاه عقارب الساعة وعكس اتجاه عقارب الساعة إلى تحريك المحور 3.
المصطلحات الرئيسة
- التحريك التدريجي - تطبيق حركة صغيرة تدريجية على الروبوت. تُستخدم لنقل الطرف العامل إلى الموضع المطلوب في ظروف خاضعة للرقابة بخطوات صغيرة.
المهارة
- التوجيه الذاتي
الوحدة 56 الروبوتات الصناعية
يوضح الشكل 56.8 أدناه شاشة التحريك في وضع الحركة الخطية.
سيؤدي تشغيل الروبوت الآن إلى تحريك نقطة مركز الأدوات باستخدام إحداثيات ثلاثية الأبعاد، وستتحرك جميع المحاور وفقًا لذلك لتحقيق حركة نقطة مركز الأدوات المطلوبة.
تعرض نافذة الموضع الآن نقطة مركز الأدوات من حيث المليمترات في كل محور.
لاحظ أنه لا يمكن استخدام الروبوت للإنتاج في أثناء تعليمه باستخدام وحدة التلقين المحمولة. هذا مثال على البرمجة "داخل بيئة الإنتاج".


الجدول 56.6 برمجة وحدة التلقين المحمولة
| المزايا | العيوب |
|---|---|
| يمكن محاذاة الروبوت بدقة باستخدام زيادات موضعية صغيرة. | قد يكون من الصعب العمل مع الروبوتات الكبيرة. |
| تتطلب القليل من الخبرة في البرمجة المتخصصة لتحقيق ذلك. | تعطل خط الإنتاج في أثناء برمجة الروبوت. |
| يمكن اختبار الإجراءات الروتينية أو المهام الفرعية بسرعة منخفضة قبل التنفيذ بأقصى سرعة لضمان الدقة والسلامة. | يمكن أن تكون البرمجة بطيئة إذا كانت الحركات الصغيرة المتكررة مطلوبة للدقة. |
البرمجة بالتوجيه اليدوي
هذه طريقة برمجة يوجه فيها المشغل الروبوت يدويًا من خلال المواضع والإجراءات التي يرغب في أن ينفذها الروبوت. ويقوم الروبوت "بحفظها" عن طريق كتابة المواضع في ذاكرة الحاسوب الموجودة في وحدة التحكم. وبعد ذلك يعيد الروبوت إنتاج هذه الإجراءات تلقائيًا وبشكل متكرر تمامًا، ما يسمح له بمحاكاة عمل المشغل البشري.
غالبًا ما تُستخدم هذه الطريقة عندما تكون تصرفات الإنسان معقدة ومحددة لتطبيق معين، على سبيل المثال رش الطلاء أو تلميع الأسطح.
بخلاف هذه الأنواع من المهام، فإن نقص الدقة الصحيحة والمخاطر المحتملة لنقل الروبوتات الكبيرة يدويًا يعني أن البرمجة بالتوجيه اليدوي أصبحت الآن أكثر شيوعًا عند العمل مع الكوبوتس.
وعلى غرار البرمجة باستخدام وحدة التلقين المحمولة، لا يمكن استخدام الروبوت للإنتاج في أثناء التعليم، وبالتالي فهي أيضًا طريقة برمجة داخل بيئة الإنتاج.
الجدول 56.7 البرمجة بالتوجيه اليدوي
| المزايا | العيوب |
|---|---|
| سيحاكي الروبوت بدقة تصرفات المشغل البشري. | يصعب توجيه الروبوتات الكبيرة يدويًا ويمكن أن يكون نقلها خطيرًا. |
| لا تتطلب خبرة برمجة متخصصة لتحقيق ذلك. | تعطل خط الإنتاج في أثناء برمجة الروبوت. |
| يمكن أن تكون طريقة البرمجة هذه أسرع بعد التوجيه اليدوي للروبوت خلال العملية. | سيعيد الروبوت أي أخطاء طفيفة تحدث في التشغيل اليدوي للروبوت خلال التوجيه اليدوي. |
البرمجة خارج بيئة الإنتاج
لقد رأينا بالفعل أنه يمكن استخدام بيئة التطوير المتكاملة لمحاكاة الروبوت. وتسمح طريقة البرمجة هذه خارج بيئة الإنتاج ببرمجة الروبوتات بعيدًا عن خط الإنتاج، مع إنشاء الكود المطلوب على نظام منفصل، ثم تنزيله إلى الروبوت بعد إنجازه. هنا يجب أن يكون الروبوت خارج الخدمة لفترة قصيرة فقط في أثناء تحميل برمجته الجديدة.
الجدول 56.8 البرمجة خارج بيئة الإنتاج
| المزايا | العيوب |
|---|---|
| يمكن أن تتم البرمجة دون أي توقف في الإنتاج، ما يتيح الوقت لتحسين العملية. | التدريب ضروري لتعلم تقنيات البرمجة خارج بيئة الإنتاج. |
| يمكن محاكاة العمليات المعقدة باستخدام روبوتات متعددة واختبار كيفية تفاعل الروبوتات مع بعضها ومع البيئة المحيطة بها. | قد يكون من الصعب تصور العمليات دون الوجود فعليًا في مساحة عمل الروبوت. |
| البرمجة آمنة تمامًا. يمكن رؤية أي تصادم للروبوتات أو حالات الخطأ الوشيك افتراضيًا وتجنبها قبل الانتقال إلى النظام الحقيقي. | يلزم توفير معدات حاسوب إضافية وبرامج وتراخيص مرتبطة بها. |
| يمكن للعملاء "اعتماد" تشغيل الروبوت قبل الاضطرار إلى رؤيته في الحياة الواقعية. يمكن القيام بذلك عن بُعد لأمر. | |
| يمكن محاكاة الروبوتات الكبيرة أو قطع العمل الكبيرة أو كليهما، ما يقلل أي مواقف خطيرة قد تحدث مع طرق البرمجة داخل بيئة الإنتاج. | |
| يمكن محاكاة الحلول المختلفة للوصول إلى الحل الصحيح. على سبيل المثال، يمكن تجربة عدد من أنواع الروبوتات المختلفة التي لا يمكن تجربتها بأي طريقة أخرى غير المحاكاة. |
وقفة للتفكير
هل يمكنك شرح الاختلافات الرئيسة بين البرمجة داخل بيئة الإنتاج والبرمجة خارج بيئة الإنتاج؟
تلميح: دون النظر إلى الكتاب المدرسي، أعد قائمة بمزايا وعيوب البرمجة داخل بيئة الإنتاج والبرمجة خارج بيئة الإنتاج.
توسيع الأفق: ما المعدات والتدريب الذي يحتاج إليه المبرمج في كل طريقة من طرق برمجة الروبوت؟ كيف يؤثر ذلك في قرار الاستخدام؟
تصميم البرامج من موجز
قبل أن تتم البرمجة الفعلية، من المهم فهم ما هو مطلوب من البرنامج تحقيقه. ولتحقيق ذلك، نحتاج إلى فهم طبيعة المشكلة التي يُطلب منا حلها باستخدام روبوت صناعي. عادةً ما يأخذ هذا شكل "موجز العميل"، حيث يكون الشخص الذي يطلب منك حل المشكلة، ويجب أن يتضمن الموجز جميع المعلومات التي تحتاجها لفهم ماهية المشكلة.
من الضروري فهم موجز العميل قبل البدء في العمل. قد يشمل ذلك طرح أسئلة متكررة على العميل لتوضيح أي نقاط غير واضحة على الفور.
مواصفات التصميم
بعد فهم موجز العميل، يمكن إنشاء مواصفات التصميم. ويتطلب هذا تحديد نطاق المشروع: هذا هو ما يشمله الحل المقترح.
إن تحديد نطاق المشروع مقدمًا يساعد مطور البرامج على البقاء على المسار الصحيح وتجنب "الحيود عن النطاق". وهذا يعني إضافة ميزات، غير مطلوبة في البداية، والتي من المحتمل أن تؤخر إنجاز الحل.
يجب أن تتضمن مواصفات التصميم جميع مدخلات النظام (على سبيل المثال مدخلات المستشعر أو نتائج نظام الرؤية أو مدخلات المستخدم) والمخرجات من النظام (على سبيل المثال إشارات الطرف العامل أو المصابيح أو الصفارات). لاحظ أن الإشارات للروبوت فعليًا لتحريك الروبوت فعليًا وإشارات التغذية الراجعة الموضعية المرتبطة بها يُفترض أنها متأصلة في عملية الروبوت؛ بحيث لا يلزم إدراجها بشكل منفصل.
من المهم أيضًا تحديد نوع الروبوت الذي سيُستخدم، حيث سيؤدي ذلك إلى توجيه عملية تطوير البرنامج إضافة إلى لغة البرمجة التي ستُستخدم.
المهارات
- التفسير
الوحدة 56 الروبوتات الصناعية
إلى جانب التشغيل الكامل للحل، من المهم الاتفاق على جدول زمني. عادةً باستخدام التشغيل الآلي، سيضغط العميل للإنجاز المبكر حتى يتمكن من بدء الإنتاج. والأمر متروك لمطور البرامج (ومثبت الأجهزة في حالة وجود أجهزة جديدة أو إضافية ستُثبّت، على سبيل المثال الروبوت الجديد أو أداة نهاية الذراع الجديدة) لعدم الرضوخ للضغط وتحديد تاريخ إنجاز واقعي. قد يؤدي إغراء الموافقة على تاريخ إنجاز مبكر إلى أخطاء في البرمجة وعدم وجود اختبار شامل، ما يؤدي إلى تعطل الروبوت وفقدان سمعة المورد.
يوجد عدد من الطرق لبرمجة الروبوتات، والتي سنتناولها لاحقًا. ومع ذلك، قبل كتابة أي كود فعليًا، من الجيد أن تبدأ في تصميم البرنامج على الورق حيث يمكن القيام بذلك حتى لو لم يكن نوع الروبوت معروفًا بعد لأنه ليس خاصًا بأي لغة برمجة.
طريقتان لتحقيق ذلك هما: المخطط الانسيابي أو باستخدام اللغة الإنجليزية المهيكلة (المعروفة أيضًا باسم الكود الزائف).

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

While the bottle is not full
Turn on the filling output
Turn off the filling output
اعتبارات السلامة
يجب مراعاة جانب السلامة في التشغيل النهائي وذلك في كل مرحلة من مراحل تطوير برنامج الروبوت.
لقد رأينا بالفعل كيف يراعي تصميم مساحة العمل سلامة المشغل، إلى جانب تضمين مكونات الأجهزة الخاصة بالسلامة (ستائر الضوء وحصائر استشعار الضغط وما إلى ذلك). ومع ذلك، من المهم أيضًا التأكد من أن برنامج الروبوت يعمل بطريقة آمنة. على سبيل المثال، سيكون من الضروري أن يتحرك الروبوت بسرعة معينة لأداء المهمة المطلوبة بكفاءة. ومع ذلك، من المهم عدم تحريك الروبوت بسرعة كبيرة لأن ذلك قد يتسبب في عدم استقرار أي عنصر يحمله؛ إما في أثناء تحرك الروبوت أو في أثناء تسارعه أو تباطؤه.
المهارات
- التواصل
- حل المشكلات
فكّر مليًا
تتطلب عملية تصميم أي تطبيق تخطيطًا مكثفًا، لا سيما في مجال تحديد متطلبات العميل وتحليلها وفهم تعقيدات لغة البرمجة المختارة.
رغم أنه من المغري البدء الفوري في برمجة الروبوت، إلا أن التخطيط المسبق والمحكم يؤدي إلى توفير الوقت والجهد على المدى الطويل عن طريق وقوع أي مشكلات أو مسائل تتطلب عناية خاصة.
ويمكنك أيضًا مشاركة تصميم البرنامج مع العميل قبل بدء البرمجة، وذلك لإتاحة الفرصة له لإبداء ملاحظات يمكن أن تسترشد بها في عملية البرمجة، ما يمنحك الثقة في أن الحل النهائي سيلبي احتياجاته.
يعزز التسجيل الدقيق والشامل لمراحل التصميم القدرة على حل المشكلات من خلال توفير أساس جيد لبدء البرمجة الفعالة.
الوحدة 56 الروبوتات الصناعية
يمكنك البدء في برمجة الروبوت بعد فهم موجز العميل، وكتابة مواصفات التصميم وتصميم البرنامج من خلال مخطط انسيابي أو لغة إنجليزية مهيكلة. ويوجد عدد من الطرق التي يمكن من خلالها تنفيذ برمجة الروبوت.
كتابة البرامج
سواء استُخدمت البرمجة داخل بيئة الإنتاج أو البرمجة خارج بيئة الإنتاج، فإن النتيجة النهائية هي إنشاء أسطر من الكود التي يمكن لوحدة التحكم في الروبوت تفسيرها لتشغيل الروبوت حسب الرغبة. ومن أجل أن تكون أسطر الكود هذه قابلة للقراءة من قبل البشر، فقد طُوّرت لغات برمجة الروبوت. لا يوجد حاليًا معيار للغات برمجة الروبوت، ونتيجة لذلك طورت كل شركة روبوتات لغتها الخاصة.
تستخدم "ايه بي بي روبوتكس" لغة برمجة تسمى "RAPID". وتستخدم "فانوك" لغة تُسمى "TP"، بينما يُطلق على لغة "كوماو" اسم "PDL2". وفي حين أن هذه اللغات تختلف في الصياغة الدقيقة، فهي تشترك جميعها في المبادئ المشتركة للغات البرمجة عالية المستوى، وسيكون أي شخص على دراية بهذه المبادئ قادرًا على برمجة معظم الروبوتات بمجرد تحديد الاختلافات بين الأوامر نفسها.
من أجل توضيح تنوع الأوامر داخل لغة الروبوت والممارسات الجيدة التي يجب الالتزام بها، ستستخدم لغة ايه بي بي 'RAPID'، على سبيل المثال مقتطفات الكود.
تُعرف لغات الروبوت باللغات عالية المستوى، وهو مصطلح يُستخدم في جميع برمجة الحاسوب. ويشير هذا إلى حقيقة أن اللغة تتكون من صيغة يمكن للبشر قراءتها، على عكس نظام الأرقام أو "الأحاد والأصفار"، المعروف باسم النظام الثنائي. بعد كتابة الكود عالي المستوى، فإنه يُجمع في كود منخفض المستوى حتى يتمكن الحاسوب من فهمه.
وعلى غرار اللغات الأخرى عالية المستوى، تدعم برمجة الروبوت استخدام كلمات الأوامر والثوابت والمتغيرات وأنواع البيانات والعبارات والعمليات المنطقية وتعليمات تدفق البرنامج.
كلمات الأوامر هي كلمات محجوزة داخل لغة البرمجة لتطلب إجراءً معينًا. سنرى أمثلة لاحقة مثل MOVEJ و SET و WAITDI. لا يمكن استخدام هذه الكلمات لأغراض أخرى داخل الكود.
تُمثل المعرفات كمية مخزنة داخل ذاكرة الحاسوب. ويمكن أن تكون هذه ثوابت (قيم لن تتغير في أثناء تشغيل البرنامج)، أو متغيرات (قيم قد تتغير في أي وقت).
تحدد أنواع البيانات نوع القيمة التي يمكن تخزينها في المعرف. أنواع البيانات الشائعة هي الأعداد الصحيحة (الأرقام الكاملة) والنقطة العائمة (الأرقام ذات المنازل العشرية) والسلسلة (مجموعة من الأحرف القابلة للقراءة) والقيمة المنطقية (قيمة يمكن أن تكون صحيحة أو خاطئة فقط).
العبارات هي الجانب الأساسي للغة البرمجة لأنها تحدد الإجراءات الأساسية التي يمكن تنفيذها. سنرى أمثلة على العبارات مثل تعليمات الحركة وتعليمات الدخل / الخرج وما إلى ذلك.
تُدمج العمليات المنطقية مثل AND و OR و NOT مع عبارات القرار، مثل IF و WHILE، للسماح باتخاذ القرار بناءً على عوامل مختلفة.
الروتينات الفرعية والدوال والإجراءات هي المصطلحات المستخدمة عند تقسيم الكود إلى عدد من الوحدات المختلفة. حيث يسمح هذا بكتابة إجراءات معينة في شكل وحدات مستقلة واختبارها على هذا النحو. ويسمح أيضًا بكتابة الإجراءات المتكررة مرة واحدة ثم استدعاؤها عدة مرات، بدلًا من الاضطرار إلى كتابة الإجراء مرة أخرى في كل مرة تكون هناك حاجة إليها.
التعليقات هي طريقة يقوم بها المبرمج بإضافة شروح على الكود للسماح للآخرين بفهم دالة سطر الكود أو الروتين بالضبط. من المهم أن تتذكر أن الشخص الذي يكتب الكود الأصلي قد لا يكون هو الشخص نفسه
الوحدة 56 الروبوتات الصناعية
الذي يعمل عليه لاحقًا. وقد يُطلب من المبرمجين أو الفنيين الآخرين إجراء تعديلات أو إضافات على الكود في المستقبل، لذلك، سيساعد التعليق على الكود على القيام بذلك.

أوامر الحركة
من أجل تحريك الروبوت في محور واحد أو أكثر، توجد أوامر ينصب التركيز فيها على تحديد هذه الحركة فحسب.
توجد ثلاثة عوامل أساسية مشمولة في إرسال الروبوت إلى موضع معين: الموضع نفسه، وكيفية وصوله إلى هناك (المسار)، والسرعة التي يحتاج إليها إلى التحرك هناك. ويعد مراعاة مسار الروبوت أمرًا بالغ الأهمية حيث قد توجد عوائق يحتاج الروبوت إلى تجنبها، أو اتجاه معين يحتاج إلى الاقتراب منه أو حتى التفكير في كيفية تفاعله مع الروبوتات الأخرى في مساحة العمل نفسها.
عادةً ما يُعرف المسار باعتباره أحد ثلاثة خيارات - مفصلي (من نقطة إلى نقطة) أو خطي أو دائري.
تؤدي تعليمات المسار المفصلي ببساطة إلى تحريك نقطة مركز الأدوات حول محور روبوت واحد.
في ما يأتي صيغة RAPID للحركة المفصلية: MOVEJ p, v, z, t
حيث إن
p = نقطة الوجهة، المعرفة مسبقًا على أنها إحداثيات x و y و z
v = سرعة الحركة
z = بيانات المنطقة (تسمح للمستخدم ببرمجة المناطق التي يمكن/لا يمكن لنقطة مركز الأدوات الانتقال إليها). تم تحديد المنطقة بالمليمتر، أو "fine" تمثل عدم وجود منطقة تخفيف سرعة t = بيانات الأداة - تُستخدم لحساب نقطة مركز الأدوات.
على سبيل المثال: MOVEJ p1, v200, z30, tool2;
تحرك التعليمات الخطية نقطة مركز الأدوات في خط مستقيم
الوحدة 56 الروبوتات الصناعية
في ما يأتي صيغة RAPID للحركة الخطية:
MOVEL p, v, z, t

v = سرعة الحركة
z = بيانات المنطقة
على سبيل المثال: MOVEL pickuppoint ,v, z10 ,t_gripper;
تحرك التعليمات الدائرية نقطة مركز الأدوات في مسار دائري (يُعرف أيضًا باسم القوس)
في ما يأتي صيغة RAPID للحركة الدائرية:
MOVEC p1, p2, v, z, t
حيث إن
p1 = نقطة الوجهة، المعرفة مسبقًا على أنها إحداثيات x و y و z p2 = نقطة الدائرة
t = بيانات الأداة
على سبيل المثال: MOVEC p_end, p_via, v10, fine, t_weld;
أوامر خلية العمل
بعد أن تصل نقطة مركز الأدوات إلى حيث يجب أن توجد، سيلزم تنفيذ نوع من الإجراءات، وربما نوع من التغذية الراجعة من الطرف العامل أو من المستخدم لاعتماد ما إذا كانت المهمة قد أُنجزت.
ستكون هذه الإشارات خارج الروبوت نفسه وتُعرف بإشارات الدخل أو الخرج (إشارات I/O). عادةً ما يكون للعمليات المعقدة، مثل اللحام أو تطبيق مانع التسرب، روتينات كود خاصة بها مصممة خصيصًا للمعدات الإضافية المطلوبة. ومع ذلك، يمكن تخصيص فتح أو إغلاق بسيط للقابض لخرج رقمي (تشغيل أو إيقاف) من وحدة تحكم الروبوت وتنشيطه في البرنامج حسب الحاجة.
المصطلحات الرئيسة
- إشارات I/O - إشارات الدخل أو الخرج، تُستخدم للتحكم أو مراقبة أي شيء متصل بنظام الروبوت، ولكنها ليست جزءًا من الروبوت نفسه.
الروبوتات الصناعية الوحدة 56
في ما يأتي صيغة RAPID لتشغيل الخرج الرقمي:
على سبيل المثال: SET d_gripper;
وبالمثل، فإن صيغة RAPID لإيقاف الخرج الرقمي هي:
على سبيل المثال: RESET d_gripper;
قد تحتاج العملية أيضًا، على سبيل المثال، إلى مراقبة ما إذا كان المشغل قد أغلق الفتحة بعد تحميل جزء أو ما إذا كانت القوة التي يمارسها القابض قد وصلت إلى المستوى الذي يكون فيه الجزء آمنًا. وهذه إشارات دخل رقمية. ينتظر الأمر RAPID الآتي حتى تعين الدخل الرقمي: WAITDI d, state
d = الدخل الرقمي
state = الحالة (مرتفع أو منخفض) التي ننتظرها
على سبيل المثال: WAITDI di_hatch, high;
قد يكون من الضروري أيضًا أن ينتظر البرنامج فترة زمنية محددة، على سبيل المثال حتى يستقر جزء آخر من العملية. WAITTIME t
استخدام الروتينات الفرعية والبرامج الفرعية
يجب أن تشكل تسلسلات التعليمات المتكررة التي تحدث بشكل متكرر في البرنامج الروتينات الخاصة بها. يسمح هذا بكتابة الكود ذي الصلة واختباره بشكل منفصل إذا لزم الأمر ويجعل البرنامج ككل أسهل في القراءة. فكر في البرنامج الآتي، الذي يلتقط زجاجة بقابض، وينقلها إلى موضع آخر، ثم يضعها. ثم يعود لالتقاط زجاجة أخرى وهكذا. يمكن أن يبدو البرنامج على النحو الآتي: MOVEJ bottle_pickup_area, v200, fine, t_gripper; MOVEL bottle_height, v200, fine, t_gripper; SET d_gripper;
MOVEL bottle_height, v200, fine, t_gripper; RESET d_gripper;
MOVEJ park_area, v200, z30, t_gripper;
الروبوتات الصناعية الوحدة 56
يتعلق الجزء من البرنامج الموضح باللون الأحمر بالتقاط الزجاجة ولن يتغير أبدًا. وعلى شاكلة مماثلة، فإن الجزء الموضح باللون الأزرق يتعلق فقط بوضع الزجاجة. ويمكن كتابتهما في شكل روتينات على النحو الموضح أدناه:
MOVEL bottle_height, v200, fine, t_gripper; SET d_gripper; WAITTIME 1;
MOVEL bottle_height, v200, fine, t_gripper; RESET d_gripper; WAITTIME 0.5;
يصبح البرنامج بعد ذلك
MOVEJ bottle_pickup_area, v200, fine, t_gripper;
MOVEJ packing_area, v200, fine, t_gripper;
إضافة إلى تسهيل قراءة البرنامج، يجعل هذا النهج المقسم لوحدات الاختبار أسهل وأكثر أمانًا. يمكن اختبار روتين pick_bottle بمفرده لضمان التقاط الزجاجة بشكل صحيح، دون الحاجة إلى تشغيل البرنامج بأكمله. وبالمثل مع روتين place_bottle، ما يسمح بمزيد من الثقة في تشغيل البرنامج بأكمله بعد التحقق من صلاحية الروتينات الفردية.
بحث
التعليمات السابقة جزء من كُل، فلغة برمجة الروبوتات RAPID، على سبيل المثال، تحتوي على أكثر من 450 تعليمة. ابحث هذه اللغة أو لغات برمجة الروبوت الأخرى، حدّد الأوامر التي قد تكون مفيدة في الاستخدامات الآتية:
- عدّ العناصر الخارجة من خط الإنتاج
- ملء زجاجة لمدة 3 ثوان بالضبط
- اتخاذ القرارات بناءً على حالة الدخل الرقمي
- ضبط سرعة السير الخارجي باستخدام خرج تناظري.
أهمية تجنب التفردات في أثناء البرمجة
مثلما رأينا، يمكن تحريك الروبوت الصناعي باستخدام حركة مفصلية أو خطية. عند استخدام الحركة الخطية، أي تحديد الإحداثيات ثلاثية الأبعاد، قد يتوقف الروبوت ويرفض السير في اتجاهات معينة. هذا لأن الروبوت واجه التفرد.
المصطلح الرئيس
تفرد الروبوت - تكوين الموضع الذي تتعطل فيه حركة الطرف العامل للروبوت في اتجاهات معينة. في حالة التفرد، يفقد الطرف العامل درجة واحدة أو أكثر من الحرية. أي روبوت مفصلي له حالات تفرد. من السهل للغاية تحديد بعض التفردات، بينما يستحيل وصف بعضها الآخر دون استخدام الصيغ المعقدة. ومع ذلك، من المهم أن تكون على دراية بموضع التفردات مع الروبوت المستخدم، حيث إن محاولة التحرك من خلالها يمكن أن تؤدي إلى تدهور أداء الروبوت بشكل كبير من حيث الموضع والدقة.
الروبوتات الصناعية الوحدة 56
تحدث التفردات التي يسهل اكتشافها عندما تجد مفاصل معينة نفسها مرتبة في خط مستقيم. في الشكل 56.14، يكون الموضع المركزي هو تفرد المعصم، وبالتالي يجب تجنب هذا الموضع. يتضمن ذلك عندما يشكل الموضع عن غير قصد جزءًا من حركة خطية أكبر. لتجنب هذه التأثيرات، يجب على المبرمج التأكد من اختيار مواضع المفاصل البديلة التي تحقق موضع الطرف العامل نفسه دون أن تكون في حالة تفرد. يوضح الشكل 56.15 أدناه هذا. على الرغم من أن الطرف النهائي في الموضع نفسه في كلتا الحالتين، فالتكوين الموجود على اليمين يتجنب تفرد المعصم على اليسار.
يوضح الشكل 56.16 رسالة خطأ ناتجة عن محاولة المشغل التحريك عبر نقطة تفرد.



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