1、基于神经网络的电阻点焊工艺参数优化摘要:本文提出了一种利用神经网络优化点焊机的参数方法。以实验数据为样本,通过神经网络建立焊接工艺参数与焊接质量的之间的复杂模型,利用神经网络对工艺参数进行优化。充分发挥神经网络的非线性映射能力。仿真显示了该方法的优越性和有效性。 关键词:电阻点焊;神经网络;消音锯片 0 序言 电阻点焊过程是一个高度非线性,既有多变量静态叠加又有动态耦合,同时又具有大量随机不确定因素的复杂过程。这种复杂性使得传统方法确定最佳工艺参数存在操作复杂、精度低等缺陷。 本文通过深入研究提出了一种神经网络优化消音锯片电阻点焊工艺参数方法。以试验数据为样本,通过神经网络,建立焊接工艺参数与
2、焊接性能之间的复杂模型,充分发挥神经网络的非线性映射能力。为准确预测点焊质量提高依据。在运用试验手段、神经网络高度非线性拟合能力结合的方式,能在很大程度上克服传统方法的缺陷,完成网络的训练、检验和最优评价,为电阻点焊过程的决策和控制提供可靠依据。 1 原理 人工神经网络是用物理模型模拟生物神经网络的基本功能和结构,可以在未知被控对象和业务模型情况下达到学习的目的。建立神经网络是利用神经网络高度并行的信息处理能力,较强的非线性映射能力及自适应学习能力,同时为消除复杂系统的制约因素提供了手段。人工神经网络在足够多的样本数据的基础上,可以很好地比较任意复杂的非线性函数。另外,神经网络的并行结构可用硬
3、件实现的方法进行开发。目前应用最成熟最广泛的一种神经网络是前馈多层神经网络(BP) ,通常称为BP 神经网络。 神经网络方法的基本思想是:神经网络模型的网络输入与神经网络输出的数学关系用以表示系统的结构参数与系统动态参数之间的复杂的物理关系,即训练。我们发现利用经过训练的模型进行权值和阈值的再修改和优化(称之为学习)时,其计算速度要大大快于基于其他优化计算的速度。 BP 神经网络一般由大量的非线性处理单元神经元连接组成的。具有大规模并行处理信息能力和极强的的容错性。每个神经元有一个单一的输出,但可以把这个输出量与下一层的多个神经元相连,每个连接通路对应一个连接权系数。根据功能可以把神经网络分为
4、输入层,隐含层(一或多层) ,输出层三个部分。设每层输入为 ui(q)输出为 vi(q)。同时,给定了 P 组输入和输出样本 ,dp(p=200) 。 (6) 该网络实质上是对任意非线性映射关系的一种逼近,由于采用的是全局逼近的方法,因而 BP 网络具有较好的泛化的能力。 我们主要是利用神经网络的非线性自适应能力,将它用于消音锯片的电阻点焊过程。训练过程是:通过点焊实验获得目标函数与各影响因素间的离散关系,用神经网络的隐式来表达输入输出的函数关系,即将实验数据作为样本输入网络进行训练,建立输入输出之间的非线性映射关系,并将知识信息储存在连接权上,从而利用网络的记忆功能形成一个函数。不断地迭代可
5、以达到 sse(误差平方和)最小。 我们这次做的消音金刚石锯片电焊机,通过实验发现可以通过采用双隐层 BP 神经网络就可以很好的反应输入输出参数的非线性关系。输入神经元为 3,分别对应 3 个电阻点焊工艺参数。输出神经元为 1,对应焊接质量指标参数。设第 1 隐含层神经元取为 s1,第 2 隐含层神经元取为s2。输入层和隐含层以及隐层之间的激活函数都选取 Log-Sigmoid 型函数,输出层的激活函数选取 Pureline 型函数。 2 点焊样本的选取 影响点焊质量的参数有很多,我们选取点焊时的控制参数,即点焊时间,电极力和焊接电流,在固定式点焊机上进行实验。选用钢种为50Mn2V,600m
6、 的消音型薄型圆锯片基体为进行实验。对需要优化的参数为点焊时间,电极力和焊接电流 3 个参数进行的训练。最后的结果为焊接质量,通常以锯片的抗拉剪载荷为指标。 建立 BP 神经网络时,选择样本非常重要。样本的选取关系到所建立的网络模型能否正确反映所选点焊参数和输出之间的关系。利用插值法,将输入变量在较理想的区间均匀分布取值,如果有 m 个输入量,每个输入量均匀取 n 个值(即每个输入量有 m 个水平数), 则根据排列组合有nm 个样本。对应于本例,有 3 个输入量,每个变量有 5 个水平数,这样训练样本的数目就为 53=125 个。 我们的实验,是以工人的经验为参考依据,发现点焊时间范围为28s
7、,电极力范围为 5003000N,点焊电流范围为 520kA 时,焊接质量比较好。我们先取点焊电流,电极力为定量,在合理的范围内不断改变点焊时间,得到抗拉剪载荷。如此,可以得到不同点焊电流和电极力的抗拉剪载荷。根据点焊数据的发布情况,我们共选用 200 组数据。部分测试数据如表 1: 神经网络建模的关键是训练,而训练时随着输入参数个数的增加样本的排列组合数也急剧增加,这就给神经网络建模带来了很大的工作量,甚至于无法达到训练目的。 3 神经网络 我们用 200 组训练样本对进行神经网络训练,以 err_goal=0.01 为目标。调用 Matlab 神经网络工具箱中的函数编程计算,实现对网络的训
8、练,训练完成后便得到一个网络模型。 程序如下: x1=2.1 2.5 3 3.5 4; %点焊时间输入,取 200 组 x2=1.3 1.5 1.9 2.1 2.3;%电极力输入,取 200 组 x3=9 10 11 12 13;%点焊电流输入,取 200 组 y=2756 3167 3895 3264 2877; %输出量,取 200 组 net=newff(1 10;0.5 3;5 20,10 10 1,tansigtansigpurelin); %初始化网络 net.trainParam.goal = 0.01;%设定目标值 net=train(net,x1;x2;x3,y);%训练网络
9、 figure; %画出图像 选取不同的 s1,s2,经过不断的神经网络训练,发现当 s1=8,s2=6 时,神经网络可以达到要求。工具箱示意图如下图 1。 图 1 工具箱示意图 工具箱示意图非常清晰地表示了本实验的神经网络的输入,输出以及训练的过程。 神经网络的训练结果,如图 2 所示: 图 2 神经网络的学习过程 图中可以看出双层网络训练的 sse 在训练 100 次时,已经接近0.0001,效果较理想。 为了验证经过训练的网络模型的泛化能力,在输入变量所允许的区域内又另选多个样本进行了计算。发现:利用 BP 神经网络模型计算的测试输出与期望输出值相符,误差小于 2。 在已经训练好的网络中
10、找出最大值: for i=2:10 %点焊时间选择 for j=0.5:0.1:3%电极力选择 fork=5:0.1:20%点焊电流选择 a=sim(net,i,j,k);%仿真 ifan %比较仿真结果与最大值,取最大值 n=a; i(1)=i;%最大值的时间 j(1)=j;%最大值的电极力 k(1)=k; %最大值的电流 end end end end 将 i(1),j(1),k(1)以及 n 输出,n 为最大值。得到点焊时间为 3.4s,电极力为 12.7kN,点焊电流为 11.8kA,此时的抗剪拉剪载荷为4381N,为训练结果的最大值。将点焊时间为 3.4s,电极力为 12.7kN,点
11、焊电流为 11.8kA 在点焊机上进行实验,得到结果为 4297N。并且通过与实际的结果相比较,发现误差也在 2%以内。 4 结论 1)本文采用了插值法作为选取 BP 神经网络训练样本的方法。并且在数据变化剧烈的地方多选取了 75 组数据,这样可以得到较高精度的网络模型,使点焊模型的可行性。 2)基于此方法建立了三个点焊参数的 BP 神经网络模型,而且所建的 BP 模型具有较高的精度,可以很好的描述了这三个点焊参数与点焊质量的映射关系。 3)由于神经网络模型将系统结构参数与传统动态特性参数之间的物理关系,反映为神经网络模型的网络输入与网络输出的数学关系,因此,在神经网络模型上进行结构修正与优化比在其他模型上更直接,简单与高效。 本文采用神经网络的方法优化复合消音锯片的点焊工艺参数,为分析点焊质量提供了很好的辅助手段。通过与以前工艺相比较,提高了点焊质量。 参考文献: 1 方平,熊丽云.点焊电流有效值神经网络实时计算方法研究.J.机械工程学报,2004(11).148-152. 2 徐明.用 8089 单片机测量非正弦点焊焊接电流有效值.J.焊接技术,1995(3):12-14. 3 胡德安,陈鹏展,陈益平,李唐柏.基于神经网络的点焊质量评估专家系统研究J.新技术新工艺,2001(10):9-10.