Страница 1 из 2

History trend в InTouch

СообщениеДобавлено: Пт ноя 02, 2007 5:03 pm
yuliya
Я создала history trend прописала одну переменную. Перед этим включила у этой переменной log data. И включила вообще архивирование данных. Но в runtime history trend пустой :(

СообщениеДобавлено: Пн ноя 05, 2007 2:48 pm
Admin
Во-первых, с объектом Hist Trend with Scooter and Scale следует связывать только локальные тэги. Объект состоит из области самого
графика, а также из панели управления.
Во вторых, при настройке архивирования данных Вы указывали путь к архивному файлу. Убедитесь, что этот файл существует. C помощью утилиты HistDataWizard можно также преобразовать архивные данные в формат .csv

СообщениеДобавлено: Ср фев 16, 2011 12:59 am
Spaun
День добрый.
Чтобы убрать перо с окна тренда, используется
A_nalogTag.Name = "" ;
Trend1.Pen1 = A_nalogTag.TagID ;"

Вопрос: как это-же осуществить через HTSetPenName()?
(что-то никак не выходит :? )

СообщениеДобавлено: Ср фев 16, 2011 6:17 am
Klinkmann_Msk
Spaun писал(а):День добрый.
Чтобы убрать перо с окна тренда, используется
A_nalogTag.Name = "" ;
Trend1.Pen1 = A_nalogTag.TagID ;"

Вопрос: как это-же осуществить через HTSetPenName()?
(что-то никак не выходит :? )

Всё по хелпу ;)
HistTrend1.Pen1=None;
где None=TagType=TagID

СообщениеДобавлено: Ср фев 16, 2011 11:21 am
Spaun
Через TagID как раз всё и работает.
Хочется это осуществить через функцию HTSetPenName()
что-то типа этого:
HTSetPenName("Trend1",1,"None"); - не работает

СообщениеДобавлено: Ср фев 16, 2011 1:04 pm
Klinkmann_Msk
Spaun писал(а):Через TagID как раз всё и работает.
Хочется это осуществить через функцию HTSetPenName()
что-то типа этого:
HTSetPenName("Trend1",1,"None"); - не работает

Да и не должна работать.
Работает только с тегами, для которых включена опция Log Data. Пустышку в неё не передать.

СообщениеДобавлено: Ср мар 23, 2011 12:06 pm
ingram
Klinkmann_Msk писал(а):
Spaun писал(а):Через TagID как раз всё и работает.
Хочется это осуществить через функцию HTSetPenName()
что-то типа этого:
HTSetPenName("Trend1",1,"None"); - не работает

Да и не должна работать.
Работает только с тегами, для которых включена опция Log Data. Пустышку в неё не передать.



Вот у меня пример убирает и ставит теги
IF Real_Trend.Pen1 == Qmom.TagID OR Real_Trend2.Pen1 == Qmom.TagID OR Real_Trend3.Pen1 == Qmom.TagID THEN
Real_Trend.Pen1 = None;
Real_Trend2.Pen1 = None;
Real_Trend3.Pen1 = None;
ELSE
Real_Trend.Name = Qmom.Comment;
Real_Trend.Pen1 = Qmom.TagID;

Real_Trend.Name = Qmom.Comment;
Real_Trend2.Pen1 = Qmom.TagID;

Real_Trend.Name = Qmom.Comment;
Real_Trend3.Pen1 = Qmom.TagID;
ENDIF;

СообщениеДобавлено: Чт мар 24, 2011 6:43 am
Генератор зла
ingram писал(а):Вот у меня пример убирает и ставит теги
IF Real_Trend.Pen1 == Qmom.TagID OR Real_Trend2.Pen1 == Qmom.TagID OR Real_Trend3.Pen1 == Qmom.TagID THEN
Real_Trend.Pen1 = None;
Real_Trend2.Pen1 = None;
Real_Trend3.Pen1 = None;
ELSE
Real_Trend.Name = Qmom.Comment;
Real_Trend.Pen1 = Qmom.TagID;

Real_Trend.Name = Qmom.Comment;
Real_Trend2.Pen1 = Qmom.TagID;

Real_Trend.Name = Qmom.Comment;
Real_Trend3.Pen1 = Qmom.TagID;
ENDIF;

Всё это карашо. Только вот...
Название топика "History Trend в InTouch"

СообщениеДобавлено: Чт мар 24, 2011 8:02 am
ingram
Генератор зла писал(а):
ingram писал(а):Вот у меня пример убирает и ставит теги
IF Real_Trend.Pen1 == Qmom.TagID OR Real_Trend2.Pen1 == Qmom.TagID OR Real_Trend3.Pen1 == Qmom.TagID THEN
Real_Trend.Pen1 = None;
Real_Trend2.Pen1 = None;
Real_Trend3.Pen1 = None;
ELSE
Real_Trend.Name = Qmom.Comment;
Real_Trend.Pen1 = Qmom.TagID;

Real_Trend.Name = Qmom.Comment;
Real_Trend2.Pen1 = Qmom.TagID;

Real_Trend.Name = Qmom.Comment;
Real_Trend3.Pen1 = Qmom.TagID;
ENDIF;

Всё это карашо. Только вот...
Название топика "History Trend в InTouch"



Real_trend это HistTrend просто я так имя задал

СообщениеДобавлено: Чт мар 24, 2011 12:04 pm
Spaun
Ну да, тоже через TagID делаете.
Просто в этом случае не получается изменять номер пера извне.
Нужно его заранее в скрипте прописывать (.Pen1 .Pen2 и т.д.).

СообщениеДобавлено: Сб апр 16, 2011 2:11 am
VoFFka
Spaun писал(а):Ну да, тоже через TagID делаете.
Просто в этом случае не получается изменять номер пера извне.
Нужно его заранее в скрипте прописывать (.Pen1 .Pen2 и т.д.).



HTSetPenName( HistTrend.Name, 1, " ... unassigned ... ");

Вот так должно работать...... :D

СообщениеДобавлено: Сб апр 16, 2011 3:00 pm
Spaun
:P
Спасибо за нестандартное мышление!!! Работает!
а я этой строчке в кофигураторе трендов и внимания-то не уделял.

Re: History trend в InTouch

СообщениеДобавлено: Пт июн 03, 2011 1:23 pm
pixel058
Здравствуйте!

Беспокоит следующая проблема:
При открытии графика, или при смене PEN, происходит изменение значений слева. Программа сама выбирает минимальное и максимальное значение и получается, что даже если величина колеблется немного, то её значения растягиваются на весь экран, что неудобно. Также не получается сравнивать несколько величин, так как у каждой своя шкала.

Можно ли отключить автошкалирование, чтобы значения отображались от Min EU ... Max EU.
Разбил кнопки по элементам, там при нажатии на кнопку графика скрипт While Down

HTGetAutoScaleValue(pen.Name, Hist_Trend.UpdateCount,Pen_scale,5,"AutoScaleMin")

Нигде не нашёл, что это за функция. Кажется, тут надо что-то поменять.
Спасибо!
В надежде на Вашу помощь,
С уважением, Алексей Щеглаков.

Re: History trend в InTouch

СообщениеДобавлено: Пт июн 03, 2011 2:01 pm
Генератор зла
Используйте вместо стандартного HT с панели инструментов Hist Trend w/Scooters and Scale из Wizards. В нём как раз и настраивается отображение значений в диапазоте 0-100% от EU (по умолчанию), в отличие от стандартного компонента, в котором диапазон = Min-Max.

Re: History trend в InTouch

СообщениеДобавлено: Пт июн 03, 2011 2:45 pm
pixel058
Извините, я не уточнил версию. Установлена InTouch 8.0
Там тоже есть такой Визард?

Re: History trend в InTouch

СообщениеДобавлено: Пт июн 03, 2011 2:49 pm
Генератор зла
Должен быть. В разделе Trends.
Проверять (инсталлировать старую версию), извините, лениво.

Re: History trend в InTouch

СообщениеДобавлено: Пт июн 03, 2011 7:40 pm
pixel058
Спасибо! Попробую

Re: History trend в InTouch

СообщениеДобавлено: Вт фев 28, 2012 3:26 pm
niki
Добрые люди, подскажите с трендами!

с чего начать для отображения архивных данных, как я понимаю надо использовать historical trend chart wizard.
а далее какие действия?

я выбираю в поле hist trend : HistTrend
в поле pen scale : histtrendpenscale
кликаю на pens , но там ничего не активно

что я делаю неправильно?

Re: History trend в InTouch

СообщениеДобавлено: Вт фев 28, 2012 3:30 pm
niki
сейчас все активно, но как добавить теги?

Re: History trend в InTouch

СообщениеДобавлено: Вт фев 28, 2012 8:53 pm
Генератор зла
Добавляются лишь те теги, у которых установлено Log Data в Tagname Dictionary.
В Configure - Historical Logging необходимо поставить Enable Historical Logging
niki писал(а):но там ничего не активно

Необходимо закрыть Window Viewer

Re: History trend в InTouch

СообщениеДобавлено: Вт фев 28, 2012 11:12 pm
niki
Добавляются лишь те теги, у которых установлено Log Data в Tagname Dictionary.

поставил галочку Log Data
затем
В Configure - Historical Logging необходимо поставить Enable Historical Logging

поставил Enable Historical Logging, далее кликаю на энтер и появляется ошибка :( черт побери

Re: History trend в InTouch

СообщениеДобавлено: Ср фев 29, 2012 10:54 am
Генератор зла
Вполне нормальная ошибка. Сделайте что от Вас требуют.

Re: History trend в InTouch

СообщениеДобавлено: Ср фев 29, 2012 9:36 pm
niki
Вполне нормальная ошибка. Сделайте что от Вас требуют.

не хочу показаться идиотом :) но что надо сделать? понимаю говорят о том, что количество используемых символов более 50, а как их уменьшить?

Re: History trend в InTouch

СообщениеДобавлено: Ср фев 29, 2012 10:14 pm
Генератор зла
Это же очевидно :)
niki писал(а):поставил Enable Historical Logging, далее кликаю на энтер и появляется ошибка

Значит, именно в этом окне и зарыта собака. Там есть помимо галочки "Enable..." поле для ввода пути, по которому будут сохраняться файлы истории. И этот путь не может быть длиннее 55 символов.

Select the location of the folder to save log files.
The Historical Logging Properties dialog box includes two options to set the folder location to store the log files.
Note The folder path and the name of the file to store log data can be a maximum of 55 characters.
Select Store Log Files in Application Directory to save the log files in the same folder as the InTouch application creating the logged data.
Select Store Log Files in specific Directory to specify another folder to store log files. You can specify the folder to store log files as:
Windows folder path such as C:\History Log Files

Странно, в хелпе всё есть, но Вам лениво в него заглянуть...

Re: History trend в InTouch

СообщениеДобавлено: Чт мар 01, 2012 11:19 pm
niki
Странно, в хелпе всё есть, но Вам лениво в него заглянуть...

просто на форуме все намного доступнее и читабильней.

и если можно давайте попробуем начать сначала:
1)сначала нужно создать тег и, как я понимаю он должен быть Memory real/integer(посмотрел из примера)
2) а где указывать ссылку на этот тег, т.е. напрмер когда я создаю I/O real в поле Item я указываю название тега из Archestra a.FSGateway.2
а в Memory real/integer поля Item я не нашел
3) поля Deadband и Log deadband они тоже как-то играют роль?каким образом их настраивать???

Re: History trend в InTouch

СообщениеДобавлено: Чт мар 01, 2012 11:45 pm
Генератор зла
niki писал(а):просто на форуме все намного доступнее и читабильней.

Феноменально! Давайте запостим на форум все мануалы? :)
niki писал(а):и если можно давайте попробуем начать сначала

Let's try.
niki писал(а):1)сначала нужно создать тег и, как я понимаю он должен быть Memory real/integer(посмотрел из примера)

Можно и так.
niki писал(а):2) а где указывать ссылку на этот тег, т.е. напрмер когда я создаю I/O real в поле Item я указываю название тега из Archestra a.FSGateway.2
а в Memory real/integer поля Item я не нашел

Вы не против, если я поленюсь приводить цитаты из хелпа и посоветую Вам в нём почитать отличие I/O тегов от Memory?
niki писал(а):поля Deadband и Log deadband они тоже как-то играют роль?каким образом их настраивать???

Log Deadband = 10 будет логировать изменения >= 10. Подробности - ... в хелпе :)

Без обид, но моё имхо, что форум не подходит для обучения продукту.

Re: History trend в InTouch

СообщениеДобавлено: Ср апр 25, 2012 1:19 pm
fatman
Добрый день.
у меня такой вот вопрос по тренду. У меня есть попап-окно управления конвейером. его состояния описываются indirect тегами, которые принимают значения тегов того объекта, по которому кликнул оператор, то есть конвейера. Там же и токи приводов. Все они члены единого супертега, но это не суть важно. Далее хотелось бы вызвать тренд с отображением токовой диаграммы. Вот только такая штука - не принимает тренд назначения перьев на косвенные теги.
Скрипт вызова выглядит примерно так:
Код: Выделить всё
 Conveyor_Motor1Current.Name =  Conveyor_Name + "\Motor1Current";
 HTSetPenName("DriveCurrentTrend ",1,"Conveyor_Motor1Current");

где Conveyor_Motor1Current - это indirect аnalog, а Conveyor_Name + "\Motor1Current" для каждого конвейера - это I/O real со включенной Log Data.
Само собой, если назначит перу напрямую некий тег - оно начинает его рисовать, но как передать ему значение скриптом через косвенную адресацию? Есть способ хоть какой-то?
объект "RealTime Trend" умеет адаптироваться под indirect, но он мне не совсем подходит в силу отсутствия в нем именно истории

Re: History trend в InTouch

СообщениеДобавлено: Ср апр 25, 2012 2:51 pm
Spaun
HTSetPenName("DriveCurrentTrend ",1,"Conveyor_Motor1Current");

Conveyor_Motor1Current - без кавычек попробуйте.

Re: History trend в InTouch

СообщениеДобавлено: Ср апр 25, 2012 3:20 pm
fatman
нт, там должны быть кавычки. параметр, передаваемый в функцию, строкового типа, а если убрать кавычки - то тип получится TagID. Соотвественно несоотвествие параметров, о чем собственно и сообщить валидатор скрипта прямо в дезайн-тайм

Re: History trend в InTouch

СообщениеДобавлено: Ср апр 25, 2012 3:45 pm
LexSL
Я так понял Conveyor_Motor1Current - это indirect tag.

вот только что попробовал - работает:
Код: Выделить всё
IndirTag.Name =  real1.Name;
HTSetPenName("HistTrend ",1,IndirTag.Name);