Главная страница

123233цв. DIAdem Обработка и анализ данных, генерация отчетов [NI] (2008).. Продукции ni com Штабквартира корпорации National Instruments


Скачать 1.93 Mb.
НазваниеПродукции ni com Штабквартира корпорации National Instruments
Анкор123233цв
Дата03.10.2021
Размер1.93 Mb.
Формат файлаpdf
Имя файлаDIAdem Обработка и анализ данных, генерация отчетов [NI] (2008)..pdf
ТипОтчет
#240781
страница6 из 14
1   2   3   4   5   6   7   8   9   ...   14
Smooth.
Некоторые стандартные функции сохраняют результаты в программных переменных. Например, переменная StatArithMean содержит среднее арифметическое элементов данных в канале при вычислении характеристик статистических величин.
Несколько программных переменных вынесены на закладку Special
Variables (Специальные переменные) в правом нижнем углу калькулятора. Эти переменные содержат информацию о загруженных каналах. Например, переменная CMax хранит максимальное значение данных в канале.
Переменные VBS
Переменные VBS следует использовать в скриптах, если не нужно, чтобы они были связаны с командами. В отличие от DIAdem в скрипте на языке
VBS переменные или типы данных заранее не описываются. Переменные
VBS всегда имеют тип данных, который изменяется в зависимости от того, для чего используется переменная. Переменная VBS ведет себя как число в вычислениях или как строка, если ей присваивается текст.
Объявите переменные VBS с помощью оператора Dim. В следующем примере объявлена переменная MyArray для массива, текстовая переменная MyChannels и переменная-счетчик iCount. В данном примере генерируется матрица, содержащая аргументы (x) и значения функции (у) «синус», которая преобразуется в каналы:
Dim MyArray(1,10000), MyChannels(1), iCount
For iCount = 0 to 10000
MyArray(0,iCount) = 2*Pi*iCount/10000
MyArray(1,iCount) = Sin(2*Pi*iCount/10000)
Next
MyChannels(0) = "X Channel"
MyChannels(1) = "Sin Channel"
Call ArrayToChannels(MyArray,MyChannels)
Создание математических скриптов
Математические скрипты MathScripts предназначены для встраивания математических функций из LabVIEW в DIAdem ANALYSIS. Для выполнения этих скриптов на вашем компьютере должна быть установлена среда разработки приложений LabVIEW версии 8.0 и выше с опцией
MathScript.
Чтобы создать MathScript, выберите команду MathScript»New MathScript.
В качестве имени задайте MyMathScript. Создайте скрипт в редакторе математических скриптов и задайте входные и выходные (результирующие) каналы. Вводите отдельные значения непосредственно в диалоговое окно, выбирайте отдельные каналы в качестве векторов, а несколько каналов – в качестве матриц. Математические скрипты могут также обрабатывать

Раздел 3. Математическая обработка данных
DIAdem: Система генерации отчетов
36 ni.com текстовые каналы. Если вы завершите ввод кнопкой OK, DIAdem сгенерирует и откомпилирует VI LabVIEW и добавит его в меню
MathScript. Для проверки работоспособности скрипта воспользуйтесь функциями поиска ошибок в LabVIEW, выбрав там команду
Tools»MathScript Window (Инструменты»Окно MathScript).
Чтобы вызвать математический скрипт, следует выбрать в DIAdem команду
MathScript»MyMathScript»Execute (MathScript»MyMathScript»
Выполнить). В открывающемся диалоговом окне задаются настройки вычислений. DIAdem сохраняет результаты вычислений одиночного значения в свойствах группы по умолчанию. Если в портале данных нет никаких групп, DIAdem создает группу MathScript_Results. Если результат является вектором, DIAdem сохраняет данные в канале в группе по умолчанию. Если результат является матрицей, DIAdem сохраняет значения в нескольких каналах в группе по умолчанию.
Если Вы создаете MathScript, DIAdem создает скомпилированный VI
LabVIEW, VBS скрипт и файл определений с расширением .msc, имеющие путь, задаваемый пользователем. Скрипт содержит процедуру, которая вызывает MathScript и является основой интеграции математического скрипта в созданные VBS скрипты. Файл определений задает вход в меню
MathScript и настройки в диалоговом окне. Если вы изменяете MathScript,
DIAdem автоматический обновляет все связанные с ним файлы без запроса подтверждения.
За информацией по интеграции VI LabVIEW с DIAdem обратитесь к параграфу Доступ к виртуальным приборам LabVIEW раздела 6,
Автоматизация последовательности действий.
Вычисления при наличии ошибочных значений
Измерительные приборы имеют разрешенный диапазон значений измеряемой величины, например, от 0 до 10 В. В процессе измерений на датчики иногда воздействуют возмущения, которые приводят к появлению ошибочных результатов измерений. В DIAdem вы можете объявить эти выбросы недопустимыми значениями. в DIAdem они обозначаются NoValues
(Пустые значения). Чтобы вручную отметить значение как пустое, замените его в таблице каналов на панели DIAdem VIEW значением NoValue или сокращением NV. Пустые значения не воспринимаются стандартными вычислительными функциями и не отображаются в отчете. На рисунке 3-1 слева показан измеряемый сигнал, а справа – а справа гистограмма его распределения. Сигнал в верхней части рисунка содержит ошибочные значения, а в нижней части ошибочные значения заменены пустыми значениями.

Раздел 3. Математическая обработка данных
© National Instruments Ireland Resources Limited 37
DIAdem: Система генерации отчетов
Рисунок 3-1. Измеряемый сигнал и его гистограмма (В верхней части – есть ошибочные значения, в нижней части – ошибочные значения заменены на пустые)
Amplitude (V) – Амплитуда (В), Time (s) – Время (с)
Пустыми значениями можно заменять не только отдельные значения, но и целые диапазоны значений для числовых, сигнальных и временных каналов.
Если, например, вы хотите удалить из канала Sensor значения, большие десяти, поскольку знаете, что датчик не выдает таких значений, введите в поле Enter калькулятора следующую формулу:
Ch("Group1/Sensor") =
Ch("Group1/Sensor")+CTNV(Ch("Group1/Sensor")>10)
Логический запрос Ch("Group1/Sensor")>10 проверяет, превышает ли значение элемента данных канала заданное предельное значение 10. Если превышает, то результатом данного выражения является значение True, в противном случае – значение False. Функция CTNV проверяет полученный результат и возвращает NoValue для True и 0 для False. Сложение результата функции CTNV с исходным значением элемента данных канала дает либо само исходное значение, либо NoValue. Таким образом, все значения, которые превышают 10, заменяются значениями NoValue.
Примечание: Если один из операндов равен NoValue, то результат вычислительной операции также равен NoValue.
Совет: Заменить пустые значения каким-либо произвольным значением или результатом линейной интерполяции соседних значений можно с помощью функции Process NoValues (Обработка пустых значений) из группы функций Channel Functions (Функции для работы с каналами)

Раздел 3. Математическая обработка данных
DIAdem: Система генерации отчетов
38 ni.com
Библиотеки функций
DIAdem содержит обширную библиотеку стандартных математических функций для обработки данных, которые сгруппированы по категориям в группы функций на панели DIAdem ANALYSYS:
Базовые математические функции
Функции для выполнения действий над каналами
Функции аппроксимации
Функции обработки сигналов
Функции статистики и сортировки
Функции 3D (трехмерного) анализа
Функции анализа Crush-тестов
Базовые математические функции
Группа базовых математических функций Basic Mathematics содержит функции Add (Сложение), Subtract (Вычитание), Multiply (Умножение) и
Divide (Деление) для построчного выполнения действий над двумя и более каналами. Если каналы имеют разную длину, длина результирующего канала совпадает с длиной самого короткого. Функция Scale
(Масштабирование) использует линейное уравнение ax+b для преобразования каналов. Обратное значение для каждого элемента данных канала вычисляется функцией Calculate Reciprocal (Вычислить обратное значение). Чтобы вычесть константу из значений канала или прибавить константу к ним, применяйте функцию Offset Correction (Коррекция смещения).
Чтобы нормализовать данные в канале к единичному значению, используйте функцию Normalize (Нормировать). DIAdem осуществляет нормирование путем деления каждого значения на максимальное по модулю значение данных в канале. Функция Relativize (Получить относительные значения) пересчитывает значение каждого элемента данных в канале в проценты от полной суммы всех элементов данных в канале. Функция Calculate
Differences (Вычислить разности) вычисляет разности между соседними значениями данных в канале, в результате чего длина канала результатов получается на один элемент меньше. Функция Summation предназначена для вычисления текущей суммы элементов данных в канале.
Функция Differentiate (Дифференцирование) вычисляет отношение центральных разностей из двух последовательных пар значений двух каналов. Функция Integrate интегрирует канал на основе комбинированного метода трапеций. В DIAdem формируется трапеция на основе двух значений аргумента x и двух значений функции y, чтобы аппроксимировать интеграл на каждом интервале аргумента х. Функция Calculate RMS вычисляет среднеквадратическое значение.
Функции для выполнения действий над каналами
Группа функций для выполнения действий над каналами содержит функцию
Generate Numeric Channel (Генерация числовых каналов), которая

Раздел 3. Математическая обработка данных
© National Instruments Ireland Resources Limited 39
DIAdem: Система генерации отчетов генерирует новые каналы в режиме арифметической или геометрической прогрессии, или на основе аргумента x сигнального канала. Вы можете использовать эту функцию для более тонкого разделения существующих каналов. DIAdem равномерно разбивает интервалы между последовательными значениями на равноотстоящие интервалы. Функция
Generate Time Channel (Генерация временных каналов) вычисляет эквидистантные временные каналы.
Для взаимного преобразования числовых и сигнальных каналов следует применять функцию Numeric Channels <->Waveform Channels. Если вы преобразуете числовые каналы в сигнальные, то следует задавать x-канал аргумента с равномерным шагом. Если, наоборот, вы преобразуете сигнальные в числовые каналы, DIAdem создает каналы x и y на основе каждого сигнального канала. Если в портале данных сигнальные каналы расположены последовательно в группе, и у них одинаковый аргумент х,
DIAdem создает для этих каналов один общий x-канал.
Функция Convert Channel Unit преобразует единицы измерений данных в канале для одной и той же величины, например километры в час [km/h] в мили в час [mi/h]. Функция Convert to Unit Set назначает другую систему единиц для нескольких каналов и преобразует в нее данные в этих каналах.
Если вы, например, загружаете европейскую систему единиц, DIAdem требует американскую систему единиц только для преобразования длин, площадей и скоростей, которые содержит набор данных, в соответствующие единицы. За дополнительной информацией о каталоге единиц измерений обратитесь к параграфу Использование каталога единиц измерений раздела
2, Поиск данных и управление данными.
Функция Average Channels построчно вычисляет среднее арифметическое для двух и более каналов. Функция Sort Channel Values сортирует элементы данных канала по возрастанию. Вы можете также привязать к нему другие каналы, например, текстовые, где элементы данных будут перемещаться вместе с элементами данных основного канала, в котором происходит сортировка. Для определения максимальных или минимальных значений в канале применяется функция Peak Search, которая возвращает два результирующих канала. Один из них содержит значения x, а другой – значения y обнаруженных пиков.
Функция Process NoValues удаляет пустые элементы данных, обозначенные
NoValues, в каналах или заменяет их заданными значениями или значениями, полученными путем линейной интерполяции соседних элементов данных. Обозначение NoValue имеют элементы данных с ошибочными значениями, которые DIAdem не использует в вычислениях и не отображает в отчете. Это обозначение вводится для исключения искаженных результатов измерений из каналов. За дополнительной информацией о пустых значениях обратитесь к параграфу Вычисления при
наличии ошибочных значений настоящего раздела.
Функции аппроксимации кривых
Группа функций Curve Fitting содержит функции Smooth сглаживания сигнала. Чтобы сгладить сигнал, DIAdem вычисляет скользящее среднее арифметическое для каждого элемента данных в канале и заданного количества соседних с ним элементов. Для приведения двух измеренных

Раздел 3. Математическая обработка данных
DIAdem: Система генерации отчетов
40 ni.com сигналов с разными временными каналами к одному масштабу времени служит функция Linear Mapping (Линейное отображение). Если вы выделяете один из двух временных каналов в качестве базового, задающего временной масштаб, DIAdem интерполирует и экстраполирует недостающие элементы данных.
Для расчета кривой, которая наиболее близко проходит относительно исходного множества точек в соответствии с определенным критерием, используйте функции Regression (Регрессия) и Approximation
(Аппроксимация). Диалоговое окно в режиме предварительного просмотра отображает для каждой из аппроксимирующих функций, насколько точно она аппроксимирует данные в канале. Для результирующей кривой вы можете задать канал с оценочными точками или сгенерировать эти точки.
DIAdem сохраняет вычисленные коэффициенты в программных переменных, а также в результирующих каналах как индивидуальные свойства.
Функцию Non-Linear Curve Fitting (Нелинейная аппроксимация кривой) следует применять для аппроксимации множества точек с помощью любой функции. Для вычисления вышеупомянутых коэффициентов в DIAdem применяется алгоритм Левенберга-Маркквардта. Для приближения множества точек кривой Гаусса используйте функцию Gaussian Curve
Fitting. Для вычисления среднего значения, амплитуды и среднеквадратического отклонения кривой Гаусса в DIAdem применяется метод наименьших квадратов, метод наименьших абсолютных отклонений или биквадратный метод. Чтобы вычислить k-мерную кривую путем минимизации квадратов ошибки, используйте команду General LS Linear
Fitting. Для решения переопределенных систем уравнений (с количеством уравнений, большим, чем количество неизвестных) DIAdem предоставляет различные методы, такие как SVD, Givens, Cholesky или Householder.
Сплайны в DIAdem вычисляются с помощью Non-Parametric Splines
(Непараметрических сплайнов), Parametric Splines (Параметрических сплайнов) или Akima Subsplines (Субсплайнов Акимы). Непараметрические сплайны применяются в случае, если узловые точки (узлы интерполяции) искомой кривой (функции) являются строго монотонными.
Параметрические сплайны годятся для случая, когда узлы интерполяции не являются строго монотонными, например, для замкнутых кривых.
Вычисление субсплайна Акимы дает результаты для кривых, недифференцируемых непрерывно, это в первую очередь подходят для ступенчатых функций. Вы можете использовать сплайны для интерполяции или аппроксимации функции по узловым точкам.
Функция Calculate Envelope Curve (Вычисление огибающей кривой) задает верхнюю и нижнюю огибающих множества точек. Точки огибающих представляют собой минимальные и максимальные значения внутри заданного интервала. Функция Calculate Circle Approximation
(Аппроксимация окружностью) вычисляет регрессионную окружность, вписанную окружность и описанную окружность для множества точек в декартовой системе координат. Максимальная вписанная окружность, также называемая внутренней окружностью, представляет собой окружность наибольшего радиуса внутри множества точек, которое не содержит ни одной измеренной точки. Минимальная описанная окружность, также называемая огибающей окружностью, представляет собой окружность

Раздел 3. Математическая обработка данных
© National Instruments Ireland Resources Limited 41
DIAdem: Система генерации отчетов наименьшего радиуса вокруг множества точек, которое содержит все измеренные точки. Центры этих экстремальных идеальных окружностей могут не совпадать, и они являются независимыми от центра регрессионной окружности. Тем не менее, концентрическая вписанная и описанная окружности имеют общий центр и представляют собой плоское круглое кольцо с наименьшей шириной, которое охватывает все измеренные точки.
Функции обработки сигналов
Группа функций Signal Analysis содержит такие функции, как быстрое преобразование Фурье, цифровые фильтры, вычисление частотно- взвешенного ускорения, а также функции порядкового анализа, с помощью которых можно исследовать частотные компоненты колебаний.
Быстрое преобразование Фурье (БПФ)
Быстрое преобразование Фурье (Fast Fourier Transformation – FFT) предназначено для преобразования сигналов их временной области в частотную область и обратно. Например, каждая кнопка на вашем телефоне при нажатии дает отличающийся от других звуковой сигнал, который состоит из двух гармонических колебаний. Этот сигнал принимает коммутатор, который может определить набранный вами номер. Во временной области звуковой сигнал, возникающий при нажатии цифры
«девять» трудно отличить от сигнала, возникающего при нажатии цифры
«пять». Для принятого сигнала коммутатор запускает БПФ, поскольку рассматриваемые сигналы можно четко различить в частотной области.
В DIAdem можно вычислять FFT with One Time Signal (БПФ для одного сигнала, заданного во временной области), Inverse FFT (Обратное БПФ) для обратного преобразования из частотной области во временную область и
FFT with Two Time Signals (БПФ двух сигналов), например, автокорреляция или кросс-корреляция. DIAdem вычисляет БПФ по всей длине заданных каналов, даже если длина канала не равна степени двойки.
Функция Auto Correlation (Автокорреляция) сдвигает копию сигнала по оси времени, чтобы выяснить, имеет ли сигнал периодические составляющие.
Функция Cross Correlation (Взаимная корреляция) делает то же самое c двумя различными сигналами для их сопоставления.
Треть/октавный анализ оценивает уровень сигнала для отдельных частотных интервалов, а не точное распределение сигнала по частоте. В процессе такого анализа значения амплитудного БПФ спектра группируются в стандартные частотные интервалы в логарифмическом масштабе, как показано на рисунке 3-2:

Раздел 3. Математическая обработка данных
DIAdem: Система генерации отчетов
42 ni.com
1   2   3   4   5   6   7   8   9   ...   14


написать администратору сайта