PLC، یا Programmable Logic Controller، به معنای کنترلکننده منطقی قابل برنامهریزی است. این دستگاه در صنعت به عنوان یک کامپیوتر صنعتی قابل برنامهریزی شناخته میشود. برای کنترل فرآیندهای صنعتی پیچیده میتوان از PLC ها استفاده کرد. این کنترلرها بسیار قابل اعتماد هستند و دارای ضریب خطای بسیار کمی هستند. به همین دلیل، PLC به عنوان انتخاب اول برای کنترل فرآیندها در صنعت شناخته میشوند. همچنین شما باید از زبان برنامه نویسی PLC بدانید که در این مقاله برای شما گفته ایم.
PLC با استفاده از تجهیزات ابزار دقیق، اطلاعات را از سنسورها دریافت میکند و با ارسال دستورات کنترلی به سیستم، عملگرها را کنترل میکند. به عنوان مثال، فرض کنید میخواهید دما را در یک خط تولید با استفاده از PLC کنترل کنید. سنسور ترموکوپل دما را اندازهگیری کرده و سیگنال حاصل را به PLC ارسال میکند. PLC اطلاعات دریافت شده را با توجه به دستورات برنامهنویسی پردازش کرده و دستورات لازم برای کنترل دمای خط تولید را ارسال میکند.
زبانهای برنامهنویسی PLC
وقتی قصد دارید پروژه اتوماسیون سازی صنعتی را اجرایی کنید، باید نرم افزار پی ال سی را دانلود کنید و بعد از آن زبان برنامه نویسی PLC را انتخاب نمایید.
زبان های برنامه نویسی PLC به شرح زیر است:
- لدر یا LD
- FBD
- SFC
- ST
- IL
زبان برنامهنویسی لدر یا LD
به طور کلی، زبان برنامهنویسی Ladder Diagram (LD) یا Ladder Logic یکی از محبوبترین و توسعهیافتهترین زبانهای برنامهنویسی برای PLC است. این زبان با استفاده از ریلهای عمودی و پلههای افقی ساخته شده است و به همین دلیل به آن زبان نردبانی هم گفته میشود.
در زبان Ladder Diagram، کدهای دستورالعمل معمولاً شامل المانهای زیر هستند:
- Normally Open (NO): این المان نمایانگر یک سوئیچ باز است که جریان برق در صورت فعال بودن آن از آن عبور میکند.
- Normally Closed (NC): این المان نمایانگر یک سوئیچ بسته است که جریان برق در صورت غیرفعال بودن آن از آن عبور میکند.
- تایمر (Timer): این المان برای تنظیم و کنترل زمانها در فرآیندهای کنترلی استفاده میشود.
- شمارنده یا کانتر (Counter): این المان برای شمارش تعداد وقوع یک رویداد مشخص در فرآیندهای کنترلی استفاده میشود.
- فلیپفلاپهای set و reset: این المانها برای ذخیره و کنترل وضعیتهای منطقی استفاده میشوند.
با استفاده از این المانها و ساختار زبان LD، میتوان به صورت واضح و قابل فهم عملیاتهای منطقی و کنترلی پیچیده را در پی ال سی برنامهریزی کرد. هرچند که زبان LD مزایا و معایبی دارد. مزایا شامل یادگیری و برنامهنویسی آسان، تشخیص و رفع عیوب به راحتی، و قابلیت مستندسازی است. اما معایب آن شامل عدم مناسب بودن برای سیستمهای پیچیده، مشکلات در محافظت و دستهبندی دادهها و عدم قابلیت استفاده از الگوریتمهای پیچیده ریاضی میشود.
زبان برنامهنویسی FBD
زبان برنامهنویسی FBD (Function Block Diagram) یکی دیگر از زبانهای محبوب و پرکاربرد برای برنامهنویسی PLC است. FBD یک زبان گرافیکی است که از بیشتر دستورات Ladder Logic استفاده میکند، اما خواندن و تفسیر آن نسبت به LD سادهتر است. در این زبان، بلوکها به صورت گرافیکی نمایش داده شده و با استفاده از خطوط، بلوکهای ورودی و خروجی به یکدیگر متصل میشوند.
استفاده از بلوکها در FBD، امکان ادغام چندین خط کد را در یک بلوک واحد فراهم میکند. بلوکهای تابع برای ساخت یک سیستم کنترلی استفاده میشوند و میتوانند برای انجام کارهای تکراری مورد استفاده قرار بگیرند، مانند حلقههای PID، تایمرها و شمارندهها (کانترها) که از مهمترین حلقههای تکراری هستند و با استفاده از زبان FBD به راحتی قابل پیادهسازی هستند.
در FBD، هر بلوک جدید را میتوان به خروجی بلوک قبلی متصل کرد و این قابلیت باعث میشود تا دادهها به صورت تودرتو از یک بلوک برنامه به بلوک بعدی منتقل شوند.
مزایای زبان برنامهنویسی FBD عبارتند از:
– برنامهنویسی آسان: به دلیل استفاده از گرافیک در FBD، برنامهنویسی با آن برای افرادی که تجربه کار با زبانهای برنامهنویسی بسیار ندارند، آسانتر است.
– قابلیت استفاده مجدد از کد: FBD امکان استفاده مجدد از کد را فراهم میکند؛ زیرا بلوکهای موجود مانند فیلترها قابل استفاده مجدد هستند.
– رفع اشکال آسان و قابلیت ردیابی اجرا: وجود دادههای گرافیکی در FBD، به برنامهنویسان اجازه میدهد تا اتصالات بین بلوکهای تابع را باقیمانده را ردیابی کنند، که این امر رفع عیب را آسان میکند.
– اجرای موازی: با توسعه سیستمهای کنترلی بر پایه پردازندههای چندگانه، PLCها اکنون قادر به اجرای همزمان چندعملکرد هستند. زبان FBD به عنوان یک زبان برنامهنویسی گرافیکی، برای پردازش موازی (Parallel Processing) مناسب است.
معایب زبان برنامهنویسی FBD عبارتند از:
– زمانبر بودن در برنامههایی که نیاز به کنترل ترتیب و توالی رویدادها دارند؛ زیرا روند اجرای یک برنامه FBD به صورت چپ به راست است.
درباره ادغام FBD با سیستمهای اینترنت اشیاء (IIoT)، باید بگویم که برنامههای FBD قادر به ادغام با سیستمهای IIoT نیستند. FBD اصولاً برای برنامهنویسی سیستمهای کنترلی محلی استفاده میشود و با توجه به محدودیتهای گرافیکی و عملکردی آن، قابلیت ارتباط با سیستمهای دیگر را ندارد که از پروتکلها و استانداردهای مختلف IIoT استفاده میکنند.
بنابراین، اگر صنایع مدرن به دنبال ادغام IIoT با سیستمهای خود هستند، باید از زبانها و پروتکلهای دیگری که از قابلیت ارتباط با سیستمهای IIoT پشتیبانی میکنند، استفاده کنند.
زبان برنامهنویسی نمودار توابع متوالی یا SFC
SFC به صورت مستقیم قابلیت ارتباط با سیستمهای اینترنت اشیاء (IoT) را ندارد. SFC اصولاً برای برنامهنویسی سیستمهای کنترلی محلی استفاده میشود و قابلیت ارتباط با سیستمهای دیگری که از پروتکلها و استانداردهای مختلف IoT استفاده میکنند را ندارد.
بنابراین، اگر شما در صنایع مدرن به دنبال ادغام IoT با سیستمهای خود هستید، باید از زبانها و پروتکلهای دیگری که از قابلیت ارتباط با سیستمهای IoT پشتیبانی میکنند، استفاده کنید. به عنوان مثال، میتوانید از زبان برنامهنویسی استاندارد IEC 61131-3 استفاده کنید که شامل زبانهای مختلفی مانند LD، FBD، SFC، ST و IL است، و با استفاده از پروتکلهای مانند OPC UA و MQTT به سیستمهای IoT متصل شوید.
برای خرید پی ال سی SIEMENS از شرکت نوین پارت کلیک کنید.
زبان برنامهنویسی Structured Text
زبان برنامهنویسی Structured Text (ST) یا همچنین به اختصار STX، یک زبان برنامهنویسی سطح بالا است که بهطور گسترده در صنعت کنترل و اتوماسیون استفاده میشود. ST برای برنامهنویسی سیستمهای کنترلی پیچیده و الگوریتمهای ریاضی مناسب است.
به عنوان یک زبان برنامهنویسی ساختاری، ST ساختار و قواعد مشابهی با زبانهای برنامهنویسی دیگر مانند C، C++ و Python دارد. این مشابهتها باعث میشود که برنامهنویسانی که تجربه کار با این زبانهای برنامهنویسی را دارند، به راحتی به ST عادت کنند.
Structured Text قابلیت انجام عملیات ریاضی پیچیده، تجزیه و تحلیل دادهها و پیادهسازی الگوریتمهای پیچیده را دارد. همچنین، از آنجایی که ST استاندارد شده است، میتوان برنامههای ST را بین پلتفرمهای مختلف پیادهسازی کرد و به راحتی منتقل کرد.
با این حال، استفاده از Structured Text نیز ممکن است با چالشهایی همراه باشد. به طور معمول، عیبیابی و پیدا کردن خطاها در ST پیچیدهتر است و نیازمند دقت بیشتری از برنامهنویس است. همچنین، ST به صورت متنی قابل خواندن است و عدم وجود توصیف گرافیکی و تصویری در آن ممکن است درک و توسعه برنامهها را کمی دشوارتر کند.
در کل، زبان برنامهنویسی Structured Text یک ابزار قدرتمند برای برنامهنویسی سیستمهای کنترلی پیچیده است و از آن برای ایجاد الگوریتمها، تجزیه و تحلیل دادهها و اجرای عملیات ریاضی استفاده میشود.
زبان برنامهنویسی IL
IL یک زبان اسمبلی است که برای برنامهنویسی کنترلکنندههای منطقی قابل برنامهریزی (PLC) استفاده میشود. در این زبان، برنامهها از خطوط کد تشکیل شده و هر دستور در یک خط جداگانه نوشته میشود.
IL برای برنامهنویسان قابل درک است زیرا خطوط کد به ترتیب اجرا میشوند. برنامهنویسان تنها باید دستورهای اساسی مانند Start (شروع)، Load (بارگیری)، OR (عملگر یا) و AND (عملگر و) را یاد بگیرند.
مزایای زبان برنامهنویسی IL عبارتند از:
– ساختار استاندارد آن کمترین تغییرات در اجرای برنامه را نیاز دارد و درک کد آن آسان است.
– مصرف حافظه کمتر و سرعت اجرای برنامهها بالاست.
اما IL دارای معایبی نیز است که عبارتند از:
– در بسیاری از PLC ها این زبان در دسترس نیست و محبوبیت کمتری در میان برنامهنویسان PLC دارد. اغلب IL به عنوان زبان اسمبلی تلقی میشود تا زبان برنامهنویسی PLC.
– ساختار کد در IL محدود است و رفع اشکال و خطاها در این زبان نسبت به سایر زبانهای برنامهنویسی دشوارتر است.
با توجه به محدودیتها و مزایا، استفاده از زبان IL بستگی به پلتفرم PLC و نیازهای پروژه خاص دارد. برنامهنویسان PLC ممکن است از زبانها و روشهای دیگری مانند Structured Text (ST) و Ladder Logic (LD) استفاده کنند که در برنامهنویسی PLC رایجتر هستند.