أيهما أكثر عملية: برمجة PLC-الموجهة للكائنات أم منطق السلم؟

Aug 03, 2026 ترك رسالة

في مجال الأتمتة الصناعية، يظل منطق السلم أحد لغات البرمجة الأكثر استخدامًا؛ ومع ذلك، بالنسبة لكائنات التحكم الأكثر تعقيدًا، فإن البرمجة الموجهة للكائنات-تعد بالتأكيد أسلوبًا عالي الكفاءة. دعونا نناقش أولاً البرمجة الموجهة للكائنات-:


البرمجة الموجهة للكائنات- هي نموذج برمجة متقدم في لغات الكمبيوتر عالية المستوى-. يمكن أيضًا تطبيق فلسفة التصميم هذه على برامج PLC في أنظمة التحكم الصناعية. على الرغم من أننا لا نستطيع تنفيذ العديد من الميزات الممتازة للبرمجة الموجهة للكائنات-مثل "الوراثة"-وربما لا تمتلك لغة PLC خصائص لغة البرمجة الموجهة للكائنات-، إلا أن المفاهيم الأساسية للبرمجة الموجهة للكائنات- هي فئات ومثيلات فئة (أي الكائنات). نحن بحاجة فقط إلى الاستفادة من هذه المفاهيم. في برمجة الكمبيوتر، نحتاج إلى تجريد وتعميم كيانات معينة لتحديد الفئات. ومع ذلك، في أنظمة التحكم الصناعية، يتم تعريف كائنات التحكم مثل المحركات والصمامات بوضوح ضمن فئات التحكم؛ يمكننا تحديد الفئات لهم مباشرة دون الحاجة إلى التجريد. ستستخدم الأقسام التالية لغة برمجة Siemens Step7 ولغة برمجة Unity من Schneider لشرح البرمجة الموجهة للكائنات- لـ PLCs.


ط. طرق التنفيذ


يتم تنفيذ البرمجة الموجهة للكائنات- في الخطوة 7 باستخدام كتل الوظائف (FB). عندما يطرح هذا الموضوع، غالبًا ما يفكر الناس في نهج البرمجة المعيارية الذي تقترحه شركة Siemens. في الواقع، هذا هو نفس المفهوم، لكن مصطلحات مثل "النمطية"، و"كتل بيانات الخلفية"، و"الخلفيات المتعددة" التي قدمتها شركة Siemens لا تسمح دائمًا للمستخدمين بفهم فلسفة التصميم الممتازة هذه وتطبيقها بوضوح.


ومع ذلك، إذا تناولت الأمر من منظور البرمجة الموجهة للكائنات-، فيمكنك الحصول على فهم أفضل لنمط التصميم هذا. تعتبر "كتلة FB" بمثابة "فئة"؛ يمكن عرضه على أنه مجموعة من التعليمات البرمجية لكائنات تحكم مماثلة. على سبيل المثال، بالنسبة لمحرك التردد المتغير MM440-، يمكنك كتابة كتلة FB باسم "MtrMM440". في البرمجة الموجهة للكائنات-، يُطلق على هذا اسم "الفئة". عندما تحتاج إلى التحكم في البرنامج لمحرك معين، يمكنك تعيين كتلة قاعدة بيانات خلفية له-في البرمجة الموجهة للكائن-، وهذا ما يسمى تنفيذ الفئة (أي إنشاء مثيل للفئة: كائن). عندما تحتاج إلى التحكم في محركات متعددة، يمكنك تعيين قواعد بيانات خلفية مختلفة لكتلة FB هذه، وهو ما يعادل إنشاء مثيلات متعددة للفئة.


يتميز Step7 بنوع آخر من كتلة البرنامج: كتلة FC. يُشار إلى البرمجة التي تستخدم كتل FC في المقام الأول على أنها برمجة منظمة في أنظمة Siemens، والتي يمكن تشبيهها بالبرمجة الإجرائية في برمجة الكمبيوتر -أي البرمجة التي تعتمد على الوظيفة- بشكل كامل.


توفر البرمجة باستخدام برنامج Schneider's Unity فهمًا أفضل للبرمجة الموجهة للكائنات-. تتضمن تعريفات DFB معلمات الإدخال/الإخراج، والمتغيرات الخاصة/العامة، وتنفيذ التعليمات البرمجية-والتي تمثل على وجه التحديد العناصر الأساسية "للفئة" في البرمجة الموجهة لكائنات الكمبيوتر-. يعد إنشاء مثيل لفئة (كائن) أمرًا بسيطًا مثل إنشاء متغير "منطقي" عادي؛ تحتاج فقط إلى تحديد متغير من هذه "الفئة" في "الكتل الوظيفية".


يدعم كل من Step7 وUnity أساليب البرمجة الإجرائية والموجهة للكائنات-. إن التمييز بين هذين الأسلوبين يشبه الفرق بين البرمجة في لغة C وC++ في لغات الكمبيوتر عالية المستوى-.


في الشرح التالي، ستتم الإشارة إلى FBs في الخطوة 7 وDFBs في Unity باسم "الفئات"، بينما ستتم الإشارة إلى مجموعة FB وقاعدة بيانات الخلفية في الخطوة 7، بالإضافة إلى مثيلات DFBs في Unity، باسم "الكائنات".


ثانيا. الكائن-هندسة البرمجة الموجهة


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


1. تصميم الدوائر المنظمة.


يركز هذا القسم بشكل أساسي على خطوط الإنتاج الآلي؛ بالنسبة للأدوات الآلية المستقلة، يمكن استخدام هيكل مبسط:


<1>طبقة خط الإنتاج الآلي: هذا هو المستوى الأعلى، ويضم PLC رئيسيًا يتحكم في المناطق المختلفة الموجودة أسفله.

<2>طبقة المشروع: تحتوي هذه الطبقة على نظام توزيع طاقة مستقل ولكن لا يوجد بها PLC؛ يتكون فقط من وحدات موزعة يتم التحكم فيها بواسطة خط الإنتاج الآلي. وكما يوحي الاسم، فهو يتمتع بدرجة عالية من الاستقلالية ويمكن تصميمه وتصنيعه كمشروع منفصل. عندما يكون خط الإنتاج الآلي صغيرًا نسبيًا، فقد يتم حذف هذه الطبقة.

<3>,مستوى المجموعة الوظيفية: بناءً على أقسام العملية، يتم تجميع قطاعات المعدات التي تؤدي وظيفة عملية محددة في مجموعة وظيفية. تنتمي هذه المجموعة إلى المستوى الهندسي؛ عندما يتم حذف المستوى الهندسي، فإنه ينتمي إلى مستوى خط الإنتاج الآلي. لا تتطلب البرمجة الموجهة للكائنات- بالضرورة استخدام البنية المذكورة أعلاه، ولكن البنية الكهربائية المصممة جيدًا- تكون أكثر ملاءمة للبرمجة الموجهة للكائنات-.


2. يتم تنفيذ كل المنطق الخاص بأي كائن تحكم ضمن "فئة".


ولتحقيق ذلك، من الضروري تحليل المعلومات المتعلقة بكائن التحكم. على سبيل المثال، بالنسبة للمحرك، يجب مراعاة المعلومات التالية ذات الصلة:


معلومات الإدخال:


<1>,معلومات حماية الدائرة، مثل قاطع دائرة المحرك والمرحل الحراري.

<2>,معلومات الحماية الوظيفية، مثل مفاتيح الحد لمحركات الحركة، ومفاتيح الضغط للمراوح، ومفاتيح مستوى الزيت لمضخات الزيت.

<3>شروط البدء والتوقف: على الرغم من أن حماية الدائرة والحماية الوظيفية المذكورة أعلاه قد تتسبب في توقف المحرك عن العمل، وقد تؤدي إعادة التعيين إلى إعادة التشغيل، فإن الشروط المشار إليها هنا هي تلك الخاصة بالبدء والتوقف أثناء التشغيل العادي-مثل خطوات عملية التحكم التسلسلية.

<4>أوضاع التحكم: مثل اليدوي والآلي.

<5>إعادة تعيين الخطأ: إعادة تشغيل النظام عبر إشارات إعادة التعيين.


معلومات الإخراج:

<1>مخرجات التحكم، مثل الموصل الرئيسي الذي يتحكم في المحرك.

<2>مخرجات معلومات الحالة

<3>مخرجات الخطأ


معلومات تخزين الحالة:


المتغيرات الوسيطة المستخدمة لتنفيذ التعليمات البرمجية، بالإضافة إلى متغيرات الحالة التي يمكن قراءتها بواسطة واجهة HMI. دمج جميع المعلومات المذكورة أعلاه في فئة واحدة وتوحيد معلمات الفئة قدر الإمكان. ومع ذلك، لا تزال هناك بعض الاختلافات مقارنة بلغات البرمجة عالية المستوى-. بالنسبة للخطوة 7، المعيار الذي يجب اتباعه هو: يتم تنفيذ هيكل البرنامج باستخدام FCs، ويتم تنفيذ التحكم في الكائن باستخدام FBs، كما هو موضح في الإطار الهيكلي التالي (الذي يعتمد هيكله الكهربائي على المقدمة أعلاه): هذه مجرد بنية برنامج PLC تقريبية؛ يجب أن تكون الهندسة المعمارية الجيدة أكثر شمولاً وعلمية.


3. خطط لهياكل البيانات بعناية


يعد تحديد هياكل البيانات أمرًا بالغ الأهمية، ويجب عليك السعي لتوحيد هذه الهياكل قدر الإمكان دون القلق بشأن مساحة التخزين؛ ذاكرة PLC الحديثة كافية لاستيعاب كميات كبيرة من البيانات. تجدر الإشارة إلى أنه في الخطوة 7، يجب عليك تجنب تعريف الأنواع المحددة بواسطة المستخدم (UDTs) خارج الفئات كلما أمكن ذلك؛ بدلاً من ذلك، قم بتعريفها داخل الفئات. على الرغم من أن هذا قد يؤدي إلى تعريفات مكررة لنفس البنية عبر فئات مختلفة، إلا أنه يعزز استقلالية الفئات.


في الأقسام التالية، سوف نقوم بمقارنة هذين النهجين في البرمجة:


مزايا البرمجة الموجهة للكائنات-مقارنة بمنطق السلم، توفر البرمجة الموجهة للكائنات- المزايا التالية:

• الكود قابل للحمل وسهل إعادة الاستخدام.

• من السهل استخدام الدوال الرياضية والحلقات والتركيبات الأخرى.

• يتم تدريس البرمجة الموجهة للكائنات- في كل دورة تدريبية لبرمجة الكمبيوتر تقريبًا؛

• يمكن تشغيل التعليمات البرمجية على منصات الأجهزة المختلفة.


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


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


"يتبع منطق السلم تنسيق مخططات السلم الكهربائي المستخدمة في أنظمة التحكم في التتابع، ويمكن لمعظم الناس تعلمه وإتقانه بسرعة."


ومع ذلك، بالمقارنة مع منطق السلم، فإن البرمجة الموجهة للكائنات-تحتوي على العيوب التالية:


• تكلفة أعلى.

• منحنى تعليمي أكثر حدة.

• استكشاف الأخطاء وإصلاحها ليس بالأمر السهل بالنسبة لموظفي الصيانة؛

• عادة ما يكون التجميع مطلوبًا قبل تحميل كود المصدر إلى المعالج.


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


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


مزايا منطق السلم:


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


بمرور الوقت، ومع دخول أشخاص من خلفيات ومجالات متنوعة إلى الصناعة، تم إدخال لغات برمجة مختلفة في مجموعة أدوات الأتمتة الصناعية. وتشمل هذه برمجة كتلة الوظائف، والنص المنظم، وبرمجة الحالة، ومخططات الوظائف المتسلسلة. تشكل لغات البرمجة الأربع هذه، جنبًا إلى جنب مع منطق السلم، لغات البرمجة القياسية المحددة بواسطة معيار اللجنة الكهروتقنية الدولية (IEC) IEC 61131-3.


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


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


• إنه مناسب تمامًا-للتحكم في الماكينة والعمليات؛

• من الأسهل فهمها لأنها ذاتية التوثيق بطبيعتها؛

• أنه يسهل استكشاف الأخطاء وإصلاحها للنظام الخاضع للرقابة.

• من السهل التصحيح.

• يمكن عادةً تخزين كود المصدر في المعالج.


يعتبر المنطق السلمي-مناسبًا تمامًا للتحكم في الماكينة والعمليات، وخاصةً لأنظمة التشغيل الآلي التي تحتوي على عدد كبير من المدخلات والمخرجات المنفصلة (I/O). على مر السنين، تم أيضًا تحسين منطق السلم بشكل مستمر للتعامل مع عمليات الإدخال/الإخراج التناظرية، مما يجعله أكثر ملاءمة لمجموعة واسعة من تطبيقات التحكم في العمليات

 

بالمقارنة مع تطبيقات التحكم في الماكينة، تتمتع تطبيقات العمليات عادةً بنسبة أعلى من عمليات الإدخال/الإخراج التناظرية.

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

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

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

81e77660-9f31-11ed-bfe3-dac502259ad0.jpg

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


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


ومع ذلك، بالمقارنة مع البرمجة الموجهة للكائنات-، فإن منطق السلم له أيضًا العيوب التالية:


• مبرمجو الكمبيوتر ومحترفو تكنولوجيا المعلومات ليسوا على دراية بمنطق السلم.

• صعوبة أداء الوظائف الرياضية ومعالجة النصوص ومعالجة البيانات.

• يعتمد على وقت المسح.

• يتطلب تنفيذه أجهزة متخصصة، مثل وحدة التحكم المنطقية القابلة للبرمجة (PLC).


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


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


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


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

 

إرسال التحقيق

whatsapp

الهاتف

البريد الإلكتروني

التحقيق