محرر مخطط السلم (LD)

نظرة عامة

Ladder Diagram (LD) أقدم اللغات الرسومية الثلاث لـ IEC 61131-3 ويتبع استعارة المخطط الكهربائي: بين قضيب طاقة أيسر وأيمن، تحمل مسارات التيار الأفقية (الدرجات) الإشارة. على كل درجة، تجلس التماسات على اليسار (في سلسلة) والملفات على اليمين؛ حسب حالة المتغير إما تـ"مرر" أو تـ"عرقل" التيار. LD مناسب جداً لمنطق التحكم البسيط — مفاتيح الحدود، دوائر الإمساك، التشابكات — وهو سهل القراءة جداً للمخططين الكهربائيين.

تخطيط المحرر

محرر LD له نفس بنية محرر FBD (شريط الأدوات في الأعلى، QGraphicsView بشبكة + تكبير + تحريك، جدول المتغيرات على اليمين)، بخصوصيتين:

  • قضيب الطاقة الأيسر وقضيب الطاقة الأيمن عناصر دائمة في المخطط. لا يمكن تحريكهما ويكبران عمودياً مع عدد الدرجات.
  • يضيف شريط الأدوات أزراراً لرموز LD (التماسات، الملفات، محفزات الحافة) وزر Add Rung يُدرج اتصال درجة جديدة بين قضبان الطاقة.

الرموز

التماسات (الجانب الأيسر من الدرجة)

الرمزالمعنى
--| |--تماس NO — يمرر عندما يكون المتغير TRUE
--|/|--تماس NC — يمرر عندما يكون المتغير FALSE
--|P|--تماس حافة صاعدة — يمرر لدورة واحدة على حافة صاعدة
--|N|--تماس حافة هابطة — يمرر لدورة واحدة على حافة هابطة

التماسات في سلسلة تعمل كـ AND منطقي، والمسارات المتوازية كـ OR منطقي.

الملفات (الجانب الأيمن من الدرجة)

الرمزالمعنى
--( )ملف قياسي — يكتب حالة مسار التيار الحالي في المتغير
--(/)ملف منفي — يكتب الحالة المعكوسة
--(S)ملف Set — يضبط المتغير على TRUE ويثبّته (حتى لو فُتح المسار لاحقاً)
--(R)ملف Reset — يضبط المتغير على FALSE ويثبّته

أزواج Set/reset تنفّذ دائرة إمساك بدون منطق IF-THEN صريح.

كتل الوظائف على الدرجة

يمكن إدراج الوظائف وكتل الوظائف من المكتبة داخلياً بين التماسات والملفات. يرسمها محرر LD كصندوق أفقي بقوائم دبابيس على اليمين واليسار — مكافئة دلالياً لكتلة FBD. الاستخدامات النموذجية: المؤقتات (TON)، العدّادات (CTU)، المقارنات (GT، EQ).

مثال — دائرة إمساك بأولوية الإيقاف

دائرة مرحل كلاسيكية: زر بدء xStart يشغّل محركاً qMotor، زر إيقاف xStop يطفئه. طالما ضُغط xStart مرة واحدة على الأقل ولم يُضغط xStop، يبقى المحرك مشغّلاً (إمساك ذاتي).

        |                                              |
        |   xStart      xStop                          |
   +----| |---+--|/|---+-----------------------( )----+
        |    |         |                       qMotor  |
        |    |         |                                |
        |   qMotor     |                                |
        +----| |-------+                                |
        |                                              |

اقرأها كجملة:

  • xStart (NO) أو qMotor (تماس إمساك ذاتي، NO) — بالتوازي،
  • و xStop (NC) — في سلسلة،
  • يقودان الملف qMotor.

في وقت الترجمة يترجم مترجم LD هذه الدرجة إلى:

qMotor := (xStart OR qMotor) AND NOT xStop;

هذه أبسط صيغة لمزلاج بأولوية الإيقاف. إذا ضُغط الزران معاً، ينتصر xStop لأن تماس NC يفتح المسار.

ملاحظة: يمكن استبدال زوج “تماس Set + ملف Reset” أعلاه بزوج ملفات --(S) / --(R) على متغير qMotor لتحقيق سلوك إمساك مكافئ دون تماس إمساك ذاتي مرئي على الدرجة. الاختيار بين الصيغتين هو مسألة قابلية للقراءة لمنفّذ الدائرة الكهربائية.

مواضيع ذات صلة