System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及机器人轨迹规划和碰撞检测,具体涉及一种基于多视图目标检测的机械臂碰撞检测方法及系统。
技术介绍
1、在非结构化环境下,快速准确的碰撞检测对于机械臂的安全性和轨迹规划效率至关重要,不仅要求碰撞检测算法具备高度的准确性,还要求其能实时响应环境的变化。传统碰撞检测方法直接计算物体的复杂几何形状,尽管准确性较高,但非常耗时和浪费计算资源。在非结构化环境下,由于环境中物体的随机性和动态性,缺少足够的先验几何知识和在线测量手段,导致传统方法难以适用。
2、为了解决这个问题,有学者提出了基于学习的碰撞检测方法,即通过收集足够多样本数据,使用学习模型预测机械臂是否与环境发生碰撞。这类方法能够极大减少碰撞检测所需时间及计算量,提高轨迹规划算法的效率。但同时这种方法也丢失了大量机械臂和障碍物的形状信息,导致模型检测精度较低。另外,这种学习方法存在泛化性不足问题,一旦环境发生变化,大多数算法都需要重新收集数据并再次训练模型。
技术实现思路
1、本专利技术所要解决的技术问题在于如何简化了机械臂和障碍物的空间占位关系,实现碰撞检测。
2、本专利技术通过以下技术手段实现解决上述技术问题的:
3、基于多视图目标检测的机械臂碰撞检测方法,包括以下步骤:
4、获取环境内特定区域的三个方位视图,输入至训练好的目标检测网络,输出障碍物三个方位的检测框,以三个检测框构造障碍物三个方位的圆形包围盒;
5、将工作空间内的机械臂关节坐标分别转换为三个视图
6、进一步的,在环境内安装三个全局相机,分别用于获取特定区的正视图、俯视图、侧视图。
7、进一步的,所述目标检测网络采用mask rcnn网络。
8、进一步的,所述包围盒的圆心为所述检测框对角线的中心。
9、进一步的,所述机械臂关节坐标转换的具体方法为:
10、根据机械臂运动学,获取每个关节坐标,按照相机标定数据,将获取到的坐标转换为像素坐标,具体为:
11、
12、其中,m1表示相机内参数矩阵,m2为相机外参数矩阵,[x,y,z]t为基坐标系下点的坐标,[u,v]t为对应点的像素坐标,zc为相机坐标系下对应点的光轴方向坐标;通过张正友标定法可以确定m1和m2;
13、机械臂连杆关节坐标通过机械臂运动学方程获取:令0pi为基座标系下关节i的坐标符号,将其代入上式可以获取每个关节的像素坐标:
14、
15、式中,zci为相机坐标系下关节i光轴方向坐标。
16、进一步的,碰撞检测过程为:
17、设障碍物圆形包围盒的半径r,定义:
18、t=loa·lab/||lab||2 (1)
19、||loc||=||t·lab+loa|| (2)
20、式中:loa为由o指向a的矢量,lab为由a指向b的矢量,loc为由o指向c的矢量;
21、利用||lab||,t和||loc||的运算关系将圆形包围盒与机械臂的碰撞检测分为以下4种情况:
22、1)||loc||>r,此时机械臂与障碍物不发生碰撞;
23、2)||loc||<r,且垂足c点位于连杆ab的延长线上,当t<0且||t·lab||2+||loc||2>r2;或t>1,||(t-1)·lab||2+||loc||2>r2,此时机械臂与障碍物不发生碰撞;
24、3)||loc||<r,且垂足c点位于连杆ab之间,此时机械臂与障碍物发生碰撞;
25、4)||loc||<r,且垂足c点位于连杆ab的延长线上,当t<0,||t·lab||2+||loc||2≤r2;或t>1,||(t-1)·lab||2+||loc||2≤r2,此时机械臂与障碍物发生碰撞;
26、此外,如果连杆ab在平面上的投影为一点,即||lab||=0,则垂足c点与a和b重合,||loc||=||loa||,按上述规则1)和3)进行碰撞检测。
27、本专利技术还提供一种基于多视图目标检测的机械臂碰撞检测系统,包括:
28、包围盒构建模块:获取环境内特定区域的三个方位视图,输入至训练好的目标检测网络,输出障碍物三个方位的检测框,以三个检测框构造障碍物三个方位的圆形包围盒;
29、碰撞判断模块:将工作空间内的机械臂关节坐标分别转换为三个视图中的像素坐标,然后分别对三个包围盒与机械臂的平面占位关系进行判断,如果三视图中检测结果皆为碰撞,则说明机械臂与障碍物发生碰撞,否则说明机械臂与障碍物无碰撞。
30、进一步的,所述包围盒构建模块中三个方位视图获取方法为:在环境内安装三个全局相机,分别用于获取特定区的正视图、俯视图、侧视图。
31、进一步的,所述机械臂关节坐标转换的具体方法为:
32、根据机械臂运动学,获取每个关节坐标,按照相机标定数据,将获取到的坐标转换为像素坐标,具体为:
33、
34、其中,m1表示相机内参数矩阵,m2为相机外参数矩阵,[x,y,z]t为基坐标系下点的坐标,[u,v]t为对应点的像素坐标,zc为相机坐标系下对应点的光轴方向坐标;通过张正友标定法可以确定m1和m2;
35、机械臂连杆关节坐标通过机械臂运动学方程获取:令0pi为基座标系下关节i的坐标符号,将其代入上式可以获取每个关节的像素坐标:
36、
37、式中,zci为相机坐标系下关节i光轴方向坐标。
38、进一步的,碰撞检测过程为:
39、设障碍物圆形包围盒的半径r,定义a、b为机械臂连杆关节点坐标,o为障碍物中心坐标,c为o点到机械臂连杆的垂足,r为圆形包围盒的半径。令t为比例系数,表示垂足与关节a的距离占机械臂长度的比例;通过垂直关系,得出以下公式:
40、t=loa·lab/||lab||2
41、||loc||=||t·lab+loa||
42、式中:loa为由o指向a的矢量,lab为由a指向b的矢量,loc为由o指向c的矢量;
43、利用||lab||,t和||loc||的运算关系将圆形包围盒与机械臂的碰撞检测分为以下4种情况:
44、1)||loc||>r,此时机械臂与障碍物不发生碰撞;
45、2)||loc||<r,且垂足c点位于连杆ab的延长线上,当t<0且||t·lab||2+||loc||2>r2;或t>1,||(t-1)·lab||2+||loc||2>r2,此时机械臂与障碍物不发生碰撞;
46、3)||loc||<r,且垂足c点位于连杆ab之间,此时机械臂与障碍物发生碰撞;
本文档来自技高网...
【技术保护点】
1.基于多视图目标检测的机械臂碰撞检测方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于多视图目标检测的机械臂碰撞检测方法,其特征在于,在环境内安装三个全局相机,分别用于获取特定区的正视图、俯视图、侧视图。
3.根据权利要求2所述的基于多视图目标检测的机械臂碰撞检测方法,其特征在于,所述目标检测网络采用Mask RCNN网络。
4.根据权利要求1至3任一所述的基于多视图目标检测的机械臂碰撞检测方法,其特征在于,所述包围盒的圆心为所述检测框对角线的中心。
5.根据权利要求1至3任一所述的基于多视图目标检测的机械臂碰撞检测方法,其特征在于,所述机械臂关节坐标转换的具体方法为:
6.根据权利要求1至3任一所述的基于多视图目标检测的机械臂碰撞检测方法,
7.基于多视图目标检测的机械臂碰撞检测系统,其特征在于,包括:
8.根据权利要求7所述的基于多视图目标检测的机械臂碰撞检测系统,其特征在于,所述包围盒构建模块中三个方位视图获取方法为:在环境内安装三个全局相机,分别用于获取特定区的正视图、俯视图
9.根据权利要求7或8所述的基于多视图目标检测的机械臂碰撞检测系统,其特征在于,所述机械臂关节坐标转换的具体方法为:
10.根据权利要求7或8所述的基于多视图目标检测的机械臂碰撞检测系统,
...【技术特征摘要】
1.基于多视图目标检测的机械臂碰撞检测方法,其特征在于,包括以下步骤:
2.根据权利要求1所述的基于多视图目标检测的机械臂碰撞检测方法,其特征在于,在环境内安装三个全局相机,分别用于获取特定区的正视图、俯视图、侧视图。
3.根据权利要求2所述的基于多视图目标检测的机械臂碰撞检测方法,其特征在于,所述目标检测网络采用mask rcnn网络。
4.根据权利要求1至3任一所述的基于多视图目标检测的机械臂碰撞检测方法,其特征在于,所述包围盒的圆心为所述检测框对角线的中心。
5.根据权利要求1至3任一所述的基于多视图目标检测的机械臂碰撞检测方法,其特征在于,所述机械...
【专利技术属性】
技术研发人员:胡祥涛,韦治宏,周福杰,张忠政,
申请(专利权)人:江淮前沿技术协同创新中心,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。