برمجة Beckhoff TwinCAT 3: دليل عملي للمهندسين الذين ينتقلون من وحدات التحكم المنطقية القابلة للبرمجة التقليدية
مهندسٌ أمضى عشر سنوات في كتابة منطق السلم على منصات ألين برادلي وسيمنز يفتح برنامج TwinCAT 3 لأول مرة، فيتجمد البرنامج. شجرة المشروع موجودة داخل Visual Studio. تتشارك ملفات C++ المساحة مع كود PLC. لا توجد فتحات هيكلية للتكوين، ولا كتالوج أجهزة للتصفح. يتم تثبيت نواة الوقت الحقيقي كبرنامج تشغيل لنظام Windows بجانب متصفح الويب. هذه هي برمجة Beckhoff TwinCAT 3 - نهج برمجي في المقام الأول للتحكم الصناعي. الانتقال صعب، لكن المكافأة هي منصة بقدرات لا تضاهيها أي وحدة تحكم منطقية قابلة للبرمجة تقليدية.
يحوّل برنامج TwinCAT 3 (تقنية التحكم والأتمتة لنظام ويندوز) أي جهاز كمبيوتر يعمل بنظام ويندوز إلى وحدة تحكم منطقية قابلة للبرمجة (PLC) ووحدة تحكم في الحركة تعمل في الوقت الفعلي. على عكس المنصات التقليدية التي تعتمد على أجهزة خاصة لتشغيل البرنامج، يعزل TwinCAT 3 أنوية المعالج المخصصة عن نظام ويندوز عبر برنامج تشغيل نواة يعمل في الوقت الفعلي - أي جدولة مباشرة على الجهاز، وليس محاكاة افتراضية.
تتكامل بيئة الهندسة، TwinCAT 3 XAE، مع Microsoft Visual Studio كإضافة سطر أوامر. ويوجد مشروع PLC ضمن حل .sln قياسي. ويتم التحكم في المصدر عبر Git. ويمكن لعدة مبرمجين العمل في وقت واحد. بالنسبة للمهندسين المعتادين على Studio 5000 أو TIA Portal، تبدو بيئة التطوير المتكاملة (IDE) وكأنها بيئة تطوير برمجيات حقيقية، لأنها كذلك بالفعل.
تتجاوز هذه البنية تمامًا حدود معيار IEC 61131-3. تُترجم وحدات C++ و MATLAB/Simulink كمهام أصلية في الوقت الحقيقي جنبًا إلى جنب مع كود PLC، وتتشارك الذاكرة مباشرةً عبر TcCOM (نموذج كائن مكون TwinCAT). ناقل البيانات الميداني هو EtherCAT، وهو بروتوكول Beckhoff الحتمي الذي يربط آلاف منافذ الإدخال/الإخراج على كابل واحد بأزمنة دورة أقل من جزء من الألف من الثانية. لا حاجة لتسمية أجهزة PROFINET، ولا ملفات GSDML، ولا أدوات تهيئة محركات أقراص خارجية.
تتكون حزمة البرامج من: TwinCAT 3 XAE (للهندسة)، وTwinCAT 3 XAR (للتنفيذ أثناء التشغيل)، ونواة النظام في الوقت الحقيقي. التطوير مجاني. يمكنك كتابة وتجميع ومحاكاة برامج الآلة الكاملة على حاسوب محمول عادي دون الحاجة إلى أي مكونات من Beckhoff.
قامت شركة متخصصة في تكامل أنظمة التغليف في جدة بتطبيق نظام تحكم في تركيب الكراتين باستخدام حاسوب مدمج من نوع CX5130، ووحدات إدخال رقمية ثمانية القنوات من نوع EL1008، ووحدات إخراج رقمية ثمانية القنوات من نوع EL2008. استغرق المشروع بأكمله - من التركيب إلى تشغيل المخرجات - فترة ما بعد الظهيرة.
الخطوة الأولى - تثبيت TwinCAT 3 XAE. قم بتنزيله من موقع Beckhoff الإلكتروني. يقوم برنامج التثبيت بإضافة شريط أدوات TwinCAT إلى Visual Studio وتثبيت برنامج تشغيل نواة النظام في الوقت الفعلي. يدعم البرنامج إصدارات Visual Studio 2017 و2019 و2022.
الخطوة الثانية - إنشاء مشروع. ملف ← جديد ← مشروع ← "مشروع TwinCAT". يحتوي الحل على عقدة PLC، وعقدة SYSTEM للتكوين في الوقت الفعلي، وعقدة إدخال/إخراج لأجهزة EtherCAT. استهدف x86 لأجهزة الكمبيوتر المدمجة مثل CX5130، وx64 لأجهزة الكمبيوتر الصناعية الأحدث.
الخطوة 3 - اختيار لغة البرمجة. انقر بزر الماوس الأيمن على عقدة PLC، ثم أضف مشروع PLC. تستخدم Beckhoff افتراضيًا لغة Structured Text (ST)، ويفضلها معظم المبرمجين لأنها تتعامل مع المصفوفات وآلات الحالة والمنطق المعقد بكفاءة أعلى بكثير من لغة Ladder Logic. مع ذلك، تُعد لغة Continuous Function Chart (CFC) - وهي لغة رسومية حرة الشكل حيث يتم وضع الكتل على لوحة الرسم ورسم أسلاك الإشارة - مناسبة بشكل فريد لحلقات التحكم في العمليات. ولا تزال لغة Ladder Logic (LD) متاحة للتعشيقات المنفصلة التي تحتاج فرق الصيانة إلى استكشاف أعطالها وإصلاحها.
بالنسبة لآلة تجميع الكرتون، قام المهندس بكتابة برنامج آلة حالة بلغة ST يتضمن حالات للوضع الابتدائي، والتغذية، والطي، واللصق، والإخراج. كل حالة تُخصص مخرجات لوحدة التحكم EL2008 وتقرأ مدخلات من وحدة التحكم EL1008.
الخطوة 4 - مسح أجهزة EtherCAT. انقر بزر الماوس الأيمن على "الأجهزة" في شجرة الإدخال/الإخراج، ثم اختر "مسح". سيكتشف TwinCAT 3 جميع المحطات الطرفية ووحدات التخزين وشرائح الإدخال/الإخراج المتصلة تلقائيًا. يظهر EL1008 كمحطة إدخال ذات 8 قنوات، بينما يظهر EL2008 كمحطة إخراج ذات 8 قنوات. اربط قنوات المحطات الطرفية بمتغيرات PLC عن طريق سحبها وإفلاتها في تعريف المتغيرات.
الخطوة 5 - تفعيل الإعدادات. انقر على "تفعيل الإعدادات" في شريط الأدوات. يقوم برنامج TwinCAT 3 بتجميع كود وحدة التحكم المنطقية القابلة للبرمجة (PLC)، وإنشاء إعدادات الوقت الفعلي، وتحميل كل شيء إلى بيئة التشغيل. اضغط على "تسجيل الدخول"، ثم اختر "وضع التشغيل"، وسيقوم جهاز CX5130 بتشغيل منطق وحدة التحكم المنطقية القابلة للبرمجة (PLC) وفقًا لزمن الدورة المُحدد - عادةً 1 مللي ثانية.
العائق الوحيد: لم يتمكن الكمبيوتر المحمول من الاتصال بجهاز CX5130 لأن معرف الشبكة AMS لم يكن مُوجَّهًا. وقد تم حل المشكلة في أقل من دقيقتين بإضافة معرف الشبكة الخاص بالكمبيوتر المحمول عبر أداة التوجيه TwinCAT (أيقونة شريط المهام).
الميزة التي تميز TwinCAT 3 عن جميع منصات PLC التقليدية هي لغة C++ الأصلية. يمكنك إضافة وحدة C++ مباشرةً إلى مشروع الوقت الحقيقي، وكتابة كود C++ قياسي مع ملحقات الوقت الحقيقي، وتشغيلها ككائن TcCOM على نفس النواة المعزولة مثل PLC - حيث تتم مشاركة الذاكرة من خلال المؤشرات دون أي تأخير إضافي.
استخدمت شركة ألمانية لتصنيع معدات التغليف هذه التقنية لتشغيل فحص أغطية الزجاجات باستخدام مكتبة OpenCV بمعدل 400 غطاء في المليون. تتبادل وحدة الرؤية المكتوبة بلغة C++ نتائج النجاح/الفشل مع آلة حالة وحدة التحكم المنطقية القابلة للبرمجة (PLC) عبر بنية بيانات مشتركة. أما الطريقة التقليدية - استخدام بروتوكول IPC خارجي عبر OPC UA - فتضيف من 10 إلى 50 مللي ثانية من زمن الاستجابة، بالإضافة إلى وصلة شبكة إضافية كاملة للصيانة.
يُصدّر جهاز TE1400 نماذج Simulink كوحدات TcCOM. يقوم مهندس العمليات بتصميم سلسلة PID، ثم ينقر على "إنشاء الكود"، فيتم تجميع النموذج إلى كائن يعمل في الوقت الفعلي ضمن مشروع TwinCAT 3. يقوم مبرمج PLC بربط مدخلات ومخرجات النموذج بمحطات الإدخال/الإخراج الفعلية. استخدمت محطة لمعالجة المياه في الإمارات العربية المتحدة هذه التقنية لخوارزمية جرعات التخثير - حيث تم توصيل مستشعرات العكارة ودرجة الحموضة بمدخلات تناظرية EL3024، بينما يقوم خرج النموذج بتشغيل مخرجات تناظرية EL4024 لمضخات الجرعات. استغرق التكامل الكامل يومًا واحدًا.
تتعامل وحدة التحكم NC PTP مع تحديد المواقع القياسي من نقطة إلى نقطة باستخدام مقاطع شبه منحرفة أو منحنية على شكل حرف S - مثل السيور الناقلة والمحركات الخطية وتحديد المواقع الدورانية. أما وحدة التحكم الرقمي TwinCAT CNC فهي نواة تحكم رقمي كاملة تدعم لغة G-code، وحركة خماسية المحاور، وتعويض نصف قطر الأداة، والتنبؤ المسبق. ويستخدم أحد مصانع CNC الإيطالية وحدة TwinCAT CNC مع محركات سيرفو AX5000 لتشغيل آلات خماسية المحاور بدورة استيفاء تبلغ 0.1 مللي ثانية.
يوفر نظام TwinCAT HMI (TE2000) لوحات تحكم HTML5/JavaScript من جهاز Beckhoff IPC. ويمكن لأي جهاز مزود بمتصفح - سواء كان جهاز كمبيوتر لوحي أو جهاز لوحي أو هاتف ذكي - عرض نفس الشاشات. يتم التواصل بين خادم HMI ووحدة التحكم المنطقية القابلة للبرمجة (PLC) باستخدام بروتوكول ADS عبر موجه AMS المحلي بزمن استجابة أقل من جزء من الألف من الثانية. ولا يتطلب ذلك أي أجهزة لوحية خاصة.
يُخصّص برنامج TwinCAT 3 مهامًا فردية لأنوية معزولة مُحددة مع تعطيل خاصية المقاطعة. في تصميم نموذجي لمعالج CX2040 رباعي النواة: تُشغّل النواة 1 آلة حالة PLC بسرعة 1 مللي ثانية، وتُشغّل النواة 2 وحدة NC PTP بسرعة 0.5 مللي ثانية، وتُشغّل النواة 3 وحدة رؤية C++ بسرعة 5 مللي ثانية، بينما تُشغّل النواة 0 نظام التشغيل Windows. في حال تجاوزت أي مهمة في الوقت الفعلي دورتها، يُبلغ برنامج TwinCAT عن حدوث انتهاك ويدخل في حالة خطأ قابلة للتكوين. بالنسبة لتغليف المنتجات عالي السرعة أو مُعالجات CNC، يُزيل العزل اليدوي للأنوية التذبذب الذي قد يُزعزع استقرار الجهاز.
تُشترى تراخيص TwinCAT 3 لمرة واحدة لكل جهاز مستهدف. تبلغ تكلفة TC1200 (خاص بوحدات التحكم المنطقية القابلة للبرمجة فقط، وفقًا لمعيار IEC 61131-3) حوالي 700 دولار أمريكي لجهاز CX5130. يضيف TC1250 ميزة التحكم العددي في الحركة من نقطة إلى نقطة. يتيح TC1300 استخدام لغة C++. تتراوح تكلفة المجموعة الكاملة على جهاز CX2040 بين 3000 و4000 دولار أمريكي. بيئة التطوير والمحاكاة مجانية.
أجهزة الكمبيوتر المدمجة: CX7000 (بسعر 400 دولار تقريبًا للفئة الأساسية)، وسلسلة CX2000 (بسعر يتراوح بين 1500 و4000 دولار)، وجهاز C6030 فائق الصغر (بسعر 2000 دولار فأكثر). تتراوح أسعار وحدات الإدخال/الإخراج مثل EL1008 وEL2008 بين 80 و120 دولارًا للوحدة. تتراوح مدة التوصيل القياسية من أسبوع إلى ثلاثة أسابيع.
تصفح أجهزة الكمبيوتر المدمجة من Beckhoff، ومحطات EtherCAT، وحلول الترخيص وPLC على tztechio.com.

س: هل يمكنني تشغيل برنامج TwinCAT 3 على جهاز كمبيوتر محمول عادي لأغراض التطوير؟
نعم. يُمكن تثبيت TwinCAT 3 XAE على أي جهاز يعمل بنظام Windows 10/11 x64. تعمل نواة الوقت الحقيقي في الوضع المحلي باستخدام جدولة وحدة المعالجة المركزية المعزولة. يُمكنك كتابة وتجميع ومحاكاة برامج PLC وC++ وبرامج الحركة كاملةً دون الحاجة إلى أجهزة Beckhoff. لمحاكاة الإدخال/الإخراج، اكتب روتين ST قصيرًا لتوليد بيانات المستشعرات. لمحاكاة الحركة، فعّل وضع محاكاة المحاور في إعدادات النظام.
س: هل برنامج TwinCAT 3 أصعب في التعلم من برنامج Studio 5000 أو TIA Portal؟
تُضيف بيئة Visual Studio بعض الصعوبة في البداية إذا كنت معتادًا على استخدام بيئات تطوير متكاملة مخصصة لوحدات التحكم المنطقية القابلة للبرمجة (PLC). مع ذلك، فإن آلية مسح الإدخال/الإخراج أبسط من كتالوج الأجهزة في TIA Portal، وعادةً ما يجد المهندسون الملمّون بالنصوص المنظمة وممارسات البرمجيات الأساسية (التحكم في الإصدارات، وتصحيح الأخطاء، وتحديد نطاق المتغيرات) برنامج TwinCAT 3 سهل الاستخدام خلال الأسبوع الأول. كما أن مساعدة Beckhoff عبر مفتاح F1 شاملة وواعية بالسياق.
س: هل أحتاج إلى جهاز كمبيوتر صناعي من بيكهوف، أم يمكنني استخدام جهاز كمبيوتر من طرف ثالث؟
يعمل البرنامج على أي جهاز كمبيوتر يعمل بنظام ويندوز x86، لكن شركة Beckhoff تتحقق من صحة الأداء في الوقت الفعلي فقط على أجهزتها الخاصة. قد تتعرض أجهزة الكمبيوتر من جهات خارجية لمشاكل في الأداء ناتجة عن مجموعة الشرائح أو إدارة الطاقة في BIOS أو برامج التشغيل. يمكنك تطوير البرنامج ومحاكاته على أي جهاز كمبيوتر محمول. أما للإنتاج، فاستخدم وحدات معالجة الإشارات من Beckhoff - فالفرق في التكلفة ضئيل مقارنةً بتصحيح أخطاء الأجهزة غير المُختبرة.
س: هل يمكنني دمج منطق السلم والنص المنظم في نفس المشروع؟
نعم. يمكن أن يحتوي مشروع PLC واحد على وحدات برمجة قابلة للبرمجة (PRGs) ووحدات وظائف (FBs) ووحدات تحكم (FCs) بأي تركيبة من ST وLD وFBD وCFC. يمكن لروتين السلم استدعاء وحدة وظائف ST. يمكن لمخطط CFC الإشارة إلى شبكات السلم. الترجمة والربط مستقلان عن لغة البرمجة.
س: هل يدعم TwinCAT 3 بروتوكول OPC UA و MQTT للصناعة 4.0؟
نعم. يوفر TF6100 وظائف خادم OPC UA، حيث يعرض رموز PLC كعُقد قابلة للتكوين. ويضيف TF6701 خاصية النشر/الاشتراك عبر MQTT. ويعمل كلا الجهازين كوحدات TcCOM في الوقت الفعلي، بشكل مستقل عن خدمات Windows.
س: كيف تتم معالجة تحديثات البرامج الثابتة والبرامج على جهاز قيد التشغيل؟
يدعم TwinCAT 3 التغييرات عبر الإنترنت - تعديل كود PLC، وإضافة متغيرات، وضبط إعدادات المهام أثناء بقاء وقت التشغيل في وضع التشغيل. تتطلب التغييرات الهيكلية (أجهزة EtherCAT جديدة، وتعديلات زمن الدورة، ووحدات C++) "تنشيط التكوين" مع إعادة تشغيل مُتحكم بها لفترة وجيزة. بالنسبة للعمليات التي تعمل على مدار الساعة، تتوفر تكوينات TwinCAT احتياطية مع تجاوز الفشل التلقائي.
خريطة الموقع | المدونة | XML | سياسة الخصوصية
بالإضافة إلى ذلك، بعد الحصول على إذن منك، نريد وضع ملفات تعريف الارتباط لجعل زيارتك وتفاعلك مع slOC أكثر خصوصية. ولهذا نستخدم ملفات تعريف الارتباط التحليلية والإعلانية. باستخدام ملفات تعريف الارتباط هذه، يمكننا نحن والجهات الخارجية تتبع وجمع سلوكك على الإنترنت داخل وخارج super-instrument.com. وبهذا نقوم نحن والجهات الخارجية بتكييف موقع super-instrument.com والإعلانات بما يتناسب مع اهتماماتك. بالنقر على قبول فإنك توافق على هذا. إذا رفضت، فإننا نستخدم فقط ملفات تعريف الارتباط الضرورية ولن تتلقى للأسف أي محتوى مخصص. يرجى زيارة سياسة ملفات تعريف الارتباط الخاصة بنا لمزيد من المعلومات أو لتغيير موافقتك في المستقبل.
Accept and continue Decline cookies