Dynamic Driver: драйверы устройств
Dynamic Driver — часть U-Logic (редактор программы управления), через которую программа управляет оборудованием зала: матрицами, звуковыми процессорами, кодеками, камерами, проекторами. Программа не отправляет устройству байты сама. Она называет команду по имени («подать вход 2 на выход 1»), а драйвер переводит её на язык конкретного устройства и разбирает его ответы.
Раздел нужен двум читателям:
интегратору, который собирает программу зала из готовых драйверов: как подключить устройство, отправить команду и получить ответ;
разработчику драйвера, у которого для устройства драйвера ещё нет: как написать драйвер в редакторе или с помощью ИИ.
Как это устроено
Как эта часть связана с остальной системой — на странице «Как устроена система».
flowchart LR
P["Программа<br/>(кнопка панели, сценарий)"] -->|команда и параметры| C["device - command"]
C --> D["Подключение<br/>Device Connection:<br/>драйвер + транспорт"]
D -->|байты или запрос| U["Устройство"]
U -->|ответ| D
D -->|распознанный ответ| L["device - response - listener"]
L --> V["Программа<br/>(вид на панели)"]
Драйвер — описание протокола устройства: какие у него команды, какие параметры они принимают и как понимать ответы. Драйверы хранятся на контроллере, их создают и правят в редакторе драйверов.
Подключение (узел-конфигурация Device Connection) соединяет драйвер с конкретным устройством. Это выбранный драйвер плюс транспорт (способ связи с устройством: TCP, UDP, HTTP, Telnet, SSH, RS-232 и другие), адрес и порт.
device - commandотправляет через подключение команду драйвера с параметрами.device - response - listenerпринимает разобранные драйвером ответы и раскладывает их по выходам (например, чтобы показать на панели, какой вход сейчас на экране).
Окна всех этих узлов описаны на странице «Узлы Dynamic Driver».
С чего начать
Задача |
Куда идти |
|---|---|
Драйвер для устройства уже есть — подключить устройство и управлять им из программы |
«Узлы Dynamic Driver», раздел «По шагам»; затем «Команды устройствам и ответы» |
Добавить готовый драйвер, посмотреть или изменить его код |
|
Проверить связь с устройством до написания драйвера |
«Узлы Dynamic Driver», раздел «Тестовые узлы» |
Написать драйвер с помощью ИИ по документации протокола |
|
Написать драйвер самому |
«Как написать драйвер», «Ответы устройства», «Расширенные возможности», «Примеры драйверов» |
Найти в разделе
Ищете |
Где |
|---|---|
Подключить устройство: Device Connection, выбор драйвера и транспорта |
|
Транспорт TCP, UDP, HTTP, Telnet, SSH, RS232, IR, WebSocket |
|
Отправить команду из потока, |
|
Принять ответ устройства в потоке |
|
Проверить связь с устройством без драйвера |
|
Из чего состоит драйвер: |
|
Разбор ответов: |
|
Вход на устройство: auth-gate (AuthGate), |
|
Драйвер отправляет команду сам: |
|
Периодический опрос: |
|
HTTP- и веб-API-драйверы |
|
Двоичные протоколы, контрольные суммы |
|
Несколько устройств на одном подключении |
|
Таймеры и сокеты драйвера: |
|
Память U-Logic (контекст) в драйвере и в окнах подключения |
|
Параметры подключения изменились во время работы |
|
Добавить, изменить, удалить драйвер; скачать и загрузить проект |
|
Готовые драйверы для образца |
Учебный проект «Демо-зал» уже содержит драйверы четырёх устройств и подключения к ним. Начните знакомство с него: «Программа «Демо-зал»: обзор».