Переменные
Версия документа: 05.04.2016
Автор изменений : Alex
Начиная с версии 2.1.1 в программе АСУД.SCADA доступен ряд дополнительных функциональных возможностей по анализу состояния группы дискретных сигналов.
Данный функционал реализуется с помощью механизма "Переменных".
Переменные - это некий аналог Item в понимании OPC-сервера, но реализованный на стороне Scada.
Переменная может быть связана с несколькими Item-а OPC-сервера, значение Переменной при этом определяется как логическая функция от состояния связанных Item.
В настоящее время доступны следующие логические функции:
- OR - логическое ИЛИ
- AND - логическое И.
Несмотря на то, что переменная может быть связана с любым типом Item, пока (в связи со спецификой реализации) имеет смысл сопоставлять ее с Item типа:
- дискретный датчик
- канал ПГС
Значения, которые может принимать Переменная:
- 0 - состояние Норма
- 1 - состояние Активное (Сигнальное)
Привязать Переменную можно через свойство Тэг к примитиву Изображение (см. дополнительные примитивы).
Что в итоге сейчас можно реализовать:
- Показать Изображение 1 в случае если любой из анализируемых сигналов находится в Активном (сигнальном) состоянии
- Показать Изображение 2 иначе
или
- Показать Изображение 1 в случае если все из анализируемых сигналов находится в Активном (сигнальном) состоянии
- Показать Изображение 2 иначе
Для использования примитивов в АСУД.SCADA следует добавить модуль variables.psm в папку ..\Scada\Modules
Текущие ограничения в работе:
- Пока работают только с примитивом Изображение
Настройка Scada
В режиме настройки выбрать меню Вид / Переменные
Слева указаны зарегистрированные Переменные.
Имя переменной имеет вид "Var..". Изменить имя нельзя, оно присваивается автоматически при создании переменной.
Для добавления Переменной следует кликнуть правой кнопкой мыши в списке Имя переменной.
Настройки переменной:
- Название - не изменяемое поле
- Тип - реализуемая логическая функция OR или AND
- Описание - любая текстовая информация
- Адрес - текстовое поле (пока не используется)
Далее следует добавить Item OPC-сервера, выполнив клик правой кнопкой мыши в списке Тэги / Переменные.
Сохранить изменения, нажав на пиктограмму "Сохранить все" панели инструментов.
Разместить на карте примитив Изображение, указать в поле Тэг имя переменной, например, Var0.
Написать простой Lua-скрипт выбора изображения из перечня (название функции может быть любым).
function img (x)
local xi = math.floor(x)
if (xi == 0) then
return "norma.jpg"
end
if (xi == 1) then
return "alert.jpg"
end
end
Указать в настройках примитива Изображение функцию img.
Пример работы:
- три дискретных датчика связанный с Переменными Var0 и Var1
- Переменная Var0 (верх) - тип AND
- Переменная Var1 (низ) - тип OR
Ни один из дискретных сигналов не находится в Активном состоянии.
Один из дискретных сигналов находится в Активном состоянии.