ISaGRAF. Version 3.4

         

AVERAGE


Аргументы:

RUN                                           BOO     TRUE=запустить/FALSE=сбросить

XIN                                             REAL    любая аналоговая переменная

N                                                INT         количество образцов, заданное

                                                                 приложением

XOUT                                         REAL     среднее значение XIN

Описание:

Запоминает значение на каждом цикле и вычисляет среднее значение всех уже запомненных величин. Запоминает только N последних значений.

Количество образцов не может превосходить 128.

Если команда “RUN” равна FALSE, то значение на выходе равно значению на входе.

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

(*FBD пример блоков “AVERAGE” *)

(* ST Эквивалент: Мы предполагаем, что AVERAGE1 - это экземпляр блока AVERAGE *)

AVERAGE1((auto_mode & store_cmd), sensor_value, 100);

ave_value:= AVERAGE1.XOUT;

(* IL Эквивалент: *)

LD                     auto_mode

AND                  store_cmd

ST                     AVERAGE1.run

LD                     sensor_value

ST                     AVERAGE1.xin

LD                     100

ST                     AVERAGE1.N

CAL                  AVERAGE1

LD                     AVERAGE1.XOUT

ST                     ave_value



Содержание раздела