Тренды реального времени. Создание тренда реального времени. Конфигурирование тренда реального времени, страница 6

Примечание. Если печатать тренд с помощью кнопки Print или функции PrintHT(), значения по осям X и Y не выводятся. Чтобы на графике были видны оси X и Y, используйте функции PrintWindow() или PrintScreen().

Расчёт исторических трендов среднего/разброса

График среднего/разброса является одним из трёх возможных видов объектов представления исторических трендов. Если при определении тега в Словаре установить флажок Log Data (регистрировать данные), в режиме исполнения значения этому тегу будут сохраняться в файле исторического архива. Впоследствии сохранённые значения считываются из файла и отображаются в виде графика в окне исторического тренда. Число отображаемых на графике разброса точек определяется темпами изменения значений тега. Диалоговое окно исторического тренда делится на определённое количество сегментов, общее число которых не превышает 2000. Таким образом, общее число отображаемых точек графика также ограничено 2000.

Рассмотрим для примера приложение, в котором регистрация значений должна выполняться ежесекундно в течение одного часа. Поскольку число отображаемых точек не может превышать 2000, этот час фактически будет разбит на 2000 интервалов длительностью 3600/2000=1,8 с каждый. То есть каждая отображаемая точка графика будет соответствовать усреднённому значению тега в течение 1,8 с.

Если значение тега в течение 1,8-секундного интервала изменилось, на графике будет отображено новое усреднённое значение тега, в противном случае график будет выглядеть как прямая линия.

Рассмотрим другой случай, когда временная длительность тренда равна 1 секунде. Так как число точек на графике равно 2000, временной интервал для каждой точки будет иметь длительность в 1/2000=0,0005 с (0,5 мс, которые будут округлены до 1 мс). Таким образом, каждая т очка на графике будет соответствовать значению тега, усреднённому за период в 1 мс.

Если временная длительность исторического тренда меняется объектом типа движковый регулятор, при быстром перемещении движка на экране будет отображаться меньшее число точек, чем при медленном перемещении

Затем нажмите OK для возврата к предыдущему диалогу затем ещё раз OK для выхода в HistoricalTrendChartWizard. Дважды кликните на  TrendZoom/PanPanel. Появится диалог TrendPanelWizard:

Нажмите кнопку Suggest для заполнения полей диалога и нажмите OK.  Убедитесь, что используется именно тэг с именем HistTrend.

Дважды щелкните первый объект TrendPenLegend для перемененой IntTag:

Нажмите кнопку Suggest для ввода переменных. Убедитесь, что используется тэг HistTrend.  В группе Color, выберите зеленый для TrendPen.  Проверьте, что в поле PenNumber введена 1,  остальные поля оставьте без изменений.  Нажмите  OK и дважды щелкните мышью второй TrendPenLegend для переменной RealTag . Выберите красный цвет в TrendPen и PenNumber = 2. Дважды клилните на объекте HistData затем нажмите Suggest для указания переменной в поле HistTrend:

Укажите 50 в поле numberofrecordstowriteperCSVfile(количество записей в файле) и нажмите OK. Дважды щелкните на первом слайдере и в поле Tagnameукажите IntTag:

В поле SlideFaceLabel укажите IntTag и  SlideRange (диапазон изменения)  0 - 500.  Измените FillColor (цвет заполнения) на зеленый,  остальные поля оставьте без изменений и нажмите OK.

Повторите эту процедуру для второго слайдера и тэга RealTag,  указав в поле FillColor красный цвет. Перейдите в WindowViewer и подвигайте движки регулятолров для сохранения значений в фале истории.  (В появившемся приглашении запустить HistData нажмите Yes.)

Нажмите кнопку UpdatetoCurrentTime для обновления тренда. Выделите маркерами (scooters) и нажмитекнопку Zoom для масштабирования.

Создайте кнопку с названием UpdatetoCurrentTime (обновить текущее время) Создайте для нее скрипт «по нажатию» HTUpdateToCurrentTime(“Hist_Tag)”  (данную функцию вы найдете нажав на кнопку All в окне редактирования скрипта) Создайте кнопку с названием HTZoomOut (уменьшить). Для этой кнопки создайте скрипт «по нажатию» следующего вида:

Создайте кнопку с названием HTZoomIn (увеличить). Для этой кнопки создайте скрипт «по нажатию» следующего вида: