1. 前沿
故障预测是根据设备现有的运行数据预测未来某个时间点的运行情况,或是预测设备能正常运行的周期时间,属于预测性维护,相比定期维护及事后维护方法,这是目前对于设备维护成本最低、最精准、最为合理的一种方法,也是目前研究学者最热的方向 [1] [2]。故障预测技术主要分为基于模型、基于概率统计、基于数据驱动的三种故障预测技术。其中基于模型的故障预测技术的常用模型为灰色模型,常用于故障短期预测,其算法主要包括卡尔曼滤波器算法及粒子滤波器两种。基于概率统计的故障预测常用方法主要为以时间序列的预测法、回归预测法等等。基于数据驱动的故障预测方法主要包括人工神经网络、模糊系统和其他人工智能系统,人工神经网络可以模拟非线性函数,从样本中进行学习,因此在故障预测中具有广泛的应用 [3] [4]。
旋转机械的故障来源较为复杂,如设计制造时的结构问题,安装时的间隙误差问题,操作时的长期过载问题,长期使用的部件受损问题等。这些故障来源会造成一些故障现象,如转子不平衡、部件受损、油膜震荡、轴裂纹等,每一种故障都具有不同或相同的特征,直接表现为如振动异常、温度过高等特征。因此,旋转机械的故障预测是一个复杂、随机、非线性的问题,在没有固定的知识模型来进行预测时,通过历史特征数据建立故障预测模型是当前最为科学、准确的方式,因此对基于数据驱动的研究对于旋转机械故障预测具有很大的实际意义。
人工神经网络的起源是1943年,美国心理学家Warren McCulloch和数理逻辑学家Walter Pitts提出了人工神经网络的概念,同时建立了人工神经元的数学模型,之后另一学者Frank Rosenblatt创造了“感知机”,并成功实验出了一台能识别英文字母的基于感知的神经计算机——MARK1 [5];第二代人工神经网络设计了多个隐藏层来代替单个特征层,并使用BP算法来计算网络参数,并且利用卷积神经网络(CNN, Convolutional Neural Network)实现了银行支票手写体的自动识别,该算法取得了巨大的成功,但是这一模型仍然存在很多问题,如无法对无标注数据进行训练,隐藏层数的限制,训练速度慢,容易陷入局部最优解等 [6];2006年,Hinton提出了深度神经网络(DNN),一种深层网络模型,属于第三代人工神经网络,他使用一种贪心无监督训练方法来解决问题,其训练方法降低了学习隐藏层参数的难度,该算法的训练时间和网络的大小和深度近乎线性关系 [7],目前各种神经网络模型在语音识别、图像识别、故障预测等领域都有了很大的发展,因此深度神经网络是目前机器学习中具有非线性、快收敛、网络深等特点的人工神经网络,可以很好地解决旋转设备故障的数据模型难构建、预测精度低的问题。
2. 数据采集
数据采集是故障预测的最基础也是非常重要的一部分,数据的正确性及合理性直接影响模型构建及准确性,因此数据采集系统的设计需要考虑采集的数据需要全面性及科学性。基于在前言里对于旋转机械的故障特征及故障部位的分析,旋转机械的数据采集主要在于电机、传动轴、轴承、支架等结构的振动(或加速度)、温度信号,参考国外学者对于三轴振动信号的采集系统的设计 [8],分别采集各信号,采集流程如图1所示。
3.深度神经网络-DNN (Deep Neural Network)
深度神经网络是在人工神经网络的基础上发展而来的,其结构是一种与传统神经网络相似的结构,由输入层、多个隐藏层、输出层组成,其特点是通过组合低层特征形成更加抽象的高层表示属性类别或特征,从而发现数据的内在特征表示 [9],节点的连接是通过相邻层的节点进行,同层及跨层是没有连接的;这种分层结构,是比较接近人类大脑的结构的,这种结构可以解决大量的分类问题,是线性不可分的。通过在输入层与输出层之间引入隐层(隐层个数可以大于或等于1)作为输入模式“的内部表示”,单计算层感知器变成多(计算)层感知器,从而实现深度学习的效果 [10]。
3.1. 结构及原理
依据分层特征的思想,假设我们有一个系统S,它有n层
,它的输入是I,输出是O,形象地表示为 [11]:
上述深度神经网络中,中间层(除去开始的输入层和最后的分类输出层)每一层都是系统S的一种特征表示,图2表示的是单个隐藏层的系统,而图3表示的是多个隐藏层的情况。
Figure 2. Structure of a single hidden layer
图2. 单个隐藏层的结构
Figure 3. Structure of multiple hidden layers
图3. 多个隐藏层的结构
3.2. 基于深度置信网络的旋转机械故障预测模型
(1) 模型构建
风机的振动及温度信号通过数据采集卡进行采集到计算机,通过多通道数据采集卡,将收集到的数据存储在多个文档中,然后再构建深度神经网络模型进行故障预测。其模型结构如图4所示,构建流程为数据输入–特征提取–DNN模型训练–预测输出。
数据的采集构成有物联网设备的历史数据、及当前传感器采集的状态数据,及合成数据(对已有数据进行时序拓展),对于实际生产情况下旋转机械检测数据量缺乏的情况,通过这三种数据的集成可以充分地保障模型的数据集需求。旋转机械的数据采集过程中有很多冗余的、含噪的数据,因此在数据输入前需要进行预处理,如空白段的补齐,归一化处理及去噪处理等。预测性维护模型的构建中分为特征提取、模型构建、模型训练、模型评价等环节,其中特征提取采用自动提取技术DFS,对原采集数据进行特征构建及基于过滤式的特征选择,将提取的特征对数据集进行构建,组成模型构建及训练的数据集,同时将数据集的60%作为模型训练的数据集,10%作为验证集,30%作为测试集,其中测试集的数据为去除掉故障出现前一段时间内的数据,具体的故障模型如图4所示。
Figure 4. Fault prediction model based on deep neural network
图4. 基于深度神经网络的故障预测模型
(2) 算法
DNN的前向传播算法就是通过若干个权重系统矩阵W,偏倚向量b来与输入向量X进行运算和激活函数的运算,从输入层开始,层层向后计算,直到输出层,得到输出结果。
具体地,设输入:总层数为L,所有隐藏层和输出层对应地矩阵W,偏倚向量b,输入值向量X。
输出:输出层为
1) 初始化
2) for
to L,计算
3) 最后输出结果
通过DNN前向传播算法后,如何怎么找到合适的W与b向量来预测最终的输出值呢,这里还需要进行反向传播计算,即选择损失函数使得损失值达到最小时,就得到了最佳的W与b向量。
具体地,输入:总层数L,以及各隐藏层与输出层的神经元个数,激活函数,损失函数,迭代步长
,最大迭代次数Max,及停止迭代阈值
,输入的m个训练样本
输出线性关系矩阵W和b
1) 初始化W和b,取随机值
2) for iter to 1 to Max
for
to m
将DNN输入
设置为
for
to L,计算
进行前向传播
通过损失函数计算输出层
for
to 2,计算
进行反向传播
for
to L,更新第l层的
如果所有
的变化值都小于停止迭代阈值
,则跳出迭代循环到步骤3。
3) 输出线性关系矩阵
(3) 基于DNN的故障预测模型的优点
针对旋转机械故障的特点–数据收集困难、量少、故障发生的随机性大、基于先验知识的模型构建难,通过基于DNN构建的故障预测模型在故障发生的非线性、复杂性特点相对于基于统计、先验知识模型等的方法可以直接从数据中挖掘出故障的机理。在与其他各种神经网络模型相比,首先DNN的多层隐藏结构可以更好地拟合输入数据,特征提取环节可以将输入数据的维度进行降低,使模型计算快速地收敛,W,b的正向、反向传播求解过程可以将损失降到最低,以求更好地拟合数据,从而构建更为精准的模型。
4. 总结
旋转机械故障预测是非线性的、波动的类型,故障形成的机理很难有预先设定的数学模型来确定,因此传统的基于模型的故障预测很难实现,本文通过深度神经网络模型构建旋转机械的故障预测模型,通过数据采集卡将振动数据、温度数据等采集到计算机构成模型输入数据集,再构建DNN模型,训练模型,最终得到预测模型,对于旋转机械的故障预测具有很好的效果。
基金项目
高等学校国内访问工程师“校企合作项目”(FG2019164)资助。
参考文献