机器人抓取时怎么定位的?用啥感测器来检测

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器人抓取时怎么定位的?用啥感测器来检测相关的知识,希望对你有一定的参考价值。

机器人抓取时怎么定位的?用什么感测器来检测

机械手动作是靠伺服电机上的编码器反馈到工控机处理中心讯号与预设定引数比较、修正再输出给伺服电机执行精确定位的。也就是说靠预先程式设计决定的,不是靠感测器定位的。程式设计可解决机械手三维空间动作精确方向、速度、执行时间…………

依靠定位点以及零点位置,机器手定期修正累加误差,抓取最高阶的是应用影象技术,配合物料定位点。

一般是照相定位的。感测器是COMS或者CCD。

用预先程式设计及其执行中该伺服电机轴尾的编码器反馈讯号至计算中心精确修整偏差定位的。

机器人家上了解到,机器人领域的视觉(Machine Vision)跟计算机领域(Computer Vision)的视觉有一些不同:机器视觉的目的是给机器人提供操作物体的资讯。所以,机器视觉的研究大概有这几块:
物体识别(Object Recognition):在影象中检测到物体型别等,这跟 CV 的研究有很大一部分交叉;
位姿估计(Pose Estimation):计算出物体在摄像机座标系下的位置和姿态,对于机器人而言,需要抓取东西,不仅要知道这是什么,也需要知道它具体在哪里;
相机标定(Camera Calibration):因为上面做的只是计算了物体在相机座标系下的座标,我们还需要确定相机跟机器人的相对位置和姿态,这样才可以将物 *** 姿转换到机器人位姿。
当然,我这里主要是在物体抓取领域的机器视觉;SLAM 等其他领域的就先不讲了。
由于视觉是机器人感知的一块很重要内容,所以研究也非常多了,我就我了解的一些,按照由简入繁的顺序介绍吧:
0. 相机标定
这其实属于比较成熟的领域。由于我们所有物体识别都只是计算物体在相机座标系下的位姿,但是,机器人操作物体需要知道物体在机器人座标系下的位姿。所以,我们先需要对相机的位姿进行标定。 内参标定就不说了,参照张正友的论文,或者各种标定工具箱; 外参标定的话,根据相机安装位置,有两种方式:
Eye to Hand:相机与机器人极座标系固连,不随机械臂运动而运动
Eye in Hand:相机固连在机械臂上,随机械臂运动而运动 两种方式的求解思路都类似,首先是眼在手外(Eye to Hand)
只需在机械臂末端固定一个棋盘格,在相机视野内运动几个姿态。由于相机可以计算出棋盘格相对于相机座标系的位姿 、机器人运动学正解可以计算出机器人底座到末端抓手之间的位姿变化 、而末端爪手与棋盘格的位姿相对固定不变。 这样,我们就可以得到一个座标系环
而对于眼在手上(Eye in Hand)的情况,也类似,在地上随便放一个棋盘格(与机器人基座固连),然后让机械臂带着相机走几个位姿,然后也可以形成一个 的座标环。
1. 平面物体检测
这是目前工业流水线上最常见的场景。目前来看,这一领域对视觉的要求是:快速、精确、稳定。所以,一般是采用最简单的边缘提取+边缘匹配/形状匹配的方法;而且,为了提高稳定性、一般会通过主要打光源、采用反差大的背景等手段,减少系统变数。
目前,很多智慧相机(如 cognex)都直接内嵌了这些功能;而且,物体一般都是放置在一个平面上,相机只需计算物体的 三自由度位姿即可。 另外,这种应用场景一般都是用于处理一种特定工件,相当于只有位姿估计,而没有物体识别。 当然,工业上追求稳定性无可厚非,但是随着生产自动化的要求越来越高,以及服务类机器人的兴起。对更复杂物体的完整位姿 估计也就成了机器视觉的研究热点。
2. 有纹理的物体
机器人视觉领域是最早开始研究有纹理的物体的,如饮料瓶、零食盒等表面带有丰富纹理的都属于这一类。 当然,这些物体也还是可以用类似边缘提取+模板匹配的方法。但是,实际机器人操作过程中,环境会更加复杂:光照条件不确定(光照)、物体距离相机距离不确定(尺度)、相机看物体的角度不确定(旋转、仿射)、甚至是被其他物体遮挡(遮挡)。
幸好有一位叫做 Lowe 的大神,提出了一个叫做 SIFT (Scale-invariant feature transform)的超强区域性特征点: Lowe, David G. "Distinctive image features from scale-invariant keypoints."International journal of puter vision 60.2 (2004): 91-110. 具体原理可以看上面这篇被引用 4万+ 的论文或各种部落格,简单地说,这个方法提取的特征点只跟物体表面的某部分纹理有关,与光照变化、尺度变化、仿射变换、整个物体无关。 因此,利用 SIFT 特征点,可以直接在相机影象中寻找到与资料库中相同的特征点,这样,就可以确定相机中的物体是什么东西(物体识别)。
对于不会变形的物体,特征点在物体座标系下的位置是固定的。所以,我们在获取若干点对之后,就可以直接求解出相机中物体与资料库中物体之间的单应性矩阵。 如果我们用深度相机(如Kinect)或者双目视觉方法,确定出每个特征点的 3D 位置。那么,直接求解这个 PnP 问题,就可以计算出物体在当前相机座标系下的位姿。
↑ 这里就放一个实验室之前毕业师兄的成果 当然,实际操作过程中还是有很多细节工作才可以让它真正可用的,如:先利用点云分割和欧氏距离去除背景的影响、选用特征比较稳定的物体(有时候 SIFT 也会变化)、利用贝叶斯方法加速匹配等。 而且,除了 SIFT 之外,后来又出了一大堆类似的特征点,如 SURF、ORB 等。
3. 无纹理的物体
好了,有问题的物体容易解决,那么生活中或者工业里还有很多物体是没有纹理的:
我们最容易想到的就是:是否有一种特征点,可以描述物体形状,同时具有跟 SIFT 相似的不变性? 不幸的是,据我了解,目前没有这种特征点。 所以,之前一大类方法还是采用基于模板匹配的办法,但是,对匹配的特征进行了专门选择(不只是边缘等简单特征)。
简单而言,这篇论文同时利用了彩色影象的影象梯度和深度影象的表面法向作为特征,与资料库中的模板进行匹配。 由于资料库中的模板是从一个物体的多个视角拍摄后生成的,所以这样匹配得到的物 *** 姿只能算是初步估计,并不精确。 但是,只要有了这个初步估计的物 *** 姿,我们就可以直接采用 ICP 演算法(Iterative closest point)匹配物体模型与 3D 点云,从而得到物体在相机座标系下的精确位姿。
当然,这个演算法在具体实施过程中还是有很多细节的:如何建立模板、颜色梯度的表示等。另外,这种方法无法应对物体被遮挡的情况。(当然,通过降低匹配阈值,可以应对部分遮挡,但是会造成误识别)。 针对部分遮挡的情况,我们实验室的张博士去年对 LineMod 进行了改进,但由于论文尚未发表,所以就先不过多涉及了。
4. 深度学习
由于深度学习在计算机视觉领域得到了非常好的效果,我们做机器人的自然也会尝试把 DL 用到机器人的物体识别中。
首先,对于物体识别,这个就可以照搬 DL 的研究成果了,各种 CNN 拿过来用就好了。有没有将深度学习融入机器人领域的尝试?有哪些难点? - 知乎 这个回答中,我提到 2016 年的『亚马逊抓取大赛』中,很多队伍都采用了 DL 作为物体识别演算法。 然而, 在这个比赛中,虽然很多人采用 DL 进行物体识别,但在物 *** 姿估计方面都还是使用比较简单、或者传统的演算法。似乎并未广泛采用 DL。 如 @周博磊 所说,一般是采用 semantic segmentation neork 在彩色影象上进行物体分割,之后,将分割出的部分点云与物体 3D 模型进行 ICP 匹配。
当然,直接用神经网路做位姿估计的工作也是有的
它的方法大概是这样:对于一个物体,取很多小块 RGB-D 资料(只关心一个patch,用区域性特征可以应对遮挡);每小块有一个座标(相对于物体座标系);然后,首先用一个自编码器对资料进行降维;之后,用将降维后的特征用于训练Hough Forest。
5. 与任务/运动规划结合
这部分也是比较有意思的研究内容,由于机器视觉的目的是给机器人操作物体提供资讯,所以,并不限于相机中的物体识别与定位,往往需要跟机器人的其他模组相结合。
我们让机器人从冰箱中拿一瓶『雪碧』,但是这个 『雪碧』 被『美年达』挡住了。 我们人类的做法是这样的:先把 『美年达』 移开,再去取 『雪碧』 。 所以,对于机器人来说,它需要先通过视觉确定雪碧在『美年达』后面,同时,还需要确定『美年达』这个东西是可以移开的,而不是冰箱门之类固定不可拿开的物体。 当然,将视觉跟机器人结合后,会引出其他很多好玩的新东西。由于不是我自己的研究方向,所以也就不再班门弄斧了。

机器作定位由先由工程式设计决定空前、左右、位置定位精度由伺服电机同轴尾端编码传器反馈讯号经伺服电机驱卡至处理处理再输作自微量调整

机器人多工位动作及其执行中定位全部由人工编写操作程式而决定的,此与感测器暂不搭界。若要根据生产工艺改进,则要重新编写程式,或在原程式中作修改调整。

机器人抓取定位是预先程式设计的,工控机输出带动伺服电机精确定位,包括伺服电机编码器反馈讯号经电机驱动卡直至工控机进一步调整。若用感测器检测定位误差极大,根本不可能细微修正定位精度。

机器人抓取目前最常用的是通过视觉定位,CCD/CMOS感测器拍摄当前视野内图片,找到MARK点,算出偏移的座标和角度,再通过网口或者串列埠将资料反馈到机器人,机器人作出相应修正
----------众合航迅科技有限公司 邓经理为您解答

机器人动作定位由先由人工程式设计决定它在空中前后、左右、上下位置的。定位精度由伺服电机同轴尾端编码感测器反馈讯号经此伺服电机驱动卡至处理中心处理后再输出作自动微小量调整

参考技术A

机器人抓取时的定位可以使用多种感测器,常见的有以下几种:

    视觉传感器:机器人可以使用相机等视觉传感器获取目标物体的图像信息,并通过计算机视觉算法来定位目标物体的位置和姿态。视觉传感器的优点是精度高、灵活性好,但对光照和背景的干扰较大,需要进行光照和背景的预处理。

    激光传感器:机器人可以使用激光雷达等激光传感器来获取目标物体的三维点云信息,并通过点云匹配算法来定位目标物体的位置和姿态。激光传感器的优点是精度高、速度快、适用于大范围的场景,但需要较高的硬件成本。

    力传感器:机器人可以使用力传感器等力学传感器来测量机器人末端执行器在抓取目标物体时所受到的力和扭矩,从而推断出目标物体的位置和姿态。力传感器的优点是可靠性高、适用于复杂的物体形状和变形,但需要较高的硬件成本。

    超声波传感器:机器人可以使用超声波传感器等距离传感器来测量机器人末端执行器到目标物体的距离,从而推断出目标物体的位置。超声波传感器的优点是成本低、适用范围广,但精度受到环境噪声和反射的影响较大。
    总的来说,在机器人抓取时的定位中,常常需要结合多种感测器来进行数据融合,以提高定位的精度和可靠性。

3D视觉应用案例:引导板件定位抓取

3D引导板件定位抓取

某知名模具钢材集团

项目背景

广州某知名模具钢材集团,需求3D引导板件定位抓取和2D识别信息获取功能。原场景用的桁车设备加人工搬运安全系数极低。

作业流程

• 3D相机视觉识别产品位置后,通过机器人电磁铁完成产品的抓取。

• 放置到二次定位工装前通过点激光和传感器检测产品规格;通过2D相机识别二维码贴图,用于区别产品的材质。

方案亮点

• 视觉算法:面对极高反光的工件,出现点云镜面反射,独特的视觉算法,降低反光对识别的影响。在点云相机成像效果不佳的情况下,也可以通过算法技术实现抓取。

• 点云聚类:产品众多,且规格差异较大的情况下,对于任意未知产品来料,使用了点云聚类技术,在解决客户项目难点的情况下降低项目成本。

• 集3D引导抓取和2D识别为一站:为了满足客户生产需求,为客户设计规划工作站集3D引导抓取和2D识别为一站,并新增了新增2D相机识别工件二维码贴图功能,极大提高了产线生产力。

• 夹具设计:采用电磁铁设计可以兼容多种型号产品,应对厚度差异较大和重量过重的产品,优秀的夹具设计完美适用。

圆棒深筐无序拣选

某大型汽配厂

项目背景

客户为某知名外资汽车零部件企业,其位于西北的工厂需求3D视觉实现圆形棒材的上料自动化。圆棒以无序散乱姿态放置于深筐,表面反光,规格多样,需以特定姿态放置下游进行下一步工序。

作业流程

• 人工运送载有圆棒的料筐至机器人工作位,视觉定位料筐位置

• 视觉识别圆棒位姿,引导机器人完成无碰撞抓取

• 机器人将圆棒放置滑槽进行二次定位,再次抓取完成精准上料

• 重复上述动作直至清筐

方案亮点

• 采用XM-GX-L结构光相机,配有可滑动模组,可对双工位的堆叠圆棒进行高精度点云还原

• 视觉识别力强,自动计算无碰撞轨迹,解决圆棒竖放、角落抓取等难题,实现高效清筐

• 适配非标准长方体料筐,稳定抓取无碰撞

• 高兼容性夹具,适配多种规格圆棒,柔性拣选

卡钳上下料

某大型汽配厂

项目背景

客户为华东大型汽车零部件企业,需求3D视觉实现卡钳壳体的自动上下料。卡钳壳体为异形铸件,正反相扣逐层平铺放置于深筐。工件正反相似度高,易互嵌,反面工件需识别放置翻转工装上。工件及托盘均存在一定程度的倾斜。卡钳壳体经加工,工件表面可能残留部分切削液,需重新逐层放置料筐下料。

作业流程

• 料筐就位,视觉识别卡钳位姿并区分正反,引导机器人抓取放置至对应工装台

• 每层清空后,视觉引导快换抓取托盘,进行下一层上料,直至清筐

• 工件加工完成,视觉引导机器人放置托盘,快换夹具后定位格口引导机器人下料

• 每层下料完成,重复新一层托盘放置与下料动作,直至最终完成

方案亮点

• 上料视觉采用XM-GX-L相机,安装移动模组上,可对料筐、倾斜卡钳、黑色托盘进行高精准的3D位姿识别

• 下料视觉采用XM-SP-L相机,安装移动模组上,可对料筐、放置格口位置进行±3mm精准识别

• 自动计算无碰撞轨迹,解决角落工件抓取难题

• 快换夹具设计,兼容多种规格工件及托盘的抓取

飞轮壳上下料

某大型汽配厂

项目背景

客户为西南某大型汽车零部件制造及总成厂商,需求借助3D视觉配合打磨机床作业,实现自动抓取上料以及定位下料。来料为深筐逐层平铺的铝合金铸造件,结构复杂,并存在一定程度的倾斜,抓取后下游需配合精准的激光打标,视觉位姿精度要求高。

作业流程

• 人工放置料筐就位后,视觉拍照识别料筐及工件位姿,引导机器人完成深筐抓取

• 视觉二次精准定位工件位姿,配合完成激光打标,并放置机床进行打磨、清洗、翻转、烘干等一系列工序

• 每层工件清空后,视觉引导抓取隔板,继续下一层工件的上料,直至最终清筐

• 工件加工完成,机器人取料,视觉定位放置位姿,引导机器人完成下料

方案亮点

• 采用XM-SP-L大视野相机,可对工件、料筐、隔板进行识别定位,稳定抓取实现100%清筐

• 视觉二次精准定位,精度±1mm,满足打标需求

• 视觉拍照成品工件下料区,定位放置位姿,引导无碰撞准确下料

以上是关于机器人抓取时怎么定位的?用啥感测器来检测的主要内容,如果未能解决你的问题,请参考以下文章

基于机器学习的边缘检测器

机器视觉定位是啥?和机器视觉检测有啥不同?

一、机器视觉系统基本原理

3D视觉应用案例:引导板件定位抓取

网站如何检测机器人?

漫谈在人工智能时代网络入侵检测器的安全风险——逃逸攻击上篇