التكنولوجيا المبرمجة: المبرمج الآلي الصناعي API
يشرح هذا الدرس لماذا حلّ المبرمج الآلي الصناعي (API) محلّ المعقبات المربوطة، وبنيته الداخلية ودورة المعالجة وزمن الاستجابة، وربط الأزرار والملتقط PNP والملامسات والموزعات بمداخله ومخارجه، وجدول التعيينات وترجمة المتمن إلى متمن المبرمج الآلي ولغاته (SFC والكتل الوظيفية وLadder)؛ ويُختم بتمارين محلولة بنمط البكالوريا.
يتكوّن الدرس من 6 أجزاء: 1. من المنطق المربوط إلى المنطق المبرمج: تعريف المبرمج الآلي وبنيته، 2. دورة المعالجة وزمن الاستجابة واختيار المبرمج الآلي، 3. ربط المداخل والمخارج: الأزرار والملتقط PNP والمنفذات المتصدرة، 4. جدول التعيينات والمتمن من وجهة نظر المبرمج الآلي، 5. البرمجة بلغة المتمن (SFC) والكتل الوظيفية ولغة الملامسات، 6. تمارين محلولة بنمط البكالوريا.
1. من المنطق المربوط إلى المنطق المبرمج: تعريف المبرمج الآلي وبنيته
لماذا نحتاج إلى التكنولوجيا المبرمجة؟
جسّدنا المتمن في الدروس السابقة بالتكنولوجيا المربوطة (logique câblée): المعقب الكهربائي (séquenceur électrique) بوحدة مرحلة (module d'étape) لكل مرحلة، والمعقب الهوائي بخلية هوائية لكل مرحلة. في هذه التكنولوجيا السلوك مكتوب في الأسلاك: ترتيب المراحل، والقابليات، والأفعال، كلها تحددها طريقة الربط بين الوحدات والملامسات.
لهذه الطريقة مساوئ تظهر بوضوح كلما كبر النظام:
- حجم كبير: وحدة مرحلة لكل مرحلة، ومرحلات وملامسات مساعدة للذاكرة والتشابك، فمتمن من 20 مرحلة يملأ خزانة كاملة.
- عدد كبير من الأسلاك وربط معقّد يصعب تتبّعه.
- أي تعديل في دفتر الشروط (إضافة مرحلة، تغيير ترتيب فعلين، إضافة نمط تشغيل) يستلزم إعادة الربط، أي توقيف الإنتاج وفك الأسلاك وإعادة تركيبها.
- صعوبة البحث عن العطب: لا توجد أي معلومة عن حالة النظام إلا بالقياس سلكًا بسلك.
- التأجيلات والعدّ تحتاج إلى أجهزة إضافية (مرحلات زمنية، دارات NE555، عدادات).
أما في التكنولوجيا المبرمجة (logique programmée) فالسلوك مكتوب في برنامج مخزّن في ذاكرة. الأسلاك لا تربط إلا الملتقطات والأزرار بالمداخل، والمنفذات المتصدرة بالمخارج؛ وهذا الربط لا يتعلق بالدورة. لتغيير الدورة نغيّر البرنامج فقط، والأسلاك تبقى كما هي.
| المعيار | المعقب الكهربائي (مربوط) | المبرمج الآلي (مبرمج) | |---|---|---| | مكان المنطق | في الربط بين الوحدات | في البرنامج داخل الذاكرة | | الحجم | وحدة لكل مرحلة | جهاز واحد مهما كان عدد المراحل في حدود ذاكرته | | الربط | كثير ومعقّد | الملتقطات إلى المداخل، والمنفذات المتصدرة إلى المخارج فقط | | تعديل الدورة | إعادة الربط | تعديل البرنامج وإعادة تحميله | | التأجيل والعدّ | أجهزة خارجية | كتل وظيفية داخلية (مؤجلات، عدادات) | | التشخيص | بالقياس | الحالة معروضة على الشاشة أو الحاسوب |
> ملاحظة: في الميدان الصناعي اليوم لم يعد المعقب الكهربائي يُستعمل في الأنظمة الجديدة، وحلّ محله المبرمج الآلي؛ لكنه يبقى مفيدًا لفهم معنى «وحدة المرحلة» والذاكرة، وهو موضوع أسئلة في البكالوريا.
تعريف المبرمج الآلي الصناعي
المبرمج الآلي الصناعي (Automate Programmable Industriel، ويُختصر API؛ وبالإنجليزية PLC) جهاز إلكتروني قابل للبرمجة، مصمَّم للعمل في الوسط الصناعي، يقود نظامًا آليًا: يكتسب المعلومات المنطقية (أو التماثلية) من الملتقطات ولوحة التحكم، ويعالجها وفق برنامج مكتوب في ذاكرته، ثم يُصدر الأوامر إلى المنفذات المتصدرة (pré-actionneurs) وإلى عناصر الإشارة.
كلمة «صناعي» تعني أنه:
- يتحمّل ظروف الورشة: الحرارة، والرطوبة، والاهتزازات، والتشويش الكهرومغناطيسي الذي تُحدثه المحركات والملامسات؛
- يقبل مباشرة الإشارات الصناعية: مداخل تحت $24\ V$ مستمر أو $230\ V$ متناوب، ومخارج بمرحلات أو بمقاحل؛
- يُبرمج بلغات بيانية قريبة مما يعرفه الكهربائي: المتمن، ومخطط الكتل، ومخطط الملامسات، فلا يحتاج التقني إلى أن يكون مبرمج حواسيب.
مكان المبرمج الآلي في النظام الآلي
المبرمج الآلي هو جزء التحكم (PC). في سلسلة المعلومات يُنجز الوظائف الثلاث: اكتسب (عبر مداخله)، وعالج (بالبرنامج)، واتصل (بالشاشة والأزرار ومنفذ التوصيل بالحاسوب). ثم يرسل أوامره إلى سلسلة الطاقة عند وظيفة وزّع، أي إلى المنفذات المتصدرة.

يبيّن الشكل المبرمج الآلي (الإطار المتقطع) بين عالمين: في الأسفل يسارًا الملتقطات والأزرار التي تدخل عبر المداخل I1 … In، وفي الأسفل يمينًا المنفذات المتصدرة التي تخرج إليها الأوامر عبر المخارج Q1 … Qn؛ وفي الأعلى التغذية والحاسوب الذي يُكتب به البرنامج.
مكوّنات المبرمج الآلي
| المكوّن | دوره | |---|---| | التغذية (alimentation) | تحوّل توتر الشبكة ($230\ V$ متناوب) إلى التوترات المستمرة التي تحتاجها الدارات الداخلية، وتغذّي في كثير من الأجهزة الملتقطات بـ $24\ V$ مستمر | | الوحدة المركزية (unité centrale) أو المعالج | تقرأ البرنامج تعليمة بعد تعليمة، وتنجز العمليات المنطقية والتأجيل والعدّ والمقارنة | | ذاكرة البرنامج | تحفظ برنامج المستعمل، وهي غير متطايرة (EEPROM أو Flash): لا يضيع البرنامج عند انقطاع التيار | | ذاكرة المعطيات (RAM) | تحفظ صورة المداخل وصورة المخارج، ومتغيرات المراحل، وقيم المؤجلات والعدادات والبتات الداخلية | | وسائط المداخل (interface d'entrées) | تستقبل إشارات الملتقطات والأزرار، تعزلها كهربائيًا (مقرن ضوئي)، وترشّحها من الطفيليات، وتحوّلها إلى مستوى منطقي يفهمه المعالج | | وسائط المخارج (interface de sorties) | تحوّل نتائج البرنامج إلى أوامر قادرة على تغذية وشائع الملامسات والموزعات والمصابيح، بمرحلات أو بمقاحل، مع العزل | | منفذ الاتصال ووحدة البرمجة (console / PC) | لكتابة البرنامج وتحميله في المبرمج، ومراقبة حالته أثناء التشغيل | | الناقل (bus) | يربط المعالج بالذاكرة وبالوسائط |
> احذر خلطًا شائعًا: وسائط المداخل تستقبل المعلومات الآتية من الملتقطات؛ ووسائط المخارج هي التي ترسل الأوامر إلى المنفذات المتصدرة. لا تعكس الدورين.
المبرمج المدمج والمبرمج القطعي
- المبرمج المدمج (compact): جهاز واحد يضم التغذية والمعالج والمداخل والمخارج، وغالبًا شاشة صغيرة وأزرارًا. عدد مداخله ومخارجه محدود (من نحو 10 إلى بضع عشرات) ويمكن زيادته بوحدات امتداد (extensions). هذا هو النوع المستعمل في مخابر الثانويات: يُبرمج من الحاسوب ببرمجية تقدّم لغة المتمن (SFC) ولغة الكتل الوظيفية (FBD)، وغالبًا لغة الملامسات Ladder أيضًا.
- المبرمج القطعي (modulaire): رفّ (rack) تُركَّب فيه وحدات منفصلة: وحدة تغذية، ووحدة معالج، وبطاقات مداخل، وبطاقات مخارج، وبطاقات اتصال؛ يُستعمل في المنشآت الكبيرة.
في هذا الدرس نستعمل مبرمجًا مدمجًا عامًا مداخله I1 و I2 … ومخارجه Q1 و Q2 … . بعض الأجهزة وبعض مواضيع البكالوريا تسمّي المخارج O1 و O2 … ؛ المعنى واحد.
مثال محلول: ماذا يُربط بالمبرمج الآلي؟
محطة وسم آلية: بساط يديره محرك لاتزامني M1 عبر الملامس KM1، ورافعة وسم V مزدوجة المفعول يقودها موزع 5/2 ثنائي الاستقرار بوشيعتين dV+ و dV−، وملتقطا نهاية الشوط v0 و v1، وملتقط حضور القطعة p من نوع PNP، وزر بداية الدورة Dcy، وزر توقف Ar، ومبدلة Auto (آلي / دورة بدورة)، ومرحل حراري F1 يحمي المحرك، ومنصهرات.
صنّف العناصر: ما يُربط بالمداخل، وما يُربط بالمخارج، وما لا يُربط بالمبرمج.
الحل:
| الصنف | العناصر | العدد | |---|---|---| | مداخل (معلومات تدخل جزء التحكم) | Dcy، Ar، Auto، v0، v1، p، وتماس المرحل الحراري F1 (للإعلام بالخلل) | 7 | | مخارج (أوامر إلى المنفذات المتصدرة) | وشيعة KM1، ووشيعتا الموزع dV+ و dV− | 3 | | لا تُربط بالمبرمج | المحرك M1 والرافعة V (منفذات)، والملامسات الرئيسية لـ KM1، والمنصهرات، ودارة الاستطاعة كلها | — |
الموزع ثنائي الاستقرار له وشيعتان، فيحتاج إلى مخرجين. أما المحرك فلا يُربط أبدًا بمخرج المبرمج: المبرمج يغذّي وشيعة الملامس فقط، والملامس هو الذي يقطع ويوصل تيار المحرك تحت $400\ V$.
أخطاء شائعة
- اعتبار المحرك أو الرافعة «مخرجًا» للمبرمج: المخرج يقود المنفذ المتصدر (الملامس، الموزع)، لا المنفذ.
- حساب مخرج واحد لموزع ثنائي الاستقرار: له وشيعتان، فله مخرجان.
- الظن أن المبرمج الآلي يُلغي الأمن المربوط: زر التوقف الاستعجالي AU يبقى سلكيًا يقطع تغذية المخارج (الجزء 3).
2. دورة المعالجة وزمن الاستجابة واختيار المبرمج الآلي
دورة المعالجة (cycle de scrutation)
المبرمج الآلي لا ينفّذ برنامجه مرة واحدة، بل يعيده باستمرار ما دام في نمط التشغيل RUN. كل تنفيذ كامل يسمّى دورة معالجة أو دورة مسح، وتتكون من أربع مراحل متتالية:

يبيّن الشكل المراحل الأربع التي تتكرر بلا توقف؛ والمدة اللازمة لإنجازها كلها هي زمن الدورة $T_c$.
- قراءة المداخل: يقرأ المعالج حالة كل المداخل I1 … In دفعة واحدة، وينسخها في منطقة من ذاكرة المعطيات تسمّى صورة المداخل (image des entrées). هذه الصورة تبقى ثابتة طوال الدورة، حتى لو تغيّر الملتقط أثناءها.
- تنفيذ البرنامج: تُنفَّذ التعليمات بالترتيب، من الأولى إلى الأخيرة، باستعمال صورة المداخل ومتغيرات المراحل والكتل الداخلية؛ والنتائج تُكتب في صورة المخارج، لا في المخارج مباشرة.
- تحديث المخارج: تُنسخ صورة المخارج إلى المخارج الحقيقية Q1 … Qn دفعة واحدة، فتنغلق أو تنفتح تماسات المرحلات.
- المهام الداخلية: فحص ذاتي (autodiagnostic)، ومراقبة زمن الدورة (watchdog)، والاتصال بالحاسوب أو بالشاشة.
زمن الدورة يتعلق بطول البرنامج وبسرعة المعالج، وهو في المبرمجات المدمجة من رتبة بضعة ميليثوانٍ إلى بضع عشرات الميليثواني (قيمة نموذجية: $T_c = 10\ ms$).
ثلاث نتائج مهمة لدورة المعالجة
1. المخرج يأخذ آخر قيمة كُتبت فيه. بما أن المخارج لا تُحدَّث إلا في آخر الدورة، فإذا كُتب المخرج نفسه في موضعين من البرنامج فإن الموضع الأخير وحده هو الذي يصل إلى المخرج. لذلك نكتب لكل مخرج معادلة واحدة تجمع كل المراحل التي تنشّطه: إذا كان KM1 مطلوبًا في المرحلتين 1 و4 نكتب:
$ Q1 = X_1 + X_4 $
ولا نكتب «$Q1 = X_1$» ثم في سطر آخر «$Q1 = X_4$»، لأن السطر الثاني يمحو الأول: حين تكون المرحلة 1 نشطة يصير $Q1 = 0$ ولا يدور البساط.
2. قد يضيع النبض القصير. إذا تغيّر مدخل ثم عاد إلى حالته قبل لحظة القراءة التالية، فلن يراه البرنامج أبدًا. لكي يُقرأ النبض حتمًا يجب أن تكون مدته أطول من زمن الدورة (وأطول من زمن ترشيح المدخل).
3. الاستجابة ليست لحظية. بين تغيّر الملتقط وتغيّر المخرج يمرّ زمن يسمّى زمن الاستجابة $t_r$.
زمن الاستجابة

يبيّن المخطط ثلاث دورات بـ $T_c = 10\ ms$ (L: قراءة، P: برنامج، E: كتابة المخارج). يتغير المدخل I1 عند $t = 2\ ms$، بعد قراءة الدورة 1 مباشرة، فلا يظهر في صورة المداخل إلا عند قراءة الدورة 2 ($t = 10\ ms$)؛ يعالجه البرنامج في الدورة 2، ولا يصل الأمر إلى المخرج Q1 إلا عند تحديث المخارج في آخرها ($t = 20\ ms$). زمن الاستجابة هنا $18\ ms$.
- أسوأ حالة: يتغير المدخل مباشرة بعد القراءة، فتضيع دورة كاملة قبل أن يُقرأ: $t_r \approx 2\,T_c$.
- أحسن حالة: يتغير المدخل قبيل القراءة مباشرة: $t_r \approx T_c$.
إذا أضفنا زمن ترشيح المدخل $t_f$ وزمن انغلاق مرحل المخرج $t_s$:
$ t_{r\,max} = t_f + 2\,T_c + t_s $
$ t_{r\,min} = t_f + T_c + t_s $
مثال محلول
مبرمج آلي زمن دورته $T_c = 10\ ms$، وزمن ترشيح مداخله $t_f = 3\ ms$، وزمن انغلاق مرحلات مخارجه $t_s = 10\ ms$.
- احسب زمن الاستجابة الأقصى والأدنى.
- قطعة طولها $2\ cm$ تمر أمام ملتقط بسرعة $1\ m/s$. هل يراها المبرمج حتمًا؟ ونفس السؤال لقطعة طولها $0{,}5\ cm$.
الحل:
- الأقصى: $t_{r\,max} = 3 + 2\times 10 + 10 = 33\ ms$. الأدنى: $t_{r\,min} = 3 + 10 + 10 = 23\ ms$.
- مدة النبض هي زمن مرور القطعة أمام الملتقط: $\Delta t = \dfrac{L}{v}$.
- القطعة الأولى: $\Delta t = \dfrac{0{,}02}{1} = 0{,}02\ s = 20\ ms$. وبما أن $20\ ms > T_c$ و $20\ ms > t_f$ فهي تُقرأ حتمًا في دورة واحدة على الأقل.
- القطعة الثانية: $\Delta t = \dfrac{0{,}005}{1} = 5\ ms$، وهي أقصر من $T_c = 10\ ms$: قد تمر بين قراءتين فلا يراها البرنامج. الحل: إنقاص السرعة، أو استعمال مدخل عدّ سريع إن وُجد.
> ملاحظة للامتحان: زمن الاستجابة لا يكاد يُلاحظ في التحكم في رافعة أو بساط (بضع عشرات الميليثواني)، لكنه يحدد هل يرى المبرمج نبضًا قصيرًا أم لا.
أنماط التشغيل وخطوات العمل
- STOP: البرنامج لا يُنفَّذ والمخارج كلها في الحالة 0؛ في هذا النمط يُحمَّل برنامج جديد.
- RUN: تنفيذ دوري للبرنامج كما سبق. عند المرور إلى RUN تُنشَّط المراحل الابتدائية وتُصفَّر المراحل الأخرى.
خطوات العمل ببرمجية الحاسوب في المخبر:
- التحرير (édition): كتابة البرنامج بلغة المتمن أو الكتل أو Ladder، ثم الترجمة (compilation) التي تكشف أخطاء التركيب.
- المحاكاة (simulation): تجربة البرنامج على الحاسوب بتغيير المداخل يدويًا ومشاهدة المراحل والمخارج، دون أي خطر على الجزء المنفذ.
- التحميل: نقل البرنامج من الحاسوب إلى المبرمج عبر منفذ الاتصال.
- المراقبة (monitoring): تشغيل المبرمج فعليًا متصلًا بالحاسوب، ومشاهدة حالة المداخل والمراحل والمخارج في الزمن الحقيقي.
معايير اختيار المبرمج الآلي
- عدد المداخل وعدد المخارج ونوعها: منطقية (TOR) أو تماثلية، مداخل $24\ V$ مستمر أو $230\ V$ متناوب.
- نوع المخارج: بمرحلات (لحمولة متناوبة أو مستمرة) أو بمقاحل (لحمولة مستمرة فقط، وسريعة).
- سعة الذاكرة: عدد التعليمات أو المراحل الممكنة، وعدد الكتل الداخلية (مؤجلات، عدادات).
- زمن الدورة إذا كان النظام سريعًا.
- توتر التغذية، وإمكانية الامتداد، والاتصال، والثمن.
يُستحسن ترك هامش احتياط (نحو 20 %) من المداخل والمخارج لتعديلات لاحقة.
مثال محلول
نظام يحتاج إلى 9 مداخل و6 مخارج، وكل المنفذات المتصدرة وشائع تحت $24\ V$ متناوب. لدينا:
| النموذج | المداخل ($24\ V$ مستمر) | المخارج | |---|---|---| | A | 8 | 4 بمرحلات | | B | 12 | 8 بمرحلات | | C | 12 | 8 بمقاحل ($24\ V$ مستمر) | | D | 16 | 10 بمرحلات |
اختر النموذج الأنسب مع هامش احتياط 20 %.
الحل: المداخل اللازمة مع الهامش: $9\times 1{,}2 = 10{,}8$، أي 11 مدخلًا على الأقل؛ المخارج: $6\times 1{,}2 = 7{,}2$، أي 8 مخارج على الأقل. A لا يكفي. C مرفوض لأن مخارجه بمقاحل لا تقود وشائع متناوبة. B و D يكفيان، ونختار B لأنه أصغر نموذج يحقق الشروط (D أغلى دون حاجة).
أخطاء شائعة
- الظن أن المخرج يتغير لحظة تغيّر الملتقط: يتغير بعد دورة إلى دورتين.
- كتابة المخرج نفسه في موضعين من البرنامج.
- اختيار مخارج بمقاحل لقيادة وشائع تحت توتر متناوب.
3. ربط المداخل والمخارج: الأزرار والملتقط PNP والمنفذات المتصدرة
المداخل المنطقية تحت $24\ V$ مستمر
في المبرمج المدمج المغذّى بـ $24\ V$ مستمر، القطب + والقطب − للتغذية هما أيضًا مرجع المداخل. المدخل Ii يكون:
- في الحالة 1 حين يستقبل توترًا قريبًا من $+24\ V$ بالنسبة إلى القطب − (مثلًا كل توتر بين $15\ V$ و $30\ V$)؛
- في الحالة 0 حين يكون غير موصول أو تحت توتر ضعيف (مثلًا أقل من $5\ V$).
داخل وسائط المداخل يمر تيار المدخل (بضعة ميليأمبيرات) في الثنائي الضوئي لمقرن ضوئي (optocoupleur): هكذا تُعزل دارات المعالج عن أسلاك الورشة، ثم ترشّح دارة RC الطفيليات والارتدادات قبل أن تصل الإشارة إلى المعالج.
إذن لنعطي مدخلًا الحالة 1 نوصله بالموجب $+24\ V$ عبر تماس الزر أو الملتقط. هذا ما يسمّى المداخل ذات المنطق الموجب.
ربط الأزرار والملتقطات الميكانيكية والملتقط PNP

يبيّن الشكل تغذية المبرمج ($+24\ V$ على + و$0\ V$ على −)، ثم أربعة عناصر بين الخط $+24\ V$ والمداخل: الزر Dcy بتماس مفتوح في الراحة على I1، والزر Ar بتماس مغلق في الراحة على I2، وملتقط نهاية الشوط v0 ببكرة على I3، والملتقط p من نوع PNP على I4 (البني BN إلى $+24\ V$، والأزرق BU إلى $0\ V$، والأسود BK إلى المدخل).
| العنصر | نوع التماس | المدخل في الراحة | المدخل عند التشغيل | الشرط في البرنامج «العنصر مشغَّل» | |---|---|---|---|---| | Dcy (زر) | مفتوح في الراحة (NO) | $I1 = 0$ | $I1 = 1$ | $I1$ | | Ar (زر) | مغلق في الراحة (NF) | $I2 = 1$ | $I2 = 0$ | $\overline{I2}$ | | v0 (نهاية شوط) | NO | $I3 = 0$ (الساق بعيدة عنه) | $I3 = 1$ (الساق داخلة تضغطه) | $I3$ | | p (ملتقط PNP) | خرج NO | $I4 = 0$ | $I4 = 1$ (قطعة أمامه) | $I4$ |
لماذا يُربط زر التوقف بتماس مغلق في الراحة؟
لأمن الأشخاص والآلة: إذا انقطع سلك الزر Ar أو فُكّ مربطه صار $I2 = 0$، وهي الحالة نفسها التي يعطيها الضغط على الزر، فيتوقف النظام. لو رُبط الزر بتماس مفتوح لما انتبه أحد إلى انقطاع السلك، ولن يتوقف النظام عند الضغط. هذا مبدأ الأمن الإيجابي.
> قاعدة ذهبية: البرنامج يختبر حالة المدخل لا نوع التماس. زر مغلق في الراحة يعطي $I = 1$ في الراحة؛ فإذا أردنا في البرنامج الشرط «الزر مضغوط» كتبنا $\overline{I}$.
الملتقطات ثلاثية الأسلاك: PNP و NPN
الملتقطات الإلكترونية (التحريضية والسعوية والضوئية) تحتاج إلى تغذية، لذلك لها ثلاثة أسلاك بألوان موحّدة:
- BN (بني): الموجب $+24\ V$؛
- BU (أزرق): السالب $0\ V$؛
- BK (أسود): الخرج، يوصل إلى المدخل.
داخل الملتقط مقحل خرج يعمل كمبدّل:
| النوع | مقحل الخرج | عند الكشف يوصل BK بـ | المدخل المناسب | |---|---|---|---| | PNP | الباعث إلى BN والمجمع إلى BK | $+24\ V$ (يعطي تيارًا للمدخل) | مدخل بمنطق موجب (الحالة 1 بـ $+24\ V$) | | NPN | الباعث إلى BU والمجمع إلى BK | $0\ V$ (يمتص تيارًا) | مدخل بمنطق سالب |
في الشكل يظهر مقحل PNP داخل الملتقط p، ودارة الكشف (dét.) مغذّاة بين BN و BU: حين تكشف قطعة يتشبع المقحل، فيصير BK موصولًا بـ BN أي $+24\ V$، ويمر التيار من BK في المدخل I4 ثم يعود إلى القطب −. لذلك مع مداخل بمنطق موجب نختار ملتقطًا PNP؛ والملتقط NPN لا يعطي المدخل $+24\ V$ أبدًا فيبقى المدخل في الحالة 0.
> تنبيه: الأزرق BU يجب أن يُربط بالقطب − نفسه الذي تُرجع إليه المداخل، وإلا لم يكن لتيار المدخل مسار رجوع.
مثال محلول: ميزانية تغذية الملتقطات
تغذية $24\ V$ مستمر المدمجة في المبرمج تعطي $250\ mA$ على الأكثر. نربط بها ستة ملتقطات PNP، يستهلك كل منها لنفسه $20\ mA$، ويمتص كل مدخل $4\ mA$ حين يكون في الحالة 1.
- احسب المقاومة المكافئة لمدخل.
- هل تكفي التغذية إذا كشفت الملتقطات الستة معًا؟
الحل:
- $R_e = \dfrac{U}{I_e} = \dfrac{24}{0{,}004} = 6000\ \Omega = 6\ k\Omega$.
- كل ملتقط يكشف يسحب من التغذية تيار استهلاكه وتيار المدخل الذي يغذيه: $20 + 4 = 24\ mA$. للستة: $6\times 24 = 144\ mA$، وهو أقل من $250\ mA$: التغذية تكفي ويبقى $106\ mA$ احتياطًا.
المخارج: بمرحلات أو بمقاحل
| | مخرج بمرحل | مخرج بمقحل | |---|---|---| | المبدأ | تماس جاف بين مشترك C ومخرج Qi | مقحل يوصل $+24\ V$ إلى المخرج | | التوتر المقطوع | متناوب أو مستمر ($24\ V$ إلى $230\ V$) | مستمر فقط ($24\ V$) | | التيار | كبير نسبيًا (عدة أمبيرات حسب الصانع) | صغير (نحو $0{,}5\ A$) | | السرعة والعمر | بطيء (نحو $10\ ms$)، يتآكل التماس | سريع، لا يتآكل |
المخارج بمرحلات هي الأكثر استعمالًا في المخابر لأنها تقود مباشرة وشائع الملامسات والموزعات تحت $24\ V$ متناوب. مخارج المبرمج مجمّعة في مجموعات لكل منها مشترك C: التوتر الذي يُغذّى به المشترك هو الذي يصل إلى الوشيعة حين ينغلق التماس.
ربط المخارج بالملامسات والموزعات
نأخذ مثالًا نموذجيًا: محرك يدور في اتجاهين بالملامسين KM1 و KM2، ورافعة يقودها موزع 5/2 ثنائي الاستقرار بوشيعتين dV+ و dV−.

يبيّن الشكل التغذية $24\ V$ متناوب من محوّل $230/24\ V$، عبر المنصهرة FU ثم زر التوقف الاستعجالي AU (مغلق في الراحة)، إلى المشترك C. حين يغلق المبرمج تماس Q1 تتغذى وشيعة KM1 عبر التماس المغلق في الراحة لـ KM2 (تشابك)، ثم عبر تماس المرحل الحراري F1 (95-96)؛ و Q2 يقود KM2 بالطريقة نفسها؛ و Q3 و Q4 يقودان وشيعتي الموزع dV+ و dV−. كل الوشائع ترجع إلى الطرف الآخر للمحوّل.
لاحظ ثلاث قواعد أمن سلكية تبقى ضرورية رغم البرنامج:
- AU يقطع تغذية كل المخارج مباشرة، دون المرور بالبرنامج.
- التشابك الكهربائي: التماس المغلق في الراحة لـ KM2 على التسلسل مع وشيعة KM1، والعكس. البرنامج لا ينشّط Q1 و Q2 معًا، لكن ملامسًا التصقت تماساته أو تأخر في الانفتاح لا يراه البرنامج؛ التشابك السلكي يمنع عندئذ قصر الطورين في دارة الاستطاعة.
- المرحل الحراري F1 يقطع وشيعتي الملامسين عند الحمولة الزائدة؛ ويمكن قراءة تماسه الآخر (97-98، مفتوح في الراحة) بمدخل ليعرف البرنامج الخلل.
> دارة الاستطاعة (المحرك تحت $3\times 400\ V$) لا تمر أبدًا في المبرمج الآلي: المبرمج يقود الوشائع، والملامسات تقطع الاستطاعة.
مع مخارج بمقاحل تحت $24\ V$ مستمر، يُركَّب على كل وشيعة ثنائي عجلة حرة (diode de roue libre) على التوازي، مهبطه نحو +، لحماية المقحل من التوتر الزائد عند القطع، إن لم يكن مدمجًا في المخرج.
مثال محلول: هل يتحمل المخرج الوشيعة؟
مرحل المخرج يتحمل $2\ A$ لحمولة حثية تحت $24\ V$ متناوب. وشيعة الملامس تستهلك عند الجذب $45\ VA$ وعند المسك $6\ VA$؛ ووشيعة الموزع $4\ VA$.
- احسب تيار وشيعة الملامس عند الجذب وعند المسك، وتيار وشيعة الموزع.
- هل يمكن ربط هذه الوشائع مباشرة بالمخارج؟
الحل:
- ملامس، جذب: $I = \dfrac{S}{U} = \dfrac{45}{24} \approx 1{,}88\ A$؛ مسك: $\dfrac{6}{24} = 0{,}25\ A$. موزع: $\dfrac{4}{24} \approx 0{,}17\ A$.
- أكبر تيار ($1{,}88\ A$ لحظة الجذب) أقل من $2\ A$: الربط المباشر ممكن. لو كانت قدرة الجذب $70\ VA$ لكان التيار $\dfrac{70}{24} \approx 2{,}92\ A$ أكبر من $2\ A$، ولوجب وضع مرحل وسيط بين المخرج والملامس.
أخطاء شائعة
- ربط ملتقط NPN بمداخل منطقها موجب: لا يتغير المدخل أبدًا.
- نسيان ربط الأزرق BU بالقطب −، أو ربط BK بـ $+24\ V$ مباشرة.
- كتابة الشرط «Ar مضغوط» بـ $I2$ بينما الزر مربوط بتماس مغلق في الراحة.
- الاكتفاء بالتشابك في البرنامج وحذف التشابك السلكي.
- ربط المحرك أو دارة الاستطاعة بمخرج المبرمج.
4. جدول التعيينات والمتمن من وجهة نظر المبرمج الآلي
من وجهة نظر جزء التحكم إلى وجهة نظر المبرمج الآلي
رأينا في درس المتمن ثلاث وجهات نظر: النظام، والجزء المنفذ، وجزء التحكم. حين يُجسَّد جزء التحكم بمبرمج آلي نضيف وجهة نظر رابعة هي وجهة نظر المبرمج الآلي (grafcet codé automate): نفس المتمن، بنفس المراحل والبنية، لكن:
- كل قابلية تُكتب بمتغيرات المداخل I1، I2 … ؛
- كل فعل يُكتب بمتغير المخرج Q1، Q2 … الذي يقود المنفذ المتصدر المعني؛
- المراحل تبقى بأرقامها، ومتغيراتها $X_n$ متغيرات داخلية في ذاكرة المبرمج.
الأداة التي تسمح بهذا التحويل هي جدول التعيينات (table d'affectation des entrées/sorties): يربط كل ملتقط أو زر بمدخل، وكل وشيعة منفذ متصدر أو عنصر إشارة بمخرج.
مثال: محطة الوسم الآلية
دفتر الشروط. في الوضعية الابتدائية ساق الرافعة V داخلة (الملتقط v0 مضغوط) والبساط متوقف.
- بالضغط على Dcy يدور البساط (المحرك M1 عبر KM1) حتى يكشف الملتقط p قطعة تحت مركز الوسم.
- تُوسم القطعة بخروج ساق V (dV+) حتى v1، ثم دخولها (dV−) حتى v0.
- يدور البساط من جديد لإخلاء القطعة الموسومة حتى يتوقف الملتقط p عن كشفها.
- إذا كانت المبدلة على Auto تعاد الدورة مباشرة (يبقى البساط دائرًا ليأتي بالقطعة التالية)؛ وإذا كانت على دورة بدورة يعود النظام إلى الوضعية الابتدائية وينتظر Dcy.

يبيّن الشكل المتمن من وجهة نظر جزء التحكم: متتالية من 4 مراحل بعد المرحلة الابتدائية 0، تنتهي بتباعد «أو» تحت المرحلة 4: الفرع الأيسر ($\overline{p}\cdot\overline{Auto}$) يعود إلى المرحلة 0، والفرع الأيمن ($\overline{p}\cdot Auto$) يعود إلى المرحلة 1 عبر تقارب «أو» فوقها.
جدول التعيينات
المداخل:
| المدخل | الرمز | التعيين | نوع التماس | |---|---|---|---| | I1 | Dcy | زر بداية الدورة | مفتوح في الراحة | | I2 | Ar | زر التوقف (يُستعمل في أنماط التشغيل والتوقف، لا في هذا المتمن) | مغلق في الراحة | | I3 | v0 | ملتقط نهاية الشوط: ساق V داخلة | مفتوح في الراحة | | I4 | p | ملتقط حضور القطعة، PNP ثلاثي الأسلاك | خرج مفتوح في الراحة | | I5 | v1 | ملتقط نهاية الشوط: ساق V خارجة | مفتوح في الراحة | | I6 | Auto | المبدلة: مغلقة على Auto، مفتوحة على دورة بدورة | — |
المخارج:
| المخرج | الرمز | التعيين | |---|---|---| | Q1 | KM1 | ملامس محرك البساط M1 | | Q2 | dV+ | وشيعة خروج ساق الرافعة V | | Q3 | dV− | وشيعة دخول ساق الرافعة V |
ملاحظات على الجدول:
- المدخل I2 مربوط لكنه لا يظهر في هذا المتمن؛ مكانه في متمن أنماط التشغيل والتوقف (دليل GEMMA).
- الموزع ثنائي الاستقرار له وشيعتان، فله مخرجان Q2 و Q3. لو كان أحادي الاستقرار لكفى مخرج واحد، يبقى في الحالة 1 طوال المراحل التي يجب أن تبقى فيها الساق خارجة.
- المراحل $X_0$ … $X_4$ ليست في الجدول: هي متغيرات داخلية، وكذلك المؤجلات والعدادات.
ترجمة المتمن
نستبدل كل متغير في القابليات بمدخله، وكل فعل بمخرجه:
| الانتقال | القابلية (جزء التحكم) | القابلية (المبرمج الآلي) | |---|---|---| | 0 إلى 1 | $Dcy\cdot v_0$ | $I1\cdot I3$ | | 1 إلى 2 | $p$ | $I4$ | | 2 إلى 3 | $v_1$ | $I5$ | | 3 إلى 4 | $v_0$ | $I3$ | | 4 إلى 0 | $\overline{p}\cdot\overline{Auto}$ | $\overline{I4}\cdot\overline{I6}$ | | 4 إلى 1 | $\overline{p}\cdot Auto$ | $\overline{I4}\cdot I6$ |

يبيّن الشكل المتمن نفسه بالبنية نفسها، والقابليات والأفعال مكتوبة بمتغيرات المبرمج (بالأزرق): $I1\cdot I3$ و I4 و I5 و I3، والفرعان $\overline{I4}\cdot\overline{I6}$ و $\overline{I4}\cdot I6$؛ والأفعال Q1 و Q2 و Q3 و Q1.
المعادلات التي ينفّذها المبرمج
مهما كانت لغة البرمجة، فالمبرمج ينفّذ في النهاية معادلات المراحل والمخارج (درس معادلات التنشيط والتخميل). للمرحلة 1 مثلًا، شرط التنشيط مجموع انتقالين (تقارب «أو» فوقها):
$ CA_1 = X_0\cdot I1\cdot I3 + X_4\cdot\overline{I4}\cdot I6 $
وشرط تخميلها $CD_1 = X_2$، فمعادلتها بذاكرة ذات أولوية التنشيط:
$ X_1 = CA_1 + X_1\cdot\overline{X_2} $
وللمرحلة 4 تباعد «أو» تحتها، فتُخمَّل بالمرحلة 0 أو المرحلة 1: $CD_4 = X_0 + X_1$.
معادلات المخارج (معادلة واحدة لكل مخرج):
$ Q1 = X_1 + X_4 $
$ Q2 = X_2 \qquad Q3 = X_3 $
في النمط الآلي ينتقل المتمن من المرحلة 4 إلى المرحلة 1 مباشرة، و Q1 نشط في المرحلتين، فيبقى البساط دائرًا دون انقطاع.
حالات خاصة في الترجمة
- زر مغلق في الراحة: الترجمة تتبع حالة المدخل، لا اسم الزر. إذا كانت القابلية «Ar مضغوط» والزر Ar مغلق في الراحة على I2، فالقابلية بلغة المبرمج $\overline{I2}$؛ والقابلية «Ar غير مضغوط» هي $I2$.
- قابلية بالجبهة: $\uparrow p$ (جبهة صاعدة) تصير $\uparrow I4$، والمبرمجات تقدّم دالة كشف الجبهة.
- التأجيل: القابلية $t/X_3/2\ s$ تُنجَز بكتلة مؤجل داخلية يشغّلها $X_3$، ويحل مخرج المؤجل محل القابلية (تفصيل ذلك في درس الكتل الوظيفية الداخلية).
- متغير مرحلة من متمن آخر (مثل $X_{24}$ في متمنات النداء والجواب): يبقى $X_{24}$ في القابلية، لأنه متغير داخلي، ولا يُعطى مدخلًا.
مثال محلول
بالتعيين السابق (Dcy على I1، و Ar مغلق في الراحة على I2، و v0 على I3، و p على I4، و v1 على I5، و Auto على I6)، ترجم إلى لغة المبرمج القابليات الآتية:
- $Dcy\cdot\overline{Ar}$ (Dcy مضغوط و Ar غير مضغوط)؛
- $Ar + v_1$ (Ar مضغوط أو الساق خارجة)؛
- $X_{12}\cdot p$.
الحل:
- «Ar غير مضغوط» يعني تماسه المغلق في الراحة مغلق، أي $I2 = 1$: القابلية $I1\cdot I2$ (وليس $I1\cdot\overline{I2}$).
- «Ar مضغوط» يعني $I2 = 0$: القابلية $\overline{I2} + I5$.
- $X_{12}$ متغير داخلي يبقى كما هو: $X_{12}\cdot I4$.
أخطاء شائعة
- وضع $X_n$ أو المؤجل T أو تماسات التماسك الذاتي في جدول المداخل: هذه متغيرات داخلية في المبرمج.
- نسيان عكس زر مغلق في الراحة، أو عكسه مرتين.
- إعطاء مخرجين لموزع أحادي الاستقرار، أو مخرج واحد لموزع ثنائي الاستقرار.
- تغيير بنية المتمن عند الترجمة: المراحل والانتقالات والتباعدات تبقى كما هي، تتغير الكتابة فقط.
5. البرمجة بلغة المتمن (SFC) والكتل الوظيفية ولغة الملامسات
لغات برمجة المبرمج الآلي
يحدد المعيار الدولي IEC 61131-3 خمس لغات لبرمجة المبرمجات الآلية:
| اللغة | النوع | الوصف | |---|---|---| | SFC (Sequential Function Chart): المخطط الوظيفي للتعاقبات | بيانية | مشتقة من المتمن: مراحل وانتقالات وأفعال؛ مخصصة للأنظمة التعاقبية | | FBD (Function Block Diagram): مخطط الكتل الوظيفية | بيانية | كتل منطقية (و، أو، لا)، ومؤجلات، وعدادات، تُربط بخطوط كالمخطط المنطقي | | LD (Ladder Diagram): لغة الملامسات | بيانية | درجات من ملامسات ووشائع بين خطين عموديين، تشبه مخطط التحكم الكهربائي | | ST (Structured Text) | نصية | لغة شبيهة بلغات البرمجة العليا | | IL (Instruction List) | نصية | تعليمات قريبة من لغة المجمع |
المبرمجات المدمجة المستعملة في مخابر الثانويات تُبرمج من الحاسوب بلغة المتمن (SFC) مع الكتل الوظيفية (FBD)، وكثير منها يقدّم أيضًا Ladder. في هذا الجزء نرى الطريقتين.
المتمن بالكتل الوظيفية
في هذه اللغة تُمثَّل كل مرحلة بكتلة مرحلة، والبرمجية هي التي تطبّق قواعد التطور. الكتل الأساسية:
| الكتلة | ما تمثّله في المتمن | |---|---| | مرحلة ابتدائية (INIT) | مرحلة ابتدائية، نشطة عند المرور إلى RUN | | مرحلة (STEP) | مرحلة عادية | | تباعد «أو» / تقارب «أو» | اختيار فرع واحد بين فرعين / التقاء فرعين اختياريين | | تباعد «و» / تقارب «و» | تنشيط فرعين معًا (تعاقبات متزامنة) / انتظار نهاية الفرعين | | و، أو، لا (AND, OR, NOT) | بناء القابليات ومعادلات المخارج | | مدخل I، مخرج Q | مرابط المبرمج |
تختلف أسماء الكتل وأشكالها قليلًا من برمجية إلى أخرى، لكن المبدأ واحد. كتلة المرحلة لها في الغالب أربعة أطراف:
- في الأعلى: الربط القادم من المرحلة السابقة (التنشيط)؛
- على اليسار: قابلية الانتقال الواقع فوق المرحلة، أي شرط تنشيطها؛
- في الأسفل: الربط نحو المرحلة التالية؛
- على اليمين: حالة المرحلة $X_n$ (تساوي 1 ما دامت المرحلة نشطة)، توصل إلى المخارج.
تنشط الكتلة حين تكون المرحلة السابقة نشطة و مدخلها الأيسر في الحالة 1، وتُخمَّل حين تنشط المرحلة التالية. هذا بالضبط تطبيق للمعادلة $X_n = CA_n + X_n\cdot\overline{CD_n}$، تُنجزه البرمجية دون أن نكتبه.

يبيّن الشكل برنامج محطة الوسم في نمط دورة بدورة (دون المبدلة Auto): عمود من خمس كتل مراحل (INIT 0 ثم STEP 1 إلى STEP 4) موصولة من الأعلى إلى الأسفل، والرابط الراجع من المرحلة 4 إلى المرحلة 0 على اليسار. على يسار كل كتلة قابليتها: $\overline{I4}$ للمرحلة 0 (كتلة «لا» بعلامة 1 ودائرة النفي)، و $I1\cdot I3$ للمرحلة 1 (كتلة «و» &)، ثم I4 و I5 و I3. وعلى اليمين: $X_2$ يقود Q2، و $X_3$ يقود Q3، و $X_1$ و $X_4$ يدخلان كتلة «أو» (≥1) تقود Q1.
لإضافة النمط الآلي تُوضع كتلة تباعد «أو» تحت المرحلة 4 وكتلة تقارب «أو» فوق المرحلة 1، وتُربط قابلية كل فرع ($\overline{I4}\cdot\overline{I6}$ نحو المرحلة 0، و $\overline{I4}\cdot I6$ نحو المرحلة 1) بمدخل القابلية الخاص بذلك الفرع (في كتلة التباعد أو في كتلة المرحلة التي يصل إليها الفرع، حسب البرمجية). يجب أن تكون قابليتا التباعد «أو» متنافيتين، وهما كذلك هنا بفضل I6 و $\overline{I6}$.
خطوات البرمجة
- جدول التعيينات.
- المتمن من وجهة نظر المبرمج الآلي.
- وضع كتل المراحل وربطها حسب بنية المتمن (مع كتل التباعد والتقارب).
- بناء كل قابلية بكتل منطقية من المداخل، وربطها بالمدخل الأيسر للمرحلة التي تليها.
- بناء معادلة كل مخرج بكتلة «أو» من متغيرات مراحله، ثم ربطها بالمخرج.
- الترجمة، ثم المحاكاة، ثم التحميل، ثم التجربة في نمط المراقبة.
لغة الملامسات Ladder
برنامج Ladder درجات (rungs) أفقية بين خطين عموديين، تُقرأ من اليسار إلى اليمين، وتُنفَّذ من الأعلى إلى الأسفل في كل دورة. «التيار» المنطقي يصل إلى الوشيعة إذا وُجد مسار من الملامسات المغلقة. في الجدول نكتب الملامس بين معقوفين `-[ ]-`، وهو يُرسم في البرمجيات وفي الأشكال بخطين عموديين متوازيين.
| الرمز | الاسم | المعنى | |---|---|---| | `-[ ]-` | ملامس مباشر (مفتوح) | يمرّر إذا كان المتغير المكتوب فوقه 1 | | `-[/]-` | ملامس معكوس (مغلق) | يمرّر إذا كان المتغير 0 | | `-( )-` | وشيعة | تكتب 1 في المتغير إذا وصلها مسار، و0 إذا لم يصلها | | `-(/)-` | وشيعة معكوسة | تكتب 0 إذا وصلها مسار، و1 إذا لم يصلها | | `-(S)-` | وشيعة تثبيت (Set) | تكتب 1 إذا وصلها مسار، ولا تغيّر شيئًا إن لم يصلها | | `-(R)-` | وشيعة مسح (Reset) | تكتب 0 إذا وصلها مسار، ولا تغيّر شيئًا إن لم يصلها |
> القاعدة الأهم: ملامس البرنامج يختبر حالة المتغير، لا نوع التماس الفيزيائي. زر مغلق في الراحة يعطي مدخلًا في الحالة 1 في الراحة، فإذا أردنا أن يقطع الدرجة حين يُضغط نكتبه بملامس مباشر `-[ ]-`.
من مخطط التحكم المربوط إلى Ladder

يبيّن الشكل في الأعلى مخطط التحكم المربوط لإقلاع مباشر في اتجاه واحد: تماس المرحل الحراري F1 (95-96) ثم زر التوقف S1 (مغلق في الراحة) ثم زر التشغيل S2 (مفتوح في الراحة) وعلى التوازي معه تماس التماسك الذاتي لـ KM1، ثم وشيعة KM1. وفي الأسفل البرنامج المقابل بالتعيين: S1 (مغلق في الراحة) على I1، و S2 على I2، والتماس 97-98 للمرحل الحراري (مفتوح في الراحة، ينغلق عند الحمولة الزائدة) على I3، و KM1 على Q1.
طريقة التحويل:
- S1 مغلق في الراحة على I1: في الراحة $I1 = 1$، فيُكتب بملامس مباشر I1، ويقطع الدرجة حين يُضغط.
- F1 97-98 مفتوح في الراحة على I3: عند الحمولة الزائدة $I3 = 1$، فيُكتب بملامس معكوس I3 ليقطع الدرجة.
- S2 على I2: ملامس مباشر.
- التماسك الذاتي: لا نربط تماسًا مساعدًا لـ KM1 بمدخل؛ نستعمل ملامسًا مباشرًا للمخرج Q1 نفسه على التوازي مع I2.
الدرجة تنفّذ المعادلة:
$ Q1 = I1\cdot\overline{I3}\cdot(I2 + Q1) $
مثال محلول
انطلاقًا من $Q1 = 0$: (أ) يُضغط S2 ثم يُترك؛ (ب) يُضغط S1؛ (ج) يُضغط S2 والمرحل الحراري فاصل. أعط Q1 في كل حالة.
- (أ) عند الضغط: $I1 = 1$، $I3 = 0$، $I2 = 1$ فـ $Q1 = 1\cdot 1\cdot(1 + 0) = 1$. بعد الترك: $I2 = 0$ لكن $Q1 = 1\cdot 1\cdot(0 + 1) = 1$: المحرك يبقى دائرًا بفضل التماسك.
- (ب) $I1 = 0$ فـ $Q1 = 0$ مهما كانت بقية المتغيرات، ويبقى 0 بعد ترك S1 لأن التماسك انقطع.
- (ج) $I3 = 1$ فـ $\overline{I3} = 0$ و $Q1 = 0$: لا إقلاع ما دام المرحل الحراري فاصلًا.
برمجة متمن بلغة Ladder بالتثبيت والمسح
إذا لم تتوفر لغة SFC، يُبرمج المتمن بقاعدة التطور الثانية والثالثة: لكل انتقال درجة؛ شرطها المرحلة السابقة و القابلية؛ وفعلها تثبيت المرحلة التالية (S) ومسح المرحلة السابقة (R). ثم لكل مخرج درجة واحدة. لمحطة الوسم (المتغيرات $X_0$ … $X_4$ بتات داخلية):
| الدرجة | الملامسات على التسلسل | الوشائع | |---|---|---| | 1 | بت الدورة الأولى (INIT) | S $X_0$؛ R $X_1$ … $X_4$ | | 2 | $X_0\cdot I1\cdot I3$ | S $X_1$؛ R $X_0$ | | 3 | $X_1\cdot I4$ | S $X_2$؛ R $X_1$ | | 4 | $X_2\cdot I5$ | S $X_3$؛ R $X_2$ | | 5 | $X_3\cdot I3$ | S $X_4$؛ R $X_3$ | | 6 | $X_4\cdot\overline{I4}\cdot\overline{I6}$ | S $X_0$؛ R $X_4$ | | 7 | $X_4\cdot\overline{I4}\cdot I6$ | S $X_1$؛ R $X_4$ | | 8 | $X_1 + X_4$ (ملامسان على التوازي) | ( ) Q1 | | 9 | $X_2$ | ( ) Q2 | | 10 | $X_3$ | ( ) Q3 |
بت الدورة الأولى بت داخلي يساوي 1 في الدورة الأولى بعد المرور إلى RUN فقط، فيضع المتمن في وضعيته الابتدائية.
> ملاحظة: بما أن الدرجات تُنفَّذ بالترتيب، قد تُجتاز في دورة واحدة انتقالات متتالية إذا كانت قابلياتها صحيحة معًا؛ هذا يوافق في المتمن ما يسمّى التطور العابر (évolution fugace)، ولا يغيّر الوضعية المستقرة التي يصل إليها النظام.
أخطاء شائعة
- كتابة زر مغلق في الراحة بملامس معكوس `-[/]-`: لا يُقلع المحرك أبدًا في الراحة.
- وضع تماس التماسك KM1 في جدول المداخل بدل استعمال Q1 في البرنامج.
- تخصيص درجتين لمخرج واحد (وشيعتان باسم Q1).
- ربط قابلية الانتقال تحت المرحلة بالمدخل الأيسر لكتلتها بدل ربطها بالمرحلة التالية.
6. تمارين محلولة بنمط البكالوريا
التمرين الأول: حاجز موقف السيارات
دفتر الشروط. حاجز عند مدخل موقف سيارات يرفعه ويُنزله محرك لاتزامني ثلاثي الطور M يدور في اتجاهين: الملامس KM1 للرفع، والملامس KM2 للإنزال، والمرحل الحراري F1 للحماية. ملتقطا نهاية الشوط fh (الحاجز مرفوع) و fb (الحاجز نازل) بتماس مفتوح في الراحة. قارئ التذاكر يغلق تماسه tk لحظة إدخال تذكرة صالحة. ملتقط حضور c من نوع PNP ثلاثي الأسلاك يكشف سيارة تحت الحاجز.
التشغيل: في الوضعية الابتدائية الحاجز نازل. عند إدخال تذكرة صالحة يُرفع الحاجز حتى fh، ثم ينتظر وصول السيارة (c)، ثم مرورها الكامل (توقف c عن الكشف)، فيُنزَل الحاجز حتى fb. أثناء الإنزال، إذا كشف c سيارة يُرفع الحاجز من جديد.
جدول التعيينات: tk على I1، fh على I2، fb على I3، c على I4؛ KM1 على Q1، KM2 على Q2. المبرمج مداخله $24\ V$ مستمر بمنطق موجب ومخارجه بمرحلات، والوشائع تحت $24\ V$ متناوب.
الأسئلة:
- أنشئ المتمن من وجهة نظر جزء التحكم.
- ترجمه إلى متمن من وجهة نظر المبرمج الآلي.
- اكتب شرط تنشيط المرحلة 1 ومعادلتها، ثم معادلتي المخرجين.
- كيف يُربط الملتقط c بالمبرمج؟ ما قيمة I4 حين توجد سيارة تحت الحاجز؟
- لماذا يُركَّب تماس KM2 المغلق في الراحة على التسلسل مع وشيعة KM1 رغم أن البرنامج لا ينشّط Q1 و Q2 معًا؟
- زمن دورة المبرمج $T_c = 8\ ms$، وزمن ترشيح المداخل $t_f = 4\ ms$، وزمن انغلاق مرحل المخرج $t_s = 10\ ms$. احسب أكبر مدة بين كشف سيارة أثناء الإنزال وانغلاق تماس المخرج Q1، ثم المسافة التي يقطعها طرف الحاجز خلالها إذا كانت سرعته $0{,}5\ m/s$.
الحل:
1. المتمن من وجهة نظر جزء التحكم:
| المرحلة | الفعل | الانتقال الذي يليها | |---|---|---| | 0 (ابتدائية) | — | $tk\cdot fb$ نحو 1 | | 1 | KM1 (رفع) | $fh$ نحو 2 | | 2 | — (انتظار السيارة) | $c$ نحو 3 | | 3 | — (السيارة تمر) | $\overline{c}$ نحو 4 | | 4 | KM2 (إنزال) | تباعد «أو»: $fb\cdot\overline{c}$ نحو 0، و $c$ نحو 1 |
فوق المرحلة 1 تقارب «أو» (من المرحلة 0 ومن المرحلة 4). قابليتا التباعد متنافيتان: الأولى تتطلب $\overline{c}$ والثانية $c$.
2. المتمن من وجهة نظر المبرمج: 0 ثم $I1\cdot I3$ ثم 1 (Q1) ثم $I2$ ثم 2 ثم $I4$ ثم 3 ثم $\overline{I4}$ ثم 4 (Q2)؛ وتحت المرحلة 4: $I3\cdot\overline{I4}$ نحو 0، و $I4$ نحو 1.
3.
$ CA_1 = X_0\cdot I1\cdot I3 + X_4\cdot I4 $
$ X_1 = CA_1 + X_1\cdot\overline{X_2} $
والمخرجان: $Q1 = X_1$ و $Q2 = X_4$.
4. البني BN إلى $+24\ V$، والأزرق BU إلى $0\ V$ (القطب − للمبرمج)، والأسود BK إلى I4. عند وجود سيارة يتشبع مقحل الخرج PNP فيصل BK بـ $+24\ V$: $I4 = 1$.
5. البرنامج يعرف حالة المخارج لا حالة الملامسات. إذا التصقت تماسات KM2 أو تأخر انفتاحه عند الانتقال من الإنزال إلى الرفع، وتغذّت وشيعة KM1، لحدث قصر بين طورين في دارة الاستطاعة (KM1 و KM2 يعكسان طورين). تماس KM2 المغلق في الراحة لا يسمح بتغذية KM1 إلا بعد انفتاح KM2 فعلًا.
6. أسوأ حالة: $t_{r\,max} = t_f + 2\,T_c + t_s = 4 + 16 + 10 = 30\ ms$. المسافة: $d = v\,t = 0{,}5\times 0{,}030 = 0{,}015\ m = 1{,}5\ cm$ (يضاف إليها زمن توقف المحرك وانعكاسه، وهو خارج المبرمج).
التمرين الثاني: محطة ملء القارورات وسدّها
دفتر الشروط. بساط يديره المحرك M1 (الملامس KM1) ينقل القارورات خطوة بخطوة. حين يكشف الملتقط الضوئي b (PNP) قارورة في موضعها، تكون قارورة تحت مركز الملء وأخرى (مملوءة في الدورة السابقة) تحت مركز السدّ. في آن واحد: يُفتح الصمام الكهربائي EV (أحادي الاستقرار، مغلق في الراحة) حتى يكشف ملتقط المستوى n امتلاء القارورة؛ وتُسدّ القارورة الأخرى بالرافعة C (موزع 5/2 ثنائي الاستقرار بوشيعتين dC+ و dC−، وملتقطا نهاية الشوط c0 و c1). حين تنتهي العمليتان يدور البساط حتى تغادر القارورة الملتقط b ثم حتى تصل القارورة التالية أمامه. التشغيل دورة بدورة بالزر Dcy.

يبيّن الشكل متمن المحطة من وجهة نظر جزء التحكم: بعد المرحلة 0 والقابلية $Dcy\cdot b\cdot c_0$ تباعد «و» إلى فرعين متزامنين: الملء (المرحلة 1 مع EV، ثم القابلية n، ثم مرحلة الانتظار 2) والسدّ (المرحلة 3 مع dC+، ثم $c_1$، ثم المرحلة 4 مع dC−، ثم $c_0$، ثم مرحلة الانتظار 5)؛ ثم تقارب «و» والقابلية $=1$، ثم المرحلتان 6 و7 مع KM1 والقابليتان $\overline{b}$ ثم $b$.
جدول التعيينات: Dcy على I1، b على I2، n على I3، c0 على I4، c1 على I5؛ KM1 على Q1، EV على Q2، dC+ على Q3، dC− على Q4. الوشائع كلها تحت $24\ V$ متناوب.
الأسئلة:
- اختر المبرمج الأنسب (أصغر نموذج يكفي) من الجدول:
| النموذج | المداخل | المخارج | |---|---|---| | A | 6 | 4 بمرحلات | | B | 8 | 4 بمقاحل ($24\ V$ مستمر) | | C | 12 | 8 بمرحلات | | D | 4 | 4 بمرحلات |
- اكتب قابليات وأفعال المتمن من وجهة نظر المبرمج الآلي.
- اكتب شرطي تنشيط المرحلتين 1 و6، وشرط تخميل المرحلتين 2 و5، ثم معادلة المرحلة 6.
- اكتب معادلات المخارج الأربعة.
- ما دور المرحلتين 2 و5 اللتين لا تحملان أي فعل؟
- لماذا يكفي أن يكون Q2 نشطًا في المرحلة 1 وحدها ليتوقف الملء عند المستوى المطلوب بالضبط؟
الحل:
1. يلزم 5 مداخل و4 مخارج تقود وشائع متناوبة، أي مخارج بمرحلات. D ينقصه مدخل، و B مخارجه بمقاحل لا تقطع التيار المتناوب. A و C يكفيان، وأصغرهما A (6 مداخل و4 مخارج بمرحلات).
2.
| الانتقال | جزء التحكم | المبرمج الآلي | |---|---|---| | 0 نحو 1 و3 (تباعد «و») | $Dcy\cdot b\cdot c_0$ | $I1\cdot I2\cdot I4$ | | 1 نحو 2 | $n$ | $I3$ | | 3 نحو 4 | $c_1$ | $I5$ | | 4 نحو 5 | $c_0$ | $I4$ | | 2 و5 نحو 6 (تقارب «و») | $=1$ | $=1$ | | 6 نحو 7 | $\overline{b}$ | $\overline{I2}$ | | 7 نحو 0 | $b$ | $I2$ |
والأفعال: المرحلة 1: Q2؛ المرحلة 3: Q3؛ المرحلة 4: Q4؛ المرحلتان 6 و7: Q1.
3. $CA_1 = X_0\cdot I1\cdot I2\cdot I4$ (وهو نفسه $CA_3$، لأن التباعد «و» ينشّط المرحلتين معًا). $CA_6 = X_2\cdot X_5$ (التقارب «و» يتطلب نشاط المرحلتين، والقابلية $=1$). $CD_2 = CD_5 = X_6$. معادلة المرحلة 6:
$ X_6 = X_2\cdot X_5 + X_6\cdot\overline{X_7} $
4.
$ Q1 = X_6 + X_7 $
و $Q2 = X_1$، و $Q3 = X_3$، و $Q4 = X_4$.
5. الفرعان المتزامنان لا ينتهيان في اللحظة نفسها: قد تمتلئ القارورة قبل أن تعود الرافعة C أو بعدها. مرحلتا الانتظار 2 و5 تحفظان أن كل فرع انتهى، والتقارب «و» لا يُجتاز إلا حين تكون المرحلتان معًا نشطتين، فلا يدور البساط قبل انتهاء العمليتين.
6. الصمام أحادي الاستقرار ومغلق في الراحة: يبقى مفتوحًا ما دام Q2 في الحالة 1 فقط. حين يكشف n المستوى تُجتاز القابلية I3، فتُخمَّل المرحلة 1 ويصير $Q2 = 0$ عند تحديث المخارج، فيُغلق النابض الصمام فورًا (بعد زمن الاستجابة). لا حاجة إلى مخرج ثانٍ للغلق.
التمرين الثالث: إقلاع محرك في اتجاهين بلغة Ladder
المعطيات. مخطط التحكم المربوط لمحرك يدور في اتجاهين: على التسلسل تماس F1 (95-96) وزر التوقف S0 (مغلق في الراحة)؛ ثم فرعان: (S1 مفتوح في الراحة على التوازي مع تماس تماسك KM1، ثم تماس KM2 المغلق في الراحة، ثم وشيعة KM1) و (S2 على التوازي مع تماس تماسك KM2، ثم تماس KM1 المغلق في الراحة، ثم وشيعة KM2).
نجسّد التحكم بمبرمج آلي: S0 على I1، و S1 على I2، و S2 على I3، والتماس 97-98 للمرحل الحراري (مفتوح في الراحة) على I4؛ و KM1 على Q1، و KM2 على Q2.
الأسئلة:
- اكتب معادلتي الدرجتين، ثم صف ملامسات كل درجة.
- المحرك متوقف؛ يُضغط S1 ثم يُترك، ثم يُضغط S2. ماذا يحدث؟ وكيف يُعكس اتجاه الدوران؟
- إذا ضُغط S1 و S2 في اللحظة نفسها والمحرك متوقف، أيّ مخرج ينشط؟ علّل بدورة المعالجة.
- تلميذ كتب S0 بملامس معكوس. صف سلوك النظام.
الحل:
1.
$ Q1 = I1\cdot\overline{I4}\cdot(I2 + Q1)\cdot\overline{Q2} $
$ Q2 = I1\cdot\overline{I4}\cdot(I3 + Q2)\cdot\overline{Q1} $
الدرجة 1: ملامس مباشر I1، ثم ملامس معكوس I4، ثم (ملامس مباشر I2 على التوازي مع ملامس مباشر Q1)، ثم ملامس معكوس Q2 (تشابك برمجي)، ثم الوشيعة Q1. الدرجة 2 بالطريقة نفسها مع I3 و Q2 والتشابك بملامس معكوس Q1. ويبقى التشابك السلكي بتماسات KM1 و KM2 المغلقة في الراحة في دارة المخارج.
2. بعد ضغط S1 وتركه: $Q1 = 1\cdot 1\cdot(0 + 1)\cdot 1 = 1$، المحرك يدور في الاتجاه الأول بالتماسك. عند ضغط S2: $Q2 = 1\cdot 1\cdot(1 + 0)\cdot\overline{Q1} = 0$ لأن $Q1 = 1$: لا يحدث شيء. لعكس الاتجاه يُضغط S0 أولًا ($I1 = 0$ فـ $Q1 = 0$)، ثم S2.
3. الدرجة 1 تُنفَّذ أولًا: $Q1 = 1\cdot 1\cdot(1 + 0)\cdot\overline{0} = 1$، وتُكتب هذه القيمة في صورة المخارج فورًا. ثم تُنفَّذ الدرجة 2 بالقيمة الجديدة: $Q2 = 1\cdot 1\cdot(1 + 0)\cdot\overline{1} = 0$. إذن Q1 هو الذي ينشط: الدرجة الأولى في البرنامج لها الأولوية.
4. بملامس معكوس I1 يكون الملامس مفتوحًا في الراحة ($I1 = 1$): لا يُقلع المحرك بضغط S1 وحده. ولا يدور إلا إذا ضُغط S0 و S1 معًا، ويتوقف بمجرد ترك S0: أي أن زر التوقف صار يعمل عكس وظيفته، وهذا خطير.
خلاصة منهجية
> قبل أي برمجة: جدول التعيينات (مع نوع كل تماس)، ثم متمن المبرمج بالبنية نفسها، ثم معادلة واحدة لكل مخرج. في الربط: ملتقطات PNP مع مداخل بمنطق موجب، و AU والتشابك والمرحل الحراري سلكية دائمًا، ودارة الاستطاعة خارج المبرمج.
الجزء الأول من الدرس مفتوح للجميع، وبقيته مع الاشتراك.