Создание архива на СПК-207 (часть3)

Пример программы работы с архивом.

Рассмотрим простейшую программу архивирования на СПК 207. Создадим программу инкрементации и декрементации переменных, как показано на рис.1.

Рисунок 1 Программа преобразования переменных для архивации

Для организации данных, записываемых в архив, добавим в программу элемент GetData. Наиболее удобным способом добавления блока является использование инструмента Ассистента ввода, как это показано на рис.2

Рисунок 2 Добавление в проект функционального блока GetData

Для добавленного функционального блока необходимо назначить имя экземпляра, например, data1, как показано на рис.3. После этого экземпляр функционального блока GetData будет добавлен в раздел переменных проекта.

Рисунок 3 Добавление функционального блока GetData в раздел переменных проекта

Для записи сформированного массива данных в архив добавим в проект функциональный блок WriteData. Это можно сделать с помощью ассистента ввода, как показано на рис.4.

Рисунок 4 Добавление в проект функционального блока GetData

Для добавленного экземпляра функционального блока WriteData необходимо назначить имя экземпляра. Пример такого назначения показан на рис.5.

Рисунок 5 Добавление функционального блока GetData в раздел переменных проекта

Создадим архив с именем ar1, размещенный по адресу var/log, в котором будут содержаться данные об изменении переменной ink. Необходимая для этого комбинация входных сигналов приведена на рис.6. Запись производится по переходу в True переменной zap.

Рисунок 6 Организация архивирования переменной Ink в архив с адресом /var/log/

На рис.7 приведен кадр работы программы архивирования после загрузки проекта в СПК 207. После ее остановки можно просмотреть содержимое архива.

Рисунок 7 Кадр работы программы архивирования переменной Ink в архив с адресом /var/log/

Для просмотра архивов на СПК 207 можно использовать бесплатное программное обеспечение WinSCP . Для организации связи окна программы WinSCP необходимо задать настройки связи так, как показано на рис.8. В пункте меню Host name задается IP-адрес СПК, в пункте User name вводится root[1]. В качестве файлового протокола обязательно выбрать SCP.

Рисунок 8 Настройки подключения для связи СПК и WinSCP

Для соединения с СПК 207 нажмите кнопку Login и в появившемся диалоговом окне введите пароль, который был задан в настройках связи (рис.8). После этих действий открывается окно внутренней памяти СПК 207. В этом окне можно выбрать папку var/log, как это показано на рис.9. В этой папке будет размещен архив, созданный в процессе выполнения программы.

Рисунок 9 Размещение архива во внутренней памяти СПК 207

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

Рисунок 10 Окно времени открытия архива

Вид архива представлен на рис.11. Обратите внимание на то, что отображение числовых переменных производится в 16-ричной системе нумерации. Каждая запись в архиве состоит из даты (в формате год: месяц: день), времени (в формате час: мин: сек) и значения переменной ink. В рассмотренном примере производится запись каждый цикл работы СПК с момента включения записи с помощью переменной zap. Допустимо использовать временные задержки для записи переменных в архив.

Рисунок 11 Архив переменной ink

В одном архиве можно хранить значения сразу нескольких переменных разного типа. На рис.12.  приведен пример проекта для архивации 3 переменных – ink и dec типа Word и переменной Stroka типа String. Последняя переменная добавлена в проект с присвоением начального значения var ink,dec’ и используется только в процедуре архивирования. Обратите внимание на то, что для сохранения данных в одном архиве используется для всех 3 переменных один и тот же экземпляр функционального блока GetData с именем data1.

Рисунок 12 Проект архивирования значений 3 переменных

Результатом работы проекта будет создание архива с именем ar13 по адресу var/log, который будет содержать значения 3 переменных. Вид такого архива показан на рис.13.

Рисунок 13 Отображение переменных в архиве (столбцы архива подписаны)

Переменные в архиве размещены в соответствии с очередностью записи в архив: #000 – ink, #001 – dec, #002 – stroka.


[1] Изменение этой настройки и ввод любого другого имени недопустим и приведет к невозможности установления связи СПК и программы WinSCP.