Al1
Junior Member / Новичок
Участник № / Member № 2672
отправлено / posted
Здравствуйте! Возникли следущие вопросы: 1. Имеется закон изменения температуры, заданный массивом пар точек (T,t). Как лучше организовать хранение и вывод на график заданного массива. Требуется по этому закону поддерживать температуру и выводить графики с заданной кривой и на одном графике заданная и реальная. 2. Возможно ли в реальном времени выполнять привязку каналов к УСО? В начале работы нужно выбирать к каким каналом будут подключаться УСО.
Сообщения / Posts 18 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
1. Кривую задания можно реализовывать в каком-либо канале с помощью функционального блока FBD "Линейная интерполяция LINTER". А потом вывести на один тренд кривые задания и отклика.
2. Тип канала - связь с определенным типом УСО - должен быть определен в проекте заранее. А конкретную привязку (настройку удаленного адреса - атрибуты 89-98) и состояние (включение и подключение) можно изменять в реальном времени.
Сообщения / Posts 17315 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Al1
Junior Member / Новичок
Участник № / Member № 2672
отправлено / posted
Спасибо за ответ. Со вторым вопросом насчет заполнения атрибутов 89-98 понятно. Состояние(включение и подключение) это 3 и 8 аттрибуты? С первым - данные сохраняю в канале Call с типом вызова TableFunction, далее вывод графиков в динамике тоже понятен, не ясно как вывести график задания на тренд ХY (T,t) сразу, то есть видеть вид кривой. Можно ли из этой таблицы сформировать каналы X, Y для вывода на тренд XY.
Сообщения / Posts 18 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
Состояние(включение и подключение) - это 3 и 8 аттрибуты. О выводе кривой "Задание" на тренд. Есть 2 варианта. 1. Если это действительно "задание" и оно используется в процедуре управления/регулирования через какой-то архивируемый атрибут канала, то можно вывести на график значение этого атрибута как функцию времени и на тот же график вывести реальный параметр. Даже если это "Задание" не иcпользуется в автоматическом процессе управления, можно использовать какой-либо архивируемый свободный атрибут любого канала и вывести на один график вместе с контролируемым параметром. 2. Если существенным является не архивирование "Задания", а сопоставление текущего значения параметра с "Заданием" и возможность "заглянуть в ближайшее будущее", то можно таблицу "Задания" внести в аргументы канала LArc0 и вывести его на тренд вместе с контролируемым параметром.
Al1
Junior Member / Новичок
Участник № / Member № 2672
отправлено / posted
Здравствуйте! Не получается, реализовать пункт 2. Создан канал Larc0(0)c некоторым числом аргументов, аргументы Arg2-Argn привязаны к элементам таблицы. Канал Larc0(вход) привязан к аргументу экрана, этот аргумент к тренду. В профайлере аргументы Arg2-Argn заполнены, а Arg0 и Arg1 равны 0,и на тренд идет 0.
Сообщения / Posts 18 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
По документации для вывода на тренд аргумент кривой тренда надо привязать к АППАРАТНОМУ значению канала LArc0.
Сообщения / Posts 17315 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Al1
Junior Member / Новичок
Участник № / Member № 2672
отправлено / posted
Привязка к аппаратному значению ничего не изменила, все равно 0. Уважаемая техподдержка, нельзя прислать тестовый пример.
Сообщения / Posts 18 | Из / From: Россия
| IP / IP: IP адрес / IP address |
Al1
Junior Member / Новичок
Участник № / Member № 2672
отправлено / posted
Вывод получился, но каждая точка выводится по 2 раза, хотя значение курсора между точками показывает правильное значение. Проект выслан.
Сообщения / Posts 18 | Из / From: Россия
| IP / IP: IP адрес / IP address |
отправлено / posted
"каждая точка выводится по 2 раза": такова технология отрисовки (а не записи), это делатеся для того, что более точно отслеживать изменения значений. Хотя Вы и получили нужные записи, я полагаю, что выбранное Вами решение задачи будет работать только в режиме тренда "Текущие данные". Считывание LArc0 в архивном режиме - это весьма условная эмуляция, т.к. данные из канала LArc0 на самом деле в архив не записываются. При попытке сопоставления этих данных с архивными данными реального процесса могут возникнуть конфликты при отображении кривых. Если Вам необходимо сопоставлять именно архивные данные процесса с неким эталоном, можно рекомендовать следующее. Создать архивируемый канал ЭТАЛОН и записывать по нему ход эталонного процесса. Формирование эталонного процесса в реальном времени можно осуществлять, например, программным путем. Если Вы хотите эталонный процесс ввести в архив "задним числом", взяв данные, например, из БД, лучше использовать для этого канал WRITER, привязанный к тому же каналу ЭТАЛОН.
Сообщения / Posts 17315 | Из / From: Россия
| IP / IP: IP адрес / IP address |