掌桥专利:专业的专利平台
掌桥专利
首页

一种全自动机器人手眼标定方法及系统

文献发布时间:2024-04-18 19:58:26


一种全自动机器人手眼标定方法及系统

技术领域

本发明属于自动化机器人领域技术领域,涉及一种全自动机器人手眼标定方法及系统。

背景技术

工业领域的自动化实现往往依赖于预编程的机械臂来完成重复机械化的劳动任务。但是随着场景的复杂度提高,预编程设定机械臂工作的模式越来越难以覆盖所有作业的场景,工业上逐渐出现了采用相机拍摄,图像处理的方式引导机械臂去完成各种非结构化场景的任务,进一步实现24小时工业自动化的需求。而机+机械臂的应用组合,我们称之为手眼系统。如同人的眼睛和手,眼睛看到东西后,让手能够准确的移动到物体的位置并抓取。相机所能看到的图像是2D屏幕,而手的移动是在3D空间中,因此手眼系统的功能就是能够将相机所拍摄到的2D画面,转换为手所在的3D空间的坐标。为了使得相机亦即机器人的眼,与机器人亦即机器人的手,坐标系之间建立关系就必须要对机器人与相机坐标系进行标定,该标定过程也就叫做手眼标定。

传统依赖手工调节标定板以及机械臂的位姿,有很大的不确定性,可能会产生较大的标定误差。因此,亟需一种自动化的手眼标定系统,通过走固定程序的标定方法,保证标定误差在一定的范围之内。

发明内容

为了实现上述目的,本发明采用了以下技术方案:

本发明提供一种全自动机器人手眼标定方法,包括,步骤如下:

模式选择:系统在启动后可选择标定模式,分为Eye-In-Hand模式和Eye-To-Hand模式;

放置标定板:Eye-In-Hand模式,需将标定板放在机器人视野内;Eye-To-Hand模式,需要将标定板安装到机械臂末端;保证标定板在相机视野内,输入标定板的信息,所述标定板的信息包括标定板的规格和尺寸;

记录相机坐标系下标定点数据:利用手动调节相机使标定板处于相机视野中心,记录当前位置为标定的起始位置并记录当前位置距离标定板的垂直距离,即工作距离H;使用激光测距传感器,通过串口服务器将高度信息传送给标定系统;随机生成十个标定点拍照并记录标定点数据,所述标定点为机械臂末端姿态拍照点,所述标定点数据包括图像和机械臂位姿信息;

判断是否有足够标定点数据:判断图像中标定板是否完整;

若图像完整,记录当前标定点数据,机器人按照随机生成的标定点顺序移动拍照采集图像;

若图像不完整,机器人不记录当前图像和机械臂位姿信息,重复步骤记录标定点数据,直到获取足够数量的标定点数据;

标定:利用张正友标定法计算不同图像中相机与标定板的外参,通过标定板的信息和标定点数据中图像上标定板角点的位置转换,得到相机坐标系转换为机器人的坐标系的坐标变换矩阵;

计算标定点的位置坐标:在Eye-In-Hand和Eye-To-Hand两种方式下,初始角度设置为θ,通过工作距离H来确定参数ψ的取值范围,根据平面半径公式计算出标定板到相机的距离;再根据球面的参数方程计算标定点的位置坐标;机器人按照计算出的标定点的位置坐标运动并拍照,确定标定板是否在视野内,若在保留图像;

完成标定流程,保存标定点数据。

进一步地,在所述记录相机坐标系下标定点数据步骤中,记录相机坐标系下标定点的位置坐标:通过已知的工作距离H,在世界坐标系中,以标定板所在世界坐标系中的位置为原点,作一个半径为H的球面,标定所需要的相机拍照点位于球面上,球面的参数方程为:X=rsinθcosψ,y=rsinθsinψ,z=rcosθ,限定其中θ与ψ随工作距离H的变化而变化,

其中:θ

进一步地,在所述记录相机坐标系下标定点数据步骤中,随机生成标定点并记录坐标数据为:在θ与ψ的限定范围内根据高斯分布随机生成标定点。

进一步地,在所述记录相机坐标系下标定点数据步骤中,随机生成标定点并记录坐标数据为:θ取0π、2/9π、4/9π、6/9π、8/9π、10/9π、12/9π、14/9π、16/9π和2π,ψ取15°到30°的任一值。

进一步地,所述坐标变换矩阵为:在Eye-In-Hand中,相机坐标系转换为机器人坐标系的坐标变换矩阵公式为:

Base

在Eye-To-Hand中,相机坐标系转换为机器人坐标系的坐标变换矩阵公式为:

End

其中:Base为机器人的基座坐标,End为机器人任意位置下的末端坐标,Camera为摄像机任意位置下的坐标。

进一步地,平面半径公式如下:

其中,r为标定板到相机的距离,H为工作距离。

进一步地,判断是否有足够标定点数据还包括,所述标定板为棋盘格;通过张正友标定法计算当前拍照图像上棋盘格交点数量和输入的棋盘格尺寸是否匹配,来判断图像标定板是否完整。

进一步地,在标定过程中,删除误差超过设定范围的数据。

进一步地,所述激光测距传感器与相机进行固定,所述串口服务器通过以太网与工控机通讯。

本发明还提供一种全自动机器人手眼标定系统,采用上述的全自动机器人手眼标定方法,包括:依次相连的输入模块、相机工作高度修正模块、标定采集点和路径规划计算模块、标定模块以及验证标定结果模块;

输入模块:获取标定板的信息,所述标定板的信息包括标定板的规格和尺寸;

相机工作高度修正模块:相机获取输入模块中的信息;

定采集点和路径规划计算模块:根据当前的高度,计算出拍摄范围,并随机生成一定数量标定点;

标定模块:拍照标定点图像,根据已经采集到的图像进行一次标定;

验证标定结果模块:根据已经标定得到的结果,对比删除误差较大的图像,再重新进行定采集点和路径规划计算模块标定点采集,直到完成标定点的数量,保存标定点数据,标定结束。

与现有技术相比,本发明的有益效果是:

传统的自动标定程序只能用于单一的工具距离标定,本发明一种全自动机器人手眼标定方法,根据工作距离来确定生成标定所需要的拍摄点位,解决了自动标定程序用于不同工作距离的痛点;

传统依赖手工调节标定板以及机械臂末端的位姿,有很大的不确定性,可能会产生较大的标定误差,本方法采用激光测距传感器,通过串口服务器将高度信息传送给工控机,设定自动手眼标定程序,机器人根据随机生成的标定点运动。现场操作员只需要将机械臂示教到起始点,手眼标定程序将通过激光测距传感器判断当前的高度,通过串口服务器将已知的高度信息传回系统进行处理,开始自动进行标定,能够保证标定误差在一定的范围之内。极大提高了机器人手眼标定的效率;

本发明一种全自动机器人手眼标定系统,现场操作员只需要将机械臂示教到起始点,输入模块采集参数;相机工作高度修正模块中多传感器融合,通过传感器判断当前的高度,通过串口服务器将已知的高度信息传回定采集点和路径规划计算模块进行处理,自动进行标定;验证标定结果模块输出标定结果。自动化的设置极大提高了机器人手眼标定的效率。

附图说明

图1是本发明一种全自动机器人手眼标定方法的流程示意图;

图2是本发明一种全自动机器人手眼标定方法的在Eye-In-Hand模式下的示意图;

图3是本发明一种全自动机器人手眼标定方法的在Eye-To-Hand模式下的示意图,

图4是本发明一种全自动机器人手眼标定方法的在Eye-In-Hand模式下机器人运动的示意图;

图5是本发明一种全自动机器人手眼标定方法的在Eye-To-Hand模式下机器人运动的示意图;

图6是球面坐标系的示意图;

图7是一种全自动机器人手眼标定方法的数据传输示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例,应理解,本申请不受这里公开描述的示例实施例的限制。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

在本发明的描述中,需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

在本发明实施例中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

一种全自动机器人手眼标定方法,如图1所示,包括,步骤如下:

S1模式选择:系统在启动后可选择标定模式,分为Eye-In-Hand模式和Eye-To-Hand模式。具体地,如图2-3所示,分为相机挂在机械臂上和相机固定在机械臂外两种;即相机挂在机械臂上为Eye-In-Hand模式,相机固定在机械臂外为Eye-To-Hand模式。

S2放置标定板:如图2所示,Eye-In-Hand模式,需将标定板放在机器人视野内,机器人的视觉系统随着机械臂末端运动。如图3所示,Eye-To-Hand模式,需要将标定板安装到机械臂末端,保证标定板在相机视野内,机器人的视觉系统与机器人基座相对固定,不会在世界坐标系内运动。

输入标定板的信息,标定板的信息包括标定板的规格和尺寸。用于后续判断拍照图像中标定板是否完整。

S3记录相机坐标系下标定点数据:利用手动调节相机使标定板处于相机视野中心,记录当前位置为标定的起始位置并记录当前位置距离标定板的垂直距离,即工作距离H。

具体地,如图4-6所示,记录相机坐标系下标定点的位置坐标:以标定板所在世界坐标系中的位置为原点,通过已知的工作距离H,作一个半径为H的球面标定所需要的相机拍照点位于球面上,球面的参数方程为:X=rsinθcosψ,y=rsinθsinψ,z=rcosθ,限定其中θ与ψ随工作距离H的变化而变化,

其中:θ

在本实施例中,使用激光传测距感器,通过串口服务器将高度信息传送给标定系统。具体地,如图7所示,激光测距传感器与相机进行固定,串口服务器通过以太网与工控机通讯,自动生成机器人标定点的流程,无需手动示教。

在本实施例中,随机生成十个标定点拍照并记录标定点数据,标定点为机械臂末端姿态拍照点,标定点数据包括图像和机械臂位姿信息。

具体地,生成的拍照点是在同一平面内的,且在同一个圆上,故通过圆的方程式和高斯分布以参数θ作为期望,可根据第一机械臂末端姿态拍照点随机生成同一圆上的新的机械臂末端姿态拍照点。随机生成标定点可以完全随机:在θ与ψ的限定范围内根据高斯分布随机生成标定点。也可以部分随机,θ取0π、2/9π、4/9π、6/9π、8/9π、10/9π、12/9π、14/9π、16/9π和2π,ψ取15°到30°的任一值。

S4:判断是否有足够标定点数据:判断拍照图像中标定板是否完整。在本实施例中,标定板为棋盘格;通过张正友标定法计算当前拍照图像上棋盘格交点数量和输入的棋盘格尺寸是否匹配,来判断图像标定板是否完整。

若图像完整,记录当前标定点数据,机器人按照随机生成的标定点顺序移动拍照采集图像。

若图像不完整,机器人不记录当前图像和机械臂位姿信息,重复步骤记录标定点数据,直到获取足够数量的标定点数据。

S5标定:利用张正友标定法计算不同图像中相机与标定板的外参,通过标定板的信息和标定点数据中图像上标定板角点的位置转换,得到相机坐标系转换为机器人的坐标系的坐标变换矩阵。

在本实施例中,在Eye-In-Hand中机器人机械臂末端与相机之间坐标转换,相机坐标系转换为机器人坐标系的坐标变换矩阵公式为:

Base

在Eye-To-Hand中机器人基座与相机之间坐标转换,相机坐标系转换为机器人坐标系的坐标变换矩阵公式为:

End

其中:Base为机器人的基座坐标,End为机器人任意位置下的末端坐标,Camera为摄像机任意位置下的坐标。

计算标定点的位置坐标:在Eye-In-Hand和Eye-To-Hand两种方式下,通过测量现场的工作高度H,预设参数ψ,推测出机械臂末端姿态拍照点所在平面圆的半径。

具体地,初始角度设置为θ,通过工作距离H来确定参数ψ的取值范围,根据平面半径公式计算出标定板到相机的距离r;平面半径公式如下:

其中,r为标定板到相机的距离,H为相机工作距离。

再根据球面的参数方程计算标定点的位置坐标;机器人按照计算出的标定点的位置坐标运动并拍照,确定标定板是否在视野内,若在保留图像。

S6删除误差超过设定范围的数据:在标定过程中,删除误差超过设定范围的数据,若标定点数据不满足十个,重复步骤S3。

完成标定流程,保存标定点数据。

传统的自动标定程序只能用于单一的工具距离标定,本发明一种全自动机器人手眼标定方法,根据工作距离来确定生成标定所需要的拍摄点位,解决了自动标定程序用于不同工作距离的痛点。

传统依赖手工调节标定板以及机械臂末端的位姿,有很大的不确定性,可能会产生较大的标定误差,本方法采用激光测距传感器,通过串口服务器将高度信息传送给工控机,设定自动手眼标定程序,机器人根据随机生成的标定点运动。现场操作员只需要将机械臂示教到起始点,手眼标定程序将通过激光测距传感器判断当前的高度,通过串口服务器将已知的高度信息传回系统进行处理,开始自动进行标定,能够保证标定误差在一定的范围之内。极大提高了机器人手眼标定的效率。

本发明还提供一种全自动机器人手眼标定系统,采用上述项全自动机器人手眼标定方法,包括:依次相连的输入模块、相机工作高度修正模块、标定采集点和路径规划计算模块、标定模块以及验证标定结果模块。

输入模块:获取标定板的信息,标定板的信息包括标定板的规格和尺寸。

相机工作高度修正模块:相机获取输入模块中的信息。

定采集点和路径规划计算模块:根据当前的高度,计算出拍摄范围,并随机生成一定数量标定点。

标定模块:拍照标定点图像,根据已经采集到的图像进行一次标定。

验证标定结果模块:根据已经标定得到的结果,对比删除误差较大的图像,再重新进行定采集点和路径规划计算模块标定点采集,直到完成标定点的数量,保存标定点数据,标定结束。

本发明一种全自动机器人手眼标定系统,现场操作员只需要将机械臂示教到起始点,输入模块采集参数;相机工作高度修正模块中多传感器融合,通过传感器判断当前的高度,通过串口服务器将已知的高度信息传回定采集点和路径规划计算模块进行处理,自动进行标定;验证标定结果模块输出标定结果。自动化的设置极大提高了机器人手眼标定的效率。

还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

相关技术
  • 用于四自由度并联机器人立体视觉手眼系统的在线手眼标定和抓取位姿计算方法
  • 一种全自动机器人手眼标定方法
技术分类

06120116488195