摘要:该算法主要用于从轴承振动信号中提取故障特征。其核心思想是通过设计一组覆盖不同频率范围的滤波器组,对原始信号进行滤波处理,然后计算每个滤波后信号的周期性冲击指标,该指标结合了包络信号的经验健康指标和经验梯度指标能够有效衡量信号中周期性冲击成分的强度。算法通过寻找
该算法主要用于从轴承振动信号中提取故障特征。其核心思想是通过设计一组覆盖不同频率范围的滤波器组,对原始信号进行滤波处理,然后计算每个滤波后信号的周期性冲击指标,该指标结合了包络信号的经验健康指标和经验梯度指标能够有效衡量信号中周期性冲击成分的强度。算法通过寻找PSI值最大的频带,确定包含最显著故障特征的最优频率范围,最终提取出该频带内的信号进行分析。这种方法能够自适应地定位故障特征所在的频率 band,有效克服传统方法中需要先验知识选择频带的局限性,提高了轴承故障诊断的准确性和可靠性。
开始↓加载振动信号和参数↓计算信号FFT和频率轴↓确定滤波器组的边界和带宽↓for 每个滤波器 in 滤波器组:↓设计滤波器系数(低通/高通/带通)↓应用滤波器得到滤波后信号↓计算滤波后信号的包络↓计算包络的EHR和EGI指标↓计算PSI = EHR × EGI↓寻找最大PSI值对应的中心频率↓提取最优频带内的滤波信号↓计算包络谱并可视化结果↓结束算法步骤
1. 数据准备:加载轴承振动信号和相关参数,包括采样频率和轴承故障特征频率。
2. 频率分析:对信号进行快速傅里叶变换,建立频率轴,为后续滤波器设计做准备。
3. 滤波器组设计:根据轴承故障特征频率确定滤波器组的边界频率和带宽,设计一组覆盖不同频率范围的滤波器,包括低通、高通和多个带通滤波器。
4. 信号滤波:将原始信号通过每个滤波器,得到一组滤波后的信号。
5. 包络分析:对每个滤波后的信号进行希尔伯特变换,计算其包络信号。
6. 健康指标计算:对每个包络信号,计算两个健康指标:经验健康指标(EHR)基于包络信号的自相关函数,经验梯度指标(EGI)基于包络信号的统计特性。
7. 周期性冲击指标计算:将EHR和EGI相乘得到周期性冲击指标(PSI),该指标能够有效反映信号中周期性冲击成分的强度。
8. 最优频带选择:寻找PSI值最大的滤波器对应的中心频率,确定包含最显著故障特征的最优频率 band。
9. 特征提取:提取最优频带内的滤波信号,计算其包络谱,用于故障诊断。
10. 结果可视化:展示PSI随中心频率变化的曲线、最优频带内的时域信号以及包络谱,在包络谱上标记故障特征频率及其边带,便于故障特征识别。
import numpy as npimport matplotlib.pyplot as pltfrom scipy.io import loadmatfrom scipy.signal import hilbertimport time完整代码通过知乎学术咨询获取:
https://www.zhihu.com/consult/people/792359672131756032?isMe=1
工学博士,担任《Mechanical System and Signal Processing》审稿专家,担任
《中国电机工程学报》《控制与决策》,《系统工程与电子技术》,《电力系统保护与控制》,《宇航学报》等EI期刊审稿专家,担任《计算机科学》,《电子器件》 ,《现代制造过程》 ,《电源学报》,《船舶工程》 ,《轴承》 ,《工矿自动化》 ,《重庆理工大学学报》 ,《噪声与振动控制》 ,《机械传动》 ,《机械强度》 ,《机械科学与技术》 ,《机床与液压》,《声学技术》,《应用声学》等中文核心审稿专家。
擅长领域:现代信号处理,机器学习,深度学习,数字孪生,时间序列分析,设备缺陷检测、设备异常检测、设备智能故障诊断与健康管理PHM等。
来源:小盒科技论