Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » Документирование в TRACE MODE 6 и в T-FACTORY 6 / Document generation in TRACE MODE 6 and T-FACTORY 6 » Документ.Таблица архива.

   
Автор / Author Тема / Topic: Документ.Таблица архива.
tsssm
Junior Member / Новичок
Участник № / Member № 3564


Icon 1 отправлено / posted      Профиль для / Profile for tsssm           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Уважаемая техподдержка!
Из документации: "Если к каналу CALL.Document привязан атрибут 39, EXEC канала CALL.Program, и документ содержит архивную таблицу ... программа отрабатывается после извлечения каждого архивного среза"
Вопрос1: Как передать в программу время, соответствующее текущему архивному срезу?

Вопрос2: Если для таблицы архива включена опция "обработка", как передать программе (и получить) результат обработки?

Вопрос3: Если я не хочу включать в отчет текущий архивный срез, что я должен вернуть из программы?

Сообщения / Posts 13 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
1-2. Передавать в программу можно только аргументы. Эти данные туда передать нельзя.

3. Такой операции тоже произвести нельзя.

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
stepagrus
Forum Haunter / Завсегдатай форума
Участник № / Member № 3589


Icon 1 отправлено / posted      Профиль для / Profile for stepagrus           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Доброе время суток, уважаемая служба техподдержки!

сейчас я выложу свои пожелания об улучшении архивной таблицы.

В опциях архивной таблицы есть такая фича: "Обработка". Если выбрать "всего", то в конце таблицы появится строчка с суммой всех значений каждого столбца. - очень полезная вещь, но этого не достаточно.

поясню: у меня в таблицы (да и не только у меня) есть параметр "температура", "давление", согласитесь, не имеет смысла считать сумму значений температур или давлений:  -


Было бы неплохо добавить опцию "Среднее", - среднее арифметическое всех значений столбца, как на этой картинке  -

Причем, нужно чтобы в таблице можно было выбрать обработку "Всего" и "Среднее" одновременно, то есть чтобы в таблице отображалось две строчки с результатами обработки, рис. 3  -

но чтобы не было глупых значений, типа суммы температур юзер при создании таблицы должен выбрать, какие столбцы должны обрабатываться (рис 4)  -


сейчас пытаемся решить данную задачу при помощи каналов LocalStatistic, но там возникает много накладок  -
заметьте, если вы посчитаете среднее значение того, что есть в таблице, то оно не совпадет с тем, что написано в строчке среднее. Это связано с тем, что в SIAD архиве у канала под одной меткой времени сохранено много повторяющихся значений, в связи с этим Сумма выходила вообще астрономическая))) чтобы посчитать "правильную" сумму пришлось сначала взять среднее значение, а затем умножить его на количество строчек в таблице.... но всё равно получается весьма криво...

что Вы думаете об этом? ))

Сообщения / Posts 136 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
У Вас таблица документа, это всего лишь таблица срезов. И среднее Вы пытаетесь по считать по срезам. Это необъективная информация.

Пример.

Канал меняется раз в полчаса.
1:00 5
1:30 15
2:00 5
2:30 15
3:00 5
3:30 15
4:00 5
4:30 15
5:00 5
5:30 15

Среднее по каналу 10. Но если вы возьмете часовые срезы на 0 минут и на полчаса, то у Вас средние получатся 15 и 5.

Думаю идея ясна.

LocalStatistics дает более объективную информацию.

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
stepagrus
Forum Haunter / Завсегдатай форума
Участник № / Member № 3589


Icon 1 отправлено / posted      Профиль для / Profile for stepagrus           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
здесь другая идея

у меня есть спад архив_1 - в нём лежат среднечасовые значения, считанные с прибора, с оригинальной меткой времени.

13:00 5
14:00 15
15:00 10
16:00 5

Для этих данных у меня специальный отчет со специальной архивной таблицей, у которой шаг равен 1 часу.

но в спад архиве с одной меткой времени несколько значений

13:00 15
13:00 15.87
13:00 15
13:00 15.87
14:00 10
14:00 10.23

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

значения в спад архиве дублируются по нескольким причинам:
во-первых при однократном чтении архивных значений с OPC HDA в архиве получаются такие дубли типа:
13:00 15
13:00 15.83
14:00 10
14:00 10.72

во-вторых: в нашем проекте есть 22 узла, работающих на реальных объектах автоматизации, которые собирают информацию с контроллеров и есть 1 центральный узел - сервер, который собирает информацию от 22 объектов и раздает 6 операторским консолям.

связь между узлами организована по tcp/ip радио каналу prewimax. связь неустойчивая. Сервер забирает данные из спад архивов узлов посредством RemoteSIAD. Т.к. гарантии безпрерывной связи у нас нет, а возможности узнать - удалась ли последняя передача данных SIAD или нет, чтобы потом перезапросить недостающие данные, у нас нет, а если и есть то, подозреваю, это чревато большим геморроем.
приходится запрашивать данные через RemoteSIAD с перекрытиями по времени, от этого некоторые данные опять же дублируются.

так что LocalStatistic конечно правильно считает, но он считает не совсем то

а что вы думаете об усовершенствовании архивной таблицы?

Сообщения / Posts 136 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
В Ваших таблицах нет одинаковых выборок и соответственно нет расхождений. Там где Вы говорите про выборку с помощью LocalStatistics, начальные значения не совпадают со значениями таблиц в документе.
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
stepagrus
Forum Haunter / Завсегдатай форума
Участник № / Member № 3589


Icon 1 отправлено / posted      Профиль для / Profile for stepagrus           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
>В Ваших таблицах нет одинаковых выборок и соответственно нет расхождений.

нет каких расхождений? я эти таблицы нарисовал просто для примера, чтобы объяснить суть высказываний.

>Там где Вы говорите про выборку с помощью LocalStatistics, начальные значения не совпадают со значениями таблиц в документе.

я Вас не понимаю. какие начальные значения? как Вы определили, что они не совпадают?

я просто привожу факт, мне нужна строчка: сумма и среднее в конце архивной таблицы. Localstatistic Здесь не подходит. Если у меня будет 30 столбцов в таблице, то для того, чтобы добавить в таблице эти две строчки с помощью настройки таблицы понадобится 1 минута, а если это делать через localstatistic, то на это уйдет 1 день или больше.

уверен, что эта функция интересует не только меня. если кому то из пользователей Trace Mode тоже нужна такая опция в таблице, пусть отпишутся в этой теме.

повторю вопрос:
1. что Вы считаете насчет реализации в архивной таблице опции - тип обработки "Среднее"?
2. Как можно реализовать с помощью LocalStatisitic аналогичный алгоритм вычисления среднего по срезам?

Сообщения / Posts 136 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
1. У Вас не могут быть разные значения в одной и той же метке через RemoteSIAD.

2. Все выборки будут брать только одно значение в одной метке времени. Поэтому сумма в LocalStatistics будет правильная.

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
stepagrus
Forum Haunter / Завсегдатай форума
Участник № / Member № 3589


Icon 1 отправлено / posted      Профиль для / Profile for stepagrus           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
хорошо. а какое здесь может быть решение?
Сообщения / Posts 136 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Вывести архивную таблицу, а под ней таблицу со значениями из LocalStatistics.
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
stepagrus
Forum Haunter / Завсегдатай форума
Участник № / Member № 3589


Icon 1 отправлено / posted      Профиль для / Profile for stepagrus           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
я сейчас так и делаю. ))
задам вопрос в лоб: как с помощью локалстатистик посчитать среднее и сумму по часовым срезам?

Сообщения / Posts 136 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Вам отправлен пример.
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
stepagrus
Forum Haunter / Завсегдатай форума
Участник № / Member № 3589


Icon 1 отправлено / posted      Профиль для / Profile for stepagrus           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
спасибо, Алексей!
Сообщения / Posts 136 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
stepagrus
Forum Haunter / Завсегдатай форума
Участник № / Member № 3589


Icon 1 отправлено / posted      Профиль для / Profile for stepagrus           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Пример конечно крутой)либо это недокументированная возможность Trace Mode, либо я документацию не внимательно читал. )
Сообщения / Posts 136 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Все сделано с помощью этого механизма

Если к каналу CALL.Document привязан атрибут 39, EXEC канала CALL.Program, и документ содержит архивную таблицу (см. Конфигурирование таблицы архивных значений ), программа отрабатывается после извлечения каждого архивного среза. Для отображения результатов обработки срезов в столбец архивной таблицы нужно поместить выражение <arg>.R, где arg – имя аргумента документа, в который передается результат программы. Передача данных между документом и программой конфигурируется с помощью привязок соответствующих аргументов каналов CALL.Document и CALL.Program.

Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Michurin
Junior Member / Новичок
Участник № / Member № 1015


Icon 1 отправлено / posted      Профиль для / Profile for Michurin           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Можно мне выслать пример, если он соответствует версии ТМ 6.07
Сообщения / Posts 20 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Отправлено
Сообщения / Posts 17083 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
senatorAV
Forum Professor / Завсегдатай форума
Участник № / Member № 3513


Icon 1 отправлено / posted      Профиль для / Profile for senatorAV           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Можно тоже такой пример? Для 6.07. Заранее благодарен.
Сообщения / Posts 155 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


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



Powered by Infopop Corporation
UBB.classic™ 6.7.2