This is topic Процедура канала "управление" in forum TRACE MODE 5 бесплатная версия / TRACE MODE 5 Free version at Форум TRACE MODE: техническая поддержка.
Уфффф.. тогда еще вопрос: из документации: "Управление Эта процедура определена для всех каналов. Она реализует функцию управления. С ее помощью можно вызвать FBD-программу, в которой можно запрограммировать требуемые алгоритмы управления. В качестве аргументов программе могут передаваться значения и атрибуты любых каналов из текущей базы. Эти аргументы могут быть как входными, так и формируемыми. Формально процедура управление связана с каналом только циклом пересчета. Она может вообще никак не участвовать в формировании его значений, а управлять другими каналами. Такая ситуация часто наблюдается при использовании процедуры управление на каналах типа INPUT. "
Ну ладно, а если FBD-программа, указанныая в процедуре "управление" канала все-таки участвует в формировании значений этого канала, то кто раньше выполнится: эта FBD-программа или FBD-программа, указанная в процедуре "трансляция" этого же канала.
Я вообще правильно вопрос поставил???
Posted by YuriyOg (Участник № / Member № 1650) on :
И чем отличаются процедуры "управление" и "трансляция"?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Управление - это механизм выполнения алгоритма программы на FBD. Входы и выходы алгоритма могут вообще не быть связаны с атрибутами этого канала. Трансляция - это тоже выполнение алгоритма программы, но для расширенной обработки данных самого канала. Поэтому обазательно необходимо задействовать Аппаратное и Реальное значение данного канала в алгоритме, иначе канал будет "разорван" Трансляцией (см. тему Обработка данных в канале). Насчет порядка пересчета процедур - смотрите в справочной системе раздел "Такты пересчета".
Posted by YuriyOg (Участник № / Member № 1650) on :
Хм…, получается, чтобы разобраться в программе и найти ошибку в вычислении тэга, я должен глазами полностью просмотреть все вызовы всех FBD-функций???? А есть ли какой-нибудь способ упростить эту задачу? Т.е. список перекрестных ссылок или что-нибудь типа «перейти по ссылке» как в V6?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
А при чем здесь порядок пересчета и разбор алгоритмических ошибок в программе? Программу алгоритмически можно отладить в самом редакторе FBD в режиме эмуляции!
Posted by YuriyOg (Участник № / Member № 1650) on :
Под словом "программа" я подразумевал не FBD - блок, а всю конфигурацию, т.е. весь проект. Вот и получается, что если у меня есть основвания считать, что значение тэга отображается некорректно, то я должен просмотреть ВСЕ вызовы всех FBD-программ, так как интересующий меня тэг может встретиться в любом месте проекта. Вот для упрощенния этой процедуры я и спрашиваю про "перкрестные ссылки"...
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Для этого нужно использовать функцию создания объекта базы каналов с условием зависимости от какого-либо канала. Тогда он объединит все каналы, на которых есть программа, связанная с данным каналом. И не надо будет просматривать все вызовы во всем узле.
Posted by YuriyOg (Участник № / Member № 1650) on :
Спасибо... Не могли бы Вы дать ссылку на название раздела в справочной системе, где описана данная возможность?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
"Редактор базы каналов. Обработка данных и управление" - "Объект базы каналов".
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
"Редактор базы каналов. Обработка данных и управление" - "Объект базы каналов".