Aрхивирование данных

В ИСР Beremiz имеется возможность архивирования данных пользовательского проекта. Весь процесс создания архивов можно описать в двух шагах:

  • Добавление в структуру проекта «Поддержки Архивов»;

  • Написание программы для архивирования данных.

Добавление в структуру проекта «Поддержки Архивов»

Для добавления в структуру проекта необходимо щелкнуть правой кнопкой мыши в область дерева проекта и нажать «Поддержка Архивов». Далее необходимо подвести курсор к созданной ветке «Поддержка Архивов», щелкнуть левой клавишей мыши и выбрать пункт «Добавить Arch», как показано на рисунке ниже:

_images/ar1.png

Добавление «Поддержки Архивов»

_images/ar2.png

Добавление Arch

Появляется окно добавленного архива с определенными настройками по умолчанию. Область адресов, выделенных регистров для базовых настроек архивирования начинается с 50000. Данные, начинающиеся с адреса 50013 по 50025 (по умолчанию), являются заголовком архива. Туда входят идентификатор, длина заголовка в битах, длина суммы пользовательских данных и заголовка в битах, время, дата в представлении UNIX, флаг и уникальная контрольная сумма архива и его порядковый номер. В опциях они обозначены как arc_header_data.

Примечание

Переменная Arch_save_arc является триггером для записи данных в архив: при изменении из 0 в 1 данные записываются.

_images/ar3.png

Окно данных archive

Имеется возможность поменять адреса данных архива. Данные настройки находятся во вкладке «Config»:

_images/ar4.png

Окно конфигурирования адресов archive

Программа для архивирования данных

Для записи пользовательских данных в архив необходимо написать определенную программу. Для примера возьмем ранее реальзованную программу beremiz_project. Программу напишем на языке ST. На рисунке ниже представлены данные для программы.

_images/ar5.png

Переменные программы archive

В глобальные переменные arc_out1…arc_out3 записываются данные переменных OUT1…OUT3, в arc_res – переменная RES при изменении Arch_0_save_arc с 0 на 1. Локальная булевая переменная arc_save с каждым циклом будет менять свое значение, тем самым меняя значение Arch_0_save_arc. Реализация программы представлена ниже:

_images/ar6.png

Программа archive

Далее необходимо добавить переменные arc_res arc_out1…arc_out3 в окно данных архива. Обратите внимание, в «Polling» автоматически присваивается значение write, а так же присваивается адрес переменной:

_images/ar7.png

Добаленные переменные

После написания программы, необходимо создать задачу для данной программы, указать время цикла. Пользовательские данные будут записываться с циклом в 1 минуту, реализация представлена ниже:

_images/ar8.png

Настройка ресурса программы

После загрузки проекта в ПЛК на WEB-интерфейсе появятся данные об архиве.

_images/archieve1.png

WEB-интерфейс проекта

В WEB-интерфейсе ПЛК BRIC помимо пользовательских переменных предоставлены данные архива. В таблице ниже описана структура архива:

Описание структуры архива

Имя

Тип данных

Описание

archive_read_buffer_0

U8

Данные архива пользовательских переменных и заголовка, представленных в формате U8

CONFIG__ARCH_0_SAVE_ARC

U16

Запись данных в архив

CONFIG__ARCH_0_ARC_FOR_READ

U32

Данные архива из буфера, представленные для чтения

CONFIG__ARCH_0_ID_NUMBER

U16

Уникальный идентификатор архива данных

CONFIG__ARCH_0_BODY_LEN

U16

Размер архива с учетом заголовка и пользовательских данных

CONFIG__ARCH_0_UNIX_TIME_LAST_ARC

U32

Время записи последних данных в архив в формате UNIX

CONFIG__ARCH_0_ARCS_NUMBER

U32

Количество архивов, доступных для чтения

CONFIG__ARCH_0_LAST_READED

U32

Номер последнего прочитанного архива

CONFIG__ARCH_0_FIRST_AVAILABLE

U32

Номер первого архива, доступного для чтения

В ПЛК BRIC с версией OS 0.30.2.5 и выше предоставлена возможность преобразования архивов в нужные типы данных, а также сохранения их в формате txt для дальнейших манипуляций. Для этого необходимо зайти в WEB-интерфейс архива, введя IP-адрес/arc.html.

_images/archieve2.png

WEB-интерфейс архива

В данном окне прописана информация о заголовке архива, а также первый параметр пользовательских данных – в нашем примере это переменная RES. Добавим и остальные переменные с помощью кнопки Add param и преименуя их в OUT1…OUT3. Далее устанавливается тип данных переменной.

_images/archieve3.png

WEB-интерфейс архива с пользовательскими данными

Следующим шагом является выбор номера и диапазона количества архива. Выберем от 0 до 20 архивов, после чего нажимаем кнопку Get arcs. Результат представлен на рисунке ниже:

_images/archieve.png

Результат вывода пользовательских архивных данных

По таблице данных видно, что в момент изменения параметра RES с 0 на 1 все счетчики были сброшены в 0. Имеется возможность сохранить данный архив с помощью кнопки Save to file. Архив будет сохранен в фомате txt по указанному пути.