tfsmoment

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

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

Predictive Maintenance Toolbox™ реализует три ответвления момента частоты времени:

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

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

  • Объединенный момент частоты времени — tfmoment

Синтаксис

momentS = tfsmoment(xt,order)
momentS = tfsmoment(x,fs,order)
momentS = tfsmoment(x,ts,order)
momentS = tfsmoment(p,fp,tp,order)
momentS = tfsmoment(___,Name,Value)
[momentS,t] = tfsmoment(___)
tfsmoment(___)

Описание

пример

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

пример

momentS = tfsmoment(x,fs,order) возвращает условный спектральный момент вектора timeseries 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 с любой из комбинаций входных аргументов в предыдущих синтаксисах.

пример

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

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

пример

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

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

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

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

График иллюстрирует изменения в отклонении спектра 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')

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

Во-первых, сравните внутренние и базовые временные ряды непосредственно с помощью той же конструкции временного вектора для данных 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')

Вычислите второй спектральный момент данных 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
histogram(momentS_inner1);
hold on
histogram(momentS_baseline1);
hold off
legend('Faulty Condition','Healthy Condition')
title('Second Spectral Moment for Faulty and Healthy Conditions')

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

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

Загрузите данные, которые содержат измерения вибрации (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
histogram(momentS_4)
title('Fourth Spectral Moment (Kurtosis) of x inner1')

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

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

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

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

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

Спектр p_inner1_MinThr был создан с помощью опции pspectrum MinThreshold. Эта опция помещает нижнюю границу на ненулевые значения, чтобы отфильтровать низкоуровневый шум. В данном примере порог был установлен, чтобы отфильтровать шум ниже уровня на 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')

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

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

Загрузите данные, которые содержат измерения вибрации x и частоту дискретизации сэр для машинного оборудования. Вычислите 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')

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

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

Загрузите данные, которые состоят из single 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 e. Исследуйте свойства получившегося момента 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')

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

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

Входные параметры

свернуть все

Расписание сигнала, для которого tfsmoment возвращает моменты, заданные как timetable, который содержит одну переменную с отдельным столбцом. xt должен содержать увеличение, конечные времена строки. Если расписание имеет пропавших без вести или дублирующиеся моменты времени, можно зафиксировать его с помощью советов в Чистом Расписании с Пропавшими без вести, Копией, или Неоднородные Времена (MATLAB). xt может быть неоднородно выбран с ограничением pspectrum, которому должны повиноваться средний временной интервал и средний временной интервал.

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

Для примера входа расписания смотрите, Находят Условные Спектральные Моменты Измерений Данных в Расписании

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

  • Целое число — Вычисляет один момент

  • Вектор — Вычисляет несколько моментов целиком.

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

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

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

  1. Среднее значение

  2. Дисперсия

  3. Скошенность (степень асимметрии о среднем значении)

  4. Эксцесс (длина хвостов выброса в распределении — нормальное распределение имеет эксцесс 3),

Для примеров см.:

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

Для примера входа timeseries см. График Условный Спектральный Момент Вектора Временных рядов

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

Значения шага расчета, заданные как одно из следующего:

  • Скаляр duration — временной интервал между последовательными выборками X.

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

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

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

Спектрограмма степени или спектр сигнала, заданного как матрица (спектрограмма) или вектор-столбец (спектр). p содержит оценку краткосрочного, локализованного временем спектра мощности сигнала timeseries. Если вы задаете 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 должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: 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. Оцените условный спектральный момент использования сигнала для нецентрализованного случая:

    ωmt=1P(t)ωmP(t,ω)dω,

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

    В течение централизованного условного спектрального момента, функционального использования

    μωm(t)=1P(t)(ωω1t)mP(t,ω)dω.

Ссылки

[1] Loughlin, P. J. "Каковы моменты частоты времени сигнала?" Совершенствовались алгоритмы обработки сигналов, архитектура, и КСИ реализаций, продолжения SPIE. Издание 4474, ноябрь 2001.

[2] Loughlin, P., Ф. Кэкрэк и Л. Коэн. "Условный Анализ Момента Переходных процессов с Приложением к Вертолетным Данным об Отказе". Механические Системы и Обработка сигналов. Vol 14, Выпуск 4, 2000, стр 511–522.

Смотрите также

| |

Введенный в R2018a