[发明专利]一种机械臂与障碍物的双层次碰撞检测算法有效
申请号: | 202011589607.X | 申请日: | 2020-12-29 |
公开(公告)号: | CN112720493B | 公开(公告)日: | 2022-10-14 |
发明(设计)人: | 王素钢;高嘉材;尉小雪;李丽宏;田建艳;李济甫 | 申请(专利权)人: | 山西万立科技有限公司;太原理工大学 |
主分类号: | B25J9/16 | 分类号: | B25J9/16 |
代理公司: | 太原荣信德知识产权代理事务所(特殊普通合伙) 14119 | 代理人: | 杨凯;连慧敏 |
地址: | 030002 山西省太原*** | 国省代码: | 山西;14 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 机械 障碍物 双层 碰撞 检测 算法 | ||
1.一种机械臂与障碍物的双层次碰撞检测算法,其特征在于:包括下列步骤:
S1、通过选取物体上最远两点的距离作为直径来获得障碍物球体模型;
S2、根据障碍物自身的几何条件生成紧凑长方体包围盒OBB;
所述S2中生成紧凑长方体包围盒OBB的方法为:
包围盒OBB是一个任意方向的长方体,用一个中心点、一个三阶方向矩阵和三个1/2边长表示,所述三阶方向矩阵表示包围盒OBB三条轴的方向,通过计算包围盒OBB内的全部三角形顶点的协方差矩阵C以及矩阵C三个特征向量,得到OBB的三条轴的方向,
假设模型中包含n个三角形,第i个三角形的顶点矢量分别用pi、qi、ri表示,则用下面公式得到这n个三角形顶点的分布均值u,即模型的质心:
然后由u得到协方差矩阵C:
其中,1≤j,k≤3,
通过上式得到的协方差矩阵C为一个3*3的对称矩阵,将协方差矩阵C的三个特征向量正规化之后得到的基即为包围盒OBB的三条轴的方向,最后计算包围盒OBB内的三角形的顶点在这三条轴上投影的最大值和最小值即可确定包围盒OBB的三条边长;
S3、计算最大运动轨迹λi(qq,qb)的长度;
所述S3中计算最大运动轨迹λi(qq,qb)的长度的方法为:
当机械臂从qa状态运动到qb状态时,第i轴运动轨迹的最大长度为:
所述qa,k、qb,k代表第k个关节运动的始、末状态的角度参数,所述是一个常数,所述代表第k个关节连接的各机械臂长度之和;
S4、计算qa、qb状态时机械臂与障碍物球体模型的直线距离ηij(qa)、ηij(qb);
所述S4中计算qa、qb状态时机械臂与障碍物球体模型的直线距离ηij(qa)、ηij(qb)的方法为:
获取物体上最远两点的空间坐标,以两点连线的中心点作为球心,以两点连线的距离作为直径生成障碍物球体模型;
设qa、qb状态时的末端坐标分别为(xa,ya,za),(xb,yb,zb),障碍物球体模型的半径为R、球心坐标为(x0,y0,z0),则ηij(qa)、ηij(qb)的计算公式如下:
S5、对机械臂与障碍物球体模型的碰撞情况进行初次判断;
所述S5中对机械臂与障碍物球体模型的碰撞情况进行初次判断的方法为:
若λi(qa,qb)≥ηij(qa)+ηij(qb),判断:
若qa到qb中的轨迹插补点数目大于2,则选取qa与qb之间的中间点qmid,对(qa,qmid)、(qmid,qb)按上述步骤重复判断;若qa到qb中的轨迹插补点数目小于等于2,(qa,qb)之间可能与障碍物发生碰撞,进行二次判断;
若λi(qa,qb)ηij(qa)+ηij(qb),则(qa,qb)轨迹不会与障碍物发生碰撞;
S6、对机械臂与障碍物球体模型的碰撞情况进行二次判断;
所述S6中对机械臂与障碍物球体模型的碰撞情况进行二次判断的方法为:
障碍物OBB模型的长度和宽度均为2d,障碍物OBB模型的高度为h,障碍物OBB模型上、下端面的中心点A、B的坐标分别为(xA,yA,zA),(xB,yB,zB),轨迹点M坐标为(x1,y1,z1),以世界坐标系中的X轴、Y轴、Z轴作为分离轴,将OBB模型与轨迹点分别向X轴、Y轴、Z轴投影,下式成立则判断轨迹点M与障碍物碰撞,否则该点不会与障碍物碰撞;
若待检轨迹段内任一轨迹点检测碰撞,得出机械臂会与障碍物碰撞的结论;否则该轨迹段不会与障碍物发生碰撞,当所有可疑轨迹段都判断为不碰撞情况时,得出最终结论:机械臂的规划轨迹不会与障碍物发生碰撞。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山西万立科技有限公司;太原理工大学,未经山西万立科技有限公司;太原理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011589607.X/1.html,转载请声明来源钻瓜专利网。