一种基于多元回归的机器人关节几何误差补偿方法与流程

文档序号:20036966发布日期:2020-02-28 11:21阅读:189来源:国知局
一种基于多元回归的机器人关节几何误差补偿方法与流程

本发明涉及机器人的误差补偿技术,特别涉及一种基于关节空间多元回归的机器人误差补偿方法。



背景技术:

几何精度是机器人系统的重要性能指标,其主要受到机器人关节运动误差和结构误差,即关节几何误差源的影响。在通过制造和装配等手段保证了机器人重复性精度的前提下,运动学标定是提高机器人几何精度的重要手段。运动标定的步骤包含误差建模、误差测量、参数辨识和误差补偿四个彼此紧密连接的环节。其中,利用可靠的参数辨识结果来准确预测末端在任意位形下的位姿误差是运动学标定的关键问题。

在传统的运动学标定方法中,通常将关节的几何误差源作为待辨识的参数。这种处理方法存在的局限性有二:一是必须建立考虑全部关节结构误差且满足完备性、连续性和最小性要求的误差模型,过程非常复杂;二是无法辨识和补偿由随位形变化的误差源(如移动副的直线度误差)引起的末端位姿误差,导致末端执行器的位姿精度不高。因此,亟需一种无需关节结构误差建模,且可补偿由随位形变化误差源引起末端位姿误差的运动学标定方法。



技术实现要素:

本发明的目的是克服现有技术中的不足,提供一种基于多元回归的机器人关节几何误差补偿方法,本发明直接用简单的多元线性函数的线性映射来预测关节几何误差源对末端位姿误差的影响,可补偿由随位形变化误差源引起的末端位姿误差,进而有利于提高机器人的几何精度。

本发明所采用的技术方案是:一种基于多元回归的机器人关节几何误差补偿方法,包括以下步骤:

采用理想关节变量的多元线性函数构建驱动关节误差补偿函数;

采用有限位形下的末端位姿误差检测数据估计驱动关节误差补偿函数的系数,并通过显著性检验确定驱动关节误差补偿函数的系数;

采用驱动关节误差补偿函数修正驱动关节的理想指令,实现机器人末端位姿误差的补偿。

进一步地,所述的采用理想关节变量的多元线性函数构建驱动关节误差补偿函数包括:

将f自由度机器人的末端位姿误差旋量ξ表示为:

ξ=taρa+ζ(1)

式中,表示f自由度机器人的末端位姿误差旋量,f≤6;表示运动误差雅可比,为名义驱动关节变量q1,q2,…,qf的函数;ρa表示关节运动误差向量;表示由系统中所有关节结构误差和其它未建模误差所引起的末端误差旋量;

用机器人的驱动力雅可比wa的转置左乘式(1)两端,得:

式中,表示机器人的驱动力雅可比;

令驱动关节的误差补偿向量△q恒满足:

△q≡-ρa-λa-1watζ(3)

式中,△q=(△q1△q2...△qf)t,表示驱动关节的误差补偿向量;

则有

采用多元线性函数构造关节误差补偿函数向量来逼近式(3)中的驱动关节的误差补偿向量△q,其中:

式中,△qi表示第i个驱动关节的误差补偿函数;ni表示第i个驱动关节的误差补偿函数的系数数量;表示第i个驱动关节的补偿函数的第ni个多项式;表示多项式的系数;zi表示由组成的向量;βi表示由组成的向量;

将式(6)改写为:

式中,z表示驱动关节误差补偿矩阵;β表示驱动关节误差补偿函数的系数向量;

将式(7)代入式(3)后再代入式(2),得:

进一步地,所述的采用有限位形下的末端位姿误差检测数据估计驱动关节误差补偿函数的系数,并通过显著性检验确定驱动关节误差补偿函数的系数包括:

在机器人工作区域内历遍k个位形;在第k≤k个位形处,检测末端的6维位姿误差旋量ξk,并由式(8)得到总体线性回归模型如式(9)所示:

式中,y表示回归模型的观测量;x表示回归设计矩阵;β表示回归系数向量,即驱动关节误差补偿函数的系数向量;ε~n(0σ2ik),表示服从零均值标准正态分布的测量噪声;yk表示第k个位型的观测量;xk表示第k个位型的回归设计矩阵;wa,k表示第k个位型的驱动力雅可比;ta,k表示第k个位型的运动误差雅可比;zk表示第k个位型的驱动关节误差补偿矩阵;对于f自由度的机器人系统共有个回归系数;

采用以下步骤保证回归模型的解释能力和预测效果:

步骤1,重构回归设计矩阵x和驱动关节误差补偿函数的系数向量β,使得回归设计矩阵x列满秩;

步骤2,采用正则化方法估计驱动关节误差补偿函数的系数向量β:

式中,表示驱动关节误差补偿函数的系数向量β的估计值;λ是正则参数,根据广义交叉检验准则或l-曲线法确定;i表示与矩阵xtx维数相同的单位阵;

步骤3,构造统计检验量tj:

式中,m1表示重构后的系数数量;cj表示c=(xtx)-1的第j个主对角元;yk和表示第k个位形的观测值和预测值;表示重构后第j和m1个系数的估计值;给定检验水平κ,查找t检验分布表给出的临界值tκ,若|tj|≤tκ,则令βj=0,反之,保留βj,其中,βj为重构后的驱动关节误差补偿函数的系数向量β中的第j项;

步骤4,构造统计量r2

给定检验水平则回归模型拟合度满足要求;否则重复步骤3直至

进一步地,所述的采用驱动关节误差补偿函数修正驱动关节的理想指令,实现机器人末端位姿误差的补偿包括:

按照粗插补周期将操作空间连续轨迹离散为位姿指令集{p}写入数据缓冲区;

通过位置逆解将位姿指令集{p}中的每一条指令转换为关节名义指令向量q,并计算当前位形的驱动关节误差补偿矩阵z及驱动关节的误差补偿向量△q:

式中,表示驱动关节误差补偿函数的系数向量β的估计值;

采用驱动关节的误差补偿向量△q修正关节名义指令向量q,得到关节实际指令向量qm:

qm=q+△q(14)

将关节实际指令向量qm写入数据缓冲区,生成修正指令集{qm},并经精插补发至各驱动关节。

本发明的有益效果是:本发明一种基于多元回归的机器人关节几何误差补偿方法,直接用简单的多元线性函数的线性映射来预测关节几何误差源对末端位姿误差的影响,可补偿由随位形变化误差源引起的末端位姿误差,进而有利于提高机器人的几何精度。

附图说明

图1:本发明嵌入式误差补偿模块示意图;

具体实施方式

为能进一步了解本发明的发明内容、特点及功效,兹例举以下实施例,并配合附图详细说明如下:

一种基于多元回归的机器人关节几何误差补偿方法,包括以下步骤:

步骤一、驱动关节误差补偿函数的构建

采用理想关节变量的多元线性函数构造驱动关节的误差补偿函数。

在关节运动误差相对其名义值足够小的前提下,将f(f≤6)自由度机器人的末端位姿误差旋量ξ表示为:

式中,表示运动误差雅可比,其是名义驱动关节变量q1,q2,…,qf的函数,可由机器人系统的瞬时运动分析得到;ρa表示关节运动误差向量;ρa,i和表示第i个(i=1,2,…,f)驱动关节运动误差的大小以及末端关于参考点的单位微小位移旋量;表示由系统中所有关节结构误差和其它未建模误差源引起的末端关于其参考点的误差旋量。

根据机器人的拓扑构型和尺度参数构造驱动力雅可比wa的具体表达式,并用其转置左乘式(1)两端,得:

令驱动关节的误差补偿向量△q(△q=(△q1△q2...△qf)t)恒满足:

则有

采用幂多项式、正交多项式作为驱动关节误差补偿函数向量,使之逼近式(3)中的驱动关节的误差补偿向量△q。针对不同的机器人拓扑构型,以二次幂多项式为例,构造串联机器人以及各主动支链结构相同的并联机器人第i个驱动关节的误差补偿函数△qi:

对于串联机器人,有

式中,α0,i表示零阶项的系数;αj,i表示与第j个驱动关节的运动变量相关的一阶项的系数;αj,k,i表示与第j和k个驱动关节的运动变量相关的二阶项的系数;qj和qk表示第j和k个驱动关节的运动变量。

对于并联机器人,有

将式(4)和(5)作变量替换,统一写成多元线性函数的形式,有:

式中,△qi表示第i个驱动关节的误差补偿函数;ni表示第i个驱动关节的误差补偿函数的系数数量;表示第i个驱动关节的补偿函数的第ni个多项式;表示多项式的系数;zi表示由组成的向量;βi表示由组成的向量。

将式(6)改写为:

式中,z表示驱动关节误差补偿矩阵;β表示驱动关节误差补偿函数的系数向量;

将式(7)代入式(3)后再代入式(2),得:

步骤二、驱动关节误差补偿函数的系数估计

采用有限位形下的末端位姿误差检测数据估计并通过显著性检验确定误差补偿函数的系数。

以单轴逐一驱动或多轴联动的方式,在机器人工作区域内历遍k个位形。在第k≤k个位形处,采用测量仪器(如激光跟踪仪器)检测末端相对世界坐标系的6维位姿误差旋量ξk,并由式(8)得到总体线性回归模型如式(9)所示:

式中,y表示回归模型的观测量;x表示回归设计矩阵;β表示回归系数向量,即驱动关节误差补偿函数的系数向量;ε~n(0σ2ik),表示服从零均值标准正态分布的测量噪声;yk表示第k个位型的观测量;xk表示第k个位型的回归设计矩阵;wa,k表示第k个位型的驱动力雅可比;ta,k表示第k个位型的运动误差雅可比;zk表示第k个位型的驱动关节误差补偿矩阵;对于f自由度的机器人系统共有个回归系数。

采用以下步骤保证回归模型的解释能力和预测效果。

(1)重构回归设计矩阵x和驱动关节误差补偿函数的系数向量β,使得回归设计矩阵x列满秩。采用如下步骤重构回归设计矩阵x和驱动关节误差补偿函数的系数向量β:

a)令x=:[g1…gm],m=:dim(β),x0=:g1,β0=:β1,i=:2

其中,g1和gm表示矩阵x的第1和第m个列向量;x0和β0表示该算法的过渡矩阵及其系数向量。

b)构造[x0gi],若rank[x0gi]=rank(x0)+1,则x0=:[x0gi],i=:i+1,重复此步直至i>m

其中,gi表示矩阵x的第i个列向量;βi表示向量β的第i个系数。

c)x=:x0,β=:β0,m1=:dim(β)

其中,m1表示重构后的系数数量。

(2)为了改善因辨识矩阵复共线性所造成辨识结果稳定性差的问题,采用正则化方法估计驱动关节误差补偿函数的系数向量β:

式中,表示系数向量β的估计值;λ是正则参数,可根据广义交叉检验准则或l-曲线法确定;i表示与矩阵xtx维数相同的单位阵。

(3)令βj(j=1,2,…,m1)表示重构后的系数向量β中的第j项,zj表示与系数βj一一对应的多项式。为了描述变量zj对观测量y的解释能力,假设回归系数βj=0,并构造统计检验量tj:

式中,cj表示c=(xtx)-1的第j个主对角元;yk和表示第k个位形的观测值和预测值;表示重构后第j和m1个系数的估计值。给定检验水平κ,查找t检验分布表给出的临界值tκ,若|tj|≤tκ,则令βj=0,反之,保留βj。

(4)为了检验回归模型的预测效果,构造统计量r2

给定检验水平则回归模型拟合度满足要求;否则重复步骤(3)和(4)直至

步骤三、机器人末端位姿误差的补偿

采用驱动关节误差补偿函数直接修正驱动关节的理想指令,实现机器人末端位姿误差的补偿。

如图1所示,在开放式数控系统环境下开发嵌入式误差补偿模块,将驱动关节误差补偿矩阵z写入运动控制卡位置逆解程序缓冲区,同时将最终确定的写入变量寄存器,以备调用。误差补偿的具体实施方法如下:

首先按照粗插补周期,将操作空间连续轨迹离散为位姿指令集{p},并写入数据缓冲区;然后通过位置逆解将位姿指令集{p}中的每一条指令转换为关节名义指令向量q(q=(q1q2…qf)t),并调用预存的嵌入式误差补偿模块,计算当前位形的驱动关节误差补偿矩阵z及驱动关节的误差补偿向量△q:

采用驱动关节的误差补偿向量△q修正关节名义指令向量q,得到关节实际指令向量qm:

qm=q+△q(14)

最后将关节实际指令向量qm写入数据缓冲区,生成修正指令集{qm},并经精插补发至各驱动关节,进而实现机器人末端执行器在全轨迹段上的位姿误差补偿。

尽管上面结合附图对本发明的优选实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,并不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可以做出很多形式,这些均属于本发明的保护范围之内。

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