- iRidium studio 2019
- Отправка команд из интерфейса, отображение данных
Отправка команд из интерфейса
Наиболее частая задача интерфейса - запись числовых значений в адреса/регистры/переменные оборудования и отображение числовых значений в интерфейсе. При этом может потребоваться различная логика записи значений (Value), например:
- кнопка при каждом нажатии отправляет одно и то же значение Value, указанное в связи кнопки с командой
- триггер попеременно отправляет в переменную одно из значений Value, указанное в настройках триггера
- уровень отправляет в переменную значение Value из диапазона при перемещении слайдера
Создавая интерфейс, вы выбираете для управления переменными тот тип графического элемента, логика работы которого подходит под задачи интерфейса. Чтобы связать команду (переменную) с графическим элементом, нужно настроить элемент и перетащить на него команду из DRIVERS при помощи мыши.
Управление переменными из интерфейса
- Выберите тип графического элемента, который выполняет ваши задачи
- В настройках укажите значения Value, которые должен отправлять элемент связанным с ним переменным
- Перетащите команду из DRIVERS на графический элемент
- В диалоге привязки команды выберите значение, которое будет отправлять графический элемент. В случае с кнопкой - это может быть Number, т.е. конкретное значение для отправки. Другие типы элементов могут отправлять Value - т.е. значение, которое генерирует элемент. О том, как выбрать событие: Press, Release и др. см. здесь
- Если графический элемент должен не только отправлять, но и отображать данные, то поставьте галочку "Add feedback channel" и укажите, на какое свойство элемента будет влиять полученное значение (изменит Value или заменит Text)

Отображение данных в интерфейсе
- Выберите тип графического элемента для отображения данных - это может быть тот же элемент, что управляет оборудованием, или элемент-дисплей (Label)
- Перетащите фидбек на графический элемент:
- In Value - переключить состояние элемента при помощи значения, полученного из переменной (возможность переключения зависит от настроек элемента, см. инструкцию к типам элементов); отобразить полученное значение в тексте элемента при использовании опции "Show value in text" (см. настройки текста), которая позволяет отобразить значение с фиксированным числом знаков после запятой.
- In Text - отобразить в тексте элемента значение, полученное из переменной. Если переменная возвращает число с плавающей запятой, оно отобразится с шестью нулями после запятой, поэтому используйте "In Value" и опцию "Show value in text" в настройках текста, чтобы управлять форматом отображения чисел.
- More - воздействовать полученным из фидбека/токена значением на любое свойство элемента (прозрачность, видимость, размер и др.)

Отображение значения в тексте
Отображение значения в тексте с помощью опции "Show value in text" позволяет встроить числовое значение в текст графического элемента и указать число знаков после запятой. Для уровней, специальный шаблон отображения позволяет преобразовать значение из произвольного диапазона в 0-100%
Значение встраивается в текст при помощи специального шаблона ($V, $F1, $F2, ...), который при запуске i3 pro автоматически заменяется на значение переменной, привязанной в "In Value" элемента:
- Включите редактирование текста на элементе
- Выберите из списка "Show value in text" способ отображения данных в тексте. В текстовое поле элемента будет добавлен шаблон, например
$V - Перейдите в текстовое поле элемента и укажите текст, который должен отображаться на элементе кроме значения Value, которое будет отображаться на месте шаблона, например
$V%, чтобы отобразить значение 100, полученное из канала, в виде100%

| $V | целая часть полученного значения |
| $F1 ... $F5 | значение с плавающей точкой. От 1 до 5 - это число знаков после точки |
| $F,1 ... $F,5 | значение с плавающей запятой. От 1 до 5 - это число знаков после запятой |
| $S | номер выбранного состояния |
| $X | значение в формате HEX |
| $$ | символ "доллар" |
| $P | (только уровни) процент от максимального значения Уровня |
| $H | (только уровни) максимальное значение Уровня |
| $A | (только уровни) текущее значение минус минимальное значение Уровня |
| $L | (только уровни) минимальное значение Уровня |
| $R | (только уровни) размах Уровня: максимальное минус минимальное |
Шаблон вносится в текстовое поле графического элемента и может быть совмещен с другим текстом и символами (комментариями, единицами измерения)
Настройка команд через PROGRAMMING
Настройка команд через PROGRAMMING графического элемента:

Команды редактора макросов для взаимодействия с драйверами и переменными проекта:
- Send To Driver (отправка значений в команды драйверов)
-
- Send Number. Отправить константу - десятичное число (DEC)
-
- Send Text. Отправить константу - строку данных (ASCII)
-
- Send Data. Отправить константу - в виде строки (HEX)
-
- Send Token. Отправить данные, извлеченные из переменных проекта (Value, координаты, размеры и т.д. – переменные значения, определяемые свойствами объекта)
- Send To Token (отправка данных в переменные - свойства элементов, драйверы, токены проекта)
-
- Send Number. Записать константу (число DEC) в переменную
-
- Send Text. Записать константу (строку ASCII) в переменную
-
- Send Token. Записать переменную в переменную (например, свойство элемента в токен проекта)
Чтобы отправить команду, выберите событие (Press, Release), тип значения (число, текст или Value элемента) и переменную, в которую нужно записывать значение. Если это число или текст, укажите значение, которое нужно отправить. Сохраните изменения в PROGRAMMING.
Теперь, при нажатии на элемент, когда сработает выбранное событие (в момент нажатия, в момент отпускания или при удержании), в переменную будет отправляться значение.