Дополнительные примитивы: различия между версиями
Alex (обсуждение | вклад) |
Alex (обсуждение | вклад) |
||
| Строка 143: | Строка 143: | ||
* 100% - нормальная скорость анимации | * 100% - нормальная скорость анимации | ||
Предположим, что контролируемый параметр изменяется в пределах [0..10], тогда пример [[Скрипты | Lua-функции]], указания скорости анимации, может быть следующим | Предположим, что контролируемый параметр изменяется в пределах [0..10], тогда пример [[Скрипты | Lua-функции]], указания скорости анимации, может быть следующим (название функции может быть любым) | ||
<source lang="php"> | <source lang="php"> | ||
| Строка 150: | Строка 150: | ||
end | end | ||
</source> | </source> | ||
<nowiki> | |||
Входной параметр х - вещественное число. | |||
</nowiki> | |||
Функция должна быть сохранена в скрипте в папке ..\Scada\scripts\lvm\custom | Функция должна быть сохранена в скрипте в папке ..\Scada\scripts\lvm\custom | ||
Версия от 12:03, 25 декабря 2015
Версия
1.0.0.1 от 21-12-2015
Введение
Начиная с версии 2.0.6 в программе АСУД.SCADA доступен ряд дополнительных примитивов (далее просто Примитивы).
Для использования примитивов в АСУД.SCADA следует добавить модуль tadd_prim.psm в папку ..\Scada\Modules
Данные примитивы расширяют возможности визуализации данных в SCADA, однако в настоящее время их использование связано с некоторыми особенностями (ограничениями в работе).
Текущие ограничения в работе:
- При выборе примитива вокруг него не рисуется пунктирная рамка
- Не работает групповое выделение нескольких объектов путем выбора прямоугольной области мышкой.
- Не работает трансформация объекта
- В случае если примитив оказался вне видимой области экрана, Scada может его "потерять"
- Не рисуется синий кружок при "потере связи" с контролируемым Item.
- Не работает групповое позиционирование примитивов (по левому краю, по правому краю и т.п.)
Работает функционал:
- Одиночной настройки примитива
- Копирования по Ctrl + движение мышкой
- Копирование через Меню между подвидами путем выбора объекта
- Копирование нескольких объектов через Меню, путем их последовательного выбора с нажатым Ctrl
Примитивы могут располагаться как на главном виде, так и на любом подвиде.
Если свойства примитива не отображаются или отображаются некорректно, выполните клик на пустом месте карты , затем повторный клик на примитиве.
Примитив График
Позволяет в графической форме контролировать изменение состояния от 1 до 3 величин.
Общие настройки примитива:
- Заголовок - наименование графика
- Цвет фона - цвет фона
- Дискрет.(мин.) - дискретизация в минутах. При указании дискретизации = 0, новое значение добавляется на графике сразу после обновления. В противном случае добавляется одно среднее значение величины с указанной частой дискретизации.
- Интервал (ч.) - число отображаемых часов назад с текущего момента на графике. Точки выходящие за указанный интервал будут автоматически удалены с графика.
- Число графиков - 3 (значение не изменяется).
Настройки для каждого графика:
- Тэг - тэг контролируемого параметра (обычно какого-то цифрового значения).
- Цвет - цвет линии графика (не следует использовать серый цвет).
При нажатии на график правой кнопкой мыши доступно контекстное меню:
- Метки - отображение меток на точках графика
- Сохранить - сохранить точки графика в файл на диске.
В случае если при обновлении значения ОРС_статус <> OPC_Quality_good (потеря связи с устройством) цвет соответствующей линии станет серым.
При завершении работы программы SCADA текущие точки графиков будут сохранены в tmp файле в папке ..\Scada\settings и восстановлены впоследствии при старте программы.
Примитив Изображение
Отображает ту или иную картинку в зависимости от значения контролируемого параметра.
Поддерживаемые форматы изображений:
- JPG
- PNG
- BMP
- GIF (статичный)
Все изображения должны быть предварительно скопированы в папку ..\Scada\settings\Images
Настройки примитива:
- Тэг - тэг контролируемого параметра
- Lua-функция - имя функции сопоставления значения контролируемого параметра - изображению (функцию следует написать самостоятельно).
- Масштаб - выполнять ли масштабирование картинки под размер примитива.
- Тестовая картинка - позволяет на этапе настройки отобразить тестовое изображение для установки размеров примитива.
Пример Lua-функции выбора картинки из перечня (название функции может быть любым).
function img (x)
local xi = math.floor(x)
if (xi == 0) then
return "norma.jpg"
end
if (xi == 1) then
return "battary.jpg"
end
return "off.jpg"
end
Входной параметр х - вещественное число. local xi = math.floor(x) - отбрасываем дробную часть
Если необходимо работать с дробными числами, то скрипт может быть следующим
function img (x)
if (x < 1.15) then
return "norma.jpg"
end
if (xi > 2.36) then
return "battary.jpg"
end
return "off.jpg"
end
Функция должна быть сохранена в скрипте в папке ..\Scada\scripts\lvm\custom
В случае если при обновлении значения параметра его ОРС_статус <> OPC_Quality_good (потеря связи с устройством), отобразится изображение по умолчанию.
Примитив Анимированное изображение
Отображает анимированную картинку с той или иной скоростью анимации в зависимости от значения контролируемого параметра.
Поддерживаемые форматы изображений:
- GIF (анимированный)
Все изображения должны быть предварительно скопированы в папку ..\Scada\settings\Gif
Настройки примитива:
- Тэг - тэг контролируемого параметра
- Минимум - минимальное значение параметра
- Максимум - максимальное значение параметра
- Lua-функция - имя функции сопоставления значения контролируемого параметра - скорости анимации GIF-изображения (функцию следует написать самостоятельно).
- Изображение GIF - изображение.
- Прозрачность - включить прозрачность (GIF-изображение должно быть со свойством transparent).
- Отображать значение - отображать скорость анимации (под изображением)
Если значение LUA-функции задано (не пустое), то используется скрипт для задания скорости анимации. Иначе скорость определяется по параметрам Минимум, Максимум по следующему правилу:
Скорость = 100 * (Значение_параметра - Минимум) / (Максимум - Минимум).
Примитив - масштабируется под размер изображения.
Скорость анимации должна быть указана в процентах %.
Допускается значение скорости 0% ..400%
- 0% - отсутствие анимации
- 100% - нормальная скорость анимации
Предположим, что контролируемый параметр изменяется в пределах [0..10], тогда пример Lua-функции, указания скорости анимации, может быть следующим (название функции может быть любым)
function imgspd (x)
return x*10
end
Входной параметр х - вещественное число.
Функция должна быть сохранена в скрипте в папке ..\Scada\scripts\lvm\custom
В случае если при обновлении значения параметра его ОРС_статус <> OPC_Quality_good (потеря связи с устройством), скорость анимации будет установлена в 0.
Примитив Индикатор
Индикатор (или индикатор выполнения) - представляет собой прямоугольную панель для отображения индексации хода или выполнения каких-либо задач, или изменения контролируемого параметра в процентном соотношении.
Настройки примитива:
- Тэг - тэг контролируемого параметра
- Минимум - минимальное значение параметра
- Максимум - максимальное значение параметра
- Цвет заливки - цвет заполнения индикатора (не использовать синий цвет).
- Цвет фона - цвет заполняемого фона
- Отображать значение - отображать процент выполнения
- Вид индикатора - один из 5 вариантов отображения Индикатора (по умолчанию 1).
Процент выполнения = 100 * (Значение_параметра - Минимум) * / (Максимум - Минимум).
В случае если при обновлении значения параметра его ОРС_статус <> OPC_Quality_good (потеря связи с устройством), цвет заливки изменится на синий.
Примитив Кнопка
Кнопка - предназначена для запуска любой сторонней задачи.
Настройки примитива:
- Команда - команда, выполняемая операционной системой при нажатии на кнопку
- Надпись - надпись на примитиве
Нажатие на кнопку обрабатывается только в рабочем режиме.
Примеры команд:
- cmd.exe /c ping 192.168.1.1 - выполнить команду ping
- notepad.exe "settings\заметки.txt" - открыть файл в программе notepad.exe
- calc.exe - запустить калькулятор
- cmd /c start http://127.0.0.1 - открыть WEB-страницу
Примитив отображения данных с IP-камер
Позволяет отобразить видеоданные с камер, подключенных к компьютерной сети.
Подробнее о настройке см. здесь
--Иванов Александр 12:00, 21 декабря 2015 (UTC)