توجــه : می خواهیم برنامه یک پروژه واقعی را طراحی کرده و در محیط نرم افزار Simatic Manager آن را ، اجرا کنیم .
پروژه کنترل دمای آب یک استخر می باشد ، که قسمت های مختلف پروسه را در شکل زیر مشاهده می کنید :
توجــه : همانطور که در شکل فوق ، مشاهده می کنید ، سنسور S1 تعیین سطح آب استخر را اعلام می کند و بعد از آنکه این سنسور ، فعال شد و اعلام کرد که آب در استخر وجود دارد ، سیستم روشن می شود و Pump1 ، آب را از استخر می کشد و از مبدل حرارتی ( Heat_Exchange ) و صافی ( Filter ) عبور داده و مجدد ، آب را به استخر بر می گرداند .
بویلر به طور مستقل کار می کند و دمای آب بویلر روی 90oC تنظیم می باشد.
سنسور RTD دمای آب استخر را که به طور پیش فرض روی 28 درجه سانتی گراد ( Set_Point=28oC ) تنظیم شده است ، اندازه گیری می کند ، درصورتیکه دما از 28oC کمتر شود ، آنگاه Pump2 روشن شده و آب خروجی بویلر را وارد سیستم می کند و از مبدل حرارتی ( Heat_Exchange ) , عبور میدهد تا دمای آب مجدد از 28oC بیشتر شود ، در این حالت ، اگر سنسور ، RTD ، دمای آب استخر را بیشتر از 28 درجه سانتیگراد را اندازهگیری کند ، آنگاه Pump2 خاموش می شود و این روند به همین صورت ادامه پیدا می کند .
توجــه مهم : آب خروجی از بویلر که دمای آن زیاد است با آب استخر برخورد نمی کند و فقط در مبدل حرارتی به دلیل آنکه لوله های زیادی وجود دارد و آب گرم بویلر، توسط پمپ شماره2 ، با عبور از لوله های مبدل حرارتی ، گرمای خود را به لوله های آب سردی که از استخر می آید ، می دهد ، درنتیجه تبادل حرارتی صورت می گیرد .
نکتــه : در این پروسه ، پاسخ سیستم کند است ، یعنی اگر دمای آب استخر 26oC باشد ، یعنی فقط 2oC کمتر از مقدار تعیین شده ( Set_Point = 28oC ) باشد ، باید مقدار زیادی از آب استخر از تبادلگر حرارتی عبور کند تا دمای آب استخر ، افزایش یابد ، لذا پاسخ سیستم کند است و نیازی به سیستم های دیگر کنترل مانند PID _ Controller نداریم .
توجه : در زیر ، تعریف متغیرها ، ورودی ها و خروجی ها را داریم و آنها را تحلیل می کنیم :
*** پیکربندی سخت افزار در Simatic Manager :
*** آدرس کارت DI / DO :
*** مشخصات و آدرس کارت AI :
*** جدول Symbol Table و تعیین آدرس های سمبلیک برای متغیرها ، ورودی ها و خروجی های برنامه :
***ایجاد دیتا بلاک Data Block ( DB1 ) برای تعریف Set_Point :
*** برای اینکه PLC هردفعه به DB1 مراجعه نکند ، اطلاعات آن را به OB100 که جزو OBهای راهاندازی است ، منتقل می کنیم ، تا در ابتدای اجرای پروژه PLC اطلاعات آن را بخواند و اجرا کند:
توجــه مهم : علاوه بر فانکشن های سیستمی ( SFC ) ، خانواده ای از فانکشن ها با عنوان IEC Function Blocks وجود دارند که بسیاری از عملیات های پیچیده را ساپورت می کنند ، این فانکشن ها به چهاردسته تقسیم می شوند :
1- Convert که تبدیلی را روی نوع دیتا انجام می دهند .
2- DT که برای عملیات مقایسه تاریخ و زمان بکار می رود .
3- String که برای عملیات روی String کاربرد دارد .
4- Floating Point Math برای عملیات روی متغیرهای اعشاری و 32 بیتی ، بکار می رود .
در برنامه پروژه کنترل دمای آب استخر در Network1 در بلاک OB1 از این دسته از فانکشن ها که از نوع Convert می باشد ، برای مقیاس اندازه گیری سنسور RTD ، استفاده می گردد ، به طوریکه در قسمت Program Element ، قسمت منوی درختی Libraries و سپس قسمت Standard Library و بعد قسمت TI-S7 Converting Blocks را انتخاب کرده و درنهایت فانکشن FC105 را انتخاب می کنیم ، مانند شکل های زیر :
*** OB1 را ایجاد می کنیم و برنامه اصلی پروژه را در آن طراحی می کنیم :
*** حالت های مختلف Simulation را در شکل های زیر مشاهده می کنید ( آدرس ورودی ها و خروجی ها را از جدول Symbol Table پیدا کنید ) :
در شکل زیر ، سنسور S1 فعال و شستی استارت فشرده شده در نتیجه Pump1 , Boiler و Pump2 روشن شده اند :
درشکل زیر ، دما توسط RTD_Scale مقدار 29oC اندازه گیری شده درنتیجه Pump2 خاموش شده است :
در شکل زیر ، دما توسط RTD_Scale مقدار 27oC اندازه گیری شده درنتیجه Pump2 روشن شده است :
در شکل زیر ، شستی استپ فشرده شده و Pump1 , Boiler و Pump1 خاموش شدهاند :
*** برنامه را Monitoring می کنیم ، تا حالت های ورودی و خروجی را بهتر مشاهده کنیم :
فیلم آموزشی طراحی پروژه کنترل دمای آب استخر توسط PLC , STEP7-300 و نرم افزار Simatic Manager :