Операторы определения переменных

<< Click to Display Table of Contents >>

Navigation:  Программирование в MasterSCADA 4D > Редактор ST > Синтаксис Master ST > Операторы Master ST >

Операторы определения переменных

Модификаторы операторов определения переменных

При создании переменных в дереве (см. Операции с переменными) или конфигурировании их в редакторе (см. Редактор переменной) операторы определения переменных добавляются в текст программного компонента автоматически.

Для задания операторов определения переменных вручную может быть использована Легенда. Вкладка 'Заголовок ST' .

Кроме того, операторы определения переменных могут быть заданы вручную непосредственно в тексте программного компонента ST, однако для переменных, объявленных подобным образом, нельзя задать связи.

Определены следующие операторы данного типа:

var

    {определение переменной}

    ...

    {определение переменной}

end_var

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

     var_temp

    {определение переменной}

    ...

    {определение переменной}

end_var

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

      var_input

    {определение переменной}

    ...

    {определение переменной}

end_var

Объявляет аргумент с доступом Input (предназначен для приема значений).

       var_output

    {определение переменной}

    ...

    {определение переменной}

end_var

Объявляет аргумент с доступом Output (предназначен для передачи значения).

         var_inout

    {определение переменной}

    ...

    {определение переменной}

end_var

Объявляет аргумент с доступом InOut (предназначен для передачи и приема значений).

После ключевого слова end_var точка с запятой не обязательна.

Выражение {определение переменной} имеет вид:

{имя переменной}: {тип переменной};

Переменная инициализируется значением по умолчанию для указанного типа (это значение отображается на вкладке Легенда. Вкладка 'Скомпилированный код'):

var aaa: dt; end_var (*aaa=dt#0001-01-01-00:00:00*)

Декларация переменной типа ФБ:

var fbST_1:Локальная.fbST; end_var

При декларации переменной типа ФБ, содержащегося в библиотеке Стандартная, указание библиотеки не обязательно:

var R_TRIG_1:R_TRIG; end_var

Декларация переменной структурного типа:

mSTRUCT:SYSTEM_BOOL_PARAM := (Value := False, TimeStamp := DT#0001-01-01-00:00, Quality := 192);

{имя переменной}: {тип переменной}:={значение};

При инициализации переменной присваивается указанное значение:

var PI:REAL := 3.14159274; end_var

{имя переменной}: array [{размерности массива}] of {тип переменной};

Декларация массива с инициализацией элементов значениями по умолчанию для указанного типа:

var ar1:ARRAY [1..3] OF REAL; end_var

(*ar[1]=ar[2]=ar[3]=0*)

{имя переменной}: array [{размерности массива}] of {тип переменной}:={начальные значения};

Декларация массива с инициализацией элементов указанными значениями:

var ar1:ARRAY[1..2,1..2] OF REAL:=[1,2(2),3]; end_var

(*ar[1,1]=1, ar[1,2]=ar[2,1]=2, ar[2,2]=3*)

Выражения {размерности массива} задаются в виде диапазонов изменения индексов массива, разделенных запятой. Диапазон изменения индексов массива имеет вид

{нижняя граница} .. {верхняя граница}

Выражение {начальные значения} задается в виде строки начальных значений, разделенных запятой, а также может содержать конструкцию

{целочисленная константа} ({значение})

где {целочисленная константа} задает количество элементов, которым присваивается указанное значение.

Модификаторы операторов определения переменных

Определены следующие модификаторы операторов определения переменных:

RETAIN

Используется с операторами VAR, VAR_INPUT или VAR_OUTPUT. Задает сохранение переменной в дамп в энергонезависимой памяти контроллера и восстановление значения переменной из дампа при "холодном" рестарте:

var RETAIN bbb: REAL; end_var

В редакторе переменной модификатору RETAIN соответствует значение Сохранять=Да (см. Редактор переменной.'Сохранять' ).

NON_RETAIN

Используется с операторами VAR, VAR_INPUT или VAR_OUTPUT.

В редакторе переменной модификатору NON_RETAIN соответствует значение Сохранять=Нет (см. Редактор переменной.'Сохранять' ).

CONSTANT

Используется с оператором VAR (кроме объявления переменной типа ФБ). Задает константу (значение константы не может быть изменено):

var CONSTANT PI:REAL := 3.14159274; end_var

В редакторе переменной модификатору CONSTANT соответствует значение Сохранять=Константа (см. Редактор переменной.'Сохранять' ).

NONE

В редакторе переменной модификатору NONE соответствует значение Сохранять=Наследуется (см. Редактор переменной.'Сохранять' ).