基于物理先验嵌入与频率注意力机制的滚动轴承故障诊断(以模拟信号为例,Pytorch)

作品简介

该代码实现了一个融合轴承故障物理机理与深度学习的智能诊断系统。首先通过轴承故障信号模拟器基于轴承几何参数和故障物理模型生成包含健康、外圈故障、内圈故障和滚动体故障四种状态的振动信号,考虑了多种转速工况和故障严重程度。然后构建了一个故障先验嵌入的卷积神经网络,该网络创新性地引入了频率注意力模块,能够基于轴承故障特征频率的先验知识自适应增强相关频带特征,同时在损失函数中加入了物理约束项,确保模型预测结果符合轴承故障的物理规律。最后通过训练和验证,实现了对滚动轴承不同故障状态的准确识别和分类。

算法流程可适当参考:

开始
│
├─ 轴承故障信号生成
│  ├─ 初始化轴承几何参数
│  ├─ 计算故障特征频率
│  ├─ 生成健康信号(转频谐波+噪声)
│  ├─ 生成外圈故障信号(周期性冲击)
│  ├─ 生成内圈故障信号(幅值调制冲击)
│  └─ 生成滚动体故障信号(二次调制冲击)
│
├─ 数据集构建
│  ├─ 多转速多严重程度采样
│  ├─ 信号截取与标准化
│  └─ 数据加载器准备
│
├─ 故障先验嵌入CNN模型
│  ├─ 频率注意力模块
│  │  ├─ FFT频域变换
│  │  ├─ 故障频带权重增强
│  │  └─ 信号重构
│  ├─ 三层卷积特征提取
│  ├─ 批归一化与池化
│  └─ 全连接分类层
│
├─ 物理约束损失函数
│  ├─ 交叉熵损失
│  ├─ 包络谱分析
│  ├─ 健康状态约束(故障频率无峰值)
│  └─ 故障状态约束(相关频率有峰值)
│
├─ 模型训练优化
│  ├─ Adam优化器
│  ├─ 物理约束正则化
│  └─ 损失准确率监控
│
└─ 结果可视化
   ├─ 训练过程曲线
   ├─ 故障信号时域图
	└─ 故障频率特性图


详细算法步骤:

第一步:轴承故障物理建模与信号生成

基于轴承几何尺寸参数建立故障频率计算模型,根据滚动轴承运动学原理推导出外圈故障频率、内圈故障频率、滚动体故障频率和保持架故障频率的数学表达式。针对不同故障类型建立相应的振动信号物理模型,健康状态主要包含转频及其谐波成分,外圈故障表现为周期性冲击响应,内圈故障考虑转频调制效应,滚动体故障则体现为保持架频率的二次调制特征。

第二步:多工况数据集构建

设置多种转速条件和故障严重程度参数,系统性地生成四类轴承状态的振动信号样本。从长时间序列中随机截取固定长度的信号片段,确保数据多样性和代表性。将生成的信号数据和对应标签转换为深度学习框架可处理的张量格式,并按照批次大小进行数据加载器配置。

第三步:故障先验知识嵌入网络设计

构建具有物理机理引导的深度学习网络架构,在输入端设计频率注意力机制模块,通过对信号进行快速傅里叶变换,基于轴承故障特征频率的先验知识对相关频带进行选择性增强,突出故障敏感频率成分。采用三层卷积神经网络结构逐层提取信号特征,每层包含卷积运算、批量归一化、激活函数和池化操作,逐步抽象和压缩特征表示。

第四步:物理规律约束损失函数设计

在传统交叉熵损失函数基础上引入物理约束正则化项,通过希尔伯特变换计算信号的包络谱,根据模型预测的故障类型检查相应特征频率处是否存在符合物理规律的频谱特征。对于健康状态预测,惩罚在故障特征频率范围内出现显著峰值的情况;对于故障状态预测,要求在该类故障典型特征频率处必须存在明显峰值,确保模型预测结果与物理机理一致性。

第五步:模型训练与优化过程

采用自适应矩估计算法进行网络参数优化,在反向传播过程中同时考虑分类准确性和物理合理性双重目标。通过多轮迭代训练不断调整网络权重,监控训练过程中的损失函数值和分类准确率变化,确保模型稳定收敛并具备良好的泛化能力。

第六步:诊断结果分析与可视化

绘制训练过程中的损失函数下降曲线和准确率提升曲线,展示模型学习效果。对比显示不同故障类型的典型时域波形特征,验证信号生成模型的合理性。分析故障特征频率随转速变化的规律曲线,体现物理模型的正确性,为轴承故障诊断提供完整的理论依据和实用工具。

创作时间: