4.4.2.2.2.3. Объявление выходных переменных
В области VAR_OUTPUT необходимо объявить выходные переменные состояния функционального блока.
Чтобы инженеру АСУ ТП было удобнее производить отладку алгоритмов, создадим переменные для сигнализации (SIGN), диагностики (DIAGN) и качества аналогового сигнала (QUALITY) в виде перечислений.
1. Создайте в папке "01. Типы данных" вложенную папку "1.2. Перечисления".
2. Выделите папку "1.2. Перечисления" и в контекстном меню выберите команду "Добавление объекта" -> "DUT...".
3. Выберите тип "Перечисление", укажите название "ENUM_DIAGN" и нажмите кнопку "Добавить".
4. Аналогичным образом добавьте перечисление "ENUM_SIGN" и "ENUM_QUALITY". Должна получиться следующая структура объектов:
5. В редакторе типа "ENUM_DIAGN" удалите атрибуты {attribute 'qualified_only'}, {attribute 'strict'} и укажите возможные значения :
Отметьте тип "ENUM_DIAGN" атрибутом {attribute 'ps.sync'}, чтобы определить экземпляры данного типа как безопасные для резервирования.
Не забывайте указывать комментарии.
|
6. В редакторе типа "ENUM_SIGN" аналогично удалите атрибуты {attribute 'qualified_only'}, {attribute 'strict'} и укажите возможные значения:
Отметьте тип "ENUM_SIGN" атрибутом {attribute 'ps.sync'}, чтобы определить экземпляры данного типа как безопасные для резервирования.
Не забывайте указывать комментарии.
|
7. В редакторе типа "ENUM_QUALITY" аналогично удалите атрибуты {attribute 'qualified_only'}, {attribute 'strict'} и укажите возможные значения:
Отметьте тип "ENUM_QUALITY" атрибутом {attribute 'ps.sync'}, чтобы определить экземпляры данного типа как безопасные для резервирования.
Не забывайте указывать комментарии.
|
Выходная переменная "OUT" будет представлена в виде переменной структурного типа "AI", который будет включать в себя значение (VALUE) и качество (QUALITY) аналогового сигнала.
8. Выделите папку "1.1. Структурные типы" и в контекстном меню выберите команду "Добавление объекта" -> "DUT...".
9. Укажите название структурного типа "AI" и нажмите кнопку "Добавить".
10. В редакторе структурного типа "AI" добавьте переменные, отвечающие за значение типа REAL и качество аналогового сигнала типа ENUM_QUALITY.
Отметьте структурный тип "AI" атрибутом {attribute 'ps.sync'}, чтобы определить экземпляры данного типа как безопасные для резервирования.
11. Объявите переменные в области "VAR_OUTPUT". Обратите внимание, что переменная "OUT" является переменной структурного типа "AI", а переменные "SIGN" И "DIAGN" - имеют тип "Перечисление".
Над переменными, которые необходимо передавать на верхний уровень, выставите атрибут
{attribute 'symbol' := 'readwrite'}.
|
Над переменными, которые необходимо резервировать, выставите атрибут
{attribute 'ps.add_redundancy'}.
|
Таким образом, мы объявили входные/выходные переменные функционального блока. Внутренние и временные переменные объявляются аналогичным образом.
Не используйте в функциональных блоках вход-выходные переменные.
|