学生姓名:王星童
班班级级:交控2018-02班
指导教师:曾祥光
毕设题目:滚动轴承故障诊断技术研究及软件开发
一、概况
1.选题意义
机械故障是机械设备在运行过程中常见的一种现象,它主要表现为机械系统中某些机械零部件出现不同程度的损伤,例如加工机床的摇晃、齿轮箱轮齿运行速度过高导致磨损等等。在机械设备故障中,旋转机械的故障频率是最高的。而在旋转机械中,滚动轴承又是最易受损的部件之一。滚动轴承作为机械设备必不可少的组成之一,一直有着“工业润滑剂”的称号。据有关资料统计,每年因滚动轴承导致的机械设备故障占总故障的30%左右,因此,需要对滚动轴承及其故障诊断进行深入地分析,通常做法是以加速度传感器采集到滚动轴承关于振动的时间序列信号,再利用常见的信号分析方法,完成故障诊断。
现有的故障诊断方法大致分为以下三个方向,如图1所示:一是以数学模型为主,建立输入与输出之间的数学模型,通过数学关系从采集到的信号中提取出故障参数,以参数的变化推测出故障发生的类型及程度;二是以经验知识为主,该方法大多依赖于故障诊断领域内权威专家的知识经验和相关专业人员长期在现实工况下的实践所得经验,这类方法有强烈的主观性,没有严格的数学公式推导,非常考验专家的知识系统。由于实际工况的复杂性,故障诊断并不是一个简单的线性系统,这使得诊断变得艰难起来。以数据驱动为主的方法则不需要复杂的数学建模,它侧重于通过传感器来监测数据,采用大数据技术,配合统计学、信号处理等方法来实现诊断。
图1 轴承故障诊断方法
仅凭借信号分解进行故障诊断会在实际工业中出现很多问题。首先,通过傅里叶变换等信号分解后,将所得频谱图传输给相关专家,或搭建人工神经网络形式的故障诊断,缺少客观依据,主观性强,同时容易出现误判。其次,机械装备的工况十分负责,产生的振动常常是多台设备振动的相互叠加,同时还伴随着人为的声音信号。这样在机械设备上,传感器采集到的振动信号就存在瞬态冲击响应,具有强烈的随机性和非平稳性,诊断正确率不高。从现代工业的快速发展来看,传感器对数据的采集甚至能达到百万级别,如此庞大的数据是人为无法直接分析的。所以,深度学习的方法应运而生,并受到社会的广泛关注。
2.任务分解
第一部分:研究滚动轴承的故障类型和诊断方法以及深度学习方法;
第二部分:建立基于一维卷积网络的滚动轴承故障诊断模型;
第三部分:建立基于一维卷积长短时记忆网络的滚动轴承故障诊断模型;
第四部分:滚动轴承故障诊断系统的开发;
第五部分:毕业设计论文的撰写
二、已完成工作
1.建立基于一维卷积网络的滚动轴承故障诊断模型:
一维CNN模型结构示意图如下:
图2一维CNN模型结构示意图
滚动轴承故障诊断网络模型流程图如下:
图3 滚动轴承故障诊断网络模型流程
通过不断调参,选取下列模型结构及参数设置:
层名称 |
卷积核数 |
核尺寸 |
步长 |
Conv1 |
32 |
20 |
8 |
MaxPooling1 |
32 |
4 |
2 |
Conv2 |
64 |
5 |
2 |
MaxPooling2 |
64 |
2 |
2 |
Dense |
1 |
500 |
|
Softmax |
1 |
10 |
|
批尺寸设置为128;训练周期(epochs)为30;激活函数为ReLU,每个样本的信号长度为1024;每类样本的数量为2000;标签分类为10,训练集测试集验证集划分比例为0.7:0.2:0.1,损失函数为交叉熵,分别在工况为0HP,1HP,2HP,3HP下进行模型仿真,得到结果如下:
工况 |
0HP |
1HP |
2HP |
3HP |
模型精度 |
98.4% |
97.6% |
96.8% |
97.55% |
数据可视化如下(从左到右以此为0HP-3HP工况下的模型精确度训练图):
图4 模型训练可视化图
测试集样本为2000,每类故障样本均为200,因此绘制混淆矩阵,混淆矩阵可更直观地看出模型的分类情况和精度,如图5所示:
图5四种工况下CNN模型的混淆矩阵
2.建立基于一维卷积长短时记忆网络的滚动轴承故障诊断模型:
故障振动信号是具有时间相关性的序列数据,分析其内部的时间依赖可以进一步提升故障诊断的准确率。为此,提出一种新的结合CNN特征提取与LSTM关于时间建模优势两种网络模型的改进滚动轴承故障诊断模型(CNN-LSTM),结构图如下:
图6 CNN-LSTM结构图
为了进一步增强模型提取信号特征的能力,于是本文将第一层改为大卷积核卷积层,同时可提升卷积效率,为了避免模型过拟合,还采用Dropout算法;为了保留信号的时间序列信息,融合长短时记忆网络进行模型训练。模型结构及参数设置如下:
层名称 |
单元数 |
核尺寸 |
步长 |
Conv1 |
16 |
64 |
16 |
MaxPooling1 |
16 |
2 |
2 |
Conv2 |
32 |
3 |
1 |
MaxPooling2 |
32 |
2 |
2 |
LSTM |
32 |
|
|
Dense |
1 |
250 |
|
Softmax |
1 |
10 |
|
批尺寸设置为128;训练周期(epochs)为30;卷积网络激活函数为ReLU,长短时记忆网络激活函数为tanh,循环激活函数为sigmoid;损失函数为交叉熵;每个样本的信号长度为1024;每类样本的数量为2000;训练集测试集验证集划分比例为0.7:0.2:0.1,分别在工况为0HP,1HP,2HP,3HP下进行模型仿真,得到结果如下:
|
模型精度 |
训练时间/epoch |
工况 |
0HP |
1HP |
2HP |
3HP |
|
CNN-1D |
98.4% |
97.6% |
96.8% |
97.55% |
1s10ms |
LSTM |
95.7% |
97.3% |
97.9% |
97% |
8s74ms |
CNN+LSTM |
99.95% |
98.85% |
98.35% |
97.95% |
1s8ms |
由上表可以看出,本文提出的CNN-LSTM模型比CNN模型和LSTM模型在凯斯西储大学数据集各类工况下滚动轴承故障诊断的精度都高,同时每个训练周期所耗时间最短,效率最高。下面将CNN-LSTM模型可视化:
图7 CNN-LSTM模型训练可视化
同时给出4种工况下的混淆矩阵:如图8所示:
三、下一步工作计划
1.完成滚动轴承故障诊断软件系统的设计。
2.完成毕业论文的撰写,论文大纲如下:
第一章 绪论
第二章 滚动轴承与深度学习相关理论
第三章 基于一维卷积网络的滚动轴承故障诊断
第四章 基于一维卷积长短时记忆网络的滚动轴承故障诊断
第五章 滚动轴承故障诊断软件系统的设计
问题一:对于来自现场的数据,是否依然可以准确地进行故障分类?
回答:在我所建立的模型当中,采用的是凯斯西储大学的滚动轴承数据,其中包含了7mm,14mm,21mm三种尺寸的故障数据,如果现场的滚动轴承尺寸为这三种,那么可以进行故障分类,如果不是这三种,就需要对现场滚动轴承进行测试,收集一定样本的故障数据,随后进行训练,训练后得到的模型即可用于现场数据。
问题二:该网络模型的结构是否是固定的,神经元的个数能否自适应地调整?
回答:就目前来说,CNN-LSTM的网络结构是固定的,不随着数据的变化而自适应地调整网络结构,如层数、神经元个数;网络中所改变的仅是超参数,网络框架并没有发生改变。
我的研究生方向是状态检测与故障诊断,随着人工智能地快速发展,工业上也逐渐趋于智能化。在完成毕业设计的过程中,对于滚动轴承的故障诊断,我也想过用经典信号处理的方法进行故障诊断,但是查阅众多资料,最后还是确定采用深度学习的方式进行轴承的故障诊断。深度学习是我从未接触过的一个领域,Python也是我从未接触过的一门编程语言,一切都从零开始。随着毕设进度的推进,我渐渐对深度学习有了一定程度的了解,学会了怎么搭建不同类型的神经网络,在这从0到1的过程中,我提高了自己查阅文献的能力,同时也坚定了未来投身科研的决心。
最后感谢曾祥光老师和丁建明老师。在我遇到困难时,曾老师总是指导我怎么去解决所遇到的问题,为我的毕设提供了许多思路,没有因为我建立的网络模型简单而苛责我,相反,曾老师一直鼓励我去研究神经网络,为我以后研究生时的研究方向提供了许许多多的想法;感谢丁老师对我的包容和鼓励,通过毕设来让我顺利过渡到研究生的学习阶段,让我提前对课题组的研究方向有一定程度的了解。