优化辨识参数的机器人标定方法与流程

文档序号:21366549发布日期:2020-07-04 04:41阅读:277来源:国知局
优化辨识参数的机器人标定方法与流程

本发明涉及机器人标定领域,具体涉及一种优化辨识参数的机器人标定方法。



背景技术:

现代制造业对工业机器人性能的要求在不断地提高,机器人性能的两个主要评价指标为:重复定位精度和位姿准确性。现今机器人厂家生产的机器人重复定位精度比较高,机器人位姿准确性却很低,体现为机器人每次的位姿都处于错误位置,这主要是由于机器人实际辨识参数(连杆长度、连杆扭角、连杆偏距、减速比)与理论辨识参数之间存在差异,造成这种差异的原因有:机器人关节加工误差、关节装配误差。

为了提高机器人的位姿准确性,国内外相关技术人员相继提出了一些机器人标定算法,这些算法主要利用一些高精度的测量设备来获取机器人末端的位姿,从而建立方程关系来辨识机器人运动学参数,其主要缺陷为标定过程中机器人位姿点位为随机选取,并没有对位姿点位进行优化分析,从而导致辨识参数的准确性受到影响以及辨识参数在机器人其他位置处精度低。



技术实现要素:

针对上述问题,本发明提出一种优化辨识参数的机器人标定方法,通过对理论辨识参数施加随机误差的方式,多次模拟实际辨识参数信息,通过迭代计算获取理论值与实际值两者之间的偏差,基于偏差计算适应度函数,再利用遗传算法,不断优化机器人各位姿处的关节角度集合,得出最优的关节角度,从而提高了机器人位姿的准确性。

一种优化辨识参数的机器人标定方法,包括如下步骤:

1)根据机器人的理论辨识参数,生成m组机器人位姿集合,其作为遗传算法的初始群体a;每组机器人位姿集合中均包含n个位姿,n为正整数;单个位姿包含随机生成的各个关节的角度;

设置观测位置,其与机器人基坐标系之间的变换矩阵为tv;

从所述m组机器人位姿集合中任意选取一组机器人位姿集合记为集合i;

2)将集合i中的各个位姿记为位姿wi,i=1,2……n;利用机器人mdh/dh模型,分别计算各位姿下的机器人末端工具坐标系相对于机器人基坐标系的总变换矩阵ti;将ti乘以tv,得到各个位姿下机器人的末端工具相对于观测位置的变换矩阵,进而得出末端工具在观测位置坐标系中的位置gi;

将所述理论辨识参数加入预先设定取值范围的随机误差并将新的辨识参数记为辨识参数i;

3)利用辨识参数i和所述位姿wi,再次计算各个位姿下的机器人末端工具坐标系相对于机器人基坐标系的总变换矩阵ti',并求取末端工具在观测位置坐标系中的位置gi';

4)计算各个总变换矩阵ti和ti'之间的位置误差传递矩阵,并根据位置误差传递矩阵得出机器人末端位置误差向量dpi;

根据机器人末端位置误差向量和距离误差模型,得到如下等式:

其中,δli-1=δgi-1'-δgi-1,δgi-1表示两个位置gi之间的距离值,对应的,δgi-1'表示两个位置gi'之间的距离值;xr(i)、yr(i)、zr(i)表示gi在机器人基坐标系中的直角坐标值;xr'(i)、yr'(i)、zr'(i)表示gi'在机器人基坐标系中的直角坐标值;

qi=(δα1,δa1,δd1···δβ4)t表示一组待求解的辨识参数,bi表示待求解辨识参数对应得雅克比系数矩阵,其通过对机器人末端矩阵求导得出,其中xα1、yα1、zα1分别表示第一个待求解待辨识参数δα1在x、y、z方向的导数;xd1、yd1、zd1分别表示第二个待求解辨识参数δd1在x、y、z方向的导数;xβ4、yβ4、zβ4分别表示最后一个待求解辨识参数δβ4在x、y、z方向的导数;

联立n-1个等式(1)、(2),通过最小二乘法解算得出一组辨识参数qi,并替换掉辨识参数i;

5)利用替换后的辨识参数i重复步骤3)、4),直到重复次数q等于预设次数,计算最后一次重复步骤4)时矩阵bi的条件数cond;将重复过程收敛得出的辨识参数i记为辨识参数ii;所述预设次数设置为5~10次;

计算所述辨识参数ii与所述理论辨识参数之间的欧式距离,将其记为偏差dev;

6)计算当前组机器人位姿集合i的个体适应度f:

其中,权重参数h=0.2~0.5;

7)利用另一组机器人位姿集合替换集合i,并重复步骤2)~6);直到遍历完所有组的机器人位姿集合、得出每组机器人位姿集合的个体适应度和选择概率;

8)采取赌轮选择原则,根据各组的适应度从初始群体a中选取部分组机器人位姿集合进行交叉变异,得到一组新的机器人位姿集合记为集合ii,迭代次数加1;

9)采用相同方法,再次计算集合ii的个体适应度,判断适应度是否达到给定的阈值g,若是,则将当前集合ii记为集合b并作为最优解输出,终止遗传过程,进行步骤10);

若否,判断当前迭代次数值是否达到预设迭代次数t,若是,则将迭代进化过程中取得最大个体适应度的一组机器人位姿集合记为集合b并作为最优解输出,终止遗传过程,进行步骤10);

若否,继续迭代步骤8);

10)利用遗传过程得出的机器人位姿集合b,依次示教机器人的各个位姿,通过测量设备测量各个位姿下机器人末端工具位置信息,得出其相对于机器人基坐标系的总变换矩阵t”i以及各个位置g”i;根据步骤4)的计算,得出实际辨识参数,将实际辨识参数存储到机器人控制器中,完成机器人标定。

进一步,所述辨识参数包括机器人全部或部分的固有参数,所述固有参数包括各个连杆长度、连杆扭角、连杆偏距和减速比等。

进一步,数量m设置为辨识参数总数的2~5倍。

进一步,预先设定:所述连杆长度和连杆偏距的随机误差取值范围:0.5~1mm;连杆扭角的随机误差取值范围:0.05~5°;减速比的随机误差取值范围:1~1.2。

进一步,所述步骤10)中测量设备为激光跟踪仪、全站仪或三坐标机。

进一步,δgi-1表示相邻两组位置gi+1、gi之间的距离值,或,将n个gi中的任意一个记为第一基准位置,此时,δgi-1表示当前位置gi与所述第一基准位置之间的距离值;对应的,δgi-1'表示相邻两组位置gi+1'、gi'之间的距离值,或,将n个gi'中的任意一个记为第二基准位置,此时,δgi-1'表示当前位置gi'与所述第二基准位置之间的距离值。

经实验对比,本方法机器人位姿精度误差小于0.2mm,相比于传统方法精度提升0.2mm。

附图说明

图1本发明方法流程示意图;

图2具体实施方式中未经标定的机器人与经标定机器人的精度对比折线图。

具体实施方式

以下结合附图和具体实施方式对本发明的技术方案进行详细描述。

一种优化辨识参数的机器人标定方法,如图1所示,包括如下步骤:

1)根据机器人的理论辨识参数(辨识参数包括机器人全部或部分的固有参数,固有参数包括各个连杆长度、连杆扭角、连杆偏距和减速比);生成m组机器人位姿集合,其作为遗传算法的初始群体a;每组机器人位姿集合中均包含n个位姿,n为正整数;单个位姿包含随机生成的各个关节的角度;

设置观测位置,其与机器人基坐标系之间的变换矩阵为tv;

从m组机器人位姿集合中任意选取一组机器人位姿集合记为集合i;

具体的,数量m设置为辨识参数总数的2~5倍;本实施例中,m=40;

各个关节的角度在每个关节可旋转的最大角度范围内随机生成;具体的,如六轴机器人,下式中θ1~θ6为关节1~6的关节角度范围;则每组关节角度随机选自θ1~θ6;

2)将集合i中的各个位姿记为位姿wi,i=1,2……n;利用机器人的mdh/dh模型,分别计算各个位姿下的机器人末端工具坐标系相对于机器人基坐标系的总变换矩阵ti;将ti乘以tv,得到各个位姿下机器人的末端工具相对于观测位置的变换矩阵,进而得出末端工具在观测位置坐标系中的位置gi;

具体的,总变换矩阵ti由相邻关节之间的齐次变换矩阵连乘得到;

本实施例以六关节平面关节机器人(scara)为例,计算如下,机器人末端工具坐标系相对于基础坐标系的变换矩阵为:

ti=a1×a2×a3×a4×a5×a6

其中,a1~a6表示关节之间的齐次变换矩阵,计算公式:

an+1=rot(z,θn+1)×tran(0,0,dn+1)×tran(an+1,0,0)×rot(x,an+1)

其中,θn+1表示当前关节的角度,dn+1、an+1、αn+1这3个参数是机器人关节连杆机构的固有几何参数,dn+1表示在z轴上两条相邻连杆的公垂线之间的距离,an+1表示每条连杆公垂线的长度(关节偏移量),角αn+1表示两个相邻关节z轴之间的角度(关节扭转);c为cos、s表示sin;

将理论辨识参数加入预先设定取值范围的随机误差并将新的辨识参数记为辨识参数i;

3)利用辨识参数i和位姿wi,再次计算各个位姿下的机器人末端工具坐标系相对于机器人基坐标系的总变换矩阵ti',并求取末端工具在观测位置坐标系中的位置gi';

具体的,预先设定:连杆长度和连杆偏距的随机误差取值范围:0.5~1mm;连杆扭角的随机误差取值范围:0.05~5°;减速比的随机误差取值范围:1~1.2。

4)计算各个总变换矩阵ti和ti'之间的位置误差传递矩阵,并根据位置误差传递矩阵得出机器人末端位置误差向量dpi;

具体的,对于单个总变换矩阵ti和ti',其误差传递矩阵计算如下:

根据机器人的微分运动方程,可知δti为4x4矩阵,其形式如下:

式中dpi=(dxdydz)t表示机器人末端位置误差向量。

根据机器人末端位置误差向量和距离误差模型,得到如下等式:

dpi=bi×qi(2)

其中,距离误差δli-1=δgi-1'-δgi-1,δgi-1表示两个位置gi之间的距离值,对应的,δgi-1'表示两个位置gi'之间的距离值;xr(i)、yr(i)、zr(i)表示gi在机器人基坐标系中的直角坐标值;xr'(i)、yr'(i)、zr'(i)表示gi'在机器人基坐标系中的直角坐标值;

qi=(δα1,δa1,δd1···δβ4)t表示一组待求解的辨识参数,bi表示待求解辨识参数对应得雅克比系数矩阵,其通过对机器人末端矩阵求导得出,其中xα1、yα1、zα1分别表示第一个待求解待辨识参数δα1在x、y、z方向的导数;xd1、yd1、zd1分别表示第二个待求解辨识参数δd1在x、y、z方向的导数;xβ4、yβ4、zβ4分别表示最后一个待求解辨识参数δβ4在x、y、z方向的导数;

联立n-1个等式(1)、(2),通过最小二乘法解算得出一组辨识参数qi,并替换掉辨识参数i;

具体的,δgi-1表示相邻两组位置gi+1、gi之间的距离值,或,将n个gi中的任意一个记为第一基准位置,此时,δgi-1表示当前位置gi与第一基准位置之间的距离值;对应的,δgi-1'表示相邻两组位置gi+1'、gi'之间的距离值,或,将n个gi'中的任意一个记为第二基准位置,此时,δgi-1'表示当前位置gi'与第二基准位置之间的距离值;

如:δl0=(g2'-g1')-(g2-g1)、δl1=(g3'-g2')-(g3-g2)……

5)利用替换后的辨识参数i重复步骤3)、4),直到重复次数q等于预设次数,计算最后一次重复步骤4)时矩阵bi的条件数cond;将重复过程收敛得出的辨识参数i记为辨识参数ii;预设次数设置为5~10次;

计算辨识参数ii与理论辨识参数之间的欧式距离,将其记为偏差dev;

6)计算当前组机器人位姿集合i的个体适应度f:

其中,权重参数h=0.2~0.5;

7)利用另一组机器人位姿集合替换集合i,并重复步骤2)~6);直到遍历完所有组的机器人位姿集合、得出每组机器人位姿集合的个体适应度和选择概率;

8)采取赌轮选择原则,根据适应度从初始群体a中选取部分组机器人位姿集合进行交叉变异,得到一组新的机器人位姿集合记为集合ii,迭代次数加1;

具体的,根据m组机器人位姿集合对应的选择概率确定赌轮,在0到1区间随机产生一随机数r,若r在赌轮某组之间,则其被选上,若某组连续两次被选上,需要重新生成随机数,重新选择,即同一组不得连续被选中。

选择概率:

pmk=fk/∑fk,k=1,2......m;

根据上述选择后新序列进行相邻两组配对,随机生成1到10xq-1之间的整数,即确定交叉点的位置,再次随机生成0到1之间的一个随机数r,若随机数r小于交叉概率pc,即交换两者之间的基因,以此类似,可以得到其他组之间交叉生成的新个体;

对上述交叉操作后的每个新个体,首先随机生成1到10xq-1之间的整数,即确定变异点的位置,再次随机生成0到1之间的一个随机数r,若随机数r小于变异概率pv,即将变异点原有基因值取反,以此类似,可以得到剩下组变异后生成的新个体。

其中,交叉概率pc=0.95~0.98、变异概率pv=0.03~0.05。

9)采用相同的方法,再次计算集合ii的适应度,判断适应度是否达到给定的阈值g,若是,则将当前集合ii记为集合b并作为最优解输出,终止遗传过程,进行步骤10);

若否,判断当前迭代次数值是否达到预设迭代次数t,若是,则将迭代进化过程中取得最大适应度的一组机器人位姿集合记为集合b并作为最优解输出,终止遗传过程,进行步骤10);

若否,继续迭代步骤8);

10)利用遗传过程得出的机器人位姿集合b,依次示教机器人的各个位姿,通过测量设备测量各个位姿下机器人末端工具位置信息,得出其相对于机器人基坐标系的总变换矩阵t”i以及各个位置g”i;根据步骤4)的计算,得出实际辨识参数,将实际辨识参数存储到机器人控制器中,完成机器人标定。

具体的,测量设备为激光跟踪仪、全站仪或三坐标机。

为了便于计算,本实施例中,将机器人关节角度转换为二进制形式,二进制第一位表示正负,后面九位表示每个关节的角度,若机器人有q个自由度,则每个机器人位姿对应的二进制位数为10xq个;如某关节角度为360,则对应的二进制形式为0101101000。

本实施例设置位姿数n=30,m=40,连杆长度和连杆偏距的随机误差取值0.6mm;连杆扭角的随机误差1°;减速比的随机误差1;权重参数h=0.3;交叉概率pc=0.95、变异概率pv=0.04;利用上述方法,得出实际辨识参数;

设定机器人需要运行的30个位姿,根据实际辨识参数计算30个位姿的理论末端位置yc,c=1,2…30;

利用未标定的机器人运行这30个位姿,通过测量设备测量各个位姿下该机器人末端位置信息yc’,再计算yc’与yc之间距离误差,其折线图如图2中线型一所示;

利用本实施例方法,对该机器人标定,利用标定后的机器人再次运行相同的30个位姿,通过测量设备测量各个位姿下机器人末端工具位置信息yc”,再再计算yc”与yc之间距离误差,其折线图如图2中线型二所示;

经对比,曲线一在0.2mm~0.4mm之间,而曲线二在0mm~0.2mm之间,可知,经过本发明方法标定后的机器人平均精度能够提升0.2mm。

前面对本发明具体示例性实施方案所呈现的描述是出于说明和描述的目的。前面的描述并不想要成为毫无遗漏的,也不是想要把本发明限制为所公开的精确形式,显然,根据上述教导很多改变和变化都是可能的。选择示例性实施方案并进行描述是为了解释本发明的特定原理及其实际应用,从而使得本领域的其它技术人员能够实现并利用本发明的各种示例性实施方案及其不同选择形式和修改形式。

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