Перейти к основному содержимому
  • iRidium studio 2019
  • Инструменты управления и логики для i3 pro и iRidium server

Инструменты управления и логики

Управление оборудованием и логика доступны как для i3 pro, так и для iRidium server, т.к. оба приложения могут напрямую связываться с оборудованием, но iRidium server имеет инструменты, недоступные в i3 pro.

К инструментам управления и логики относятся:

  • DRIVERS . Список устройств и сервисов, к которым подключается i3 pro или iRidium server для управления и получения данных (здесь могут отражаться не все устройства, т.к. возможно создание устройств через JavaScript)

  • PROGRAMMING (только для i3 pro). Действия, которые выполняет графический объект в i3 pro при нажатии на него. Элементы могут управлять как внутренней логикой интерфейса визуализации, так и отправлять/отображать данные, полученные от оборудования

  • JS . JavaScript редактор, доступен для i3 pro или iRidium server. При разработке скриптов важно учитывать окружение - сервер или интерфейс визуализации, т.к. окружение определяет набор доступных методов и доступные способы обращения к данным.

  • PROJECT TOKENS . Переменные, в которых можно хранить пользовательские данные между запусками i3 pro или iRidium server.

  • SYSTEM TOKENS . Переменные, которые позволяют получить информацию об устройстве, на котором запущен i3 pro или iRidium server (время, тип ОС, параметры сети, экрана и др.)

  • SCHEDULERS (только для iRidium server). Расписание событий, у которых можно настроить время срабатывания и периодичность повторения

  • ROUTINES (только для iRidium server). Сценарии (последовательности команд и условия их запуска), которые можно запускать по расписанию

  • GC CLOUD . Онлайн-база инфракрасных команд для управления аудио-видео оборудованием по ИК. Команды хранятся в формате для оборудования Global Cache

  • iRidi IR Base — база ИК-команд для AV оборудования iRidi.

  • ETS import . Импорт групповых адресов из проекта ETS5 (*.knxproj).

DRIVERS. Устройства и сервисы

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

Читайте описание работы драйверов.

Драйвер можно создать:

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

Studio2019_SidePanel_Drivers_onServer.png

PROGRAMMING. Действия при нажатии

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

Studio2019_SidePanel_Programming_drivers.png

Команды редактора макросов для взаимодействия с драйверами и переменными проекта:

  • Send To Driver (отправка значений в команды драйверов)
    • Send Number. Отправить константу - десятичное число (DEC)
    • Send Text. Отправить константу - строку данных (ASCII)
    • Send Data. Отправить константу - бинарные данные (BIN)
    • Send Token. Отправить данные, извлеченные из переменных проекта (Value, координаты, размеры и т.д. – переменные значения, определяемые свойствами объекта)
  • Send To Token (отправка данных в переменные - свойства элементов, драйверы, токены проекта)
    • Send Number. Записать константу (число DEC) в переменную
    • Send Text. Записать константу (строку ASCII) в переменную
    • Send Token. Записать переменную в переменную (например, свойство элемента в токен проекта)

Чтобы отправлять команду при нажатии на элемент, перетащите команду драйвера/токен на этот элемент. Чтобы отображать фидбек драйвера на элементе, перетащите фидбек драйвера/токен на этот элемент.

Studio2019_SidePanel_Drivers_add_command.png

Studio2019_SidePanel_Drivers_add_relation.png

Также, связать команду / фидбэк драйвера / токен с графическим элементом можно перетягиванием в окно PROGRAMMING. Для это необходимо:

  • Создать графический элемент (например, кнопка);
  • Выделить необходимый графический элемент курсором;
  • Перетянуть команду / фидбэк / токен в окно PROGRAMMING на нужную вкладку:
    • Relations - присваивание элементу значения токена / фидбэка драйвера;
    • Press - отправка команд в момент прикосновения к кнопке;
    • Release - отправка команд в момент отпускания кнопки;
    • Hold - циклическая отправка команд, пока элемент удерживают;
    • End Of Hold - однократная отправка команд при отпускании кнопки, если её до этого удерживали;
    • Move - отправка команд при перемещении ползунка или джойстика;
    • Select - выбор пункта и подпункта в элементе List (скриптовый список). Доступ через List API;
    • Enter - нажатие клавиши Enter в элементе Edit Box;
    • Gestures - жесты (свайпы). Жест обрабатывает только страница (нельзя настроить жест для окна или области на элементе). Жест может начаться на самой странице, графическом элементе или в окне, но будет передан родительской странице - сработают команды, настроенные для страницы. Исключение: элементы Level, Joystic, List и Static List, которые обрабатывают событие Move вместо жестов.

Programming5.png

Cм. подробно об отправке команд и отображении данных

Cм. подробно о событиях Press, Release и др. в PROGRAMMING

Адаптивный режим программинга

Режим Adaptation of "Programming" tab можно включить в окне Настройки Studio

Studio2019_Adaptation_of_Programming01.png

Внешний вид вкладки в адаптивном режиме

При включении режима Adaptation of "Programming" tab, окно программинг принимает новые свойства:

  1. Появляются цветовые маркеры:

Studio2019_Adaptation_of_Programming02.png

  • Канал управления драйвера - голубой
  • Канал обратной связи драйвера - зеленый
  • Графическое свойство - желтый
  • Токены, системные токены, остальные команды - белый
  • Функция из скрипта - оранжевый
  1. Изменяется формат записи информации в строке

Studio2019_Adaptation_of_Programming03.png

  • Уходят указатели на категорию объекта в тегах: UI, Driver, Token, Tag, Command
  • Связи отображаются в последовательности: Источник > Приёмник.
  • Мелким шрифтом под именем невыделенных элементов, КУ, КОС и тегов указана дополнительная информация:
    • у КУ и КОС - имя драйвера или имя нетворка и подустройтва (HDL Buspro Network)
    • у элементов - полный путь к нему (Popup 1.Item 3.State 2),
    • у выделенных элементов с указанием свойства одного из состояний - состояние элемента (State 1 / State 2)
    • у токенов - тип (Tokens / System / HDL Buspro Network).
  • Убраны из макросов указание на объект и действие:
  • значение из объекта
  • текст
  • число
  • данные
  • звук

Studio2019_Adaptation_of_Programming04.png

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

Studio2019_Adaptation_of_Programming05.png

  1. В связи с другим графическим элементом - рядом отображается иконка этого элемента

  2. По наведению курсором мыши на строку макроса / связи - появляется подсказка с полным именем и расположением объекта.

Studio2019_Adaptation_of_Programming06.png

JS. Программирование на JavaScript (iRidium script)

Использование скриптов доступно для i3 pro и iRidium server. JavaScript позволяет программировать логику интерфейса и управления оборудованием. Ядро: ECMAScript 3, методы более современных редакций - недоступны.

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

Для многих задач, которые решаются только скриптами, есть готовые решения, которые вы сможете использовать не имея навыков программирования .

Editor_window_JS_Editor.png
JSnew.pngновый файл скрипта:
создать файл скрипта открыть файл скрипта (*.js)
JSdel.pngудалить выбранный в списке файл скрипта
JSupdown.pngпереместить вверх/переместить вниз
JSpass.pngустановить пароль на просмотр и редактирование файла скрипта (для вступления пароля в силу, необходимо сохранение и повторное открытие проекта)
JSapply.pngприменить внесенные в скрипт изменения
JSsavefile.pngсохранить в файл *.js
JSExternal_editor.pngоткрыть во внешнем редакторе* зашифрованные скрипты нельзя открыть во внешнем редакторе
JSundoredo.pngотменить/вернуть изменение
JSColor.pngВставить значение цвета в редакторе
JShelp.pngпоказать/скрыть справку по методам и событиям IR.
JSserch.pngпоиск по слову или строке (Ctrl+F)
JS_enable.pngвключение скрипта в работе клиента
JS_disable.pngвыключение скрипта в работе клиента (отключенные скрипты помечены серой иконкой)
Enter_pass.pngввод пароля
Set_pass.pngсброс пароля (для удаления оставьте поле "Set new password" пустым)

Скрипты - это мощный инструмент формирования логики. Чтобы начать работу со скриптами:

Пройдите обучение
в Академии iRidium на курсах по iRidium script
Используйте руководство
по JavaScript в iRidium
Используйте справочник
методов, свойств и событий i3 pro и iRidium server

PROJECT TOKENS. Токены проекта

Токены проекта - это переменные для хранения пользовательских данных, которые используются многократно. В токен можно записать число или стоку , и это значение сохранится между запусками i3 pro или iRidium server.

Например, токен можно использовать для хранения паролей, настроек и др. значений, которые пользователь меняет в процессе работы, и их необходимо запомнить в пределах сессии и между запусками.

Studio2019_SidePanel_ProjectTokens.png

В настройках токена можно задать значение, которое он будет содержать при первом запуске - по умолчанию.

В настройках проекта выберите параметр Remember the state of project tokens , если необходимо запоминать предыдущие значения при каждом запуске приложения. В ином случае, при каждом запуске проекта будут отображаться значения, указанные по умолчанию (Default value).

PToken.png

SYSTEM TOKENS. Токены системы

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

Studio2019_SidePanel_SystemTokens.png

Обращение к токенам системы из JavaScript >>

Токены системы, которыми можно управлять, а не только считывать:

  • Update . Обновление проектов через iRidium transfer (локальное): 0 - выключено, 1 - включено.

  • Display.Bright . Яроксть экрана от 0 до 100%.

  • Device.Vibro . Запуск короткой вибрации. Нужно записать в токен значение в секундах - длину вибрации. Для iOS - всегда 1, другие значения недоступны.

  • Screensaver.Enable . Управление работой скринсейвера. 0 - отключить, 60000 - включить через 1 минуту простоя (значение указывается в мс). В настройках проекта нужно заранее выбрать страницу - скринсейвер.

  • Screensaver.Show . Управление демонстрацией скринсейвера: 0 - скрыть, 1 - показать.

  • Application. Clear Project Tokens . Сброс всех значений токенов проекта до значений по умолчанию. Для активации токена отправьте в него любое значение (1...n).Если у токена проекта нет значения по умолчанию, то токен не очистится.

SCHEDULERS. Расписание событий

Расписание событий доступно только на iRidium server . Оно содержит набор событий, которые могут срабатывать в указанное время, однократно или с периодичностью от 1 дня до нескольких лет.

Каждое событие имеет начало и конец, выполнять действия можно как в момент начала события, так и при его окончании. Действия, которые будут выполнены, настраиваются во вкладке ROUTINES.

Studio2019_SidePanel_Schedulers.png

Настройте астротаймер , чтобы использовать события Восход и Закат солнца: в настройках проекта (Settings > Location) укажите широту и долготу локации, где будет работать iRidium server.

Studio2019_SidePanel_Schedulers_Location.png

i3 pro может управлять расписаниями , запущенными на iRidium server. На данный момент управление осуществляется с помощью 2-х типов расписаний: Advanced и Simple.

Advanced - продвинутые (основные) расписания. С помощью продвинутых расписаний можно предварительно задать в студии время и дни начала и окончания события, а также период повторения события. Продвинутые расписания так же работают с элементом TimeTable.

Simple - упрощенные расписания. Упрощенные расписания имеют меньше параметров настроек, но дают возможность работать с редактируемыми сценариями из запущенного панельного проекта.

  • В упрощенных расписаниях возможно настроить только дату и время начала события. Для того, чтобы привязать действие к концу события, необходимо создать отдельное событие (Event).
  • Подробное описание настройки редактируемых сценариев описано здесь.

Инструкция: настройка и использование расписаний >>>

ROUTINES. Сценарии

Сценарии доступны только на iRidium server . Routine - это сценарий, описанный в THEN , который будет выполнен по событию WHEN , но только если выполняются условия, указанные в BUT ONLY IF .

Типы событий для выполнения расписаний (WHEN):

  • получение значения от оборудования: значение сравнивается на равенство с указанным в условии
  • срабатывание события SCHEDULER - сценарий выполняется в момент начала или завершения события расписания

Studio2019_SidePanel_Routines.png

Инструкция: настройка и использование сценариев >>>

GC CLOUD. ИК-команды для Global Cache

GC CLOUD - это большая, постоянно растущая онлайн-база инфракрасных команд для управления аудио-видео оборудованием по ИК. Команды хранятся в формате для оборудования Global Cache. Поэтому, если вы используете конвертеры IP2IR от компании Global Cache (iTach, GC-100-06, GC-100-12), то можете использовать команды из базы, вместо того, чтобы искать и настраивать их самостоятельно.

Для корректной работы команд, используйте специализированный драйвер для Global Cache из базы данных iRidium, и обязательно укажите модель устройства Global Cache в настройках драйвера:

Studio2019_GCCloud_AddDevice.png

После настройки драйвера, на его ИК выходы (IR Output) можно перетаскивать ИК команды из базы GC CLOUD, папками, или по одной. Ввадите первую букву названия производителя в списке Brands, чтобы быстро переместиться по алфавитному указателю, и выберите наиболее подходящий комплект команд в Device type и Model:

Studio2019_GCCloud_Base.png

iRidi IR Base. ИК-команды для AV

iRidi IR Base — это большая онлайн-база инфракрасных команд для управления аудио-видео техникой. Команды хранятся в формате Pronto Hex, используемом оборудованием AV-систем iRidi (ProAV Processor, I-PX-IR-3, AV Remote Control). Это позволяет использовать готовые команды из базы, не тратя время на обучение устройств вручную или поиск команд.

IRidi_IR_Base_main_page.png

Для корректной работы команд используйте специализированный драйверы для ProAV оборудования iRidi из базы драйверов iRidi, с поддержкой IR интерфейсов.

Studio2019_GCCloud_IR_DB_01.png

Studio2019_GCCloud_IR_DB_02.png

После добавления драйвера можно перетаскивать ИК-команды из базы iRidi IR Base на IR-выходы драйвера — как целыми наборами, так и по отдельности.

Чтобы быстро найти нужные команды, начните вводить первую букву бренда в списке Brands, а затем выберите подходящую модель в списке Models:

Studio2019_GCCloud_IR_DB_03.png

Studio2019_GCCloud_IR_DB_04.png

ETS import. Импорт групповых адресов из ETS

iRidium подключается к шине KNX и может взаимодействовать с устройствами шины, устанавливая и считывая значения групповых адресов.Список групповых адресов можно импортировать из проекта ETS5 (*.knxproj) и добавлять в ваш проект iRidium – все сразу или частично. Поддерживается до-импорт и обновление настроек групповых адресов. Поддерживается импорт датапоинтов KNX IP BAOS.

Чтобы импортировать групповые адреса из проекта ETS5 (*.knxproj):

  1. Запустите iRidium studio, создайте проект и откройте боковые панели ETS import и Driver tree :

ETS_import1.png 2. В панели ETS import нажмите кнопку Import и выберите файл с расширением *.knxproj:

NewETS12.png 3. Укажите в каком формате будут импортированы данные: в новом файле или объединить с другими ETS проектами:

ETS_import3.png 4. Укажите необходимые устройства для создания драйвера на основе ETS проекта:

ETS_import4.png

Параметры импорта:

  • "Умный импорт", анализировать флаги объектов для создания команд, фидбэков и настройки опроса;

  • Использовать структуру Main и Middle групп для автоматического создания папок с адресами.

Анализ флагов групповых адресов суммирует флаги всех коммуникационных объектов, связанных с групповым адресом, и по их наличию принимается решение о добавлении команды и фидбека. 5. Укажите настройки синхронизации файла ETS с панелью драйверов:

ETS_import5.png

Параметры синхронизации:

  • Add new group addresses from ETS file - добавить новые групповые адреса из файла ETS.

Формат имени добавленных устройств:

  • Group addresses:

    • Address and name - адрес и имя,
    • Only name - только имя,
    • Only address - только адрес.
  • BAOS datapoints:

    • Name from BAOS datapoint table - имя из таблицы точек данных BAOS,
    • Name of linked group address - имя связанного адреса группы.

Вы сможете вернуться к настройкам синхронизации, нажав на клавишу Настройки ETS_import10.png в панели импорта. 6. Когда импорт завершится, в дереве драйверов появятся новые устройства, а в окне импорта отобразится база из ETS проекта:

NewETS1.png

NewETS7.png

Связь между драйвером и ETS проектом указана в окне Devices :

  • Source ETS Project - ETS проект;
  • Source ETS Device - тип устройства.

Связь можно изменить или удалить, очистив данные поля.

  • Связь создается 1:1, следовательно один драйвер имеет связь только с одним устройством из базы. Если драйверу №2 присвоено устройство, которое принадлежало драйверу №1, связь у драйвера №1 разорвется. Связи можно восстановить.

Используйте кнопку Синхронизировать NewETS2.png , чтобы обновить адреса в драйвере согласно настройкам синхронизации.

Чтобы обновить список адресов после внесения изменений в проект ETS, экспортируйте файл из ETS и импортируйте повторно – данные будут объединены.

Новые адреса, добавленные из файла ETS, будут отмечены значком [new]. 7. Файл ETS проекта не хранит адрес KNX IP интерфейса. Убедитесь, что указали актуальный IP адрес KNX IP интерфейса:

ETS_import7.png

Инструменты панели ETS import

NewETS3.png

  1. Импортировать – добавить новый ETS файл в базу импорта, или обновить содержимое добавленного файла. Поддерживаются файлы ETS5 (*.knxproj).
  2. Настройки синхронизации – параметры синхронизации данных о групповых адресах между панелью импорта и драйвером (cм. описание параметров в п.5 инструкции по импорту).
  3. Синхронизировать – синхронизирует файл ETS проекта с соответствующим драйвером в панели. Настройки синхронизации см. по нажатию на клавишу (3). Синхронизацию можно произвести, перетащив файл из панели импорта на драйвер.
  4. Способ сортировки групповых адресов. Поддерживается сортировка, аналогично ETS: "Групповые адреса", "Устройства", "Здание".
  5. Поле Имя отображает список групповых адресов, объединенных в папки согласно выбранному способу сортировки (4). Имена формируются из трех составляющих: групповой адрес, имя (как в ETS), суммарные флаги связанных групповых объектов. Для именования команды и фидбека в драйвере используется только имя адреса.
    Флаги:
  6. Communication (Соединение) – без этого флага не будет создана ни команда, ни фидбек;
  7. Write (Запись) – будет добавлена команда;
  8. Transmit (Передавать) – будет добавлен фидбек. Опция "Read on start" будет выключена, если нет флага Read;
  9. Read (Считывание) – включает опцию "Read on start" в настройках созданного фидбека;
  10. Update (Обновление) – не анализируется.
  11. Поле Тип отображает подтип данных группового адреса согласно ETS. Если адрес не связан с групповыми объектами, он не будет добавлен в проект, а поле тип – не определен (Unknown).
  12. Поле статуса отображает значок [new] у адресов, добавленных при реимпорте файла ETS. Отображает значок [sync] у адресов, чекбоксы которых поменяли состояние на вкладке ETS import , но еще не изменены у драйвера, или при обновлении базы данных ETS проекта.
  13. С помощью чекбокса можно добавить в драйвер несозданную команду или фидбек или удалить уже добавленную команду/ фидбек, при этом цвет стрелочки (9) не меняется. После этого необходимо синхронизировать устройства (3).
  14. "Smart import" помечает цветным команды и фидбэки, которые он посчитал необходимым добавить, и серым - которые не добавляются.

Меню ПКМ

По нажатию правой кнопки мыши по драйверу на вкладке ETS import откроется меню ПКМ .

NewETS4.png

В меню доступен быстрый доступ к функциям:

  • Sync - синхронизация с драйвером;

  • Remove connection with the driver - удалить связь с драйвером;

  • Return default sync settings - очистить настройки пользователя и вернуть первоначальное решение (применяется ко всей базе).

  • Если связи нет, то при синхронизации, будет предложено создать новый драйвер, иначе по умолчанию будет выбран связанный драйвер.

NewETS5.png

Commands & Feedbacks

Как результат импорта мы имеем:

  • KNX Router (Interface) - драйвер, объединяет в себе список групповых адресов в шине.

  • Commands и Feedbacks - команды и каналы обратной связи, которые позволяют управлять групповыми адресами. Команды - групповые адреса, доступные на запись, каналы - групповые адреса, доступные на чтение.

  • Для более быстрого поиска в дереве устройств (окно Devices): перейдите на вкладку ETS import и нажмите ПКМ по необходимому адресу. Откроется окно, где необходимо выбрать поиск команды или канала обратной связи. Выбранные команда / канал будут выделены в окне Devices.

Find_command.png

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

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

Чтобы связать команду или канал с графическим элементом, используйте метод drag&drop - перетягивание.

  • Подробная информация по отправке команд из интерфейса i3 pro и отображение данных указана здесь.