برنامه نویسی PLC – به زبان ساده


در این مقاله قصد داریم برنامه نویسی PLC را معرفی کنیم و توضیحاتی در خصوص زبان نردبانی ارائه دهیم. در قسمت اول از این مجموعه، به معرفی مقدماتی از PLC و تاریخچه آن پرداختیم. بخشهای مختلف آن را نام بردیم. همچنین مثالی از چگونگی عملکرد سیستم کنترل آن ارائه کردیم. در قسمت دوم، ماژولهای PLC را به زبان ساده تشریح کردیم. در آن مقاله، چگونگی عملکرد ماژولهای CPU و ورودی و خروجیها بیان شد. در انتهای آموزش ماژولهای PLC نیز، توضیحاتی در مورد پروتکلهای ارتباطی PLC ارائه کردیم. پیشنهاد میشود قبل از شروع مطلب پیش رو، آموزشهای پیشین را مطالعه کنید. در این آموزش قصد داریم نگاهی جدیتر به PLC بیاندازیم و مقدمات برنامهنویسی این کنترلگرهای منطقی را با کمک زبان نردبانی (Ladder) شروع کنیم. در انتهای مطلب نیز دو مثال کاربردی از برنامه نویسی PLC ارائه خواهد شد.
المانهای اصلی در برنامه نویسی PLC
زبان نردبانی یکی از زبانهای محبوب در برنامه نویسی PLC محسوب میشود. همانطور که در آموزش PLC - به زبان ساده گفتیم، این زبان شباهت زیادی به مدارهای رلهای دارد. در نتیجه، یادگیری آن برای کسانی که با مدارهای رلهای سر و کار داشتهاند، بسیار ساده است. به همین دلیل زبان نردبانی به عنوان اولین زبان در یادگیری PLC به علاقمندان توصیه میشود. پس از آن میتوان به سراغ زبانهای دیگر مانند STL و FBD رفت.
از طرف دیگر، عیبیابی برنامه نوشته شده هم، با این زبان آسانتر است. زیرا در این زبان همه المانها به صورت گرافیکی و دیداری به کار رفتهاند. تمام نمادها، مشابه نماد الکتریکی متناظرشان مورد استفاده قرار میگیرند. در نتیجه میتوان تمام فرآیند را به راحتی در آن دنبال کرد. در شکل زیر نمونهای از نمادهای به کار رفته در این زبان مشاهده میشود. شاید اولین چیزی که با دیدن این تصویر جلب توجه میکند، خطوط عمودی در سمت چپ و راست نمودار باشند. در واقع، این دو خط، خطوط برقدار هستند. تمام منطق برنامه بین این دو خط و روی خطوط افقی نوشته میشود. در ادامه، سادهترین نوع ورودی و خروجی را معرفی میکنیم که به عنوان الفبای این زبان به حساب میآیند. سپس عملگرهای منطقی را مرور خواهیم کرد.
المانهای رلهای
المانهای رلهای شامل رله ورودی باز، رله ورودی بسته و رله خروجی میشوند. این المانها به ترتیب با کنتاکت باز، کنتاکت بسته و بوبین کنتاکتور متناظر هستند. بوبین کنتاکتور، تجهیزی الکترومغناطیسی است که میتواند با ورود جریان برق به داخل سیمپیچهایش، وضعیت کنتاکتهای متناظرش را تغییر دهد. این المانها با نمادهای به کار رفته در شکل زیر نشان داده شدهاند. نماد کنتاکتهای متناظر بوبین، مشابه کنتاکتهای باز و بسته است. ورودیها را میتوان به عنوان کلید شستی یا کلید فرض کرد. در برنامه نویسی PLC باید به تفاوت این دو نوع ورودی دقت کنید. کلید شستی با فشردن، وصل و با رها کردن، قطع میشود. اما کلید با فشردن، وصل شده و پس از رها شدن، باز هم وصل میماند. به عنوان مثالی از خروجیها هم میتوانید یک چراغ یا موتور الکتریکی را در نظر بگیرید.
مروری بر عملگرهای منطقی
پیش از اینکه به چگونگی ارتباط بین این نمادها بپردازیم، نیاز داریم روابط منطقی و مقادیر بولین (Boolean) را مرور کنیم. دو عملگر منطقی که در برنامه نویسی PLC، بیشتر با آنها سر و کار خواهیم داشت، عملگرهای AND و OR هستند. دو کنتاکت باز A و B را در نظر بگیرید که مطابق شکل زیر به صورت سری در کنار هم قرار گرفتهاند. در این حالت، عملگر بین آنها AND خواهد بود. همانطور که میبینید نوع ترسیم این عملگر شباهت زیادی به مدار الکتریکی دارد. در مدار الکتریکی، A و B میتوانند نمایش دهنده دو کلید باز باشند. در این حالت لامپ Y که به عنوان خروجی در نظر گرفته شده است، وضعیتی مطابق شکل زیر خواهد داشت. در اینجا تنها با بسته بودن همزمان هر دو کلید، لامپ Y روشن میشود. به عبارت دیگر، مقدار هریک از رلههای A و B باید یک (True) باشد تا مقدار خروجی هم یک شود. در هیچ یک از حالتهای دیگر، خروجی برقدار نخواهد شد. در این حالتها، خروجی مقدار صفر (False) خواهد داشت. در تصویر زیر، شماتیک کامل هر چهار حالت نشان داده شده است. رنگ سبز، نشانه برقدار بودن پایههاست.
حال به سراغ عملگر OR میرویم. نمودار شکل زیر همانند مدار در حالت OR رسم شده است. A و B مانند دو کلید باز هستند که به صورت موازی با هم بسته شدهاند. در این حالت نیز، مقادیر خروجی به صورت جدول زیر خواهد بود. در اینجا کافیست تا حداقل یکی از کلیدها بسته شود. در این حالت لامپ Y روشن میشود. فقط در حالتی که هر دو کلید باز باشند، خروجی برقدار نخواهد شد. تصویر زیر، شماتیک کامل هر چهار حالت ممکن را برای عملگر OR نشان میدهد. پایههای برقدار با رنگ سبز نشان داده شدهاند.
در ادامه با ارائه دو مثال ساده سعی خواهیم کرد با چگونگی استفاده از این المانها در برنامه نویسی PLC آشنا شویم.
مثال ۱
سؤال: مداری طراحی کنید که با فشردن کلید شستی ، خروجی روشن شود و روشن بماند. همچنین با زدن کلید شستی خروجی غیرفعال شود.
پاسخ: این مدار در شکل زیر رسم شده است. کلید شستی (با توجه به ماهیتش) یک لحظه فشرده و سپس رها میشود. در مرحله اول با زدن کلید شستی (کلید راهاندازی)، جریان در مسیر شماره ۱ برقرار میشود. به محض اینکه خروجی برقدار شود، تیغه نگهدارنده تغییر وضعیت میدهد. در نتیجه، این تیغه بسته میشود و بسته میماند. در این حالت برق از مسیر ۲ جریان پیدا میکند و برقرار میماند. حال کلید رها شده و مسیر ۱ قطع میشود. ولی به دلیل وصل بودن مسیر ۲، خروجی همچنان فعال میماند. برای غیرفعال شدن خروجی، کلید شستی را در جایی قرار دادهایم که برق در کل مسیر (قسمت مشترک مسیرهای ۱ و ۲) قطع شود. با فشردن کلید شستی ، دیگر جریان برق به خروجی نمیرسد و خروجی غیرفعال میشود. در نتیجه، تیغههای متناظر آن تغییر وضعیت میدهند. در این حالت تیغه که قبلاً بسته بود، باز میشود. حال کلید شستی را رها میکنیم. در این وضعیت، هر دو مسیر ۱ و ۲ باز است. در نتیجه، خروجی غیرفعال باقی میماند.
مثال ۲
سؤال: مداری طراحی کنید که با زدن کلید شستی ، خروجی روشن شود و روشن بماند. سپس با زدن دوباره کلید شستی خروجی غیرفعال شود.
پاسخ: در این مثال، برای هر دو عمل راهاندازی و توقف، فقط از یک کلید شستی استفاده شده است. نمونهای از این مدار، برای باز و بسته کردن درِ اتوبوسهای شهری استفاده میشود. این مدار را در شکل زیر مشاهده میکنید. احتمالاً اولین سؤالی که با دیدن این مدار به ذهنتان میرسد، تعداد زیاد خروجیهاست. در حالی که در صورت سؤال، فقط یک خروجی ذکر شده است. در اینجا، از خروجیهای و به عنوان خروجی کمکی استفاده کرده و خروجی اصلی را با نشان دادهایم. در برنامهنویسی PLC، به وفور با چنین مواردی مواجه خواهیم شد.
اکنون به ادامه حل مثال برمیگردیم. با زدن کلید شستی برق در مسیر شماره 1 جریان پیدا میکند. با برقدار شدن خروجی کمکی ، تیغههای متناظر آن تغییر وضعیت میدهند. یعنی تیغههای باز بسته و تیغههای بسته باز میشوند. در نتیجه، مسیر ۵ برقدار و خروجی که خروجی اصلی است، فعال میشود. در مجموع و پیش از رها کردن کلید شستی، مسیرهای شماره ۱، ۲، ۵ و ۶ بسته و مسیرهای ۳ و ۴ باز هستند. حال با رها کردن کلید شستی، تمام مسیرهای ۱ تا ۴ قطع میشوند. به دلیل نرسیدن برق به خروجی کمکی ، تیغههای متناظر آن هم تغییر وضعیت میدهند تا مسیر شماره ۵ هم قطع شود. در این وضعیت، فقط مسیر شماره ۶ بسته است و خروجی فعال باقی میماند. شکل زیر، وضعیت مدار را بعد از یک بار فشردن و سپس رها کردن کلید شستی نشان میدهد.
اکنون برای بار دوم و به منظور توقف (یا بسته شدن درِ اتوبوس) کلید شستی را فشار میدهیم. این بار، برق از مسیر شماره ۳ عبور میکند و به خروجی کمکی میرسد. با برقدار شدن ، تیغههای متناظر آن تغییر وضعیت میدهند. در نتیجه، تیغه بسته باز شده و مسیر شماره ۶ را باز میکند. با قطع جریان برق در مسیر شماره 6، برق به خروجی نمیرسد. بنابراین، تیغههای متناظر با این خروجی تغییر وضعیت میدهند. با دقت در مدار میبینید که پس از رها کردن کلید شستی، تیغههای باز و بسته به شکل تصویر اول درمیآیند و خروجی اصلی، غیرفعال باقی میماند.
خروجی مجازی در PLC
در حل مثال ۲ از خروجیهای کمکی ۱ و ۲ کمک گرفتیم. در برنامه نویسی PLC به این خروجیها، خروجی مجازی (Flag) گفته میشود و آنها را با M نمایش میدهند. در واقع، خروجیهای مجازی، رلههایی فرضی هستند که به هیچ خروجی واقعی متصل نیستند ولی بوبین و کنتاکت دارند. تعداد مجاز استفاده از این خروجیها، در هر نوع PLC متفاوت است و به کارخانه سازنده و ورژن آن بستگی دارد.
تا اینجا و در مجله فرادرس، مجموعهای سه قسمتی از آموزشهای مقدماتی PLC ارائه شد. امیدواریم با فراگیری این آموزشها، انگیزهای مضاعف برای یادگیری بیشتر این مبحث ایجاد کرده باشیم. در صورت علاقهمندی به مباحث مرتبط در زمینه ابزاردقیق و اتوماسیون صنعتی، آموزشهای زیر نیز به شما پیشنهاد میشوند:
- شمارنده و تایمر PLC – راهنمای کاربردی
- آموزش PLC – به زبان ساده
- ماژول های PLC – به زبان ساده
- سنسور و ترنسدیوسر در مهندسی برق — به زبان ساده
^^
با عرض سلام و خسته نباشین
چرا در Q1 و Q2 از از کنتاکت همدیگه یکی دیگه و نگهدارنده استفاده شده موتور چپ گرد راستگرد نیست که محافظت کنیم که فاز به فاز نشن مدار مگه برا روشن خاموش موتور نیست؟
ممنون میشم راهنماییم کنین؟
تیغه q1 دقیقا چیه ؟ مثلا I1 یک شستی هست و i2 هم شستی هستش
تیغه باز کنتاکتور
سلام بر شما.مطالب بسیار عالی بودند