This is topic @Data_from_SIAD: ИНТЕРВАЛ ВЫБОРКИ in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.


To visit this topic, use this URL:
http://forum.adastra.ru/ultimatebb.php/ubb/get_topic/f/31/t/001604.html

Posted by Olexander (Участник № / Member № 7774) on :
 
Какие значения нулевого байта, подаваемого в функцию @Data_from_SIAD фрейма, каким значениям интервалов выборки из архива соответствуют?

В руководстве к ТМ 6.10.1 сказано: "Значение (period) нулевого байта переменной задает интервал (T_FROM, T_TO)", - и далее никаких ссылок. В руководстве к ТМ 6.06 идет отсылка: (аргумент TYPE – см. Интервал выборки из архива). Пробовал брать оттуда - ничего не выходит. Пробовал брать соответствия для T_FROM, T_TO из параграфа Выборка и обработка данных SIAD / Временной интервал выборки - также тщетно.

Эмпирически установлены следующие соответствия:
16#XX00 - возвращаются все записи из архива,
16#XX01 - возвращаются все записи из архива до начала текущего часа,
16#XX02, 16#XX03 - то же, что и для 16#XX01,
16#XX31 - возвращаются все записи из архива до какого-то времени (это время пока не установлено ввиду дискретности заполнения имеющегося архива).

В целом поступил следующим образом. Создал в слое "Источники/приемники" переменную @Data_from_SIAD. Методом D&D в слое "Система" создал одноименный канал класса Float типа Output, привязанный к данной переменной. В атрибут (2, In) "Входное значение" этого канала периодически подаю фрейм типа 16#06XX. Функция отрабатывается, ее значение автоматически сбрасывается в "0", и в папке узла создается файл @Data_from_SIAD_1_1.txt. (Хотя в рук-ве написано, что при подаче в бит 3 2#0110=16#6 такой файл должен быть создан отдельно по каждому каналу, но это даже лучше.) Теперь стоит задача экспортировать в этот файл не весь архив, как происходит сейчас, а за определенный промежуток времени, завязанный на текущем времени: за последний час, за последние сутки, за предыдущий день (предпочтительнее). Настроив соответствующим образом периодичность подачи команды на экспорт, в итоге нужно добиться того, чтобы в файл @Data_from_SIAD_1_1.txt порционно дублировался весь архив, но без повторений. Для этого-то и необходимо знать, что именно подавать в нулевой байт фрейма.

Очень признателен за любую помощь.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Описанный Вами механизм экспорта архивных данных устарел. Жесткий в настройках, узкий функционально, весьма ресурсоемкий.

Данные из архива SIAD/SQL 6 могут быть легко конвертированы в распространенные форматы, такие как TXT, HTML и XML как полностью, так и за заданные интервалы.

Актуальный механизм представлен в видео-уроке на странице http://www.adastra.ru/products/overview/database/
 
Posted by Olexander (Участник № / Member № 7774) on :
 
Я понимаю, что вы не очень жалуете данную системную переменную. Но тем не менее она не исключена из ИС и описана в руководстве, а значит, должна работать.

Представленный видеоурок изучен мною хорошо. И механизм с использованием @Data_from_SIAD выбран осознанно. Привлекает в этой функции следующее:

- она заведомо работает по всем архивируемым каналам: это как раз и нужно. Для CALL-канала с типом вызова ROOT, насколько я понимаю, пришлось бы связывать все архивируемые каналы с его аргументами вручную;

- предопределено имя файла для экспорта и оно не зависит от даты и времени. Это важно для последующего извлечения данных сторонними приложениями;

- данные в файле представлены в виде
<Базовое имя канала> <дата> <время> <действ. значение>. Т.е. базовое имя фигурирует в каждой строке, что мне очень удобно;

Как бы то ни было, сейчас необходимо получить рабочее решение именно с @Data_from_SIAD. SCADA вводится в опытную эксплуатацию. Прямого доступа к ней я не имею. Реализован экспорт средствами @Data_from_SIAD. Единственная реальная перспектива - это подправить нулевой байт фрейма, отсылаемого в @Data_from_SIAD и соответственно ему задать периодичность экспорта. Скажите, пожалуйста, есть ли расшифровка для значений этого байта интервала выборки? Мне нужна таблица типа

0 - данные из всего архива,
1 - данные до начала тек. часа,
20 - данные за последние сутки...

Или сейчас фактически эта системная переменная не функционирует адекватно? Спасибо.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В ранних релизах Эта функция поддерживалась. Однако, в силу указанных выше недостатков практики использования этого механизма в реальных проектах не было.

Начиная с релиза 6.09, в системе были разработаны и активно используются в реальных проектах новые эффективные механизмы экспорта архивных данных.
Иллюстрация этих функций приведена в упомянутом видео-уроке.

Одновременно были модифицированы и усовершенствованы все остальные функции выборок и обработки данных из архивов.
Устаревшие механизмы были удалены.

По недоразумению в документации не была введена адекватная корректировка описания системной переменной @Data_from_SIAD.

Приносим извинения за доставленное неудобство.
 


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2