exponenta event banner

tfsmoment

Условный спектральный момент частотно-временного распределения сигнала

Описание

Частотно-временные моменты обеспечивают эффективный способ характеристики сигналов, частоты которых изменяются во времени (то есть являются нестационарными). Такие сигналы могут возникать от оборудования с поврежденными или неисправными аппаратными средствами. Классический анализ Фурье не может фиксировать изменяющееся во времени поведение частоты. Частотно-временное распределение, генерируемое кратковременным преобразованием Фурье (STFT) или другими методами частотно-временного анализа, может фиксировать изменяющееся во времени поведение, но непосредственное рассмотрение этих распределений как признаков несет высокую вычислительную нагрузку и потенциально вносит несвязанные и нежелательные характеристики признаков. Напротив, перегонка результатов частотно-временного распределения в низкоразмерные частотно-временные моменты обеспечивает способ захвата существенных признаков сигнала в гораздо меньшем пакете данных. Использование этих моментов значительно снижает вычислительную нагрузку для извлечения и сравнения характеристик - ключевое преимущество для работы в реальном времени [1], [2].

Toolbox™ предиктивного технического обслуживания реализует три ветви частотно-временного момента:

  • Условный спектральный момент - tfsmoment

  • Условный временной момент - tftmoment

  • Совместный момент времени и частоты - tfmoment

пример

momentS = tfsmoment(xt,order) возвращает условный спектральный момент timetable xt в качестве timetable. momentS переменные предоставляют спектральные моменты для порядков, указанных в order. Данные в xt может быть выполнена неравномерная выборка.

пример

momentS = tfsmoment(x,fs,order) возвращает условный спектральный момент вектора временных рядов x, отбирается на скорости Fs. Момент возвращается в виде матрицы, в которой каждый столбец представляет спектральный момент, соответствующий каждому элементу в order. С таким синтаксисом, x должны быть равномерно отобраны пробы.

пример

momentS = tfsmoment(x,ts,order) возвращает условный спектральный момент x отбирается в моменты времени, указанные ts в секундах.

  • Если ts является скаляром duration, то tfsmoment применяется равномерно ко всем образцам.

  • Если ts является вектором, то tfsmoment применяет каждый элемент к соответствующему образцу в x. Этот синтаксис используется для неравномерной выборки.

пример

momentS = tfsmoment(p,fp,tp,order) возвращает условный спектральный момент сигнала, спектрограмма мощности которого p. fp содержит частоты, соответствующие спектральной оценке, содержащейся в p. tp содержит вектор моментов времени, соответствующих центрам оконных сегментов, используемых для вычисления оценок спектра мощности с коротким временем. Этот синтаксис используется в следующих случаях:

  • У вас уже есть спектр мощности или спектрограмма, которые вы хотите использовать.

  • Вы хотите настроить параметры для pspectrum, вместо принятия значения по умолчанию pspectrum варианты, которые tfsmoment применяется. Использовать pspectrum сначала с нужными опциями, а затем используйте выходные данные p в качестве входных данных для tfsmoment. Такой подход также позволяет построить график силовой спектрограммы.

пример

momentS = tfsmoment(___,Name,Value) задает дополнительные свойства, используя аргументы пары имя-значение. Варианты включают централизацию момента и спецификацию ограничения частоты.

Вы можете использовать Name,Value с любой из комбинаций input-argument в предыдущих синтаксисах.

пример

[momentS,t] = tfsmoment(___) возвращает вектор времени t.

Вы можете использовать t с любой из комбинаций input-argument в предыдущих синтаксисах.

пример

tfsmoment(___) без выходных аргументов строит график условного спектрального момента. Ось x - это время, а ось y - это соответствующий спектральный момент.

Этот синтаксис можно использовать с любой комбинацией входных аргументов в предыдущих синтаксисах.

Примеры

свернуть все

Постройте график условного спектрального момента (дисперсии) второго порядка временного ряда с использованием подхода «только график» и подхода «возврат данных». Визуализируйте момент иначе, построив гистограмму. Сравните моменты для данных, возникающих из-за неисправного и здорового состояния машины.

Этот пример адаптирован на основе диагностики неисправностей подшипников качения, которая обеспечивает более полную обработку источников данных и истории.

Загрузите данные, содержащие измерения вибрации для двух условий. x_inner1 и sr_inner1 содержат вектор данных и частоту дискретизации для неисправного состояния. x_baseline и sr_baseline содержат вектор данных и частоту выборки для здорового состояния.

load tfmoment_data.mat x_inner1 sr_inner1 x_baseline1 sr_baseline1

Проверьте данные о неисправном состоянии. Создайте вектор времени из частоты дискретизации и постройте график данных. Затем увеличьте изображение участка 0,1 с, чтобы можно было более четко увидеть поведение.

t_inner1 = (0:length(x_inner1)-1)/sr_inner1; % Construct time vector of [0 1/sr 2/sr ...] matching dimension of x
figure
plot(t_inner1,x_inner1) 
title ('Inner1 Signal')
hold on
xlim([0 0.1]) % Zoom in to an 0.1 s section
hold off

Figure contains an axes. The axes with title Inner1 Signal contains an object of type line.

График показывает периодические импульсные изменения в измерениях ускорения во времени.

Постройте график второго спектрального момента (order= 2), используя tfsmoment синтаксис без выходных аргументов.

order = 2;
figure
tfsmoment(x_inner1,t_inner1,order)
title('Second Spectral Moment of Inner1')

Figure contains an axes. The axes with title Second Spectral Moment of Inner1 contains an object of type line.

График иллюстрирует изменения в дисперсии x_inner1 спектр со временем. Вы ограничены этой визуализацией (момент против времени), потому что tfsmoment не вернул данные. Теперь используйте tfmoment снова для вычисления второго спектрального момента, на этот раз с использованием синтаксиса, который возвращает как значения момента, так и связанный вектор времени. Можно использовать частоту выборки непосредственно в синтаксисе (sr_inner1), а не вектор времени, который вы построили (t_inner1).

[momentS_inner1,t1_inner1] = tfsmoment(x_inner1,sr_inner1,order);

Теперь можно построить график зависимости момента от времени, как это было раньше, используя moment_inner1 и t1_inner1, с тем же результатом, что и ранее. Но также можно выполнить дополнительный анализ и визуализацию вектора момента, так как tfsmoment вернул данные. Гистограмма может предоставлять краткую информацию о характеристиках сигнала.

figure
histogram(momentS_inner1)
title('Second Spectral Moment of Inner1')

Figure contains an axes. The axes with title Second Spectral Moment of Inner1 contains an object of type histogram.

Сама по себе гистограмма не обнаруживает очевидной информации о неисправности. Тем не менее, вы можете сравнить его с гистограммой, созданной данными о здоровом состоянии.

Во-первых, сравнить внутренний и базовый временные ряды непосредственно с использованием одной и той же конструкции вектор-время для baseline1 данные, как и ранее для inner1 данные.

t_baseline1 = (0:length(x_baseline1)-1)/sr_baseline1;

figure
plot(t_inner1,x_inner1)
hold on
plot(t_baseline1,x_baseline1)
hold off
legend('Faulty Condition','Healthy Condition')
title('Vibration versus Time for Faulty and Healthy Conditions')

Figure contains an axes. The axes with title Vibration versus Time for Faulty and Healthy Conditions contains 2 objects of type line. These objects represent Faulty Condition, Healthy Condition.

Вычислить второй спектральный момент baseline1 данные. Сравните baseline1 и inner1 истории времени.

[momentS_baseline1,t1_baseline1] = tfsmoment(x_baseline1,sr_baseline1,2);

figure
plot(t1_inner1,momentS_inner1)
hold on
plot(t1_baseline1,momentS_baseline1)
hold off
legend('Faulty Condition','Healthy Condition')
title('Second Spectral Moment versus Time for Faulty and Healthy Conditions')

Figure contains an axes. The axes with title Second Spectral Moment versus Time for Faulty and Healthy Conditions contains 2 objects of type line. These objects represent Faulty Condition, Healthy Condition.

График момента показывает поведение, отличное от предыдущего графика вибрации. Данные вибрации для неисправного корпуса намного шумнее с пиками более высокой величины, чем для здорового корпуса, хотя оба, по-видимому, являются нулевыми средними. Однако спектральная дисперсия (второй спектральный момент) значительно ниже для неисправного случая. Момент неисправного дела по-прежнему более шумен, чем здоровый случай.

Постройте график гистограмм.

figure
histogram(momentS_inner1);
hold on
histogram(momentS_baseline1);
hold off
legend('Faulty Condition','Healthy Condition')
title('Second Spectral Moment for Faulty and Healthy Conditions')

Figure contains an axes. The axes with title Second Spectral Moment for Faulty and Healthy Conditions contains 2 objects of type histogram. These objects represent Faulty Condition, Healthy Condition.

Поведение момента отличает неисправное состояние от здорового на обоих графиках. Гистограмма обеспечивает различные характеристики распределения - центральную точку вдоль оси X, разброс и пиковую ячейку гистограммы.

Определите первые четыре условных спектральных момента набора данных временного ряда и извлеките моменты, которые требуется визуализировать с помощью гистограммы.

Загрузить данные, содержащие измерения вибрации (x_inner1) и частота выборки (sr_inner1) для машин. Затем использовать tfsmoment для вычисления первых четырех моментов. Эти моменты представляют статистические величины: 1) Среднее; 2) Отклонение; 3) Перекос; и 4) Куртоз.

Можно указать обозначения момента как вектор в пределах order аргумент.

load tfmoment_data.mat x_inner1 sr_inner1
momentS_inner1 = tfsmoment(x_inner1,sr_inner1,[1 2 3 4]);

Сравните размеры входного вектора и выходной матрицы.

xsize = size(x_inner1)
xsize = 1×2

      146484           1

msize = size(momentS_inner1)
msize = 1×2

   524     4

Вектор данных x_inner значительно длиннее векторов в матрице момента momentS_inner1 because the spectrogram computation produces optimally-sized lower-resolution time windows. In this case, tfsmoment возвращает матрицу моментов, содержащую четыре столбца, по одному столбцу для каждого порядка моментов.

Постройте график гистограмм для третьего (перекос) и четвертого (куртоз) моментов. Третья и четвертая колонки momentS_inner1 предоставить их.

momentS_3 = momentS_inner1(:,3);
momentS_4 = momentS_inner1(:,4);
figure
histogram(momentS_3)
title('Third Spectral Moment (Skewness) of x inner1')

Figure contains an axes. The axes with title Third Spectral Moment (Skewness) of x inner1 contains an object of type histogram.

figure
histogram(momentS_4)
title('Fourth Spectral Moment (Kurtosis) of x inner1')

Figure contains an axes. The axes with title Fourth Spectral Moment (Kurtosis) of x inner1 contains an object of type histogram.

Графики похожи, но каждый имеет некоторые уникальные характеристики в отношении количества бункеров и крутизны откоса.

По умолчанию tfsmoment вызывает функцию pspectrum для генерирования спектрограммы мощности, которая tfsmoment использует для вычисления момента. Можно также импортировать существующую спектрограмму питания для tfsmoment вместо этого использовать. Эта возможность полезна, если в качестве начальной точки уже используется спектрограмма питания или если требуется настроить pspectrum путем генерации спектрограммы в явном виде.

Введите спектрограмму мощности, созданную с помощью настраиваемых опций. Сравните полученную гистограмму спектрального момента с той, которая tfsmoment генерирует, используя его pspectrum параметры по умолчанию.

Загрузите данные, которые включают в себя два спектра мощности и соответствующие частотные и временные векторы.

p_inner1_def спектр был создан с использованием значения по умолчанию pspectrum варианты. Это эквивалентно тому, что tfsmoment вычисляется внутренне, когда входной спектр не предусмотрен в синтаксисе.

p_inner1_MinThr спектр был создан с помощью MinThreshold pspectrum вариант. Эта опция устанавливает нижнюю границу ненулевых значений для отсечения низкоуровневого шума. Для этого примера было установлено пороговое значение для отсечения шума ниже уровня 0,5%.

load tfmoment_data.mat p_inner1_def f_p_def t_p_def ...
    p_inner1_MinThr f_p_MinThr t_p_MinThr
load tfmoment_data.mat x_inner1 x_baseline1

Определите вторые спектральные моменты (дисперсию) для обоих случаев.

moment_p_def = tfsmoment(p_inner1_def,f_p_def,t_p_def,2);
moment_p_MinThr = tfsmoment(p_inner1_MinThr,f_p_MinThr,t_p_MinThr,2);

Постройте график гистограмм вместе.

figure
histogram(moment_p_def);
hold on
histogram(moment_p_MinThr);
hold off
legend('Moment from Default P','Moment from Customized P')
title('Second Spectral Moment for Inner1 from Input Spectrograms')

Figure contains an axes. The axes with title Second Spectral Moment for Inner1 from Input Spectrograms contains 2 objects of type histogram. These objects represent Moment from Default P, Moment from Customized P.

Гистограммы имеют одинаковый общий разброс, но пороговая гистограмма момента имеет более высокий пиковый диапазон при более низком уровне величины момента, чем момент по умолчанию. Этот пример предназначен только для иллюстрации, но показывает влияние, которое может оказать предварительная обработка на этапе вычисления спектра.

По умолчанию tfsmoment централизует момент как часть его расчета. То есть он вычитает среднее значение данных датчика (которое является первым моментом) из данных датчика как часть условных спектральных моментов. Если требуется сохранить смещение, можно задать входной аргумент Centralize к false.

Загрузите данные, которые содержат измерения вибрации x и частоту отбора проб sr для оборудования. Рассчитайте 2-й момент (order = 2) как с централизацией (по умолчанию), так и без централизации (Centralize = false). Постройте график гистограмм вместе.

load tfmoment_data.mat x_inner1 sr_inner1
momentS_centr = tfsmoment(x_inner1,sr_inner1,2);
momentS_nocentr = tfsmoment(x_inner1,sr_inner1,2,'Centralize',false);

figure
histogram(momentS_centr)
hold on
histogram(momentS_nocentr);
hold off
legend('Centralized','Noncentralized')
title('Second Spectral Moment of x inner1 With and Without Centralization')

Figure contains an axes. The axes with title Second Spectral Moment of x inner1 With and Without Centralization contains 2 objects of type histogram. These objects represent Centralized, Noncentralized.

Нецентрализированное распределение смещено вправо.

Реальные измерения часто упаковываются как часть таблицы с временной меткой, которая записывает фактическое время и показания, а не относительное время. Вы можете использовать timetable формат для сбора этих данных. В этом примере показано, как tfsmoment работает с timetable входные данные, в отличие от входных данных вектора данных, используемых для другого tfsmoment примеры, такие как График условного спектрального момента вектора временного ряда.

Загрузите данные, состоящие из одного timetable xt_inner1 содержит показания измерений и информацию о времени для единицы оборудования. Проверьте свойства timetable.

load tfmoment_tdata.mat xt_inner1;
xt_inner1.Properties
ans = 
  TimetableProperties with properties:

             Description: ''
                UserData: []
          DimensionNames: {'Time'  'Variables'}
           VariableNames: {'x_inner1'}
    VariableDescriptions: {}
           VariableUnits: {}
      VariableContinuity: []
                RowTimes: [146484x1 duration]
               StartTime: 0 sec
              SampleRate: 4.8828e+04
                TimeStep: 2.048e-05 sec
        CustomProperties: No custom properties are set.
      Use addprop and rmprop to modify CustomProperties.

Эта таблица состоит из измерений Time и Variables, где единственной переменной является x_inner1.

Найдите второй и четвертый условные спектральные моменты для данных в timetablе. Изучить свойства результирующего момента timetable.

order = [2 4];
momentS_xt_inner1 = tfsmoment(xt_inner1,order);
momentS_xt_inner1.Properties
ans = 
  TimetableProperties with properties:

             Description: ''
                UserData: []
          DimensionNames: {'Time'  'Variables'}
           VariableNames: {'CentralSpectralMoment2'  'CentralSpectralMoment4'}
    VariableDescriptions: {}
           VariableUnits: {}
      VariableContinuity: []
                RowTimes: [524x1 duration]
               StartTime: 0.011725 sec
              SampleRate: 175.6403
                TimeStep: 0.0056935 sec
        CustomProperties: No custom properties are set.
      Use addprop and rmprop to modify CustomProperties.

Возвращенный timetable представляет моменты в переменной 'CentralSpectralMoment2«и»CentralSpectralMoment4", предоставляя информацию не только о том, какой конкретный момент был рассчитан, но и о том, является ли он централизованным.

Вы можете получить доступ к информации о времени и моментах непосредственно из timetable свойства. Вычислите второй и четвертый моменты. Постройте четвертый момент.

tt_inner1 = momentS_xt_inner1.Time;
momentS_inner1_2 = momentS_xt_inner1.CentralSpectralMoment2;
momentS_inner1_4 = momentS_xt_inner1.CentralSpectralMoment4;

figure
plot(tt_inner1,momentS_inner1_4)
title('Fourth Spectral Moment of Timetable Data')

Figure contains an axes. The axes with title Fourth Spectral Moment of Timetable Data contains an object of type line.

Как показано в разделе График условного спектрального момента вектора временного ряда, гистограмма является очень полезной визуализацией для данных момента. Постройте график гистограммы, непосредственно ссылаясь на CentralSpectralMoment2 свойство переменной.

figure
histogram(momentS_xt_inner1.CentralSpectralMoment2)
title('Second Spectral Moment of xt inner1 Timetable')

Figure contains an axes. The axes with title Second Spectral Moment of xt inner1 Timetable contains an object of type histogram.

Входные аргументы

свернуть все

Расписание сигналов, для которых tfsmoment возвращает моменты, указанные как timetable содержит одну переменную с одним столбцом. xt должно содержать увеличивающееся конечное время строки. Если расписание имеет отсутствующие или повторяющиеся моменты времени, его можно исправить с помощью подсказок в «Чистом расписании» с «Отсутствующим», «Повторяющимся» или «Неуниформным временем». xt может быть неравномерно дискретизирован, с pspectrum ограничение, которое должно соответствовать среднему интервалу времени и среднему интервалу времени.

1100 < Среднее время  intervalСредний интервал времени < 100.

Пример ввода расписания см. в разделе Поиск условных спектральных моментов измерений данных в расписании

Момент приказывает вернуться, указанный как одно из следующих:

  • Целое число - вычислить один момент

  • Вектор (Vector) - вычисление нескольких моментов одновременно.

Пример: momentS = tfsmoment(x,2) задает спектральный момент (дисперсию) второго порядка частотно-временного распределения x.

Пример: momentS = tfsmoment(x,[1 2 3 4]) определяет первые четыре порядка моментов распределения времени и частоты x.

Можно указать любой порядок и количество заказов, но моменты низкого порядка несут меньшую вычислительную нагрузку и лучше подходят для приложений реального времени. Первые четыре порядка моментов соответствуют статистическим моментам набора данных:

  1. Средний

  2. Различие

  3. Асимметрия (степень асимметрии относительно среднего значения)

  4. Куртоз (длина выбегающих хвостов в распределении - нормальное распределение имеет куртоз 3)

Примеры см. в разделе:

Сигнал временного ряда, от которого tfsmoment возвращает моменты, указанные как вектор.

Пример ввода временного ряда см. в разделе График условного спектрального момента вектора временного ряда.

Частота выборки x, указывается как положительный скаляр в герцах, когда x равномерно отбирают пробы.

Значения времени выборки, указанные как одно из следующих:

  • duration scalar - интервал времени между последовательными выборками X.

  • Вектор, duration массив, или datetime массив - момент времени или длительность, соответствующая каждому элементу x.

ts может быть неоднородным, с pspectrum ограничение, что медианный временной интервал и средний временной интервал должны подчиняться:

1100 < Среднее время  intervalСредний интервал времени < 100.

Спектрограмма мощности или спектр сигнала, определяемый как матрица (спектрограмма) или вектор-столбец (спектр). p содержит оценку краткосрочного, локализованного во времени спектра мощности сигнала временного ряда. При указании p, tfsmoment использование p вместо того, чтобы генерировать собственную спектрограмму мощности. Пример см. в разделе Использование настраиваемой спектрограммы мощности для вычисления условного спектрального момента.

Частоты для силовой спектрограммы или спектра p когда p предоставляется явно tfsmoment, указанный как вектор в герцах. Длина fp должно быть равно количеству строк в p.

Временная информация для силовой спектрограммы или спектра p когда p предоставляется явно tfsmoment, указано как одно из следующих:

  • Вектор временных точек, тип данных которых может быть числовым, duration, или datetime. Длина вектора tp должно быть равно количеству столбцов в p.

  • duration скаляр, представляющий временной интервал в p. Скалярная форма tp может использоваться только тогда, когда p - матрица спектрограммы мощности.

  • Для особого случая, где p - вектор-столбец (спектр мощности), tp может быть числовым, duration, или datetime скаляр, представляющий временную точку спектра.

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'Centralize',false,'FrequencyLimits',[10 100] вычисляет нецентрализированный условный спектральный момент для части сигнала в диапазоне от 10 Гц до 100 Гц.

Опция «Централизация-момент», заданная как разделенная запятыми пара, состоящая из 'Centralize' и логический.

  • Если Centralize является true, то tfsmoment возвращает централизованный условный момент путем вычитания условного среднего (который является первым моментом) в вычислении.

  • Если Centralize является false, то tfsmoment возвращает нецентрализированный момент, сохраняя любое смещение данных.

Пример см. в разделе Расчет условного спектрального момента, не являющегося централизованным.

Пределы частоты для использования, указанные как пара, разделенная запятыми, состоящая из 'FrequencyLimits' и двухэлементный вектор, содержащий нижнюю и верхнюю границы f1 и f2 в герцах. Эта спецификация позволяет исключить полосу данных на любом конце спектрального диапазона.

Выходные аргументы

свернуть все

Условный спектральный момент, возвращенный как timetable или матрица.

Время оценки момента в секундах. t результат из временного окна, которое вычисляет внутренняя спектрограмма. Окна спектрограммы требуют меньшего временного разрешения, чем исходный вектор образца. Поэтому возвращенное t вектор более компактен, чем векторы входных данных, как и momentS. Если информация о времени была предоставлена по частоте выборки или времени выборки,t начинается от центра первого временного окна. Если информация о времени была предоставлена в duration или datetime формат, t сохраняет смещение времени начала.

Подробнее

свернуть все

Условные спектральные моменты

Условные спектральные моменты нестационарного сигнала содержат набор изменяющихся во времени параметров, которые характеризуют спектр сигнала по мере его эволюции во времени. Они связаны с условными временными моментами и общими частотно-временными моментами. Условный спектральный момент является интегральной функцией частоты, заданного времени и предельного распределения. Условный временной момент является интегральной функцией времени, заданной частоты и предельного распределения. Расчет совместного частотно-временного момента представляет собой двойной интеграл, изменяющий как время, так и частоту [1], [2].

Каждый момент связан с определенным порядком, причем первые четыре порядка являются статистическими свойствами 1) среднего, 2) дисперсии, 3) перекоса и 4) куртоза.

tfsmoment вычисляет условные спектральные моменты частотно-временного распределения для сигнала x, для заказов, указанных в order. Функция выполняет следующие шаги:

  1. Вычислите спектр мощности спектрограммы P (t, f) входного сигнала, используя pspectrum и использует его в качестве частотно-временного распределения. Если используемый синтаксис предоставляет существующий P (t, f), тоtfsmoment использует это вместо.

  2. Оцените условный спектральный момент ωm〉t сигнала, используя, для нецентрализированного случая:

    ωm〉t=1P (t) ∫ωmP (t, λ) дом,

    где m - порядок, а P (t) - предельное распределение.

    Для централизованного условного спектрального момента, мкм m (t), функция использует

    pcim (t) = 1P (t) (ω−〈ω1〉t) mP (t, λ) дом.

Ссылки

[1] Лафлин, П. Дж. «Каковы моменты частоты сигнала?» Усовершенствованные алгоритмы обработки сигналов, архитектуры и реализации XI, процедуры SPIE. Том 4474, ноябрь 2001 года.

[2] Лофлин, П., Ф. Какрак и Л. Коэн. «Анализ условного момента переходных процессов с использованием данных о неисправности вертолета». Механические системы и обработка сигналов. Том 14, выпуск 4, 2000, стр. 511-522.

См. также

| |

Представлен в R2018a