一种基于机器学习的制孔法向调整方法与流程
1.本发明涉及制孔设备领域,尤其涉及一种基于机器学习的制孔法向调整方法。
背景技术:
2.现有的法向调整算法一般都需要精确的正向和逆向运动学,通过目标的刀尖点位姿来反向求出各关节轴应走的距离。然而由于制造误差,摩擦力,形变等诸多不可控因素的存在,实际应用中往往很难得到精确的运动学方程,甚至在某些特殊机械结构下,无法得出一个固定的运动学方程,需要不断变换运动学方程中的参数甚至是需要切换不同的运动学方程以满足不同机械形式的控制需求。这给运动控制开发带来了很大难度,并且因为不可控因素的存在,即便得到了理论上的运动学方程,也往往很难一步走到位,经常需要多次尝试才能走到目标范围。
技术实现要素:
3.为克服现有制孔法向调整算法存在的上述缺陷,本发明所要解决的技术问题是:提供一种可提高调法速度和精度的基于机器学习的制孔法向调整方法。
4.本发明解决其技术问题所采用的技术方案是:
5.一种基于机器学习的制孔法向调整方法,包括压力脚和与压力脚底部球面连接的万向支脚,所述压力脚上设有三个法向传感器,三个法向传感器的鼻头与万向支脚上的定位面接触,通过测量三个法向传感器的本体到鼻头的距离读数来判断穿过压力脚的主轴是否处于法向位置;
6.法向调整及学习过程包括以下步骤:
7.步骤一、由精确校准工具得出万向支脚上的定位面与主轴完全垂直时三个鼻头传感器的距离读数,并以此值作为理论法向;
8.步骤二、使用随机函数控制tcp刀尖点坐标系离开理论法向位置,记录偏离角度和三个法向传感器的实测读数;
9.步骤三、使用理论运动学计算xyzab关节轴位于步骤二相同位置时三个法向传感器的理论计算预估读数;
10.步骤四、通过比较步骤二与步骤三的数据,得出法向读数的误差随角度的变化数据;
11.步骤五、改变夹紧力重复记录步骤二至三;
12.步骤六、改变z高度重复记录步骤二至五;
13.步骤七、将所记录的数据整理作为样本集并使用机器学习中的多元线性回归方法得出法向读数的误差与角度、夹紧力、z高度之间的关系,并得到一个适合此时关节轴坐标的补偿量;
14.步骤八、将初步训练得到的模型应用到机器的调法算法中,在理论逆运动学计算出的目标关节轴坐标上叠加由机器学习模型给出的补偿量并记录每次的剩余实际误差,将
此过程在实际试加工生产中积累的数据作为机器学习数据的训练集来进一步提升算法模型的精度,减小每一次的剩余实际误差,并最终固化为最终的精确模型。
15.进一步的是,
16.步骤七中的回归方程为如下形式:
[0017][0018]
其中,为一常数,为各变量的权重,为法向误差的组成部分,包括a轴b轴的法向读数,当前夹紧力大小,z轴高度等;
[0019]
将步骤二至六所记录的数据作为机器学习训练的标签值y,整理形成如下形式,
[0020]
y=xw
[0021]
其中,y为一个储存了大量y标签值数据的矩阵,x为已知量矩阵,w为未知量矩阵;
[0022]
因此,损失函数可以定义为如下形式:
[0023][0024]
此方程作为在机器学习中使用的损失函数模型,通过求解到一组最优解,使得此函数的值最小,也就是使法向理论值和实际法向值的差值最小的一组w值,然后得出一个最终的误差值xiw,此误差值即为要加在理论运动学模型上的补偿量。
[0025]
本发明的有益效果是:通过在传统法向调整中加入机器学习,利用机器学习可以很容易的将整个系统的不可控变量以参数的形式列举出来,再由机器学习来确定每个参数的权重,从而确定各关节轴的补偿量,并将补偿量叠加到运动学方程输出的关节轴坐标上,从而减小了机械变形、摩擦力等不可控力带来的影响,并且提高了法向调整的速度和单次调法的精度。
附图说明
[0026]
图1是本发明的法向传感器结构示意图。
[0027]
图中编号说明:1-压力脚,2-万向支脚,3-法向传感器。
具体实施方式
[0028]
下面结合附图对本发明进一步说明。
[0029]
本发明一种基于机器学习的制孔法向调整方法,其法向检测主要通过压力脚来实现,具体结构如图1所示,包括压力脚1和与压力脚1底部球面连接的万向支脚2,所述压力脚1上设有三个法向传感器3,三个法向传感器3的鼻头与万向支脚2上的定位面接触,通过测量三个法向传感器3的本体到鼻头的距离读数来判断穿过压力脚1的主轴是否垂直于万向支脚2上的定位面,如果垂直则主轴处于法向位置。
[0030]
具体的法向检测过程是:首先,通过精确校准工具测出在万向支脚2与压力脚1同轴的状态下三个法向传感器3的读数,理论上三个读数应当一致,该读数即为法向状态,然后在制孔过程中,压力脚1随主轴移动到制孔位置,再下移,使万向支脚2与产品表面接触,在此过程中,万向支脚2会随着产品表面的曲率而偏转,由于三个法向传感器3的鼻头始终
与万向支脚2接触,因而三个法向传感器3的读数会出现偏差,最后,系统根据三个法向传感器3前后读数差,通过dh运动学模型计算主轴各关节的坐标值,并据此调整主轴,使压力脚1和主轴回到与万向支脚2同轴的状态,即相对产品表面的法向状态。
[0031]
上述过程就是主轴的法向调整过程,但同时该过程也是理论过程,因为在实际的调整过程中,还存在dh运动学模型参数参数不准确、机械刚性不足、摩擦力变化等影响因素,会导致调法精度降低,往往很难一步走到位,经常需要多次尝试才能走到目标范围。本技术正是通过增加机器学习来弥补传统的制孔调法算法的缺陷,具体如下:
[0032]
法向调整及学习过程包括以下步骤:
[0033]
步骤一、由精确校准工具得出万向支脚上的定位面与主轴完全垂直时三个鼻头传感器的距离读数,并以此值作为理论法向。
[0034]
步骤二、使用随机函数控制tcp刀尖点坐标系离开理论法向位置,记录偏离角度和三个法向传感器的实测读数。即当各关节运动到随机函数的位置时,法向传感器实测的值,这个值是正确的,也就是当法向传感器出现该读数时,按照上述随机函数反向移动回去,一定能回到理论法向状态。
[0035]
步骤三、使用理论运动学计算xyzab五个关节轴位于步骤二相同位置时三个法向传感器的理论计算预估读数。其中xyz表示沿xyz三轴移动,a表示绕x轴转动,b表示绕y轴转动。该读数是利用了不准确的dh运动学模型,通过使用和步骤二一样的关节角度预测计算出的有误差的预测读数,这个读数是不同于步骤二里的读数的,也就是说步骤三的读数是不对的,包含了一些误差在里面。
[0036]
步骤四、通过比较步骤二与步骤三的数据,得出法向读数的误差随角度的变化数据。由于步骤二是实际测试得到的,测试次数有限,不可能涵盖所有的可能性,因此我们需要知道步骤三里的由理论运动学得出的无限多的参数方程和步骤二实测值之间的差距,并对理论运动学进行修补,使步骤三的理论运动学的结果更加接近步骤二的实测结果。
[0037]
步骤五、改变夹紧力重复记录步骤二至三。夹紧力就是调法过程中机器施加给工件的力,即万向支脚对产品的压力,不同的压力会导致不同的形变量,也就导致万向支脚偏转的角度不同,大的夹紧力会导致步骤三的误差更大,小的夹紧力误差小,更接近实测值。
[0038]
步骤六、改变z高度重复记录步骤二至五,不同的高度机器的强度不同,相当于机器伸得越远,强度越软,误差也就越大,但从实际记录来看,该误差所占权重较低,几乎可忽略不计;
[0039]
步骤七、将所记录的数据整理作为样本集并使用机器学习中的多元线性回归方法得出法向读数的误差与角度、夹紧力、z高度之间的关系,并得到一个适合此时关节轴坐标的补偿量。
[0040]
进一步的是,
[0041]
步骤七中的回归方程为如下形式:
[0042][0043]
其中,为一常数,为各变量的权重,为法向误差的组成部分,包括a轴b轴的法向读数,当前夹紧力大小,z轴高度等;
[0044]
将步骤二至六所记录的数据作为机器学习训练的标签值y,整理形成如下形式,
[0045]
y=xw
[0046]
其中,y为一个储存了大量y标签值数据的矩阵,x为已知量矩阵,w为未知量矩阵;
[0047]
因此,损失函数可以定义为如下形式:
[0048][0049]
此方程作为在机器学习中使用的损失函数模型,通过求解到一组最优解,使得此函数的值最小,也就是使法向理论值和实际法向值的差值最小的一组w值,然后得出一个最终的误差值xiw,此误差值即为要加在理论运动学模型上的补偿量。
[0050]
步骤七是机器学习的主要过程,更为通俗的来讲,我们需要到一组各种误差的权重值w,来使得各种误差可以以合理的分配方式和权重比例相加得出一个最终的误差值xiw,将此误差值加在dh运动学模型给出的预估读数上,可使得预估读数加上误差值更为接近实测读数。与实测读数越接近,y
i-xiw误差越小,损失函数也越小,因此到使损失函数最小时候的w权重值,便可以得到一个最接近步骤二读数的补偿办法。以具体实例来说,当夹紧力为0时,法相传感器的预测值和步骤二的实测值只差200个读数,当夹紧力100kg时,误差变为了300个读数。假设改变z高度,当夹紧力为0时,误差依旧在200左右,因此可以认为z高度的权重为wz是一个很小的值趋近于0,但夹紧力使得误差出现了变化,因此夹紧力权重不为0。将步骤四所得的离散的补偿量通过回归方法得出一个连续的方程,此方程的输入是各关节轴的位置,输出是此时的补偿值。因为还有夹紧力、z高度等其他变量,因此还需要取得不同夹紧力下,输入各关节轴位置的输出补偿值。此时,通过输入各关节轴角度,经过由最小二乘法取得的权重的放大与缩小便可以得到一个合适此时关节轴坐标与夹紧力的补偿值,并将其加到dh模型预测的预测值上,使得模型预测值和实测值基本相等。在dh正向运动学已经精准的前提下,通过法向传感器的值由反向运动学推出各个关节轴坐标值,就可以实现精确的运动调法。
[0051]
步骤八、将初步训练得到的模型应用到机器的调法算法中,在理论逆运动学计算出的目标关节轴坐标上叠加由机器学习模型给出的补偿量并记录每次的剩余实际误差,将此过程在实际试加工生产中积累的数据作为机器学习数据的训练集来进一步提升算法模型的精度,减小每一次的剩余实际误差,并最终固化为最终的精确模型。补偿量其实就是在不同夹紧力或z轴高度下的步骤四的值,如果有一百种夹紧力,那就有一百种值。步骤四是一个xyzab五轴输入的变量,为了便于理解的简化,假设只有两个输入x和y,用z代表误差,那么误差值是xyz三维空间中的一个面,这个面上的某一点z1的高度就是其所对应的x1y1值的补偿量,同理xyzab的补偿量则为6维空间中的一个面。在步骤七中已经加入了一个粗略的步骤四的补偿,因此步骤八的剩余实际误差已经是一个非常小的量了,可以理解为补偿过后依旧剩余的误差,已经可以基本忽略不计了,当然若经过步骤七后误差依然很大,那就需要步骤八来进一步优化w权重,使得补偿后的数值更接近正确的测量值。
技术特征:
1.一种基于机器学习的制孔法向调整方法,其特征在于:包括压力脚(1)和与压力脚(1)底部球面连接的万向支脚(2),所述压力脚(1)上设有三个法向传感器(3),三个法向传感器(3)的鼻头与万向支脚(2)上的定位面接触,通过测量三个法向传感器(3)的本体到鼻头的距离读数来判断穿过压力脚(1)的主轴是否处于法向位置,法向调整及学习过程包括以下步骤:步骤一、确定理论法向;步骤二、使用随机函数控制tcp刀尖点坐标系离开理论法向位置,记录偏离角度和三个法向传感器的实测读数;步骤三、使用理论运动学计算xyzab各关节轴位于步骤二相同位置时三个法向传感器的理论计算预估读数;步骤四、通过比较步骤二与步骤三的数据,得出法向读数的误差随角度的变化数据;步骤五、改变夹紧力重复记录步骤二至三;步骤六、改变z高度重复记录步骤二至五;步骤七、将所记录的数据整理作为样本集并使用机器学习中的多元线性回归方法得出法向读数的误差与角度、夹紧力、z高度之间的关系,并得到一个适合此时关节轴坐标的补偿量;步骤八、固化为最终的精确模型。2.根据权利要求1所述的一种基于机器学习的制孔法向调整方法,其特征在于所述的确定理论法向为:由精确校准工具得出万向支脚上的定位面与主轴完全垂直时三个鼻头传感器的距离读数,并以此值作为理论法向。3.根据权利要求1所述的一种基于机器学习的制孔法向调整方法,其特征在于所述的步骤七中的回归方程为如下形式:其中,为一常数,为各变量的权重,为法向误差的组成部分,包括a轴b轴的法向读数,当前夹紧力大小,z轴高度等;将步骤二至六所记录的数据作为机器学习训练的标签值y,整理形成如下形式,y=xw其中,y为一个储存了大量y标签值数据的矩阵,x为已知量矩阵,w为未知量矩阵;因此,损失函数可以定义为如下形式:此方程作为在机器学习中使用的损失函数模型,通过求解到一组最优解,使得此函数的值最小,也就是使法向理论值和实际法向值的差值最小的一组w值,然后得出一个最终的误差值x
i
w,此误差值即为要加在理论运动学模型上的补偿量。4.根据权利要求1所述的一种基于机器学习的制孔法向调整方法,其特征在于所述的步骤八中固化为最终的精确模型具体过程为:将初步训练得到的模型应用到机器的调法算法中,在理论逆运动学计算出的目标关节轴坐标上叠加由机器学习模型给出的补偿量并记
录每次的剩余实际误差,将此过程在实际试加工生产中积累的数据作为机器学习数据的训练集来进一步提升算法模型的精度,减小每一次的剩余实际误差,并最终固化为最终的精确模型。
技术总结
本发明公开了一种基于机器学习的制孔法向调整方法,主要是在传统法向调整中加入机器学习,利用机器学习可以很容易的将整个系统的不可控变量以参数的形式列举出来,再由机器学习来确定每个参数的权重,从而确定各关节的补偿量,并将补偿量叠加到运动学方程输出的关节轴坐标上,从而减小了机械变形、摩擦力等不可控力带来的影响,并且提高了法向调整的速度和单次调法的精度。单次调法的精度。单次调法的精度。