Технические FAQs

Задать вопрос

В Vijeo Citect при записи значений в переменную можно столкнуться с так называемым «перемигиванием значения»

Иногда при записи значений в переменную можно столкнуться с так называемым «перемигиванием значения». При этом переменная сначала принимает новое значение, затем возвращается к старому, потом вновь принимает новое.

В citect.ini имеется параметр [Code]WriteLocal, который определяет, будет ли Vijeo Citect производить запись в локальную таблицу переменных в Cicode. Cicode обновляет свое локальное отображение устройства ввода/вывода при каждой записи переменной в устройство.

При значении WriteLocal=1, локальная таблица переменных обновляется и в драйвер устройства направляется запрос на запись. В случае, когда устройство ввода вывода представляет собой несколько устройств, объединенных по принципу masterslave (например OPC сервер, опрашивающий физическое устройство), Citect может произвести следующее чтение с master устройства до того, как оно успеет обновить slave. Это особенно заметно при медленных коммуникациях между master и slave.

При значении WriteLocal=0 записываемое значение не будет использоваться для отображения в Vijeo Citect. Отображаемое значение изменится только после следующего успешного чтения со slave устройства. При этом в случае медленных коммуникаций между master и slave отображаемое значение изменится с некоторой задержкой.

Таким образом, для устранения проблемы «перемигивающих значений» нужно установить [Code]WriteLocal=0

Вы нашли ответ на свой вопрос?
Как мы можем улучшить информацию?