Как устроена система
Система управления залом на контроллере UVATRON состоит из нескольких частей. Одни рисуют интерфейс, другие запускают программу, третьи разговаривают с устройствами зала. Страница показывает все части на одной схеме и объясняет, как по ним проходит одно нажатие кнопки.
Схема
flowchart LR
subgraph CTRL["Контроллер UVATRON"]
SET["Страница настроек<br/>(Панель управления)"]
UID["UI-Designer<br/>(редактор интерфейсов)"]
UIP["UI-Panel<br/>(интерфейс для оператора)"]
subgraph UL["U-Logic (программа управления)"]
PRG["Программа<br/>(вкладки, узлы, Скриптер)"]
subgraph DD["Dynamic Driver"]
CONN["Подключение<br/>драйвер + транспорт"]
end
end
end
TOUCH["Панель UV4PRO-T10,<br/>планшет, компьютер"]
DEV["Устройства зала"]
SET -->|включает и открывает| UID
SET -->|открывает| UIP
SET -->|открывает| UL
UID -->|публикует интерфейс| UIP
TOUCH <-->|нажатия и вид| UIP
UIP <-->|интерфейсы, события и вид| PRG
PRG -->|команда| CONN
CONN -->|ответ| PRG
CONN <-->|TCP, UDP, HTTP, RS232 и другие| DEV
Части системы
Контроллер UVATRON — устройство, на котором работают страница настроек, UI-Designer, UI-Panel и U-Logic. К нему подключают компьютер, панели и устройства зала. С контроллером работает интегратор при настройке и оператор при управлении. Как включить и подключить контроллер — «Начало работы».
Сенсорная панель UV4PRO-T10 — экран, на котором оператор работает с интерфейсом. Страницу, которую показывает её собственный экран, задают в разделе «Стартовая страница киоска» страницы настроек панели. Работает с панелью интегратор. Подробно — «Начало работы» (раздел о настройках) и «Доступ к интерфейсам».
Страница настроек — «Панель управления» контроллера (адрес https://<IP>:8443). Через неё вход в остальные части: из раздела «Открыть» запускают UI-Designer, U-Logic и UI-Panel. Здесь меняют пароль, сеть, дату и время, включают режим HTTPS, загружают и скачивают проект интерфейсов. UI-Designer по умолчанию выключен: его включают в разделе «Операции». Работает со страницей интегратор. Подробно — «Начало работы».
UI-Designer — редактор интерфейсов. В нём рисуют страницы с кнопками, подписями, ползунками и списками. Сам интерфейс умеет немногое: переходить по ссылкам между страницами и подсвечивать нажатую кнопку в группе. Остальное делает программа. Связывает их имя элемента: это его ID, по нему программа находит элемент. Работает с UI-Designer интегратор. Подробно — «UI-Designer» и «Первый интерфейс».
UI-Panel — страница, на которой оператор работает с интерфейсом: на панели, планшете или компьютере. Она показывает опубликованные интерфейсы и передаёт программе нажатия. Опубликованный интерфейс панелям передаёт программа через узел UI - Panel in. Работает с UI-Panel оператор; интегратор проверяет по ней свою работу. Доступ к ней можно ограничить паролем и пропусками. Подробно — «UI-Panel» и «Доступ к интерфейсам».
U-Logic — редактор программы управления. Программа собирается на вкладках (рабочих листах) из узлов: блоков, которые соединяют в цепочки. Узел принимает событие с панели, готовит команду, отправляет её устройству, принимает ответ и меняет вид на панели. Для тех, кто программирует, есть Скриптер: логика кодом. Работает с U-Logic интегратор. Подробно — «Связь интерфейса с программой», «Узлы U-Logic», «Скриптер: логика кодом».
Dynamic Driver — часть U-Logic, через которую программа управляет устройствами. Программа называет команду по имени, а драйвер переводит её на язык устройства и разбирает его ответы. Драйвер — описание протокола устройства: команды, их параметры и разбор ответов. Подключение (Device Connection) — драйвер плюс транспорт к одному конкретному устройству. Транспорт — способ связи с устройством: TCP, UDP, HTTP, Telnet, SSH, RS232 и другие. Драйверы готовые или свои: с ними работают интегратор и разработчик драйвера. Подробно — «Dynamic Driver», «Узлы Dynamic Driver», «Редактор драйверов».
Устройства зала — то, чем управляет система: матрицы, звуковые процессоры, кодеки, камеры, проекторы. Чтобы программа управляла устройством, нужны драйвер и подключение. Как подключить устройство — раздел «По шагам» страницы «Узлы Dynamic Driver».
Путь одного нажатия
Нажатие кнопки идёт вперёд до устройства, а ответ устройства возвращается на панель. Схема этих узлов — в разделе «Общая схема» страницы «Связь интерфейса с программой», схема подключения — в разделе «Как это устроено» страницы «Dynamic Driver».
Вперёд:
Оператор нажимает кнопку на панели. UI-Panel передаёт событие в программу.
Узел
UI - Panel inпринимает событие, узелui - switchраскладывает события по выходам по правилам: «эта кнопка — сюда, этот ползунок — туда».Узел
changeготовит команду: берёт из события имя элемента и значение.Узел
device - commandотправляет команду через подключение. Драйвер переводит её на язык устройства, транспорт передаёт.Устройство выполняет команду.
Назад:
Устройство отвечает. Драйвер разбирает ответ.
Узел
device - response - listenerпринимает разобранный ответ и выдаёт его на выход, назначенный этому ответу.Узлы
switchиchangeвыбирают путь и готовят значение для панели.Узел
api - helper - 2меняет вид элемента (текст, цвет, состояние кнопки, значение ползунка, строки списка), узелinterlock - 2подсвечивает одну кнопку из группы. УзелUI - Panel outотправляет результат на панель.На панели меняются подпись или подсветка.
Кнопка подсвечивается по ответу устройства, а не по нажатию: так на панели видно то, что действительно произошло. Нужна только команда или только смена надписи — путь короче, схема показывает порядок, а не обязательный набор узлов.
Пример в работе — «Первая программа по шагам». Отдельно про каждую часть пути: приём события — «Приём событий», команда и ответ — «Команды устройствам и ответы», вид на панели — «Изменение вида на панели».
Два проекта
На контроллере хранятся два проекта, и загружаются они в разных местах:
Проект |
Что внутри |
Где загрузить и скачать |
|---|---|---|
Интерфейсы |
всё, что нарисовано в UI-Designer: интерфейсы, страницы, кнопки |
страница настроек → значок папки «Работа с файлами» |
Программа |
все вкладки U-Logic и все драйверы |
U-Logic → меню справа сверху → «Вид» → «Редактор драйверов» |
Это два разных архива: проект программы не содержит интерфейсов, а проект интерфейсов не содержит программы. Чтобы перенести зал на другой контроллер целиком, скачайте и загрузите оба. Сначала загружайте интерфейсы, потом программу: программа находит кнопки и надписи по именам. «Загрузить проект» заменяет проект целиком, поэтому сначала скачайте копию своего.
Подробно — «Проекты: загрузить и скачать». Учебный проект, на котором всё это можно пройти, — «Первый проект по шагам». Порядок изучения частей — «Учебный путь».