CN110842901B - 基于一种新型三维标定块的机器人手眼标定方法与装置 - Google Patents
基于一种新型三维标定块的机器人手眼标定方法与装置 Download PDFInfo
- Publication number
- CN110842901B CN110842901B CN201911175406.2A CN201911175406A CN110842901B CN 110842901 B CN110842901 B CN 110842901B CN 201911175406 A CN201911175406 A CN 201911175406A CN 110842901 B CN110842901 B CN 110842901B
- Authority
- CN
- China
- Prior art keywords
- coordinate system
- dimensional
- determining
- unit vector
- calibration block
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/10—Programme-controlled manipulators characterised by positioning means for manipulator elements
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
- B25J19/04—Viewing devices
Abstract
本发明提出了基于一种新型三维标定块的机器人手眼标定方法与装置,通过调节机器人姿态及三维标定块的摆放姿态,使三维视觉装置能够获取三维标定块上包含有三个关键点的点云,并且探针能准确触及三维标定块上三个关键点位置;确定三个关键点在机器人基坐标系下坐标值;根据所获取的三维标定块上包含有三个关键点的点云确定三个关键点在三维视觉系统坐标系下的坐标值;确定机器人基坐标系下的工件坐标系PB;确定三维视觉系统坐标系下的工件坐标系PS;根据PB、PS确定三维视觉坐标系到机器人基坐标系下的变换矩阵,利用该变换矩阵实现机器人的手眼标定。本发明能低成本的、便捷的、高精度机器人动态三维视觉系统中进行手眼标定,适用较广。
Description
技术领域
本发明涉及机器人自动化加工系统中视觉引导系统标定、机器人自动装配系统中待装配零件的位置和相关参数检测中的视觉系统标定、加工中心中通过分析传感器数据获取瑕疵后的目标位置信息的转换中的视觉检测系统标定及其他自动化加工(操作)过程中的视觉引导作业等自动化领域的检测系统的手眼标定技术领域,具体涉及基于一种新型三维标定块的机器人手眼标定方法与装置。
背景技术
自动化装备是制造强国的利器,因此必须要向高速化,智能化方向迈进,其一个重要的手段是给机器装上“眼睛”和能够与这颗眼睛配合的“大脑”。这只眼睛可以是单目相机,双目相机,多目相机,三维扫描仪,也可以是RGB-D传感器。通过视觉传感器获取相关数据,可以分析得到的加工信息,这里的加工信息是以视觉传感器的坐标系定义的,这些加工信息在被机器人执行前必须变换到机器人基坐标系下。因此,机器人视觉引导系统的手眼关系的标定非常重要。
目前,眼在手上的视觉系统的手眼标定方法很多,但是对于机器人动态三维视觉系统来说,现有的标定方法要么标定精度较低,要么标定成本较高(需要激光跟踪仪等昂贵的仪器设备),且不利于快速标定。因此,急需一种低成本的、便捷的、高精度的机器人在动态三维视觉系统中的手眼标定方法。
发明内容
针对现有技术的不足,本发明提出基于一种新型三维标定块的机器人手眼标定方法与装置,能低成本的、便捷的、高精度机器人动态三维视觉系统中进行手眼标定,适用较广。
为实现上述目的,本发明提供的基于一种新型三维标定块的机器人手眼标定方法,包括以下步骤:
步骤1,调节机器人姿态及三维标定块的摆放姿态,使设于机器人末端的三维视觉装置能够获取三维标定块上包含有三个关键点的点云,并且设于机器人末端的探针能准确触及三维标定块上三个关键点位置;其中,所述三维标定块上的三个关键点在高度方向不重合,且对三维标定块进行摆放时三维标定块上三个关键点中的任意两点连线在XY平面上的投影,与机器人基坐标系的任意坐标轴不平行;
步骤2,根据探针对三个关键点的检测,确定三个关键点在机器人基坐标系下坐标值;
步骤3,获取三维标定块上包含有三个关键点的点云,并根据所获取的三维标定块上包含有三个关键点的点云确定三个关键点在三维视觉系统坐标系下的坐标值;
步骤4,根据三个关键点在机器人基坐标系下的坐标值,确定机器人基坐标系下的工件坐标系PB;
步骤5,根据三个关键点在三维视觉系统坐标系下坐标值,确定三维视觉系统坐标系下的工件坐标系PS;
步骤6,根据机器人基坐标系下的工件坐标系PB与三维视觉系统坐标系下的工件坐标系PS,确定三维视觉坐标系到机器人基坐标系下的变换矩阵,利用该变换矩阵实现机器人的手眼标定。
优选的,所述三维标定块为多面体结构且形状不规则,其俯视图为三角形,前视图和右视图为多边形。
优选的,所述步骤3包括以下子步骤:
步骤301,将三维标定块的CAD模型转变为点云得到三维标定块模型点云;
步骤302,将三维标定块模型点云与三维标定块上包含有三个关键点的点云进行配准;
步骤303,以三维标定块模型点云上三个关键点的位置为基准,设置相应阈值以从三维标定块点云中确定三个关键点的附近点云;
步骤304,根据三个关键点的附近点云,确定三个关键点在三维视觉系统坐标系下的坐标值。
优选的,所述步骤4包括以下子步骤:
步骤401,根据三个关键点P1、P2、P3在机器人基坐标系中的坐标值,确定关键点P1、P2、P3在机器人基坐标系下中的列向量P1B、P2B、P3B;
步骤402,根据列向量P1B、P2B、P3B,确定以P1B为机器人基坐标系原点的X轴的单位向量ABX及XY平面上的另一个单位向量BBbo;其中
步骤403,根据单位向量ABX及单位向量BBbo,确定机器人基坐标系的Z轴的单位向量CBZ,其中CBZ=ABX×BBbo;
步骤404,根据单位向量ABX及单位向量CBZ,确定机器人基坐标系的Y轴单位向量DBY;其中DBY=ABX×CBZ;
步骤405,根据单位向量ABX、单位向量CBZ及单位向量DBY,确定机器人基坐标系下的工件坐标系PB,
优选的,所述步骤5包括以下子步骤:
步骤501,根据三个关键点P1、P2、P3在三维视觉系统坐标系中的坐标值,确定关键点P1、P2、P3在三维视觉系统坐标系下中的列向量P1S、P2S、P3S;
步骤502,根据列向量P1S、P2S、P3S,确定以P1S为三维视觉系统坐标系原点的X轴的单位向量ASX及XY平面上的另一个单位向量BSbo;其中
步骤503,根据单位向量ASX及单位向量BSbo,确定三维视觉系统坐标系的Z轴的单位向量CSZ,其中CSZ=ASX×BSbo;
步骤504,根据单位向量ASX及单位向量CSZ,确定三维视觉系统坐标系的Y轴单位向量DSY;其中DSY=ASX×CSZ;
步骤505,根据单位向量ASX、单位向量CSZ及单位向量DSY,确定三维视觉系统坐标系下的工件坐标系PS
优选的,所述步骤6包括以下子步骤:
步骤601,确定机器人第6关节的坐标系与机器人基坐标系之间的变换矩阵为
本发明进一步提供基于一种新型三维标定块的机器人手眼标定装置,包括
姿态调节模块,用于调节机器人姿态及三维标定块的摆放姿态,使设于机器人末端的三维视觉装置能够获取三维标定块上包含有三个关键点的点云,并且设于机器人末端的探针能准确触及三维标定块上三个关键点位置;其中,所述三维标定块上的三个关键点在高度方向不重合,且对三维标定块进行摆放时三维标定块上三个关键点中的任意两点连线在XY平面上的投影,与机器人基坐标系的任意坐标轴不平行;
第一坐标值确定模块,根据探针对三个关键点的检测,确定三个关键点在机器人基坐标系下坐标值;
第二坐标值确定模块,用于获取三维标定块上包含有三个关键点的点云,并根据所获取的三维标定块上包含有三个关键点的点云确定三个关键点在三维视觉系统坐标系下的坐标值;
PB计算模块,用于根据三个关键点在机器人基坐标系下的坐标值,确定机器人基坐标系下的工件坐标系PB;
PS计算模块,用于根据三个关键点在三维视觉系统坐标系下坐标值,确定三维视觉系统坐标系下的工件坐标系PS;
变换矩阵确定模块,用于根据机器人基坐标系下的工件坐标系PB与三维视觉系统坐标系下的工件坐标系PS,确定三维视觉坐标系到机器人基坐标系下的变换矩阵,利用该变换矩阵实现机器人的手眼标定。
优选的,所述第二坐标值确定模块包括
模型点云获取单元,用于将三维标定块的CAD模型转变为点云得到三维标定块模型点云;
配准单元,用于将三维标定块模型点云与三维标定块上包含有三个关键点的点云进行配准;
附近点云确定单元,用于以三维标定块模型点云上三个关键点的位置为基准,设置相应阈值以从三维标定块点云中确定三个关键点的附近点云;
坐标值确定单元,用于根据三个关键点的附近点云,确定三个关键点在三维视觉系统坐标系下的坐标值。
优选的,所述PB计算模块包括:
第一列向量计算单元,用于根据三个关键点P1、P2、P3在机器人基坐标系中的坐标值,确定关键点P1、P2、P3在机器人基坐标系下中的列向量P1B、P2B、P3B;
第一X轴单位向量确定单元,用于根据列向量P1B、P2B、P3B,确定以P1B为机器人基坐标系原点的X轴的单位向量ABX及XY平面上的另一个单位向量BBbo;其中
第一Z轴单位向量确定单元,用于根据单位向量ABX及单位向量BBbo,确定机器人基坐标系的Z轴的单位向量CBZ,其中CBZ=ABX×BBbo;
第一Y轴单位向量确定单元,用于根据单位向量ABX及单位向量CBZ,确定机器人基坐标系的Y轴单位向量DBY;其中DBY=ABX×CBZ;
PB确定单元,用于根据单位向量ABX、单位向量CBZ及单位向量DBY,确定机器人基坐标系下的工件坐标系PB,
优选的,所述PS计算模块包括:
第二向量计算单元,用于根据三个关键点P1、P2、P3在三维视觉系统坐标系中的坐标值,确定关键点P1、P2、P3在三维视觉系统坐标系下中的列向量P1S、P2S、P3S;
第二X轴单位向量确定单元,用于根据列向量P1S、P2S、P3S,确定以P1S为三维视觉系统坐标系原点的X轴的单位向量ASX及XY平面上的另一个单位向量BSbo;其中
第二Z轴单位向量确定单元,用于根据单位向量ASX及单位向量BSbo,确定三维视觉系统坐标系的Z轴的单位向量CSZ,其中CSZ=ASX×BSbo;
第二Y轴单位向量确定单元,用于根据单位向量ASX及单位向量CSZ,确定三维视觉系统坐标系的Y轴单位向量DSY;其中DSY=ASX×CSZ;
PS确定单元,用于根据单位向量ASX、单位向量CSZ及单位向量DSY,确定三维视觉系统坐标系下的工件坐标系PS
与现有技术相比,本发明具有以下优点:本发明借助特定的三维标定块,通过确定三维标定块上三个关键点分别在在三维相机坐标系S和机器人基坐标系B下的坐标值,从而分别计算出机器人基坐标系下的工件坐标系PB及三维视觉系统坐标系下的工件坐标系PS,最后根据PB、PS确定三维视觉坐标系到机器人基坐标系下的变换矩阵,利用该变换矩阵实现机器人的手眼标定,从而能够低成本、便捷地、较高精度地完成机器人动态三维视觉系统的手眼标定。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中三维标定块的结构图;
图2为本发明进行手眼标定时进行姿态调节的结构图;
图3为本发明基于一种新型三维标定块的机器人手眼标定方法一实施方式的流程图;
图4为本发明基于一种新型三维标定块的机器人手眼标定装置一实施例的结构框图;
图5为本发明基于一种新型三维标定块的机器人手眼标定方法一实施方式中步骤3的流程图;
图6为本发明基于一种新型三维标定块的机器人手眼标定装置一实施方式中第二坐标值确定模块的结构框图;
图7为本发明基于一种新型三维标定块的机器人手眼标定方法一实施方式中步骤4的流程图;
图8为本发明基于一种新型三维标定块的机器人手眼标定装置一实施方式中PB计算模块的结构框图;
图9为本发明基于一种新型三维标定块的机器人手眼标定方法一实施方式中步骤5的流程图;
图10为本发明基于一种新型三维标定块的机器人手眼标定装置一实施方式中PS计算模块的结构框图;
图11为本发明基于一种新型三维标定块的机器人手眼标定方法一实施方式中步骤5的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明在机器人动态三维视觉系统进行手眼标定时所使用的三维标定块,通过借助三维标定块上的三个关键点P1、P2、P3实现动态三维视觉系统中的手眼标定,而图2则为在进行手眼标定时的结构图,下面结合图1及图2本发明进行具体说明。
参阅图3,本发明实施方式公开了基于一种新型三维标定块的机器人手眼标定方法,包括以下步骤:
步骤1,调节机器人姿态及三维标定块的摆放姿态,使设于机器人末端的三维视觉装置能够获取三维标定块上包含有三个关键点P1、P2、P3的点云,并且设于机器人末端的探针能准确触及三维标定块上P1、P2、P3这三个关键点的位置;其中,所述三维标定块上的P1、P2、P3点在高度方向不重合,且对三维标定块进行摆放时三维标定块上P1、P2、P3中的任意两点连线在XY平面上的投影,与机器人基坐标系的任意坐标轴不平行;
步骤2,根据探针对P1、P2、P3的检测,确定P1、P2、P3在机器人基坐标系下坐标值;
步骤3,获取三维标定块上包含有P1、P2、P3的点云,并根据所获取的三维标定块上包含有P1、P2、P3点云确定P1、P2、P3在三维视觉系统坐标系下的坐标值;
步骤4,根据P1、P2、P3在机器人基坐标系下的坐标值,确定机器人基坐标系下的工件坐标系PB;
步骤5,根据P1、P2、P3在三维视觉系统坐标系下坐标值,确定三维视觉系统坐标系下的工件坐标系PS;
步骤6,根据机器人基坐标系下的工件坐标系PB与三维视觉系统坐标系下的工件坐标系PS,确定三维视觉坐标系到机器人基坐标系下的变换矩阵,利用该变换矩阵实现机器人的手眼标定。
参阅图4,本发明实施方式还提供了基于一种新型三维标定块的机器人手眼标定装置,包括
姿态调节模块10,用于调节机器人姿态及三维标定块的摆放姿态,使设于机器人末端的三维视觉装置能够获取三维标定块上包含有三个关键点P1、P2、P3的点云,并且设于机器人末端的探针能准确触及三维标定块上P1、P2、P3这三个关键点的位置;其中,所述三维标定块上的P1、P2、P3点在高度方向不重合,且对三维标定块进行摆放时三维标定块上P1、P2、P3中的任意两点连线在XY平面上的投影,与机器人基坐标系的任意坐标轴不平行;
第一坐标值确定模块20,用于根据探针对P1、P2、P3的检测,确定P1、P2、P3在机器人基坐标系下坐标值;PB
第二坐标值确定模块30,用于获取三维标定块上包含有P1、P2、P3的点云,并根据所获取的三维标定块上包含有P1、P2、P3点云确定P1、P2、P3在三维视觉系统坐标系下的坐标值;
PB计算模块40,用于根据P1、P2、P3在机器人基坐标系下的坐标值,确定机器人基坐标系下的工件坐标系PB;
PS计算模块50,用于根据P1、P2、P3在机器人基坐标系下的坐标值,确定机器人基坐标系下的工件坐标系PB;
变换矩阵确定模块60,用于根据机器人基坐标系下的工件坐标系PB与三维视觉系统坐标系下的工件坐标系PS,确定三维视觉坐标系到机器人基坐标系下的变换矩阵,利用该变换矩阵实现机器人的手眼标定。
在该实施方式中,基于一种新型三维标定块的机器人手眼标定方法是以基于一种新型三维标定块的机器人手眼标定装置作为步骤的执行对象,或者以系统内的各个模块作为步骤的执行对象。具体地,步骤1是以姿态调节模块10作为步骤的执行对象,步骤2是以第一坐标值确定模块20作为步骤的执行对象,步骤3是以第二坐标值确定模块30作为步骤的执行对象,步骤4是以PB计算模块40作为步骤的执行对象,步骤5是以PS计算模块50作为步骤的执行对象,步骤6是以变换矩阵确定模块60作为步骤的执行对象。
在步骤1中,如图1所示,三维标定块为多面体结构且形状不规则,其俯视图为三角形,前视图和右视图为多边形。三维标定块上的关键点为图1中的P1、P2、P3,这三个关键点在高度方向不重合,并且基本在高度方向均匀分布,便于后续对P1、P2、P3在三维相机坐标系S下坐标值的确定。
由于三维标定块的摆放姿态关系到所获取的数据是否可用,因此在对三维标定块的摆放姿态进行调节时,需要保证关键点P1、P2、P3中的任意两点的连线在XY平面的投影,与机器人基坐标系的任意坐标轴不平行。
而在对机器人动态三维视觉系统进行标定过程中,如图2所示,需要合适的机器人检测姿态,以便于得到可用的空间位置数据。因此,本发明中,在对机器人进行姿态调节时,需要保证设于机器人末端的三维视觉装置能够获取三维标定块上包含有三个关键点P1、P2、P3的点云,并且设于机器人末端的探针能准确触及三维标定块上的P1、P2、P3点。
步骤2中,三个关键点P1、P2、P3在机器人基坐标系下的坐标值P1B、P2B、P3B,是通过读取三维标定块上三个关键点,在探针触及P1、P2、P3时,机器人控制器中经探针长度补偿后的坐标值。
具体的,如图5所示,步骤3包括以下子步骤:
步骤301,将三维标定块的CAD模型转变为点云得到三维标定块模型点云;
步骤302,将三维标定块模型点云与三维标定块上包含有三个关键点的点云进行配准;
步骤303,以三维标定块模型点云上三个关键点的位置为基准,设置相应阈值以从三维标定块点云中确定三个关键点的附近点云;
步骤304,根据三个关键点的附近点云,确定三个关键点在三维视觉系统坐标系下的坐标值。
对应的,如图6所示,基于一种新型三维标定块的机器人手眼标定装置中的第二坐标值确定模块30包括
模型点云获取单元31,用于将三维标定块的CAD模型转变为点云得到三维标定块模型点云;
配准单元32,用于将三维标定块模型点云与三维标定块上包含有三个关键点的点云进行配准;
附近点云确定单元33,用于以三维标定块模型点云上三个关键点的位置为基准,设置相应阈值以从三维标定块点云中确定三个关键点的附近点云;
坐标值确定单元34,用于根据三个关键点的附近点云,确定三个关键点在三维视觉系统坐标系下的坐标值。
其中,步骤3是以第二坐标值确定模块30中的各个单元作为步骤的执行对象。具体的,步骤301是以模型点云获取单元31作为步骤的执行对象,步骤302是以配准单元32作为步骤的执行对象,步骤303是以附近点云确定单元33作为步骤的执行对象,步骤304是以坐标值确定单元34作为步骤的执行对象。
步骤301中,获取三维标定块模型点云的方法是通过标定块CAD模型转变而来。具体的,是通过将三维标定块CAD模型转换为STL格式的文件,然后从保存得到的STL格式文件上的三角面上采样得到。具体可包括以下子步骤:
步骤3011,获取三维标定块的CAD模型;
步骤3012,将三维标定块CAD模型转换为STL格式的文件;
步骤3013,对STL格式的文件上的三角面进行采用;
步骤3014,组合采样点得到三维标定块模型点云。
步骤302中,三维标定块中包含关键点P1、P2、P3的点云与三维标定块模型的点云配准精度决定关键点的准确性,从而直接影响机器人动态三维视觉系统的标定精度。因此,在本发明一实施方式中,可首先分别使用VoxelGrid滤波器下采样三维标定块点云和标定块模型点云,以提高点云对的配准速度;点云对的配准依赖于特征描述,因此在本发明中接着需要计算点云对的快速点特征直方图(FPFH,Fast Point Feature Histograms);在精确配准点云对前通常需要先粗配准点云对,因此在本发明中采用采样一致性初始配准算法(SAC-IA,Sample Consensus Initial Aligment)实现点云对的粗配准;最后使用迭代最近点算法(ICP,Iterative Closest Point)实现点云对的精确配准。
其中,P1、P2、P3坐标值的确定,可通过近邻搜索的方法,在标定块点云中搜索出距离标定块模型点云上关键点处点云最近的点,该点即为所需的关键点坐标。
具体的,如图7所示,步骤4包括以下子步骤:
步骤401,根据三个关键点P1、P2、P3在机器人基坐标系中的坐标值,确定关键点P1、P2、P3在机器人基坐标系下中的列向量P1B、P2B、P3B;
步骤402,根据列向量P1B、P2B、P3B,确定以P1B为机器人基坐标系原点的X轴的单位向量ABX及XY平面上的另一个单位向量BBbo;其中
步骤403,根据单位向量ABX及单位向量BBbo,确定机器人基坐标系的Z轴的单位向量CBZ,其中CBZ=ABX×BBbo;
步骤404,根据单位向量ABX及单位向量CBZ,确定机器人基坐标系的Y轴单位向量DBY;其中DBY=ABX×CBZ;
步骤405,根据单位向量ABX、单位向量CBZ及单位向量DBY,确定机器人基坐标系下的工件坐标系PB,
对应的,如图8所示,基于一种新型三维标定块的机器人手眼标定装置中的PB计算模块40包括
第一列向量计算单元41,用于根据三个关键点P1、P2、P3在机器人基坐标系中的坐标值,确定关键点P1、P2、P3在机器人基坐标系下中的列向量P1B、P2B、P3B;
第一X轴单位向量确定单元42,用于根据列向量P1B、P2B、P3B,确定以P1B为机器人基坐标系原点的X轴的单位向量ABX及XY平面上的另一个单位向量BBbo;其中
第一Z轴单位向量确定单元43,用于根据单位向量ABX及单位向量BBbo,确定机器人基坐标系的Z轴的单位向量CBZ,其中CBZ=ABX×BBbo;
第一Y轴单位向量确定单元44,用于根据单位向量ABX及单位向量CBZ,确定机器人基坐标系的Y轴单位向量DBY;其中DBY=ABX×CBZ;
PB确定单元45,用于根据单位向量ABX、单位向量CBZ及单位向量DBY,确定机器人基坐标系下的工件坐标系PB,
同样的,步骤4是以PB计算模块40中的各个单元作为步骤的执行对象。具体的,步骤401是以第一列向量计算单元41作为步骤的执行对象,步骤402是以第一X轴单位向量确定单元42作为步骤的执行对象,步骤403是以第一Z轴单位向量确定单元43作为步骤的执行对象,步骤404是以第一Y轴单位向量确定单元44作为步骤的执行对象,步骤45是以PB确定单元45作为步骤的执行对象。
具体的,步骤402中,ABX、BBbo表达式中的范式p可取2,以计算这两个向量的长度值。其中,ABX、BBbo为机器人基坐标系XY平面上相交而不重合的单位向量,通过这两个向量的叉乘可以得到机器人基坐标系下Z轴的单位向量CBZ。
步骤404中,得到机器人基坐标系XZ平面上相交而不重合的单位向量ABX、CBZ后,通过这两个向量的叉乘可以得到机器人基坐标系下Y轴的单位向量DBY。
具体的,如图9所示,步骤5包括以下子步骤:
步骤501,根据三个关键点P1、P2、P3在三维视觉系统坐标系中的坐标值,确定关键点P1、P2、P3在三维视觉系统坐标系下中的列向量P1S、P2S、P3S;
步骤502,根据列向量P1S、P2S、P3S,确定以P1S为三维视觉系统坐标系原点的X轴的单位向量ASX及XY平面上的另一个单位向量BSbo;其中
步骤503,根据单位向量ASX及单位向量BSbo,确定三维视觉系统坐标系的Z轴的单位向量CSZ,其中CSZ=ASX×BSbo;
步骤504,根据单位向量ASX及单位向量CSZ,确定三维视觉系统坐标系的Y轴单位向量DSY;其中DSY=ASX×CSZ;
步骤505,根据单位向量ASX、单位向量CSZ及单位向量DSY,确定三维视觉系统坐标系下的工件坐标系PS
对应的,如图10所示,基于一种新型三维标定块的机器人手眼标定装置中的PS计算模块50包括:
第二向量计算单元51,用于根据三个关键点P1、P2、P3在三维视觉系统坐标系中的坐标值,确定关键点P1、P2、P3在三维视觉系统坐标系下中的列向量P1S、P2S、P3S;
第二X轴单位向量确定单元52,用于根据列向量P1S、P2S、P3S,确定以P1S为三维视觉系统坐标系原点的X轴的单位向量ASX及XY平面上的另一个单位向量BSbo;其中
第二Z轴单位向量确定单元53,用于根据单位向量ASX及单位向量BSbo,确定三维视觉系统坐标系的Z轴的单位向量CSZ,其中CSZ=ASX×BSbo;
第二Y轴单位向量确定单元54,用于根据单位向量ASX及单位向量CSZ,确定三维视觉系统坐标系的Y轴单位向量DSY;其中DSY=ASX×CSZ;
PS确定单元55,用于根据单位向量ASX、单位向量CSZ及单位向量DSY,确定三维视觉系统坐标系下的工件坐标系PS
同样的,步骤5是以PS计算模块50中的各个单元作为步骤的执行对象。具体的,步骤501是以第二列向量计算单元51作为步骤的执行对象,步骤502是以第二X轴单位向量确定单元52作为步骤的执行对象,步骤503是以第二Z轴单位向量确定单元53作为步骤的执行对象,步骤504是以第二Y轴单位向量确定单元54作为步骤的执行对象,步骤505是以PS确定单元55作为步骤的执行对象。
具体的,步骤502中,同样的,ASX、BSbo表达式中的范式p可取2,以计算这两个向量的长度值。其中,ASX、BSbo为三维视觉系统坐标系XY平面上相交而不重合的单位向量,通过这两个向量的叉乘可以得到三维视觉系统坐标系下Z轴的单位向量CSZ。
步骤504中,得到三维视觉系统坐标系XZ平面上相交而不重合的单位向量ASX、CSZ后,通过这两个向量的叉乘可以得到三维视觉系统坐标系下Y轴的单位向量DSY。
具体的,如图11所示,步骤6包括以下子步骤:
步骤601,确定机器人第6关节的坐标系与机器人基坐标系之间的变换矩阵为
步骤601中,通过步骤3确定三维标定块上关键点P1、P2、P3在视觉系统坐标系的坐标时,再机器人关节角度值和机器人的初始DH参数,可以求得机器人第6关节的坐标系与机器人基坐标系之间的变换矩阵为:
步骤602中,根据关键点在不同坐标系之间的变换可以得到:
从而完成机器人动态三维视觉系统中手眼的标定。
综上所述,本发明借助特定的三维标定块,通过确定三维标定块上三个关键点分别在在三维相机坐标系S和机器人基坐标系B下的坐标值,从而分别计算出机器人基坐标系下的工件坐标系PB及三维视觉系统坐标系下的工件坐标系PS,最后根据PB、PS确定三维视觉坐标系到机器人基坐标系下的变换矩阵,利用该变换矩阵实现机器人的手眼标定。本发明能够低成本、便捷地、较高精度地完成机器人动态三维视觉系统的标定。
在本发明的实施方式的描述中,需要理解的是,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的实施方式的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
下文的公开提供了许多不同的实施方式或例子用来实现本发明的实施方式的不同结构。为了简化本发明的实施方式的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明的实施方式可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本发明的实施方式提供了的各种特定的工艺和材料的例子,但是本领域普通技术人员可以意识到其他工艺的应用和/或其他材料的使用。
在本说明书的描述中,参考术语“一个实施方式”、“一些实施方式”、“示意性实施方式”、“示例”、“具体示例”或“一些示例”等的描述意指结合所述实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理模块的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,″计算机可读介质″可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的实施方式的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明的各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (8)
1.基于一种新型三维标定块的机器人手眼标定方法,其特征在于,包括以下步骤:
步骤1,调节机器人姿态及三维标定块的摆放姿态,使设于机器人末端的三维视觉装置能够获取三维标定块上包含有三个关键点的点云,并且设于机器人末端的探针能准确触及三维标定块上三个关键点位置;其中,所述三维标定块为多面体结构且形状不规则,三维标定块上的三个关键点在高度方向不重合,且对三维标定块进行摆放时三维标定块上三个关键点中的任意两点连线在XY平面上的投影,与机器人基坐标系的任意坐标轴不平行;
步骤2,根据探针对三个关键点的检测,确定三个关键点在机器人基坐标系下坐标值;
步骤3,获取三维标定块上包含有三个关键点的点云,并根据所获取的三维标定块上包含有三个关键点的点云确定三个关键点在三维视觉系统坐标系下的坐标值;
步骤4,根据三个关键点在机器人基坐标系下的坐标值,确定机器人基坐标系下的工件坐标系PB;
步骤5,根据三个关键点在三维视觉系统坐标系下坐标值,确定三维视觉系统坐标系下的工件坐标系PS;
步骤6,根据机器人基坐标系下的工件坐标系PB与三维视觉系统坐标系下的工件坐标系PS,确定三维视觉坐标系到机器人基坐标系下的变换矩阵,利用该变换矩阵实现机器人的手眼标定;
其中,步骤3包括以下子步骤:
步骤301,将三维标定块的CAD模型转变为点云得到三维标定块模型点云;
步骤302,将三维标定块模型点云与三维标定块上包含有三个关键点的点云进行配准;
步骤303,以三维标定块模型点云上三个关键点的位置为基准,设置相应阈值,以通过近邻搜索的方法从三维标定块点云中分别搜索出距离三维标定块模型点云上关键点处点云最近的点;
步骤304,确定该最近的点的坐标值为三维标定块上的关键点在三维视觉系统坐标系的坐标值。
2.如权利要求1所述基于一种新型三维标定块的机器人手眼标定方法,其特征在于,所述三维标定块的俯视图为三角形,前视图和右视图为多边形。
3.如权利要求1所述基于一种新型三维标定块的机器人手眼标定方法,其特征在于,所述步骤4包括以下子步骤:
步骤401,根据三个关键点P1、P2、P3在机器人基坐标系中的坐标值,确定关键点P1、P2、P3在机器人基坐标系下中的列向量P1B、P2B、P3B;
步骤402,根据列向量P1B、P2B、P3B,确定以P1B为机器人基坐标系原点的X轴的单位向量ABX及XY平面上的另一个单位向量BBbo;其中
步骤403,根据单位向量ABX及单位向量BBbo,确定机器人基坐标系的Z轴的单位向量CBZ,其中CBZ=ABX×BBbo;
步骤404,根据单位向量ABX及单位向量CBZ,确定机器人基坐标系的Y轴单位向量DBY;其中DBY=ABX×CBZ;
步骤405,根据单位向量ABX、单位向量CBZ及单位向量DBY,确定机器人基坐标系下的工件坐标系PB,
4.如权利要求1所述基于一种新型三维标定块的机器人手眼标定方法,其特征在于,所述步骤5包括以下子步骤:
步骤501,根据三个关键点P1、P2、P3在三维视觉系统坐标系中的坐标值,确定关键点P1、P2、P3在三维视觉系统坐标系下中的列向量P1S、P2S、P3S;
步骤502,根据列向量P1S、P2S、P3S,确定以P1S为三维视觉系统坐标系原点的X轴的单位向量ASX及XY平面上的另一个单位向量BSbo;其中
步骤503,根据单位向量ASX及单位向量BSbo,确定三维视觉系统坐标系的Z轴的单位向量CSZ,其中CSZ=ASX×BSbo;
步骤504,根据单位向量ASX及单位向量CSZ,确定三维视觉系统坐标系的Y轴单位向量DSY;其中DSY=ASX×CSZ;
步骤505,根据单位向量ASX、单位向量CSZ及单位向量DSY,确定三维视觉系统坐标系下的工件坐标系PS
6.基于一种新型三维标定块的机器人手眼标定装置,其特征在于,包括
姿态调节模块,用于调节机器人姿态及三维标定块的摆放姿态,使设于机器人末端的三维视觉装置能够获取三维标定块上包含有三个关键点的点云,并且设于机器人末端的探针能准确触及三维标定块上三个关键点位置;其中,所述三维标定块为多面体结构且形状不规则,所述三维标定块上的三个关键点在高度方向不重合,且对三维标定块进行摆放时三维标定块上三个关键点中的任意两点连线在XY平面上的投影,与机器人基坐标系的任意坐标轴不平行;
第一坐标值确定模块,根据探针对三个关键点的检测,确定三个关键点在机器人基坐标系下坐标值;
第二坐标值确定模块,用于获取三维标定块上包含有三个关键点的点云,并根据所获取的三维标定块上包含有三个关键点的点云确定三个关键点在三维视觉系统坐标系下的坐标值;
PB计算模块,用于根据三个关键点在机器人基坐标系下的坐标值,确定机器人基坐标系下的工件坐标系PB;
PS计算模块,用于根据三个关键点在三维视觉系统坐标系下坐标值,确定三维视觉系统坐标系下的工件坐标系PS;
变换矩阵确定模块,用于根据机器人基坐标系下的工件坐标系PB与三维视觉系统坐标系下的工件坐标系PS,确定三维视觉坐标系到机器人基坐标系下的变换矩阵,利用该变换矩阵实现机器人的手眼标定;
其中,所述第二坐标值确定模块包括
模型点云获取单元,用于将三维标定块的CAD模型转变为点云得到三维标定块模型点云;
配准单元,用于将三维标定块模型点云与三维标定块上包含有三个关键点的点云进行配准;
附近点云确定单元,用于以三维标定块模型点云上三个关键点的位置为基准,设置相应阈值,以通过近邻搜索的方法从三维标定块点云中分别搜索出距离三维标定块模型点云上关键点处点云最近的点;
坐标值确定单元,用于确定该最近的点的坐标值为三维标定块上的关键点在三维视觉系统坐标系的坐标值。
7.如权利要求6所述基于一种新型三维标定块的机器人手眼标定装置,其特征在于,所述PB计算模块包括:
第一列向量计算单元,用于根据三个关键点P1、P2、P3在机器人基坐标系中的坐标值,确定关键点P1、P2、P3在机器人基坐标系下中的列向量P1B、P2B、P3B;
第一X轴单位向量确定单元,用于根据列向量P1B、P2B、P3B,确定以P1B为机器人基坐标系原点的X轴的单位向量ABX及XY平面上的另一个单位向量BBbo;其中
第一Z轴单位向量确定单元,用于根据单位向量ABX及单位向量BBbo,确定机器人基坐标系的Z轴的单位向量CBZ,其中CBZ=ABX×BBbo;
第一Y轴单位向量确定单元,用于根据单位向量ABX及单位向量CBZ,确定机器人基坐标系的Y轴单位向量DBY;其中DBY=ABX×CBZ;
PB确定单元,用于根据单位向量ABX、单位向量CBZ及单位向量DBY,确定机器人基坐标系下的工件坐标系PB,
8.如权利要求6所述基于一种新型三维标定块的机器人手眼标定装置,其特征在于,所述PS计算模块包括:
第二向量计算单元,用于根据三个关键点P1、P2、P3在三维视觉系统坐标系中的坐标值,确定关键点P1、P2、P3在三维视觉系统坐标系下中的列向量P1S、P2S、P3S;
第二X轴单位向量确定单元,用于根据列向量P1S、P2S、P3S,确定以P1S为三维视觉系统坐标系原点的X轴的单位向量ASX及XY平面上的另一个单位向量BSbo;其中
第二Z轴单位向量确定单元,用于根据单位向量ASX及单位向量BSbo,确定三维视觉系统坐标系的Z轴的单位向量CSZ,其中CSZ=ASX×BSbo;
第二Y轴单位向量确定单元,用于根据单位向量ASX及单位向量CSZ,确定三维视觉系统坐标系的Y轴单位向量DSY;其中DSY=ASX×CSZ;
PS确定单元,用于根据单位向量ASX、单位向量CSZ及单位向量DSY,确定三维视觉系统坐标系下的工件坐标系PS
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911175406.2A CN110842901B (zh) | 2019-11-26 | 2019-11-26 | 基于一种新型三维标定块的机器人手眼标定方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911175406.2A CN110842901B (zh) | 2019-11-26 | 2019-11-26 | 基于一种新型三维标定块的机器人手眼标定方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110842901A CN110842901A (zh) | 2020-02-28 |
CN110842901B true CN110842901B (zh) | 2021-01-15 |
Family
ID=69604768
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911175406.2A Active CN110842901B (zh) | 2019-11-26 | 2019-11-26 | 基于一种新型三维标定块的机器人手眼标定方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110842901B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112549018B (zh) * | 2020-11-03 | 2021-11-30 | 武汉数字化设计与制造创新中心有限公司 | 一种机器人线激光快速手眼标定方法 |
CN112743546B (zh) * | 2020-12-29 | 2022-03-29 | 华南理工大学 | 机器人手眼标定位姿选择方法、装置、机器人系统及介质 |
CN112659129B (zh) * | 2020-12-30 | 2022-08-09 | 杭州思锐迪科技有限公司 | 机器人的定位方法、装置、系统和计算机设备 |
CN113510696A (zh) * | 2021-04-23 | 2021-10-19 | 知守科技(杭州)有限公司 | 机械手工件坐标系的构建方法、装置、系统和存储介质 |
CN113358098A (zh) * | 2021-05-13 | 2021-09-07 | 武汉中观自动化科技有限公司 | 一种基于智能反向定位的便携式探测方法及系统 |
CN113650022A (zh) * | 2021-07-30 | 2021-11-16 | 佛山缔乐视觉科技有限公司 | 一种机器人编程方法、装置及存储介质 |
CN113600650B (zh) * | 2021-08-17 | 2023-05-26 | 上海发那科机器人有限公司 | 一种机器人弯管机的坐标系自动标定方法 |
CN113634958A (zh) * | 2021-09-27 | 2021-11-12 | 西安知象光电科技有限公司 | 一种基于三维视觉的大型结构件自动化焊接系统及方法 |
CN114750151B (zh) * | 2022-03-31 | 2023-09-12 | 歌尔科技有限公司 | 标定方法、装置、电子设备及计算机可读存储介质 |
CN115139283B (zh) * | 2022-07-18 | 2023-10-24 | 中船重工鹏力(南京)智能装备系统有限公司 | 基于随机标记点阵的机器人手眼标定方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10076842B2 (en) * | 2016-09-28 | 2018-09-18 | Cognex Corporation | Simultaneous kinematic and hand-eye calibration |
CN107121062A (zh) * | 2016-12-07 | 2017-09-01 | 苏州笛卡测试技术有限公司 | 一种机器人三维扫描装置及方法 |
CN107127755B (zh) * | 2017-05-12 | 2023-12-08 | 华南理工大学 | 一种三维点云的实时采集装置及机器人打磨轨迹规划方法 |
CN108994844B (zh) * | 2018-09-26 | 2021-09-03 | 广东工业大学 | 一种打磨操作臂手眼关系的标定方法和装置 |
CN109702738B (zh) * | 2018-11-06 | 2021-12-07 | 深圳大学 | 一种基于三维物体识别的机械臂手眼标定方法及装置 |
CN109623822B (zh) * | 2018-12-28 | 2022-05-27 | 芜湖哈特机器人产业技术研究院有限公司 | 机器人手眼标定方法 |
CN109719726B (zh) * | 2018-12-30 | 2021-08-20 | 芜湖哈特机器人产业技术研究院有限公司 | 一种机械臂手眼标定装置及方法 |
-
2019
- 2019-11-26 CN CN201911175406.2A patent/CN110842901B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110842901A (zh) | 2020-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110842901B (zh) | 基于一种新型三维标定块的机器人手眼标定方法与装置 | |
CN110780285B (zh) | 激光雷达与组合惯导的位姿标定方法、系统及介质 | |
JP4021413B2 (ja) | 計測装置 | |
CN110930442B (zh) | 基于标定块的机器人手眼标定中关键点位置确定方法与装置 | |
CN109752003B (zh) | 一种机器人视觉惯性点线特征定位方法及装置 | |
CN108932737B (zh) | 车载相机俯仰角标定方法和装置、电子设备以及车辆 | |
CN112907727B (zh) | 相对变换矩阵的标定方法、装置及系统 | |
CN111791235B (zh) | 一种机器人多相机视觉惯性点线特征定位方法及装置 | |
US20180290300A1 (en) | Information processing apparatus, information processing method, storage medium, system, and article manufacturing method | |
CN110211174B (zh) | 曲面测量装置标定的方法、设备和存储介质 | |
US20200051278A1 (en) | Information processing apparatus, information processing method, robot system, and non-transitory computer-readable storage medium | |
US10591289B2 (en) | Method for measuring an artefact | |
CN114952856A (zh) | 机械臂手眼标定方法、系统、计算机及可读存储介质 | |
CN109952176A (zh) | 一种机器人标定方法、系统、机器人及存储介质 | |
Ding et al. | A robust detection method of control points for calibration and measurement with defocused images | |
JP2013130508A (ja) | 3次元計測方法、3次元計測プログラム及びロボット装置 | |
JP5481397B2 (ja) | 3次元座標計測装置 | |
Romero et al. | A validation strategy for a target-based vision tracking system with an industrial robot | |
CN113405532B (zh) | 基于视觉系统结构参数的前方交会测量方法及系统 | |
CN113733078B (zh) | 机械臂精调控制量判读方法、计算机可读存储介质 | |
CN108961337B (zh) | 车载相机航向角标定方法和装置、电子设备以及车辆 | |
CN113384347A (zh) | 一种机器人标定方法、装置、设备及存储介质 | |
WO2019093299A1 (ja) | 位置情報取得装置およびそれを備えたロボット制御装置 | |
Tellaeche et al. | 6DOF pose estimation of objects for robotic manipulation. A review of different options | |
CN110736911A (zh) | 飞针测试方法、飞针测试装置、飞针测试设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210707 Address after: 528399 unit 601, building 5, Shunde Leliu Photoelectric Industrial Center, 85 Lianfu 1st Road, Chonghe village committee, Leliu street, Shunde District, Foshan City, Guangdong Province Patentee after: Foshan jinqia Intelligent Equipment Co.,Ltd. Address before: No. 293, Zhongshan Avenue West, Tianhe District, Guangzhou, Guangdong 510000 Patentee before: GUANGDONG POLYTECHNIC NORMAL University |