5.1.3.1 Настройка архивации
Архивация переменной настраивается за 4 шага:
-
Для начала архивации переменной перейдите в редактор словаря и поставьте галочку у атрибута «Архивация». Без активации данного атрибута дальнейшая настройка архивации не имеет смысла.

-
Обязательно задайте в атрибуте «Количество записей» размер буфера архивации, то есть максимальное количество сохраняемых в буфере значений. После полного заполнения буфера архивации, для архивации каждого нового значения переменной, из буфера удаляется самая старая запись.

-
Укажите в атрибуте «Фильтр по времени» минимальный период времени в секундах, в течение которого значение переменной не будет сохраняться в буфер архивации. Например, при заданном периоде в 10 секунд значение переменной будет сохраняться в буфер архивации не чаще, чем один раз в 10 секунд.Если по истечении заданного периода значение переменной изменено, оно сразу будет сохранено в архив, иначе сохранение произойдет только после изменения переменной. При нулевой фильтрации значение переменной сохраняется в архив при каждом изменении.

-
Если настраивается архивация целых или вещественных значений, может быть задан атрибут «Фильтр по значению», который позволяет не сохранять в буфер архивации незначительные изменения переменной. При нулевой фильтрации значение переменной архивируется при каждом изменении.Например, если последнее архивированное значение переменной X=5.505 и фильтр по значению 0.01, то значения в диапазоне 5.495 < X < 5.515 будут игнорироваться, а любое значение X<=5.495 или X>=5.515 будет архивировано.

Если в процессе выполнения технологического приложения текущее значение архивируемой переменной отличается от последнего сохраненного, то запускается последовательная проверка двух заданных условий архивации:
-
Если разность по модулю между текущим и последним сохраненным значением переменной больше фильтра по значению, то проверяется фильтр по времени, иначе изменения игнорируются.
-
Если с момента прошлого сохранения переменной истек период, заданный в фильтре по времени, то значение сохраняется в буфере архивации, иначе изменения игнорируются.Запись значений переменных в архив выполняется на границе циклов контроллера. Если переменная меняет свое значение несколько раз за цикл, и каждое значение должно быть записано в архив, необходимо использовать системный функциональный блок HDA_WRITE_VAR, его подробное описание в документе «Unimod PRO 2. Руководство по программированию».
