基于神经网络的机床误差数据拟合与预测方法*

2019-12-26 05:59余金舫
组合机床与自动化加工技术 2019年12期
关键词:插值法机床补偿

向 华,余金舫,王 超,熊 成

(华中科技大学 国家数控系统工程技术研究中心,武汉 430074)

0 引言

数控机床空间误差补偿和热误差补偿技术作为一种有效的后补偿手段,广泛地应用在高档精密数控机床上[1-2]。基于数控系统的误差补偿技术,通常是将机床的部分空间网格点误差数据保存到系统中,再通过一定的方法计算机床空间任意一点的误差值(补偿量),并补偿给运动轴,以实现实时补偿的功能[3-4]。

目前一般使用空间插值法计算机床空间任意位置的误差值。空间插值法因具有原理具体、实现简单以及网格点的预测值与实际值相同的特点,已被应用于FANUC数控系统空间补偿模块中。使用空间插值法需要事先存储空间网格点的误差数据,以三轴机床为例,若每个轴测量21个点,需存储的数据量为27783(3×213)个。对于大型机床,若要获取更精确的误差数据,就必须增大单轴的测量点数。实际操作过程中,往往因为数控系统数据空间大小的限制,单轴测量点数不会太多,如FANUC系统中限制单轴最大测量点数为25[5]。

对空间网格点数据进行拟合可以减少存储的数据量。在一定的拟合误差允许范围内,神经网络模型对于这种非线性映射关系的的数据具有很好的拟合作用[6-7],如机床热误差建模的主要方式已经从基于最小二乘法的线性模型[8]转变为神经网络模型了。与此同时,当以空间网格点数据为样本训练好神经网络后,又可以使用训练好的神经网络对非网格点的误差值进行预测,即以一个模型,实现两个功能。

本文针对数控机床空间误差补偿技术中的网格点误差数据的存储和非网格点误差值的预测的问题,使用神经网络模型对机床空间网格点数据进行拟合,以减少数据存储量。然后使用神经网络模型预测非网格点数据。在本文中,以目前常用的空间插值法为比对标准,将神经网络拟合和预测的误差值与之对比,两者的拟合结果在误差允许范围内,预测结果也十分接近,表明神经网络模型是一种可行的空间误差数据拟合和预测的方法。

1 神经网络拟合方法

根据机床空间误差数据的特性,选用单隐层神经网络进行拟合。本节首先介绍神经网络模型及BP算法,以所测的机床空间网格点的坐标为模型输入,以空间网格点测量误差为输出,对神经网络进行训练,以便得到空间网格点误差值的神经网络拟合模型。

1.1 神经网络模型与BP算法

典型的三层神经网络模型如图1所示,图中xi表示输入层第i个节点的输入值,bh表示隐层第h个节点的输出值,yj表示输出层第j个节点的输出值,vih表示输入层第i个节点到隐层第h个节点的权值,whj表示隐层第h个节点到输出层第j个节点的权值。使用θj表示输出层第j个节点的阈值,γh表示隐层第h个节点的阈值。

图1 神经网络模型

第h个隐层神经元的输入:

(1)

则bh可表示为:

bh=f(αh-γh)

(2)

其中,隐层和输出层激活函数为Sigmoid函数:

f(x)=(1+e-x)-1

(3)

第j个输出神经元的输入:

(4)

则yj可表示为:

yj=f(βj-θj)

(5)

神经网络训练是以模型输出值y与实际值yk的均方误差尽可能小为目标,通过对权值(vih,whj)和阈值进行更新,实现学习的过程。基于梯度下降的BP算法能更快地收敛,权值和阈值更新步长为:

Δwhj=ηgjbh

(6)

Δθj=-ηgj

(7)

Δvih=ηehxi

(8)

Δγh=-ηeh

(9)

η为学习率。

依据更新策略,不断调整权值与阈值,直至达到训练次数或拟合效果不再增加为止(均方误差不再减小)。

1.2 数据来源——空间误差测量

将机床的行程空间按照一定的间距划分成三维空间网格,使用激光跟踪仪依次测出每个空间网格点在三个坐标轴方向上的的误差,网格点测量次序如图2所示。实际操作过程中,通常以X轴为第一补偿轴,先测完X轴上的网格点误差(图2中序号1到Max1),然后将Y轴(第二补偿轴)增加一个网格距离,测量下一条线。测完第一层XOY后,Z轴增加一个网格距离,然后重复第一层的测量过程,直至空间网格点测量完毕。将得到的机床误差数据作为神经网络的训练集。

图2 空间误差测量图

1.3 神经网络拟合分析

利用神经网络对机床空间误差数据进行拟合,根据数据的特点,将输入层节点数设置为3,分别为任一点的在机床坐标系下的坐标值。输出层节点数设置为3,表示该点在三个坐标轴方向的误差值。隐层节点数根据经验公式[6]设定为10个。训练后的效果如图3所示。图中坐标轴Z轴数据表示为误差值(单位为m),X轴和Y轴数据均表示空间网格点在该轴方向的点序号。X、Y、Z轴的拟合误差分别为[-1.84, 2.05],[-0.79, 1.29],[-1.2, 1.89](单位为μm)。由于X轴原始误差较大,拟合误差也略大于Y、Z两轴的误差,从总体上看,各轴的拟合误差都满足实际补偿的要求。图4为X、Y、Z三轴的误差分布图,三个轴的拟合误差基本上符合正态分布,其三轴误差均值分别为0.20,0.20,0.16(单位为μm),标准差分别为0.86,0.45,0.66(单位为μm)。误差均值接近于0μm,标准差(方差)也很小,说明神经网络拟合效果很好,可以用于机床误差数据的拟合。

所建立的3-10-3结构的神经网络模型的参数数据个数为73(3×10+10×3+10+3)个,远远小于空间插值预测所需保存的参数个数3993(3×11×11×11)。

(a) X轴误差数据 (b) X轴误差数据拟合

(c) X轴拟合误差 (d) Y轴误差数据

(e) Y轴误差数据拟合 (f) Y轴拟合误差

(g) Z轴误差数据 (h) Z轴误差数据拟合

(i) Z轴拟合误差

(a) X轴拟合误差分布

(b) Y轴拟合误差分布

(c) Z轴拟合误差分布 图4 神经网络拟合误差分布

2 非网格点误差值预测

机床空间误差的实际测量过程只能获取一定数量的空间网格点误差数据,对于需要对机床空间内的任意位置进行实时补偿的数控机床而言,还需要对非网格点进行误差补偿。所以需要对非网格点进行误差预测。神经网络能够根据所测的空间网格点进行非线性拟合,也能够根据训练好的神经网络对非网格点误差进行预测。除此之外,目前常用的非网格点误差预测方法为空间插值法[5]。

2.1 空间插值预测方法

使用空间插值法可以对机床行程空间内的坐标点进行预测(插值)。该方法利用“距离越远对待估点影响越小”的思想,认为与未采样点距离最近的若干点对未采样点值的影响最大。根据给定的测量点误差和空间位置,实现空间任意一点三维误差值计算。空间插值法是通过得到每一个空间点和选定测量点对的逼近关系,以及相应的权重关系,求得空间任意一点空间误差值。而权重函数则可以看成是对距离的权重,距离越远,权重越小。

如图5所示,空间任意点P包含于顶点为Pn(n=1,2,…8)的长方体补偿空间,Pn为实际测量点,每点的三个轴方向的误差值Cnx、Cny、Cnz(n=1,2,…8)已知,需要求长方体补偿空间内任意点P三个轴方向的空间误差值Px、Py和Pz。下面以X轴方向的误差计算为例进行说明,Y和Z轴方向误差计算方法可以此类推。

图5中,点Dj(j=1,2,…6)为点P在各平面或轴上的投影,点Dj处的三个轴方向的误差值Djx、Djy、Djz(j=1,2,…6)。

图5 空间误差插值原理图

在顶点为P1、P2到P8的长方体补偿空间内,计算点P在X轴方向的内部分割比rx,计算方式如下:

(11)

其中,P1x和P2x是P1和P2顶点的X轴坐标。

以同样的方式计算点P在Y、Z轴方向的内部分割比ry、rz。

计算点D1在X轴方向上的误差值。因为点D1在线段P1P2上,根据反距离加权法,将距离看成是权重,则点D1在X轴方向上的误差值D1x为:

D1x=(1-rx)C1x+rxC2x

(12)

按此方法计算出Djx、Djy、Djz(j=1,2,…6)。再根据Cnx、Cny、Cnz(n=1,2,…8)和Djx、Djy、Djz(j=1,2,…6)计算点P在X轴方向的空间误差值Cx为:

Cx=(1-rx)(1-ry)(1-rz)C1x+rx(1-ry)(1-rz)C2x+

rxry(1-rz)C3x+(1-rx)ry(1-rz)C4x+

(1-rx)(1-ry)rzC5x+rx(1-ry)rzC6x+

rxryrzC7x+(1-rx)ryrzC8x

(13)

同理,Y轴和Z轴上的补偿量Cy和Cz以相同的方式确定。

2.2 数控系统误差实时补偿

在数控系统中,根据上述方法进行误差补偿。首先根据机床的实时位置,一方面插补器根据G代码指令计算出下一插补周期的进给量(Δx, Δy, Δz),另一方面根据误差补偿算法,计算出补偿量(Δex, Δey, Δez),累加后送入驱动器,控制电机位置,从而实现误差补偿。误差补偿流程如图6所示。

图6 误差补偿流程图

2.3 预测分析

以机床的4条对角线为分析对象,预测对角线的定位误差,结果如图7所示。由于将机床行程空间划分为11×11×11的空间网格,所以每条空间对角线包含已测量的11个点。由图可知,空间插值预测方法在网格点处的预测值与实测值相同;神经网络预测曲线较为平滑,其预测结果与空间插值预测结果以及实测值都很接近,误差在[-2, 4]μm之内,完全满足误差拟合以及补偿的要求。

(a) PPP对角线定位误差

(b) NPP对角线定位误差

(c) NPN对角线定位误差

(d) PPN对角线定位误差 图7 两种方法预测对角线定位误差

3 结束语

本文将神经网络模型应用于机床空间误差数据的拟合以及预测之中,通过对比空间插值法,得出以下结论:

(1) 神经网络模型能有效拟合机床空间网格点误差数据,拟合误差在[-1.84, 2.05]μm范围之内,拟

合误差对实际机床误差补偿结果影响很小,满足要求。该神经网络模型数参数个数仅为73个,大大减小了数控系统公共空间存储量。

(2) 使用训练好的神经网络模型还能对机床非网格点误差值进行预测。神经网络模型对四条空间对角线误差值预测值与空间插值法预测值的十分接近,在[-2, 4]μm之间,说明神经网络预测是一种可靠的机床空间误差预测方法。

猜你喜欢
插值法机床补偿
机床展会
InSAR形变场最佳插值算法对比研究
2021第24届青岛国际机床展开幕
基于改进k-means算法的可见光通信非线性补偿技术
小区域GNSS高程异常拟合方法研究
《机床与液压》投稿要求
《计算方法》关于插值法的教学方法研讨
《计算方法》关于插值法的教学方法研讨
解读补偿心理
克里金插值法内插IGS电离层图精度分析