基于遗传禁忌搜索算法的机器人运动学参数辨识方法技术

技术编号:26778041 阅读:70 留言:0更新日期:2020-12-22 16:49
本发明专利技术公开了一种基于遗传禁忌搜索算法的机器人运动学参数辨识方法,该方法构建机器人的运动学模型及机器人的误差模型;利用遗传算法的全局搜索能力和禁忌搜索算法的局部搜索能力,遗传算法得到的最佳解直接输入禁忌搜索算法,使得该技术既具有全局优化能力,又能利用禁忌规则跳出局部最优解,实现模型误差的精确辨识,以此来修正机器人模型的各项参数,提高机器人末端的绝对定位精度。

【技术实现步骤摘要】
基于遗传禁忌搜索算法的机器人运动学参数辨识方法
本专利技术涉及机器人运动学标定
,具体涉及一种基于遗传禁忌搜索算法的机器人运动学参数辨识方法。
技术介绍
机器人运动学标定通常可分为建模、测量、参数辨识和补偿四个步骤,在实际情况中,机器人末端误差与运动学参数误差的关系是非线性的,但通常基于线性误差模型进行运动学参数辨识,因此会引起辨识的偏差。大多数均忽略参数的二阶误差项,但经过多次迭代可以减小其影响,能够有较高的辨识精度。进行运动学参数辨识最常用的方法为最小二乘法,该方法不需考虑扰动信息,但需要方程的数量大于辨识参数的数量,也就要求测量数据点较多,计算量较大,并且需要设计合理的轨迹,具有一定的局限性;还有的使用遗传算法对运动学参数进行辨识,但是遗传算法容易陷入局部最优;禁忌搜索起初是为了解决组合优化问题而提出,随着应用场景的扩展,后来也应用于连续优化问题中,禁忌搜索算法是一种局部搜索算法,对于每一个可行解,都需要计算出其邻域集,并且要计算出邻域中每个点的适应度值并进行一系列的操作,如果初始解选的不好的话,禁忌搜索算法的计算效率是比较低的。
技术实现思路
为了克服现有技术存在的缺陷与不足,本专利技术提供一种基于遗传禁忌搜索算法的机器人运动学参数辨识方法,对机器人运动学误差模型进行辨识,能够在解的全局范围内进行寻优,且能跳出局部最优解,缩短计算时间。本专利技术的第二目的在提供一种基于遗传禁忌搜索算法的机器人运动学参数辨识系统。本专利技术的第三目的在于提供一种存储介质。本专利技术的第四目的在于提供一种计算设备。为了达到上述目的,本专利技术采用以下技术方案:一种基于遗传禁忌搜索算法的机器人运动学参数辨识方法,包括下述步骤:构建机器人的运动学模型及机器人的误差模型;设置种群大小,随机产生初始种群;将机器人末端实际位置和理论位置的x,y,z误差平方和的倒数作为适应度函数,计算种群中每个个体的适应度;采用适应度函数输出最佳个体作为禁忌搜索算法的初始解;构建邻域集:按照邻域规则生成邻域环,在邻域环内随机取多个点作为初始解X的邻域集;将辨识的参数作为机器人运动学参数,利用已知的关节角度求得机器人末端的理论位置,将所有点实际位置和理论位置坐标差平方和的均值作为适应度,根据该适应度,计算邻域集各点的适应度和当前点的适应度;对邻域集中各点的适应度按从小到大进行排序,取最小适应度的点作为邻域的最佳点,标记为X′;判断X′的适应度是否小于初始解X的适应度,若不小于则进行禁忌表中禁忌次数判断,若小于则将当前解替换为X′,并且更新禁忌表;禁忌次数判断:判断X′在禁忌表中的禁忌次数是否大于等于设定值,若大于等于设定值则按照邻域各点适应度排序,取邻域的下一个最优点作为X′;若小于设定值则将当前解替换为X′,并且更新禁忌表;判断是否已经超出邻域内的最后一个点,若超出则取邻域内所有点的平均值作为X′,若不超出则进行禁忌次数判断;判断是否达到禁忌搜索的最大迭代次数,若未达到则返回构建邻域集,若达到则输出最佳解和最佳解的适应度。作为优选的技术方案,所述按照邻域规则生成邻域环,所述邻域规则设置为:通过适应度乘以个体上下界的差向量动态调整邻域半径。作为优选的技术方案,所述禁忌表的长度设置为5。作为优选的技术方案,所述计算种群中每个个体的适应度后,还包括二进制编码、进化种群和二进制解码步骤,具体为:对种群中每个个体进行二进制编码;设置选择概率、交叉概率和变异概率,先对二进制编码后的染色体进行选择运算,然后对选择后的染色体进行单点交叉运算,然后对交叉后的染色体进行单点按位取反的操作得到进化种群;判断是否到达最大迭进化次数,未达到最大迭进化次数则计算种群中每个个体的适应度,达到最大迭进化次数则对结果种群中的每个染色体进行二进制解码。作为优选的技术方案,所述机器人采用六自由度机器人,机器人的运动学模型采用MD-H运动学模型。作为优选的技术方案,所述MD-H运动学模型建立关节轴参考坐标系的步骤包括:确定z轴方向、坐标系原点及x轴方向;确定z轴方向:关节i处建立的坐标系命名为坐标系i-1,如果关节i是旋转轴关节,z轴方向和关节旋转轴的轴线一致;如果关节i是移动关节,将其移动方向定为z轴轴线方向;确定坐标系原点及x轴方向:当相邻两关节轴线zi-1和zi为异面直线时,在两轴线之间有且仅有一条最短公垂线,x轴的方向为最短公垂线从zi-1指向zi的方向,坐标系的原点为z轴和x轴的交点;当相邻两关节轴线zi-1和zi为平行线时,两轴之间存在多条长度相同的公垂线,选择与前一关节坐标系原点相交的公垂线作为最短公垂线,x轴的方向为最短公垂线从zi-1指向zi的方向,坐标系的原点为z轴和x轴的交点;当相邻两关节轴线zi-1和zi为相互垂直时,选择两轴所在平面的法线作为公垂线,x轴的方向为公垂线的方向,坐标系原点即为公垂线与两轴的交点;确定y轴的方向:通过右手定则确定y轴的方向。作为优选的技术方案,所述MD-H运动学模型在经典的D-H模型中每个关节坐标系上增加了一个绕y轴的转动β,当相邻两个关节轴线平行时,用βi取代di,此时di为零;当相邻两个关节轴线不平行时,定义βi为零;构建相邻关节参考坐标系齐次变换矩阵为:根据每个关节处的齐次变换矩阵得到机器人的误差模型,表示为:PG-P=MθΔθ+MαΔα+MaΔa+MdΔd+MβΔβΔθ=[Δθ1,Δθ2,…,Δθ6]’Δα=[Δα1,Δα2,…,Δα6]’Δa=[Δa1,Δa2,…,Δa6]’Δd=[Δd1,Δd2,…,Δd6]’Δβ=Δβ3其中,c代表cos(),s代表sin(),PG表示机器人末端在激光跟踪仪下建立的基坐标系的实际位置,P表示根据机器人运动学模型和关节角度求得的末端理论位置,Mθ、Mα、Ma、Md、Mβ分别为Δθ、Δα、Δa、Δd、Δβ的系数矩阵。为了到达上述第二目的,本专利技术采用以下技术方案:一种基于遗传禁忌搜索算法的机器人运动学参数辨识系统,包括:误差模型构建模块、初始种群构建模块、种群个体适应度计算模块、初始解构建模块、邻域集构建模块、适应度计算模块、排序模块、适应度判断模块、禁忌次数判断模块、邻域范围判断模块和迭代次数判断模块;所述误差模型构建模块用于构建机器人的运动学模型及机器人的误差模型;所述初始种群构建模块用于设置种群大小,随机产生初始种群;所述种群个体适应度计算模块用于将机器人末端实际位置和理论位置的x,y,z误差平方和的倒数作为适应度函数,计算种群中每个个体的适应度;所述初始解构建模块用于采用适应度函数输出最佳个体作为禁忌搜索算法的初始解;所述邻域集构建模块用于按照邻域规则生成邻域环,在邻域环内随机取多个点作为初始解X的邻域集;所述适应度计算模块用于将本文档来自技高网...

【技术保护点】
1.一种基于遗传禁忌搜索算法的机器人运动学参数辨识方法,其特征在于,包括下述步骤:/n构建机器人的运动学模型及机器人的误差模型;/n设置种群大小,随机产生初始种群;/n将机器人末端实际位置和理论位置的x,y,z误差平方和的倒数作为适应度函数,计算种群中每个个体的适应度;/n采用适应度函数输出最佳个体作为禁忌搜索算法的初始解;/n构建邻域集:按照邻域规则生成邻域环,在邻域环内随机取多个点作为初始解X的邻域集;/n将辨识的参数作为机器人运动学参数,利用已知的关节角度求得机器人末端的理论位置,将所有点实际位置和理论位置坐标差平方和的均值作为适应度,根据该适应度,计算邻域集各点的适应度和当前点的适应度;/n对邻域集中各点的适应度按从小到大进行排序,取最小适应度的点作为邻域的最佳点,标记为X′;/n判断X′的适应度是否小于初始解X的适应度,若不小于则进行禁忌表中禁忌次数判断,若小于则将当前解替换为X′,并且更新禁忌表;/n禁忌次数判断:判断X′在禁忌表中的禁忌次数是否大于等于设定值,若大于等于设定值则按照邻域各点适应度排序,取邻域的下一个最优点作为X′;若小于设定值则将当前解替换为X′,并且更新禁忌表;/n判断是否已经超出邻域内的最后一个点,若超出则取邻域内所有点的平均值作为X′,若不超出则进行禁忌次数判断;/n判断是否达到禁忌搜索的最大迭代次数,若未达到则返回构建邻域集,若达到则输出最佳解和最佳解的适应度。/n...

【技术特征摘要】
1.一种基于遗传禁忌搜索算法的机器人运动学参数辨识方法,其特征在于,包括下述步骤:
构建机器人的运动学模型及机器人的误差模型;
设置种群大小,随机产生初始种群;
将机器人末端实际位置和理论位置的x,y,z误差平方和的倒数作为适应度函数,计算种群中每个个体的适应度;
采用适应度函数输出最佳个体作为禁忌搜索算法的初始解;
构建邻域集:按照邻域规则生成邻域环,在邻域环内随机取多个点作为初始解X的邻域集;
将辨识的参数作为机器人运动学参数,利用已知的关节角度求得机器人末端的理论位置,将所有点实际位置和理论位置坐标差平方和的均值作为适应度,根据该适应度,计算邻域集各点的适应度和当前点的适应度;
对邻域集中各点的适应度按从小到大进行排序,取最小适应度的点作为邻域的最佳点,标记为X′;
判断X′的适应度是否小于初始解X的适应度,若不小于则进行禁忌表中禁忌次数判断,若小于则将当前解替换为X′,并且更新禁忌表;
禁忌次数判断:判断X′在禁忌表中的禁忌次数是否大于等于设定值,若大于等于设定值则按照邻域各点适应度排序,取邻域的下一个最优点作为X′;若小于设定值则将当前解替换为X′,并且更新禁忌表;
判断是否已经超出邻域内的最后一个点,若超出则取邻域内所有点的平均值作为X′,若不超出则进行禁忌次数判断;
判断是否达到禁忌搜索的最大迭代次数,若未达到则返回构建邻域集,若达到则输出最佳解和最佳解的适应度。


2.根据权利要求1所述的基于遗传禁忌搜索算法的机器人运动学参数辨识方法,其特征在于,所述按照邻域规则生成邻域环,所述邻域规则设置为:通过适应度乘以个体上下界的差向量动态调整邻域半径。


3.根据权利要求1所述的基于遗传禁忌搜索算法的机器人运动学参数辨识方法,其特征在于,所述禁忌表的长度设置为5。


4.根据权利要求1所述的基于遗传禁忌搜索算法的机器人运动学参数辨识方法,其特征在于,所述计算种群中每个个体的适应度后,还包括二进制编码、进化种群和二进制解码步骤,具体为:
对种群中每个个体进行二进制编码;
设置选择概率、交叉概率和变异概率,先对二进制编码后的染色体进行选择运算,然后对选择后的染色体进行单点交叉运算,然后对交叉后的染色体进行单点按位取反的操作得到进化种群;
判断是否到达最大迭进化次数,未达到最大迭进化次数则计算种群中每个个体的适应度,达到最大迭进化次数则对结果种群中的每个染色体进行二进制解码。


5.根据权利要求1所述的基于遗传禁忌搜索算法的机器人运动学参数辨识方法,其特征在于,所述机器人采用六自由度机器人,机器人的运动学模型采用MD-H运动学模型。


6.根据权利要求5所述的基于遗传禁忌搜索算法的机器人运动学参数辨识方法,其特征在于,所述MD-H运动学模型建立关节轴参考坐标系的步骤包括:
确定z轴方向、坐标系原点及x轴方向;
确定z轴方向:关节i处建立的坐标系命名为坐标系i-1,如果关节i是旋转轴关节,z轴方向和关节旋转轴的轴线一致;如果关节i是移动关节,将其移动方向定为z轴轴线方向;
确定坐标系原点及x轴方向:
当相邻两关节轴线zi-1和zi为异面直线时,在两轴线之间有且仅有一条最短公垂线,x轴的方向为最短公垂线从zi-1指向zi的方向,坐标系的原点为z轴和x轴的交点;
当相邻两关节轴线zi-1和zi为平行线时,两轴之间存在多条长度相同的公垂线,选择与前一关节坐标系原点相交的公垂线作为最短公垂线,x轴的方向为最短公垂线从zi-1指向zi的方向,坐标系的原点为z轴和x轴的交点;
当相邻两关节轴线zi-1和zi为...

【专利技术属性】
技术研发人员:曹建城胥布工
申请(专利权)人:华南理工大学
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1