[发明专利]一种高精度的多关节串联机械臂运动学反解解法有效
申请号: | 201610345772.8 | 申请日: | 2016-05-23 |
公开(公告)号: | CN105975795B | 公开(公告)日: | 2017-08-25 |
发明(设计)人: | 潘健;王亚洲;王淑青;高翔;舒军;余志婷;李维;裴远阳;李叶伟;陆田;朱道利;要若天 | 申请(专利权)人: | 湖北工业大学 |
主分类号: | G06F19/00 | 分类号: | G06F19/00 |
代理公司: | 武汉科皓知识产权代理事务所(特殊普通合伙)42222 | 代理人: | 鲁力 |
地址: | 430068 湖北*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种高精度的多关节串联机械臂运动学反解解法。本发明使用万有引力和粒子群相结合的算法构架(PSOGSA),引入非线性权重分配系数s=0.65·e((‑15·k)/T)公式,使算法设计前期偏向万有引力算法,中、后期偏重于粒子群算法,以提高搜索效率。并采用了改进点“动态狭小边界”、“非线性时变权重与陷局部最优自校正结合”和“超界带弱方向性返回扩散”三种改进策略。采用以上算法和改进策略可以在较少的迭代次数内获得唯一的反解,并且误差一直稳定在10‑8级,理论计算时间可低至2.58ms/次。针对后三轴交于一点的特殊结构机械臂,使用位置和姿态分离求反解的策略,可以进一步提高求解性能,误差可降低到10‑14级,理论计算时间可降低到1.597ms/次。 | ||
搜索关键词: | 一种 高精度 关节 串联 机械 运动学 解解 | ||
【主权项】:
一种高精度的多关节串联机械臂运动学反解解法,其特征在于,包括:步骤1:根据机械臂的外形结构尺寸,建立DH参数表,并按照DH法建立正运动学方程:0Tn=0T1·1T2…n‑1Tn (1)其中,n为机械臂的关节总数;得到T0n=nxoxaxpxnyoyaypynzozazpz0001nx=f1(θ1,θ2...θn)ny=f2(θ1,θ2...θn)nz=f3(θ1,θ2...θn)ox=f4(θ1,θ2...θn)oy=f5(θ1,θ2...θn)oz=f6(θ1,θ2...θn)ax=f7(θ1,θ2...θn)ay=f8(θ1,θ2...θn)az=f9(θ1,θ2...θn)px=f10(θ1,θ2...θn)py=f11(θ1,θ2...θn)pz=f12(θ1,θ2...θn)---(2)]]>其中,n=[nx,ny,nz]T,o=[ox,oy,oz]T,a=[ax,ay,az]T,p=[px,py,pz]T;n,o,a为姿态向量,p为位置向量;nx,ny,nz,ox,oy,oz,ax,ay,az,px,py,pz的具体表达式中只包含了θ1,θ2…θn这n个关节角变量;定义i‑1Ti,i=1,2,…n;与i号关节相连的i‑1号连杆上固连的DH坐标系作为基坐标,与i号关节相连的i号连杆上固连的DH坐标系相对于基坐标系的位姿转换矩阵就是n‑1Tn;步骤2:规划出所有要求反解的位姿矩阵0Tn(1),0Tn(2)…0Tn(m‑1),0Tn(end),读取机械臂各关节编码器记录的角度初值{θ1,θ2…θn},带入包含了θ1,θ2…θn的位姿向量表达式,得到起始位姿0Tn(start);结合机械臂的要到达的终点位姿0Tn(end);在起始位姿和终点位姿之间任意使用一种轨迹规划进行插值,获得{0Tn(start),0Tn(1),0Tn(2)…0Tn(m‑1),0Tn(end)},若用均匀插值则其插值点的公式为:T0n(i)=T0n(start)+im·(T0n(end)-T0n(start))i=1,2...m---(3)]]>0Tn(i)代表的是机器人末端的dh坐标系{n}相对于机器人基坐标系{0}的位姿变换矩阵,i的具体数值代表第几个插值点;当i=m时,0Tn(i)为0Tn(end);0Tn(1),0Tn(2)…0Tn(m‑1),0Tn(end)为都需要解出对应的反解的m个位姿;在运算过程中需要定义已算的反解个数标志,这里定义为tt,初值为1;步骤3:初始化粒子的速度和位置:定义需要求解的关节角度x=[x1,x2…xn],它对应于算法工具中粒子的n维空间位置坐标;表达式为:xmax=xlast+2/180*πxmin=xlast-2/180*π---(4)]]>其中,xmax和xmin是当前的边界向量;当t=1时,xlast为关节角度初值{θ1,θ2…θn},当t≠1时,xlast为上一次的反解;以xmax和xmin为粒子位置边界,以xmax/2和xmin/2为粒子的速度边界,随机生成a个粒子;xi=(xmax-xmin)·rand+xminvi=(vmax-vmin)·rand+vmin---(5)]]>为了标志后续步骤中算法循环的代数,设当前代数标志t=1;步骤4:计算粒子群算法中每个粒子适应度值Qj(t)、个体历史最优P(p‑best)i、群体历史最优Pg‑best;计算每一个粒子的适应度值Qj(t),基于以下公式:Qj(t)=Σ[(ni-n^i)2+(oi-o^i)2+(ai-a^i)2+(pi-p^iy]i=x,y,zj=1,2...a---(6)]]>其中为0Tn(tt)位姿向量,n,o,a,p由第t代第j个粒子的3维空间位置坐标带入式(2)中得到,n=[nx,ny,nz]T,o=[ox,oy,oz]T,a=[ax,ay,az]T,p=[px,py,pz]T;求当代最优适应度:求当代最差适应度:求每个粒子个体的历史最优适应度值Q(p‑best)j与位置X(p‑best)j:若Qj(t)<Q(p‑best)j,则Q(p‑best)j=Qj(t),X(p‑best)j=xj(t); (9)若Qj(t)>=Q(p‑best)j时,Q(p‑best)j、X(p‑best)j均保持不变;求整个群体历史最优适应度Qg‑best与位置Xg‑best:若Q(p‑best)j<Qg‑best,则Qg‑best=Q(p‑best)j,Xg‑best=X(p‑best)j; (10)若Q(p‑best)j>=Qg‑best时,Qg‑best、Xg‑best均保持不变;步骤5:计算万有引力算法中每个粒子个体的加速度计算每一个粒子质量,基于以下公式:mi(t)=Qi(t)-Qworst(t)Qbest(t)-Qworst(t)]]>Mi(t)=mi(t)Σj=1amj(t)i=1,2...a---(11)]]>每个个体n维空间位置坐标可表示为其中a为种群规模,表示第i个体在第d维空间中的位置,n为问题空间维数;在第t代时,计算个体i和个体j之间的万有引力为:Fijd(t)=G(t)Mi(t)·Mj(t)Rij(t)+ϵ(xjd(t)-xid(t))---(12)]]>其中,ε是一个很小的常数;Rij(t)表示第t代第i个粒子和第j个粒子的欧几里德距离Rij(t)=||(xi(t),xj(t))||;G(t)是t代的万有引力常系数则第i个粒子个体在第d维的合力表示为Fid(t)=Σj=1,j≠iarand·Fijd(t)---(13)]]>第i个粒子个体在第d维空间产生的加速度为:aid(t)=Fid(t)Mi(t)---(14)]]>步骤6:更新粒子个体的速度v和位置x,超界则回置;更新第i个粒子个体第d维空间的速度和位置公式如下:vid(t+1)=(1-s)·(ω·vid(t)+c1·r1·(P(p-best)id-xid(t))+c2·r2·(Pg-bestd-xid(t)))+s·(r3·vid(t)+aid(t))xid(t+1)=xid(t)+vid(t+1)---(15)]]>其中,s=0.65·e((‑15·k)/T)是用来调节粒子群算法和万有引力算法的影响权重的参数,它从大迅速变小,结合式(15)知前期以万有引力算法为主导,运行到中、后期则以粒子群算法为主导;c1和c2为学习因子;r1,r2和r3为[0,1]区间内的伪随机数;v和x分别为粒子速度和位置,k为代数,i为粒子编号,d为空间维数,P(p‑best)i和Pg‑best分别为个体和群体的最优点;ω是惯性因子;是第t代第i个粒子第d维空间中的位置,是第t+1代第i个粒子第d维空间中的位置,是第t代第i个粒子第d维空间中的速度,是第t+1代第i个粒子第d维空间中的速度;为提高求解准确性,使用“非线性时变权重与陷局部最优自校正结合”,表达式为:其中,t为迭代的次数,T为最大截止代数;选择①:连续10代的适应度值Q的变化量没有超过10‑5,且适应度值Q还没小于10‑6;选择②:除选择①以外的其他所有情况;当第i个粒子超过当前边界时,使用“超界带弱方向性返回扩散”的改进策略,表达式为:xi=0.5·rand·(xmax-xmin)+xminxi<xmin,ω>0.4xmax-0.5·rand·(xmax-xmin)xi>xmax,ω>0.4---(17)]]>i=1,2…a;x为粒子的位置向量;xmax和xmin是当前的边界向量;步骤7:检查迭代代数t=t+1有没有到达循环代数T:若还没有到达则返回执行步骤4;若到达则此时的Pg‑best便是0Tn(tt)对应反解,并执行步骤8;步骤8:检查已反解个数标志tt=tt+1是否等于插值点数m,不等则返回执行步骤3,相等则结束计算。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖北工业大学,未经湖北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610345772.8/,转载请声明来源钻瓜专利网。
- 上一篇:一种蜂窝包装纸
- 下一篇:基于加权KNN的乳腺癌化疗方案推荐方法
- 同类专利
- 专利分类
G06 计算;推算;计数
G06F 电数字数据处理
G06F19-00 专门适用于特定应用的数字计算或数据处理的设备或方法
G06F19-10 .生物信息学,即计算分子生物学中的遗传或蛋白质相关的数据处理方法或系统
G06F19-12 ..用于系统生物学的建模或仿真,例如:概率模型或动态模型,遗传基因管理网络,蛋白质交互作用网络或新陈代谢作用网络
G06F19-14 ..用于发展或进化的,例如:进化的保存区域决定或进化树结构
G06F19-16 ..用于分子结构的,例如:结构排序,结构或功能关系,蛋白质折叠,结构域拓扑,用结构数据的药靶,涉及二维或三维结构的
G06F19-18 ..用于功能性基因组学或蛋白质组学的,例如:基因型–表型关联,不均衡连接,种群遗传学,结合位置鉴定,变异发生,基因型或染色体组的注释,蛋白质相互作用或蛋白质核酸的相互作用
G06F 电数字数据处理
G06F19-00 专门适用于特定应用的数字计算或数据处理的设备或方法
G06F19-10 .生物信息学,即计算分子生物学中的遗传或蛋白质相关的数据处理方法或系统
G06F19-12 ..用于系统生物学的建模或仿真,例如:概率模型或动态模型,遗传基因管理网络,蛋白质交互作用网络或新陈代谢作用网络
G06F19-14 ..用于发展或进化的,例如:进化的保存区域决定或进化树结构
G06F19-16 ..用于分子结构的,例如:结构排序,结构或功能关系,蛋白质折叠,结构域拓扑,用结构数据的药靶,涉及二维或三维结构的
G06F19-18 ..用于功能性基因组学或蛋白质组学的,例如:基因型–表型关联,不均衡连接,种群遗传学,结合位置鉴定,变异发生,基因型或染色体组的注释,蛋白质相互作用或蛋白质核酸的相互作用