27أنماط صناعية
معالجة الإشارة التناظرية: من العدّات إلى وحدة هندسية، و NE43، وفلتر EMA
سلسلة معالجة المدخل التناظري كاملة: تحويل العدّات إلى وحدة هندسية، تحجيم 4-20 مللي أمبير، نطاقات الخطأ حسب NAMUR NE43، فلتر أسي، وحد لسرعة التغيّر لكشف عطل الحسّاس.
ما يصل إليك ليس قيمة
المدخل التناظري لا يعطيك «52.3%». يعطيك عدّات (Counts): عدداً صحيحاً من محوّل تناظري رقمي. وكل عائلة متحكمات تعدّ بطريقتها:
العائلة | المجال 0-100% | ملاحظة |
|---|---|---|
Siemens S7 | 0 … 27648 | حتى 32511 للتجاوز |
Rockwell / Allen-Bradley | 0 … 32767 | أو قيمة مُحجَّمة جاهزة |
Beckhoff / CODESYS | 0 … 32767 | قابل للضبط |
محوّل 12 بت | 0 … 4095 | في بطاقات بسيطة |
عدد 27648 ليس عشوائياً: هو 1.25 × 22118، ويتركون فوقه مجالاً للتجاوز حتى 32511 لأن الحسّاس قد يرسل أكثر من 20 مللي أمبير.
حلقة التيار 4-20
الصفر الحقلي هو 4 مللي أمبير، لا صفر. هذا ما يسمى صفراً مباشراً (Live Zero) وفائدته هندسية: إذا انقطع السلك فالتيار صفر، وهذا ليس قيمة صالحة، فتعرف أن هناك عطلاً. مع 0-10 فولت لا يمكنك التمييز بين «صفر» و«مقطوع».
mA := 4.0 + Counts * 16.0 / 27648.0;
Eng := (mA - 4.0) * 100.0 / 16.0;أو مباشرة بصيغة عامة لأي مجال:
Eng := EngMin + (Counts - CntMin) * (EngMax - EngMin) / (CntMax - CntMin);انتبه: اكتب الأعداد بفاصلة عشرية (16.0 لا 16) وإلا قسمت أعداداً صحيحة وخسرت الكسر.
NAMUR NE43: التيار يخبرك بحالته
توصية NAMUR NE43 تقسّم الحلقة إلى نطاقات، وهي اليوم عرف عام في الصناعة:
التيار | المعنى |
|---|---|
أقل من 3.6 mA | عطل: سلك مقطوع أو حسّاس ميت |
3.6 … 3.8 mA | نطاق انتقالي |
3.8 … 20.5 mA | قياس صالح، مع تجاوز مسموح |
20.5 … 21.0 mA | نطاق انتقالي |
أكثر من 21.0 mA | عطل: دائرة قصيرة أو حسّاس معطل |
لذلك لا تختبر «هل القيمة منطقية؟» بل اختبر التيار قبل التحجيم. وأي عطل يجب أن يمر على تأخير زمني قصير قبل أن يُصدّق، فنبضة كهربائية عابرة ليست عطلاً.
الفلتر الأسي EMA
الفلتر الأسي سطر واحد، وذاكرته متغيّر واحد:
Filt := Filt + Alpha * (Eng - Filt);Alpha بين 0 و 1. القيمة 1 تعني بلا فلتر، و 0.05 تعني فلتراً ثقيلاً. العلاقة التقريبية بثابت الزمن:
Alpha ≈ Ts / (Tau + Ts)مع مسح 50 ميلي ثانية و Alpha = 0.15 يكون ثابت الزمن نحو 280 ميلي ثانية. قاعدة عملية: فلتر خفيف للمستوى والضغط، وفلتر أثقل للتدفق، وبلا فلتر تقريباً لأي إشارة تدخل في منطق سلامة، لأن الفلتر يؤخّر.
حدّ سرعة التغيّر
هذه أقوى طريقة لكشف عطل الحسّاس وهو داخل النطاق الصالح. اسأل: ما أقصى سرعة يمكن أن تتغيّر بها العملية فيزيائياً؟ في مختبرنا المضخة ترفع المستوى 6% في الثانية. فأي قفزة 40% في الثانية ليست عملية، بل سلك أو تلامس.
Slope := ABS(Eng - Prev) / Ts;
IF Slope > 40.0 THEN
(* لا تدخلها الفلتر، واحتفظ بآخر قيمة سليمة *)
END_IF;الترتيب مهم
عدّات ← تحقّق NE43 ← وحدة هندسية ← حدّ سرعة ← فلتر ← منطق. لا تفلتر قبل أن تتحقّق، فالفلتر يخفي العطل ويجعل سلكاً مقطوعاً يبدو كهبوط بطيء محترم.
جرّبه في المختبر
المختبر يعمل في متصفحك: محرر ST، وعملية افتراضية تناسب الدرس، ونفس البرنامج كمخطط Ladder حي، وجدول مراقبة، وتصدير إلى Siemens SCL.
ماذا تجرّب
- شغّل البرنامج وراقب mA و Eng و Filt جنباً إلى جنب بينما يدور الخزان بين 30 و 85%.
- لاحظ Filt يتأخر قليلاً عن Eng: هذا المرشح.
- اضغط STOP مطولاً: mA يصبح 0، و Bad يضيء الإنذار، والمضخة تتوقف بأمان و Eng يحتفظ بآخر قيمة جيدة.
- غيّر Alpha إلى 0.5 ثم إلى 0.01 وقارن.
مصطلحات هذا الدرس
يبحث الناس عن هذا الدرس بـ
تحجيم 4-20 mA في PLCanalog scaling structured textNAMUR NE43معالجة الاشارة التناظرية PLCفلتر EMA في PLCكشف عطل الحساس PLCعدات المدخل التناظري 27648rate of change limit plc
محتوى الدورة
- 01ما هي لغة ST؟ ومتى تستخدمها بدل Ladder
- 02كيف يشتغل الـ PLC: دورة المسح وصورة المداخل والمخارج
- 03هيكل البرنامج: POU و PROGRAM و FUNCTION و FUNCTION_BLOCK
- 04أول برنامج: تشغيل مضخة بالإمساك الذاتي (Seal-in)
- 05أنواع البيانات: BOOL و INT و REAL و TIME وغيرها
- 06التصريح عن المتغيرات: VAR و VAR_INPUT و RETAIN
- 07القيم الحرفية والثوابت: 16#FF و 2#1010 و T#5s
- 08التحويل بين الأنواع وتحجيم إشارة 4-20 مللي أمبير
- 09الإسناد والحساب في ST: := وأولوية العمليات
- 10المنطق البولياني والمقارنات وعمليات البتات
- 11الدوال القياسية: ABS و SQRT و MIN و MAX و LIMIT و SEL و MUX
- 12الشرط IF و ELSIF و ELSE: القواعد ومتى تتجنبه
- 13التعليمة CASE وأول آلة حالات
- 14حلقة FOR والحارس Watchdog
- 15WHILE و REPEAT و EXIT و CONTINUE و RETURN
- 16كشف الحافة: R_TRIG و F_TRIG ومشكلة «نفّذ في كل مسح»
- 17المؤقتات: TON و TOF و TP
- 18العدّادات: CTU و CTD و CTUD
- 19القلّابات: SR و RS ومن يغلب عند التعارض
- 20اكتب دالتك: FUNCTION وقيمة الإرجاع
- 21اكتب كتلتك الوظيفية: FUNCTION_BLOCK لمحرك
- 22المصفوفات: ARRAY وفلتر المتوسط المتحرك
- 23الأنواع المركّبة: STRUCT والتعدادات
- 24المراجع والمؤشرات: REF_TO و POINTER TO ولماذا تتجنبها
- 25آلة الحالات: تسلسل دفعة كامل بـ CASE لا يعلق أبداً
- 26إدارة الإنذارات على أصول ISA-18.2: تأخير، نطاق ميت، إقرار، وأول خروج
- 27معالجة الإشارة التناظرية: من العدّات إلى وحدة هندسية، و NE43، وفلتر EMA
- 28التحكم المغلق في ST: من التشغيل والإيقاف بفجوة إلى PID عملي
- 29تشغيل المحركات والصمامات: سماحيات، تشابيك، رجع تشغيل، وزمن حركة
- 30نفس الكود عند كل شركة: SCL و Studio 5000 و CODESYS و TwinCAT
- 31الاختبار وتصحيح الأخطاء: جدول المراقبة والفرض والمحاكاة
- 32دليل أسلوب ST: التسمية والتعليقات والثوابت وإدارة النسخ
- 33المشروع الختامي: محطة خزان كاملة بآلة حالات وإنذار وعدّ دفعات
- 3420 سؤال مقابلة في ST وبرمجة PLC بإجابات قصيرة