می خواهیم برنامه یک پروژه واقعی را طراحی کرده و در محیط نرم افزار Simatic Manager آن را ، اجرا کنیم .پروژه کنترل دمای آب یک استخر می باشد ، که قسمت های مختلف پروسه را در شکل زیر مشاهده می کنید :
همانطور که در شکل فوق ، مشاهده می کنید ، سنسور S1 تعیین سطح آب استخر را اعلام می کند و بعد از آنکه این سنسور ، فعال شد و اعلام کرد که آب در استخر وجود دارد ، سیستم روشن می شود و Pump1 ، آب را از استخر می کشد و از مبدل حرارتی ( Heat_Exchange ) و صافی ( Filter ) عبور داده و مجدد ، آب را به استخر بر می گرداند .
بویلر به طور مستقل کار می کند و دمای آب بویلر روی 90oC تنظیم می باشد.
سنسور RTD دمای آب استخر را که به طور پیش فرض روی 28 درجه سانتیگراد ( Set_Point=28oC ) تنظیم شده است ، اندازه گیری می کند ، درصورتیکه دما از 28oC کمتر شود ، آنگاه Pump2 روشن شده و آب خروجی بویلر را وارد سیستم می کند و از مبدل حرارتی ( Heat_Exchange ) , عبور میدهد تا دمای آب مجدد از 28oC بیشتر شود ، در این حالت ، اگر سنسور ، RTD ، دمای آب استخر را بیشتر از 28 درجه سانتیگراد را اندازهگیری کند ، آنگاه Pump2 خاموش می شود و این روند به همین صورت ادامه پیدا می کند .
توجــه مهم : آب خروجی از بویلر که دمای آن زیاد است با آب استخر برخورد نمی کند و فقط در مبدل حرارتی به دلیل آنکه لوله های زیادی وجود دارد و آب گرم بویلر، توسط پمپ شماره2 ، با عبور از لوله های مبدل حرارتی ، گرمای خود را به لوله های آب سردی که از استخر می آید ، می دهد ، درنتیجه تبادل حرارتی صورت می گیرد .
پایه IN : این پایه یک ورودی از
جنس INT میباشد که معمولاً آدرس ورودی آنالوگ به آن مستقیم وارد میشود.
پایه HI_LIM : یک ورودی از جنس Real میباشد. در واقع بازه ماکزیمم برای Scale در این پایه به صورت
یک عدد اعشاری وارد میشود ( مثلاً 10.0 ).
پایه LO_LIM : یک ورودی از جنس Real است که مقدارمینیمم برای Scale در این پایه به صورت
اعشاری وارد میشود ( مثلاً 0.0 ).
پایه BIPOLAR : جهت عملکرد بلاک به صورت دو قطبی استفاده میشود. این پایه از جنس Bool است و به یک متغیر دو
وضعیتی احتیاج دارد که با صفر بودن ، مقدار آن بلاک می تواند در بازه مثبت عمل Scale را انجام دهد و اگر
یک شود ، از منفی تا مثبت وقتی عدد وارد شده به پایه LO_LIM یک عدد منفی و پایه HI_LIM یک عدد مثبت باشد (
مثلاً -10.0 …. 10.0 ) و سیگنال AI نیز از منفی تا مثبت
متغیر باشد ، باید پایه Bipolar یک شود و اگر عدد وارد شده فقط در بازه مثبت باشد ، لازم است مقدار این
پایه همیشه صفر باشد.
تا این جا پایه های ورودی بلاک تعریف شدند. در اتوماسیون زیمنس در واقع، مقدار وارد شده
پایه IN در بازه LO_LIM و HI_LIM ، Scale می شود و در پایه خروجی OUT مقدار کالیبره شده
ارائه میگردد.
پایه خروجی OUT : یک خروجی از جنس Real میباشد که مقدار Scale شده از این طریق خارج میشود. میتوان به آن یک حافظه 32 بیتی اختصاص
داد.
پایه خروجی RET-VAL : این خروجی در اکثر FC های برنامه نویسی شده استاندارد وجود دارد. این پایه از جنس Word است و نشانگر خطاهای بلاک می باشد. هرگاه این FC عملکرد غیر صحیح داشته باشد ، در این پایه یک کد Hex وارد می شود که آن کد نشان دهنده نوع خطای بلاک است. در Help مربوط به هر بلاک کد های Hex متناسب با پیغام های خطا ارائه شده است. میتوان به آن یک حافظه 16 بیتی اختصاص داد. کاربر می تواند ابتدا بر روی گزینه در Toolbar زیمنس و سپس بر روی بلاک زیمنس کلیک کند تا Help مربوطه باز شود.