主要内容

tfsmoment

信号时频分布的条件谱矩

描述

时频矩提供了一种有效的方法来描述频率随时间变化的信号(即非平稳信号)。这种信号可能来自硬件退化或故障的机器。经典的傅里叶分析无法捕捉到随时间变化的频率特性。短时傅里叶变换(STFT)或其他时频分析技术生成的时频分布可以捕捉到时变行为,但直接将这些分布作为特征处理具有很高的计算量,并可能引入不相关的和不希望看到的特征特征。相比之下,将时频分布结果提取为低维时频矩提供了一种在更小的数据包中捕获信号基本特征的方法。使用这些矩显著减少了特征提取和比较的计算负担——这是实时操作的一个关键好处[1][2]

预测性维护工具箱™实现了时频时刻的三个分支:

例子

瞬间= tfmoment (xt订单返回条件谱矩时间表xt作为一个时间表。的时刻变量为您指定的顺序提供谱矩订单。数据xt可以不均匀采样。

例子

瞬间= tfmoment (xfs订单返回时间序列向量的条件谱矩x,采样率为Fs。矩作为一个矩阵返回,其中每一列表示对应于中的每个元素的谱矩订单。有了这个语法,x必须均匀采样。

例子

时刻= tfsmoment (xts订单的条件谱矩x在指定的时刻进行采样ts在几秒钟内。

  • 如果ts是标量持续时间,然后tfsmoment将其均匀地应用于所有样本。

  • 如果ts是向量吗tfsmoment中的每个元素应用于相应的样本x。使用此语法进行非均匀采样。

例子

时刻= tfsmoment (p《外交政策》tp订单返回功率谱图为的信号的条件谱矩p《外交政策》中所包含的频谱估计所对应的频率ptp包含与用于计算短时功率谱估计的加窗段的中心相对应的时间瞬间向量。在以下情况下使用此语法:

  • 你已经有了你想要使用的功率谱或谱图。

  • 的选项pspectrum,而不是接受默认值pspectrum选项tfsmoment适用。使用pspectrum首先使用您想要的选项,然后使用输出p作为输入tfsmoment。这种方法还允许绘制功率谱图。

例子

时刻= tfsmoment (___名称,值使用名称-值对参数指定其他属性。选项包括力矩集中和频率限制规范。

你可以使用名称,值使用以前语法中的任何输入-参数组合。

例子

(时刻t] = tfmoment (___返回时间向量t

你可以使用t使用以前语法中的任何输入-参数组合。

例子

tfsmoment (___在没有输出参数的情况下绘制条件谱矩。图x轴为时间,y轴为对应的谱矩。

您可以将此语法与以前语法中的任何输入-参数组合一起使用。

例子

全部折叠

使用仅绘图方法和返回数据方法绘制时间序列的二阶条件谱矩(方差)。通过绘制直方图来可视化这个时刻。比较由故障和正常机器条件引起的数据的矩。

这个例子改编自滚动元件轴承故障诊断,提供了对数据源和历史的更全面的处理。

加载数据,其中包含两种情况下的振动测量。x_inner1而且sr_inner1包含故障条件的数据向量和采样率。x_baseline而且sr_baseline包含健康状况的数据向量和采样率。

负载tfmoment_data.matx_inner1sr_inner1x_baseline1sr_baseline1

检查故障状态数据。从采样率构造一个时间向量,并绘制数据。然后放大0.1秒的部分,这样可以更清楚地看到行为。

T_inner1 = (0:length(x_inner1)-1)/sr_inner1;构造时间向量[0 1/sr 2/sr…x的匹配维数图(t_inner1,x_inner1)“Inner1信号”)举行xlim (0.1 [0])放大到0.1秒的部分持有

图中包含一个轴对象。标题为Inner1 Signal的axes对象包含一个line类型的对象。

该图显示了加速度测量随时间的周期性脉冲变化。

绘制第二光谱矩(订单=2),使用tfsmoment没有输出参数的语法。

Order = 2;图tfmoments (x_inner1,t_inner1,order)“内1的第二光谱矩”

图中包含一个轴对象。标题为Second Spectral Moment of Inner1的轴对象包含一个类型为line的对象。

该图说明了方差的变化x_inner1频谱随时间变化。你被限制在这个可视化(时刻对时间),因为tfsmoment没有返回数据。现在使用tfmoment再次计算第二个谱矩,这一次使用返回矩值和相关时间向量的语法。可以在语法中直接使用采样率(sr_inner1),而不是你构造的时间向量(t_inner1).

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

您现在可以像以前一样,使用moment_inner1而且t1_inner1,结果与先前相同。但是你也可以对矩向量进行额外的分析和可视化,因为tfsmoment返回数据。直方图可以提供关于信号特征的简明信息。

图直方图(momentS_inner1)“内1的第二光谱矩”

图中包含一个轴对象。标题为Second Spectral Moment of Inner1的坐标轴对象包含一个直方图类型的对象。

直方图本身没有显示出明显的故障信息。但是,您可以将其与健康状态数据生成的直方图进行比较。

首先,比较内部和基线时间序列直接使用相同的时间向量结构baseline1数据如前面所示inner1数据。

T_baseline1 = (0:length(x_baseline1)-1)/sr_baseline1;图(t_inner1,x_inner1) hold住情节(t_baseline1 x_baseline1)传奇(“错误的条件”“健康状况”)标题(“故障和健康状态下的振动与时间”

图中包含一个轴对象。标题为“故障和正常状况的振动与时间”的轴对象包含2个类型为line的对象。这些对象表示“故障状态”、“正常状态”。

计算的二阶谱矩baseline1数据。比较baseline1而且inner1时间的历史。

[momentS_baseline1,t1_baseline1] = tfmoments (x_baseline1,sr_baseline1,2);图plot(t1_inner1,momentS_inner1)保持情节(t1_baseline1 momentS_baseline1)传奇(“错误的条件”“健康状况”)标题(“故障和健康状态下的秒谱矩与时间”

图中包含一个轴对象。标题为“秒谱矩与故障和正常状况时间”的轴对象包含2个类型为line的对象。这些对象表示“故障状态”、“正常状态”。

力矩图显示的行为不同于先前的振动图。故障情况下的振动数据比健康情况下的振动数据噪音大得多,具有更高的幅度峰值,尽管两者似乎都是零平均值。然而,对于故障情况,谱方差(秒谱矩)显著降低。故障情况的时刻仍然比正常情况更嘈杂。

绘制直方图。

图直方图(momentS_inner1);持有直方图(momentS_baseline1);持有传奇(“错误的条件”“健康状况”)标题(“故障和健康状态下的第二光谱矩”

图中包含一个轴对象。标题为“故障和正常状况的秒谱矩”的轴对象包含2个类型直方图对象。这些对象表示“故障状态”、“正常状态”。

在这两个图中,瞬间行为将错误状态与健康状态区分开来。直方图提供了明显的分布特征-中心点沿x轴,蔓延,和峰值直方图bin。

确定时间序列数据集的前四个条件谱矩,并提取想要用直方图可视化的矩。

加载数据,其中包含振动测量(x_inner1)和抽样率(sr_inner1)。然后使用tfsmoment计算前四个力矩。这些矩表示以下的统计量:1)均值;2)方差;3)偏态;4)峰度。

对象中的矢量可以指定力矩指示器订单论点。

负载tfmoment_data.matx_inner1sr_inner1momentS_inner1 = tfmoments (x_inner1,sr_inner1,[1 2 3 4]);

比较输入向量和输出矩阵的维数。

Xsize = size(x_inner1)
xsize =1×2146484年1
msize = size(momentS_inner1)
msize =1×2524年4

数据向量x_inner比力矩矩阵中的向量长很多吗momentS_inner1,因为频谱图计算产生最佳大小的低分辨率时间窗口在这种情况下,tfmoment返回一个力矩矩阵,包含四列,每列代表一个力矩顺序。

绘制第三个(偏度)和第四个(峰度)时刻的直方图。的第三和第四列momentS_inner1提供这些。

momentS_3 = momentS_inner1(:,3);momentS_4 = momentS_inner1(:,4);图直方图(momentS_3)x inner1的第三谱矩(偏度)

图中包含一个轴对象。标题为x inner1的第三光谱矩(偏度)的轴对象包含一个直方图类型的对象。

图直方图(momentS_4)x inner1的第四谱矩(峰度)

图中包含一个轴对象。标题为x inner1的第四谱矩(峰度)的轴对象包含一个直方图类型的对象。

图是相似的,但每个都有一些独特的特征,有关的箱数和斜坡陡度。

默认情况下,tfsmoment调用函数pspectrum内部生成功率谱图即tfsmoment用于矩计算。您也可以导入现有的功率谱图tfsmoment代替使用如果您已经有了一个功率谱图作为起点,或者如果您想自定义pspectrum选项,首先显式地生成频谱图。

输入一个自定义选项生成的功率谱图。将得到的频谱矩直方图与tfsmoment使用pspectrum默认选项。

加载数据,其中包括两个功率谱和相关的频率和时间向量。

p_inner1_defSpectrum是使用默认创建的pspectrum选项。它等于什么tfsmoment当语法中没有提供输入频谱时,进行内部计算。

p_inner1_MinThr属性创建了SpectrumMinThresholdpspectrum选择。该选项为非零值设置了一个下限,以筛选出低水平的噪声。对于本例,阈值被设置为筛选出低于0.5%水平的噪声。

负载tfmoment_data.matp_inner1_deff_p_deft_p_def...p_inner1_MinThrf_p_MinThrt_p_MinThr负载tfmoment_data.matx_inner1x_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);

把直方图画在一起。

图直方图(moment_p_def);持有直方图(moment_p_MinThr);持有传奇(“违约P时刻”“定制P时刻”)标题(“输入谱图中内层1的第二谱矩”

图中包含一个轴对象。标题为Second Spectral Moment for Inner1 from Input Spectrograms的坐标轴对象包含2个直方图类型的对象。这些对象表示来自默认P的力矩,来自自定义P的力矩。

直方图具有相同的总体分布,但阈值矩直方图在较低的矩量级水平上比默认矩具有更高的峰值库。此示例仅用于说明目的,但确实显示了频谱计算阶段的预处理可能产生的影响。

默认情况下,tfsmoment集中时刻作为计算的一部分。也就是说,它从传感器数据中减去传感器数据的平均值(这是第一个时刻),作为条件谱矩。如果希望保留偏移量,可以设置输入参数集中到f突变发生

加载数据,其中包含机械的振动测量x和采样率sr。计算第二矩(订单= 2)同时具有中心化(默认)和不具有中心化(集中).把直方图画在一起。

负载tfmoment_data.matx_inner1sr_inner1moments_center = tfmoments (x_inner1,sr_inner1,2);moments_nocenter = tfmoments (x_inner1,sr_inner1,2,“集中”、假);图直方图(moments_center)保持直方图(momentS_nocentr);持有传奇(“集中”“Noncentralized”)标题(x inner1的二阶谱矩有和没有中心化

图中包含一个轴对象。标题为Second Spectral Moment of x inner1 with and Without Centralization的坐标轴对象包含2个直方图类型的对象。这些对象表示集中式、非集中式。

非集中分布向右偏移。

真实世界的测量结果通常被打包成带有时间戳的表格的一部分,该表记录的是实际时间和读数,而不是相对时间。您可以使用时间表用于捕获此数据的格式。这个例子展示了tfsmoment操作与时间表输入,与另一个数据向量输入相反tfsmoment例如,绘制时间序列矢量的条件谱矩

加载数据,其中包含单个时间表xt_inner1包含一台机器的测量读数和时间信息。的属性时间表

负载tfmoment_tdata.matxt_inner1;xt_inner1。属性
ans = timeableproperties with properties: Description: " UserData: [] DimensionNames: {'Time' 'Variables'} VariableNames: {'x_inner1'} variabledescription: {} VariableUnits: {} variableccontinucontinuations: [] RowTimes: [146484x1 duration] StartTime: 0 sec SampleRate: 4.8828e+04 TimeStep: 2.048e-05 sec CustomProperties:无自定义属性设置。使用addprop和rmprop修改CustomProperties。

该表由维度组成时间变量,其中唯一的变量为x_inner1

中数据的第二和第四条件谱矩timetable.检验得到的弯矩的性质时间表

Order = [2 4];momentS_xt_inner1 = tfmoments (xt_inner1,order);momentS_xt_inner1。属性
ans = timeableproperties with properties: Description: " UserData: [] DimensionNames: {'Time' 'Variables'} VariableNames: {'CentralSpectralMoment2' 'CentralSpectralMoment4'} variabledescription: {} VariableUnits: {} variableccontinucontinuations: [] RowTimes: [524x1 duration] StartTime: 0.011725 sec SampleRate: 175.6403 TimeStep: 0.0056935 sec CustomProperties:无自定义属性设置。使用addprop和rmprop修改CustomProperties。

返回的时间表表示变量'中的时刻CentralSpectralMoment2和"CentralSpectralMoment4,它不仅提供了计算具体时刻的信息,还提供了计算是否集中的信息。

中可以直接访问时间和时刻信息时间表属性。计算第二和第四矩。画出第四个矩。

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)“时间表数据的第四谱矩”

图中包含一个轴对象。标题为“时间表数据的第四光谱矩”的轴对象包含一个类型为line的对象。

如图所示绘制时间序列矢量的条件谱矩,直方图是一个非常有用的力矩数据可视化。绘制直方图,直接引用CentralSpectralMoment2变量属性。

图直方图(momentS_xt_inner1.CentralSpectralMoment2)“xt内1时间表的第二谱矩”

图中包含一个轴对象。标题为Second Spectral Moment of xt inner1 timeline的坐标轴对象包含一个直方图类型的对象。

输入参数

全部折叠

信号时间表tfsmoment返回指定为a的力矩时间表它只包含一个变量和一个列。xt必须包含递增的有限行次数。如果时间表有丢失或重复的时间点,你可以使用中的提示来修复它缺少、重复或不均匀时间的清晰时间表xt可以不均匀采样,用pspectrum中值时间间隔和平均时间间隔必须遵守的约束。

1 One hundred. < 中值时间间隔 平均时间间隔 < One hundred.

有关时间表输入的示例,请参见找出时间表中数据测量的条件谱矩

返回的时刻顺序,指定为下列之一:

  • 整数-计算一个时刻

  • 矢量计算多个时刻在一次。

例子:力矩= tfmoment (x,2)的时频分布的二阶谱矩(方差)x

例子:力矩= tfmoment (x,[1 2 3 4])的时频分布的前四个矩阶x

您可以指定任何阶数和阶数,但低阶矩的计算负担更少,更适合于实时应用程序。前四个矩阶对应于一个数据集的统计矩:

  1. 的意思是

  2. 方差

  3. 偏度(平均值的不对称程度)

  4. 峰度(分布中离群点尾的长度-正态分布的峰度为3)

有关示例,请参见:

时间序列信号tfsmoment返回指定为向量的力矩。

有关时间序列输入的示例,请参见绘制时间序列矢量的条件谱矩

抽样率x时,指定为正标量,单位为赫兹x是均匀采样的。

采样时间值,指定为以下之一:

  • 持续时间的连续样本之间的时间间隔X

  • 向量,持续时间数组,或datetime的每个元素对应的时间瞬间或持续时间x

ts可以不均匀,用pspectrum中值时间间隔和平均时间间隔必须遵守的约束:

1 One hundred. < 中值时间间隔 平均时间间隔 < One hundred.

功率谱图或信号的谱,用矩阵(谱图)或列向量(谱)表示。p包含时间序列信号的短期、时间局部化功率谱的估计。如果你指定ptfsmoment使用p而不是自己生成能量谱图。有关示例,请参见使用定制的功率谱图来计算条件谱矩

用于功率谱图或频谱的频率pp显式地提供给tfsmoment,以赫兹为单位的矢量。的长度《外交政策》必须等于里面的行数p

时间信息的功率谱图或频谱pp显式地提供给tfsmoment,指定为以下其中之一:

  • 时间点的向量,其数据类型可以是数值,持续时间,或datetime。向量的长度tp必须等于里面的列数p

  • 持续时间中表示时间间隔的标量p。的标量形式tp只能用在什么时候p是一个功率谱图矩阵。

  • 对于特殊情况p为列向量(功率谱),tp可以是数字,持续时间,或datetime表示频谱时间点的标量。

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名称-值参数必须出现在其他参数之后,但对的顺序无关紧要。

在R2021a之前,使用逗号分隔每个名称和值,并将其括起来的名字在报价。

例子:“集中”,假的,“FrequencyLimits”,[100]计算10hz至100hz信号部分的非集中条件谱矩。

集中时刻选项,指定为逗号分隔的对,由“集中”而且合乎逻辑。

  • 如果集中真正的,然后tfsmoment通过减去计算中的条件平均值(即第一个矩)来返回集中的条件矩。

  • 如果集中,然后tfsmoment返回非集中力矩,保留任何数据偏移量。

有关示例,请参见计算一个不集中的条件谱矩

使用的频率限制,指定为由逗号分隔的对组成“FrequencyLimits”一个两元向量包含下上界f1和f2,单位为赫兹。该规范允许您排除光谱范围两端的数据带。

输出参数

全部折叠

条件谱矩返回为a时间表或者一个矩阵。

以秒为单位的时刻估计。t内部谱图计算计算的时间窗结果。光谱图窗口比原始样本矢量需要更少的时间分辨率。因此,归来者t向量比输入数据向量更紧凑时刻。如果时间信息已经通过采样率或采样时间提供,t从第一个时间窗口的中心开始。中提供了时间信息持续时间datetime格式,t保留开始时间偏移量。

更多关于

全部折叠

条件谱矩

非平稳信号的条件谱矩包括一组时变参数,表征信号频谱随时间的演化。它们与条件时间矩和联合时频矩有关。条件谱矩是频率、给定时间和边际分布的积分函数。条件时间矩是时间、给定频率和边际分布的积分函数。联合时频矩的计算是一个随时间和频率变化的二重积分[1][2]

每个时刻都与一个特定的顺序相关联,前四个顺序是1)平均值,2)方差,3)偏度和4)峰度的统计属性。

tfsmoment计算信号时频分布的条件谱矩x中所指明的订单订单。该函数执行以下步骤:

  1. 计算谱图功率谱,Ptf的输入pspectrum函数并将其用作时频分布。如果所使用的语法提供了现有的Ptf,然后tfsmoment用它来代替。

  2. 估计条件谱矩 ω t 对于非集中的情况,使用的信号:

    ω t 1 P t ω P t ω d ω

    在哪里是顺序和Pt是边际分布。

    对于集中条件谱矩 μ ω t ,函数使用

    μ ω t 1 P t ω ω 1 t P t ω d ω

参考文献

[1]拉芙琳p.j.“信号的时频矩是什么?”。第4474卷,2001年11月

[2] P.拉芙琳、F.卡克拉克和L.科恩。瞬态条件矩分析与直升机故障数据的应用机械系统与信号处理“,。第14卷,2000年第4期,第511-522页。

扩展功能

版本历史

在R2018a中引入