Использование редактора словаря
Словарь ISaGRAF - это средство для редактирования внутренних переменных, переменных ввода/вывода, функциональных блоков и макросов приложения. Словарь группирует все объявления переменных и функциональных блоков приложения и макросов в текстовой форме.
Переменные, функциональные блоки и макросы должны быть объявлены в словаре перед использованием. Переменные и макросы могут использоваться в любом автоматическом языке : SFC, FBD, LD, ST, и IL. Функциональные блоки, используемые в FBD, объявлять не обязательно, так как редакторы FBD и Quick LD автоматически объявляют используемые блоки.
Переменные
Переменные сортируются в соответствии со своей областью действия и типом. Только переменные с одинаковыми областями действия и типами могут быть введены в одну решётку ввода. Вот основные типы области видимости переменных :
ГЛОБАЛЬНАЯ......... может быть использована любой программой текущего проекта
ЛОКАЛЬНАЯ........... может быть использована только одной программой
Ниже приведены основные типы переменных :
БУЛЕВСКАЯ............ true/false двоичные величины
АНАЛОГ................... действительные или целые величины
ТАЙМЕР................... временные величины
СООБЩЕНИЕ........... символьные строки
Переменная идентифицируется именем, комментарием, атрибутами, сетевым адресом и другими специальными полями. Ниже приведены основные атрибуты переменных :
ВНУТРЕННЯЯ.... переменная в памяти (внутренняя)
ВХОД................. переменная, связанная с устройством ввода
ВЫХОД.............. переменная, связанная с устройством вывода
КОНСТАНТА..... внутренняя переменная только для чтения (с начальным значением)
Замечание:
Таймеры всегда являются внутренними переменными. Переменные ввода и вывода
всегда имеют глобальную область видимости.
Макросы
Макросы - это синонимы, которые могут быть использованы в любом языке для замены текстовых строк. Заменяемый текст может быть именем переменной, константой или сложным выражением.
Макросы различаются в соответствии с их областью видимости. Только макросы одного типа и области действия могут быть вставлены в одинаковую сетку редактирования. Вот основные виды области действия макросов :
ОБЩАЯ.................... может быть использована любой программой любого проекта
ГЛОБАЛЬНАЯ......... может быть использована любой программой текущего проекта
ЛОКАЛЬНАЯ........... может быть использована только одной программой
Макросы идентифицируются именем, блоком описания на ST и комментарием.
Экземпляры функциональных блоков
Функциональные блоки, используемые в языках ST и IL, должны быть объявлены в словаре. Так как функциональный блок содержит внутренние спрятанные данные, то каждая копия блока должна быть идентифицирована. Следующий пример показывает функциональный блок «R_TRIG» ( определение поднятой грани ), определённый в библиотеке, который используется для определения фронта различных переменных. Каждая копия блока должна быть идентифицирована уникальным именем. Определение типа блока и его параметров производится при помощи менеджера библиотек :
Имя блока: R_TRIG
Параметры: Input=CLK
Output=Q
При помощи редактора словаря образуется имя :
Имя экземпляра: TRIG_B1 Имя блока: R_TRIG
Имя экземпляра: TRIG_B2 Имя блока: R_TRIG
Объявленные блоки могут быть использованы в ST программе :
TRIG_B1 (b1);
edge_b1 := TRIG_B1.Q; (* b1 определение фронта переменной *)
TRIG_B2 (b2);
edge_b2 := TRIG_B2.Q; (* b2 определение фронта переменной *)
Объявленные экземпляры функциональных блоков могут быть ГЛОБАЛЬНЫМИ ( доступные в любой программе проекта ) или ЛОКАЛЬНЫМИ, для одной программы. Функциональные блоки, используемые в языках FBD и LD, объявлять не нужно, так как это делает редактор FBD.
(* функциональные блоки всегда имеют то же имя, что и блок, объявленный в библиотеке.Редактор FBD автоматически объявляет реализацию каждый раз при вставке блока из библиотеки *)
Экземпляры функциональных блоков, автоматически объявленные редакторами FBD и LD, всегда локальны для редактируемой программы.
Сетевые адреса
Сетевой адрес является необязательным. Переменная с ненулевым сетевым адресом может быть прослежена
внешней системой ( например, процессом визуализации системы ) в процессе выполнения. В более общем случае, сетевой адрес обеспечивает механизм идентификации для каждой работающей коммуникационной системы, которая не поддерживает символьное имя. Сетевой адрес может быть определён для каждой переменной, в том числе при её создании или изменении.