Проблема: В Vijeo Citect не работает функция Cicode на графической странице и появляется аппаратный аларм Foreground Cicode cannot block
Программное обеспечение: Vijeo Citect, Citect SCADA
Ответ:
Имеющиеся в Vijeo Citect функции Cicode делятся на обычные и блокирующие.
Блокирующие функции полностью занимают вызывающий их поток, и другие функции Cicode не могут выполняться в этом потоке, пока не завершится выполнение блокирующей функции.
В связи с этим не разрешается вызывать блокирующие функции непосредственно с графических страниц, так как это привело бы к «зависанию» графики.
Чтобы обойти это ограничение можно создать периодическое событие (Event), которое бы выполняло блокирующую функцию и записывало результат ее выполнения в переменный тег. Значение этого тега уже можно выводить на графической странице.
Программное обеспечение: Vijeo Citect, Citect SCADA
Ответ:
Имеющиеся в Vijeo Citect функции Cicode делятся на обычные и блокирующие.
Блокирующие функции полностью занимают вызывающий их поток, и другие функции Cicode не могут выполняться в этом потоке, пока не завершится выполнение блокирующей функции.
В связи с этим не разрешается вызывать блокирующие функции непосредственно с графических страниц, так как это привело бы к «зависанию» графики.
Чтобы обойти это ограничение можно создать периодическое событие (Event), которое бы выполняло блокирующую функцию и записывало результат ее выполнения в переменный тег. Значение этого тега уже можно выводить на графической странице.