Тема / Topic: Использование атрибутов канала в программе
Grigorovskih
Forum Professor / Завсегдатай форума
Участник № / Member № 1915
отправлено / posted
Здравствуйте Господа!
Подскажите пожалуйста как всё таки можно прочитать атрибут 4 канала float чтоб использовать в программе значение его двух битов аппаратной и программной достоверностей, простая привязка аргумента программы к этому атрибуту результатов не даёт, использование функции "getAttributeI" тоже ни чё не даёт, хотя с её помощью читаются другие атрибуты без проблем. Если привязать аргумент экрана к этому атрибуту, то при отображении текстовым полем с численным форматом отображаются значения 0, 1 и 2, 3, а с форматом по умолчанию как в профайлере _T, _F и !T? !F соответственно. В программе всегда 0 - невероятная какая то ситуация
Сообщения / Posts 362 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Grigorovskih
Forum Professor / Завсегдатай форума
Участник № / Member № 1915
отправлено / posted
Ещё добавлю, что при вышеизложеных комбинациях пришлось перебирать всевозможные типы аргументов к которым привязан этот атрибут...
Сообщения / Posts 362 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Grigorovskih
Forum Professor / Завсегдатай форума
Участник № / Member № 1915
отправлено / posted
Ещё кое что: Значение я всё же смог получить но только два варианта 0 или 2 (при посылке в работающем профайлере в 52 атрибут 0 или 1 соотв), т.е. это отображается старший бит атрибута который связан с атрибутом программной достоверности канала - 52. А младший бит равный 1 (т.е. значени 1 или 3 атрибута 4 ) так и неудаётся получить ни какими способами...
Сообщения / Posts 362 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Мы перепроверили данную ситуацию. Атрибут 4 каналов FLOAT и НЕХ передаются в программу без каких-либо ограничений
Сообщения / Posts 17320 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Grigorovskih
Forum Professor / Завсегдатай форума
Участник № / Member № 1915
Grigorovskih
Forum Professor / Завсегдатай форума
Участник № / Member № 1915
отправлено / posted
Мы разобрались в чём дело! Но проблему не решили. Всё работает, когда вызов программы которая читает 4 атрибут осуществляется отдельным каналом CALL, но если мы делаем трансляцию т.е. вызываем этим же каналом программу и привязываем атрибут 4 к аргументу этого канала ничего не выходит, причём другие атрибуты нормально читаются, проблема только с этим! Проверьте пожалуйста именно так реализовать чтение этого атрибута, у Вас получится такая же картина!
Сообщения / Posts 362 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
При аппаратной недостоверности канала не выполняются его внутренние алгоритмы и трансляция. (Руководство пользователя, "Особенности пересчета и отработки каналов")
Сообщения / Posts 17320 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Grigorovskih
Forum Professor / Завсегдатай форума
Участник № / Member № 1915
отправлено / posted
Ну Господа, извиняйте тогда за невнимательность Просто была одна идея хорошая - реализовать для каждого канала, значение которого так или иначе воспроизводится на шаблонах экранов, вывод в этот шаблон через аргумент либо реального значения либо сообщения короткого типа error и т.п.. Реализовали всё работает (привязали к аргументу экрана комментарий, формат текста сделали "по умолчанию", в этот комментарий передавали аппаратное значение канала, а в случае той или иной недостоверности новый текст), но только мы хотели не добавлять каналы для этой цели! Подскажите пожалуйста тогда есть ли вариант, при прочих равных условиях, как можно "зацепить" недостоверность, может используя ещё какой нибуть атрибут этого же канала, но при использовании режима трансляции
Сообщения / Posts 362 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Если у Вас канал получил признак недостоверности трансляция вообще не будет выполнятся какой атрибут Вы не используйте. Выход собрать все недостоверности в одну программу и вызывать ее каналом Call. Думается, что один лишний канал погоды не испортит.
Сообщения / Posts 17320 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Grigorovskih
Forum Professor / Завсегдатай форума
Участник № / Member № 1915
отправлено / posted
К стати мысль такая по реализации такого механизма, возникла не от "хорошей жизни", а от того, что в TM при аппаратной недостоверности возникает эффект "замораживания" значения канала, не смотря на то что эта недостоверность имеет место быть! Оператору в такой ситуации отображать ничего нельзя, даже ноль, он же незнает что на самом деле у него происходит с процессом! Так что, мне кажется, что в по этому поводу надо придумать выгодный вариант реализации адекватной реакции на какую либо недостоверность. Посимафорить на мониторе разными мигающими элементами не достаточно, информативней будет отобразить информацию прямо в текстовом поле где оператор отслеживает параметр.
Сообщения / Posts 362 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Grigorovskih
Forum Professor / Завсегдатай форума
Участник № / Member № 1915
отправлено / posted
Канал CALL - ну как вариант впринципе, только не очень удобно, куча аргументов, запутаться можно...
Сообщения / Posts 362 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Можно сделать поверх текстового поля еще одно точно такое же только без заливки и контура, на котором при получении 1 из 4 атрибута канала будет появляться надпись и заливка. Отображать в реальном значнии, как Вы предлагаете нецелесообразно.
Сообщения / Posts 17320 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Grigorovskih
Forum Professor / Завсегдатай форума
Участник № / Member № 1915
отправлено / posted
А каким механизмом реализовать управление видимостью этого поля? Слоем что ли?
Сообщения / Posts 362 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Вы берете ГЭ "Текст" и делаете его как бы невидимым, убирая заливку и контур. В поле текст ставим динамизацию Arg = Const, сравнивая с 1. Если истинно, показыаем "Не достоверно", если ложь, оставляем пустым. Во вкладке заливка ставим галочку "разрешено". Привязываем к тому же аргументы и ставим макс 1. Но можно и слоем. Просто, если у Вас много каналов, отображаемых на экране,то и слоев будет много.
Сообщения / Posts 17320 | Из / From: Россия
| IP / IP: IP адрес / IP address |