Переменные

Переменные служат для записи и считывания значений на схеме проекта и при программировании экранов.

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

Для запуска Таблицы переменных нажмите кнопку Graphic на панели инструментов или выберите в главном меню Прибор → Таблица переменных.

Таблица переменных содержит Дерево каталогов переменных, а также вкладки:

Дерево каталогов переменных

Позволяет создавать разделы каталогов для размещения переменных. Для каждого типа переменных отображается своё дерево каталогов. Для стандартных и сетевых переменных возможно создавать дополнительные разделы каталогов (максимальная вложенность — 3). Каталоги сервисных переменных неизменяемые.

Graphic
Дерево каталогов переменных
Graphic

Включить/отключить отображение вложенных переменных

Graphic

Отобразить вложенные разделы

Graphic

Свернуть вложенные разделы

Graphic

Создать раздел каталога переменных.

Также создание раздела доступно через контекстное меню каталога.

Graphic

Дублировать каталог — выбранная папка продублируется в родительский каталог со всеми вложенными разделами и добавленными переменными.

Также копирование раздела доступно через контекстное меню каталога. Выберите Копировать, затем выберите каталог, в который необходимо добавить скопированный раздел, нажмите ПКМ и выберите Вставить

Примечание
Каталог для добавления информации должен быть на уровень выше копируемого.

Graphic

Удалить каталог.

Также удаление раздела каталога доступно через контекстное меню каталога.

Примечание
Раздел каталога, содержащий переменные, удалить невозможно.

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

Примечание
Перемещение разделов доступно только в пределах родительского каталога.

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

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

Чтобы определить раздел каталога, в котором находится переменная, выделите переменную в таблице и нажмите Ctrl+H. Раздел, в котором находится переменная, в дереве каталогов выделится синим цветом, наименование раздела отобразится в строке снизу, в таблице переменных откроется тот раздел, где расположена переменная. Или наведите мышку на переменную — во всплывающем окне отобразится имя переменной и ее расположение.

Таблица переменных

Переменные проекта отображаются в таблице переменных.

Graphic
Таблица переменных

Для создания переменной нажмите кнопку Graphic в левой верхней части таблицы, или введите имя переменной в столбце “Имя переменной”. Задайте тип, заполните остальные параметры в зависимости от эксплуатационной потребности.

  • Имя переменной – имя для отображения на Панели переменных и на блоке переменной в проекте;

  • Тип переменной – может быть назначен один из трех типов: булевский, целочисленный, с плавающей запятой. См. подробнее раздел Типы переменных;

  • Энергонезависимость – для сохранения значения переменной в ПЗУ прибора в случае отключения электропитания следует включить чекбокс в поле настройки. Время хранения переменной в ПЗУ зависит от типа прибора, см. руководство по эксплуатации прибора;

    Примечание
    Для приборов второго поколения, при включении в таблице переменных чекбокса Энергонезависимость, размещение значения переменной происходит:
    • в системное ЭСППЗУ – для стандартной переменной, привязанной к параметру прибора или к элементу визуализации. Для сетевой Slave переменной;

    • в ЭСППЗУ - для стандартной переменной, не привязанной к параметру прибора или к элементу визуализации.

  • Значение по умолчанию – значение, которое будет хранить переменная, пока в нее не будет записано новое значение

    ;
  • Использование в проекте – индикация привязки к блокам в программе. Если переменная привязана, то значение — Да;

  • Комментарий – текстовое описание для отображения во всплывающей подсказке на схеме проекта при наведении курсора на блок переменной

    .

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

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

Таблица переменных поддерживает поиск и фильтрацию по имени. Символ «Пробел» выполняет роль логического ИЛИ и позволяет фильтровать переменные по нескольким критериям.

Graphic
Поиск переменных

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

Graphic
Создание переменной с заданным именем

Таблица переменных допускает сортировку по значениям. Для сортировки значений нажмите ПКМ на название колонки таблицы и выберите в контекстном меню порядок сортировки (по возрастанию или по убыванию).

Graphic
Сортировка переменных

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

Graphic

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

Graphic
Ссылки на переменную

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

Экспорт переменных в файл

Для экспорта вкладки переменных в виде таблицы в формате .csv:

  1. Нажмите GraphicЭкспортировать переменные в CSV файл в верхней части таблицы.
  2. В открывшемся окне укажите место выгрузки файла.
  3. Нажмите кнопку Сохранить.
Примечание
Имя файла формируется в зависимости от экспортируемой вкладки по схеме ИмяПроекта_Вкладка_Переменные.
Примечание
Для приборов второго поколения вкладка Slave сетевых переменных экспортируется вместе с панелью переменных.
Graphic
Импорт переменных из файла

Для импорта таблицы переменных из файла в формате .csv нажмите кнопку Graphic Импортировать переменные из CSV файла в верхней части таблицы. Выберите файл из которого необходимо импортировать данные и нажмите Открыть. Каталоги, при наличии, также импортируются из файла с сохранением вложенности переменных. В случае присутствия в файле некорректных данных, например при отсутствии столбца с именем, типом переменной или регистром, будет отображено сообщение об ошибке. После устранения ошибки выполните импорт заново. При совпадении имен и/или регистров переменных в проекте и импортируемом файле, появится информационное окно с сообщением обо всех пересечениях имен и/или регистров и предложением продолжить либо отменить импорт

Типы переменных

В Owen Logic используются три типа переменных:

  • булевский (двоичный);

  • целочисленный;

  • с плавающей запятой (вещественный).

Значения от одной переменной к другой могут передаваться только при совпадающих типах переменных.

Булевский тип

Переменная булевского типа может принимать одно из двух значений: 1 (True) или 0 (False).

На схеме переменные булевского типа соединяются черными линиями:

Graphic

Целочисленный тип

Переменная целочисленного типа может принимать значение целого числа в диапазоне от 0 до 4294967295.

На схеме переменные целочисленного типа соединяются красными линиями:

Graphic

Тип с плавающей запятой

Переменная типа с плавающей запятой может принимать значение вещественного числа в диапазоне от –3,402823E+38 до 3,402823E+38.

Числа одинарной точности с плавающей запятой обеспечивают относительную точность 7–8 десятичных цифр в диапазоне от 10–38 до примерно 1038.

На схеме переменные типа с плавающей запятой соединяются фиолетовыми линиями:

Graphic

Сервисные переменные

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

Graphic
Вкладка Сервисные переменные

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

Graphic

Сервисные переменный для приборов второго поколения

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

Переменные интерфейса связи

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

Режим Master

Для интерфейса связи в режиме Master таблица содержит вкладки с сетевыми переменными для каждого опрашиваемого устройства.

Graphic

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

Режим Slave

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

Graphic

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

Привязка переменных к параметрам

Примечание

Привязка переменных к параметрам доступна только для приборов второго поколения. Список приборов второго поколения см. в разделе О программе.

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

Для привязки переменной к параметру прибора следует:

  1. Открыть Настройки прибора.

    Примечание
    Привязка переменных доступна не для всех параметров.
  2. Выбрать параметр для привязки и нажать на кнопку «…» в графе Переменная окна настроек.

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

    Graphic

    Имя привязанной переменной будет отображаться в графе «Переменная» напротив параметра.

    После привязки к параметрам переменные можно использовать в программе. Таким образом, значения параметров можно читать и изменять в программе.

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

Копирование переменных

Переменные можно копировать из проекта в проект для повторного использования и сокращения времени на разработку. Для копирования переменной следует выделить блок с переменной в исходном проекте и нажать кнопку Graphic на панели инструментов или выбрать команду Копировать в контекстном меню блока. Переменная вставляется в другой проект нажатием на кнопку Graphic на панели инструментов или с помощью выбора команды Вставить в контекстном меню холста.

Переменные

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

Примечание
В проект для прибора, который не поддерживает тип данных с плавающей запятой, невозможно вставить переменные типа с плавающей запятой.
Примечание
Энергонезависимые переменные невозможно вставить в проект для прибора, который их не поддерживает.
Сервисные переменные

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

Переменные интерфейса связи

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