DevOps / النشر

نشر PLC الآلي
لمشاريع TIA Portal

أتمتة دورة حياة النشر الكاملة: ترجمة الأجهزة والبرمجيات، إنشاء اتصالات عبر الإنترنت، مقارنة حالات الاتصال وعدم الاتصال، تنزيل البرامج الثابتة والبرامج إلى PLC، والتحكم في حالة تشغيل CPU - كل ذلك عبر برمجيات نصية من خلال REST API.

أتمتة كاملة لدورة حياة النشر

كل خطوة من التعليمات البرمجية المصدر إلى تشغيل PLC، قابلة للبرمجة والتكرار

الترجمة (Compilation)

ترجمة تكوين الأجهزة وكتل البرمجيات بشكل فردي أو جماعي. تشمل نتائج الترجمة الأخطاء والتحذيرات - يمكن دمجها في خطوط أنابيب CI لربط النشر بنجاح عمليات البناء.

الاتصال عبر الإنترنت

إنشاء وإنهاء الاتصالات عبر الإنترنت بـ PLCs. يدعم PLCSim Softbus وPROFINET وتجاوزات المسار اليدوية. الكشف التلقائي عن معلمات الاتصال أو تحديد نقاط الوصول بشكل صريح.

نطاقات التنزيل

اختر نطاق التنزيل لكل عملية نشر: البرمجيات فقط، الأجهزة فقط، الأجهزة والبرمجيات معاً، أو تغييرات البرمجيات فقط للتحديثات ذات التأثير الأدنى. تحكم دقيق فيما يصل إلى PLC.

إدارة حالة CPU

بدء وإيقاف CPU برمجياً. قراءة حالة CPU الحالية قبل وبعد النشر. بناء تسلسلات نشر آمنة تنقل CPU عبر حالات STOP والتنزيل وRUN تلقائياً.

دعم PLC المحمي بكلمة مرور

المصادقة مقابل PLCs المحمية بكلمة مرور قبل الاتصال عبر الإنترنت. تعيين وتحديث ومسح بيانات اعتماد المصادقة عبر الإنترنت من خلال API لدعم بيئات الإنتاج الآمنة.

حواجز السلامة

تمنع علامة confirmPhysicalDownload عمليات التنزيل العرضية إلى الأجهزة الحقيقية - تسمح أهداف PLCSim فقط بالتنزيل دون تأكيد صريح. حاجز حماية حاسم لخطوط أنابيب CI/CD التي تستهدف PLCs المادية.

سير عمل النشر القياسي

خمس خطوات من التعليمات البرمجية المترجمة إلى تشغيل PLC

1

الترجمة

بدء ترجمة الأجهزة والبرمجيات عبر compile_device أو compile_block. تحقق من النتيجة بحثاً عن أخطاء قبل المتابعة. تؤدي الترجمة الفاشلة إلى إحباط النشر.

2

الاتصال عبر الإنترنت

استدعاء go_online مع الجهاز المستهدف. يقوم T-IA Connect بحل نقطة الوصول تلقائياً أو يقبل مساراً يدوياً. تحقق من حالة الاتصال باستخدام get_online_state قبل المتابعة.

3

مقارنة الاتصال / عدم الاتصال

تشغيل compare_online_offline للتحقق مما إذا كان PLC يطابق المشروع بالفعل. تخطي عمليات التنزيل غير الضرورية إذا لم يتم اكتشاف أي فرق، مما يقلل من تعطيل PLC في الإنتاج.

4

التنزيل إلى PLC

تنفيذ download_to_plc مع النطاق المختار (Software, Hardware, HardwareAndSoftware، أو SoftwareOnlyChanges). قم بضبط confirmPhysicalDownload على true فقط عند استهداف الأجهزة الحقيقية عن قصد.

5

بدء CPU

إصدار start_cpu لنقل PLC من حالة STOP إلى RUN. تأكيد الحالة النهائية باستخدام get_cpu_state. تسجيل النتيجة لمسار التدقيق وتقارير CI.

برمجة النشر عبر REST API

دمج نشر PLC في أي أداة CI/CD باستخدام استدعاءات HTTP القياسية

الترجمة والتحقق من النتيجة

# ترجمة الجهاز (الأجهزة + البرمجيات)
curl -X POST http://localhost:5000/api/compile-device \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}

الاتصال عبر الإنترنت والتنزيل

# الاتصال عبر الإنترنت
curl -X POST http://localhost:5000/api/go-online \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}\n\n# تنزيل البرمجيات فقط
curl -X POST http://localhost:5000/api/download-to-plc \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1", "scope": "Software", "confirmPhysicalDownload": true}

بدء CPU والتحقق من الحالة

# بدء تشغيل CPU
curl -X POST http://localhost:5000/api/start-cpu \
  -H 'Content-Type: application/json' \
  -d {"deviceName": "PLC_1"}\n\n# قراءة حالة CPU
curl -X GET 'http://localhost:5000/api/get-cpu-state?deviceName=PLC_1'

أدوات النشر المتاحة

يمكن الوصول إلى جميع الأدوات عبر REST API وبروتوكول MCP

الأداةالوصف
compile_deviceيترجم الجهاز بالكامل (الأجهزة + البرمجيات) ويعيد الأخطاء والتحذيرات.
compile_blockيترجم كتلة برمجية واحدة. مفيد للفحوصات المسبقة المستهدفة في خطوط أنابيب CI.
go_onlineينشئ اتصالاً عبر الإنترنت بـ PLC. يدعم PLCSim وPROFINET والمسار اليدوي.
go_offlineينهي الاتصال عبر الإنترنت ويعيد الجهاز إلى وضع عدم الاتصال.
get_online_stateيعيد حالة الاتصال الحالية (عبر الإنترنت/غير متصل) للجهاز.
download_to_plcينزل بيانات المشروع إلى PLC. النطاق: Software, Hardware, HardwareAndSoftware, SoftwareOnlyChanges.
upload_from_plcيرفع برنامج PLC الحالي مرة أخرى إلى مشروع TIA Portal.
compare_online_offlineيقارن حالة PLC عبر الإنترنت مع المشروع غير المتصل لاكتشاف الاختلافات.
start_cpuينقل CPU من حالة STOP إلى RUN.
stop_cpuينقل CPU من حالة RUN إلى STOP قبل التنزيل.
get_cpu_stateيقرأ حالة تشغيل CPU الحالية (RUN, STOP, STARTING، إلخ).
list_access_pointsيسرد جميع نقاط الوصول المكونة لحل مسارات اتصال PLC.
list_parameter_setsيسرد مجموعات المعلمات المتاحة لتكوين الاتصال.
get_pgpc_diagnosticيستعيد تشخيصات واجهة PG/PC لاستكشاف مشكلات الاتصال وإصلاحها.

انشر أول PLC لديك آلياً

توقف عن النقر في TIA Portal. برمج خط أنابيب النشر بالكامل مرة واحدة وقم بتشغيله عند كل عملية حفظ (commit).