KUKA KRC4 $POS_ACT عدم تطابق الموضع بعد الحلقة: استكشاف أخطاء التشغيل المتقدم وإصلاحها
تُرجع KUKA KRC4 $POS_ACT ضعف إزاحة A لبيانات الأداة بعد دورة التكرار الأولى للبرنامج. وقد تبيّن أن السبب الجذري يعود إلى سلوك مؤشر التشغيل المتقدم.
في وحدات التحكم KUKA KRC4 التي تعمل بنظام KSS 8.2 أو 8.3، يلاحظ المبرمجون أحيانًا أن المتغير $POS_ACT يعرض تقريبًا ضعف إزاحة A المقصودة للأداة بعد التكرار الأول لحلقة روتين حركة. لم تقفز الروبوت فعليًا؛ فقد واصل مؤشر التشغيل المتقدم التنفيذ إلى التعليمات اللاحقة بينما ظل $POS_ACT يعكس وضعية مأمورًا بها تعتمد على الأداة والقاعدة، ولم تعد تتطابق مع القياس الذي توقع المبرمج تسجيله أو استخدامه كمرجع إطار.
شاشة وحدة التعليم المحمولة لـ KUKA KRC4 تقارن بين $POS_ACT المأمور به و$POS_ACT_MES المقاس أثناء برنامج حركة متكرر.
يُعد $POS_ACT الموضع الفعلي المأمور به، بمعنى أنه يمثل الوضعية المبرمجة لوحدة التحكم بعد تحويلها عبر الأداة والقاعدة النشطتين. ولذلك فهو يتأثر بتوقيت تقدم المفسر. أما $POS_ACT_MES فهو الموضع المقاس القادم من مسار التغذية الراجعة للروبوت، وهو المتغير الأكثر أمانًا عندما تحتاج إلى الوضعية الفيزيائية عند نقطة مزامنة. يؤدي الخلط بينهما إلى ظهور أعراض «الإزاحة المضاعفة» التي تبدو كأنها خطأ في معايرة الأداة بعد الدورة الأولى، خصوصًا عندما تُطبّق إزاحة أداة على محور A داخل حلقة سبق أن قيّم التشغيل المتقدم جزءًا منها.
مؤشر التشغيل المتقدم بوصفه الآلية
ينفذ التشغيل المتقدم لدى KUKA العبارات القادمة قبل وصول الروبوت إلى النهاية الدقيقة للحركة الحالية. ويُعد هذا الجلب المسبق ضروريًا لدمج المسارات، لكنه يعني أن التعيينات وحسابات الإطارات التي تقرأ $POS_ACT قد تُنفَّذ في وقت أبكر مما يتصوره الإنسان عند قول «عندما نصل». في التكرار الأول، قد يبدو التوقيت صحيحًا بالمصادفة. أما في التكرار الثاني، فقد تتراكم إزاحة مطبقة بالنسبة إلى $POS_ACT تمت قراءته قبل أوانه مع تحويل الأداة، فتظهر في الشاشات أو سجلات التتبع كمكوّن إزاحة A يساوي تقريبًا ضعفي القيمة.
رسم توضيحي لمواصلة مؤشر التشغيل المتقدم تنفيذ منطق الحلقة بينما لا يزال الروبوت يكمل مقطع الحركة السابق.
أساليب التصحيح
- أدرج WAIT SEC 0 عند نقطة المزامنة التي يجب فيها إيقاف التشغيل المتقدم مؤقتًا قبل قراءة البيانات المتعلقة بالوضعية أو كتابتها.
- استدعِ BAS(#INITMOV,0) عند إعادة تهيئة معلمات الحركة، بحيث تبدأ الحركات اللاحقة من حالة تأسيس نظيفة بدلًا من وراثة سياق جرى تقييمه جزئيًا.
- اضبط $ADVANCE=0 في الأقسام التي تنفذ التقاطًا حرجًا للوضعية أو حسابات إزاحة الأداة أو تحديثات الإطار المتوارثة بين تكرارات الحلقة؛ ثم أعد قيمة تشغيل متقدمة غير صفرية لاحقًا لتحسين إنتاجية التشغيل.
- فضّل $POS_ACT_MES عندما يتطلب التطبيق الوضعية الديكارتية المقاسة بدلًا من القيمة المأمور بها المعتمدة على المؤشر.
; نمط مزامنة نموذجي (تصوري)
$ADVANCE=0
WAIT SEC 0
; التقط الوضعية المقاسة الآن
DECL FRAME MySnap
MySnap = $POS_ACT_MES
BAS(#INITMOV,0)
; أعد التشغيل المتقدم للدمج حسب متطلبات الخلية
$ADVANCE=3
تسلسل التشخيص
- سجّل $POS_ACT و$POS_ACT_MES في سطر البرنامج نفسه أثناء التكرار 1 والتكرار 2 من الحلقة التي يظهر فيها العطل.
- تأكد من عدم تغير رقمي الأداة والقاعدة النشطين بين التكرارين.
- اضبط $ADVANCE=0 مؤقتًا وأعد الاختبار؛ فإذا اختفت إزاحة A المضاعفة، فهذا يؤكد تفاعل التشغيل المتقدم.
- استبدل قراءات الوضعية المستخدمة في حساب الإزاحة بـ $POS_ACT_MES أو احمِها باستخدام WAIT SEC 0.
- أعد التشغيل المتقدم فقط خارج القسم الحرج، وتحقق من زمن الدورة مقارنة بجودة المسار.
| المتغير / الاستدعاء | المعنى | متى يُستخدم |
|---|---|---|
| $POS_ACT | الوضعية المأمور بها (تعتمد على الأداة والقاعدة) | سياق الحركة العام؛ يُستخدم بحذر مع التشغيل المتقدم |
| $POS_ACT_MES | الوضعية المقاسة | التسجيل وعمليات الفحص وحسابات الإزاحة عند نقاط المزامنة |
| WAIT SEC 0 | يقطع التشغيل المتقدم | قبل القراءات والكتابات الحرجة |
| BAS(#INITMOV,0) | إعادة تهيئة أساس الحركة | بعد المزامنة أو تغييرات الوضع |
| $ADVANCE=0 | يعطل التشغيل المتقدم | الأقسام الضيقة الحرجة للوضعية (KSS 8.2/8.3) |
تأكيد الوضعية المقاسة مقابل المأمور بها بعد المزامنة
قد تؤدي إعادة معايرة الأداة لأن $POS_ACT «يبدو مضاعفًا» إلى إتلاف TCP سليم بشكل دائم. وبالمثل، فإن إضافة إزاحات تعويضية في PLC أو في مفسر الإرسال دون فهم التشغيل المتقدم ينشئ حلولًا مؤقتة متوارثة ومقيدة بالإصدار. وثّق إصدار KSS الذي تعمل به الخلية—8.2 أم 8.3—عند التقاط سجلات التتبع لدعم المورّد، وسجّل ما إذا كانت خيارات الدقة المطلقة أو القواعد الخاصة مفعّلة.
ينبغي لخلايا تكامل الروبوت وPLC التي تتبادل الوضعيات عبر ناقل ميداني أن تحدد ما إذا كان الإطار المشترك مأمورًا به أم مقاسًا، وأن تثبت هذا التعريف في مواصفات الواجهة. ويمنع توحيد هذا الاتفاق مبكرًا أحداث الرفض الخاطئة عندما يطلق مُسلسِل أنظمة PLC وPAC حدثًا بناءً على وضعية لم يصل إليها التشغيل المتقدم فعليًا بعد.
نبذة عن المؤلفة
Elena Vogt | مهندسة تكامل روبوتات – KUKA / الخلايا المنفصلة
تتخصص Elena Vogt في تشغيل KUKA KRC4/KSS وضبطه، وتشخيص إطارات الأدوات، وإجراءات المصافحة بين PLC والروبوت في الخلايا المنفصلة المختلطة. ويركز عملها على الآثار الجانبية للتشغيل المتقدم، ومتغيرات الوضعية المقاسة مقابل المأمور بها، والموازنة المستقرة بين زمن الدورة وجودة المسار.