Глобальные переменные

Глобальные переменные — это объекты облака и Дерева объектов, в которые можно записать какое-нибудь значение (например, значение температуры) код команды или результат выполнения сценария, и они будут хранить записанное значение. Значение могут прочитать и изменить сценарии контроллеров, сценарии облака, виджеты пользовательских интерфейсов или внешние системы через API, при этом каждую переменную можно использовать для хранения любых данных в виде пары “имя=значение”.

Глобальные переменные хранятся внутри группы “Глобальные переменные” в Дереве объектов.

Создание переменных

Создать переменную можно тремя способами:

  • на вкладке “Структура” нажать кнопку 
  • выделить в дереве объектов “Глобальные переменные” и нажать на панели, располагающейся над деревом, кнопку с пиктограммой 
  • выделить в дереве объектов “Глобальные переменные”, вызвать контекстное меню правой кнопкой мыши и кликнуть “Создать переменную”.

Свойства переменной

При создании новой переменной или при просмотре/редактировании свойств переменной появляется окно, в котором имеют место быть следующие поля:

  • Имя может содержать только символы цифр и букв. По заданному имени вы сможете к нему обращаться.
  • Расположение. Если вы решили создать переменную в рамках устройства или контроллера, то можете изменить расположение переменной, выбрав необходимое место хранения из выпадающего списка.
  • Тип. Необходимо задать желаемый тип данных.
  • Значение. Задайте начальное значение выбранного типа данных.
  • Сохранять историю значений. Поставьте флажок, если Вас интересует динамика изменений данной переменной.
  • Сохранять при . Укажите минимальное отклонение от последнего сохраненного значения, при котором будет сохраняться новое значение(для числовых переменных).

        

Типы данных переменной

Тип данных — важное свойство переменной. Тип данных определяет множество значений, которое может быть присвоено переменной. Для каждого свойства виджета или модуля сценария  определено, на переменные какого типа данных можно сослаться.  В системе имеют место быть следующие типы данных:

  • Числовой. Вещественные числа, вводятся с разделителем-точкой. Можно вводить только числа в десятичной системе счисления.
  • Логический. Переменная логического типа может принимать два значения: логическая единица, соответствующая истине, ИСТИНА(1/TRUE) и логический ноль, соответствующий лжи, ЛОЖЬ(0/FALSE).
  • Текстовый. Текстовая переменная может содержать в себе любые символы. Максимальная длина — 255 символов.
  • Универсальный. Если у вас нет уверенности, какого типа данных будут поступать значения, например от устройства или внешней системы, то вы можете выбрать универсальный тип данных. В отличие от текстового типа данных, если в переменную  с Универсальным типом данных будет помещено число, оно будет трактоваться как число, а не текст, то есть с ним можно будет выполнять арифметические операции, использовать переменную для подстановки в поля виджетов и модулей сценариев, которые требуют указать число, и т.д.

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

Тип данных переменной

Тип данных присваемого значения

Правило конвертации

Числовой

Числовой

Произойдет непосредственное присвоение.

Логический

Если логическое значение равно ЛОЖЬ, то числовой переменной присвоится 0.

Если логическое значение равно ИСТИНА, то числовой переменной присвоится 1

Текстовый

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

В противном случае присвоится 0.

Универсальный

Если значение содержит в себе символы, удовлетворяющие формату десятичного числа, то переменной присвоится соответствующее новое значение.

В противном случае присвоится 0.

Логический

Числовой

Если числовое значение равно 1, то логической переменной присвоится ИСТИНА. В противном случае- присвоится ЛОЖЬ.

Логический

Произойдет непосредственное присвоение.

Текстовый

Если строковое значение равно “1”, то логической переменной присвоится ИСТИНА. В противном случае- присвоится ЛОЖЬ.

Универсальный

Если значение равно “1” или ИСТИНА, то логической переменной присвоится ИСТИНА. В противном случае- присвоится ЛОЖЬ.

Текстовый

Числовой

Произойдет непосредственное присвоение.

Логический

Произойдет непосредственное присвоение: 1 или 0. В общем случае, зависит от представления логического значения.

Текстовый

Произойдет непосредственное присвоение.

Универсальный

Произойдет непосредственное присвоение.

Универсальный

Числовой

Произойдет непосредственное присвоение.

Логический

Произойдет непосредственное присвоение: 1 или 0. В общем случае, зависит от представления логического значения.

Текстовый

Произойдет непосредственное присвоение.

Универсальный

Произойдет непосредственное присвоение.