经验模式分解
emd (___)
将原始信号、imf和残差信号作为子图绘制在同一图中。
加载并可视化一个由频率变化明显的正弦波组成的非平稳连续信号。电钻的振动和烟花的声音都是非平稳连续信号的例子。信号以一定的速率采样fs
.
装载('正弦信号采样数据.mat'那“X”那“fs”)t =(0:长度(x)-1)/ fs;plot(t,x)xlabel(“时间(s)”)
混合信号包含具有不同幅度和频率值的正弦波。
要创建希尔伯特频谱图,需要信号的固有模态函数(IMFs)。进行经验模态分解,计算信号的imf和残差。由于信号不平滑,请指定'pchip
'作为插值方法。
[国际货币基金组织、残余信息]= emd (X,“插值”那“pchip”);
在命令窗口中生成的表格表示每个生成的IMF的sift迭代次数、相对容差和sift停止准则。这个信息也包含在信息
.属性可以隐藏表'显示',0
名称值对。
创建希尔伯特频谱图使用国际货币基金组织
使用经验模态分解得到的分量。
遗传性出血性毛细血管扩张症(imf, fs)
频率-时间曲线图是一个稀疏曲线图,带有垂直色条,指示IMF中每个点的瞬时能量。该曲线图表示从原始混合信号分解的每个分量的瞬时频谱。曲线图中出现三个IMF,频率在1秒时发生明显变化。
这个三角恒等式代表了同一物理信号的两种不同观点:
.
生成两个正弦信号,S.
和Z.
,这样S.
是三个正弦波和吗Z.
是一个调幅的单一正弦波。通过计算两个信号差的无穷范数来验证两个信号是相等的。
t = 0:1e-3:10;ω= 2 *π* 100;₂= 2 *π* 20;s = 0.25 * cos ((omega1-omega2) * t) + 2.5 * cos(ω* t) + 0.25 * cos((ω+₂)* t);z = (2 + cos (omega2/2 * t) ^ 2)。* cos(ω* t);规范(s-z正)
ans = 3.2729e-13
绘制正弦曲线并选择从2秒开始的1秒间隔。
图(t,[s'z'])xlim([23])xlabel(“时间(s)”)伊拉贝尔(“信号”)
获取信号的声谱图。谱图显示了三个不同的正弦分量。傅里叶分析把这些信号看作是正弦波的叠加。
pspectrum(年代,1000,“光谱图”那“TimeResolution”4)
使用EMD.
计算信号的固有模式函数(IMF)和附加诊断信息。默认情况下,该函数输出一个表格,该表格指示每个IMF的筛选迭代次数、相对公差和筛选停止标准。经验模式分解将信号视为Z.
.
(国际货币基金组织(imf), ~,信息)= emd (s);
零交叉和局部极值的数目最多相差1。这满足了信号为IMF的必要条件。
info.NumZerocrossing-info.NumExtrema
ans=1
绘制IMF,然后在2秒开始选择0.5秒的间隔。IMF是AM信号,因为EMD.
将信号视图为幅度调制。
绘图(t,imf)xlim([2 2.5])xlabel(“时间(s)”)伊拉贝尔(国际货币基金组织的)
模拟损坏轴承的振动信号。执行经验模态分解以可视化信号的imf并查找缺陷。
中径为12 cm的轴承有八个滚动元件。每个滚动元件的直径为2 cm。当内圈以每秒25个循环的速度驱动时,外圈保持静止。加速计以10 kHz的频率对轴承振动进行采样。
FS = 10000;F0 = 25;n = 8;d = 0.02;p = 0.12;
来自健康轴承的振动信号包括多个驱动频率的订单。
t=0:1/fs:10-1/fs;yHealthy=[10.50.20.10.05]*sin(2*pi*f0*[12345].*t)/5;
通过测量过程中途中的轴承振动激发共振。
yHealthy = (1 + 1. / (1 + linspace(-10、10、长度(yHealthy)) ^ 4)) * yHealthy;
共振引入轴承外部缺陷,导致渐进式磨损。缺陷导致一系列影响轴承的球通频外竞争(BPFO)的影响:
哪里 是驾驶率, 是滚动元件的数量, 为滚动元件的直径, 轴承的螺距直径,和 为轴承接触角。假设接触角为15°并计算bfo。
ca = 15;bpfo = n * f0/2 * (1 - d / p * cosd (ca));
使用普尔斯特拉
函数来模拟影响为5毫秒正弦曲线的周期性列车。每3 kHz正弦侧窗户都是由平顶窗口窗户的。使用权力法在轴承振动信号中引入渐进式磨损。
fImpact = 3000;tImpact = 0:1 / fs: 5 e-3-1 / fs;wImpact = flattopwin(长度(tImpact)) / 10;xImpact =罪(2 *π* fImpact * tImpact)。* wImpact;tx = 0:1 / bpfo: t(结束);tx = [tx;1.3。^ tx-2];nWear = 49000;nSamples = 100000;yImpact = pulstran (t, tx”、xImpact fs) / 5; yImpact = [zeros(1,nWear) yImpact(1,(nWear+1):nSamples)];
通过将影响添加到正常信号中,生成BPFO振动信号。绘制信号并选择从5.0秒开始的0.3秒间隔。
ybfo = yImpact + yHealthy;xLimLeft = 5.0;xLimRight = 5.3;yMin = -0.6;yMax = 0.6;yBPFO情节(t)在…上[limLeft,limRight] = meshgrid([xLimLeft xLimRight],[yMin yMax]);情节(limLeft limRight,“——”)持有从
放大所选间隔以可视化影响的效果。
xlim ([xLimLeft xLimRight])
向信号添加白色高斯噪声。指定噪声方差 .
rn = 150;yGood = yHealthy + randn(size(yHealthy))/rn;yBad = ybfo + randn(size(yHealthy))/rn;plot(t,yGood,t,yBad) xlim([xLimLeft xLimRight]) legend(“健康”那'损坏的')
使用EMD.
对健康轴承信号进行经验模态分解。计算前五个固有模态函数(imf)。使用“显示”
名称-值对显示一个表,其中包含每个IMF的筛选迭代次数、相对容差和筛选停止条件。
imfgood = emd(ygood,“MaxNumIMF”5,“显示”1);
当前国际货币基金组织(IMF) | #筛Iter | |停止准则的相对托尔触及0.017132 1 | 3 | | SiftMaxRelativeTolerance 2 | 3 | 0.12694 | SiftMaxRelativeTolerance 3 | 6 | 0.14582 | SiftMaxRelativeTolerance 4 | 1 | 0.011082 | SiftMaxRelativeTolerance 5 | 2 | 0.03463 | SiftMaxRelativeTolerance分解停止是因为最大数量的固有模态函数was extracted.
使用EMD.
没有输出参数来可视化前三个模式和剩余。
EMD(ygood,“MaxNumIMF”5)
计算和可视化缺陷轴承信号的imf。第一种经验模式揭示了高频碰撞。这种高频模式会随着磨损的进展而增加能量。第三种模式表示振动信号中的共振。
imfBad=emd(yBad,“MaxNumIMF”5,“显示”1);
当前国际货币基金组织(IMF) | #筛Iter | |停止准则的相对托尔触及0.041274 1 | 2 | | SiftMaxRelativeTolerance 2 | 3 | 0.16695 | SiftMaxRelativeTolerance 3 | 3 | 0.18428 | SiftMaxRelativeTolerance 4 | 1 | 0.037177 | SiftMaxRelativeTolerance 5 | 2 | 0.095861 | SiftMaxRelativeTolerance分解停止是因为最大数量的固有模式提取功能。
emd (yBad“MaxNumIMF”5)
分析的下一步是计算提取的IMFs的希尔伯特谱。有关详细信息,请参见计算振动信号的希尔伯特谱的例子。
加载并可视化一个由频率变化明显的正弦波组成的非平稳连续信号。电钻的振动和烟花的声音都是非平稳连续信号的例子。信号以一定的速率采样fs
.
装载('正弦信号采样数据.mat'那“X”那“fs”)t =(0:长度(x)-1)/ fs;plot(t,x)xlabel(“时间(s)”)
混合信号包含具有不同幅度和频率值的正弦波。
进行经验模态分解,绘制信号的本征模态函数和残差。由于信号不平滑,请指定'pchip
'作为插值方法。
EMD(X,“插值”那“pchip”那“显示”, 1)
当前的国际货币基金组织(IMF) | #筛Iter | |停止准则的相对托尔触及0.026352 1 | 2 | | SiftMaxRelativeTolerance 2 | 2 | 0.0039573 | SiftMaxRelativeTolerance 3 | 1 | 0.024838 | SiftMaxRelativeTolerance 4 | 2 | 0.05929 | SiftMaxRelativeTolerance 5 | 2 | 0.11317 | SiftMaxRelativeTolerance 6 | 2 | 0.12599 | SiftMaxRelativeTolerance 7 | 2 | 0.13802 |SiftMaxRelativeTolerance分解停止,因为残差信号中的极值数量小于“MaxNumExtrema”值。
EMD.
使用原始信号、前3个IMF和残差生成交互式绘图。在命令窗口中生成的表格表示每个生成的IMF的sift迭代次数、相对公差和sift停止标准。可以通过删除“显示”
名称-值对或指定为0.
.
右键单击绘图中的白色空间以打开IMF选择器窗口。使用IMF选择器选择性地查看生成的IMFs、原始信号和残差。
在列表中选择要显示的imf。选择是否在图上显示原始信号和残差。
选定的IMF现在显示在绘图上。
使用该图可以可视化从原始信号分解的各个分量以及残差。请注意,残差是针对IMF总数计算的,并且不会根据在中选择的IMF而改变IMF选择器窗口。
X
-时域信号时域信号,指定为实值矢量,或单个列的单个变量时间表。如果X
是一个时间表,X
必须包含递增的有限行时间。
指定可选的逗号分隔的对名称,值
参数。的名字
参数名和价值
是对应的值。的名字
必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家
.
“MaxNumIMF”,5
“SiftRelativeTolerance”
-Cauchy-type收敛性判据0.2
(默认)|正标量Cauchy-type收敛准则,指定为逗号分隔对组成“SiftRelativeTolerance”
一个正标量。SiftRelativeTolerance
是筛选停止标准之一,即当当前相对公差小于SiftRelativeTolerance
。有关详细信息,请参阅筛选相对公差.
“SiftMaxIterations”
-最大筛选迭代次数100
(默认)|正标量整数最大筛选迭代次数,指定为逗号分隔对,由“SiftMaxIterations”
和一个正标量整数。SiftMaxIterations
是筛分停止标准之一,即,当当前的迭代次数大于时,筛分停止SiftMaxIterations
.
SiftMaxIterations
只能使用正整数指定。
“MaxNumIMF”
-提取的imf的最大数目10
(默认)|正标量整数提取的最大imf个数,由逗号分隔的对组成“MaxNumIMF”
和一个正标量整数。Maxnumimf.
是分解停止标准之一,即当生成的IMF数等于时,分解停止Maxnumimf.
.
Maxnumimf.
只能使用正整数指定。
“MaxNumExtrema”
-残差信号中的最大极值数1
(默认)|正标量整数残差信号中的最大极值数,指定为逗号分隔对组成的“MaxNumExtrema”
和一个正标量整数。MaxNumExtrema
是否有一个分解停止准则,即当极值个数小于时分解停止MaxNumExtrema
.
MaxNumExtrema
只能使用正整数指定。
“MaxEnergyRatio”
-信号与剩余能量的比值20
(默认)|标量信号与剩余能量之比,指定为逗号分隔对组成“MaxEnergyRatio”
和一个标量。MaxEnergyRatio
是筛选开始时信号能量与平均包络能量之比。MaxEnergyRatio
是分解停止标准之一,即当电流能比大于时的分解停止MaxEnergyRatio
。有关详细信息,请参阅能量比.
“插值”
-包络建设的插值方法样条的
(默认)|“pchip”
包络建筑的插值方法,指定为逗号分隔对组成“插值”
,要么样条的
或“pchip”
.
指定插值
作为:
样条的
,如果X
是平滑信号
“pchip”
,如果X
这是一个非光滑信号
样条的
插值方法采用三次样条“pchip”
使用分段三次埃尔米特插值多项式。
“显示”
-切换命令窗口显示信息切换命令窗口显示的信息,指定为逗号分隔对组成“显示”
不是0就是1。在命令窗口中生成的表格表示每个生成的IMF的sift迭代次数、相对容差和sift停止准则。指定陈列
如1显示表或0隐藏表。
国际货币基金组织
- 内在模式功能固有模式函数(IMF),作为矩阵或时间表返回。每个IMF是一个振幅和频率调制信号,具有正和缓慢变化的包络。要对信号进行频谱分析,可以对其IMF应用Hilbert-Huang变换。看见遗传性出血性毛细血管扩张症
和本征模函数.
国际货币基金组织
返回:
一个矩阵,其每一列是国际货币基金组织
,当X
是一个向量
一个时间表,当X
是单个数据列时间表
剩余的
- 信号的残余信息
-诊断的附加信息诊断的其他信息,返回为具有以下字段的结构:
NumIMF
—提取的IMFs个数
NumIMF
是一个从1到的矢量N,在那里N是国际货币基金组织的数量。如果没有提取IMFs,NumIMF
是空的。
NumExtrema
-每个IMF中的极值数
NumExtrema
是一个长度等于imf数的向量K.th元素NumExtrema
的极值数是多少K.如果没有提取IMF,NumExtrema
是空的。
大教堂
-每个货币基金组织的零交叉数
每个国际货币基金组织的过零次数。大教堂
是一个长度等于imf数的向量K.th元素大教堂
是中的过零次数K.如果没有提取IMF,大教堂
是空的。
NumSifting
-用于提取每个IMF的筛选迭代次数
NumSifting
是一个长度等于imf数的向量K.th元素NumSifting
是提取数据时使用的筛选迭代次数K.如果没有提取IMF,NumSifting
是空的。
MeanEnvelopeEnergy
-每一货币基金组织获得的上下信封平均值的能量
如果问题
上面是信封和吗勒
是下包络层,MeanEnvelopeEnergy
是平均值(((le + ul)/ 2)。^ 2)
.MeanEnvelopeEnergy
是一个长度等于imf数的向量K.th元素MeanEnvelopeEnergy
是平均包络能量K.如果没有提取IMF,MeanEnvelopeEnergy
是空的。
RelativeTolerance
-每个IMF的残差的最终相对公差
相对公差定义为上一个筛分步骤和当前筛分步骤的残差的平方2范数与下一个筛分步骤的残差的平方2范数之比一世筛选步骤。当RelativeTolerance
少于SiftRelativeTolerance
.有关其他信息,请参阅筛选相对公差.RelativeTolerance
是一个长度等于imf数的向量K.th元素RelativeTolerance
是否获得了最终的相对公差K.如果没有提取IMF,RelativeTolerance
是空的。
经验模式分解(EMD)算法分解信号X(T.)转化为内禀模态函数(IMFs)和迭代过程中的残差。算法的核心组件涉及筛选函数X(T.)获取一个新函数y(T.):
首先求的局部极小值和极大值X(T.).
然后使用局部极值来构造上下信封S.−(T.)和S.+(T.),分别为X(T.).形成信封的平均值,m(T.).
减去平均值X(T.)获得残留:y(T.) =X(T.)−m(T.).
分解的概述如下:
首先,让R.0.(T.) =X(T.),在那里X(T.)是初始信号,让我们一世= 0.
在筛选之前,检查R.一世(T.):
的局部极值总个数(TN)R.一世(T.).
找到能量比(ER)R.一世(T.)(见能量比).
如果(ER >MaxEnergyRatio
)或(TN <MaxNumExtrema
)或(imf数量>Maxnumimf.
),然后停止分解。
允许R.一世,上一页(T.) =R.一世(T.).
筛R.一世,上一页(T.)获得R.一世,Cur(T.).
检查R.一世,Cur(T.)
求的相对公差(RT)R.一世,Cur(T.)(见筛选相对公差).
获取当前的SIFT迭代号(in)。
如果(RT<SiftRelativeTolerance
)或(在>SiftMaxIterations
)然后停止筛分。已找到IMF:国际货币基金组织一世(T.) =R.一世,Cur(T.).否则,让我们R.一世,上一页(T.) =R.一世,Cur(T.)然后转到步骤5。
允许R.一世+1(T.) =R.一世(T.)−R.一世,Cur(T.).
允许一世=一世+ 1.返回步骤2。
EMD算法通过迭代筛选过程分解信号X(T.)进入imfs.国际货币基金组织一世(T.)和剩余R.N(T.):
最初由Huang等人介绍。[1],IMF被定义为具有两个特征的函数:
本地极值的数量 - 局部最小值和局部最大值的总数 - 以及最多的过零点的数量不同。
由局部极值构造的上下包络的平均值为零。
然而,正如[4],筛选直到获得一个严格的IMF,可能会产生没有物理意义的IMF。具体地说,筛选直到零交叉点的数目和局部极值最多相差1,就会产生像imf这样的纯色调函数,换句话说,函数非常类似于在傅立叶基上投影得到的函数。这种情况正是EMD努力避免的,因为它们的物理意义而偏爱调幅-调频调制组件。
参考[4]提出选项以获得物理上有意义的结果。的EMD.
函数通过使用筛选相对公差,柯西型停止准则。的EMD.
函数迭代以提取自然的AM-FM模式。生成的imf可能不满足局部极值-零交叉准则。看到正弦波固有模函数的过零和极值.
筛选相对公差是建议的Cauchy型停止标准[4].当当前相对容限小于时,筛选停止SiftRelativeTolerance
.当前相对公差定义为
因为Cauchy标准不直接计算零交叉口和局部极值的数量,所以可以通过分解返回的IMF不满足内部模式功能的严格定义。在这些情况下,您可以尝试降低价值SiftRelativeTolerance
从它的默认值。看到[4]参阅停止标准的详细讨论。本文还讨论了在经验模态分解中坚持严格定义imf的优缺点。
能量比是筛选开始时信号的能量与平均包络能量的比值[2].当当前能量比大于时分解停止MaxEnergyRatio
. 对于一世在IMF中,能量比的定义为
[1]黄,诺登e.,郑申,史蒂文r. long,Manli C.吴,兴H. Shih,Quanan Zheng,Nai-Chyuan Yen,Chi Chao Tung和Henry H. Liu。“实证模式分解与非线性和非静止时间序列分析的贝尔伯特光谱。”伦敦皇家学会会刊。系列A:数学、物理和工程科学454,没有。1971年(1998年3月8日):903-95。https://doi.org/10.1098/rspa.1998.0193。
Rato, r.t., M.D. Ortigueira和A.G. Batista。《关于HHT,它的问题和一些解决办法》金宝搏官方网站机械系统和信号处理22,第6号(2008年8月):1374-94。https://doi.org/10.1016/j.ymssp.2007.11.028.
[3]瑞利,加布里埃尔,帕特里克弗兰德里林和保罗湾。“关于经验模式分解及其算法。”IEEE-EURASIP非线性信号和图像处理车间2003.NSIP-03。第8 - 11级,意大利。。
王刚,陈先耀,乔芳丽,吴兆华,黄东。关于本征模态函数自适应数据分析的进展02年,没有。03(2010年7月):277-93。https://doi.org/10.1142/S1793536910000549。
使用注意事项及限制:
代码生成不支持时间表。金宝app
属性指定的插值方法“插值”
名称-值对必须是编译时常量。
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
你也可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。