CN107866823B - 一种基于位置矢量法的工业机器人几何参数标定方法 - Google Patents
一种基于位置矢量法的工业机器人几何参数标定方法 Download PDFInfo
- Publication number
- CN107866823B CN107866823B CN201710998118.1A CN201710998118A CN107866823B CN 107866823 B CN107866823 B CN 107866823B CN 201710998118 A CN201710998118 A CN 201710998118A CN 107866823 B CN107866823 B CN 107866823B
- Authority
- CN
- China
- Prior art keywords
- robot
- axis
- value
- vector
- matrix
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/0095—Means or methods for testing manipulators
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Manipulator (AREA)
- Numerical Control (AREA)
Abstract
一种基于位置矢量法的工业机器人几何参数标定方法:建立基于基坐标系oxyz下的机器人位置矢量模型,从机器人手册寻找并获取机器人零位状态下方向矢量和连接矢量的名义值,在机器人手册给定的各关节运动范围,在示教器上任意设定机器人各组关节角,控制机器人各个关节运动到设定的各组关节角值qij,用激光跟踪仪对安装在机器人末端G的靶标进行检测,获取被测量机器人末端姿态和位置数据,建立机器人几何参数标定的目标函数Ej,使用遗传算法求解目标函数Ej,获取被测量机器人方向矢量和连接矢量的最优解。本发明解决了相邻关节平行及垂直时所引起的奇异性问题,同时基于该模型建立了工业机器人几何参数标定误差优化目标函数。
Description
技术领域
本发明涉及一种几何参数的标定方法,尤其涉及一种工业机器人几何参数的标定方法,属于精密计量与计算机应用领域。
背景技术
高端制造业的持续发展提高了对工业机器人的精度要求,尤其是在激光焊接、激光切割以及航空航天等应用领域。工业机器人定位性能的衡量指标主要为重复定位精度和绝对定位精度。目前工业机器人的重复定位精度可达到0.02mm~0.1mm,而绝对定位精度仅为毫米级,机器人的重复定位精度在示教编程中较为重要。随着第四次工业革命的开始,示教编程已经逐渐无法满足工业机器人在高端制造业的发展和应用需求,因此对工业机器人绝对定位精度要求较高的离线编程得到了快速地发展。机器人标定能够较好地提高机器人的绝对定位精度。机器人标定分为关节级标定、运动学参数(即几何参数)标定与非运动学标定。研究发现,机器人的几何参数误差是影响机器人作业精度的主要误差源,约占总误差的90%,通过对机器人几何参数标定,可以有效提高机器人定位精度。
机器人几何参数标定通常分为建模,测量、辨识和补偿四步。其中,工业机器人常用的几何参数模型是DH模型,该模型通过齐次变换矩阵来描述相邻连杆之间的空间关系。但是,当机器人相邻关节旋转轴线平行或接近平行及垂直或接近垂直时出现奇异点,无法满足模型连续性的要求,直接影响标定结果的准确性。为了解决该问题,在传统的DH模型基础上有学者提出了改进的DH模型(MDH模型),通过增加一个旋转参数,弥补了DH模型的缺陷,解决了相邻关节旋转轴线平行或接近平行时出现奇异点;但当相邻两轴线垂直或接近垂直时,该模型仍具有奇异性。机器人的位姿数据常用三坐标测量机、视觉系统和激光跟踪仪等设备来进行测量,其中,激光跟踪仪因其具有快速、测量精度高、无接触测量等优点,得到了较为广泛的应用。辨识是从测量数据中获取机器人实际模型参数信息的过程,其辨识的结果对机器人绝对定位精度的提高有直接影响。一些学者相应提出最小二乘法、LM方法、卡尔曼滤波法等辨识方法。考虑到运动学参数标定属于复杂的非线性优化问题,而遗传算法在解决复杂优化问题时有独到之处。因此,近年来已有学者针对遗传算法在机器人标定中的应用开展了研究,提出了基于遗传算法的六自由度串联机器人误差标定方法,通过建立机器人D-H误差模型,并引入平行误差角来建立机器人的实际模型,采用浮点型二进制方法对机器人工具中心实际位置进行编码,将整数部分和小数部分每个数字按照二进制编码得到编码后的数据,通过计算种群的适应值按照转轮选择法设定选择和变异操作。该模型通过增加一个旋转参数,弥补了DH模型存在的当机器人相邻关节旋转轴线平行或者接近平行时出现奇异点的缺陷,但当相邻两轴垂直或接近垂直时,该模型仍具有奇异性,导致机器人误差标定准确度低。另外该发明使用的遗传算法采用浮点型二进制方法,需要频繁编码、解码,交叉及变异操作时需要先计算群体中每个个体适应值,再根据适应值按照赌轮选择法选择交叉及变异个体,导致完成一代进化需要时间长,优化效率低,而且需依据经验确定交叉和变异的概率,算法鲁棒性差。
综合上述分析,当前对相关领域研究工作存在的不足主要是:(1)当机器人相邻两轴垂直或接近垂直时,现有模型具有奇异性,并且基于现有模型所建立的优化目标函数较为复杂,难以满足机器人几何参数标定对模型的连续性和简约性要求;(2)机器人几何参数标定属于具有复杂约束的非线性优化问题,需要优化的变量数目多且各个变量间数值差异大,传统遗传算法不仅需要依据经验确定交叉、变异概率等控制参数,而且在选择、交叉和变异执行过程中需要频繁地编码、解码及计算个体的适应值,算法优化效率低、鲁棒性差。
发明内容
本发明提供一种能够提高误差识别精度和效率的基于位置矢量法的工业机器人几何参数标定方法。
本发明的技术方案为:
一种基于位置矢量法的工业机器人几何参数标定方法,其特征在于,包括以下步骤:
步骤1建立基于基坐标系oxyz下的机器人位置矢量模型,所述位置矢量模型包括方向矢量和连接矢量,
步骤2从机器人手册寻找并获取机器人零位状态下方向矢量和连接矢量的名义值ηmi和ρm(i+1),i=1,2,…,n,n为机器人关节数目且n为正整数,ηmi在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为ηmix、ηmiy和ηmiz,ρm(i+1)在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为ρm(i+1)x、ρm(i+1)y和ρm(i+1)z,
步骤3令j=1,j为测量序数,
步骤4在机器人手册给定的各关节运动范围,在示教器上任意设定机器人各组关节角qij,i=1,2,…,n,n为机器人关节数目,j依次取值为1,2,…,40,控制机器人各个关节运动到设定的各组关节角值qij,
步骤5用激光跟踪仪对安装在机器人末端G的靶标进行检测,获取第j次测量机器人末端姿态和位置数据,其中第j次测量机器人末端在基坐标系oxyz下姿态坐标和位置坐标的测量值分别为raj和paj,raj在基坐标系oxyz下绕x轴、y轴和z轴的角度分量分别为rajx、rajy和rajz,paj在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为pajx、pajy和pajz,
步骤6建立机器人几何参数标定的目标函数Ej,计算第j次测量机器人末端G在基坐标系oxyz下姿态坐标的名义值rmj和位置坐标的名义值pmj,rmj在基坐标系oxyz下绕x轴、y轴和z轴的角度分量分别为rmjx、rmjy和rmjz,pmj在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为pmjx、pmjy和pmjz,
步骤7使用遗传算法求解步骤6所建立的目标函数Ej,获取第j次测量机器人方向矢量和连接矢量的最优解及Ej,i=1,2,…,n,n为机器人关节数目且n为正整数,j=1,2,…,40,
步骤8如果j>40,则转入步骤9,否则,令j=j+1,返回步骤4,
步骤9计算由步骤7所述遗传算法求得的40次测量机器人方向矢量和连接矢量最优解的平均值及其目标函数值E*,i=1,2,…,n,n为机器人关节数目且n为正整数,
步骤10如果E*<0.01,则转入步骤12,否则,进入步骤11,
步骤11用由步骤9获得机器人方向矢量和连接矢量最优解的平均值代替方向矢量和连接矢量的名义值ηmix、ηmiy、ηmiz、ρm(i+1)x、ρm(i+1)y、ρm(i+1)z转入步骤3,
步骤12取机器人方向矢量和连接矢量最优解的平均值作为几何参数标定值,i=1,2,…,n。
本发明的有益效果在于:
本发明基于方向矢量和连接矢量构建了机器人位置矢量模型,该模型解决了相邻关节平行或接近平行及垂直或接近垂直时所引起的奇异性问题,同时基于该模型建立了工业机器人几何参数标定误差优化目标函数,该目标函数具有简约的表达形式,有利于机器人几何参数标定过程中参数优化算法的实现;机器人几何参数标定属于具有复杂约束的非线性优化问题,不仅需要优化的变量数目多,而且各个变量间数值差异大,本发明的遗传算法,采用实数编码直接表示每一待优化的方向矢量和连接矢量的坐标分量,不需要编码解码,控制参数仅有种群规模和子代种群规模,不需要依据经验确定交叉和变异概率等参数;采用交叉变异混合策略,不仅每代待进化的两个体从父代中随机选择,不需要事先计算个体适应值,而且能够同时实现交叉和变异功能,同传统遗传算法相比不仅完成一代进化所需要时间少,优化效率高,而且算法简单,鲁棒性强,适宜于求解基于位置矢量法的方向矢量和连接矢量最优解,能够实现对工业机器人几何参数进行快速准确标定。
附图说明
图1是串联工业机器人结构简图。
图2是位置矢量模型示意图。
图3是本发明的流程图。
图4是机器人几何参数标定目标函数计算的流程图。
图5是用遗传算法搜索机器人方向矢量和连接矢量的优化过程图。
具体实施方式
一种基于位置矢量法的工业机器人几何参数的标定方法,所述工业机器人包括机器人底座、依次串接的第一关节、第二关节、……、第n关节和机器人末端,并且,机器人底座与第一关节串接,第n关节与机器人末端串接,具体包括如下步骤:
步骤1建立基于基坐标系oxyz下的机器人位置矢量模型,所述位置矢量模型包括方向矢量和连接矢量,
步骤1.1将机器人所有关节角设为零,使所述工业机器人进入零位状态,控制第一关节单独转动,用激光跟踪仪测得当前状态的机器人末端运动轨迹,再取其拟合圆的圆心O'及该圆所在平面的法向量f',拟合圆可采用最小二乘法,
步骤1.2将第一关节回到零位,控制第二关节单独转动,用激光跟踪仪测得当前状态的机器人末端运动轨迹,再取其拟合圆的圆心O”及该圆所在平面的法向量f”,拟合圆可采用最小二乘法,
步骤1.3将法向量f'作为z轴,将法向量f”作为y轴,过圆心O'且平行于法向量f'做直线l',过圆心O”且平行于法向量f”做直线l”,将l'和l”两者投影的交点作为原点o,根据右手定则确定x轴,建立机器人基坐标系oxyz,在基坐标系oxyz上建立ηi、ρi+1及L,ηi为沿第i个关节轴线的方向矢量,i=1,2,…,n,n为机器人关节数目且n为正整数,方向矢量ηi在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为ηix、ηiy和ηiz,ρi+1为连接关节i到关节i+1的连接矢量,连接矢量ρi+1在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为ρ(i+1)x、ρ(i+1)y和ρ(i+1)z,L为基坐标系oxyz的原点o距离机器人底座之间的距离,
步骤2从机器人手册寻找并获取机器人零位状态下方向矢量和连接矢量的名义值ηmi和ρm(i+1),i=1,2,…,n,n为机器人关节数目且n为正整数,ηmi在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为ηmix、ηmiy和ηmiz,ρm(i+1)在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为ρm(i+1)x、ρm(i+1)y和ρm(i+1)z,
步骤3令j=1,j为测量序数,
步骤4在机器人手册给定的各关节运动范围,在示教器上任意设定机器人各组关节角qij,i=1,2,…,n,n为机器人关节数目,j依次取值为1,2,…,40,控制机器人各个关节运动到设定的各组关节角值qij,
步骤5用激光跟踪仪对安装在机器人末端G的靶标进行检测,获取第j次测量机器人末端姿态和位置数据,其中第j次测量机器人末端在基坐标系oxyz下姿态坐标和位置坐标的测量值分别为raj和paj,raj在基坐标系oxyz下绕x轴、y轴和z轴的角度分量分别为rajx、rajy和rajz,paj在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为pajx、pajy和pajz,
步骤6建立机器人几何参数标定的目标函数Ej,计算第j次测量机器人末端G在基坐标系oxyz下姿态坐标的名义值rmj和位置坐标的名义值pmj,rmj在基坐标系oxyz下绕x轴、y轴和z轴的角度分量分别为rmjx、rmjy和rmjz,pmj在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为pmjx、pmjy和pmjz,
步骤6.1将机器人几何参数标定的雅克比矩阵Je表示为:
并计算雅克比矩阵Je,Je由Je1、Je2、Je3、Je4、Je5、Je6子矩阵组成,其中Je1、Je2、Je3、Je4均为3行3n列的子矩阵,Je5和Je6为n行3n列的子矩阵,n为机器人关节数目,
步骤6.1.1计算第j次测量时机器人关节i相对于基坐标系的旋转矩阵
其中,
式中Vij=1-cos(qij),Sij=sin(qij),R(qij,ηmi)简写为Rij,表示第j次测量时机器人底座相对于基坐标系不做旋转,取E3×3为3行3列的单位矩阵,
步骤6.1.2分别建立矩阵A、矩阵B及矩阵C,
其中,
式中,Xij=ηmixVij,Yij=ηmiyVij,Zij=ηmizVij,表示对矩阵求转置,
步骤6.1.3计算雅克比矩阵Je的子矩阵Je1:
计算子矩阵Je1的各元素Je1(s,s’),Je1(s,s’)表示子矩阵Je1的第s行第s’列的元素,s依次取值为1、2、3,s’依次取值为3(i-1)+1、3(i-1)+2、3(i-1)+3,i依次取值为1、2、3、…、n,并令:
Je1(1,3(i-1)+1)=A(3,2),Je1(1,3(i-1)+2)=B(3,2),Je1(1,3(i-1)+3)=C(3,2),
Je1(2,3(i-1)+1)=A(1,3),Je1(2,3(i-1)+2)=B(1,3),Je1(2,3(i-1)+3)=C(1,3),
Je1(3,3(i-1)+1)=A(2,1),Je1(3,3(i-1)+2)=B(2,1),Je1(3,3(i-1)+3)=C(2,1),
其中,A(3,2)、B(3,2)、C(3,2)分别表示取矩阵A、矩阵B及矩阵C的第3行第2列元素,A(1,3)、B(1,3)、C(1,3)分别表示取矩阵A、矩阵B及矩阵C的第1行第3列元素,A(2,1)、B(2,1)、C(2,1)分别表示取矩阵A、矩阵B及矩阵C的第2行第1列元素,
步骤6.1.4计算雅克比矩阵Je的子矩阵Je2,
Je2为3行3n列矩阵,其中的所有元素均为零,
步骤6.1.5计算雅克比矩阵Je的子矩阵Je3,
步骤6.1.5.1计算距离di,
当i为n时,di=ρm(n+1),当i为n-1,n-2,…,1时,di=ρm(i+1)+Rijdi+1,式中Rij的计算公式见步骤6.1.1所列,
步骤6.1.5.2计算向量v1、v2及v3:
v1、v2及v3均为3行1列向量,
步骤6.1.5.3计算子矩阵Je3:
计算子矩阵Je3的各元素Je3(s,s’),Je3(s,s’)表示子矩阵Je3的第s行第s’列的元素,s依次取值为1、2、3,s’依次取值为3(i-1)+1、3(i-1)+2、3(i-1)+3,i依次取值为1、2、3、…、n,并令:
Je3(s,3(i-1)+1)=v1(s,1),Je3(s,3(i-1)+2)=v2(s,1),Je3(s,3(i-1)+3)=v3(s,1),
v1(s,1)、v2(s,1)及v3(s,1)分别表示向量v1、v2及v3的第s行第1列元素,s依次取值为1、2、3,
步骤6.1.6计算雅克比矩阵Je的子矩阵Je4,
Je4=[R1j,R2j,…,Rij,…,Rn-1j,Rnj],
式中Rij为3行3列矩阵,计算公式见步骤6.1.1,
步骤6.1.7计算雅克比矩阵Je的子矩阵Je5,
子矩阵Je5为n行3n列矩阵,其中第1行中第1列至第3列的元素值分别为ηm1x、ηm1y、ηm1z,其余元素值均为零,Je5第2行中第4列至第6列的元素值分别为ηm2x、ηm2y、ηm2z,其余元素值均为零,依次类推,Je5第n行中第3n-2列至第3n列的元素值分别为ηmnx、ηmny、ηmnz,其余元素值均为零,
步骤6.1.8计算雅克比矩阵Je的子矩阵Je6,
Je6为n行3n列矩阵,其中的所有元素均为零,
步骤6.2计算第j次测量机器人末端G在基坐标系oxyz下姿态的名义值rmj和位置的名义值pmj,
姿态的名义值rmj等于R1j、R2j、…、Rnj的连乘,表示为
位置的名义值pmj等于连加,表示为
步骤6.3计算机器人末端G在基坐标系oxyz下的姿态误差和位置误差姿态误差在基坐标系oxyz下绕x轴、y轴和z轴的角度分量分别为和位置误差在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为和
步骤6.4获取第j次测量机器人几何参数标定的目标函数Ej,
目标函数Ej是的函数,并用f(·)表示,其中
式中,分别表示取矩阵的第3行第2列、第1行第3列、第2行第1列元素,其中,
其中T为对矩阵求转置,为[Je]的伪逆矩阵,为求矩阵的谱范数,
步骤7使用遗传算法求解步骤6所建立的目标函数Ej,获取第j次测量机器人方向矢量和连接矢量的最优解及Ej,i=1,2,…,n,n为机器人关节数目且n为正整数,j=1,2,…,40,
步骤7.1随机产生初始种群,
设置初始进化代数t=1,选择种群规模为10的种群,以6n×10维的实数向量作为初始种群,其中6n×1维的实数向量作为种群中的第k个体在第t代的值k=1,2,…,10,表示为:其中分别对应第j次测量机器人方向矢量沿x轴、y轴和z轴的坐标分量ηixj、ηiyj、ηizj(i=1,2,...,n)最优解的可能取值,分别对应第j次测量机器人连接矢量沿x轴、y轴和z轴的坐标分量ρ(i+1)xj、ρ(i+1)yj、ρ(i+1)zj最优解的可能取值,分别在[-0.01+ηmix,0.01+ηmix]、[-0.01+ηmiy,0.01+ηmiy]、[-0.01+ηmiz,0.01+ηmiz]和[-0.5+ρm(i+1)x,0.5+ρm(i+1)x]、[-0.5+ρm(i+1)y,0.5+ρm(i+1)y]、[-0.5+ρm(i+1)z,0.5+ρm(i+1)z]数值区域内随机产生10组和作为初始种群的个体
步骤7.2从初始种群中随机选择两个个体作为父代,采用交叉变异混合策略产生子代,子代和父代共同构成新家族
从初始种群k=1,2,…,10中随机选择两个个体作为父代,采用交叉变异混合策略产生10个子代c为子代个体数,c=1,2,…,10,其中子代中的第σ个变量的值根据均匀分布在区间中随机产生,为第t代的两个父代和的第σ个变量之间的欧式距离,即变量σ=1,2,…,6n,两个父代和交叉变异混合策略产生的10个子代共同构成新家族w为新家族的个体数,w=1,2,…,12,
步骤7.3计算新家族中每一个体的目标函数值,将其由小到大排序,用目标函数值最小的两个个体代替父代构成新的初始种群
根据步骤6.4所述的目标函数计算在第t代新家族中每一个体的目标函数值w=1,2,…,12,对由小到大排序,取排序后新家族的目标函数值最小的个体mpos1t和次小的个体mpos2t代替初始种群中两父代个体构成新的初始种群
步骤7.4如果进化代数t<100,则t=t+1,重复步骤7.2~7.4,否则转入步骤7.5,
步骤7.5取出目标函数值最小的个体mpos1100,该个体对应第j次测量机器人方向矢量和连接矢量的最优解 及其目标函数值Ej(mpos1100),
步骤8如果j>40,则转入步骤9,否则,令j=j+1,返回步骤4,
步骤9计算由步骤7所述遗传算法求得的40次测量机器人方向矢量和连接矢量最优解的平均值及由步骤7使用遗传算法求解平均值的目标函数E*,i=1,2,…,n,n为机器人关节数目且n为正整数,
步骤10如果E*<0.01,则转入步骤12,否则,进入步骤11,
步骤11用由步骤9获得机器人方向矢量和连接矢量最优解的平均值代替方向矢量和连接矢量的名义值ηmix、ηmiy、ηmiz、ρm(i+1)x、ρm(i+1)y、ρm(i+1)z转入步骤3,
步骤12取机器人方向矢量和连接矢量最优解的平均值作为几何参数标定值,i=1,2,…,n。
以下结合附图对本发明做进一步的说明:
1、对埃夫特ER10L-C10六自由度串联工业机器人建立机器人位置矢量模型,从机器人手册寻找并获取机器人零位状态下方向矢量和连接矢量的名义值ηmi、ρmi如表1所示,i=1,2,…,n,这里n=6。
表1 ER10L-C10机器人方向矢量和连接矢量的名义值
2、为了证实本方法的正确性,从示教器设定ER10L-C10机器人各组关节角qij,该组关节角使机器人末端在其作业空间内尽可能均匀分布,如表2所示,i=1,2,…,6,j=1,2,…,40。
表2 ER10L-C10机器人各组关节角
3、根据所列公式计算雅克比矩阵Je,Je为12行36列矩阵。
4、将表2设定的不同测量序数j下各组关节角qij值代入步骤6.2,计算第j次测量机器人末端G在基坐标系oxyz下姿态坐标名义值rmj和位置坐标名义值pmj。
5、在表2设定的各组关节角qij上分别加入位于区间[-0.01,0.01]上服从均匀分布的随机数重新生成40组关节角将生成的关节角代入步骤6.2,计算第j次测量机器人末端G在基坐标系oxyz下姿态坐标和位置坐标值,将其作为机器人末端G在基坐标系oxyz下姿态坐标测量值raj和位置坐标测量值paj,随机数产生采用Matlab中的rands函数引入。
6、初始化算法参数
种群规模和子代种群规模均取10。
7、随机产生初始种群
使用遗传算法标定机器人方向矢量和连接矢量时,种群规模取值为10,目标函数值Ej由方向矢量和连接矢量的坐标分量 36个参数决定,种群中第k个个体在第t代的值中对应第j次测量机器人方向矢量的坐标分量ηixj、ηiyj、ηizj(i=1,2,…,6)的最优解的可能取值,初始值分别在[-0.01+ηmix,0.01+ηmix],[-0.01+ηmiy,0.01+ηmiy],[-0.01+ηmiz,0.01+ηmiz]区间上随机产生;A19k,A20k,...,A36k分别对应第j次测量机器人连接矢量的坐标分量ρ(i+1)xj、ρ(i+1)yj、ρ(i+1)zj的最优解的可能取值,的初始值分别在[-0.5+ρm(i+1)x,0.5+ρm(i+1)x],[-0.5+ρm(i+1)y,0.5+ρm(i+1)y],[-0.5+ρm(i+1)z,0.5+ρm(i+1)z]区间上随机产生。
8、从初始种群中随机选择两个个体作为父代,采用交叉变异混合策略产生子代,子代和父代共同构成新家族。
9、根据机器人末端G在基坐标系oxyz下的姿态误差和位置误差及已建立机器人几何参数标定的目标函数,计算新家族的目标函数值,将目标函数值由小到大排序,同时新家族个体也随目标函数值排序,如果几个目标函数值相等,则相等的目标函数值及其个体任意排序,用排在最前面的两个个体即目标函数值最小的两个个体代替父代构成新的初始种群
10、进化代数t大于100时,算法终止
用上述算法搜索第j次测量机器人方向矢量和连接矢量的坐标分量的最优解附图5为第40次测量机器人几何参数目标函数优化过程,由图可见在约70代时就已搜索到方向矢量和连接矢量的最优解,未优化时目标函数值为0.86,优化后目标函数值为0.0057。
11、当测量序数j等于40时,计算由改进遗传算法求得40次测量机器人方向矢量和连接矢量最优解的平均值及其目标函数值E*见表3,由表3可见,E*<0.01,则取作为机器人几何参数标定值。
表3 ER10L-C10机器人方向矢量和连接矢量的标定值
12、为了进一步验证所提出方法的正确性,可以采用现有技术所述的基于距离误差的迭代补偿方法对机器人几何参数标定结果进行实验验证,补偿前机器人绝对定位误差的最大值、平均值和标准差分别为3.480、2.025和1.170mm,采用所提出方法对机器人几何参数标定后绝对定位误差的最大值、平均值和标准差分别为2.681、0.879和0.935mm,证实了所提出标定方法能有效提高机器人绝对定位精度。
Claims (1)
1.一种基于位置矢量法的工业机器人几何参数标定方法,所述工业机器人包括机器人底座、依次串接的第一~n关节和机器人末端,并且,机器人底座与第一关节串接,第n关节与机器人末端串接,其特征在于,包括以下步骤:
步骤1建立基于基坐标系oxyz下的机器人位置矢量模型,所述位置矢量模型包括方向矢量和连接矢量,
步骤2从机器人手册寻找并获取机器人零位状态下方向矢量和连接矢量的名义值ηmi和ρm(i+1),i=1,2,…,n,n为机器人关节数目且n为正整数,ηmi在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为ηmix、ηmiy和ηmiz,ρm(i+1)在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为ρm(i+1)x、ρm(i+1)y和ρm(i+1)z,
步骤3令j=1,j为测量序数,
步骤4在机器人手册给定的各关节运动范围内,在示教器上任意设定机器人各组关节角qij,i=1,2,…,n,n为机器人关节数目,j依次取值为1,2,…,40,控制机器人各个关节运动到设定的各组关节角值qij,
步骤5用激光跟踪仪对安装在机器人末端G的靶标进行检测,获取第j次测量机器人末端姿态和位置数据,其中第j次测量机器人末端在基坐标系oxyz下姿态坐标和位置坐标的测量值分别为raj和paj,raj在基坐标系oxyz下绕x轴、y轴和z轴的角度分量分别为rajx、rajy和rajz,paj在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为pajx、pajy和pajz,
步骤6建立机器人几何参数标定的目标函数Ej,计算第j次测量机器人末端G在基坐标系oxyz下姿态坐标的名义值rmj和位置坐标的名义值pmj,rmj在基坐标系oxyz下绕x轴、y轴和z轴的角度分量分别为rmjx、rmjy和rmjz,pmj在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为pmjx、pmjy和pmjz,
步骤7使用遗传算法求解步骤6所建立的目标函数Ej,获取第j次测量机器人方向矢量和连接矢量的最优解及Ej,i=1,2,…,n,n为机器人关节数目且n为正整数,j=1,2,…,40,
步骤8如果j>40,则转入步骤9,否则,令j=j+1,返回步骤4,
步骤9计算由步骤7所述遗传算法求得的40次测量机器人方向矢量和连接矢量最优解的平均值及平均目标函数值E*,i=1,2,…,n,n为机器人关节数目且n为正整数,
步骤10如果E*<0.01,则转入步骤12,否则,进入步骤11,
步骤11用由步骤9获得机器人方向矢量和连接矢量最优解的平均值代替方向矢量和连接矢量的名义值ηmix、ηmiy、ηmiz、ρm(i+1)x、ρm(i+1)y、ρm(i+1)z转入步骤3,
步骤12取机器人方向矢量和连接矢量最优解的平均值作为几何参数标定值,i=1,2,…,n;
步骤6所述的机器人几何参数标定的目标函数Ej的建立方法具体为:
步骤6.1将机器人几何参数标定的雅克比矩阵Je表示为:
并计算雅克比矩阵Je,Je由Je1、Je2、Je3、Je4、Je5、Je6子矩阵组成,其中Je1、Je2、Je3、Je4均为3行3n列的子矩阵,Je5和Je6为n行3n列的子矩阵,n为机器人关节数目,
步骤6.1.1计算第j次测量时机器人关节i相对于基坐标系的旋转矩阵
其中,
式中Vij=1-cos(qij),Sij=sin(qij),R(qij,ηmi)简写为Rij,表示第j次测量时机器人底座相对于基坐标系不做旋转,取E3×3为3行3列的单位矩阵,
步骤6.1.2分别建立矩阵A、矩阵B及矩阵C,
其中,
式中,Xij=ηmixVij,Yij=ηmiyVij,Zij=ηmizVij,表示对矩阵求转置,
步骤6.1.3计算雅克比矩阵Je的子矩阵Je1:
计算子矩阵Je1的各元素Je1(s,s’),Je1(s,s’)表示子矩阵Je1的第s行第s’列的元素,s依次取值为1、2、3,s’依次取值为3(i-1)+1、3(i-1)+2、3(i-1)+3,i依次取值为1、2、3、…、n,并令:
Je1(1,3(i-1)+1)=A(3,2),Je1(1,3(i-1)+2)=B(3,2),Je1(1,3(i-1)+3)=C(3,2),
Je1(2,3(i-1)+1)=A(1,3),Je1(2,3(i-1)+2)=B(1,3),Je1(2,3(i-1)+3)=C(1,3),
Je1(3,3(i-1)+1)=A(2,1),Je1(3,3(i-1)+2)=B(2,1),Je1(3,3(i-1)+3)=C(2,1),
其中,A(3,2)、B(3,2)、C(3,2)分别表示取矩阵A、矩阵B及矩阵C的第3行第2列元素,A(1,3)、B(1,3)、C(1,3)分别表示取矩阵A、矩阵B及矩阵C的第1行第3列元素,A(2,1)、B(2,1)、C(2,1)分别表示取矩阵A、矩阵B及矩阵C的第2行第1列元素,
步骤6.1.4计算雅克比矩阵Je的子矩阵Je2,
Je2为3行3n列矩阵,其中的所有元素均为零,
步骤6.1.5计算雅克比矩阵Je的子矩阵Je3,
步骤6.1.5.1计算距离di,
当i为n时,di=ρm(n+1),当i为n-1,n-2,…,1时,di=ρm(i+1)+Rijdi+1,
步骤6.1.5.2计算向量v1、v2及v3:
v1、v2及v3均为3行1列向量,
步骤6.1.5.3计算子矩阵Je3:
计算子矩阵Je3的各元素Je3(s,s’),Je3(s,s’)表示子矩阵Je3的第s行第s’列的元素,s依次取值为1、2、3,s’依次取值为3(i-1)+1、3(i-1)+2、3(i-1)+3,i依次取值为1、2、3、…、n,并令:
Je3(s,3(i-1)+1)=v1(s,1),Je3(s,3(i-1)+2)=v2(s,1),Je3(s,3(i-1)+3)=v3(s,1),
v1(s,1)、v2(s,1)及v3(s,1)分别表示向量v1、v2及v3的第s行第1列元素,s依次取值为1、2、3,
步骤6.1.6计算雅克比矩阵Je的子矩阵Je4,
Je4=[R1j,R2j,…,Rij,…,Rn-1j,Rnj],
步骤6.1.7计算雅克比矩阵Je的子矩阵Je5,
子矩阵Je5为n行3n列矩阵,其中第1行中第1列至第3列的元素值分别为ηm1x、ηm1y、ηm1z,其余元素值均为零,Je5第2行中第4列至第6列的元素值分别为ηm2x、ηm2y、ηm2z,其余元素值均为零,依次类推,Je5第n行中第3n-2列至第3n列的元素值分别为ηmnx、ηmny、ηmnz,其余元素值均为零,
步骤6.1.8计算雅克比矩阵Je的子矩阵Je6,
Je6为n行3n列矩阵,其中的所有元素均为零,
步骤6.2计算第j次测量机器人末端G在基坐标系oxyz下姿态坐标的名义值rmj和位置坐标的名义值pmj,
姿态坐标的名义值rmj等于R1j、R2j、…、Rnj的连乘,表示为
位置坐标的名义值pmj等于连加,表示为
步骤6.3计算机器人末端G在基坐标系oxyz下的姿态误差和位置误差姿态误差在基坐标系oxyz下绕x轴、y轴和z轴的角度分量分别为和位置误差在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为和
步骤6.4获取第j次测量机器人几何参数标定的目标函数Ej,
目标函数Ej是的函数,并用f(·)表示,其中
式中,分别表示取矩阵的第3行第2列、第1行第3列、第2行第1列元素,其中,
其中T为对矩阵求转置,为[Je]的伪逆矩阵,为求矩阵的谱范数,
步骤1所述的基于基坐标系oxyz下的机器人位置矢量模型的建立方法为:
步骤1.1将机器人所有关节角设为零,使所述机器人进入零位状态,控制第一关节单独转动,用激光跟踪仪测得当前状态的机器人末端运动轨迹,再取其拟合圆的圆心O'及该圆所在平面的法向量f',
步骤1.2将第一关节回到零位,控制第二关节单独转动,用激光跟踪仪测得当前状态的机器人末端运动轨迹,再取其拟合圆的圆心O”及该圆所在平面的法向量f”,
步骤1.3将法向量f'作为z轴,将法向量f”作为y轴,过圆心O'且平行于法向量f'做直线l',过圆心O”且平行于法向量f”做直线l”,将l'和l”两者投影的交点作为原点o,根据右手定则确定x轴,建立机器人基坐标系oxyz,在基坐标系oxyz上建立ηi、ρi+1及L,ηi为沿第i个关节轴线的方向矢量,i=1,2,…,n,n为机器人关节数目且n为正整数,方向矢量ηi在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为ηix、ηiy和ηiz,ρi+1为连接关节i到关节i+1的连接矢量,连接矢量ρi+1在基坐标系oxyz下沿x轴、y轴和z轴的坐标分量分别为ρ(i+1)x、ρ(i+1)y和ρ(i+1)z,L为基坐标系oxyz的原点o距离机器人底座之间的距离,步骤7中使用遗传算法求解步骤6所建立的目标函数Ej的具体方法如下:
步骤7.1随机产生初始种群,
设置初始进化代数t=1,选择种群规模为10的种群,以6n×10维的实数向量作为初始种群,其中6n×1维的实数向量作为种群中的第k个体在第t代的值表示为:其中分别对应第j次测量机器人方向矢量沿x轴、y轴和z轴的坐标分量ηixj、ηiyj、ηizj(i=1,2,...,n)最优解的可能取值,分别对应第j次测量机器人连接矢量沿x轴、y轴和z轴的坐标分量ρ(i+1)xj、ρ(i+1)yj、ρ(i+1)zj最优解的可能取值,分别在[-0.01+ηmix,0.01+ηmix]、[-0.01+ηmiy,0.01+ηmiy]、[-0.01+ηmiz,0.01+ηmiz]和[-0.5+ρm(i+1)x,0.5+ρm(i+1)x]、[-0.5+ρm(i+1)y,0.5+ρm(i+1)y]、[-0.5+ρm(i+1)z,0.5+ρm(i+1)z]数值区域内随机产生10组和作为初始种群的个体
步骤7.2从初始种群中随机选择两个个体作为父代,采用交叉变异混合策略产生子代,子代和父代共同构成新家族
从初始种群中随机选择两个个体作为父代,采用交叉变异混合策略产生10个子代c为子代个体数,c=1,2,…,10,其中子代中的第σ个变量的值根据均匀分布在区间中随机产生, 为第t代的两个父代和的第σ个变量之间的欧式距离,即变量σ=1,2,…,6n,两个父代和交叉变异混合策略产生的10个子代共同构成新家族w为新家族的个体数,w=1,2,…,12,
步骤7.3计算新家族中每一个体的目标函数值,将其由小到大排序,用目标函数值最小的两个个体代替父代构成新的初始种群
根据步骤6.4所述的目标函数计算在第t代新家族中每一个体的目标函数值对由小到大排序,取排序后新家族的目标函数值最小的个体mpos1t和次小的个体mpos2t代替初始种群中两父代个体构成新的初始种群
步骤7.4如果进化代数t<100,则t=t+1,重复步骤7.2~7.4,否则转入步骤7.5,
步骤7.5取出目标函数值最小的个体mpos1100,该个体对应第j次测量机器人方向矢量和连接矢量的最优解及E*,i=1,2,…,n,n为机器人关节数目且n为正整数,j=1,2,…,40。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710998118.1A CN107866823B (zh) | 2017-10-24 | 2017-10-24 | 一种基于位置矢量法的工业机器人几何参数标定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710998118.1A CN107866823B (zh) | 2017-10-24 | 2017-10-24 | 一种基于位置矢量法的工业机器人几何参数标定方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107866823A CN107866823A (zh) | 2018-04-03 |
CN107866823B true CN107866823B (zh) | 2019-10-11 |
Family
ID=61753246
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710998118.1A Active CN107866823B (zh) | 2017-10-24 | 2017-10-24 | 一种基于位置矢量法的工业机器人几何参数标定方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107866823B (zh) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110815204B (zh) * | 2018-08-14 | 2023-06-06 | 中国科学院沈阳自动化研究所 | 一种工业机器人运动学标定方法 |
CN109079850B (zh) * | 2018-08-16 | 2020-01-07 | 居鹤华 | 基于轴不变量多轴机器人d-h系及d-h参数确定方法 |
CN109291047B (zh) * | 2018-08-16 | 2019-10-22 | 居鹤华 | 基于轴不变量及dh参数1r/2r/3r逆解建模方法 |
CN109093376B (zh) * | 2018-08-17 | 2020-04-03 | 清华大学 | 一种基于激光跟踪仪的多轴孔自动化对准方法 |
CN109324640B (zh) * | 2018-11-22 | 2021-08-10 | 南京工程学院 | 一种四点支撑载车电动柔顺调平控制方法 |
CN111360836B (zh) * | 2020-04-02 | 2021-04-09 | 易思维(杭州)科技有限公司 | 优化辨识参数的机器人标定方法 |
CN111409077B (zh) * | 2020-05-09 | 2021-06-15 | 南京工程学院 | 一种基于关节角代偿的机器人末端多目标位姿逼近方法 |
CN111633645A (zh) * | 2020-05-15 | 2020-09-08 | 成都飞机工业(集团)有限责任公司 | 一种用于移动式机器人系统的精度补偿方法 |
CN111775138B (zh) * | 2020-06-01 | 2022-12-09 | 上海大学 | 一种构造多目标函数的串并联机器人优化尺寸参数设计方法 |
CN112489139B (zh) * | 2020-12-14 | 2022-05-17 | 华南农业大学 | 基于外部标识的相机与机器人几何中心位置的标定方法 |
CN112659186A (zh) * | 2020-12-31 | 2021-04-16 | 深圳墨影科技有限公司 | 抓手机构设计方法 |
CN113211436B (zh) * | 2021-05-07 | 2022-03-08 | 南京埃斯顿机器人工程有限公司 | 基于遗传算法的六自由度串联机器人误差标定方法 |
CN113211449B (zh) * | 2021-06-10 | 2022-06-17 | 哈工大机器人集团股份有限公司 | 一种基于路径分析的机器人校准方法及其系统 |
CN113686278B (zh) * | 2021-08-24 | 2022-12-30 | 南京衍构科技有限公司 | 一种高精度工业机器人工具tcp标定方法 |
CN113720261B (zh) * | 2021-08-30 | 2024-02-09 | 重庆市妇幼保健院 | 一种基于平面的标靶球头标定方法、系统及应用 |
CN114488810B (zh) * | 2022-01-25 | 2023-12-12 | 上海交通大学 | 机器人末端姿态跟踪预测控制方法及系统和机器人 |
CN114654466B (zh) * | 2022-03-30 | 2024-03-15 | 上海新时达电气股份有限公司 | 自动标定方法、装置、系统、电子设备及存储介质 |
CN115107034B (zh) * | 2022-07-18 | 2023-07-11 | 江南大学 | 一种单机械臂的量化迭代学习控制方法 |
CN115213911B (zh) * | 2022-09-20 | 2023-04-14 | 苏州浪潮智能科技有限公司 | Scara机器人的臂长参数补偿方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7421886B1 (en) * | 2007-06-15 | 2008-09-09 | Fox Michael A | Quick connect coupling test apparatus and method |
CN102818524A (zh) * | 2012-07-31 | 2012-12-12 | 华南理工大学 | 一种基于视觉测量的在线机器人参数校准方法 |
CN102968665A (zh) * | 2012-12-05 | 2013-03-13 | 苏州大学 | 并联机器人的正运动学求解方法 |
-
2017
- 2017-10-24 CN CN201710998118.1A patent/CN107866823B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7421886B1 (en) * | 2007-06-15 | 2008-09-09 | Fox Michael A | Quick connect coupling test apparatus and method |
CN102818524A (zh) * | 2012-07-31 | 2012-12-12 | 华南理工大学 | 一种基于视觉测量的在线机器人参数校准方法 |
CN102968665A (zh) * | 2012-12-05 | 2013-03-13 | 苏州大学 | 并联机器人的正运动学求解方法 |
CN102968665B (zh) * | 2012-12-05 | 2015-11-25 | 苏州大学 | 并联机器人的正运动学求解方法 |
Non-Patent Citations (1)
Title |
---|
六关节工业机器人工具坐标系的标定;李宏胜等;《机器人技术》;20160831;第35卷(第8期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN107866823A (zh) | 2018-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107866823B (zh) | 一种基于位置矢量法的工业机器人几何参数标定方法 | |
CN112526927B (zh) | 面向五轴数控机床旋转轴空间定位误差快速优化补偿方法 | |
CN111409077B (zh) | 一种基于关节角代偿的机器人末端多目标位姿逼近方法 | |
CN112380616B (zh) | 高复杂易形变航天舱段高精度数字孪生对接装配方法 | |
CN113386136B (zh) | 一种基于标准球阵目标估计的机器人位姿矫正方法及系统 | |
CN110193829A (zh) | 一种耦合运动学与刚度参数辨识的机器人精度控制方法 | |
CN110398219B (zh) | 一种基于混合优化算法的关节臂式坐标测量机参数标定方法 | |
CN108890645A (zh) | 一种五自由度混联机器人驱动关节零点误差的补偿方法 | |
CN102818524A (zh) | 一种基于视觉测量的在线机器人参数校准方法 | |
CN112109084A (zh) | 基于机器人关节角度补偿的末端位置补偿方法及其应用 | |
CN104570736B (zh) | 一种星‑臂耦合系统的动力学参数在轨辨识方法和装置 | |
CN109344477B (zh) | 一种6自由度机械臂逆运动学求解方法 | |
CN112536797A (zh) | 一种工业机器人的位置与姿态误差综合补偿方法 | |
CN110815204B (zh) | 一种工业机器人运动学标定方法 | |
Gao et al. | Kinematic calibration for industrial robots using articulated arm coordinate machines | |
CN111195915B (zh) | 一种基于遗传算法的机械臂绝对定位精度标定方法及系统 | |
Li et al. | A novel optimal calibration algorithm on a dexterous 6 DOF serial robot-with the optimization of measurement poses number | |
CN112091950A (zh) | 基于混合遗传模拟退火算法的机器人运动学参数辨识方法 | |
CN107436969A (zh) | 一种基于遗传算法的三维多目标定位方法 | |
CN105574884A (zh) | 一种医疗机器人dh参数标定方法 | |
CN112157654A (zh) | 一种机器人加工系统定位误差的优化方法 | |
Dong et al. | GA-based modified DH method calibration modelling for 6-DOFs serial robot | |
Zhou et al. | Simultaneously calibration of multi hand-eye robot system based on graph | |
Liu et al. | Calibration of a steward parallel robot using genetic algorithm | |
CN112380655A (zh) | 一种基于rs-cmsa算法的机器人逆运动学求解方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |