经验小波变换在信号处理及轴承故障诊断中的应用
moboyou 2025-05-04 15:26 11 浏览
经验小波变换(EWT)使用所谓的自适应小波细分方案从而创建信号的多分辨率分析 (MRA),我在科研中用的较多,但是效果也是看运气的,别人都是“数据驱动”,我靠“运气驱动”。EWT从信号频谱分割开始,将输入信号分解为若干的子频带信号,并提供信号的完美重建。EWT由Gilles教授开发,且Gilles和Heal提出了最原始的基于直方图的方法来分割频谱。
多分辨分析MRA将信号分解为不同尺度的分量(子频带),并通过对每个时间点的分量求和来恢复原始信号。目前许多算法都可以归为MRA框架,比如最大重叠离散小波变换,经验模式分解等算法。之所以EWT等基于小波的方法用的多,是因为该类方法具有严谨的数学推导过程,可解释性较强。EWT方法大体可分为4个步骤:
1.预设参数并选择分割频谱的方式;
2.自适应分割信号频谱,获得一组边界;
3.根据边界序列和经验小波构造滤波器组;
4.滤波并重构,获得一系列具有紧支撑的MRA分量
具体的理论推导可以阅读相关的一系列文章,文章末尾会给出相关文献,不再赘述,主要讲一下EWT在Matlab中是如何应用的,以及改进方向
EWT算法
在MATLAB的高版本中,可以直接使用ewt 函数来获取信号的MRA分量, MATLAB中EWT算法的结构如下:
(1)计算信号的Multitaper功率谱估计,这是功率谱的一个平滑、低方差估计,并将估计值归一化为在[0,1]范围内。默认情况下,严格识别所有峰值大于70%的峰值。关于Multitaper功率谱,可参考如下文章。
频谱分析中如何理解taper? - xiaotu Peng的回答 - 知乎
https://www.zhihu.com/question/372832396/answer/1838971028
(2)经验小波通带的过渡带在相邻峰的几何平均频率处交叉(这个看一下原文就很清楚了),Meyer小波的构造以及确定参数γ的方式见文献[1],由此形成一个Parseval 紧框架,Parseval 紧框架在现代信号处理中很常用。
(3)为了确定相邻通带之间的边界,可以使用相邻峰之间的第一个局部最小值,如果没有确定局部最小值,默认为几何平均值。注意,局部最小值方法对噪声极为敏感,实际应用时效果不好。
因为EWT的小波形成 Parseval 紧框架,所以滤波器组是自对偶的,即分析滤波器组等于综合滤波器组。 EWT在频域中对信号进行滤波,然后进行逆变换以获得分析系数。
下面给出一个简单的例子。首先,设置一个测试信号
rng default
fs = 500;
t = 0:1/fs:1-1/fs;
f1 = 1./(6/5+cos(2*pi*t));
f2 = 1./(3/2+sin(2*pi*t));
f3 = cos(32*pi*t+cos(64*pi*t));
sig = f1+f2.*f3;
sig = sig+randn(1,length(sig))/2;
sig = sig-mean(sig);
plot(t,sig)
xlabel('Time (sec)')
ylabel('Amplitude')
title('Test Signal')
然后绘制信号的周期谱图和平滑Multitaper估计值
[Pxx,F] = periodogram(sig,[],[],500);
Pxxmt = pmtm(sig,5,[],500,'Tapers','sine','power');
subplot(2,1,1)
plot(F,Pxx)
title('Periodogram')
subplot(2,1,2)
plot(F,Pxxmt)
title('Smoothed Estimate')
xlabel('Frequency (Hz)')
EWT分解
为了描述方便,使用默认设置的ewt 函数来获取信号的 MRA 和有关滤波器组的信息,当然还有好几种算法可以控制ewt函数并获得信号的MRA。
[mra,~,~,info] = ewt(sig);
size(mra)
可以看到,ewt将sig信号默认分解为了两个MRA分量,看一下分解波形,频谱就不画了
subplot(2,1,1);plot(t,mra(:,1));ylabel('mra1');
subplot(2,1,2);plot(t,mra(:,2));ylabel('mra2');
指定最大峰值数量
默认情况下,ewt 会找到2个MRA成分,观察一下ewt的滤波器组通带(中心频率与带宽),因为频率是归一化的,所以要乘以采样频率
info.FilterBank.Passbands*fs
注意到在 22 Hz处有一个边界,第1段有两个峰,因此将 MaxNumPeaks设置为3,以便ewt 使用3个最大峰确定滤波器通带
[mra,cfs,~,info] = ewt(sig,'MaxNumPeaks',3);
info.FilterBank.Passbands*fs
看一下分解波形
subplot(3,1,1);plot(t,mra(:,1));ylabel('mra1');
subplot(3,1,2);plot(t,mra(:,2));ylabel('mra2');
subplot(3,1,3);plot(t,mra(:,3));ylabel('mra3');
验证一下是否完美重建
max(abs(sig'-sum(mra,2)))
sum(sum(abs(cfs).^2))
norm(sig,2)^2
指定百分比阈值
此外还可以设置用于确定在Multitaper功率谱中保留哪些峰的百分比阈值,而不是指定最大峰数,指定最大峰数这个方法在噪声较大的信号中效果很拉跨。信号的Multitaper功率谱估计中的局部最大值被归一化到[0,1]范围内,将 百分比阈值设置为 2。
[~,~,~,info] = ewt(sig,'PeakThresholdPercent',2);
info.FilterBank.Passbands*fs
此外,还可以设置频谱的分割方法(例如localmin,geomean方法)和频率分辨率等参数,就不一一列举了。
下面开始重头戏:轴承故障诊断,试试“运气驱动”吧。
轴承数据的话先看下前几篇文章
基于包络谱的轴承故障诊断方法-第1篇 - 哥廷根数学学派的文章 - 知乎
https://zhuanlan.zhihu.com/p/533579665
基于包络谱的轴承故障诊断方法-第2篇 - 哥廷根数学学派的文章 - 知乎
https://zhuanlan.zhihu.com/p/533984966
基于离散小波变换的滚动轴承故障诊断 - 哥廷根数学学派的文章 - 知乎
https://zhuanlan.zhihu.com/p/534179963
以第3轴承Z轴70Hz第8组数据为例,其包络谱如下
下面开始ewt分解,首先,指定最大峰值数量MaxNumPeaks=3,求得ewt的滤波器组通带信息为:
子频带的波形及包络谱如下:
看一下最大峰值数量MaxNumPeaks=4时的各子频带的包络谱:
看一下最大峰值数量MaxNumPeaks=5时的各子频带的包络谱:
可见,MaxNumPeaks>5就不用考虑了
调整百分比阈值
首先,将百分比阈值设置为 2,得到10个mra分量,看一下ewt的滤波器组通带信息:
ans =
1.0e+03 *
4.0840 5.1200
3.9510 4.0840
3.9380 3.9510
3.3400 3.9380
2.7670 3.3400
2.4940 2.7670
2.1300 2.4940
1.9060 2.1300
1.0800 1.9060
0 1.0800
其子频带分量的包络谱如下:
可见第5个分量故障特征频率十分突出,放大看一下:
再看一下将百分比阈值设置为5,得到6个mra分量,看一下ewt的滤波器组通带信息:
ans =
1.0e+03 *
3.9510 5.1200
3.9380 3.9510
3.3400 3.9380
2.7670 3.3400
2.4940 2.7670
0 2.4940
其子频带分量的包络谱如下:
重看第4个分量:
频谱分割方法
当MaxNumPeaks=5,频谱分割方法为localmin(局部极小)时,各mra分量的包络谱如下图:
效果拉跨,localmin受噪声影响太大了。
当MaxNumPeaks=5,频谱分割方法为geomean(几何平均)时,各子频带分量的包络谱如下图:
重看第4个分量
此外,还有很多优秀的频谱分割方法,比如自适应法,就不一一列举了。
参考文献:
[1] Gilles, Jér^ome. “Empirical Wavelet Transform.” IEEE Transactions on Signal Processing 61, no. 16 (August 2013): 3999–4010. https://doi.org/10.1109/TSP.2013.2265222.
[2] Gilles, Jér^ome, Giang Tran, and Stanley Osher. “2D Empirical Transforms. Wavelets, Ridgelets, and Curvelets Revisited.” SIAM Journal on Imaging Sciences 7, no. 1 (January 2014): 157–86. https://doi.org/10.1137/130923774.
[3] Gilles, Jér^ome, and Kathryn Heal. “A Parameterless Scale-Space Approach to Find Meaningful Modes in Histograms — Application to Image and Spectrum Segmentation.” International Journal of Wavelets, Multiresolution and Information Processing 12, no. 06 (November 2014): 1450044. https://doi.org/10.1142/S0219691314500441.
重要重要重要
EWT的不足也很明显,比如EWT会消耗大量的时间,并且分割出很多无效分量;新的模态混叠现象出现了,同一个分量也可能会被分割为两部分等。对此很多学者对此进行了研究和改进,为了对应经验小波变换的四个步骤,各种改进方法也被作者分为四类。第一类:优化输入参数。为了解决分割频谱和图像时的参数问题,Gilles将傅里叶谱变为尺度空间表示中的函数,提出了概率、“Otsu's”、“k-Means”3种方式,从尺度空间函数中获取有意义的模式。上述基于尺度空间函数的频谱分割方式增加了经验小波变换的自适应性,但是会导致边界的个数增多,也就意味着无效分量会增多,运算耗时也会增加。第二类:更换分割谱。经验小波变换在频谱中划分边界,但Gilles提出的三种方式极易受到噪声的干扰而使边界的个数增多。因此,抑制谱中的噪声成分、放大有用成分有利于边界的划分,无效分量的个数也会被减少。因此可以用自回归功率谱、贝塞尔级数展开(Fourier-Bessel Series Expansion, FBSE)等代替频谱。第三类:优化边界。比如采用顺序统计滤波器(Order tatistic Filter, OSF)的包络估计方法来分割频谱。第四类:筛选MRA分量,这个研究的就比较多了,什么改进峭度指标之类的,不再赘述。
好了,EWT就到这里了,以后慢慢更新一些改进算法,码字不易,且行且珍惜。
相关推荐
- 声学EI要完稿?十步速写法
-
【推荐会议】国际声学与振动会议(ICAV)会议号:CFP23112A截稿时间:2025年4月20日召开时间/地点:2025年8月15-17日·新加坡论文集上线:会后3个月提交EiComp...
- 结构力学!EI会议图表规范秘籍
-
推荐会议:国际结构与材料工程进展大会(ISME2026)会议编号:EI#73521截稿时间:2026年3月10日召开时间/地点:2026年8月15-17日·德国柏林论文集上线:会后4...
- 傅里叶级数物理意义的直观理解:利用傅里叶级数逼近方波信号
-
上篇文章将向大家介绍频谱的概念,对傅里叶级数、傅里叶积分、傅里叶变换进行了数学的推导,并解释了它们各自的物理意义。推导过程见我的上一篇文章:频谱分析——频谱概念(傅里叶变换、级数、积分及物理意义)如下...
- 通过对航空发动机整机振动进行分析,有何控制方法?
-
前言针对航空发动机整机振动问题的复杂性和多样性,以整机振动的振源分析为出发点,总结国内外关于转子系统故障、气流激振、轴承故障、齿轮故障和结构局部共振等引起的整机振动的研究情况。结合航空发动机整机结构动...
- MATLIB中使用PCA
-
主成分分析PCA(PrincipalComponentsAnalysis),奇异值分解SVD(Singularvaluedecomposition)是两种常用的降维方法降维致力于解决三类问题:降维...
- 数据处理|软件:让科研更简单2
-
书接上回,继续介绍免费的数据处理软件。eGPS一款热图绘制专用软件,热图就是用颜色代表数字,让数据呈现更直观,对比更明显。优点:小巧方便,基本功能齐全,包括数据转换、聚类分析、颜色调整等等缺点:常见的...
- 电力系统常用的通讯协议及其在Speedgoat系统中的实现
-
在电力系统中,IEC61850协议、DNP3协议、ModbusTCP广泛应用于远程终端设备(RTU)、智能电子设备(IED)交互以及监控和数据采集(SCADA)系统。一、IEC61850协议IE...
- 电子工程师的常用仿真软件
-
不知道从事电子行业的工程师,有没有使用模拟仿真工具,仿真软件网上又有很多,初学者,可能只知道Multisim和Proteus。一般Multisim适合在学习模拟电路和电路分析原理课程时使用,便于理解电...
- 技术论文|异结构混沌系统的组合同步控制及电路实现
-
欢迎引用[1]李贤丽,马赛,樊争先,王壮,马文峥,于婷婷.异结构混沌系统的组合同步控制及电路实现[J].自动化与仪器仪表,2022,No.276(10):80-84.DOI:10.14016/j.cn...
- 现场︱某110KV主变事故过程仿真分析
-
三峡电力职业学院、河南省电力公司洛阳供电公司的研究人员李莉、任幼逢、徐金雄、王磊,在2016年第6期《电气技术》杂志上撰文,针对某110KV变电站主变差动保护跳闸事故,结合事故相关检测数据,通过MAT...
- 光伏发电系统篇:单级式并网系统实时仿真
-
在全球积极推动清洁能源转型的大背景下,光伏发电作为重要的可再生能源利用方式,得到了广泛关注和迅猛发展。目前常用的光伏并网及光伏电站主要拓扑结构有单级式和双级式。相较于传统的多级式系统,单级式光伏发电并...
- 光伏发电系统篇:三电平并网逆变器实时仿真
-
一、三电平并网逆变器在能源转型加速的当下,分布式能源接入电网需求大增。三电平并网逆变器凭借低谐波、高功率密度等优势,有效提升电能转换效率,于新能源并网发电中担当关键角色。常见的三电平电路拓扑结构包括二...
- 自制3.5KW大功率逆变器,很简单,看过这个电路原理就懂了
-
前言拿下8000元奖金的项目,是什么水平?本项目经过联合湖南科技大学光伏逆变以及电力电子研究生团队共同探讨方案。项目成本:1200元,获得奖金:8000元!参加赛事:立创开源硬件平台_星火计划·外包赛...
- 圈内分享:电容式加速度计接口电路非线性建模与仿真设计
-
摘要:非线性是Sigma-Delta(ΣΔ)加速度计系统的关键指标之一。基于一个五阶ΣΔ加速度计结构,分析了其主要的非线性模块,在MATLAB中建立了整体结构的行为级模型,并利用根轨迹法进行了稳...
- 基于Matlab/Simulink建立一种Thevenin/RC电池模块仿真模型
-
本文以锂电池数学模型为基础,在Matlab/Simulink的仿真系统中,建立了一种Thevenin/RC电池模块仿真模型,通过实际工况试验,测试精度在允许误差范围内,为电池SOC/SOH研究提供了极...
- 一周热门
- 最近发表
- 标签列表
-
- curseforge官网网址 (16)
- 外键约束 oracle (36)
- oracle的row number (32)
- 唯一索引 oracle (34)
- oracle in 表变量 (28)
- oracle导出dmp导出 (28)
- oracle 数据导出导入 (16)
- oracle两个表 (20)
- oracle 数据库 使用 (12)
- 启动oracle的监听服务 (13)
- oracle 数据库 字符集 (20)
- powerdesigner oracle (13)
- oracle修改端口 (15)
- 左连接 oracle (15)
- oracle 标准版 (13)
- oracle 转义字符 (14)
- asp 连接 oracle (12)
- oracle安装补丁 (19)
- matlab三维图 (12)
- matlab归一化 (16)
- matlab求解方程 (13)
- matlab坐标轴刻度设置 (12)
- matlab脚本 (14)
- matlab多项式拟合 (13)
- matlab阶跃函数 (14)