一种基于神经网络模型的机床误差数据拟合与预测方法与流程

文档序号:17724506发布日期:2019-05-22 02:24阅读:307来源:国知局
一种基于神经网络模型的机床误差数据拟合与预测方法与流程

本发明属于误差预测相关技术领域,更具体地,涉及一种基于神经网络模型的机床误差数据拟合与预测方法。



背景技术:

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

现阶段大都是采用空间插值法计算机床空间任意位置的误差值,空间插值法因具有原理具体、实现简单以及网格点的预测值与实际值相同的特点,已经被应用于fanuc数控系统空间补偿模块中。使用空间插值法需要事先存储空间网格点的误差数据,以三轴机床为例,若每个轴测量21个点,需存储的数据量为27783(3×213)个。对于大型机床,若要获取更精确的误差数据,就必须增大单轴的测量点数,而实际操作过程中,往往因为数控系统的数据空间大小的限制,单轴测量点数不会太多,如fanuc系统中限制单轴最大测量点数为25,进而导致获取的误差数据的准确性被限制。相应地,本领域存在着发展一种不受存储空间限制的基于神经网络模型的机床误差数据拟合与预测方法的技术需求。



技术实现要素:

针对现有技术的以上缺陷或改进需求,本发明提供了一种基于神经网络的机床数据误差拟合与预测方法,其基于现有的采用空间插值法预测机床误差数据的特点,研究及设计了一种不受存储空间限制、准确性较好的基于神经网络模型的机床误差数据拟合与预测方法。所述方法以所测的机床空间网格点的坐标值为模型输入,以空间网格点测量误差为输出来对神经网络进行训练,以便得到空间网格点误差的机床误差模型。采用机床误差模型对机床空间网格点数据进行拟合,以减少数据存储量,然后再采用机床误差模型预测非网格点数据,如此不受存储空间限制,提高了机床误差数据的预测准确性。

为实现上述目的,本发明提供了一种基于神经网络的机床数据误差拟合与预测方法,该方法主要包括以下步骤:

(1)将机床的行程空间按照预定间距划分为三维空间网格,并使用激光跟踪仪依次测量出每个空间网格点在三个坐标轴上的误差;

(2)构建神经网络模型,并将所测得的机床的空间网格点的坐标作为所述神经网络模型的输入层,将空间网格点测量误差作为输出层;其中,所述神经网络模型采用单隐层神经网络来对机床空间点数据进行拟合;

(3)基于测得的误差数据对所述神经网络模型进行训练以得到机床误差模型,其中训练是以所述神经网络模型的输出值与实际值之间的均方误差最小为目标,并采用bp算法来对训练中的权值和阈值进行更新,以实现所述神经网络模型的训练学习;

(4)采用所述机床误差模型对机床空间非网格点的误差值进行预测,由此完成机床误差数据的拟合与预测。

进一步地,所述三个坐标轴包括相互垂直的x轴、y轴及z轴,其中x轴为第一补偿轴,y轴为第二补偿轴,z轴为第三补偿轴。

进一步地,步骤(1)中,先测完x轴方向上的网格点误差,然后再将y轴增加一个网格距离后测量下一条线;待测完第一层xoy平面后,z轴增加一个网格距离,然后重复第一层xoy平面的测量过程,直至空间网格点测量完毕。

进一步地,所述神经网络模型的第h个隐层神经元的输入为:其中,xi表示输入层第i个节点的输入值;vih表示输入层第i个节点到隐层第h个节点的权值;d为节点的数量。

进一步地,所述神经网络模型的隐层的第h个节点的输出值为:

bh=f(αh-γh)

式中,γh表示隐层第h个节点的阈值;隐层和输出层的激活函数为sigmoid函数:f(x)=(1+e-x)-1

进一步地,所述神经网络模型的第j个输出神经元的输入为:则yj表示为:yj=f(βj-θj);

式中,whj表示隐层第h个节点到输出层第j个节点的权值;θj表示输出层第j个节点的阈值。

进一步地,训练时不断调整权值与阈值,直至达到预定的训练次数或者拟合效果不再增加。

总体而言,通过本发明所构思的以上技术方案与现有技术相比,本发明提供的基于神经网络模型的机床误差数据拟合与预测方法主要具有以下

有益效果:

1.所述神经网络模型采用单隐层神经网络来对机床空间点数据进行拟合,如此采用机床误差模型对机床空间网格点数据进行拟合,以减少数据存储量,并采用机床误差模型预测非网格点数据,如此不受存储空间限制,且提高了机床误差数据的预测准确性,提高了适用性及灵活性。

2.采用bp神经网络算法来对训练中的权值和阈值进行更新,以实现所述神经网络模型的训练学习,如此提高了训练速度及精度。

3.将本发明所提供的方法与空间插值法进行比对,结果表明该方法的拟合效果较好,完全满足实际补偿的要求,适用性较好。

4.所述机床误差数据拟合与预测方法简单,易于实施,灵活性较好,有利于推广应用。

附图说明

图1是本发明提供的基于神经网络模型的机床误差数据拟合与预测方法的流程示意图。

图2是图1中的基于神经网络模型的机床误差数据拟合与预测方法涉及的机床空间网格点测量次序示意图。

图3是图1中的基于神经网络模型的机床误差数据拟合与预测方法涉及的神经网络模型的示意图。

图4是采用图1中的基于神经网络模型的机床误差数据拟合与预测方法获得的机床空间误差数据示意图,其中,图4中的a图、b图、c图、d图、e图、f图、g图、h图及i图分别是x轴误差数据的示意图、x轴误差数据拟合的示意图、x轴拟合误差的示意图、y轴误差数据的示意图、y轴误差数据拟合的示意图、y轴误差拟合的示意图、z轴误差数据的示意图、z轴误差数据拟合的示意图及z轴拟合误差的示意图。

图5是采用图1中的基于神经网络模型的机床误差数据拟合与预测方法及空间插值法获得机床条对角线定位误差的对比示意图,其中图5中的a图、b图、c图及d图分别是ppp对角线定位误差的曲线、npp对角线定位误差曲线、npn对角线定位误差的曲线及ppn对角线定位误差的曲线;且图内的虚线为采用空间插值法所获得,实线为采用本发明所提供的方法所获得。

图6是图5中的空间插值法涉及的差值原理示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。

请参阅图1、图2、图3及图4,本发明提供的基于神经网络模型的机床误差数据拟合与预测方法针对数控机床空间误差补偿中的网格点误差数据的存储和非网格点误差值的预测所存在的问题,以所测的机床空间网格点的坐标值为模型输入,以空间网格点的测量误差为输出来对神经网络进行训练,以便得到空间网格点误差的机床误差模型。此外,采用机床误差模型对机床空间网格点数据进行拟合,以减少数据存储量,然后再采用机床误差模型预测非网格点误差数据,如此不受存储空间限制,提高了机床误差数据的预测准确性。

所述的基于神经网络模型的机床误差数据拟合与预测方法主要包括以下步骤:

步骤一,将机床的行程空间按照预定间距划分为三维空间网格,并使用激光跟踪仪依次测量出每个空间网格点在三个坐标轴上的误差。

具体地,采集机床的误差数据,将机床的行程空间按照预定间距划分成三维空间网格,使用激光跟踪仪依次测量出每个空间网格点在三个坐标轴方向上的误差。实际操作过程中,通常以x轴为第一补偿轴,先测完x轴上的网格点误差(图2中的1到max1),然后将y轴(第二补偿轴)增加一个网格距离,测量下一条线。测完第一层xoy平面后,z轴增加一个网格距离,然后重复第一层的测量过程,直至空间网格点测量完毕。

步骤二,构建神经网络模型,并将所测得的机床的空间网格点的坐标作为所述神经网络模型的输入层,将空间网格点测量误差作为输出层;其中,所述神经网络模型采用单隐层神经网络来对机床空间点数据进行拟合。

具体地,根据机床空间误差数据的特性,选用单隐层神经网络进行拟合,以所测的机床空间网格点的坐标作为神经网络模型的输入,以空间网格点测量误差作为输出。本实施方式中,将所述神经网络模型的输出层的节点数设置为3,表示该点在三个坐标轴方向的误差值,隐层节点数设定为10个。如图3所示的典型三层神经网络模型中的xi表示输入层第i个节点的输入值,bh表示隐层第h个节点的输出值,yj表示输出层第j个节点的输出值,vih表示输入层第i个节点到隐层第h个节点的权值,whj表示隐层第h个节点到输出层第j个节点的权值;使用θj表示输出层第j个节点的阈值,γh表示隐层第h个节点的阈值。

第h个隐层神经元的输入为:则bh可表示为:bh=f(αh-γh);其中,隐层和输出层的激活函数为sigmoid函数:f(x)=(1+e-x)-1;第j个输出神经元的输入为:则yj可表示为:yj=f(βj-θj)。

步骤三,基于测得的误差数据对所述神经网络模型进行训练以得到机床误差模型,其中训练是以所述神经网络模型的输出值与实际值之间的均方误差最小为目标,并采用bp神经网络算法来对训练中的权值和阈值进行更新,以实现所述神经网络模型的训练学习。

具体地,所述神经网络模型的训练是以神经网络模型的输出值y与实际值yk的之间的均方误差最小为目标的,通过对权值(vih,whj)和阈值进行更新,实现学习的过程。其中,基于梯度下降的bp算法能更快地收敛,在每次训练过程中,权值和阈值更新步长为:

δwhj=ηgjbh;

δθj=-ηgj;

δvih=ηehxi;

δγh=-ηeh;

其中:η为学习率,一般设为0.1。

训练时不断调整权值与阈值,直至达到训练次数或者拟合效果不再增加(上述的均方误差不再减小)。如图4所示,训练后,x、y、z轴的拟合误差分别为[-1.84,2.05],[-0.79,1.29],[-1.2,1.89](单位:μm);由于x轴的原始误差较大,拟合误差也相对于y轴、z轴两轴的误差大,从总体上看,各轴的拟合误差都满足实际补偿的要求,说明该神经网络模型的拟合效果很好,可以用于机床误差数据的拟合。

步骤四,采用所述机床误差模型对机床空间非网格点的误差值进行预测。

具体地,将机床的行程空间划分为11×11×11的空间网格,以机床的四条对角线为分析对象,预测对角线的定位误差。将体对角线上非网格点坐标值输入所述机床误差模型中以预测得到机床对角线上非网格点在三个方向上的定位误差值,见图5。

请参阅图5及图6,为了进一步验证本发明提供的方法的准确性,以下空间插值法为比对标准,对比两种方法的空间体对角线误差预测值。如图6所示,所述空间插值法涉及的空间任一点p包含于顶点为pn(n=1,2,…8)的长方体补偿空间,pn为实际测量点,每点的三个轴方向的误差值cnx、cny、cnz(n=1,2,…8)已知,需要求长方体补偿空间内任意点p在三个轴方向的综合误差值px、py和pz。

下面以x轴方向的误差计算为例进行说明,y轴和z轴方向误差计算方法可以此类推,点dj(j=1,2,…6)为点p在各平面或轴上的投影,点dj处的三个轴方向的误差值djx、djy、djz(j=1,2,…6)。在顶点为p1、p2到p8的长方体补偿空间内,计算点p在x轴方向的内部分割比rx,计算方式如下:

其中,p1x和p2x是p1和p2顶点的x轴坐标。以同样的方式计算点p在y轴、z轴方向的内部分割比ry、rz,并计算点d1在x轴方向上的误差值。因为点d1在线段p1p2上,根据反距离加权法,将距离看成是权重,则点d1在x轴方向上的误差值d1x为:d1x=(1-rx)c1x+rxc2x。

按此方法计算出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

同理,y轴和z轴上的补偿量cy和cz以相同的方式确定。

本实施方式中,以机床的四条对角线为分析对象,预测对角线的定位误差。由于将机床行程空间被划分为11×11×11的空间网格,所以每条空间对角线包含已测量的11个点。由图5可知,空间插值预测方法在网格点处的预测值与实测值相同;采用本发明所提供的方法得到的预测曲线较为平滑,其预测结果与空间插值预测结果以及实测值都很接近,误差在[-2,4]mm之内,完全满足误差拟合以及补偿的要求,本发明所提供的方法是一种可靠的机床空间误差预测方法。此外,该神经网络模型数的参数个数仅为73个,大大减小了数控系统的公共空间存储量,参数值如表1、2、3所示。

表1神经网络模型涉及的参数vih值

表2神经网络模型涉及的参数whj值

表3神经网络模型涉及的参数θj,γh值

本发明提供的基于神经网络模型的机床误差数据拟合与预测方法,其针对数控机床空间误差补偿中的网格点误差数据的存储和非网格点误差值的预测所存在的问题,以所测的机床空间网格点的坐标值为模型输入训练得到机床误差模型,采用机床误差模型对机床空间网格点数据进行拟合,以减少数据存储量,并采用机床误差模型预测非网格点数据,如此不受存储空间限制,且提高了机床误差数据的预测准确性。

本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

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