زیمنس کنترل

کد : 37104

نمایندگی زیمنس: نحوه ی استفاده از Function Block ها

نمایندگی زیمنس: نحوه ی استفاده از Function Block ها
همانطور که گفته شد، Function Block ها نیز بلاک های برنامه نویسی هستند که مهم ترین تفاوت آنها با FC حافظه دار بودن آنهاست. یعنی ، با هر مرتبه فراخوانی FB لازم است یک DB به صورت اختصاصی (Instance DB) برای آن تعریف شود که FB بتواند داده های برنامه ی خود را بطور اتوماتیک در آن ذخیره کند.
روش ایجاد و استفاده از FB تا حدودی شبیه FC است ، ولی بدلیل نیاز به دیتا بلاک قدم هایی که باید برداشته شود ، بشرح زیر میباشد:

1- ایجاد FB در Simatic Manager
2- باز کردن FB توسط برنامه LAD / STL / FBD
3- تعریف ورودی و خروجی و سایر متغیر ها در قسمت Declaration
4- نوشتن برنامه در Network های مربوطه
5- ذخیره سازی FB
6- بازگشت به Simatic Manager و ایجاد دیتا بلاک
7- انتخاب نوع Instance برای دیتا بلاک و انتخاب FB مربوط به آن
8- فراخوانی FB در محیط OB برای اجرا
 
پس از انجام مراحل فوق ، میتوان FB را در پنجره ی Program Element در زیر مجموعه ی FB Block مشاهده نمود و در هر بلاکی مثلاً ، در OB1 آن را صدا زد ، ولی در دستور CALL باید حتماً نام DB مربوط به آن نیز آورده شود. مثال:


21699 نمایندگی زیمنس نحوه ی استفاده از Function Block ها  1
کنترل زیمنس، نماینده زیمنس

بدیهی است که در صورت تعریف ورودی ها و خروجی ها و سایر متغیر های تعریف شده در Declaration ، فانکشن بلاک در زیر آن ظاهر خواهد شد. اگر DB قبلاً موجود نباشد ، پس از دستور CALL برنامه سوال میکند که آنرا ایجاد کند یا نه ، و در اینصورت نیازی به مراحل 6 و 7 نمیباشد. در حین اجرای برنامه توسط PLC تمام پارامتر های فانکشن بلاک بجز نوع Temp در دیتا بلاک مربوط به آن بطور اتوماتیک ذخیره میشوند و نیازی به استفاده از دستور برنامه نویسی خاصی برای این کار نیست. اگر کاربر بعد از مرحله 6 فوق الذکر روی DB در Simatic Manager کلیک کند تا باز شود ، مشاهده خواهد کرد که محتویات DB دقیقاً شبیه آنچه در بالای FB تعریف کرده است ، میباشد (بجز متغیر Temp که در آن آورده نمیشود.) نمونه در شکل زیر مشاهده میشود:


نمایندگی زیمنس ایران

 

در قسمت Declaration بالای FB ها یک گزینه به نام STAT وجود دارد که در FC ها این گزینه وجود ندارد. STAT مخفف Static است. در این پایه نیز میتوان متغیر های میان برنامه ای را تعریف نمود. به عبارت دیگر ، STAT همان Temp است که مقادیر آن در DB نیز ذخیره میشود ، ولی دیتایی که در Temp نوشته میشود ، در DB ذخیره نخواهد شد.
بقیه ی پایه های Declaration مانند FC ها است.
اگر FC یا FB از پوشه ی Libraries فراخوانی شود ، برنامه های از پیش نوشته شده دارند. پس از فراخوانی ، بلاک مورد نظر در پوشه ی Blocks از زیر مجموعه پروژه در Simatic ظاهر میشود. حال ، اگر آیکن  را از بالای پنجره ی Simatic Manager برداشته و روی آیکن بلاک مزبور قرار دهیم ،
توضیحاتی که در مورد عملکرد فانکشن و ورودی و خروجی های آن مشاهده خواهیم نمود.
با مقایسه ی شکل آیکن بلاک سیستم با بلاک های ایجاد شده توسط کاربر ، میبینیم که علامتی قفل مانند در کنار آن قرار گرفته است. این نشانه ی Protect بودن بلاک است. اگر روی آیکن بلاک سیستم دابل کلیک کنیم ، مشاهده خواهیم کرد که پس از اجرای برنامه LAD / STL / FBD پیغام The Block Is Protected مانند شکل پایین ظاهر میشود.



نمایندگی زیمنس تهران

 

Protect بودن بلاک به این معنی است که کاربر نمی­تواند برنامه ی داخل آن را ببیند ، ولی برنامه ی داخل آن هنگام صدا زدن اجرا میشود.