AstraRegul
Релиз 2024.08.31.00
×

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'}.
 
 
Таким образом, мы объявили входные/выходные переменные функционального блока. Внутренние и временные переменные объявляются аналогичным образом.
 
Не используйте в функциональных блоках вход-выходные переменные.