График — компонент. Предназначен для отображения массивов данных в виде графика. В отличие от компонента Многоканальный осциллограф, который предназначен для отображения формы сигнала и работает с измерительными каналами, компонент. Один компонент может использоваться для отображения нескольких графиков (размер массивов должен совпадать).
Входные
• {Y} — получение массива данных, отображаемых на графике по оси Y. Компонент позволяет отображать несколько графиков в одних осях. Интерфейс контакта — "Численный массив". Наиболее часто подключаемые компоненты — компоненты анализа (Узкополосный спектр, Долеоктавный спектр).
• {X} — данные, отображаемые по оси X. Контакт не поддерживает множественное соединение. Интерфейс контакта — "Численный массив".
• Курсор — определяет положение курсора на графике.
• Синхро — импульс для обновления графика. Интерфейс контакта — логическое значение (0/1).
• Сброс — импульс для очистки поля графика. Интерфейс контакта — логическое значение (0/1) .
• Запись — импульс для записи отображаемых данных в файл.
Выходные
• Курсор — позволяет сохранять положение курсора на графике;
• XStart — позволяет сохранять начало отображения по оси X;
• XFinish — позволяет сохранять конец отображения по оси X.
Для отображения данных важно, чтобы у компонента, с которого поступает массив, был идентификатор (общее свойство m_sHelpString). Идентификаторы компонентов, поключаемых ко входам "Y" и "X", используются как название графика или оси X и отображаются в легенде графика. Если у компонента, с которого поступают данные, нет идентификатора, то данные не будут отображены на графике. При получении нескольких массивов с одного компонента идентификаторы указываются через точку с запятой. Идентификаторы задаются в порядке выходных контактов.
Общие свойства (окружение)
• Приведены по данной ссылке.
Частные свойства (в скобках значение, установленное по умолчанию):
• XAutoscale (true) — включение/выключение автомасштабирования по оси X.
• YAutoscale (true) — включение/выключение автомасштабирования по оси Y.
• xystate (y(n)) — режим отображения графиков: График в полярных координатах
• y(n) — массив данных, пришедших на вход "Y" будет отображен по оси Y, при этом по оси Х будут отображаться номера элементов массива
• y(x) — равномерно. Отображение по оси Y массива данных, пришедших на вход "Y", по оси Х — массива данных, пришедших на вход "X". Также используется для отображения данных, имеющих неравномерное распределение значений — при этом требуется указать тип развертки..
• y(t) — длительно.
• y(x) — реально.
• XString — установка единицы измерения по оси X.
• YString — установка единицы измерения по оси Y.
• Referense (0.001) — значение для установки расчета уровней в дБ.
• Ystart (0) — начало отображения по оси Y.
• Yfinish (1) — конец отображения по оси Y.
• FileName — установка имени и расположения файла, в котором данные будут сохранены в виде отдельного файла.
• xprecision (0.01) — точность отображения значений по оси X.
• yprecision (0.01) — точность отображения значений по оси Y.
• LineWidth (1) — установка толщины линии графика.
• BackColor (ece9d8) — цвет заднего фона.
• GridColor (c0c000) — цвет координатной сетки.
• typeline (Горизонтальные) — тип линии графика:
• Горизонтальные.
• Ломанные.
• typeyaxis (Равномерная) — развёртка вертикальной шкалы:
• Равномерная.
• Логарифмическая.
• Децибельная.
• typexaxis (Равномерная) — развёртка горизонтальной шкалы:
• Равномерная.
• Логарифмическая.
• Децибельная.
• ColorAdjustment (False) — разрешение настройки цветов графика:
• true — разрешить настройку цветов графика.
• false — не разрешить настройку цветов графика.
• GraphColors(128;32768;8388608;255;65280;16711680;8388672;8421376;8388736;12615680;16384;16711935;16711808;16744576;16744448;8421440;8388863; 64;64;16744576;8421631;10485760;4194304;16744703;9125927;52582;6513646;2500301;3355597;17803;7737549;7877325;9127773; 16760576;10156544;2263842;2237106;9639167;13828244;9109504;13487360;52582;9639167;15597806;16724123;5197647;8983278; 9109504;9145088;35653;13434880;25600;8721863;3107669;5197615;14053594;13459258;3816075;9109643;550283;) — цвета графиков:
• Xstart (False) — начало отображения по оси X.
• Xfinish (False) — конец отображения по оси X.
Вопрос. Программа не записывает данные в массив и не передает данные на график.(Более полный вопрос и ответ находится в компоненте "Программирование компонента")
Ответ. У компонента "График" есть свойство "xystate", которое отвечает за вид осей графика. В выбранном вами варианте "y(n)" графику безразличен массив на входном контакте "X" и он строит новый график по мере получения массивов по контакту "Y". Важно помнить, чтобы поле "m_sHelpString" было не пустым, так как по строке в этом поле задаётся имя графика в легенде, а нет имени - нет и графика. Чтобы показывать ось X в виде даты необходимо выбрать вариант "y(x) - реально".
При использовании компонента в сценарии и программируемом компоненте (скрипте) необходимо учитывать диапазоны значений подаваемых на входные ножки компонента, диапазоны значений свойств компонента, а также диапазоны значений параметров методов компонента.
Входные
• {Y} — входной числовой массив со значениями, которые будут отображены по оси ординат (любое число).
• {X} — входной числовой массив со значениями, которые будут отображены по оси абсцисс (любое число).
• Курсор — устанавливается положение курсора на графике.
Общие свойства (окружение)
• Приведены по данной ссылке.
Частные свойства (в скобках значение, установленное по умолчанию):
• VARIANT_BOOL XAutoscale — установка и чтение автомасштаба по оси X:
• true — Автомасштаб по оси X включен;
• false — Автомасштаб по оси X выключен.
• VARIANT_BOOL YAutoscale — установка и чтение автомасштаба по оси Y:
• true — Автомасштаб по оси Y включен;
• false — Автомасштаб по оси Y выключен.
• BSTR XYState — установка и чтение режима отображения графиков: y(n); y(x) — равномерно; y(t) — длительно; y(x) — реально (строка).
• BSTR XString — установка и чтение единицы измерения по оси X (строка).
• BSTR YString — установка и чтение единицы измерения по оси Y (строка).
• FLOAT Referense — установка и чтение значения для расчета уровней в дБ (любое значение).
• FLOAT Ystart — установка и чтение начала отображения по оси Y (любое значение).
• FLOAT Yfinish — установка и чтение конца отображения по оси Y (любое значение).
• BSTR FileName — установка и чтение имени файла для записи результатов в файл формата *.dtu (после задания этого параметра происходит запись в указанный файл).
• BSTR XPrecision — установка и чтение точности отображения по оси Х: 1; 0.1; 0.01; 0.001; 0.0001; 0.00001; 0.000001 (строка).
• BSTR YPrecision — установка и чтение точности отображения по оси Y: 1; 0.1; 0.01; 0.001; 0.0001; 0.00001; 0.000001 (строка).
• LONG LineWidth — установка и чтение толщины всех линий графика (число).
• LONG BackColor — установка и чтение цвета заднего фона (число).
• LONG GridColor — установка и чтение цвета координатной сетки (число).
• BSTR TypeLine — установка и чтение типа линий графика: Горизонтальные; Ломаные (строка).
• BSTR TypeYAxis — установка и чтение развёртки вертикальной шкалы: Равномерная; Логарифмическая; Децибельная (строка).
• BSTR TypeXAxis — установка и чтение развёртки горизонтальной шкалы: Равномерная; Логарифмическая; Долеоктавная (строка).
• VARIANT_BOOL ColorAdjustment — установка и чтение разрешения настройки цветов графика:
• true — Разрешение настройки цветов графика включено;
• false — Разрешение настройки цветов графика выключено.
• BSTR GraphColors — установка и чтение цвета графиков (строка).
• FLOAT Xstart — установка и чтение начала отображения по оси X (число).
• FLOAT Xfinish — установка и чтение конца отображения по оси X (число).
• void ClearGrafs(void) — очищает графики.
• void CopyPicture(void) — копирует график в буфер обмена.
• void CopyData(void) — копирует данные в буфер обмена.
• void UpdateGrafs(void) — обновляет графики.
• void SetGrafCursorValue(FLOAT) — выставляет курсор по значению (синяя полоса курсора осциллографа выставляется рядом с заданным значением).
• void SetGrafCursorPosition(LONG) — выставляет курсор по номеру элемента массива (синяя полоса курсора осциллографа выставляется рядом с заданным номером элемента массива).
Проект в SCADA ZETView
В этой схеме компонент Диапазон значений предназначен для получения мгновенных значений сигнала канала в заданном диапазоне времени. Таймер служит для подачи синхронизирующих импульсов на Время сервера и График. Это нужно, чтобы График и Диапазон значений работали в едином временном пространстве. Синусоидальный сигнал нужен для создания пробного сигнала, а Многоканальный осциллограф - для его текущего графического отображения. Данный компонент используется для создания различных проектов, в том числе таких как виброметр.
Результат работы проекта