基于人工蜂群算法的机器人运动学参数标定

2024-03-25 09:14蔡鑫宇赵铁军
机械工程师 2024年3期
关键词:蜜源运动学定位精度

蔡鑫宇,赵铁军

(沈阳工业大学 机械工程学院,沈阳 110027)

0 引言

机器人的定位精度分为两个方面,即重复定位精度与绝对定位精度。在通常的情况下,工业机器人的重复定位精度大约是0.1 mm左右,但是它们的绝对定位精度比较低,只能达到2~3 mm左右,通过机器人标定可以有效地提高机器人的绝对定位精度[1]。机器人的运动学参数的标定过程一般来说分为4个步骤,即机器人的运动学参数建模、机器人位姿的测量、机器人的运动学参数辨识与机器人的误差补偿。经过研究表明,影响机器人定位精度最大的因素就是机器人的运动学参数的误差值,大约占所有误差的90%,因此,机器人的运动学参数辨识是提高精度过程中尤为重要的一部分。参数辨识的方法也是多种多样,例如,智能算法就被广泛地应用到该领域来,其中较为常见的办法为遗传算法[2]、粒子群算法[3]、神经网络[4]等,上述方法都是可以有效地提升机器人的绝对定位精度,然而这些算法比较复杂。故本文提出了人工蜂群算法,该算法的优点是原理简单、参数量较少、容易求解,是一种优异的全局优化算法,通过修改目标函数之后,再来求解关于运动学参数的高维非线性方程组问题,经过实验及其仿真验证,说明了该方法可有效解决此问题。

1 机器人误差模型

1.1 MD-H模型的建立

要对一个机器人实现标定,首先就是建立起机器人的运动学模型,较为常用的机器人运动学模型为4种参数的D-H模型,但是由于相互挨着的两个关节轴线之间是平行或是趋近于平行的情况下,会产生出奇异点,此时不满足模型的连续性,引起标定结果不准确。由Hayati等[5]提出了修正的MD-H模型,沿y轴的方向加入了一个旋转参数,则临近两连杆的矩阵表达式为

式中:θi为关节角,di为连杆的偏移量,a为连杆杆长,α为连杆的转角,β为坐标系绕着y轴的旋转角;此外cθi=cos θi,sθi=sin θi,其他以此类推。

由式(1)可知,n自由度的机器人末端理论上的位姿的矩阵表达式为

式中:Pn为平移矩阵,Rn为旋转矩阵。

假定实际中测量的平移矩阵为Pr,令ΔP=Pr-Pn,其中ΔP=(ΔPx,ΔPy,ΔPz),为机器人末端的位置误差,使用位置误差模型可以改写为

式中:B为辨识雅可比矩阵;Δq为机器人的各个运动学参数误差值大小(Δθi,Δdi,Δai,Δαi,Δβi),i=1-n,通过对冗余性参数的剔除,最后能得到的可辨识参数有Δθ1~Δθ1,Δd1,Δd3~Δd6,Δa1~Δa4,Δa6,Δα1~Δα4,Δβ2共20个。

1.2 距离误差模型建立

图1所示为指令轨迹上的两个点P0(i)、P0(i+1)和与其对应的两个实际轨迹上的两点Pr(i)、Pr(i+1)

图1 距离误差示意图

那么距离误差的精度可以表示为

式中:||I0(i+1)||和||I0(i+1)||分别表示为P0(i)和P0(i+1)与Pr(i)和Pr(i+1)之间的距离,经过推导可以得到距离误差与机器人运动学参数之间的关系式:

式中:xr(i)、yr(i)、zr(i)为点Pr(i)的三维坐标,xr(i+1)、yr(i+1)、zr(i+1)为点Pr(i+1)的三维坐标,||Ir(i+1)||是点Pr(i)、Pr(i+1)两者之间构成的向量。

2 基于人工蜂群的运动学参数标定

2.1 末端位置的测量

本文采用的是单目视觉的测量方法,其优点是成本较低、容易操作、视场空间较大、非接触等[6]。通过眼在手上[7]的方式就可以测量出单目相机在世界坐标系中的空间位置,再通过求解手眼关系矩阵,即相机坐标系和机械臂末端坐标系的转换矩阵,便可测量出机器人末端在世界坐标系中的位置,为参数辨识做铺垫。测量环境如图2所示。

图2 视觉测量平台

2.2 测量位姿的选取

共计测量了120组数据,根据可观测性指标[8]的数值大小来对位姿进行筛选,最后留取40组数据来进行机器人的参数辨识,其各个测量点的空间位置分布如图3所示。

图3 测量位姿点的选取

2.3 基于人工蜂群的参数辨识

1)目标函数定义为

式中:N为机器人标定实验中所测量的位姿组数,f为各运动学参数误差值。由此可以转换成20维的高维非线性方程问题。

2)参数的初始化设置。蜜源的个数为FoodNum=50,临近蜜源的搜寻次数为limit=20,最大迭代的次数为maxgen=200,维度长为d=20,设置杆长等长度误差范围在[-0.30,0.30] mm内变动,角度范围在[-0.10,0.10] rad之间变化。

3)雇佣蜂阶段。一个雇佣蜂相应有一个蜜源,它会依据当前蜜源的一个邻近蜜源去评估这个蜜源的密量,再根据已储存的信息来决定是否对当前蜜源进行修正,邻近的蜜源被定义为

式中:xi为当前蜜源位置,xj为其余蜜源位置中随机一个,φ为-1~1的随机数。

当前位置的适应度值大小为:

式中,ff为邻近蜜源的适应度值。

4)观察蜂阶段。观察蜂读取了雇佣蜂所携带的信息并且根据轮盘赌的方式来选择蜜源并依附,依附之后的观察蜂将对它进行改进,此时的观察蜂便变成了雇佣蜂。

5)侦察蜂阶段。完成一次迭代之后,全部的雇佣蜂与观察蜂都完成了搜寻任务,此时依据蜜源被修改的次数是否超过了预设值来判断该蜜源是否要被放弃,被放弃的蜜源继而有侦察蜂随机找到的蜜源来替代。

式中:lb、ub分别为x的上下限,rand(0,1)为0~1之间的一个随机数。

整个算法的流程如图4所示。

图4 人工蜂群算法标定流程

对上述测量点进行参数辨识,这里分别使用了经典的最小二乘法和本文里提出的人工蜂群算法分别对机器人进行参数辨识,二者之间的对比结果如图5所示。参数辨识得到的结果如表1所示。

图5 人工蜂群算法和最小乘法标定结果对比

经过对比,使用人工蜂群算法辨识,可以进一步地减小距离误差,从而提高机器人的绝对定位精度。与最小二乘法相比,定位精度的从45.24%提升到了54.97%。

3 结语

本文针对传统基于位置误差的机器人运动学参数辨识方法,提出了基于距离误差模型的人工蜂群算法来进行参数辨识,避免了因为坐标系转换所带来的误差,且相比于常用的最小二乘法而言,进一步提高了辨识精度,使机器人的距离误差精度提高了54.97%,结果证明了该方法的可行性,对工业机器人的定位精度的提高有一定的参考价值。

猜你喜欢
蜜源运动学定位精度
贵州宽阔水国家级自然保护区蜜源植物资源调查研究*
北斗定位精度可达两三米
林下拓蜜源 蜂业上台阶
基于MATLAB的6R机器人逆运动学求解分析
GPS定位精度研究
GPS定位精度研究
组合导航的AGV定位精度的改善
基于D-H法的5-DOF串并联机床运动学分析
指示蜜源的导蜜鸟
基于运动学原理的LBI解模糊算法