PLC
پی ال سی (به انگلیسی: Programmable Logic Controller) یا کنترلگر منطقی برنامهپذیر رایانه کنترلگر تک منظورهای است که به دلیل ویژگیهای خاصش بیشتر برای کنترل فرایندهای مکانیکی یا صنعتی مانند خطوط تولید استفاده میشود.
مفهوم PLC
PLC یا کنترلگر منطقی برنامهپذیر:
برنامه پذیر است. یعنی رایانه است. اما یک رایانهٔ ویژه برای منظوری ویژه
PLC ست. یعنی با دانستن اصول ساده و پایهٔ منطق که پیشنیازی هم ندارد، میتوان اساس کار آن را درک و تحلیل کرد.
PLC کنترلگر است. مانند مدار فرمان الکتریکی.
PLC منطقی ست. برخلاف مدار فرمان الکتریکی.
مزیت PLC نسبت به رایانه
PLC برخلاف یک رایانهٔ عادی غیر صنعتی:
برای کار در شرایط سخت ساخته میشود. شامل:غبار
رطوبت
گرما و سرما
نویز الکتریکی و نوسان برق
و..
برنامههای داده شده به PLC در حافظهٔ آن ذخیره میشوند. PLC دو نوع حافظه دارد :موقّت (که یا با یک باتری پشتیبانی شود) و دائم.
برای انجام وظیفهٔ ویژه اش، امکان اتصال و کنترل ورودیها و خروجیهای زیادی را برای حسگرها و محرکهای متعدد و گوناگون دارد.
قابلیت خواندن و پردازش مقادیر و متغیّرها. شامل:مقادیر لیمیت سوییچها
متغییرهای آنالوگ (مانند مقادیر حسگرهای گرما و فشار)
موقعیتها در سیستمهای موقعیتیاب را دارد.
قابلیت فعّال نمودن دستگاههای خاص. شامل:موتورهای الکتریکی
سیلندرهای پنوماتیکی یا هیدرولیکی
رلههای مغناطیسی و سیمپیچها
خروجیهای آنالوگ را فعال کند.
مزیت PLC نسبت به مدار فرمان
PLC جایگزین مناسب مدار فرمان الکتریکی ست. اما چون منطقی ست، بهتر است.
کنترل منطقی از کنترلی ست که در آن صدور فرمانها نیازمند برآورده شدن تعدادی توابع و خواستهای منطقی باشد
ساختار
ساختار PLC مشابه ساختار رایانهاست. شامل:
پردازنده و حافظهٔ نیمههادی
قسمت پردازنده دارای ارتباطاتی با قسمتهای مختلف داخل و خارج خود میباشد.
حافظهٔ را توضیح خواهیم داد
ماژلهای I/O
منبع تغذیه
در PLCهای کوچک همهٔ موارد (پردازنده، I/O، منبع تغذیه در یک واحد و در PLCهای بزرگتر هر یک در واحدی مجزّا جای داده شدهاند.
حافظهٔ PLC دو نوع است:
ROM یا حافظهٔ دائم (Read only memory)تراشهایست خاص؛ حاوی برنامهای که:توسط کارخانه سازنده تعبیه شدهاست.
وظیفهای مشابه سیستمعامل DOS در رایانههای شخصی دارد
در حین عملیات CPU نمیتواند تغییر یابد یا پاک شود. حتّی به هنگام فطع تغذیه CPU
RAM یا حافظهٔ موقّت (Random Access memory) تراشهایست نیمههادی که میتوان در آن برنامه نوشت.ابزار برنامه نویسی، که معمولاً یک واحد پردازنده با صفحه نمایش و صفحه کلید میباشد (بعنوان مثال یک کامپیوتر شخصی، یک PLC در خانواده زیمنس) بهعنوان یک واحد مجزا از طریق سیم به واحد اصلی متصل است.
برنامه در این حافظه ذخیره میشود
امکان برنامهریزی، تغییر و پاک کردن آنها توسط برنامهریز وجود دارد.
حافظهٔ موقّت میتواند از نوعی غیر از RAM انتخاب شود.اطلاعات موجود در حافظههای RAM با قطع تغذیه، پاک میگردند.
اغلب CPUها مجهز به یک باتری پشتیبان هستند؛ بنابراین اگر تغذیه ورودی فطع شود و درپیآن منبع تغذیه نتواند ولتاژ سیستم را تامین کند، باتریِ پشتیبان، برنامهٔ ذخیره شده در RAM را حفظ میکند.
PLCها با کاربرد وسیع
کاربرد: کنترل سایت کارخانهها.
معمولاً در صنایع بزرگ، PLCها یا پروزتهای ورودی – خروجی در قسمتهای مختلف سایت کارخانه وجود داشته و کنترل محلی بر قسمتهای تحت پوشش خود انجام میدهند. سپس اطلاعات مورد نیاز با استفاده از روشهای مختلف انتقال دادهها به اتاق کنترل مرکزی منتقل شده و که در آن محل با استفاده از روشهای مختلف مونیتورینگ صنعتی، اطلاعات به را شکل گرافیکی تبدیل کرده و بر روی صفحه مانیتور نمایش میدهند. در این حال اپراتور تنها با دانستن روش کار با رایانه و بدون نیاز به اطلاعات تخصصی میتواند سیستم را کنترل کند.
ارائه: از جمله معروفترین PLCها از این خانواده را که میتوان نام برد عبارتند از:
S7 و SIMATIC S5 شرکت SIEMENS آلمان
شرکت OMRON ژاپن
شرکت Telemecanique فرانسه
شرکت Mitsubishi ژاپن
شرکت LG کره
شرکت Allen-Bradley آمریکا
شرکت ABB سوئیس-سوئد
از سایر نظرگاهها
داشتن دیدگاه کاملی نسبت به تنوّع PLCها مهمترین موضوع در انتخاب یک PLC مناسب است؛ لذا باید به این جنبههای تنوّع توجّه داشت
تعداد ورودیها
تعداد خروجیها
تعداد فلگها
تعداد شمارندگان (کانترها)
تعداد تایمرها
نوع فلگها و تایمرها
اندازه حافظه
سرعت اجرای برنامه SCAN TIME
نوع برنامه کاری دستگاه
از طرفی امروزه عموماً از PLCهای «زیمنس S۵» استفاده میشود. از طرفی هم بیشتر خط تولیدهای جدید رو به استفاده از نسخه جدید PLCهای «زیمنس S۷» رفتهاند که در آن خیلی از مشکات نسخه قبلی رفع شده و کنترلها بسیار سادهتر گردیدهاست.
مقیاس و نوع دستگاه
یک PLC کوچک تنها دارای تعداد محدودی از ورودی/خروجیهاست و معمولاً امکان گسترش ورودی/خروجیها تا تعداد بیشتری هم در صورت نیاز وجود دارد.
PLCهای ماژولار دارای یک اسکلت (یا رک) هستند که واحدهای مختلف PLC با توجه به نیاز بر روی آن سوار میشوند. در این PLCها پردازنده و ماژولهای ورودی/خروجی میتوانند با توجه به کاربرد سیستم انتخاب شوند. همچنین این امکان وجود دارد که چندین رک (Rack) یا تعداد خیلی زیادی از ورودی/خروجیها به وسیله یک پردازنده کنترل شوند.
برنامه نویسی PLC
برای نمایش برنامهٔ PLC از سه روش استفاده میشود:
در روش نردبانی برنامه به صورت نماد اتصال و سیستم پیچهای مدار فرمان رلهای نشان داده میشود؛ لذا ساختار برنامه شبیه مدارهای فرمان رلهای میباشد.
در نمایش فلوچارتی از نمادهای مستطیلی استفاده میشود؛ و در هر مستطیل عمل منطقهای نمایش داده میشود.
در روش نمایش نوشتاری از دستورات و جملات کلیدی برای نوشتن برنامه استفاده میشود که در آن هر عبارت دارای دو بخش عملگرها و عملوندها میباشد.
این روشها ابتکاری نیستند. نمایش مدار در مهندسی برق و الگوریتم و فلوچارت در مهندسی رایانه معمول است
اهمیّت روش نمایش در برنامه نویسی
اصطلاحات فرم یا طرز نمایش، و فرمول بندی یا شکل دهی در ریاضیات کابرد زیادی یافتهاند. علّت در اینجا بارز تر میشود: برنامه یک نظم دهی ست، و نظم برای انسان حتماً نیازمند شکل است. پس نمیتوان گفت روشهای نمایش فرع برنامهاند و تعریف برنامه اصل آن. زیرا نوشتن یک برنامه چیزی جز نمایش دستورات در جای صحیح نیست.
آموزش شکلدهی برنامهٔ PLC به روش نمایش نوشتاری یا الگوریتم
الگو:جابجایی
به هر دستور یک رشته خط برنامه گفته میشود هر خظ برنامه معمولاً یکی از ترکیبهای منطقی ریاضی را در بر دارد؛ که همچنین کنترل فلگها و فلیپفلاپها را به عهده دارند در این روش هر چند خط برنامه که عمل خاصی را انجام میدهند یک سگمنت گفته میشود و یک برنامه میتواند شامل یک سگمنت و یا بیشتر باشد. هر برنامه با یک «نقطهویرگول(;)» شروع شده و با “BE” به پایان میرسد. ریز پردازنده از سطر اول برنامه شروع به خواندن و اجرای دستورات میکند تا به دستور “BE” برسد. مدت زمان لازم برای اجرای این کار را سیکل زمانی اجرای برنامه میگویند برای تسریع در اجرای برنامه و کاهش این سیکل زمانی میتوان پردازندهای با سرعت بالا به کار برد که مشمول هزینه خواهد بود و یا برنامه را ساماندهی بهتری نمود. هر کدام از ورودیها، خروجیها و فلگها در دستههای ۸بیتی سازماندهی میشوند و در آدرسدهی ابتدا باید آدرس بایت مربوط و سپس آدرس بیت تعیین شود.
ساختار برنامه
در نوشتن برنامههای پیچیده که معمولاً طولانی هستند برنامههای فرعی را در بخشهای جداگانه مینویسند و سپس آنها را در برنامه اصلی به کار میبرند، هر کدام از این بخشها در یک بلاک خاص نوشته میشود.
در کل پنج نوع بلوک وجود دارد که عبارتند از:
بلوکهای برنامه یا PB: تشکیل دهندهٔ برنامهٔ کنترل یک فرایند میباشند که از شمارهٔ ۰ تا ۲۵۵ شماره گذاری شدهاند. کاربر برنامه را به تشخیص خود در هر بلوک “PB” مینویسد و در انتهای آن از “BE” استفاده مینماید.
بلوکهای ترتیبی یا SB: در کنترلهای ترکیبی مثل راهاندازی خطهای تولید استفاده میشود.
بلوکهای تابع ساز یا FB: توابعی که در طول برنامه بارها مورد استفاده هستند و در خود برنامه تعریف نشدهاند مثل ضرب دو عدد باینری که از شماره ۰ تا ۲۵۵ شماره گذاری شدهاند. هر FB از دو بخش تشکیل شدهاست. FBها اجزا و انواعی دارند:
اجزاء FB:سر خط بلوک که شامل نام و سایر مشخصات بلوک است
بدنه بلوک که شامل توابع و دستورهایی است که باید در بلوک اجرا شود. علاوه بر دستورات S۵ یک سری دستورات مربوط به سوپالمنتری نیز موجود است که فقط در این بلوک اجرا میشود.
انواع FB:Standard FB: که در همان اعمال منطقی نظیر ضرب و تفریق و… تعریف شدهاست. آنها بهصورت بستههای نرمافزاری در اختیار کاربر قرار میگیرند.
Assignable FB: که در اجرای آن میتوان عملوندها را در هر پروسه تعیین نمود، تعریف کرد و یا تغییر داد.
بلوکهای اطلاعاتی DB: تعداد ۲۵۶ بلوک برای ذخیره اطلاعاتی در نظر گرفته شده که هنگام اجرای برنامه مورد استفادهاند. همچون، پیغامها، هشدارها و…
اطلاعات در بلوکهای DB سه نوع است:اطلاعات دیتا
متن
الگوی بیت
میتوان در هر بلوکی اطلاعات DB را فراخوانی نمود. مثلاً برای فراخوانی سطر صدم از «DB ۵۰» به صورت زیر عمل مینماییم:C DB ۵۰ نام بلوک
L DW ۱۰۰ نام سطر
اطلاعات ذخیره شده در DBها با یکی از فرمتهای زیر هستند:KH برای اعداد در مبنی ۱۶
KF برای اعداد در مبنی ۱۰
KT برای اعداد ثبات TV
KC برای شمارندهها
KY شانزدهبیت، که به دو بایت کاملاً مجزّای چپ(DL) و راست(DR) تقسیم میشوند.
KM برای متون
KG اعداد اعشاری و اعداد بسیار بزرگ و بسیار کوچک
بلوک سازماندهی OB: این بلوک ساختار برنامه را مشخص مینماید هر OB بایک شمارهٔ خاص مشخص میشود. شامل:
«OB ۱»: در شروع هر سیکل برنامه، سیستمعامل اولین سطر این بلوک را اجرا میکند؛ و آخرین سطر آن پایان بخش برنامهاست. در واقع این بلوک مشخص کنندهٔ ساختار برنامهاست.
«OB ۲۱»: هنگامی که PLC از Start به Stop سویچ میشود این بلوک رخ میدهد.
«OB ۲۲»: هنگامی که پاور ON میشود این بلوک رخ میدهد.
«OB ۳۴»: نشان دهنده وضعیت باتری میباشد که در صورت تضعیف و یا وقوع ایراد در آن تا رفع اشکال مکرراً تکرار میشود.
دستورهای برنامه نویسی PLC
دستورهای برنامه نویسی PLC سهگانهاند:
اصلی: توابعی که در تمام بلوکها قابل اجرا هستند به غیر از جمع و تفریق تمام دستورها میتوان به عنوان ورودی و خروجی به کار روند.
تکمیلی: توابع ترکیبی نظیر دستورات جابجایی، توابع، Shift و نیز دستورات تبدیلی میباشد؛ که فقط در FB و حالت STL قابل اجرا هستند.
سیستم: شامل دستورهایی است که مستقیماً روی سیستمعامل PLC تاثیر دارد و مخصوص برنامه نویسان حرفهای است.
این دستورها ممکن است در PLCهای شرکتهای مختلف متفاوت باشند.
دستور AN برای خواندن صفر: همانطور که گفته شد، سه روش برای نمایش برای برنامهٔ PLC وجود دارد:
LAD یا Ladder یا
CSF یا Control System Flowchart یا
STL یا Statement List
در روش LAD و CSF برای خواندن عدد صفر از ورودی از دستور AN استفاده میشود؛ که عبارت «صفر یا یک» در ورودی را به عبارت معکوسش یعنی «یک یا صفر» تبدیل میکند