This is topic вывод графика массива in forum TRACE MODE 6 бесплатная Базовая версия / TRACE MODE 6 free Base version at Форум TRACE MODE: техническая поддержка.
Здравствуйте! Возникли следущие вопросы: 1. Имеется закон изменения температуры, заданный массивом пар точек (T,t). Как лучше организовать хранение и вывод на график заданного массива. Требуется по этому закону поддерживать температуру и выводить графики с заданной кривой и на одном графике заданная и реальная. 2. Возможно ли в реальном времени выполнять привязку каналов к УСО? В начале работы нужно выбирать к каким каналом будут подключаться УСО.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
1. Кривую задания можно реализовывать в каком-либо канале с помощью функционального блока FBD "Линейная интерполяция LINTER". А потом вывести на один тренд кривые задания и отклика.
2. Тип канала - связь с определенным типом УСО - должен быть определен в проекте заранее. А конкретную привязку (настройку удаленного адреса - атрибуты 89-98) и состояние (включение и подключение) можно изменять в реальном времени.
Posted by Al1 (Участник № / Member № 2672) on :
Спасибо за ответ. Со вторым вопросом насчет заполнения атрибутов 89-98 понятно. Состояние(включение и подключение) это 3 и 8 аттрибуты? С первым - данные сохраняю в канале Call с типом вызова TableFunction, далее вывод графиков в динамике тоже понятен, не ясно как вывести график задания на тренд ХY (T,t) сразу, то есть видеть вид кривой. Можно ли из этой таблицы сформировать каналы X, Y для вывода на тренд XY.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Состояние(включение и подключение) - это 3 и 8 аттрибуты. О выводе кривой "Задание" на тренд. Есть 2 варианта. 1. Если это действительно "задание" и оно используется в процедуре управления/регулирования через какой-то архивируемый атрибут канала, то можно вывести на график значение этого атрибута как функцию времени и на тот же график вывести реальный параметр. Даже если это "Задание" не иcпользуется в автоматическом процессе управления, можно использовать какой-либо архивируемый свободный атрибут любого канала и вывести на один график вместе с контролируемым параметром. 2. Если существенным является не архивирование "Задания", а сопоставление текущего значения параметра с "Заданием" и возможность "заглянуть в ближайшее будущее", то можно таблицу "Задания" внести в аргументы канала LArc0 и вывести его на тренд вместе с контролируемым параметром.
В обоих вариантах в качестве тренда можно использовать и "Тренд XY".
Posted by Al1 (Участник № / Member № 2672) on :
Здравствуйте! Не получается, реализовать пункт 2. Создан канал Larc0(0)c некоторым числом аргументов, аргументы Arg2-Argn привязаны к элементам таблицы. Канал Larc0(вход) привязан к аргументу экрана, этот аргумент к тренду. В профайлере аргументы Arg2-Argn заполнены, а Arg0 и Arg1 равны 0,и на тренд идет 0.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
По документации для вывода на тренд аргумент кривой тренда надо привязать к АППАРАТНОМУ значению канала LArc0.
Posted by Al1 (Участник № / Member № 2672) on :
Привязка к аппаратному значению ничего не изменила, все равно 0. Уважаемая техподдержка, нельзя прислать тестовый пример.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Давайте наоборот - пришлите нам свой проект.
Posted by Al1 (Участник № / Member № 2672) on :
Вывод получился, но каждая точка выводится по 2 раза, хотя значение курсора между точками показывает правильное значение. Проект выслан.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
"каждая точка выводится по 2 раза": такова технология отрисовки (а не записи), это делатеся для того, что более точно отслеживать изменения значений. Хотя Вы и получили нужные записи, я полагаю, что выбранное Вами решение задачи будет работать только в режиме тренда "Текущие данные". Считывание LArc0 в архивном режиме - это весьма условная эмуляция, т.к. данные из канала LArc0 на самом деле в архив не записываются. При попытке сопоставления этих данных с архивными данными реального процесса могут возникнуть конфликты при отображении кривых. Если Вам необходимо сопоставлять именно архивные данные процесса с неким эталоном, можно рекомендовать следующее. Создать архивируемый канал ЭТАЛОН и записывать по нему ход эталонного процесса. Формирование эталонного процесса в реальном времени можно осуществлять, например, программным путем. Если Вы хотите эталонный процесс ввести в архив "задним числом", взяв данные, например, из БД, лучше использовать для этого канал WRITER, привязанный к тому же каналу ЭТАЛОН.