تعليمات TIA Portal

عمليات منطق البت
الملامسات، الملفات واكتشاف الحواف

قلب برمجة PLC. تتعامل تعليمات منطق البت مع كل عملية بولية (Boolean) — من الملامسات والملفات البسيطة إلى القلابات واكتشاف الحواف. أتقن هذه التعليمات وستتمكن من بناء أي منطق أتمتة.

ما هي عمليات منطق البت؟

عمليات منطق البت هي التعليمات الأساسية في برمجة PLC. تعمل مع الإشارات البولية (TRUE/FALSE, 1/0) — قراءة حالات المداخل، دمج الشروط بمنطق AND/OR، والتحكم في المخارج. في لغة LAD، تظهر هذه التعليمات كملامسات وملفات على السطور (Rungs). في لغة FBD، تظهر كصناديق بوابات AND/OR/NOT.

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

الملامسات — قراءة حالات المداخل

تقرأ الملامسات الحالة البولية للمتغير وتمررها عبر السلسلة المنطقية

ملامس مفتوح طبيعياً (Normally Open)

—| |—
F9

ماذا يفعل

يقرأ متغيراً بولياً (BOOL). إذا كان المتغير TRUE (1)، يغلق الملامس ويمرر الطاقة (RLO = TRUE) إلى العنصر التالي. إذا كان المتغير FALSE (0)، يظل الملامس مفتوحاً ويمنع تدفق الطاقة. هذه هي التعليمات الأكثر استخداماً في برمجة LAD.

متى يستخدم

في كل مرة تحتاج فيها إلى التحقق مما إذا كان الشرط TRUE: هل الزر مضغوط؟ هل الحساس نشط؟ هل العلم (Flag) مضبوط؟ ضع ملامساً مفتوحاً طبيعياً وقم بتعيين المتغير الخاص بك له.

نصائح المحترفين

يأتي اسم 'Normally Open' من منطق المرحلات (Relays) — الملامس يكون مفتوحاً (لا يمرر تياراً) في حالته الطبيعية/الساكنة. ويغلق عند تنشيطه.

تؤدي الملامسات المفتوحة طبيعياً المتصلة على التوالي إلى إنشاء منطق AND. وتؤدي الملامسات في الفروع المتوازية إلى إنشاء منطق OR.

في لغة FBD، المعادل هو ببساطة توصيل متغير BOOL بمدخل صندوق AND/OR — لا حاجة لرمز ملامس صريح.

ملامس مغلق طبيعياً (Normally Closed)

—|/|—
F10

ماذا يفعل

عكس الملامس المفتوح طبيعياً. إذا كان المتغير FALSE (0)، يكون الملامس مغلقاً ويمرر الطاقة. إذا كان المتغير TRUE (1)، يفتح الملامس ويمنع الطاقة. يعمل كعملية NOT على قيمة المتغير.

متى يستخدم

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

نصائح المحترفين

استخدم ملامسات NC لأزرار التوقف في حالات الطوارئ ودوائر السلامة — فهي آمنة في حالة الفشل (fail-safe). إذا انقطع السلك، يفتح ملامس NC ويوقف الآلة.

في لغة FBD، المعادل هو مدخل منفي (دائرة صغيرة على طرف دخل صندوق AND/OR).

لا تخلط بين تعليمات ملامس NC وبين زر ضاغط من نوع NC فيزيائياً. فهما مفهومان مستقلان.

نفي نتيجة العملية المنطقية (NOT)

—|NOT|—

ماذا يفعل

يعكس (ينفي) نتيجة العملية المنطقية الحالية (RLO). إذا كانت السلسلة المنطقية حتى هذه النقطة تقيم كـ TRUE، فإن NOT يجعلها FALSE، والعكس صحيح. يعمل على النتيجة المنطقية المتراكمة، وليس على متغير محدد.

متى يستخدم

عندما تحتاج إلى عكس تعبير منطقي معقد بدلاً من متغير واحد. بدلاً من إعادة كتابة الشرط بالكامل بملامسات مقلوبة، ضع NOT في النهاية لقلب النتيجة.

نصائح المحترفين

ينفي NOT كامل الـ RLO عند تلك النقطة في السلسلة — وهو يختلف عن ملامس NC الذي ينفي متغيراً واحداً فقط.

في لغة FBD، استخدم صندوق NOT أو انفي مخرج بوابة منطقية.

استخدمه باعتدال — الاستخدام المفرط لـ NOT يجعل المنطق صعب القراءة. غالباً ما تكون إعادة هيكلة المنطق أوضح.

الملفات — التحكم في المخارج

تكتب الملفات نتيجة السلسلة المنطقية إلى متغير مخرج

التعيين (Assignment)

—( )—
Shift + F7

ماذا يفعل

يكتب الـ RLO الحالي (نتيجة العملية المنطقية) إلى متغير بولي. إذا كانت السلسلة المنطقية TRUE، يصبح المتغير TRUE. إذا كانت FALSE، يصبح المتغير FALSE. هذا هو ملف المخرج القياسي — فهو يعكس منطق المدخل مباشرة في كل دورة مسح.

متى يستخدم

لأي مخرج يجب أن يتبع شروط دخله مباشرة. لمبة إشارة تعمل عند تشغيل المحرك، صمام يفتح عند استيفاء الشروط. المخرج يتتبع المدخل — عندما تصبح الشروط FALSE، يصبح المخرج FALSE أيضاً.

نصائح المحترفين

ملف التعيين 'غير احتفاظي' (non-retentive) — يكتب في كل مسح. إذا أصبح المنطق FALSE، يصبح المخرج FALSE فوراً.

يجب تعيين المتغير في شبكة (Network) واحدة فقط. التعيينات المتعددة لنفس المتغير تؤدي إلى فوز الأخير، مما يسبب سلوكاً غير متوقع.

في لغة FBD، التعيين هو ببساطة توصيل مخرج بوابة منطقية بمتغير BOOL.

التعيين المنفي

—(/)—

ماذا يفعل

يكتب الـ RLO المنفي إلى متغير بولي. إذا كانت السلسلة المنطقية TRUE، يصبح المتغير FALSE. إذا كانت السلسلة المنطقية FALSE، يصبح المتغير TRUE. يجمع بين التعيين و NOT في تعليمات واحدة.

متى يستخدم

عندما يجب أن يكون المخرج نشطاً في الحالة المعاكسة. على سبيل المثال، لمبة 'النظام موافق' التي تنطفئ عند اكتشاف خطأ. بدلاً من نفي كامل السلسلة المنطقية، استخدم الملف المنفي.

نصائح المحترفين

يعادل وضع NOT قبل ملف تعيين عادي، ولكنه أكثر إيجازاً.

استخدمه بحذر — قد تكون الملفات المنفية مربكة للقراءة. أحياناً يكون من الأوضح إعادة هيكلة المنطق.

في لغة FBD، هذا عبارة عن اتصال مخرج منفي.

إعادة ضبط المخرج (Reset)

—(R)—

ماذا يفعل

عندما يكون الـ RLO هو TRUE، يتم ضبط المتغير على FALSE (0). عندما يكون الـ RLO هو FALSE، يظل المتغير دون تغيير (يحتفظ بقيمته الحالية). هذه عملية أحادية الاتجاه — يمكنها فقط إيقاف الأشياء، وليس تشغيلها.

متى يستخدم

في دوائر الضبط/إعادة الضبط (Set/Reset): شبكة واحدة تضبط المخرج (تشغيله)، وأخرى تعيد ضبطه (إيقافه). استخدم Reset لشروط التوقف، ومسح الأعطال، وإقرار الإنذارات. عادة ما يكون لـ Reset الأولوية في منطق السلامة.

نصائح المحترفين

يعمل Reset فقط عندما يكون الـ RLO الخاص به TRUE. عندما يكون RLO هو FALSE، يظل المخرج دون تغيير — ولا يضبطه على TRUE.

في زوج S/R، التعليمات التي تظهر أخيراً في البرنامج لها الأولوية (إذا كان كلا الشرطين TRUE في نفس الوقت).

الـ Reset هو عملية احتفاظية — بعد الـ Reset، يظل المخرج FALSE حتى يتم ضبطه (Set) صراحة مرة أخرى.

ضبط المخرج (Set)

—(S)—

ماذا يفعل

عندما يكون الـ RLO هو TRUE، يتم ضبط المتغير على TRUE (1). عندما يكون الـ RLO هو FALSE، يظل المتغير دون تغيير (يحتفظ بقيمته الحالية). هذه عملية أحادية الاتجاه — يمكنها فقط تشغيل الأشياء، وليس إيقافها.

متى يستخدم

في دوائر الضبط/إعادة الضبط: استخدم Set لشروط البدء، وإشارات المسك (Latch)، وأعلام التشغيل الأول. بمجرد ضبطه، يظل المخرج TRUE حتى يتم إعادة ضبطه (Reset) صراحة — مما يجعله 'ذاتي المسك' دون الحاجة إلى ملامس مسك إضافي.

نصائح المحترفين

يعمل Set فقط عندما يكون الـ RLO الخاص به TRUE. عندما يكون RLO هو FALSE، يظل المخرج دون تغيير — ولا يعيد ضبطه.

التحكم الكلاسيكي في المحرك: الشبكة 1 = زر البدء ← Set المحرك. الشبكة 2 = زر التوقف أو خطأ ← Reset المحرك.

كن حذراً مع المتغيرات الاحتفاظية في دوائر السلامة — بعد دورة الطاقة، قد تحتفظ مخارج Set بحالتها الأخيرة اعتماداً على إعدادات الـ DB.

عمليات حقل البت (Bit Field)

ضبط أو إعادة ضبط نطاق من البتات في عملية واحدة

SET_BF — ضبط حقل البت

ماذا يفعل

يضبط مجموعة متجاورة من البتات على TRUE بدءاً من عنوان محدد. أنت تحدد بت البداية وعدد البتات المراد ضبطها. عندما يكون الـ RLO هو TRUE، يتم ضبط جميع البتات المحددة على 1.

متى يستخدم

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

نصائح المحترفين

مفيد للعمليات الجماعية بدلاً من كتابة تعليمات Set فردية لكل بت.

يحدد معامل عدد البتات عدد البتات المتتالية المتأثرة.

مثل Set، هذا يعمل فقط عندما يكون RLO هو TRUE — تظل البتات دون تغيير عندما يكون RLO هو FALSE.

RESET_BF — إعادة ضبط حقل البت

ماذا يفعل

يعيد ضبط مجموعة متجاورة من البتات على FALSE بدءاً من عنوان محدد. أنت تحدد بت البداية وعدد البتات المراد إعادة ضبطها. عندما يكون الـ RLO هو TRUE، يتم مسح جميع البتات المحددة إلى 0.

متى يستخدم

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

نصائح المحترفين

النظير لـ SET_BF — استخدمهما معاً لعمليات Set/Reset على مستوى المجموعة.

مفيد بشكل خاص لمسح كلمات الإنذار أو سجلات الحالة في عملية واحدة.

مثل Reset، هذا يعمل فقط عندما يكون RLO هو TRUE — تظل البتات دون تغيير عندما يكون RLO هو FALSE.

القلابات (Flip-Flops) — دوائر المسك

عناصر ثنائية الاستقرار تتذكر حالتها حتى يتم تغييرها صراحة

SR — قلاب ضبط/إعادة ضبط

ماذا يفعل

قلاب ثنائي الاستقرار مع أولوية للضبط (Set). له مدخلان: S (ضبط) و R (إعادة ضبط)، ومخرج واحد Q. عندما يكون S=TRUE، يصبح Q هو TRUE. عندما يكون R=TRUE، يصبح Q هو FALSE. عندما يكون كلا S و R في حالة TRUE في وقت واحد، يكون Q هو TRUE (يسود الضبط).

متى يستخدم

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

نصائح المحترفين

SR = أولوية الضبط. إذا كان S=1 و R=1 ← Q=1. يستخدم عندما يكون البدء أكثر أهمية من التوقف.

في التطبيقات الحرجة للسلامة، يفضل استخدام RS (أولوية إعادة الضبط) — فهو أكثر أماناً إذا تم تفعيل كلا الشرطين في وقت واحد.

القلاب هو صندوق واحد في كل من LAD و FBD مع مداخل S و R ومخرج Q.

RS — قلاب إعادة ضبط/ضبط

ماذا يفعل

قلاب ثنائي الاستقرار مع أولوية لإعادة الضبط (Reset). له مدخلان: R (إعادة ضبط) و S (ضبط)، ومخرج واحد Q. عندما يكون S=TRUE، يصبح Q هو TRUE. عندما يكون R=TRUE، يصبح Q هو FALSE. عندما يكون كلا R و S في حالة TRUE في وقت واحد، يكون Q هو FALSE (يسود إعادة الضبط).

متى يستخدم

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

نصائح المحترفين

RS = أولوية إعادة الضبط. إذا كان S=1 و R=1 ← Q=0. الخيار الأكثر أماناً لمعظم التطبيقات الصناعية.

نمط التحكم الكلاسيكي في المحرك: S = زر_البدء AND ليس خطأ، R = زر_التوقف OR توقف_طوارئ OR خطأ.

المخرج Q احتفاظي ضمن دورة المسح — فهو يحتفظ بقيمته حتى يتم تقييم القلاب مرة أخرى.

اكتشاف الحواف — اكتشاف تغيرات الإشارة

اكتشاف متى تنتقل الإشارة من FALSE←TRUE أو TRUE→FALSE

مسح المعامل للحافة الموجبة

—|P|—

ماذا يفعل

يكتشف حافة صاعدة (انتقال FALSE←TRUE) على معامل محدد. تقارن التعليمات القيمة الحالية بالقيمة من المسح السابق. إذا تغيرت القيمة من 0 إلى 1، يكون الـ RLO هو TRUE لدورة مسح واحدة بالضبط. يتطلب بت ذاكرة حافة (M-bit) لتخزين الحالة السابقة.

متى يستخدم

عندما تحتاج إلى نبضة واحدة من إشارة مستمرة: عد ضغطات الأزرار، تحفيز إجراء واحد عند تغير المستوى، زيادة عداد عند كل تفعيل. بدون اكتشاف الحافة، فإن الزر المضغوط سيحفز الإجراء في كل دورة مسح.

نصائح المحترفين

يجب عليك تعيين بت ذاكرة حافة فريد (M-bit) — لا تعيد استخدام نفس الـ M-bit لعدة اكتشافات حواف، وإلا فسوف تتداخل.

المخرج يكون TRUE لدورة مسح واحدة بالضبط لـ PLC (عادةً 1-50 مللي ثانية). إذا كنت بحاجة إلى نبضة أطول، استخدم مؤقتاً (Timer).

في لغة LAD، يظهر هذا كملامس يحمل علامة 'P'. يظهر متغير الـ M-bit فوق أو تحت الملامس.

مسح المعامل للحافة السالبة

—|N|—

ماذا يفعل

يكتشف حافة هابطة (انتقال TRUE→FALSE) على معامل محدد. تقارن التعليمات القيمة الحالية بالقيمة من المسح السابق. إذا تغيرت القيمة من 1 إلى 0، يكون الـ RLO هو TRUE لدورة مسح واحدة بالضبط. يتطلب بت ذاكرة حافة.

متى يستخدم

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

نصائح المحترفين

نفس قواعد الحافة الموجبة — يحتاج كل اكتشاف حافة سالبة إلى الـ M-bit الفريد الخاص به.

مفيد لإجراءات 'تحرير الزر': ابدأ مؤقتاً عند تحرير الزر، وليس عند ضغطه.

في تسلسل إيقاف التشغيل، استخدم الحواف السالبة لاكتشاف وقت اكتمال كل خطوة (ينتقل المخرج من ON إلى OFF).

ضبط المعامل عند الحافة الموجبة

—(P)—

ماذا يفعل

يضبط (يكتب TRUE إلى) معامل محدد لدورة مسح واحدة عند اكتشاف حافة موجبة (FALSE←TRUE) في الـ RLO. يجمع بين اكتشاف الحافة وتعيين المخرج في تعليمات واحدة.

متى يستخدم

عندما تريد ضبط علم أو مخرج لمسح واحد بالضبط عند الحافة الصاعدة، دون الحاجة إلى ملامس اكتشاف حافة منفصل يليه ملف.

نصائح المحترفين

هذه تعليمات من نوع الملف — توضع في نهاية السطر، وليس في المنتصف.

تتطلب بت ذاكرة حافة تماماً مثل نسخة الملامس.

المعامل يكون TRUE لمسح واحد فقط، ثم يعود تلقائياً إلى FALSE.

ضبط المعامل عند الحافة السالبة

—(N)—

ماذا يفعل

يضبط (يكتب TRUE إلى) معامل محدد لدورة مسح واحدة عند اكتشاف حافة سالبة (TRUE→FALSE) في الـ RLO. يجمع بين اكتشاف الحافة الهابطة وتعيين المخرج في تعليمات واحدة.

متى يستخدم

عندما تريد ضبط علم أو مخرج لمسح واحد بالضبط عند الحافة الهابطة. مفيد لتحفيز الإجراءات بعد إلغاء التنشيط.

نصائح المحترفين

تعليمات من نوع الملف — توضع في نهاية السطر.

تتطلب بت ذاكرة الحافة الفريد الخاص بها.

غالباً ما تستخدم لإجراءات 'التنظيف' التي يجب أن تحدث مرة واحدة عند توقف العملية.

P_TRIG — مسح الـ RLO للحافة الموجبة

ماذا يفعل

يكتشف حافة صاعدة في الـ RLO (نتيجة العملية المنطقية) بدلاً من معامل محدد. عندما تنتقل النتيجة المنطقية المجمعة من FALSE إلى TRUE، يكون المخرج هو TRUE لدورة مسح واحدة. يتم تخزين ذاكرة الحافة داخل مثيل التعليمات.

متى يستخدم

عندما تريد اكتشاف حافة صاعدة في مجموعة منطقية معقدة، وليس فقط متغير واحد. على سبيل المثال: اكتشاف متى يصبح (Sensor1 AND Sensor2 AND NOT Fault) صحيحاً لأول مرة.

نصائح المحترفين

يعمل P_TRIG على الـ RLO المتراكم — فهو يكتشف حافة كامل السلسلة المنطقية التي تسبقه.

ذاكرة الحافة مدمجة في التعليمات — لا حاجة لـ M-bit منفصل.

في لغة FBD، يكون P_TRIG صندوقاً بمدخل CLK ومخرج Q.

N_TRIG — مسح الـ RLO للحافة السالبة

ماذا يفعل

يكتشف حافة هابطة في الـ RLO. عندما تنتقل النتيجة المنطقية المجمعة من TRUE إلى FALSE، يكون المخرج هو TRUE لدورة مسح واحدة. يتم تخزين ذاكرة الحافة داخل مثيل التعليمات.

متى يستخدم

عندما تريد اكتشاف متى يتوقف شرط معقد عن كونه صحيحاً. على سبيل المثال: اكتشاف اللحظة التي ينتقل فيها (Auto_Mode AND All_Clear) من TRUE إلى FALSE.

نصائح المحترفين

N_TRIG هو النظير للحافة الهابطة لـ P_TRIG.

لا حاجة لـ M-bit منفصل — ذاكرة الحافة داخلية.

مفيد لاكتشاف نهاية شرط مجمع بدلاً من إشارة واحدة.

R_TRIG — اكتشاف حافة إشارة موجبة

ماذا يفعل

كتلة وظيفة (FB) متوافقة مع معيار IEC 61131-3 لاكتشاف الحافة الصاعدة. لها مدخل CLK ومخرج Q. عندما ينتقل CLK من FALSE إلى TRUE، يكون Q هو TRUE لدورة مسح واحدة. يتم تخزين ذاكرة الحافة في بيانات المثيل الخاصة بـ FB.

متى يستخدم

عندما تريد اكتشاف حافة بمعيار IEC مع بيانات المثيل الخاصة بها. R_TRIG هي كتلة وظيفة — كل مثيل يحافظ على ذاكرة الحافة الخاصة به تلقائياً. يفضل في الأكواد المنظمة والقابلة لإعادة الاستخدام.

نصائح المحترفين

R_TRIG هي FB — تحتاج إلى بيانات مثيل (إما DB الخاص بها أو كمثيل متعدد في FB أب). وهذا يجعلها مستقلة وقابلة لإعادة الاستخدام.

متوفرة منذ الإصدار V1.0 على S7-1200/1500. هذه هي الطريقة القياسية لمعيار IEC 61131-3 لاكتشاف الحافة.

في لغة SCL: myRTRIG(CLK := mySignal); IF myRTRIG.Q THEN ... END_IF;

F_TRIG — اكتشاف حافة إشارة سالبة

ماذا يفعل

كتلة وظيفة (FB) متوافقة مع معيار IEC 61131-3 لاكتشاف الحافة الهابطة. لها مدخل CLK ومخرج Q. عندما ينتقل CLK من TRUE إلى FALSE، يكون Q هو TRUE لدورة مسح واحدة. يتم تخزين ذاكرة الحافة في بيانات المثيل الخاصة بـ FB.

متى يستخدم

عندما تريد اكتشاف حافة هابطة بمعيار IEC مع بيانات المثيل الخاصة بها. F_TRIG هو النظير للحافة الهابطة لـ R_TRIG.

نصائح المحترفين

F_TRIG هي FB مع المثيل الخاص بها — مثل R_TRIG، فهي مستقلة ومتوافقة مع IEC 61131-3.

في لغة SCL: myFTRIG(CLK := mySignal); IF myFTRIG.Q THEN ... END_IF;

فضل استخدام R_TRIG/F_TRIG على ملامسات |P|/|N| عند كتابة كود مكتبة قابل لإعادة الاستخدام، لأنها لا تتطلب بتات M خارجية.

مرجع سريع — جميع تعليمات منطق البت الـ 20

#التعليماترمز LADالاختصارالوصف
1ملامس مفتوح طبيعياً (Normally Open)—| |—F9يمرر الطاقة عندما يكون المتغير TRUE
2ملامس مغلق طبيعياً (Normally Closed)—|/|—F10يمرر الطاقة عندما يكون المتغير FALSE
3نفي نتيجة العملية المنطقية (NOT)—|NOT|—يعكس نتيجة العملية المنطقية
4التعيين (Assignment)—( )—Shift + F7يكتب الـ RLO إلى متغير المخرج
5التعيين المنفي—(/)—يكتب الـ RLO المنفي إلى متغير المخرج
6إعادة ضبط المخرج (Reset)—(R)—يضبط المتغير على FALSE عندما يكون RLO هو TRUE
7ضبط المخرج (Set)—(S)—يضبط المتغير على TRUE عندما يكون RLO هو TRUE
8SET_BF — ضبط حقل البتيضبط نطاقاً من البتات على TRUE
9RESET_BF — إعادة ضبط حقل البتيعيد ضبط نطاق من البتات على FALSE
10SR — قلاب ضبط/إعادة ضبطقلاب مع أولوية الضبط (S=1,R=1 ← Q=1)
11RS — قلاب إعادة ضبط/ضبطقلاب مع أولوية إعادة الضبط (S=1,R=1 ← Q=0)
12مسح المعامل للحافة الموجبة—|P|—يكتشف حافة صاعدة على معامل
13مسح المعامل للحافة السالبة—|N|—يكتشف حافة هابطة على معامل
14ضبط المعامل عند الحافة الموجبة—(P)—يضبط المعامل لمسح واحد عند الحافة الصاعدة
15ضبط المعامل عند الحافة السالبة—(N)—يضبط المعامل لمسح واحد عند الحافة الهابطة
16P_TRIG — مسح الـ RLO للحافة الموجبةيكتشف حافة صاعدة في الـ RLO
17N_TRIG — مسح الـ RLO للحافة السالبةيكتشف حافة هابطة في الـ RLO
18R_TRIG — اكتشاف حافة إشارة موجبةكاشف حافة صاعدة IEC (FB)
19F_TRIG — اكتشاف حافة إشارة سالبةكاشف حافة هابطة IEC (FB)

الأسئلة الشائعة

ما الفرق بين ملفات Set/Reset وقلابات SR/RS؟

ملفات الضبط (S) وإعادة الضبط (R) هي تعليمات فردية توضع في شبكات منفصلة — أنت تتحكم في الأولوية من خلال الشبكة التي تأتي أخيراً. قلابات SR/RS هي صناديق مفردة مع كلا المدخلين — الأولوية مدمجة (SR = أولوية الضبط، RS = أولوية إعادة الضبط). القلابات أكثر إيجازاً وتجعل الأولوية واضحة.

أي اكتشاف حافة يجب أن أستخدم: |P|/|N|، (P)/(N)، P_TRIG/N_TRIG، أم R_TRIG/F_TRIG؟

تكتشف ملامسات |P|/|N| الحواف على متغير محدد وتحتاج إلى M-bit خارجي. تدمج ملفات (P)/(N) اكتشاف الحافة مع تعيين المخرج. يكتشف P_TRIG/N_TRIG الحواف في الـ RLO (المنطق المجمع). R_TRIG/F_TRIG هي FBs بمعيار IEC مع ذاكرة مدمجة. لكود المكتبات القابل لإعادة الاستخدام، يفضل R_TRIG/F_TRIG. للمنطق البسيط المضمن، ملامسات |P|/|N| كافية.

لماذا تتصرف دائرة الضبط/إعادة الضبط الخاصة بي بشكل غير متوقع؟

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

هل يمكن لاكتشاف الحافة العمل على القيم التناظرية أم فقط BOOL؟

تعليمات اكتشاف الحافة (|P|, |N|, R_TRIG, F_TRIG) تعمل فقط على الإشارات البولية. للقيم التناظرية، تحتاج إلى إنشاء مقارنة (مثلاً: القيمة > العتبة) التي تنتج نتيجة BOOL، ثم تطبيق اكتشاف الحافة على تلك الـ BOOL.

توليد منطق البت بالذكاء الاصطناعي

صف منطق التحكم الخاص بك بنص عادي وسيقوم T-IA Connect بتوليد كود PLC — بما في ذلك الملامسات والملفات والقلابات واكتشاف الحواف.