Перейти к основному содержимому
  • iRidi Studio 2019
  • Драйверы для профессиональных систем

Драйверы для профессиональных систем или iRidi Server

Драйвер - это подпрограмма внутри i3 pro или iRidi Server, которая обеспечивает взаимодействие с устройствами и системами по IP-сети или через физический интерфейс

Здесь мы рассмотрим, как i3 pro взаимодействует с устройствами и системами для управления и получения данных, а также роль iRidi Server в этом процессе.

Принцип взаимодействия i3 pro и iRidi Server с оборудованием

Оборудование, система управления, сервис - это любой внешний ресурс , с которым должен взаимодействовать iRidi (i3 pro, iRidi Server) для отправки и получения информации.

Под взаимодействием подразумевается пересылка информации:

  1. из i3 pro к оборудованию – напрямую
  2. из i3 pro к iRidi Server, а из iRidi Server – к оборудованию

Studio2019_Drivers_BasicsOfCommunication.png

Чаще всего стоит также задача получения ответной информации – от оборудования.

i3 pro может работать на ПК, смартфонах и планшетах. iRidi Server может работать на ПК или физическом контроллере. ПК и контроллер может быть снабжен не только сетевым, но и физическими интерфейсами (RS232 и др.) для передачи данных.

i3 pro / iRidi Server могут связаться с внешним ресурсом, который поддерживает такой же способ передачи данных, как сам i3 pro / iRidi Server. Таким образом, приложение i3 pro, запущенное на iPhone, не сможет отправить ИК-команду на телевизор или подключиться к контроллеру, у которого есть только RS232 интерфейс.

Эту проблему обычно можно решить используя iRidi Server, но иногда требуются дополнительные устройства-преобразователи , которые конвертируют данные, полученные по IP-сети, в инфракрасные сигналы; или передают их из IP-сети в RS232. К таким преобразователям относится Global Cache.

Драйверы в iRidi Pro

Драйвер – это подпрограмма внутри i3 pro или iRidi Server, которая обеспечивает взаимодействие с внешними ресурсами (устройствами, сервисами). В зависимости от среды передачи, данные имеют разный формат и систему адресации, и драйвер отвечает за формирование и адресацию пакетов информации, а также за обработку входящей информации.

Драйвер реализует протокол передачи данных - набор соглашений, которые определяют обмен данными между программами. Эти соглашения задают общий способ передачи сообщений и обработки данных при взаимодействии программного обеспечения разнесённой в пространстве аппаратуры, соединённой тем или иным интерфейсом.

Например, драйвер "KNX Router (KNXnet/IP) / Serial (UMC)" в iRidi реализует протокол KNXnet/IP, который может работать в IP-сети или через последовательный порт RS232. Вы добавляете в i3 pro или в iRidi Server драйвер, и выбираете интерфейс, через который он будет работать.

Драйвер может работать как в i3 pro, так и в iRidi Server, если устройство, где будет работать драйвер, оснащено интерфейсом передачи данных, который необходим для работы драйвера.

Размещение драйверов на iRidi Server

Если драйверы размещены на iRidi Server, то i3 pro взаимодействует с устройствами через сервер. Связь "клиент-сервер" осуществляется по защищенному протоколу iRidi, а связь "сервер-устройство" – по протоколу устройства.

Для ряда систем автоматизации связь через сервер предпочтительна, т.к. не все системы поддерживают несколько подключений одновременно, и сервер решает эту проблему, раздавая данные всем клиентам-интерфейсам.

Сервер позволяет не актуализировать состояние фидбеков оборудования при каждом включении i3 pro, т.к. iRidi Server запущен постоянно и имеет актуальные данные о состоянии системы.

Также важна функция связи с сервером через интернет при помощи режима "Cloud Gate" (безопасное удаленное соединение без настройки портов или VPN, подобие динамического DNS).

У iRidi Server есть драйвер Virtual , который не подключается к реальным устройствам, а служит для обмена данными между iRidi Server и i3 pro. Для i3 pro подключение к iRidi Server и переменные Virtual выглядят так же, как команды и фидбеки других драйверов, но переменные Virtual обслуживает только iRidi Server в рамках логики, заложенной разработчиком.

Связь iRidi Server и i3 pro можно настроить, создав Master project, или синхронизацией проектов iRidi Server и i3 pro.

примечание

Текущее состояние драйвера, а также данные, записанные в его фидбеки, доступны в веб-интерфейсе сервера.

Добавить драйвер

Драйвер можно добавить в интерфейс i3 pro или на iRidi Server:

  • импортом файла конфигурации вашего оборудования, сканированием локальной сети. Поддерживаются (актуальный список см. в iRidi Studio):

    • DuoTecno – сканирование сети
    • HDL-BUS Pro – сканирование сети
    • KNX (ETS, *.knxproj) – импорт файла, формирует список IP интерфейсов и групповых адресов
    • Modbus (*.csv) – импорт файла во внутреннем формате iRidi, см. документацию для Modbus. Формирует список регистров
    • Crestron (Simpl, *.smw) – импорт файла, формирует список джоинов
    • iRidi JavaScript (iRidi Studio, *.js) – импорт файла, позволяет добавить скрипты из одного проекта в другой
    • iRidi project (iRidi Studio, *.irpz, *.sirpz) – импорт файла, позволяет добавить драйверы из одного проекта в другой
    • Domintell - сканирование сети
    • Velbus - сканирование сети
    • AMX (TPDesign, *.TP4, *.TP5) – не отображается в импорте драйверов, но проект TP4 можно открыть в студии так же, как *.irpz - файл *.TP4 будет автоматически конвертирован в формат i3 pro
  • из базы данных , где хранится список драйверов разного типа, которые можно использовать в проекте. Команды и фидбеки необходимо будет формировать вручную

  • создать через JavaScript . В таком случае он не будет отображаться в дереве драйверов, но будет работать при запуске i3 pro, способом, который определил разработчик. См. JS API

  • добавить модуль-виджет из библиотеки Modules . Modules – это библиотека готовых модулей приложения i3 lite (модуль – это набор из драйвера и готового интерфейса к нему). Внешний вид модулей нельзя менять, зато они не требуют тонкой настройки и работают как есть, "из коробки", сразу после добавления и настройки.

Studio2019_SidePanel_Drivers.png

добавить драйвер в интерфейс для i3 pro

Studio2019_SidePanel_Drivers_onServer.png

добавить драйвер в конфигурацию для iRidi Server

Настройки драйвера, команды и фидбеки

примечание

В зависимости от реализуемого протокола, настройки драйверов, параметры команд и фидбеков – различны. Информацию по интересующему вас драйверу см. в разделе с описанием вашего драйвера.

Основные характеристики драйвера:

Driver1.png

  1. Driver type (тип), указывающий, какой протокол реализует драйвер;
  2. Protocol (транспорт), указывающий, каким способом будут передаваться данные (TCP, UDP, RS232, ...);
  3. Local Connection (подключение) – группа параметров адресации данных, необходимых, чтобы информация дошла до конкретного адресата многопользовательской сети (например, в IP-сети обязательными и основными параметрами будут IP-адрес и порт подключения);
  4. Keep Alive (для TCP драйверов) - интервал проверки TCP соединения. В случае отсутствия ответа на запрос Keep Alive, драйвер будет принудительно переведён в состояние отключен. Параметр сделан для корректного отображения онлайн-статуса при экстренном\неправильном отключении клиента. 0 - отключение настройки;
  5. Tags (теги) - название, предназначенное для поиска драйвера или группы драйверов через поисковую строку.

Содержимое драйвера – это набор адресов-команд, куда можно записывать значения для отправки оборудованию, и набор адресов-фидбеков, куда драйвер будет сохранять значения, полученные от оборудования. В зависимости от протокола, драйверы имеют различную систему адресации, и настроенные команды и фидбеки позволяют удобно взаимодействовать с адресами оборудования:

Driver2.png

  1. Commands (команды) – список переменных устройства, которым нужно отправлять команды. Например, чтобы управлять реле KNX с адресом "1/0/1", нужно записать значение 0 или 1 в команду драйвера KNX с этим адресом.
  2. Feedbacks (фидбеки) – список переменных для сортировки и хранения полученных от оборудования данных. Например, реле KNX вернет значение 0 или 1 при переключении; в драйвере это значение будет доступно как фидбек с адресом "1/0/1". Значение можно отобразить в интерфейсе.
  3. Tokens (токены драйвера) – это фидбеки, которые сообщают статус соединения драйвера с устройством и важную информацию о параметрах соединения (адрес, порт подключения и др.)

Подробную инструкцию по настройке конкретного драйвера можно найти по этой ссылке.

Инструменты для создания собственных драйверов

Драйвер в iRidi реализует протокол (правила) обмена данными с оборудованием на базе транспорта – конкретного способа передачи данных (TCP, UDP, RS232, ...).

Но, если для вашей системы еще нет готовой реализации протокола, вы можете ее сделать самостоятельно. Для этого вам нужен драйвер, который реализует только транспортную часть процесса обмена данными, а протокольную часть (формирование запросов и обработку ответов) вы формируете сами, при помощи JavaScript.

См. подробности о работе с драйверами-транспортами – AV & Custom Systems :

Управление оборудованием

SendRecieve.png

Для управления оборудованием настройте команды (Commands) и каналы обратной связи (Feedbacks). Чтобы отправить команду, перетяните ее на графический элемент и укажите значение (Value), которое необходимо отправить. Чтобы отобразить значение с канала обратной связи, перетащите Feedback на графический элемент, и укажите, каким образом вывести значение (Value).

Devices%2BProgramming.png

Также, для привязки команд и каналов обратной связи можно выделить графический элемент и перетянуть команду или фидбэк на соответствующую вкладку окна Programming. Команду перетягиваем на вкладу - Press, Release, Hold или End of hold, а фидбэк на вкладку Relations.

Подробнее о работе с графическими элементами написано в статье "Типы графических элементов".

Просмотр связей c графическими элементами

Есть несколько способов узнать с какими графическими элементами связаны команды и фидбэки:

  1. Окно Used items. В этом окне отображаются все связи выбранной команды или фидбэка с графическими элементами. Для перехода к этому окну нажмите ПКМ по команде / фидбэку и выберите из доступных опций "Show Usage".
  2. Вкладка Programming . На этой вкладке отображаются все связи выделенного графического элемента (подробнее здесь).
  3. Выделение связей на вкладке Devices . При нажатии на графический элемент - в окне устройств (Drivers) выделяются другим цветом связанные с элементом команды и фидбэки. Если нажать на страницу или попап, на котором расположены графические элементы, то на вкладке "Devices" будут выделены другим цветом все команды и фидбэки, которые связаны с графическими элементами, расположенными на этой странице / попапе.

Relation.png