ГОСТ Р МЭК 61131-3—2016
6.6.1.4 Представление и правила вызова
6.6.1.4.1 Общие положения
Вызов используется для выполнения функции, экземпляра функционального блока или метода
функционального блока или класса. Как показано на рисунке 10. вызов может быть представлен в тек
стовой или графической форме.
1 Там. где не заданы входные переменные стандартных функций, применяются неявные имена
IN1. IN2.... в порядке сверху вниз. Если стандартная функция имеет один вход без имени, применяется
неявное имя IN.
2 Если какая-либо переменная VARJNJDUT какого-либо вызова в программном компоненте «не
правильно отображается», возникает ошибка.
Переменная VAR_1N_0UT «отображена правильно», если:
- она графически соединена в левой части; или
- она присваивается оператором «:=» в текстовом вызове, переменной, объявленной (без ква
лификатора CONSTANT) в блоке VARJN_OUT. VAR. VAR_TEMP. VAR_OUTPUT или VAR_ EXTERNAL
содержащего программного компонента или «правильно отображенной» в блоке VAR_!N_OUT другого
содержащегося вызова.
3 «Правильно отображенная» {как показано в правиле выше) переменная VAR_IN_OUT вызова
может
- графически соединяться в правой части; или
- присваиваться, используя оператор «:=» в текстовом операторе присваивания переменной,
объявленной в блоке VAR. VAR_OUTPUTили VAR_EXTERNALсодержащего программного компонента.
Если такое соединение будет приводить к неопределенному значения переменной, соединенной
таким образом, то возникает ошибка.
4 Имя экземпляра функционального блока может использоваться как вход, если оно объявлено
как VARJNPUT. или как VAR_IN_OUT.
Экземпляр может быть использован внутри вызванного объекта следующим образом:
- если он объявлен как VARJNPUT, переменные функционального блока могут только читаться;
- если он объявлен как VAR_IN_OUT, переменные функционального блока могут читаться и за
писываться. и функциональный блок может вызываться.
6.6.1.4.2 Текстовые языки
Свойства текстового вызова определяются в таблице 20. Текстовый вызов состоит из имени вы
зываемого объекта и последующего списка параметров.
В языке ST параметры разделяются запятыми, и этот перечень ограничивается слева и справа
скобками.
Перечень параметров вызова предоставляет фактические значения и может присваивать их соот
ветствующим именам формальных параметров (если они имеются):
- Формальный вызов
Перечень параметров имеет форму набора операторов присваивания фактических значений
формальным параметрам (перечню формальных параметров), то есть:
a) присваивание значений входным и входным-выходным переменным, используя оператор «:=»:
и
b
) присваивание значений выходным переменным, используя оператор «=>».
Перечень формальных параметров может быть полным или неполным. Каждая переменная, кото
рой в перечне на назначено значение, имеет начальное значение, присвоенное в объявлении вызван
ного объекта или неявное значение соответствующего типа данных.
Порядок параметров в перечне не имеет значения. Могут использоваться параметры управления
выполнением EN и ENO.
Пример 1
А:= LIMIT(EN:= COND. IN:= В, MN:=О. МХ:=5, ENO => TEMPL);//полный перечень параметров
A:- LIMIT(IN:=В, MX:- 5);И неполный перечень параметров
- Неформальный вызов
Перечень параметров содержит точно такое число параметров, и точно в том порядке и тех же
типов данных, как задано в определении функции, исключая параметры управления выполнением EN и
ENO.
47