# المتحكم المنطقى المبرمج plc



## المهندسة دنيا 90 (16 أكتوبر 2011)

ما هو المتحكم المنطقى المبرمج PLC ؟

PLC تعنى "المتحكم المنطقى المبرمج" Programmable Logic Controller وهو جهاز أخترع ليحل محل دوائر الريلايات التى تقوم بتنفيذ عمليات متتابعة (متسلسلة حدث تلو الآخر) sequential بغرض التحكم فى الآلات .


يعمل المتحكم PLC من خلال النظر إلى مدخلاته وتبعا لحالاتها يقوم بتشغيل أو تبطيل on/offمخارجه . يقوم المستخدم بإدخال برنامج عادة عن طريق البرمجيات software والذى يعطى النتائج المرجوة (المطلوبة) .


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


على سبيل المثال :

دعونا نفترض أنه عند تشغيل مفتاح نريد تشغيل ملف solenoid لمدة 5 ثوانى ثم فصله بغض النظر عن فترة بقاء المفتاح فى وضع التشغيل .

يمكننا أن نفعل ذلك بمؤقت خارجى بسيط .

ولكن ماذا لو اشتملت العملية على 10 مفاتيح و10 ملفات ؟

سوف نحتاج إلى 10 مؤقتات خارجية .

وماذا إذا احتاجت العملية أيضا حساب (عد) عدد مرات تشغيل المفاتيح كل على حدة ؟

سوف نحتاج إلى العديد من العدادات الخارجية . 

يمكنك أن ترى أنه كلما كبرت العملية كلما زادت الحاجة للمتحكم المنطقى المبرمج PLC .

يمكننا ببساطة برمجة PLC لعد مدخلاته وتشغيل الملفات لمدة محددة .



من خلال هذه الدورة سوف تكون قادرا على كتابة البرامج الأكثر تعقيدا مما ذكر سالفا . 

سوف نسلط الضوء على التعليمات الهامة والتى تساعدك على فهم وحل معظم التطبيقات .






نظرية العمل Theory of Operation


المتحكم المنطقى المبرمج من الداخل :


يتكون المتحكم PLC أساسا من :

وحدة معالجة مركزية CPU و حيز (مساحة) من الذاكرة memory والدوائر المناسبة للتعامل مع البيانات المستقبلة (من المداخل ) والمرسلة (إلى المخارج ) .

يمكننا فعليا أن نعتبر المتحكم PLC كصندوق ملىء بمئات بل بالآلاف من الريلايات المنفصلة والعدادات والمؤقتات وأماكن حفظ (تخزين) البيانات .

هل تلك العدادات والمؤقتات وخلافه موجودة فعليا ؟

كلا غير موجودة فى الطبيعة بل تقلد (تحاكى) ويمكن إعتبارها عدادات ومؤقتات برمجية Software . الريلايات الداخلية تقلد من خلال مواقع خانات فى السجلات الداخلية . 














وظيفة كل جزء : 

ريلايات الدخل (التلامسات) INPUT RELAYS :
وهى الموصلة للعالم الخارجى . فهى موجودة فى الطبيعة وتستقبل الإشارات من المفاتيح والحساسات (المستشعرات – الكواشف) وخلافه . فعليا هى ليست ريلايات ولكنها أشباه موصلات . 

ريلايات المنفعة الداخلية (تلامسات) INTERNAL UTILITY RELAYS :
وهى لا تستقبل إشارات من العالم الخارجى كما أنه لا وجود لها فى الطبيعة .وهى رلايات مقلدة وهى تمكن المتحكم PLC من الإستغناء عن الريلايات الخارجية . كما يوجد أيضا ريلايات خاصة والتى تصمم لأداء مهمة واحدة . بعضها يكون موصل on دائما بينما البعض الآخر مفصول off دائما . والبعض يكون موصل on فقط بمجرد توصيل القدرة ويستخدم لتهيئة البيانات المحفوظة (المخزنة) .



العدادات COUNTERS :
مرة أخرى هذه ليست عدادات طبيعية بل عدادات مقلدة ويمكن برمجتها لعد النبضات .يمكن لهذه العدادات العد تصاعديا أو تنازليا أو كليهما معا . ونظرا لأنها مقلدة فهى مقيدة فى سرعة العد . بعد الصناع يضم عدادات عالية السرعة كجزء صلب hardware .

المؤقتات TIMERS :
وهذه أيضا غير موجودة فى الطبيعة . ولها أصناف متعددة . النوع الشائع الاستخدام هو مؤقت "تأخير التوصيل" on-delay . كما يوجد مؤقت "تأخير الفصل" off-delay وكل من المؤقت المتذكر retentive والغير متذكر non-retentive . التزايد Increment فى الفترات الزمنية يتغير من 1ms ألى 1s . 

ريلايات الخرج (الملفات) OUTPUT RELAYS :
وهذه توصل إلى العالم الخارجى . وهى موجودة فى الطبيعة وترسل إشارات توصيل وفصل on/off إلى ملفات ومصابيح و...ألخ . ويمكن أن تكون ترانزستور أو ريلاى أو ترياك حسب النموذج المختار . 

مخزن البيانات DATA STORAGE :
وهى سجلات مخصصة لتخزين البيانات . وهى عادة تستخدم للتخزين المؤقت للعمليات الرياضية أو لمعالجة البيانات . كما يمكن أن تستخدم فى تخزين البيانات عند إزالة القدرة عن المتحكم PLC . عند عودة القدرة سوف تظل محتوياتها كما هى قبل إزالة القدرة . 









يعمل المتحكم PLC عن طريق المسح scanning المستمر للبرنامج دورة تلو الدورة . يمكننا التفكير فى دورة المسح على أنها مكونة من 3 خطوات هامة . فعليا يوجد أكثر من 3 خطوات ولكن يمكننا التركيز على الأجزاء المهمة ولا نقلق من الباقى . الخطوات الأخرى هى اختبار النظام وتحديث قيم العدادات والمؤقتات الداخلية .













الخطوة رقم 1 : فحص (اختبار) حالة المدخل CHECK INPUT STATUS



أولا يقوم المتحكم PLC بأخذ نظرة على كل مدخل لتحديد حالته : هل هو موصل on أم مفصول off ؟ . وبعبارة أخرى هل الحساس الموصل إلى المدخل الأول موصل on ؟ وماذا حول المدخل الثانى ؟ وكيف حال الثالث ؟ ..... ويقوم بتسجيل هذه البيانات فى ذاكرته لكى يستخدمها فى الخطوة التالية .



الخطوة رقم 2 : تنفيذ البرنامج EXECUTE PROGRAM



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



الخطوة رقم 3 : تحديث حالة المخرج UPDATE OUTPUT STATUS 



وأخيرا يقوم المتحكم PLC بتحديث حالة المخارج : يقوم بتحديث المخارج بناء على أى من المداخل موصل on خلال الخطوة الأولى ونتائج تنفيذ برنامجك خلال الخطوة الثانية . بناء على المثال المذكور فى الخطوة الثانية يجب أن يقوم الآن بتوصيل المخرج الأول لأن المدخل الأول كان موصلا وبرنامجك ينص على " توصيل المخرج الأول عندما عندما يتحقق هذا الشرط " condition is true . 

بعد الخطوة التالثة يعود المتحكم PLC مرة أخرى ويكرر الخطوات باستمرار .



زمن دورة المسح scan time :

يعرف على أنه الزمن المأخوذ فى تنفيذ الخطوات الثلاثة المذكورة سابقا . 

زمن الاستجابة : Response Time

زمن الاستجابة الكلى للمتحكم PLC هو حقيقة يجب علينا وضعها فى الاعتبار عند شراء متحكم PLC . 

يأخذ المتحكم PLC فترة معينة من الوقت للرد على التغيرات تماما مثل ما يحث فى المخ . فى العديد من التطبيقات لا تسبب السرعة مصدر قلق وفى تطبيقات أخرى تكون ذات أهمية قصوى . 

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



لاحظ أنه فى هذا المثال كان لدينا استجابة لثلاثة أشياء : 



الدخل INPUT : 

استغرق الأمر بعض الوقت لكى يلاحظ المخ إشارة الدخل من العين.



التنفيذ EXECUTION :

واستغرق الامر بعض الوقت لمعالجة المعلومات الواردة من العين.

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



الخرج OUTPUT : 

يتلقى الفم إشارة من المخ وفي النهاية يخرج العبارة : "هذه صورة قبيحة حقا " 













مخاوف ( مخاطر ) زمن الاستجابة Response Time Concerns

الآن وقد عرفنا زمن الاستجابة ، فماذا يعنى ذلك للتطبيق ؟ .

المتحكم PLC أثناء مسحه لا يمكنه إلا رؤية المدخل وهو فى حالة التوصيل أو فى حالة الفصل . وبعبارة أخرى : إنه ينظر إلى مداخله فقط خلال خطوة فحص (اختبار) حالة المدخل من فترة المسح . 














في الرسم التخطيطي :

أ‌- حالة المدخل تتغير خلال دورة المسح الأولى (نسميه المدخل رقم 1) 

المدخل رقم 1 لا يرى حتى تحين دورة المسح الثانية scan 2 . وذلك لأنه عند توصيل on المدخل تكون دورة المسح الأولى قد انتهت بالفعل من النظر إلى المداخل .

ب‌- حالة المدخل تتغير خلال دورة المسح الثانية (نسميه المدخل رقم 2) 

المدخل رقم 2 لا يرى حتى تحين دورة المسح الثالثة scan 3 . وذلك أيضا لأنه عند توصيل on المدخل تكون دورة المسح الثانية scan 2 إنتهت بالفعل من النظر إلى المداخل . 

ت‌- حالة المدخل تتغير خلال دورة المسح الثالثة (نسميه المدخل رقم 3) 

المدخل رقم 3 لا يرى أبدا . وذلك لأنه عندما تنظر الدورة الثالثة إلى المداخل فإن إشارة المدخل رقم 3 لم يتم توصيلها on بعد . ويتم فصلها قبل أن تنظر دورة المسح الرابعة إلى المداخل . لذلك لا يرى المتحكم PLC إشارة المدخل رقم 3 على الأطلاق . 














لتجنب ذلك نقول : إن المدخل يجب أن يظل موصلا on لفترة زمنية لا تقل عن : زمن تأخير المدخل + زمن دورة مسح 1 input delay time + one scan time . 

ولكن ماذا لو لم يكن من المستطاع بقاء الدخل موصلا لهذه الفترة ؟ النتيجة أن المتحكم PLC لن يرى المدخل أثناء التوصيل . ولذلك لا تصبح النتائج صحيحة , بالطبع يجب أن يكون هناك طريقة للإلتفاف حول هذا الوضع . فى الواقع هناك طريقتين : 



1- دالة (وظيفة) مط (مد ) النبضة Pulse stretch function

هذه الدالة تمط طول إشارة الدخل حتى ينظر المتحكم PLC إلى المداخل خلال دورة المسح التالية ( أى يمد فترة بقاء النبضة ) .












2- دالة (وظيفة) المقاطعة Interrupt function :

هذه الدالة تقاطع Interrupt المسح لمعالجة برنامج فرعى ( يسمى روتين routine ) تقوم بكتابته . أى بمجرد ما يتم توصيل on المدخل وبغض النظر عن مكان المسح فى هذه اللحظة يقوم المتحكم PLC فورا بإيقاف ما يقوم بفعله ويقوم بتنفيذ روتين المقاطعة ( الروتين هو برنامج فرعى صغير خارج البرنامج الرئيسى) . وبعد تنفيذ المقاطعة يعود إلى النقطة التى توقف عندها ويستمر فى عملية المسح العادى .














الآن لنرى أطول فترة توصيل فعلى on للخرج :

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


----------



## على احمد عثمان (20 أكتوبر 2011)

متشكرين ربنا يجعله ف ميزان حسناتك


----------



## الكوكب المجهول (29 نوفمبر 2011)

الله بارك فيكي


----------



## شراي القوسية (1 ديسمبر 2011)

شكرا جزيلا


----------



## ادور (6 ديسمبر 2011)

wow مشكوررررررررررررر كتير لكم ولكم كل التقدم


----------



## muaamar (12 ديسمبر 2011)

شكرا جزيلا 
كان الشرح وافي عن وصف plc


----------



## saad_srs (12 ديسمبر 2011)

مشكوررررررررررررررررررررررررررررررررررررر


----------



## ahmedamer2006 (23 مايو 2013)

ربنا يبارك فيك......مشكوووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووووور جدا


----------

