در پی ال سی زیمنس SIEMENS PLC و نرم افزار سیماتیک منیجر Simatic Manager
نمی توان در زبان های LAD و FBD ثابت زمانی ، حد تفکیک یا Resolution را تنظیم کرد .
خود نرم افزار متناسب با مقدار زمانی که در برنامه وارد می کنید ، یک ثابت زمانی های زیر را انتخاب می کند .
10MS
100MS
1S
10S
برای مثال اگر ثابت زمانی 100 میلی ثانیه باشد و مقدار زمان 8 باشد ، تغییرات عددی در تایمر
از عدد 80 تا 0 به صورت نزولی خواهد بود .
حال اگر ثابت زمانی ما 10 میلی ثانیه باشد ، تغییرات عددی تایمر از 800 تا صفر خواهد بود .
پس اگر قرار است برای مثلا 4 ثانیه برنامه ای نوشته شود ، باید بدانیم زمان تایمر را با 4 مقایسه کنیم ، 40 یا 400
برای رفع این مشکل می توان از زبان برنامه نویسی STL استفاده کنیم .
در تعریف Timer به زبان STL از L W#16#2020 استفاده میشود .
سپس نوع تایمر مثلا SD T 1 که میشه ON Delay Timer
اگر بخواهیم با مثلا با A I0.1 و R T1 می توان آنرا ریست کرد .
همچنین L T1 و T MW4 باعث میشه مقدار تایمر در حافظه MW4 ریخته شود .
همچنین از دستور هایی مثلا >=I یا <I برای مقایسه تایمر در بازه تغییرات استفاده کرد .
مثلا اگر از 8 ثانیه بزرگتر بود و از 16 ثانیه کوچکتر بود ، یک خورجی فعال شود .
همچنین برای فعال شدن یک بیت در زمان فعال شدن تایمر می توانیم از A T1 و = Q0.0 استفاده کنیم .
مهمترین نکته در تنظیم و برنامه نویسی رزولیشن تایمر بر میگرده به حافظه 13 و 14 هم
که در واقع میشه بیت 12 و 13 از 0 تا 15 که در اصطلاح به آن Time Base می گوییم .
در 12 بیت اول سه عدد BCD قرار دارند .
هر 4 بیت معرف یک عدد است . پس ماکزیمم عدد به عنوان مقدار 999 خواهد بود .
در قسمت Time Base چهار حالت میتواند اتفاق بیافتد .
به ترتیب و به صورت باینری 00 و 01 و 10 و 11
اگر بخواهیم به دسیمال بیان کنیم . عددی بین 0 تا 3
که به تریتب ثابت زمانی های زیر را به وجود می آورد :
00 باینتری یا 0 دسیمال ، 10 میلی ثانیه
01 باینتری یا 1 دسیمال ، 100 میلی ثانیه
10 باینتری یا 2 دسیمال ، 1 ثانیه
11 باینری یا 3 دسیمال ، 10 ثانیه .
پس ما اگر بخواهیم با عدد 8 ، زمان هشت ثانیه را داشته باشیم باید از عدد 2008 کنیم .
یا با ثابت زمانی 100 میلی ثانیه باید برای 8 ثانیه از عدد 1080 استفاده کنیم .
یعنی برای مثال آخر خواهیم داشت L W#16#1080
پس باید در دستور های مقایسه حواسمون باشه که به خاطر ثابت زمانی 100 میلی ثانیه
مقدار تایمر در بازه عددی 80 تا 0 تغییر می کند .
تایمر در Simatic Manager به صورت نزولی میشمرد .
برای رفع این مشکل می توان زمان لحظه ای تایمر را از زمان کل تایمر کم کرد .
برای مثال L 80 بعد L T1 و سپس -I و در نهایت MW6
با این کار تغییر زمان سپری شده تایمر در MW6 به صورت صعودی خواهد شد .
نکته مهم :
به هیچ وجه اگر مقدار عدد تایمر دو رقمی بود از گذاشتن صفر خودداری نکنید .
برای مثال در مثال 1080 اگر صفر وسط حذف شود ، 108 رو به عنوان مقدار تایمر میگیره و ثابت زمانی چون صفر است و عددی برای آن نداریم 10 میلی ثانیه .