Эта страница является
переводом страницы
IRidium Server Panel Project. Перевод выполнен на 100%.
Визуализация управления iRidium Server
Проект визуализации для работы с iRidium Server
документация обновлена 11.3.2019
iRidium Server + визуализация - это центральный контроллер (или программа на ПК), подключенный к оборудованию автоматизации. Server передает данные на панели управления и дает возможность управления оборудованием. При подключении к серверу, есть возможность работы с базами данных и построения графиков. Визуализация для запуска на панелях управления создается в iRidium Studio.
Описание
Интерфейс визуализации лучше всего создавать, когда готов серверный проект: настроена связь с оборудованием автоматизации, сформированы виртуальные теги и скрипты для них на стороне сервера. Импорт серверного проекта позволит быстро получить полный набор управляемых переменных для проекта визуализации. Останется привязать переменные к графическим элементам.
Сервер может работать с несколькими панелями управления iRidium, на которые загружены разные, или один и тот же проект. Визуализация - графический интерфейс для управления оборудованием автоматизации, запускается только в приложении i3 pro на панели управления. Настройки сервера доступны через веб-интерфейс.
Подключение
Настройте проект для сервера - сформируйте список управляемых устройств и переменных. Проект сервера нужно импортировать в проект визуализации iRidium и настроить графические элементы для управления переменными сервера.
Панели iRidium подключаются к iRidium Server и передают команды. Сервер выполняет команды, меняя состояние переменных оборудования автоматизации, к которому подключен:
Импорт переменных из Server Project
There are several ways to add the iRidium Server driver in projects for control panels.
Fast creation of projects
Right-click on the server project and select "Create Panel Project"
You will get a panel project with an empty page and the iRidium Server driver with all server tags. You will be able to work with them as with commands and feedback channels - assign them to items for control and data display, process them with the help of iRidium Script.
When making changes in the server project you can synchronize it fast with the panel project. Select the iRidium Server driver and click
Sinc with Source.
The file of the server project with which the driver will synchronize can be substituted in
Source Project
Adding of iRidium Server in ready visualization projects
If you already created a visualization project and want to add connection to the server in it:
- add the iRidium Server driver from the database
- indicate the path to the *.sirpz project with which you want to synchronize your visualization project
- you will get the iRidium Server driver with the actual list of commands and feedback channels.
Commands & Feedbacks
Как результат импорта мы имеем два уровня настроек:
- iRidium Server - драйвер, объединяет в себе список переменных сервера. Здесь настроим IP адрес и другие параметры подключения к серверу
- Commands и Feedbacks - команды и каналы обратной связи, которые позволяют управлять переменными. Команды - переменные, доступные на запись, каналы - на чтение.
Команды и каналы обратной связи нужно привязать к графическим элементам проекта для управления оборудованием:
- Команда привяжите к графическому элементу с указанием значения, которое нужно передать адресу в шине при нажатии на графический элемент
- Канал обратной привяжите к графическому элементу, чтобы отобразить состояние группового адреса
Чтобы связать команду или канал с графическим элементом, используйте метод drag&drop - перетягивание.
Не создавайте в проекте для панели управления (*.irpz), в драйвере iRidium Server, новых команд и каналов обратной связи. При синхронизации они не будут созданы в серверном проекте и не будут работать.
Синхронизировать с панелью управления можно только команды и каналы, созданные в серверном поекте.
Настройка подключения к серверу
Настройки подключения к iRidium Server
- Host - IP адрес сервера или доменное имя. Можно использовать Local host 127.0.0.1, если сервер и визуализация работают на одном устройстве
- Port - TCP порт подключения к серверу, по умолчанию: 30464
- System ID - зарезервировано
- Login - зарезервировано
- Password - зарезервировано
Смена настроек подключения
Возможность смены параметров подключения нужна, если вы отключаетесь от Wi-Fi сети объекта автоматизации и начинаете использовать 3G или другую Wi-Fi сеть. Чтобы управление продолжило работать, нужно переключиться с локального на публичный IP адрес интернет-маршрутизатора.
Переключение не происходит автоматически, вам нужно будет нажать на клавишу выбора режима соединения. Для возможности удаленного доступа необходимо сделать порты управления системой автоматизации публичными. Для этого настраивают службу Port Forwarding на интернет-маршрутизаторе. Защищенное соединение может обеспечить VPN.
1 Скачайте шаблон (*.js) (правая кнопка: "Сохранить объект как..."), добавьте шаблон в редактор скриптов
клавишей (+) Add Script from file
2 Настройте параметры скрипта, как показано в примере:
- function Internal_1() {
- IR.GetDevice("iRidium Server").SetParameters({Host: "192.168.0.100", Port: 30464, LogLevel: 0, BackgroundMode: 0});
- }
- function External_1() {
- IR.GetDevice("iRidium Server").SetParameters({Host: "215.110.10.10", Port: 30464, LogLevel: 0, BackgroundMode: 0});
- }
Скопируйте имя драйвера из Projсet Device Panel, список параметров нужно скопировать из примера в точности.
3 Выберите кнопку, которая будет отвечать за переключение Internal и External параметров. Откройте Macros Editor для события Press (Object Properties > Programming), выберите команду Script Call и добавьте ее двойным кликом. Выберите имя функции, которую вызовет кнопка:
Теперь каждое нажатие на кнопку будет применять соответствующий набор настроек подключения.
Управление переменными
Без iRidium Server, команды будут уходить в шину KNX напрямую, при нажатии на графические элементы интерфейса визуализации. Каждая панель управления подключается к шине самостоятельно.
Чтобы отправить команду в шину KNX, вам нужно создать графический интерфейс для панели управления. Интерфейс состоит из страниц, попапов и графических элементов, см. основы создания графических интерфейсов.
Для упрощения работы используйте готовые интерфейсы.
Для управления оборудованием настроим команды (Commands) и каналы обратной связи (Feedbacks). Чтобы отправить команду, нужно перетянуть ее на графический элемент и указать значение (Value), которое нужно отправить. Чтобы отобразить обратную связь, нужно перетянуть канал на графический элемент, и указать, куда вывести значение (Value)
Далее представлены типы групповых адресов, которые поддерживает iRidium и настройки графических элементов, которые подойдут для управления этими типами адресов.
Включить/выключить, записать значение
Графический элемент из 1 или 2х состояний. Кнопка, в зависимости от настроек может быть фиксируемой и не фиксируемой. Каждое нажатие на кнопку инициирует отправку одних и тех же команд, заранее к ней привязанных.
1 Создайте переменную, куда нужно записать число или строку. Настройте ее, как показано в инструкции
2 Создайте кнопку, настройте ее следующим образом (cм. все настройки):
| Type
|
Button
|
| Feedback
|
Реакция кнопки на нажатия пользователя и на получение данных от оборудования
- Momentary - кнопка отправляет значение, но не отображает обратную связь
- Channel - отправляет значение и отображает обратную связь
- None - визуально не реагирует на нажатие или получение обратной связи
- Invert Channel - отправляет значение и отображают обратную связь инверсно (false - включена, true - выключена)
|
3 Перетащите переменную на кнопку, в диалоге привязки переменной укажите:
| Action
|
Send Number - записать в переменную число. Можно переключить на Send String для отпарвки ASCII строки
|
| Event for Action
|
Событие интерфейса, связанное с кнопкой. При возникновении события, в переменную будет записано указанное значение
- Press - отправить по нажатию на кнопку
- Release - отправить при отпускании кнопки
- Hold - отправлять в цикле по удержанию
- Move - не работает с кнопкой (Button)
Одновременно можно использовать несколько событий. Например, отправть [ 100 ] по нажатию и [ 0 ] по отпусканию.
|
| Value
|
Значение для записи в переменную. Кнопка отправляет всегда одно и то же, записанное в Value значение
|
| Add a feedback channel
|
(Create a feedback channel) Поставьте эту галочку, если нужно, чтобы кнопка не только записала значение в переменную, но и изменила состояние при получении данных из этой же переменной. Полученное значение будет влиять на состояние кнопки (вкл/выкл) и может быть отображено в ее текстовом поле.
|
4 Теперь переменная связана с кнопкой. Посмотреть все связи кнопки можно в OBJECT PROPERTIES > Programming
Триггерное переключение
Триггерное переключение с помощью элемента "Trigger Button" позволяет отправлять попеременно 2 произвольных значения, указанных в Trigger Value 1 и Trigger Value 2. При наличии обратной связи, триггер автоматически принимает соответствующее состояние и при нажатии отправляет значение, противоположное текущему. Триггер нельзя настроить на работу с 3 и более значениями.
1 Создайте переменную, которую нужно переключать между 2 значениями. Настройте ее, как показано в инструкции
2 Создайте кнопку, настройте ее следующим образом (cм. все настройки элемента):
| Type
|
Trigger Button
|
| Feedback
|
Реакция на нажатия и получение данных от оборудования
- Channel - переключает значение и отображает обратную связь (другие не используются)
|
| Trigger Value 1 / Trigger Value 2
|
значения, которые нужно попеременно отправлять при нажатии на триггер, зависят от типа переменной
|
3 Перетащите переменную на триггер, в диалоге привязки переменной укажите:
| Action
|
Send Token - отправить переменной значение Value, взятое из графического элемента (Trigger Value 1 или Value 2, в зависимости от текущего состояния триггера)
|
| Event for Action
|
Событие интерфейса, связанное с кнопкой. При возникновении события, в переменную будет записано указанное значение
- Press - отправить по нажатию
- Release - отправить при отпускании
Одновременно можно использовать только одно событие для триггера
|
| Add a feedback channel
|
(Create a feedback channel) Поставьте эту галочку, т.к. нужно, чтобы триггер знал свое состояние и менял его получении данных из переменной и при нажатии.
|
4 Теперь переменная связана с триггером. Посмотреть все связи можно в OBJECT PROPERTIES > Programming
Регулирование уровнем
Нажатие на уровень или перемещение ползунка отправляет в управляемую переменную число, соответствующее текущему положению ползунка.
1 Создайте переменную, которую нужно регулировать. Настройте ее, как показано в инструкции
2 Создайте уровень, настройте его следующим образом (cм. все настройки):
| Type
|
Level
|
| Feedback
|
Реакция уровня на нажатия пользователя и на получение данных от оборудования
- Channel - отправляет значение и отображает обратную связь (ползунок перемещается при получении данных)
|
| Min / Max
|
Пределы регулирования уровня: определяют диапазон значений, в котором перемещается ползунок
|
| Invert Range
|
Меняет местами нижнюю и верхнюю часть уровня, т.е. регулирование от 0 до 100 будет происходить не снизу вверх (при вертикальном уровне), а сверху вниз.
|
3 Перетащите переменную на уровень, в диалоге привязки переменной укажите:
| Action
|
Send Token - отправить переменной значение Value, взятое как текущее положения ползунка уровня в диапазоне Min...Max
|
| Event for Action
|
Событие интерфейса, связанное с кнопкой. При возникновении события, в переменную будет записано указанное значение
- Press - отправить Value по нажатию
- Release - отправить Value при отпускании
- Move - отправлять все промежуточные значения Value при перемещении ползунка.
добавляйте команду Delay (100) перед командой на событии Move, чтобы меньше нагружать оборудование (с командой Delay, Move будет срабатывать не чаще, чем раз в 100 мс)
Можно использовать все три события одновременно.
|
| Add a feedback channel
|
(Create a feedback channel) Поставьте эту галочку, т.к. нужно, чтобы ползунок уровня перемещался в соответствии с актуальным состоянием переменной
|
4 Теперь переменная связана с уровнем. Посмотреть все связи можно в OBJECT PROPERTIES > Programming
Пошаговое приращение/убывание
Графический элемент из 2х состояний. При каждом нажатии на такую кнопку, рассчитывается значение, большее текущего на "Up/Down Value", но не превышающее "Max/Min Value". Рассчитанное значение отправляется переменной: таким образом реализуется пошаговое приращение переменной. Для работы с элементом нужна обратная связь от переменной в реальном времени.
1 Создайте переменную, которую нужно инкрементировать. Настройте ее, как показано в инструкции
2 Создайте уровень, настройте его следующим образом (cм. все настройки):
| Type
|
Up/Down Button
|
| Feedback
|
Реакция уровня на нажатия пользователя и на получение данных от оборудования
- Momentary - кнопка должна визуально нажиматься сразу же, она не отображает обратную связь визуально
|
| Up/Down Value
|
шаг инкрементирования (может быть больше либо меньше нуля)
|
| Min/Max Value
|
предел инкрементирования (минимальный предел для отрицательного шага, максимальный для положительного)
|
| Hold Value
|
шаг инкрементирования при срабатывании события Hold. Команду управления оборудованием можно одновременно привязать на Press и Hold, тогда значение будет прирастать при удержании кнопки
|
| Hold Time
|
время удержания кнопки, чтобы сработало событие Hold
|
| Repeat Time
|
частота повторения событий On Hold
|
3 Перетащите переменную на кнопку, в диалоге привязки переменной укажите:
| Action
|
Send Token - отправить переменной Value, рассчитанное как сумма текущего значения и величины инкремента
|
| Event for Action
|
Событие интерфейса, связанное с кнопкой. При возникновении события, в переменную будет записано рассчитанное значение инкремента
- Press - отправить по нажатию
- Hold - при удержании кнопки инкрементировать значение с указанной периодичностью
Можно использовать два события одновременно.
|
| Add a feedback channel
|
(Create a feedback channel) Поставьте эту галочку, т.к. нужно, чтобы инкремент рассчитывался в соответствии с актуальным состоянием переменной
|
4 Теперь переменная связана с уровнем. Посмотреть все связи можно в OBJECT PROPERTIES > Programming
Отправка импульса
Некоторые системы автоматизации выполняют действие не по простому изменению значения, а по получению импульса - однократному изменению состояния переменной с возвратом в исходное значение.
Отправка импульса - задача, которую можно выполнить с помощью обычной кнопки (Button). Кнопка может регулировать продолжительность импульса или отправлять импульс одной и той же длины.
Для выполнения этой задчи обычно выбирают кнопку из 2х состояний. Кнопка, при каждом нажатии, будет отправлять какое-то значение, а затем ноль. Варианты реализации позволяют создать импульс фиксированной и переменной длины.
1 Создайте переменную, которой нужно управлять. Настройте ее, как показано в инструкции
2 Создайте кнопку, настройте ее следующим образом (cм. все настройки):
| Type
|
Button
|
| Feedback
|
Реакция кнопки на нажатия пользователя и на получение данных от оборудования
- Momentary - кнопка отправляет значение, но не отображает обратную связь
- Channel - отправляет значение и отображает обратную связь
- None - визуально не реагирует на нажатие или получение обратной связи
- Invert Channel - отправляет значение и отображают обратную связь инверсно (false - включена, true - выключена)
|
3 Перетащите переменную на кнопку, в диалоге привязки переменной укажите:
| Event for Action
|
Вар.1. Импульс регулируемой длины
- Press - поставьте галочку и укажите значение, равное для переменной логической единице, чтобы импульс начался при касании кнопки
- Release - поставьте галочку и укажите значение, равное логическому нулю, чтобы импульс завершился при отпускании кнопки
Таким образом, импульс будет продолжаться, пока вы удерживаете элемент.
|
| Add a feedback channel
|
(Create a feedback channel) Поставьте эту галочку, если нужно, чтобы кнопка не только записала значение в переменную, но и изменила состояние при получении данных из этой же переменной. Полученное значение будет влиять на состояние кнопки (вкл/выкл) и может быть отображено в ее текстовом поле.
|
| Event for Action
|
Вар.2. Импульс фиксированной длины
- Press - поставьте галочку и укажите значение, равное для переменной логической единице. Поставьте галочку Pulse и укажите желаемую длину импульса в миллисекундах. Импульс начнется, как только вы коснулись кнопки и закончится через указанное время отправкой нуля.
|
| Add a feedback channel
|
(Create a feedback channel) Поставьте эту галочку, если нужно, чтобы кнопка не только записала значение в переменную, но и изменила состояние при получении данных из этой же переменной. Полученное значение будет влиять на состояние кнопки (вкл/выкл) и может быть отображено в ее текстовом поле.
|
4 Теперь переменная связана с кнопкой. Посмотреть все связи кнопки можно в OBJECT PROPERTIES > Programming
Сценарий, последовательность
К одному графическому элементу можно привязать несколько команд, они будут отправлены оборудованию по порядку, сверху вниз, без задержки. Канал обратной связи можно привязать только 1, иначе входящие данные будут обработаны некорректно.
Чтобы привязать несколько команд к 1 графическому элементу, перетяните их, одну за другой, на этот элемент. Выберите подходящие события (Press, Release, Move) в диалоге привязки:
Задержка между командами добавляется через редактор макросов. Выберите папку Other, команда Delay. Рекомендуется добавлять задержку для обеспечения надежной обработки команд оборудованием.
Группа радио-кнопок
Радиокнопка (Radio Button) - элемент интерфейса, который позволяет выбрать одну из предварительно настроенных опций. В iRidium радиокнопки не выделены как отдельный тип элемента, вы можете настроить их, взяв за основу Trigger Button.
Задача радикнопкок: отправлять переменным значения с разных кнопок, из которых можно выбрать только одну.
Настройки и поведение радиокнопки зависят от того, с какой переменной оборудования вы работаете. Приведем несколько ситуаций и примеров настройки.
вар. 1 Радиокнопки для управления одной переменной с возможностью получения обратной связи. Записывают значения в одну переменную; оборудование возвращает текущее состояние этой переменной.
- Настройте элементы Trigger Button (см. изображение) по числу радиокнопок. В полях
Trigger Value 1 и 2 укажите одинаковые значения, соответствующие тем, что каждая кнопка должна отправлять управляемой переменной
- Перетяните команду управления переменной на все радиокнопки. Выберите событие
Press или Release для отправки, обязательно поставьте галочку Add A Feedback Channel для отображения статуса переменной
настроенная кнопка перейдет в State 2 только когда переменная примет значение, указанное в Trigger Value 1 и 2
вар. 2 Радиокнопки для управления переменными с возможностью получения обратной связи. Записывают значения вкл\выкл в разные переменные; оборудование возвращает текущее состояние этих переменных. Переменные не синхронизированы оборудованием автоматизации для работы в режиме радиокнопок (нужно выключать неактивные режимы на стороне iRidium)
- Настройте элементы Type:
Trigger Button, Feedback: Channel, укажите Trigger Value 1 = неактивное, Trigger Value 2 = активное состояние переменной (например 0/1, 0/100)
- Перетяните команды управления переменными на графические элементы. На примере первого элемента группы:
- Отправьте нули во все переменные, которые входят в группу радиокнопок, чтобы отключить текущий активный режим. Для этого в диалоге отправки команды выберите Action:
Send Number
- Добавьте задержку Delay(50) мс через редактор макросов события Press, чтобы дать оборудованию время на отключение активного режима
- Перетяните на элемент команду управления переменной, которая соответствует радиокнопке. Оставьте Action:
Send Token. Value на событии Press (или Release), обязательно поставьте галочку Add a Feedback Channel
Если режимы работы оборудования синхронизируются на стороне оборудования автоматизации (при включении одного из режимов остальные автоматически выключаются), вам не нужно отпрвлять нули в отключаемые переменные. Выполните только подпункт 2.3 настроек
Поле ввода
Элемент для ввода данных с клавиатуры. Введенные данные остаются на элементе, откуда их можно "забрать" - отправить оборудованию или обработать в скрипте.
1 Создайте элемент, настройте его следующим образом (cм. все настройки):
| Type
|
Edit Box
|
| Feedback
|
Реакция на нажатие
- Momentary - поле ввода подсвечивается при получении фокуса
|
2 Поле ввода можно связать с переменной напрямую или через скрипт
При нажатии на поле ввода, выполните команду открытия клавиатуры:
- Object Properties > Programming > Press > «Show Keyboard [keyboard_type]»
По событию Enter, передайте данные из Editbox элементу или драйверу.
Пример работы:
- Press - открывается виртуальная клавиатура смартфона (планшета)
- Enter - поле ввода отправляет текст как команду драйверу; закрывает клавиатуру; очищает поле ввода.
Чтобы удалить ранее введенные данные, запишите в поле ввода пустую строку:
RGB палитра
RGB светодиодные ленты управляются с помощью DMX контроллеров и имеют одну из конфигураций:
- Red, Green, Blue - три канала для управления цветом ленты. Уменьшение яркости достигается уменьшением яркости отдельных каналов цвета.
- Red, Green, Blue, Alpha - четыре канала для управления цветом и яркостью ленты
вариант 1 Управлять RGB лентой с помощью трех (четырех) элементов Level.
В проекте создаются 3 (4) переменные Unsigned 8-bit (Subtupe: VALUE). Переменные управляются в диапазоне 0...255, увеличение значения в канале соответствует увеличению яркости соответствующего цвета.
LEVEL
Нажатие на уровень или перемещение ползунка отправляет в управляемую переменную число, соответствующее текущему положению ползунка.
1 Создайте переменную, которую нужно регулировать. Настройте ее, как показано в инструкции
2 Создайте уровень, настройте его следующим образом (cм. все настройки):
| Type
|
Level
|
| Feedback
|
Реакция уровня на нажатия пользователя и на получение данных от оборудования
- Channel - отправляет значение и отображает обратную связь (ползунок перемещается при получении данных)
|
| Min / Max
|
Пределы регулирования уровня: определяют диапазон значений, в котором перемещается ползунок
|
| Invert Range
|
Меняет местами нижнюю и верхнюю часть уровня, т.е. регулирование от 0 до 100 будет происходить не снизу вверх (при вертикальном уровне), а сверху вниз.
|
3 Перетащите переменную на уровень, в диалоге привязки переменной укажите:
| Action
|
Send Token - отправить переменной значение Value, взятое как текущее положения ползунка уровня в диапазоне Min...Max
|
| Event for Action
|
Событие интерфейса, связанное с кнопкой. При возникновении события, в переменную будет записано указанное значение
- Press - отправить Value по нажатию
- Release - отправить Value при отпускании
- Move - отправлять все промежуточные значения Value при перемещении ползунка.
добавляйте команду Delay (100) перед командой на событии Move, чтобы меньше нагружать оборудование (с командой Delay, Move будет срабатывать не чаще, чем раз в 100 мс)
Можно использовать все три события одновременно.
|
| Add a feedback channel
|
(Create a feedback channel) Поставьте эту галочку, т.к. нужно, чтобы ползунок уровня перемещался в соответствии с актуальным состоянием переменной
|
4 Теперь переменная связана с уровнем. Посмотреть все связи можно в OBJECT PROPERTIES > Programming
вариант 2 Управлять RGB лентой с помощью палитры
В качестве палитры можно использовать любой цветной элемент - перемещая палец по элементу, вы будете отправлять оборудованию команду установки выбранного цвета.
Это требует добавления в проект специального скрипта - библиотеки RGB. Скрипт необходимо добавить только 1 раз, далее можно использовать его для управления RGB лентами любых встроенных драйверов iRidium.
2.1 Создайте палитру и вспомогательные элементы. В качестве палитры можно использовать любое цветное изображение.
- Настройте палитру как Joystick с диапазоном регулирования 0...100 по Х и Y
- Настройте неактивный элемент Button, который будет отображать выбранный на палитре цвет
- Если нужно, настройте активные кнопки Button, которые будут пошагово изменять яркость ленты
2.2 Скачайте файл RGB_Library.js
- Этот файл обеспечивает управление цветом с помощью JavaScript. Добавьте файл в проект визуализации: откройте проект в iRidium Studio, нажмите клавишу
, выберите пункт ( + ) "Add Script From File"
2.3 Создайте пустой файл скрипта: ( + ) "New Script", чтобы добавить в него описание вашей RGB палитры:
- В файле скрипта опишите палитру и элемент для отображения выбранного цвета:
///////// Copy this function to make one more RGB palette ///////
RGB_player(
"Driver", // Driver in project
"Channel Red", // Name of Red Channel
"Channel Green", // Name of Green Channel
"Channel Blue", // Name of Blue Channel
255, // Top limit for RGB channel (100 or 255)
IR.GetItem("Page 1").GetItem("Item Color Picker 1"), // Item "Color Picker"
/////// optional parameters ///////////////////////////
IR.GetItem("Page 1").GetItem("Item Display 1"), // Item "Display"
)
Расширенный вариант содержит кнопки управления яркостью:
Палитра, отображение цвета и кнопки +/- для управления яркостью
///////// Copy this function to make one more RGB palette ///////
RGB_player(
"Driver", // Driver in project
"Channel Red", // Name of Red Channel
"Channel Green", // Name of Green Channel
"Channel Blue", // Name of Blue Channel
255, // Top limit for RGB channel (100 or 255)
IR.GetItem("Page 1").GetItem("Item Color Picker 1"), // Item "Color Picker"
/////// optional parameters ////////////////////////////
IR.GetItem("Page 1").GetItem("Item Display 1"), // Item "Display"
IR.GetItem("Page 1").GetItem("Up 1"), // Item "Up"
IR.GetItem("Page 1").GetItem("Down 1"), // Item "Down"
10 // Increment step for "Up" and "Down"
)
В описании укажите где находится палитра, и какому оборудованию отправляет данные:
- IR.GetDevice("Driver") - имя драйвера, которому вы будете отправлять команды RGB. Скопируйте имя драйвера в PROJECT DEVICE PANEL
- "Channel Red", "Channel Green", "Channel Blue" - имена переменных (Commands), которые отвечают за управление красной, зеленой, и синей составляющими цвета. Скопируйте имена в PROJECT DEVICE PANEL. Имена Commands должны совпадать с именами Feedbacks, откуда приходит информация о текущем цвете RGB ленты.
HDL-Buspro, Domintell - имеют особый способ записи имен. Для них нужно указать <имя устройства в сети>:<имя канала>, например "Dimmer in Bedroom:Channel 1"
- 255 - максимальное значение яркости для каждого цвета. Для большей части оборудования яркость регулируется от 0 до 255, но есть драйверы, которые управляют яркостью цвета в диапазоне 0...100 (например, HDL). Для HDL-Buspro укажите значение 100 в этой строке настроек.
- IR.GetItem("Page 1").GetItem("Item Color Picker 1") - имя страницы ("Page 1") и элемента на ней ("Item Color Picker 1") который вы будете использовать как палитру
- IR.GetItem("Page 1").GetItem("Item Display 1") - имя страницы ("Page 1") и элемента на ней ("Item Display 1") который вы будете использовать для отображения цвета, выбранного на палитре
- IR.GetItem("Page 1").GetItem("Up 1") - имя страницы ("Page 1") и элемента на ней ("Up 1") который будет при нажатии увеличивать яркость выбранного цвета
- IR.GetItem("Page 1").GetItem("Down 1") - имя страницы ("Page 1") и элемента на ней ("Down 1") который будет при нажатии уменшать яркость выбранного цвета
- 10 - значение, на которое увеличится/уменьшится яркость выбранного цвета при нажатии кнопок Up и Down
2.3 Нажмите "ОК" чтобы сохранить описание палитры, запустите Эмулятор, чтобы проверить ее работу.
Ошибки, которые могут возникать при некорректном описании палитры, отображаются в окне лога (F4)
Отображение входящих данных
Графический элемент может отображать значение переменной, меняя свое состояние или текст:
ИЗМЕНИТЬ СОСТОЯНИЕ
1 Настройте графический элемент так, чтобы он отображал полученные значения:
Выберите в настройках General:
Feedback: Channel (если 0 = false) или
Feedback: Invert Channel (если 0 = true).
Этот тип обратной связи позволяет элементу обрабатывать данные, полученные от переменных
2 Привяжите канал (Feedback) оборудования к графическому элементу:
Перетяните канал обратной связи или переменную на элемент, в диалоге привязки выберите In Value
Для корректной работы элемент должен иметь 2 состояния. Первое состояние соответствует значению 0, второе - любому значению, отличному от нуля.
Шаблон $V, добавленный в текст элемента, позволит вывести полученное значение в текст элемента.
ОТОБРАЗИТЬ В ТЕКСТЕ
1 Привяжите канал (Feedback) оборудования к графическому элементу:
Перетяните канал обратной связи или переменную на элемент, в диалоге привязки выберите In Text
Элемент может иметь любое число состояний и настройки. Значение будет выведено в текстовые поля всех состояний элемента.
Добавьте $V, в текст элемента. Перетяните канал обратной связи или переменную на элемент, в диалоге привязки выберите In Value. Это позволит вывести полученное целое число и добавить к нему любой другой текст.
Существуют шаблоны для вывода дробных чисел и др.:
СПИСОК ШАБЛОНОВ
| Шаблон |
Назначение
|
| $V |
целая часть полученного значения
|
| $F1 ... $F5 |
значение с плавающей точкой. От 1 до 5 - это число знаков после точки
|
| $F,1 ... $F,5 |
значение с плавающей запятой. От 1 до 5 - это число знаков после запятой
|
| $S |
номер выбранного состояния
|
| $X |
значение в формате HEX
|
| $$ |
символ "доллар"
|
| $P |
(только уровни) процент от максимального значения Уровня
|
| $H |
(только уровни) максимальное значение Уровня
|
| $A |
(только уровни) текущее значение минус минимальное значение Уровня
|
| $L |
(только уровни) минимальное значение Уровня
|
| $R |
(только уровни) размах Уровня: максимальное минус минимальное
|
Шаблон вносится в текстовое поле графического элемента и может быть совмещен с другим текстом и символами (комментариями, единицами измерения)
График изменения переменной (тренд)
Графический элемент Linear Trend (Линейный График) используется для построения графика изменения переменной во времени.
График можно строить в реальном времени, получая информацию о переменной прямо от оборудования автоматизации. Также можно использовать исторические данные совместно с текущими значениями переменной. Исторические данные могут храниться только на iRidium Server.
Чтобы сохранить историю изменения, настройте сохранение переменной в базу данных сервера. Настройка производится в серверном проекте. Когда переменная сохранена в базу, график ее изменения можно запросить из приложения i3 pro. График объединит исторические и актуальные данные в зависимости от настроек графического элемента Linear Trend.
Настройка отображения графика производится в проекте для панели управления.
1 Создайте переменную, которую нужно отображать на графике. Настройте сохранение переменной в базу данных в проекте iRidium Server.
Формат сохранения данных (Signed 32-bit, Float 64-bit) зависит от размерности переменной. Для сохранения дробных значений всегда используйте Float 64-bit.
Сохранять переменную можно с выбранной периодичностью (Interval) или при изменении ее больше, чем на указанное значение (Deadband).
2 Создайте графический элемент, выберите Type: Linear Trend. Перетяните на элемент один или несколько каналов обратной связи, график изменения которых вы хотите отображать:
3 Перейдите к настройкам графика и опишите его вешний вид:
- Trend - основные параметры графика: работа с базой данных, временной размах, основная кривая
- Range - временной интервал графика (по оси X). При загрузке из базы данных, покажет информацию за указанное время
- Main Curve - выберите основную переменную на графике (будет выделена ярче остальных)
- Background, Data View, Border - оформление цветовой схемы графика, см. пример
- Cursor - в разработке
- General - основные настройки оси времени (ось Х)
- Visible Axis X - отображать ось времени
- Position: Top - шкала времени сверху, Down - снизу
- Line - настройки шкалы времени
Major - настройки оси и разметки (шкалы)
Minor - настройки дополнительной разметки (шкалы)
- Visible - отображать ось Х
- Color - цвет оси и разметки
- Depth - толщина линии
- Interval - временной интервал на шкале времени
- Serif - размер засечки на шкале
- Count - количество дополнительных засечек на шкале
- Label - подпись шкалы времени (формат отображения, шрифт, цвет подписи, отступ от оси)
- Text - подпись оси времени (текст, шрифт, цвет подписи)
- General - основные настройки оси значений (ось Y)
- Visible Axis Y - отображать ось значений
- Position: Left - шкала значений слева, Right - справа
- Range - диапазон значений на оси (от минимума к максимуму)
- Auto scale - ось автоматически подстраивается под значения, приходящие из базы
- Min/Max - минимальное/максимальное значение оси
Остальные настройки аналогичны оси Х.
- Список каналов - переменные, отображенные на графике, и их индивидуальные настройки (Genral, Axis X, Axis Y)
- Индивидуальные настройки кривых для нескольких каналов' - тип отображения, цвет и толщина каждой кривой на графике
- Color - цвет кривой
- Type - тип отображения кривой:
- Dotted line - кривая строится в виде отдельных точек
- Line - кривая строится в виде сплошной линии
- Square line - кривая строится в виде блоков
- Depth - толщина линии
- Setup Axis X and Y - включить индивидуальные настройки осей для данной кривой (если отключено, будут отображаться главные оси графика)
- Tag - полное имя тега, указывает на драйвер и переменную сервера, от которой приходят данные. Позволяет управлять переменной через JavaScript
- Axis X, Axis Y - индивидуальные настройки осей графика (аналогичны настройкам главных осей графика)
Примеры графиков:
Управление отображением трендов с помощью скрипта