This is topic Выбор из СПАД значение в определенный момент времени in forum SIAD/SQL. Архивирование в TRACE MODE / SIAD/SQL. Data Logging in TRACE MODE at Форум TRACE MODE: техническая поддержка.


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

Posted by Константин Арапов (Участник № / Member № 1998) on :
 
Возможно ли из СПАД выбрать значение соответствующее какому-либо моменту времени,
например 1.09.2006 8:10:15 ?
Если возможно, то какими средствами это можно сделать ?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В разделе "Архивирование" описаны каналы типа CALL, осуществляющие выборки из архивов. В их числе - каналы, осуществляющие выборки на определенный момент времени (выборки типа СРЕЗ).
Кроме того, выборки типа СРЕЗ можно делать в документе с помощью архивной таблицы.
 
Posted by Константин Арапов (Участник № / Member № 1998) on :
 
OK. Использую DataSnap. Значение в данный момент времени взять получилось.
Но это работает очень МЕДЛЕННО. Пробовал уменьшать период и время пересчета - чуть-чуть быстрее, но проблему не решает. Скорость где-то 7 запросов в секунду. Меня это не устраивает. Как заставить работать БЫСТРЕЕ ?
Ведь Вы же говорили, что SIAD 6 - суперскоростная база данных.

У меня сервак CPU 2*3 ГГЦ + 3 ГБ RAM ! И все равно быстрее не получается.
 
Posted by Константин Арапов (Участник № / Member № 1998) on :
 
Не DataSnap, а LocalSnap, извиняюсь...
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В SIAD обеспечивается высокоскоростная запись.
Выборки из архива имеют приоритет ниже, чем все операции реального времени и процедуры записи в архив.
Каждый канал LocalSnap не может осуществлять выборку чаще, чем 3-4 периода его обработки.
Наши эксперименты показывают, что при организации параллельных выборок из архива можно достичь скорости 64 выборки в сек. и более.
При объединении в одной выборке каналов "быстрых" и "медленных" время выборки увеличивается.
 
Posted by Константин Арапов (Участник № / Member № 1998) on :
 
Извиняюсь, бросил заниматься этой темой в свое время... Сейчас опять решил к ней вернуться.

>Наши эксперименты показывают, что при >организации параллельных выборок из архива можно >достичь скорости 64 выборки в сек. и более.

Не могли бы Вы выслать проекты, в которых проводились эти эксперименты ?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Предлагаем дождаться выхода релиза 6.05. Структура архива была несколько оптимизирована.
 
Posted by Константин Арапов (Участник № / Member № 1998) on :
 
quote:
Предлагаем дождаться выхода релиза 6.05. Структура архива была несколько оптимизирована
Правда ? И в чем же эти улучшения, можно полюбопытствовать ?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Например, добавлены некоторые метки, которые позволяют с большей скоростью обрабатывать архивные данные.
 
Posted by Алексей Шелепов (Участник № / Member № 6361) on :
 
Здравствуйте!
Подскажите пожалуйста, если можно поподробней как сделать выборку из СПАД в определенный момент времени.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Надо использовать возможности канала CALL.DifSnap (см. описание этого канала).
 
Posted by Алексей Шелепов (Участник № / Member № 6361) on :
 
Целый день никак не могу победить настройки CALL.DifSnap.
1.в ARG000 вводится время с экрана
2.к ARG001 привязал реал. знач. архивируемого канала
3.с ARG002 считываю значение среза.
4.Параметр=0
5.Во вх.значение CALL.DifSnap посылаю 513.(СПАД=1, Обработка=2)
Подскажите пожалуйста где ошибка.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Из документации:
"Байт 0 значения канала DifSnap задает номер архива, байт 1 – тип обработки, аргументы arg0 и arg1 – времена срезов.
...

Если Параметр = 0 и тип обработки = 2, то последующие аргументы используются группами по 3: к первому привязывается архивируемый канал, во второй записывается срез по этому каналу на время arg0, в третий – срез на время arg1. "

Т.о., должно быть
1.В ARG_000 и ARG_001 вводятся времена с экрана
2.К ARG_002 привязывается реальное значение архивируемого канала.
3.Параметр=0
4.Во вх.значение CALL.DifSnap посылаю 513.(СПАД=1, Обработка=2)
5.С ARG_003 и ARG_004 считываются значения срезов на моменты времени, задаваемые аргументами ARG_000 и ARG_001.
 
Posted by Алексей Шелепов (Участник № / Member № 6361) on :
 
Спасибо, значение стало считываться при вводе значений в архивируемый канал, однако после перезапуска RTM по тем же временным меткам нули. СПАД пишется, на графике архивные значения просматриваются. Подскажите в чем может быть причина?
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Присылайте Ваш проект вместе с папкой узла на адрес техподдержки с указанием методики воспроизведения Вашей ситуации.
 
Posted by Nico (Участник № / Member № 5342) on :
 
в 45 атрибуте канала
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
Выборка из архива по каналам, у которых текущее значение атрибута 45 (времени последнего изменения значения канала) не входит во временной диапазон данных, хранимых в архиве (например, равно 0) не осуществляется.
Задайте архивируемым каналам флаг сохранения в ДАМП и задайте файл дамп. В момент загрузки узла у каналов будут восстановлены метки времени последних изменений и по ним будет осуществляться выборка из архива.
 
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
 
В проекте неверно настроен канал CALL.DifSnap (см. наш пост от 3.10.2014).

Проект откорректирован, в том числе, с учетом предыдущего поста и послан Вам.
 


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



Powered by Infopop Corporation
UBB.classic™ 6.7.2