This is topic Из FBD в ST in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/31/t/000332.html

Posted by M@V (Участник № / Member № 1800) on :
 
Господа, подскажите пожалуйста, как в ST-программе реализовать аналог FBD блока TSTEP?
С уважением,M@V.
 
Posted by M@V (Участник № / Member № 1800) on :
 
Или только создавать дополнительный аргумент и привязивать его к атрибуту 118 вызывающего канала CALL, а далее функцией getAttributeI считать атрибут 87 либо 5, как правильно и эффективней?
С уважением M@V.
 
Posted by M@V (Участник № / Member № 1800) on :
 
Пока аргумент программы привязал к 87-му атрибуту вызывающего ее канала CALL. Все вроде работает нормально. Но жду Вашей подсказки.
С уважением, M@V.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В атрибут 87, CC канала CALL вызова программы записывается время (в миллисекундах) между вызовами программы.
Это же именно то, что Вам надо?
 
Posted by M@V (Участник № / Member № 1800) on :
 
Да, именно то, что мне надо для определения количества тактов в секунде, чтобы правильно сформировать временной интервал не привязываясь к пересчету каналов в RTM. Кстати атрибут 87 отражается аргументом типа REAL как тысячные секунды (0.550) а не (550) как Вы говорите.
Но дело в том, что в FBD программе мне для решения этого вопроса не требовался дополнительный аргумент типа IN с привязкой к вызываемому каналу! Так и напрашивается специальная функция в ST программе. Ведь за частую период пересчета колеблется или его корректируют по железу, а программа должна точно выдерживать интервалы.
С уважением, M@V.
 
Posted by M@V (Участник № / Member № 1800) on :
 
Интересно, атрибут 87 описан в системе как REAL и отражает период вызова в тысячных долях секунды, но если его принимать в аргумент типа INT то получаем миллисекунды!!!
С уважением, M@V.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Если Вы не хотите иметь дополнительный аргумент в ST-программе, создайте пользовательскую функцию на языке FBD с блоком TSTEP и встройте ее в ST-программу.
 
Posted by M@V (Участник № / Member № 1800) on :
 
Уразумел, спасибо за подсказку!
С уважением, M@V.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2