BP算法在钢铁裂纹电磁无损检测中的研究
何 欣
(哈尔滨理工大学 计算机科学与技术学院,黑龙江 哈尔滨 150080)
摘 要 针对目前钢铁件裂纹检测效率和精度不高的问题,依据电磁无损检测原理和应力理论,采用BP 算法,在Matlab7.0环境下,建立了BP神经网络电磁检测系统,并进行测试分析。结果表明,该系统对螺栓裂纹检测的准确率高,并且运行稳定性好,检测效率高,在钢铁件质量检测中有较高的应用价值。
关键词 BP算法;电磁无损检测;应力;裂纹
1 引言
由于我国各钢铁生产厂家钢铁材料不合格现象严重,随之出现了各种检测方法。在电磁无损检测领域,对各种钢铁材料的性能指标检测已经取得了很好的效果[1]。然而,在某些钢铁件的裂纹(例如螺栓的裂纹)检测方面仍然存在检测效率低的问题。为此,本文引入了神经网络的BP算法,并建立了检测模型,应用于电磁无损检测系统中,对螺栓裂纹进行测试分析。
2 检测系统设计
本文建立的电磁检测系统主要由样本信息、钢铁分选仪、特征提取、BP神经网络、结果输出组成,如图1所示。在电磁无损检测中,使用初始磁导率法对被检测件进行性能指标特征信号提取,通过钢铁分选仪对所提取到的信号量进行去噪声处理,得到所需的有用信息。特征提取就是要对原始数据进行变换,得到最能反应分类本质的特征,再把得到的特征量经过所建立的BP神经网络模型进行数据处理,进行合理的BP网络设计,确定训练规则,从而得出正确的输出结果。
裂纹缺陷是由于钢铁件在生产和加工过程中受热应力和组织应力等因素造成的。根据应力理论,钢铁件的应力越大,其初始磁导率下降越甚,因此本系统采用钢铁分选仪中提取的初始幅值磁导率大小作为特征值,采用BP算法,建立智能的钢铁分选仪裂纹检测模型。
3 BP算法
BP(Back Propagation)算法,目前已有多种形式的改进算法[2]。这里采用一种称之为逐次修正法的基本形式,即每次输入一个学习模式并调节权值,其具体的学习过程按以下步骤顺序进行。
(1)网络状态初始化:用较小的随机数对网络的权值(  )和(  )以及偏置值(   )和(  )赋初值。
(2)输入第一个模式。
(3)把学习模式的值作为输入层单元i的输出(  ),用输入层到中间层的权值(  )和中间层单元的偏置(  ),求出对中间层单元j的输入  以及相应的输出  :
 ,  。
上式中的  是Sigmoid函数(以下同)。
(4)用中间层的输出  ,中间层到输出层的连接权值(  )以及输出层单元k的偏置(  )求出对输出层单元k的输入  以及相应的输出  ;
 。
(5)根据学习模式的教师信号  和输出层的输出  的差,求出有关输出层单元k的偏置值以及连接到其上权值的误差  :
 。
(6)根据误差  ,从中间层到输出层的权值(  )以及中间层的输出  ,求出有关中间层j的偏置值以及连接到其上的权值的误差(  ):
 。
(7)根据由第(5)步求出的  以及  和常数  ,对从中间层单元j到输出层单元k的权值(  )加以调整。另外,根据  和常数  对输出层单元k的偏置值(  )加以调整:
 ,  。
(8)根据误差  ,输入单元i的输出(  )以及常数  对从输入单元i到中间层单元j的连接权值(  )加以调整。根据误差(  )和常数  对中间层单元的j的偏置值(  )加以调整:
 ,  。
(9)输入下一个模式。
(10)若有学习模式,则返回(3)。
(11)更新学习次数。
(12)若学习次数小于规定的次数,则返回(2)。
(13)上述过程中,(3)~(6)是BP算法中的正向处理,(7)~(8)是反向处理。上面算法步骤相应的程序框图如图2所示。

图2 BP算法示意图
4 BP网络的设计
本系统采用三层网络设计,输入层和输出层均为2,经过多次试验,确定隐含层的数目为10。输入层为钢铁分选仪在不同频率下所测参量,输出层为裂纹和正常件。学习率为0.01,网络采用trainlm函数进行训练[3-6]。网络结构如图3所示。

图3 网络结构示意图
5 螺栓裂纹检测试验结果
所选用的螺栓来自生产实践的工件,工件直径为20mm,长150mm。试样总共48根,其中裂纹件29根,非裂纹件19根,选取部分工件Matlab仿真结果列入表1。
表1 螺栓检测部分结果
|
工件号 工件状态 参量1 参量2 试验结果
|
|
1 裂纹件 0.1748 0.2093 裂纹件
2 裂纹件 -0.0152 0.1843 裂纹件
3 裂纹件 -0.2816 -0.2491 裂纹件
4 裂纹件 -0.2559 -0.2004 裂纹件
5 合格件 0.2104 0.0070 合格件
6 合格件 0.2104 0.0070 合格件
|
针对这批工件检测,试验从裂纹件和合格件中有选择地选取24件作为训练样本集(其中裂纹件13件,合格件11件),并对输入数据进行归一化处理。经过学习训练后,再测试工件,结果表明,对该批螺栓件检测准确率100%,学习样本选取较少,训练时间短(训练结果如图4所示),体现了该算法应用于电磁无损检测领域较其它算法的优越性。

图4 训练结果
6 结论
本文引入BP算法的神经网络电磁检测系统,并用Matlab7.0进行仿真。试验证明,该系统在对螺栓进行裂纹检测时,准确率达到100%,并且系统稳定性好,学习样本较少,效率高。较常规电磁无损检测方法有很大优势,在钢铁件质量检测中有较高的推广价值。
参考文献
[1] 万国庆,樊景云. 无损检测材料检测新方法[J]。机械工程学报,1997,32(2):32-27
[2] 杨建刚.人工神经网络实用教程.浙江:浙江大学出版社,2002
[3] 飞思科技产品研发中心. 神经网络理论与MATLAB7实现[M].北京:电子工业出版社,2005
[4] 董长虹. MATLAB神经网络与应用[M].北京:国防工业大学出版社,2005
[5] 闻新, 周露, 王丹力, 熊晓英. MATLAB神经网络应用设计[M].北京:科学出版社,2000
收稿日期:8月22日 修改日期:9月9日
作者简介:何欣(1980-),女,硕士研究生,研究方向:无损检测。
|