|
KVisionOPC работа с битами OPC-переменной |
|
Привет всем!
Подскажите, есть ли возможность в среде KVisionOPC работать с битами OPC-тегов (дискретных). Например, по нажатию кнопки установить бит 0 дискретного тега (unsigned short) в единицу или сбросить в 0. Спасибо. |
|
![]() |
|
Как ведущий разработчик SCADA-системы КАСКАД и идеолог KVisionOPC могу предположить, что данную задачу можно попробовать решить с помощью объекта визуализации Скрипт. На нем можно написать процедурку выделения или установки отдельного бита, и записать значение в OPC-тег. Сразу предупреждаю, что подробно объяснять как это сделать - не буду. Разве только подпишетесь на годовую техническую поддержку . Но если возникнут затруднения - на пару вопросов отвечу, если будет время.
|
|
|
Александр Бурмистров,
www.entels.ru |
|
![]() |
|
|
Добавил аналоговый паспорт,
связал с моим unsigned short тегом, добавил кнопку со скриптом, добавил внешнюю переменную a0, связал её с паспортом, выбрал функцию OnClick, в функции прописал (для примера): begin With KVScript do begin //устанавливаем бит2=1, остальные биты=0 WriteAnalog('a0',2,false); end; end. Правильно? Или надо по-другому? Спасибо за ответы. |
|
![]() |
|
Да, вроде правильно. Я вот тоже сейчас попробовал простенький скрипт на OnClick: -------------------------------- var a: integer; q: byte; begin With KVScript do begin ReadAnalog('a0', a, q); a := a * 2; WriteAnalog('a0', a); end; end. ---------------------- Переменная а0 привязана к OPC-тегу, при нажатии на кнопку читаем ее, умножаем на два, записываем обратно. Дальше уже алгоритмы обработки зависят от фантазии. Могут быть проблемы при больших числах (когда используются старшие биты 4-х разрядного слова) - внутри KVisionOPC все значения передаются как single, поэтому челое число от OPC-сервера преобразуется в single, обабатывается ядром, а при записи в OPC опять преобразуется в целое. |
|
|
Александр Бурмистров,
www.entels.ru |
|
![]() |
|
Ответить
|
| Переход на форум | Права доступа на форуме ![]() Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |