موضوع مقاله: کنترل‌گر منطقی برنامه‌پذیر | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # کنترل‌گر منطقی برنامه‌پذیر | مقدمه: کنترل‌گر منطقی برنامه‌پذیر، یا ، یک رایانه دیجیتال صنعتی است که برای استفاده در کاربردهای صنعتی استحکام بخشیده شده‌ است و در فرآیندهای صنعتی مانند کنترل فرآیندهای تولید، کنترل خطوط مونتاژ، کنترل دستگاه‌های رباتیک یا هر فرآیندی که نیاز به کنترل دقیق و قابل اطمینان و عیب‌یابی ساده داشته باشد از آن استفاده می‌شود. | ## بخش 1: کنترل‌گر منطقی برنامه‌پذیر | استفاده از PLCها باعث شده‌ است که بسیاری از سیم کشی‌های مرسوم در مدارهای کنترلی رله‌ای حذف گردد. دیگر مزایای استفاده از PLC به جای سامانه‌های رله‌ای شامل: نصب و برنامه‌نویسی آسان، زمان پاسخ کوتاه، سرعت بالای کنترل، قابلیت شبکه کردن مجموعه، تست و عیب‌یابی ساده و قابلیت اطمینان بالای این سامانه‌ها می‌باشد. یعنی با دانستن اصول ساده و پایهٔ منطق که پیش‌نیازی هم ندارد، می‌توان اساس کار آن را درک و تحلیل کرد. او فردی معمولی در دانشگاه MIT بود که تصمیم گرفت تحصیل خود را نیمه‌کاره رها کرده و به طرف مسیری ناشناخته ولی هدفی مصمم قدم بگذارد. او شرکت خود را تاسیس کرد و در طی سالیان مختلف تلاش کرد تا چالش بزرگ صنعت را به خوبی شناسایی کرده و در جهت رفع آن تفکر و ایده‌پردازی کند. معایب PLC وقتی مشکلی برای پی ال سی پیش می‌آید، زمان بازیابی و اصلاح آن نامشخص است. در هنگام قطعی برق، برنامه مجدداً از جایی که متوقف شده بود، شروع به اجرا می‌کند و این اصلاً مناسب نیست! (ممکن است قبل از قطعی برق دستگاهی روشن شده باشد، و اکنون بلافاصله پس از وصل شدن برق روشن شدن آن دستگاه خطرآفرین باشد) همزمان فقط یک برنامه در یک پی ال سی مدل ثابت قابل اجرا است. نمی‌توان از نرم‌افزار و قطعات PLC یک برند خاص، در تولید و پیکره‌بندی پی ال سی برند دیگر استفاده کرد. مزیت PLC نسبت به رایانه PLC برخلاف یک رایانهٔ عادی غیر صنعتی: برای کار در شرایط سخت ساخته می‌شود. برای انجام وظیفهٔ ویژه اش، امکان اتصال و کنترل ورودی‌ها و خروجی‌های بسیاری را برای حسگرها و محرک‌های متعدد و گوناگون دارد. شامل: مقادیر لیمیت سوییچ‌ها متغییرهای آنالوگ (مانند مقادیر حس‌گرهای گرما و فشار) موقعیت‌ها در سامانه‌های موقعیت‌یاب را دارد. شامل: موتورهای الکتریکی سیلندرهای پنوماتیکی یا هیدرولیکی رله‌های مغناطیسی و سیم‌پیچ‌ها خروجی‌های آنالوگ را فعال کند. اما چون منطقی‌ست، دارای اشتباه کمتری و در برخی موارد مقرون به صرفه اقتصادی و کار با آن ساده‌تر و بهتر است. کنترل منطقی از کنترلی‌ست که در آن صدور فرمان‌ها نیازمند برآورده شدن تعدادی توابع و خواست‌های منطقی باشد ساختار ساختار PLC مشابه ساختار رایانه‌است. شامل: پردازنده و حافظهٔ نیمه‌رسانا بخش پردازنده دارای ارتباطاتی با بخش‌های مختلف داخل و خارج خود می‌باشد. حافظهٔ را توضیح خواهیم داد بخش دریافت فرمان و صدور فرمان منبع تغذیه در PLCهای کوچک همهٔ موارد (پردازنده، I/O، منبع تغذیه در یک واحد و در PLCهای بزرگتر هر یک در واحدی مجزّا جای داده شده‌اند. وظیفه‌ای مشابه سیستم‌عامل DOS در رایانه‌های شخصی دارد در حین عملیات CPU نمی‌تواند تغییر یابد یا پاک شود. ابزار برنامه‌نویسی، که معمولاً یک واحد پردازنده با صفحه نمایش و صفحه کلید می‌باشد (بعنوان مثال یک کامپیوتر شخصی، یک PLC در خانواده زیمنس) به‌عنوان یک واحد مجزا از طریق سیم به واحد اصلی متصل است. برنامه در این حافظه ذخیره می‌شود امکان برنامه‌ریزی، تغییر و پاک کردن آن‌ها توسط برنامه‌ریز وجود دارد. اغلب CPUها مجهز به یک باتری پشتیبان هستند؛ بنابراین اگر تغذیه ورودی قطع شود و درپی‌آن منبع تغذیه نتواند ولتاژ سامانه را تأمین کند، باتریِ پشتیبان، برنامهٔ ذخیره شده در RAM را حفظ می‌کند. PLCها را می‌توان از نظر اندازه، حافظه، تعداد ورودی/خروجی، وسعت عملیات (محلی یا وسیع) و … دسته‌بندی نمود. باید توجه داشت که برای ارزیابی قابلیت یک PLC باید ویژگی‌های دیگری مانند پردازنده، زمان اجرای یک سیکل، سادگی زبان برنامه‌نویسی، قابلیت توسعه و … را در نظر گرفت. از نظر اندازه، حافظه، تعداد ورودی/خروجی اندازه PLCتعداد خطوط ورودی و خروجیاندازه حافظه به کیلوکوچک۴۰/۴۰۱متوسّط۱۲۸/۱۲۸۴بزرگبیش از ۱۲۸/بیش از ۱۲۸بیش از ۴ از نظر وسعت عملیات PLCها با کاربرد محلی کاربرد: کنترل سامانه‌هایی با حجم کوچک (تعداد ورودی و خروجی‌های محدود) و برای کنترل هم‌زمان تعداد کمتری از پروسه‌ها یا کنترل دستگاه‌های مجزای صنعتی (به علت قابلیت محدودتر) ارائه: اغلب شرکت‌های سازنده، این نوع پی ال سی ها را همراه دیگر پی ال سی ها به بازار ارائه می‌دهند ولی برخی از شرکت‌های سازنده آن را با نام مینی پی ال سی یا اسمارت رله ارائه می‌نمایند. معمولاً در صنایع بزرگ، PLCها یا پروزت‌های ورودی – خروجی در بخش‌های مختلف سایت کارخانه وجود داشته و کنترل محلی بر بخش‌های تحت پوشش خود انجام می‌دهند. سپس اطلاعات مورد نیاز با استفاده از روش‌های مختلف انتقال داده‌ها به اتاق کنترل مرکزی منتقل شده و که در آن محل با استفاده از روش‌های مختلف مونیتورینگ صنعتی، اطلاعات به را شکل گرافیکی تبدیل کرده و بر روی صفحه مانیتور نمایش می‌دهند. در این حال اپراتور تنها با دانستن روش کار با رایانه و بدون نیاز به اطلاعات تخصصی می‌تواند سامانه را کنترل کند. از طرفی هم بیشتر خط تولیدهای جدید رو به استفاده از نسخه جدید PLCهای که دارای کنترل حرکت به روز هستند رفته‌اند که در آن خیلی از مشکلات نسخه‌های قبلی رفع شده و کنترل‌ها بسیار ساده‌تر گردیده‌است. مقیاس و نوع دستگاه یک PLC کوچک تنها دارای تعداد محدودی از ورودی/خروجی‌هاست و معمولاً امکان گسترش ورودی/خروجی‌ها تا تعداد بیشتری هم در صورت نیاز وجود دارد. PLCهای ماژولار دارای یک اسکلت (یا رک) هستند که واحدهای مختلف PLC با توجه به نیاز بر روی آن سوار می‌شوند. در این PLCها پردازنده و ماژول‌های ورودی/خروجی می‌توانند با توجه به کاربرد سامانه انتخاب شوند. همچنین این امکان وجود دارد که چندین رک (Rack) یا تعداد خیلی بسیاری از ورودی/خروجی‌ها به وسیله یک پردازنده کنترل شوند. برنامه‌نویسی PLC برای نمایش برنامهٔ PLC از سه روش استفاده می‌شود: در روش نردبانی برنامه به صورت نماد اتصال و سامانه پیچ‌های مدار فرمان رله‌ای نشان داده می‌شود؛ لذا ساختار برنامه شبیه مدارهای فرمان رله‌ای می‌باشد. در نمایش فلوچارتی از نمادهای مستطیلی استفاده می‌شود؛ و در هر مستطیل عمل منطقه‌ای نمایش داده می‌شود. | ## بخش 2: کنترل‌گر منطقی برنامه‌پذیر | در روش نمایش نوشتاری از دستورات و جملات کلیدی برای نوشتن برنامه استفاده می‌شود که در آن هر عبارت دارای دو بخش عملگرها و عملوندها می‌باشد. اهمیّت روش نمایش در برنامه‌نویسی اصطلاحات فرم یا طرز نمایش، و فرمول بندی یا شکل‌دهی در ریاضیات کابرد بسیاری یافته‌اند. علّت در اینجا بارز تر می‌شود: برنامه یک نظم دهی ست، و نظم برای انسان حتماً نیازمند شکل است. آموزش شکل‌دهی برنامهٔ PLC به روش نمایش نوشتاری یا الگوریتم به هر دستور یک رشته خط برنامه گفته می‌شود هر خط برنامه معمولاً یکی از ترکیب‌های منطقی ریاضی را دربردارد؛ که همچنین کنترل فلگ‌ها و فلیپ‌فلاپ‌ها را به عهده دارند در این روش هر چند خط برنامه که عمل خاصی را انجام می‌دهند یک سگمنت گفته می‌شود و یک برنامه می‌تواند شامل یک سگمنت یا بیشتر باشد. ریز پردازنده از سطر اول برنامه آغاز به خواندن و اجرای دستورات می‌کند تا به دستور "BE" برسد. مدت زمان لازم برای اجرای این کار را سیکل زمانی اجرای برنامه می‌گویند برای تسریع در اجرای برنامه و کاهش این سیکل زمانی می‌توان پردازنده‌ای با سرعت بالا به کار برد که مشمول هزینه خواهد بود یا برنامه را سامان‌دهی بهتری نمود. هر کدام از ورودی‌ها، خروجی‌ها و فلگ‌ها در دسته‌های ۸بیتی سازمان‌دهی می‌شوند و در آدرس‌دهی ابتدا باید آدرس بایت مربوط و سپس آدرس بیت تعیین شود. ساختار برنامه در نوشتن برنامه‌های پیچیده که معمولاً طولانی هستند برنامه‌های فرعی را در بخش‌های جداگانه می‌نویسند و سپس آن‌ها را در برنامه اصلی به کار می‌برند، هر کدام از این بخش‌ها در یک بلوک خاص نوشته می‌شود. در کل پنج نوع بلوک وجود دارد که عبارتند از: بلوک‌های برنامه یا PB: تشکیل دهندهٔ برنامهٔ کنترل یک فرایند می‌باشند که از شمارهٔ ۰ تا ۲۵۵ شماره‌گذاری شده‌اند. کاربر برنامه را به تشخیص خود در هر بلوک "PB" می‌نویسد و در انتهای آن از "BE" استفاده می‌نماید. بلوک‌های ترتیبی یا SB: در کنترل‌های ترکیبی مثل راه‌اندازی خط‌های تولید استفاده می‌شود. بلوک‌های تابع ساز یا FB: توابعی که در طول برنامه بارها مورد استفاده هستند و در خود برنامه تعریف نشده‌اند مثل ضرب دو عدد باینری که از شماره ۰ تا ۲۵۵ شماره‌گذاری شده‌اند. FBها اجزا و انواعی دارند: اجزاء FB: سر خط بلوک که شامل نام و دیگر مشخصات بلوک است. علاوه بر دستورات S۵ یک سری دستورات مربوط به سوپالمنتری نیز موجود است که فقط در این بلوک اجرا می‌شود. بلوک‌های اطلاعاتی DB: تعداد ۲۵۶ بلوک برای ذخیره اطلاعاتی در نظر گرفته شده که هنگام اجرای برنامه مورد استفاده‌اند. همچون، پیغامها، هشدارها و… اطلاعات در بلوک‌های DB سه نوع است: اطلاعات دیتا متن الگوی بیت می‌توان در هر بلوکی اطلاعات DB را فراخوانی نمود. KM برای متون KG اعداد اعشاری و اعداد بسیار بزرگ و بسیار کوچک بلوک سازماندهی OB: این بلوک ساختار برنامه را مشخص می‌نماید هر OB بایک شمارهٔ خاص مشخص می‌شود. شامل: «OB ۱»: در آغاز هر سیکل برنامه، سیستم‌عامل نخستین سطر این بلوک را اجرا می‌کند؛ و آخرین سطر آن پایان بخش برنامه‌است. «OB ۳۴»: نشان دهنده وضعیت باتری می‌باشد که در صورت تضعیف یا وقوع ایراد در آن تا رفع اشکال مکرراً تکرار می‌شود. دستورهای برنامه‌نویسی PLC دستورهای برنامه‌نویسی PLC سه‌گانه‌اند: اصلی: توابعی که در تمام بلوک‌ها قابل اجرا هستند به غیر از جمع و تفریق تمام دستورها می‌توان به عنوان ورودی و خروجی به کار روند. تکمیلی: توابع ترکیبی نظیر دستورات جابجایی، توابع، Shift و نیز دستورات تبدیلی می‌باشد؛ که فقط در FB و حالت STL قابل اجرا هستند. سامانه: شامل دستورهایی است که مستقیماً روی سیستم‌عامل PLC تأثیر دارد و مخصوص برنامه نویسان حرفه‌ای است. وقتی دکمهٔ فشار فشرده یا کلیدی روشن گردد بر حسب نوع کانتاکت عددی که در ورودی و خروجی ظاهر می‌شود متفاوت است: نوع کانتاکت در ورودی در خروجی کانتاکت در حالت عادی باز (NO) ۱ ۰ کانتاکت در حالت عادی بسته (NC) ۰ ۱ مثال: برنامه‌ای بنویسید که با دو کلید A و B که به صورت سری به هم وصل هستند خروجی را روشن و خاموش نمایند. این بیت مانند هر بیت از حافظه می‌تواند دو مقدار «صفر» یا «یک» بگیرد با این تفاوت که فلگ‌ها حافظه‌های موقتی هستند. کاربرد فلگ‌ها در برنامه‌هایی است که عملگر "OR" قبل از عملگر "AND" بیاید و با حذف پرانتزها می‌توان از فلگ استفاده کرد. در اجرای هر سطر بعدی این مقدار با عملوند بعدی طبق برنامه ترکیب و مقدار حاصل در RLO جایگزین می‌شود. با این بیان می‌توان اصل کلی زیر را نتیجه گرفت: هر دستوری که به خط پایان برنامه (BE) نزدیک تر باشد از نظر اجرا ارجح تر است. دستور NOP ۰ در فلیپ‌فلاپ: در PLCهای زیمنس، هر گاه بخواهیم از خروجی یک فلیپ فلاپ یا بخشی از برنامه هیچ استفاده‌ای نکنیم از دستور «NOP ۰» استفاده می‌نماییم. دستور JU بدون وجود هیچ گونه شرطی پرش یا انقال را انجام می‌دهد این پرش ممکن است از یک بلوک به بلوک دیگر یا از یک سطر به سطر دیگر همان بلوک انجام گیرد. مثال: برنامه‌ای که با فشردن یک کلید PB ۱۸ و در صورت غیرفعال نمودن همان کلید PB ۱۹ را اجرا نماید. با اندکی تفکر درمی یابیم که چنین برنامه‌ای را باید در «OB ۱» نوشت، زیرا همان‌طور که گفته شد ساختار کلی سامانه در این بلوک شکل می‌پذیرد. جهت مبادله مقادیر ورودی‌ها، خروجی‌ها یا فلگ‌ها نیاز به یک حافظه واسط می‌باشد که در قسمی بنام انباره یا آکومولاتور (Accumulator) موجود است. این حافظه از نوع رجیستر و شانزده بیتی است که معمولاً شامل شانزده بیت یا دو بایت با ارزش بالا و پایین می‌باشد. دستور "L": برای بارگذاری اطلاعات از این دستور دستور "L" استفاده می‌نماییم که محتویات یک بایت فراخوانی و در انبارک جایگزین می‌شود. | ## بخش 3: کنترل‌گر منطقی برنامه‌پذیر | دستور "T": برای انتقال اطلاعاتی که در انبارک‌ها موجود است به خروجی‌ها یا فلگ‌ها از این دستور استفاده می‌شود. مثلاً در برنامهٔ زیر با اجرای دستور اول محتویات «ACCUME 1» به کلمه «خروجی هشت» کپی می‌شود. HMI یا واسط بین انسان و ماشین: این تجهیزات به کاربر این امکان را خواهد تا پردازش‌های در حال اجرا را که از قبل برنامه‌نویس و طراح آن‌ها را تعبیه کرده‌اند را مشاهده کنند، خروجی‌ها رو به صورت گرافیکی ببینند یا ورودی‌ها را توسط مانیتورهای تاچ اسکرین یا کلیدهای شستی بفشارند. به نوعی می‌توان گفت این تجهیزات می‌توانند هم به عنوان ورودی و هم خروجی ایفای نقش نمایند. به‌طور مثال: می‌توان دمای حرارت کوره را به صورت گرافیکی روی مانیتور مشاهده کنید (خروجی). یا می‌توان دکمه استارت پمپ را در آن تعبیه نمود که به صورت تاج کاربر پمپ را روشن نماید (ورودی). LAN شبکه: می‌توان داده‌ها یا خروجی‌ها را از طریق شبکه به نقاط مختلفی انتقال داد که این کار توسط تجهیزات شبکه‌ای که به PLC متصل می‌گردد قابل انجام است. بستن شیرهای خطوط انتقال سوخت در صورت بروز حادثه را می‌توان به عنوان یک کنترل از راه دور به کمک شبکه مثال زد. استفاده از این نرم‌افزار ساده‌است؛ پس از پایان کدنویسی و فشردن کلید آغاز شبیه‌سازی پنجره شبیه‌ساز PLC باز می‌شود. در اینجا ورودی‌ها، خروجی‌ها و فلگ‌ها مشاهده می‌شوند و می‌توان عملکرد برنامه نوشته شده را روی PLC آزمود. پی ال سی در مقایسه با سایر سیستم های کنترلی پی ال سی ها به خوبی با طیف وسیعی از وظایف اتوماسیون یا خودکارسازی سازگار هستند. اینها معمولاً فرآیندهای صنعتی در تولید هستند که در آن هزینه توسعه و نگهداری سیستم اتوماسیون نسبت به هزینه کل اتوماسیون بالاتر است و در آنجا تغییراتی در سیستم در طول عمر عملیاتی آن انتظار می رود. پی ال سی ها حاوی تجهیزات ورودی و خروجی سازگار با دستگاه ها و کنترل های پایلوت صنعتی هستند. طراحی الکتریکی کمی مورد نیاز است و مشکل طراحی بر بیان توالی مورد نظر از عملیات متمرکز است. برنامه‌های کاربردی پی ال سی معمولاً سیستم‌های بسیار سفارشی‌سازی شده‌اند، بنابراین هزینه یک پی ال سی بسته‌بندی شده در مقایسه با هزینه یک طراحی کنترل‌کننده سفارشی خاص پایین است. این به دلیل هزینه کمتر قطعات است که می تواند به طور بهینه به جای یک راه حل "عمومی" انتخاب شود و هزینه های مهندسی غیر تکراری در هزاران یا میلیون ها واحد توزیع می شود. تراشه پی ال سی/ کنترلر تعبیه شده برای دستگاه‌هایی با اندازه ی کوچک یا متوسط است. را شبیه پی ال سی های مرسوم دارند اما سایز کوچک آنها به توسعه دهندگان این امکان را می‌دهد که آنها را روی pcb سفارشی مانند یک میکروکنترلر بدون دانش برنامه نویسی طراحی کنند. تایمر بادامک برای عملیات اتوماسیون ثابت با حجم بالا یا بسیار ساده، از تکنیک های مختلفی استفاده می شود. به عنوان مثال، یک ماشین ظرفشویی ارزان قیمت توسط یک تایمر بادامک الکترومکانیکی کنترل می شود که هزینه تولید آن تنها چند دلار است. میکروکنترلرها طراحی مبتنی بر میکروکنترلر در جایی مناسب خواهد بود که صدها یا هزاران واحد تولید شود و بنابراین هزینه توسعه (طراحی منبع تغذیه، سخت‌افزار ورودی/خروجی، و آزمایش‌ها و گواهی‌نامه‌های لازم) در بسیاری از فروش‌ها توزیع شود و در جایی که کاربر نیازی به تغییر کنترل ندارد. میلیون ها واحد هر سال ساخته می شوند و تعداد بسیار کمی از کاربران نهایی برنامه نویسی این کنترلرهای سفارشی را تغییر می دهند. با این حال، برخی از وسایل نقلیه تخصصی مانند اتوبوس های ترانزیت از لحاظ اقتصادی به جای کنترل های سفارشی از PLC استفاده می کنند، زیرا تعداد آنها کم است و هزینه توسعه غیراقتصادی است. کامپیوترهای تک بردی جهت کنترل فرآیند بسیار پیچیده، مانند موارد استفاده در صنایع شیمیایی، ممکن است به الگوریتم‌ها و عملکردی فراتر از توانایی پی ال سی هایی با کارایی بالا نیاز داشته باشد. کنترل‌های بسیار پر سرعت یا دقیق ممکن است به راه‌حل‌های سفارشی‌شده نیز نیاز داشته باشند. رایانه‌های تک بردی که از سخت‌افزار نیمه سفارشی یا کاملاً اختصاصی استفاده می‌کنند، ممکن است برای برنامه‌های کنترلی بسیار سخت که در آن هزینه‌های توسعه و نگهداری بالا قابل پشتیبانی است، انتخاب شوند. در جایی که فرآیندها به صدها یا هزاران حلقه نیاز دارند، در عوض از یک سیستم کنترل توزیع شده (DCS) استفاده می شود. رله های منطقی قابل برنامه ریزی (PLR) در سال‌های اخیر، محصولات کوچکی به نام رله‌ های منطقی قابل برنامه‌ریزی (PLR) یا رله‌های هوشمند، رایج‌ شده‌اند. این رله ها شبیه PLCها هستند و در صنایع هایی استفاده می شوند که تنها به چند نقطه ورودی/خروجی نیاز است و همچنین هزینه کم مورد نظر است.این دستگاه‌های کوچک معمولاً در اندازه و شکل ظاهری مشترک توسط چندین سازنده ساخته می‌شوند و نیز توسط سازندگان PLC‌های بزرگ‌تر برای پر کردن طیف محصولات پایین‌رده خود تولید می‌شوند.اکثر این رله ها دارای 8 تا 12 ورودی مجزا، 4 تا 8 خروجی مجزا و حداکثر 2 ورودی آنالوگ هستند. اکثر این دستگاه‌ها شامل یک صفحه LCD کوچک به اندازه تمبر پستی جهت مشاهده برنامه ladder (فقط بخش بسیار کوچکی از برنامه در یک زمان معین قابل مشاهده است) و وضعیت نقاط ورودی/خروجی هستند. دکمه فشاری چهار طرفه به اضافه چهار دکمه فشاری جداگانه دیگر، شبیه دکمه های کلیدی روی یک کنترل از راه دور VCR، جهت جابه جایی و ویرایش استفاده می شود. اکثر آنها یک دوشاخه کوچک برای اتصال از طریق RS-232 یا RS-485 به رایانه شخصی دارند. | ## جمع‌بندی | بر خلاف PLC های معمولی که معمولاً ماژولار هستند و بسیار قابل گسترش هستند، PLR ها معمولاً ماژولار یا قابل گسترش نیستند، اما قیمت آنها می تواند بسیار کمتر از یک PLC باشد و همچنین طراحی قوی دارند و برنامه را به خوبی اجرا می کنند.