基于神经网络的工业设备故障智能诊断分类系统
项目介绍
本项目是一个基于MATLAB开发的人工智能故障诊断平台。该系统通过内部集成的信号模拟、信号处理与机器学习算法,实现对工业旋转机械(如轴承)运行状态的自动识别与分类。程序构建了一个完整的端到端工作流,从传感器数据的模拟生成开始,经过时频域特征提取、数据预处理,最终进入BP神经网络进行训练与分类,并提供详尽的可视化分析报告。
功能特性
- 多状态信号模拟:能够自动生成包含正常状态及三种典型故障(内圈、外圈、滚动体)的高频振动模拟信号。
- 混合特征提取:融合了时域统计特征与频域能量特征,构建高维特征向量以描述信号特性。
- BP神经网络分类:利用双隐藏层的模式识别网络(PatternNet)进行非线性分类。
- 全流程可视化:提供从原始波形到训练收敛曲线、混淆矩阵、ROC曲线及PCA特征分布的全面图表展示。
- 自动化评估:自动计算测试集准确率,并评估模型的泛化能力。
系统要求
- 软件环境:MATLAB R2018a 或更高版本。
- 工具箱依赖:
* Deep Learning Toolbox (用于神经网络构建与训练)
* Statistics and Machine Learning Toolbox (用于特征计算、PCA分析及ROC曲线绘制)
* Signal Processing Toolbox (用于FFT频谱分析)
使用方法
- 启动MATLAB环境,将当前工作目录设置为并通过路径指向包含脚本的文件夹。
- 如果不希望覆盖现有的随机结果,代码中已设置固定随机种子以保证结果可复现。
- 直接运行主程序脚本。
- 程序运行结束后,控制台将输出测试集准确率,并弹出多个图形窗口展示诊断分析结果。
核心算法与实现逻辑
本项目的主程序逻辑严格遵循以下五个关键模块:
1. 数据模拟与生成模块
程序不依赖外部文件,而是通过数学模型动态生成四类工业传感器数据,采样频率设定为 10kHz,每个样本时长 0.5秒。
- 正常状态 (Normal):基于50Hz的正弦基频信号,叠加随机高斯白噪声。
- 内圈故障 (Inner Race Fault):在基频上叠加高频(3000Hz)的指数衰减冲击信号,模拟周期性的高频撞击。
- 外圈故障 (Outer Race Fault):模拟低频调制的强周期性冲击(2500Hz载波),模拟外圈损伤特征。
- 滚动体故障 (Ball Fault):引入宽带混沌冲击成分,模拟滚动体表面损伤产生的不规则振动。
- 样本规模:每种类别生成150个样本,共计600个样本。
2. 特征提取模块 (Feature Extraction)
系统不对原始大数据直接进行网络输入,而是采用特征工程方法降低维度。对每个信号样本提取由10个分量组成的特征向量:
- 时域特征 (8维):均值 (Mean)、标准差 (Std)、有效值 (RMS)、峭度 (Kurtosis)、偏度 (Skewness)、峰值 (Peak)、波形因子 (Shape Factor, RMS/Mean)、峰值因子 (Crest Factor, Peak/RMS)。
- 频域特征 (2维):通过快速傅里叶变换 (FFT) 计算频谱能量 (Energy) 和频率重心 (Frequency Mean),以捕捉故障引起的频带能量变化。
3. 数据预处理
- 归一化:使用 Min-Max 缩放算法 (
mapminmax) 将所有特征数据映射到 [0, 1] 区间,消除量纲差异,加速网络收敛。 - 数据集划分:采用随机索引技术,将总样本集按 70% 训练集、15% 验证集、15% 测试集的比例进行互斥划分。
- 标签编码:将类别标签转换为 One-Hot 编码格式,适配神经网络的输出层结构。
4. BP神经网络模型构建
构建了一个经典的用于模式识别的前馈神经网络 (
patternnet),具体架构如下:
- 网络结构:输入层(10节点) -> 隐藏层1(20神经元) -> 隐藏层2(10神经元) -> 输出层(4节点,对应4种状态)。
- 训练参数:
* 损失函数:交叉熵 (Cross-Entropy)。
* 优化目标误差:1e-6。
* 最大迭代次数:1000 Epochs。
* 最小梯度阈值:1e-6。
5. 结果可视化与诊断
程序运行完毕后生成两张主要图表:
- 原始信号图:展示四种不同状态下的时域波形前0.05秒片段,直观对比故障冲击特征。
- 系统性能综合分析图(包含四个子图):
1.
训练收敛曲线:展示训练集、验证集和测试集的交叉熵损失随迭代次数下降的对数曲线,用于判断模型是否过拟合。
2.
混淆矩阵 (Confusion Matrix):以热力图形式展示测试集的分类结果,横轴为预测类别,纵轴为真实类别,直观反映各类别的误判情况。
3.
ROC曲线:采用 One-vs-All 策略绘制四种故障类型的受试者工作特征曲线,并计算AUC值,评估多分类性能。
4.
PCA特征分布:利用主成分分析将测试集的高维特征投影到二维平面,通过散点图展示不同类别样本在特征空间中的可分性。