Переменные служат для записи и считывания значений на схеме проекта и при программировании экранов.
Задействованные переменные
Переменная является задействованной, если выполняется хотя бы одно из следующих условий:
Общие условия для всех типов переменных:
имеет привязку к элементу визуализации;
имеет привязку к параметру прибора;
имеет привязку к физическим кнопкам;
используется в логических переходах между экранами;
для переменной на схеме присутствует выходной блок энергонезависимой переменной (Энергонезависимость = Вкл).
Дополнительные условия, для переменных типа массив:
Для массива с элементами булевского типа — при энергонезависимости "Выкл" на схеме присутствует выходной блок массива или элементов массива;
Для массива с элементами целочисленного и вещественного типа — при энергонезависимости "Выкл" на схеме присутствует входной блок массива или элементов массива.
Если ни одно из условий не выполняется, то такая переменная является незадействованной.
Незадействованные переменные:
не участвуют в логике программы;
не участвуют в симуляции программы;
не занимают память прибора.
Таблица переменных
Переменные проекта отображаются в Таблице переменных.
Для запуска Таблицы переменных нажмите кнопку
на панели инструментов
или выберите в главном меню Прибор → Таблица переменных.
Таблица переменных содержит Дерево каталогов переменных, а также вкладки:
Стандартные переменные;
Сетевые переменные (переменные интерфейса связи) — для каждого интерфейса связи отдельная вкладка.
Дерево каталогов переменных позволяет создавать разделы каталогов для размещения переменных. Для каждой категории переменных отображается своё дерево каталогов. Для стандартных и сетевых переменных возможно создавать дополнительные разделы каталогов (максимальная вложенность — 3). Каталоги сервисных переменных неизменяемые.
Рядом с названием каждого каталога в скобках указывается количество переменных в каталоге - с учётом переменных, находящихся во вложенных каталогах, либо без них, в зависимости от настройки "Отображение вложенных переменных".

![]() | Включить/выключить отображение вложенных переменных
По умолчанию отображение вложенных переменных включено. |
![]() | Раскрыть подкаталоги |
![]() | Свернуть подкаталоги |
![]() | Создать новый подкаталог. Также создание подкаталога доступно через контекстное меню каталога. |
![]() | Дублировать каталог — выбранная папка продублируется в родительский каталог со всеми вложенными разделами и добавленными переменными. Также копирование раздела доступно через контекстное меню каталога. Выберите Копировать, затем выберите каталог, в который необходимо добавить скопированный раздел, нажмите ПКМ и выберите Вставить Каталог для добавления информации
должен быть на уровень выше копируемого. |
| Удалить каталог. Также удаление раздела каталога доступно через контекстное меню каталога. Раздел
каталога, содержащий переменные, удалить невозможно. |
Для перемещения раздела каталога нажмите и удерживайте клавишу Shift, и с помощью drag&drop переместите раздел на новое место.
Для переименования раздела каталога введите новой имя в строке Наименование, расположенной в нижней части Дерева каталогов переменных.
Чтобы определить раздел каталога, в котором находится переменная, выделите переменную в таблице и нажмите Ctrl+H. Раздел, в котором находится переменная, в дереве каталогов выделится синим цветом, наименование раздела отобразится в строке снизу, в таблице переменных откроется тот раздел, где расположена переменная. Или наведите мышку на переменную — во всплывающем окне отобразится имя переменной и ее расположение.
Чтобы использовать переменную в проекте, сначала следует создать ее в таблице переменных.

![]() | Создать переменную |
![]() | Дублировать переменную |
![]() | Удалить переменную |
![]() | Экспортировать стандартные переменные в CSV файл |
![]() | Импортировать стандартные переменные из CSV файла |
![]() | Раскрыть все массивы |
![]() | Свернуть все массивы |
Для создания переменной нажмите кнопку
в левой верхней части
таблицы, или введите имя переменной в столбце “Имя переменной”. Задайте тип, заполните остальные
параметры в зависимости от эксплуатационной потребности.
Имя переменной – имя для отображения переменной в проекте. При создании массива элементы массива автоматически получают имена, содержащие имя массива с добавлением индекса в квадратных скобках;
Тип переменной – может быть назначен один из трех типов: булевский, целочисленный, с плавающей запятой, массив. См. подробнее раздел Типы переменных;
При выборе переменной типа массив, в появившемся окне Настройка массива введите:
Размер массива — количество элементов массива, не более 256. Значения, задаются в формате [х..y], где x - индекс первого элемента, y - последнего;
Тип элементов — тип элементов массива: булевский, целочисленный, с плавающей запятой.

Окно Настройка массива
Изменение размера, диапазона индексов и/или типа элементов массива возможно в любой момент.
Энергонезависимость — для сохранения значения переменной в ПЗУ прибора в случае отключения электропитания следует включить чекбокс в поле настройки. Время хранения переменной в ПЗУ зависит от типа прибора, см. руководство по эксплуатации прибора;
ПримечаниеДля приборов второго поколения, при включении в таблице переменных чекбокса Энергонезависимость, размещение значения переменной происходит:в системное ЭСППЗУ — для стандартной переменной, привязанной к параметру прибора или к элементу визуализации. Для сетевой Slave переменной;
в ЭСППЗУ — для стандартной переменной, не привязанной к параметру прибора или к элементу визуализации.
Значение по умолчанию — значение, которое будет хранить переменная, пока в нее не будет записано новое значение
;Использование в проекте — индикация использования переменной в проекте. Значение"Да" устанавливается если переменная является задействованной, и/или имеет привязку к входному или выходному блоку на схеме;
Комментарий — текстовое описание для отображения во всплывающей подсказке на схеме проекта при наведении курсора на блок переменной
.
Для дублирования переменной нажмите ПКМ на строку переменной
и в контекстном меню выберите Дублировать переменную или нажмите
кнопку
в верхней части
таблицы.
Чтобы удалить переменную из таблицы, нажмите ПКМ на строку
переменной и в контекстном меню выберите Удалить переменную или нажмите кнопку
в
верхней части таблицы. В случае, если переменная используется в проекте,
отобразится информационное окно, с предложением удалить ссылки на
переменную. При выборе Удалить переменная будет удалена из
таблицы переменных и блока на схеме.
Экспорт переменных в файл
Для экспорта вкладки переменных в виде таблицы в формате .csv:
- Нажмите
Экспортировать
переменные в CSV файл в верхней части таблицы. - В открывшемся окне укажите место выгрузки файла.
- Нажмите кнопку Сохранить.

Импорт переменных из файла
Для импорта
таблицы переменных из файла в формате .csv нажмите кнопку
Импортировать переменные
из CSV файла в верхней части таблицы. Выберите файл из которого
необходимо импортировать данные и нажмите Открыть. Каталоги,
при наличии, также импортируются из файла с сохранением вложенности
переменных. В случае присутствия в файле некорректных данных, например
при отсутствии столбца с именем, типом переменной или регистром, будет
отображено сообщение об ошибке. После устранения ошибки выполните
импорт заново. При совпадении имен и/или регистров переменных в проекте
и импортируемом файле, появится информационное окно с сообщением обо
всех пересечениях имен и/или регистров и предложением продолжить либо
отменить импорт
Раскрыть/свернуть массивы
Если
в проекте присутствует переменная типа массив можно настроить отображение
элементов массива в таблице переменных. Массив отображается в таблице
переменных в виде дерева массива. Для раскрытия дерева массива у всех
переменных типа массив в таблице переменных нажмите кнопку
Раскрыть все
массивы в верхней части таблицы. Данная настройка сохраняется
при следующем открытии таблицы переменных, в рамках одной сессии.
Для отображения элементов массива у одной переменной типа массив нажмите
на частную кнопку "+", расположенную перед именем массива.
Чтобы
свернуть дерево массива у всех переменных типа массив в таблице переменных
нажмите кнопку
Свернуть все массивы в верхней части таблицы. Данная настройка
сохраняется при следующем открытии таблицы переменных, в рамках одной
сессии. Для скрытия отображения элементов массива у одной переменной
типа массив нажмите на частную кнопку "-", расположенную перед именем
массива.
Поиск переменных
Таблица переменных поддерживает поиск и фильтрацию по имени. Символ «Пробел» выполняет роль логического ИЛИ и позволяет фильтровать переменные по нескольким критериям.

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

Контекстное меню таблицы переменных
Чтобы найти места использования переменной в проекте нажмите ПКМ на строку переменной в таблице и выберите в контекстном меню переменной Показать ссылки.

В открывшемся окне отобразится информация о выбранной переменной.

Для переменной типа массив указываются ссылки как на сам массив, так и на его элементы.
Чтобы удалить привязку к блоку переменной в проекте отметьте нужные переменные галочками и нажмите кнопку Удалить. Переменная останется в таблице, но не будет использоваться в проекте.
Типы переменных
В Owen Logic используются три типа переменных:
булевский (двоичный);
целочисленный;
с плавающей запятой (вещественный);
массив.
Значения от одной переменной к другой могут передаваться только при совпадающих типах переменных.
Булевский тип
Переменная булевского типа может принимать одно из двух значений: 1 (True) или 0 (False).
На схеме переменные булевского типа соединяются черными линиями:

Целочисленный тип
Переменная целочисленного типа может принимать значение целого числа в диапазоне от 0 до 4294967295.
На схеме переменные целочисленного типа соединяются красными линиями:

Тип с плавающей запятой
Переменная типа с плавающей запятой может принимать значение вещественного числа в диапазоне от –3,402823E+38 до 3,402823E+38.
Числа одинарной точности с плавающей запятой обеспечивают относительную точность 7–8 десятичных цифр в диапазоне от 10–38 до примерно 1038.
На схеме переменные типа с плавающей запятой соединяются фиолетовыми линиями:

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

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

На схеме сервисные переменные обозначаются серым цветом:

Сервисные переменный для приборов второго поколения
В приборах второго поколения нет сервисных переменных. Вместо сервисных переменных используется привязка переменных к параметрам прибора (см. раздел Привязка переменных к параметрам).
Переменные интерфейса связи
В таблице переменных для каждого интерфейса связи создается отдельная вкладка с описанием сетевых переменных. В заголовке вкладки указывается тип интерфейса и номер занимаемого слота.
Режим Master
Для интерфейса связи в режиме Master таблица содержит вкладки с сетевыми переменными для каждого опрашиваемого устройства.

О настройках переменных см. подробнее в разделе Режим Master.
Режим Slave
Для интерфейса связи в режиме Slave таблица отображает считываемые сетевые переменные.

О настройках переменных см. подробнее в разделе Режим Slave.
Привязка переменных к параметрам
Привязка переменных к параметрам доступна только для приборов второго поколения. Список приборов второго поколения см. в разделе О программе.
В приборах второго поколения можно привязать переменные к параметрам прибора и использовать в программе. Переменные, привязанные к параметрам, доступны для чтения и изменения.
Для привязки переменной к параметру прибора следует:
Открыть Настройки прибора.
ПримечаниеПривязка переменных доступна не для всех параметров.Выбрать параметр для привязки и нажать на кнопку «…» в графе Переменная окна настроек.

В открывшемся окне Переменных выбрать или создать переменную для привязки. Выделенные серым переменные доступны только для чтения.

Имя привязанной переменной будет отображаться в графе «Переменная» напротив параметра.
После привязки к параметрам переменные можно использовать в программе. Таким образом, значения параметров можно читать и изменять в программе.
Копирование переменных
Переменные можно копировать из проекта в проект для повторного
использования и сокращения времени на разработку. Для копирования
переменной следует выделить блок с переменной в исходном проекте и
нажать кнопку
на панели инструментов или выбрать команду Копировать в контекстном
меню блока. Переменная вставляется в другой проект нажатием на кнопку
на панели инструментов
или с помощью выбора команды Вставить в контекстном меню холста.
Переменные
Во время вставки скопированного блока переменной в проект проверяются все свойства переменных. Если в проекте есть переменная с полностью совпадающими свойствами, то она дублируется в блок. Переменные с отличающимися свойствами автоматически создаются в проекте.
Копирование элемента массива из одного проекта в другой происходит по следующим правилам:
Если в проекте, в который выполняется вставка, отсутствует массив со свойствами (тип, размер) идентичными свойствам массива, которому принадлежит скопированный элемент, то вместе с элементом создаётся новый массив, полностью повторяющий свойства исходного.
Если в проекте, в который выполняется вставка, уже существует массив с идентичными свойствами, то создание нового массива не происходит.
Правила копирования переменных типа массив не отличаются от правил копирования стандартных переменных.
Если имена переменных совпадают, но другие свойства отличаются, то создается новая переменная, но конфликт имен отображен в таблице переменных, и требуется сменить имя одной из переменных.
Сервисные переменные
В проект для прибора, который не поддерживает часы реального времени, невозможно скопировать сервисные переменные.
Переменные интерфейса связи
В другой проект можно скопировать только переменные интерфейса связи в режиме Slave для идентичного номера слота. Переменные интерфейса связи в режиме Master следует создавать вручную. Во время вставки скопированного блока сетевой переменной в проект проверяются все свойства переменных. Если в проекте есть переменная с полностью совпадающими свойствами, то она дублируется в блок. Переменные с отличающимися свойствами автоматически создаются в проекте. Если имя или регистры переменных совпадают, но другие свойства отличаются, то создается новая переменная, но возникает конфликт регистров или имен. Конфликт можно устранить в таблице переменных, задав другое имя или регистры.












