一种基于机器学习方法的汽车发动机故障预警方法与流程

文档序号:11135417阅读:449来源:国知局
一种基于机器学习方法的汽车发动机故障预警方法与制造工艺

本发明属于汽车发动机预警技术领域,具体涉及一种基于机器学习方法的汽车发动机故障预警方法。



背景技术:

目前,随着工业的发展和人们生活水平不断提高,汽车发动机的集成度越高,已经远远超出了通过直接观察就知道设备故障的原因,汽车发动机一旦出现故障,检查出现故障的部件很困难,而且维修故障的费用需要请生产汽车发动机的厂家的工程师来维修,一旦发动机的制造商是外国的,费用会更高;为了确保重要的汽车发动机的正常工作,必须对汽车发动机进行实时的监测并预警。

长期以来,我国对发动机的监测预警方法存在着一些不足:监测数据的可靠性、准确性不高,使得监测数据不具备有效性判断和智能决策等功能;目前预警部分采用BP神经网络模型,但由于BP神经网络自身结构的特点,训练样本较大且要求精度较高时,网络不收敛且容易陷入局部最优。



技术实现要素:

为解决现有技术的不足,本发明提出一种基于机器学习方法的汽车发动机故障预警方法,包括以下步骤:

步骤1、设定采集时间间隔,根据设定的采集时间间隔,采集每个时间节点发动机在每种运行状态下的震动信号,并对上述震动信号进行统计学分析处理获得发动机运行参数;

步骤2、以获得的每个发动机运行参数作为自组织映射神经网络的输入值,每个发动机运行参数所对应的运行状态为输出值,对自组织映射神经网络进行学习,获得学习完成的自组织映射神经网络;

步骤3、采集当前时间节点发动机的震动信号,并对上述震动信号进行统计学分析处理获得当前时间节点的发动机运行参数;

步骤4、将当前时间节点的发动机运行参数作为学习完成的自组织映射神经网络的输入值,获得当前时间节点的发动机的运行状态;

步骤5、以获得的每个时间节点的发动机运行参数作为Elman神经网络的输入值,预测到的下一个时间节点的发动机运行参数为输出值,对Elman神经网络进行训练,获得训练完成的Elman神经网络;

步骤6、将当前时间节点的发动机运行参数作为训练完成的Elman神经网络的输入值,获得预测到的下一个时间节点的发动机运行参数;

步骤7、以获得的每个时间节点的发动机运行参数作为概率神经网络的输入值,每个发动机运行参数所对应的运行状态为输出值,对概率神经网络进行训练,获得训练完成的概率神经网络,具体步骤如下:

步骤7.1、设定概率神经网络分为四层:输入层、模式层、总结层和输出层;设定输入层的节点个数,设定模式层的模式类数,并设定输出层为一个节点;

步骤7.2、获得输入层的输入值传输到模式层后,模式层的每类模式与总结层的每个神经元的输入/输出关系;

步骤7.3、根据模式层的每类模式与总结层的每个神经元的输入/输出关系,总结层将模式层同一类别的神经元的输出值进行加权平均处理;

步骤7.4、输出层将总结层中加权平均处理后的最大输出值对应的类别进行输出,即概率神经网络训练完成;

步骤8、将预测到的下一个时间节点的发动机运行参数作为概率神经网络的输入值,获得下一个时间节点的发动机运行状态;

步骤9、根据获得的当前时间节点的发动机的运行状态和下一个时间节点的发动机运行状态对车主进行故障预警。

步骤2所述的获得学习完成的自组织映射神经网络,包括以下步骤:

步骤2.1、设定自组织映射神经网络分为两层:输入层和输出层,设定输入层的节点个数,并设定输出层神经元的个数;

步骤2.2、初始化自组织映射神经网络的参数,包括:设定迭代次数阈值,并设定输入层每个节点到输出层每个神经元的初始权值;

步骤2.3、将输入层每个节点到输出层每个神经元的初始权值进行归一化处理;

步骤2.4、输入获得的每个发动机运行参数,获得每个发动机运行参数的输出单元强度,并选择最大的输出单元强度作为主兴奋单元;

步骤2.5、获得输出层每个神经元在主兴奋单元影响下的兴奋度,并进一步获得输入层每个节点到输出层每个神经元的权值修正量;

步骤2.6、判断迭代次数是否达到所设定的迭代次数阈值,若是,则自组织映射神经网络学习完成,执行步骤3,否则,更新权值,并返回执行步骤2.3。

步骤5所述的获得训练完成的Elman神经网络,具体步骤如下:

步骤5.1、设定Elman神经网络分为四层:输入层、隐藏层、承接层和输出层;设定输入层的节点个数,并设定输出层的节点个数;

步骤5.2、初始化Elman神经网络的参数,包括:设定预测宽度和映射函数;

步骤5.3、提取每个时间节点的发动机运行参数中的每一类运行参数作为一组样本,以每组样本中的每个运行参数作为预测样本,以该预测样本之前的预测宽度内的运行参数作为训练样本,根据映射函数对训练样本进行训练,获得训练完成的Elman神经网络。

步骤7.2所述的获得输入层的输入值传输到模式层后,模式层的每类模式与总结层的每个神经元的输入/输出关系,采用以下公式:

其中,Φij(x)表示模式层第i类模式与总结层的第j神经元的输入/输出关系;i表示模式层的第i类模式;j表示总结层的第j神经元;π表示圆周率;σd表示σ的d次方;d表示空间数据的维度;e表示自然常数;x表示每个运行参数的数据值;xij表示第i类样本的第j个中心;T表示矩阵的转置;σ表示平滑因子。

步骤7.3所述的总结层将模式层同一类别的神经元的输出值进行加权平均处理,采用以下公式:

其中,vi表示总结层输出的第i类样本;L表示总结层第i类样本对应的神经元个数;Φij表示模式层第i类模式与总结层的第j神经元的输入/输出关系。

本发明的优点:

本发明提出一种基于机器学习方法的汽车发动机故障预警方法,采用神经网络的自组织映射神经网络(SOM)模型方法进行无监督的机器学习,对汽车发动机历史和现在运行状态进行分类;预警系统采用的是神经网络的概率神经网络(PNN)模型方法进行有监督的机器学习,对汽车发动机现在运行参数进行判断设备所处的状态;以及通过神经网络的Elman神经网络模型方法进行有监督的机器学习,解决了BP神经网络模型的训练样本较大且要求精度较高,网络不收敛且容易陷入局部最优的欠缺,进而预测未来的时间节点的设备的运行参数,使得系统具有预测功能,然后根据预测的运行参数进行自组织映射神经网络(SOM)模型和概率神经网络(PNN)模型进行数据的分析得到未来时间的设备处于的状态,更有利于汽车发动机的监控。

附图说明

图1为本发明一种实施例的汽车发动机故障预警系统的结构示意图;

图2为本发明一种实施例的基于机器学习方法的汽车发动机故障预警方法流程图;

图3为本发明一种实施例的获得训练完成的概率神经网络的方法流程图。

具体实施方式

下面结合附图对本发明一种实施例做进一步说明。

本发明实施例中,如图1所示,所述的基于机器学习方法的汽车发动机故障预警方法,采用汽车发动机故障预警系统,该系统包括无线传感系统和云服务器;所述的无线传感系统包括无线信号传感器和微处理器;所述无线信号传感器采集发动机震动信号并发送到tiny6410微处理器,微处理器将震动信号进行数据压缩,并通过无线通信网络发送到云服务器,云服务器中设置的后台监测预警系统对数据进行分析处理,进而对发动机运行状态进行预警;

本发明实施例中,采用matlab软件对基于机器学习方法的汽车发动机故障预警方法进行模拟仿真;

本发明实施例中,一种基于机器学习方法的汽车发动机故障预警方法,方法流程图如图2所示,包括以下步骤:

步骤1、设定采集时间间隔为半小时,每间隔半小时采集每个时间节点发动机在第一缸喷油压力过大、第一缸喷油压力过小、第一缸喷油器针阀磨损、油路堵塞、供油提前角提前5’~6’和正常状态六种运行状态下的震动信号,并对上述震动信号的波形进行统计学分析处理获得发动机运行参数;

本发明实施例中,发动机运行参数包括:能量参数、峰度参数、波形参数、裕度参数、脉冲参数和峰值参数;

步骤2、以获得的每个发动机运行参数x=[x1,x2,x3,x4,x5,x6]作为自组织映射神经网络的输入值,每个发动机运行参数所对应的运行状态为输出值,对自组织映射神经网络进行学习,获得学习完成的自组织映射神经网络,包括以下步骤:

步骤2.1、设定自组织映射神经网络分为两层:输入层和输出层,设定输入层的节点个数,并设定输出层神经元的个数;

步骤2.2、初始化自组织映射神经网络的参数,包括:设定迭代次数阈值为2000次,并随机设定输入层每个节点到输出层每个神经元的初始权值;

步骤2.3、将输入层每个节点到输出层每个神经元的初始权值进行归一化处理,采用以下公式:

其中,W表示输入层每个节点到输出层每个神经元的权值;wij表示输入层每个节点到输出层每个神经元的初始权值;

步骤2.4、输入获得的每个发动机运行参数,获得每个发动机运行参数的输出单元强度,并选择最大的输出单元强度作为主兴奋单元;

本发明实施例中,所述的获得每个发动机运行参数的输出单元强度,采用以下公式:

其中,netj表示输出层第j个神经元的输出单元强度;表示故障向量权值转置;T表示矩阵的转置;x表示每个运行参数的数据值;xi表示输入层第i个节点的值;

所述的选择最大的输出单元强度作为主兴奋单元,采用以下公式:

net c=max(net j) (5)

其中,netc表示主兴奋单元;c表示单元的缩写;

步骤2.5、获得输出层每个神经元在主兴奋单元影响下的兴奋度,进一步获得输入层每个节点到输出层每个神经元的权值修正量;

本发明实施例中,所述的获得输出层每个神经元在主兴奋单元影响下的兴奋度,采用以下公式:

yj=Fc(j) (6)

其中,yj表示输出层每个神经元在主兴奋单元影响下的兴奋度;

其中,

其中,Dcj表示输出单元c与邻近神经元j之间在神经元平面上的距离;R表示交互作用半径;D表示距离;

本发明实施例中,所述的获得输入层每个节点到输出层每个神经元的权值修正量,采用以下公式:

Δwij=η(yj-net j)xi (9)

Δwij表示输入层每个节点到输出层每个神经元的权值修正量;η表示系数常数;

步骤2.6、判断迭代次数是否达到所设定的迭代次数阈值,若是,则自组织映射神经网络学习完成,执行步骤3,否则,根据获得的权值修正量更新权值,并返回执行步骤2.3;

步骤3、采集当前时间节点发动机的震动信号,并对该震动信号进行统计学分析处理获得当前时间节点的发动机运行参数;

步骤4、将当前时间节点的发动机运行参数作为学习完成的自组织映射神经网络的输入值,获得当前时间节点的发动机的运行状态;

步骤5、以获得的当前时间节点及之前时间节点的发动机运行参数作为Elman神经网络的输入值,预测到的对应的下个时间节点的发动机运行参数为输出值,对Elman神经网络进行训练,获得训练完成的Elman神经网络,包括以下步骤:

步骤5.1、设定Elman神经网络分为四层:输入层、隐藏层、承接层和输出层;设定输入层的节点个数,并设定输出层的节点个数;

步骤5.2、初始化Elman神经网络的参数,包括:设定预测宽度N为15,设定映射函数为xn=f(xn-1,xn-2,...,xn-N);其中,xn表示第n个时间节点的发动机运行参数的数据值;n表示第n个时间节点;xn-1表示第n-1个时间节点的发动机运行参数的数据值;xn-2表示第n-2个时间节点的发动机运行参数的数据值;xn-N表示第n-N个时间节点的发动机运行参数的数据值;

步骤5.3、提取每个时间节点的发动机运行参数中的每一类运行参数,将上述运行参数X1~Xn作为一组样本,其中X1,X2,...,XN-1为自变量,即训练样本,XN为期望输出,即预测样本,以此类推,形成以下训练矩阵:

其中,XN+i-2表示第N+i-2个时间节点的发动机运行参数的数据值;XN+i-1表示第N+i-1个时间节点的发动机运行参数的数据值;

矩阵中每一列的最后一行为期望输出,对Elman神经网络进行训练,即可得到训练完成的Elman神经网络;

步骤6、将当前时间节点的发动机运行参数作为训练完成的Elman神经网络的输入值,获得预测到的下一个时间节点的发动机运行参数;

步骤7、以获得的全部时间节点(包括预测到的下一个时间节点)的发动机运行参数作为概率神经网络的输入值,每个时间节点的发动机运行参数所对应的运行状态为输出值,对概率神经网络进行训练,获得训练完成的概率神经网络,方法流程图如图3所示,具体步骤如下:

步骤7.1、设定概率神经网络分为四层:输入层、模式层、总结层和输出层;设定输入层的节点个数为6个,设定模式层的分类模式为6种,并设定输出层为一个节点;

步骤7.2、获得输入层的输入值传输到模式层后,模式层的第i类模式与总结层中第j个神经元所确定的输入/输出关系,采用一下公式:

其中,Φij(x)表示模式层第i类模式,即第i类样本与总结层的第j神经元,即第j个中心的输入/输出关系;i表示模式层的第i类模式;j表示总结层的第j神经元;π表示圆周率;σd表示σ的d次方;d表示空间数据的维度;e表示自然常数;x表示每个运行参数的数据值;xij表示第i类样本的第j个中心;T表示矩阵的转置;σ表示平滑因子;

步骤7.3、根据模式层的每类模式与总结层的每个神经元的输入/输出关系,总结层将模式层同一类别的神经元的输出值进行加权平均处理,采用以下公式:

其中,vi表示总结层输出的第i类样本;L表示总结层第i类样本对应的神经元个数;Φij表示模式层第i类模式与总结层的第j神经元的输入/输出关系;

步骤7.4、输出层将总结层中加权平均处理后的最大输出值对应的类别进行输出,即概率神经网络训练完成;

本发明实施例中,所述的输出层将总结层中加权平均处理后的最大输出值对应的类别进行输出,采用以下公式:

y=arg max(vi) (10)

其中,y表示总结层中加权平均处理后的最大输出值;

步骤8、将预测到的下一个时间节点的发动机运行参数作为概率神经网络的输入值,获得下一个时间节点的发动机运行状态;

步骤9、根据当前时间节点的发动机的运行状态和下一个时间节点的发动机运行状态对车主进行故障预警,车主根据发动机的两个时间节点的运行状态及时对汽车发动机相应出故障的部位进行维护,并且能够根据预警结果制定科学合理的保养周期,增加发动机的使用寿命;

尽管上面结合图对本发明进行了详细的描述,但是本发明并不局限于上述的具体实施方式,并不局限于上述的采集参数类型,并不局限于上述的故障的种类,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明的宗旨的情况下,还可以作出许多变形,这些都属于本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1