CN113246135B - 机器人手眼标定方法、装置、电子设备及存储介质 - Google Patents
机器人手眼标定方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113246135B CN113246135B CN202110618844.2A CN202110618844A CN113246135B CN 113246135 B CN113246135 B CN 113246135B CN 202110618844 A CN202110618844 A CN 202110618844A CN 113246135 B CN113246135 B CN 113246135B
- Authority
- CN
- China
- Prior art keywords
- coordinate system
- robot
- vision sensor
- point
- transformation matrix
- 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/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- 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/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
-
- 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/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
Abstract
本发明提供了一种机器人手眼标定方法、装置、电子设备及存储介质,通过使机器人末端在至少四个第一位置点之间平移;在各第一位置点处,获取TCP标记物在视觉传感器坐标系的第一坐标和机器人末端法兰坐标系相对机器人基坐标系的第一位置;根据第一坐标和第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;使机器人末端移动到至少一个第二位置点处;在各第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系的第二坐标和机器人末端法兰坐标系相对机器人基坐标系的第二位姿;根据第二坐标、第二位姿和旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵;从而可实现标定过程的自动化,提高工作效率。
Description
技术领域
本发明涉及工业机器人标定技术领域,尤其涉及一种机器人手眼标定方法、装置、电子设备及存储介质。
背景技术
随着精密化、智能化的现代工业发展对机器人视觉的依赖程度越来越高,机器人视觉的应用越来越普遍。而机器人智能化应用中的第一步,也是特别重要的一步就是机器人手眼标定。对机器人进行手眼标定的目的是获取机器人坐标系与视觉坐标系的转换关系,从而在机器人工作过程中可将视觉识别的结果转换到机器人坐标系下。对于眼在手外的机器人,一般采用人工操作的九点法进行手眼标定,工程步骤繁琐、效率较低。
发明内容
鉴于上述现有技术的不足之处,本申请实施例的目的在于提供一种机器人手眼标定方法、装置、电子设备及存储介质,其标定效率高。
第一方面,本申请实施例提供一种机器人手眼标定方法,用于对视觉传感器设置在机器人外的机器人进行手眼标定;包括步骤:
A1.使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;
A2.在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;所述TCP标记物为预设在末端工具的TCP点上的点状标记物;
A3.根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;
A4.使机器人末端移动到至少一个第二位置点处;
A5.在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;
A6.根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵,完成标定。
本申请实施例的机器人手眼标定方法,只需预先在末端工具的TCP点上设置TCP标记物,后续工作可全部由机器人和视觉传感器系统自动完成,从而能够高效率实现眼在手外手眼标定,降低工人劳动强度。
优选地,步骤A3中,通过求解以下公式得到机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵:
优选地,步骤A6中,通过求解以下公式计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵:
其中,为机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵,为一个第二位置点的第二坐标,为机器人末端法兰坐标系相对机器人基坐标系的第二位姿中的位置矩阵,为机器人末端法兰坐标系相对机器人基坐标系的第二位姿中的姿态矩阵,为机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,为末端工具的TCP点在机器人末端法兰坐标系中的坐标。
优选地,所述第一位置点多于四个;
步骤A3包括:
多次从所述第一位置点中选取四个第一位置点组成一组目标第一位置点,得到多组目标第一位置点,使各组目标第一位置点中的四个第一位置点不全相同;
根据每组目标第一位置点的第一坐标和对应的第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,得到多个初步旋转变换矩阵;
根据所述多个初步旋转变换矩阵计算最终的旋转变换矩阵。
优选地,所述第二位置点多于一个;
步骤A6包括:
根据每个第二位置点的第二坐标和第二位姿计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵,得到多个初步位置变换矩阵;
根据所述多个初步位置变换矩阵计算最终的位置变换矩阵。
优选地,步骤A1包括:
从预设的位置点记录表中随机选取至少四个位置点作为第一位置点;
使机器人末端先移动到其中一个第一位置点处,再依次平移到其它第一位置点处。
优选地,步骤A4包括:
从预设的位置点记录表中随机选取至少一个位置点作为第二位置点,且第二位置点不属于第一位置点;
使机器人末端依次移动到各第二位置点。
第二方面,本申请实施例提供一种机器人手眼标定装置,用于对视觉传感器设置在机器人外的机器人进行手眼标定;包括:
第一执行模块,用于使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;
第一获取模块,用于在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;所述TCP标记物为预设在末端工具的TCP点上的点状标记物;
第一计算模块,用于根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;
第二执行模块,用于使机器人末端移动到至少一个第二位置点处;
第二获取模块,用于在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;
第二计算模块,用于根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵。
第三方面,本申请实施例提供一种电子设备,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如所述的机器人手眼标定方法的步骤。
第四方面,本申请实施例提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如所述的机器人手眼标定方法的步骤。
有益效果:
本申请实施例提供的机器人手眼标定方法、装置、电子设备及存储介质,通过使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;使机器人末端移动到至少一个第二位置点处;在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵;从而可实现标定过程的自动化,提高工作效率,降低人力消耗。
附图说明
图1为本申请实施例提供的机器人手眼标定方法的流程图。
图2为本申请实施例提供的机器人手眼标定装置的结构示意图。
图3为本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”、“内”、“外”、“顺时针”、“逆时针”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
下文的公开提供的实施方式或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本发明提供了的各种特定的工艺和材料的例子,但是本领域普通技术佩戴人员可以意识到其他工艺的应用和/或其他材料的使用。
请参阅图1,本申请实施例提供的一种机器人手眼标定方法,用于对视觉传感器设置在机器人外的机器人进行手眼标定;包括步骤:
A1.使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;
A2.在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;所述TCP标记物为预设在末端工具的TCP点上的点状标记物;
A3.根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;
A4.使机器人末端移动到至少一个第二位置点处;
A5.在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;
A6.根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵,完成标定。
在实际应用中,所述的视觉传感器可以但不限于是相机、三维扫描仪等。其中,在标定前,先在末端工具上选定的TCP点处设置方便视觉传感器检测的TCP标记物(点状标记物),该TCP标记物一般具有较高的反射性或区别于作业空间的颜色特征,例如可以用三维扫描仪专用的贴纸作为TCP标记物或具有颜色特征的圆点形标记物等;其中选定的TCP点在相对机器人末端法兰固定的部位选取,即TCP标记点与机器人末端法兰相对固定;通过现有的TCP点标记方法,可预先标定出TCP点在机器人末端法兰坐标系下的坐标。在该机器人手眼标定方法中,只需要预先人工把TCP标记物设置在末端工具的TCP点上,后续工作可全部由机器人和视觉传感器系统自动完成,从而可实现标定过程的自动化,提高工作效率,降低人力消耗,而且测量精度高,一致性好。
其中,步骤A1中的平移,是指在移动过程中保持末端工具的角度不变,从而在平移过程中,末端工具坐标系只有原点(即TCP点)的位置发生变化,末端工具坐标系的各轴方向保持不变。
具体地,步骤A3中,通过求解以下公式得到机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵:
由TCP点在机器人末端法兰坐标系中的坐标旋转变换到视觉传感器坐标系中,有:
其中,为TCP点在视觉传感器坐标系中的坐标,为TCP点在机器人末端法兰坐标系中的坐标,为从机器人末端法兰坐标系到机器人基坐标系的变换关系,为中的位置变换矩阵,为中的旋转变换矩阵,为从机器人末端法兰坐标系到视觉传感器坐标系的变换关系,为中的位置变换矩阵,为中的旋转变换矩阵;
上式中的对应项相等,从而有:
用上式中的前式减后式有(i=1的式子减去i=2的式子,i=2的式子减去i=3的式子,i=3的式子减去i=4的式子):
实际应用中,所述第一位置点的数量可根据实际需要设置。所述第一位置点的数量可以是四个或多于四个。
对于所述第一位置点多于四个的情况,在一些实施方式中,步骤A3包括:
随机地从所有第一位置点中选取四个第一位置点;根据选取的四个第一位置点的第一坐标和对应的第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵。
对于所述第一位置点多于四个的情况,在另一些实施方式中,步骤A3包括:
A301.多次从所述第一位置点中选取四个第一位置点组成一组目标第一位置点,得到多组目标第一位置点,使各组目标第一位置点中的四个第一位置点不全相同;
A302.根据每组目标第一位置点的第一坐标和对应的第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,得到多个初步旋转变换矩阵;
A303.根据所述多个初步旋转变换矩阵计算最终的旋转变换矩阵。
其中,步骤A301中,在选取每一组目标第一位置点后,判断当前得到的一组目标第一位置点是否与此前得到的各组目标第一位置点中的一组相同;若是,则判定该组目标第一位置点无效并重新获取一组目标第一位置点。实际上,若一组目标第一位置点中的位置点之间的距离太小,会影响最终计算结果的准确性,因此,在一些优选实施例中,还计算当前得到的一组目标第一位置点中的四个位置点两两之间的距离数据,若这些距离数据中至少有一个小于预设的距离阈值,则判定该组目标第一位置点无效并重新获取一组目标第一位置点。
步骤A302中,具体采用公式(1)计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵。
步骤A303中,综合多个初步旋转变换矩计算最终的旋转变换矩,其计算结果的准确性比只用四个第一位置点计算得到的结果更高。
例如,在一些示例中,A303. 根据所述多个初步旋转变换矩阵计算最终的旋转变换矩阵的步骤包括:
计算多个初步旋转变换矩阵各元素的均值,作为最终的旋转变换矩的各元素值。
该方式的逻辑简单,实施方便,且计算结果准确。
其中,在步骤A4中,使机器人末端移动到至少一个第二位置点处的过程中,可自由移动,即可以是平移,也可以是非平移的。
进一步地,步骤A6中,通过求解以下公式计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵:
其中,为机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵,为一个第二位置点的第二坐标,为机器人末端法兰坐标系相对机器人基坐标系的第二位姿中的位置矩阵,为机器人末端法兰坐标系相对机器人基坐标系的第二位姿中的姿态矩阵,为机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,为末端工具的TCP点在机器人末端法兰坐标系中的坐标。即,、、均可直接从机器人控制器中读取,而由步骤A3计算得到,因此可计算得到。
实际应用中,所述第二位置点的数量可根据实际需要设置。所述第二位置点的数量可以是一个或多于一个。
对于所述第二位置点多于一个的情况,在一些实施方式中,步骤A6包括:
随机地从所有第二位置点中选取一个第二位置点;根据选取的第二位置点的第二坐标和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵。
对于所述第二位置点多于一个的情况,在另一些实施方式中,步骤A6包括:
A601.根据每个第二位置点的第二坐标和第二位姿计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵,得到多个初步位置变换矩阵;
A602.根据所述多个初步位置变换矩阵计算最终的位置变换矩阵。
其中,步骤A601中,具体采用公式(3)计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵。
步骤A602中,综合多个初步位置变换矩阵计算最终的位置变换矩阵,其计算结果的准确性比只用一第二位置点计算得到的结果更高。
例如,在一些示例中,A602.根据所述多个初步位置变换矩阵计算最终的位置变换矩阵的步骤包括:
计算多个初步位置变换矩阵各元素的均值,作为最终的位置变换矩的各元素值。
该方式的逻辑简单,实施方便,且计算结果准确。
在一些实施方式中,步骤A1包括:
A101.从预设的位置点记录表中随机选取至少四个位置点作为第一位置点;
A102.使机器人末端先移动到其中一个第一位置点处,再依次平移到其它第一位置点处。
在该实施方式中,预先在视觉传感器的检测范围内选定多个位置点,并记录这些位置点在机器人基坐标系下的坐标,形成位置点记录表。例如,可事先由人工控制机器人进行多次移动,每次移动后检测机器人末端是否在视觉传感器的检测范围内,若是,则把此时机器人末端在机器人基坐标系下的第三坐标记录在位置点记录表中;但不限于此。从而在步骤A101中,直接从位置点记录表中随机选取所需数量的位置点。位置点的确定速度较快,且能够保证在每个位置点处,视觉传感器均能够检测到TCP标记物的第一坐标。
在另一些实施方式中,步骤A1包括:
A103.在预设的偏差范围内,随机生成三个坐标的偏差值;
A104.用三个坐标的偏差值分别与当前位置点在机器人基坐标系下的三个坐标相加,得到下一个第一位置点的坐标;
A105.根据预先测定的视觉传感器的检测范围,判断所述下一个第一位置点的坐标是否在视觉传感器的检测范围内;
A106.若在,则判定该下一个第一位置点的坐标有效;否则,重新获取该下一个第一位置点的坐标。
其中,在步骤A106中,若对于同一个第一位置点的坐标的重复获取次数超过预设的次数阈值,则先把机器人末端移动至预设复位点,再重新获取其坐标。其中,预设复位点可根据实际需要进行设置,例如选取视觉传感器的检测范围的中心点;从而,当机器人末端移动至预设复位点后,重新获取的下一个第一位置点的坐标,一般不会超出视觉传感器的检测范围。
在一些实施方式中,步骤A4包括:
A401.从预设的位置点记录表中随机选取至少一个位置点作为第二位置点,且第二位置点不属于第一位置点;
A402.使机器人末端依次移动到各第二位置点。
其中,步骤A401中的记录表与步骤A101中的记录表相同。在选取第二位置点时,可直接从排除第一位置点后的其它位置点中随机选取。
由上可知,该机器人手眼标定方法,通过使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;使机器人末端移动到至少一个第二位置点处;在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵;从而可实现标定过程的自动化,提高工作效率,降低人力消耗。
请参阅图2,本申请实施例提供一种机器人手眼标定装置,用于对视觉传感器设置在机器人外的机器人进行手眼标定;包括:
第一执行模块1,用于使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;
第一获取模块2,用于在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;所述TCP标记物为预设在末端工具的TCP点上的点状标记物;
第一计算模块3,用于根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;
第二执行模块4,用于使机器人末端移动到至少一个第二位置点处;
第二获取模块5,用于在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;
第二计算模块6,用于根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵。
其中,平移,是指在移动过程中保持末端工具的角度不变,从而在平移过程中,末端工具坐标系只有原点(即TCP点)的位置发生变化,末端工具坐标系的各轴方向保持不变。
具体地,第一计算模块3通过求解以下公式得到机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵:
实际应用中,所述第一位置点的数量可根据实际需要设置。所述第一位置点的数量可以是四个或多于四个。
对于所述第一位置点多于四个的情况,在一些实施方式中,第一计算模块3在根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵的时候:
随机地从所有第一位置点中选取四个第一位置点;根据选取的四个第一位置点的第一坐标和对应的第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵。
对于所述第一位置点多于四个的情况,在另一些实施方式中,第一计算模块3在根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵的时候:
多次从所述第一位置点中选取四个第一位置点组成一组目标第一位置点,得到多组目标第一位置点,使各组目标第一位置点中的四个第一位置点不全相同;
根据每组目标第一位置点的第一坐标和对应的第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,得到多个初步旋转变换矩阵;
根据所述多个初步旋转变换矩阵计算最终的旋转变换矩阵。
其中,在选取每一组目标第一位置点后,判断当前得到的一组目标第一位置点是否与此前得到的各组目标第一位置点中的一组相同;若是,则判定该组目标第一位置点无效并重新获取一组目标第一位置点。实际上,若一组目标第一位置点中的位置点之间的距离太小,会影响最终计算结果的准确性,因此,在一些优选实施例中,还计算当前得到的一组目标第一位置点中的四个位置点两两之间的距离数据,若这些距离数据中至少有一个小于预设的距离阈值,则判定该组目标第一位置点无效并重新获取一组目标第一位置点。
计算初步旋转变换矩阵的时候,具体采用公式(1)进行计算。
在一些示例中,第一计算模块3在根据所述多个初步旋转变换矩阵计算最终的旋转变换矩阵的时候:
计算多个初步旋转变换矩阵各元素的均值,作为最终的旋转变换矩的各元素值。
其中,第二执行模块4在使机器人末端移动到至少一个第二位置点处的时候,可自由移动,即可以是平移,也可以是非平移的。
进一步地,第二计算模块6通过求解以下公式计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵:
其中, 为机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵,为一个第二位置点的第二坐标,为机器人末端法兰坐标系相对机器人基坐标系的第二位姿中的位置矩阵,为机器人末端法兰坐标系相对机器人基坐标系的第二位姿中的姿态矩阵,为机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,为末端工具的TCP点在机器人末端法兰坐标系中的坐标。即,、、均可直接从机器人控制器中读取,而由第一计算模块3计算得到,因此可计算得到。
实际应用中,所述第二位置点的数量可根据实际需要设置。所述第二位置点的数量可以是一个或多于一个。
对于所述第二位置点多于一个的情况,在一些实施方式中,第二计算模块6在根据所述第二坐标和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵的时候:
随机地从所有第二位置点中选取一个第二位置点;根据选取的第二位置点的第二坐标和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵。
对于所述第二位置点多于一个的情况,在另一些实施方式中,第二计算模块6在根据所述第二坐标和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵的时候:
根据每个第二位置点的第二坐标和第二位姿计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵,得到多个初步位置变换矩阵;
根据所述多个初步位置变换矩阵计算最终的位置变换矩阵。
其中,计算初步位置变换矩阵的时候,具体采用公式(3)进行计算。
在一些示例中,第二计算模块6在根据所述多个初步位置变换矩阵计算最终的位置变换矩阵的时候:
计算多个初步位置变换矩阵各元素的均值,作为最终的位置变换矩的各元素值。
在一些实施方式中,第一执行模块1在使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处的时候:
从预设的位置点记录表中随机选取至少四个位置点作为第一位置点;
使机器人末端先移动到其中一个第一位置点处,再依次平移到其它第一位置点处。
在该实施方式中,预先在视觉传感器的检测范围内选定多个位置点,并记录这些位置点在机器人基坐标系下的坐标,形成位置点记录表。例如,可事先由人工控制机器人进行多次移动,每次移动后检测机器人末端是否在视觉传感器的检测范围内,若是,则把此时机器人末端在机器人基坐标系下的第三坐标记录在位置点记录表中;但不限于此。从而第一执行模块1直接从位置点记录表中随机选取所需数量的位置点。
在另一些实施方式中,第一执行模块1在使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处的时候:
在预设的偏差范围内,随机生成三个坐标的偏差值;
用三个坐标的偏差值分别与当前位置点在机器人基坐标系下的三个坐标相加,得到下一个第一位置点的坐标;
根据预先测定的视觉传感器的检测范围,判断所述下一个第一位置点的坐标是否在视觉传感器的检测范围内;
若在,则判定该下一个第一位置点的坐标有效;否则,重新获取该下一个第一位置点的坐标。
其中,若对于同一个第一位置点的坐标的重复获取次数超过预设的次数阈值,则先把机器人末端移动至预设复位点,再重新获取其坐标。其中,预设复位点可根据实际需要进行设置,例如选取视觉传感器的检测范围的中心点;从而,当机器人末端移动至预设复位点后,重新获取的下一个第一位置点的坐标,一般不会超出视觉传感器的检测范围。
在一些实施方式中,第二执行模块4在使机器人末端移动到至少一个第二位置点处的时候:
从预设的位置点记录表中随机选取至少一个位置点作为第二位置点,且第二位置点不属于第一位置点;
使机器人末端依次移动到各第二位置点。
由上可知,该机器人手眼标定装置,通过使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;使机器人末端移动到至少一个第二位置点处;在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵;从而可实现标定过程的自动化,提高工作效率,降低人力消耗。
请参阅图3,本申请实施例还提供一种电子设备100,包括处理器101和存储器102,存储器102中存储有计算机程序,处理器101通过调用存储器102中存储的计算机程序,用于执行如上述的机器人手眼标定方法的步骤。
其中,处理器101与存储器102电性连接。处理器101是电子设备100的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或调用存储在存储器102内的计算机程序,以及调用存储在存储器102内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。
存储器102可用于存储计算机程序和数据。存储器102存储的计算机程序中包含有可在处理器中执行的指令。计算机程序可以组成各种功能模块。处理器101通过调用存储在存储器102的计算机程序,从而执行各种功能应用以及数据处理。
在本实施例中,电子设备100中的处理器101会按照如下的步骤,将一个或一个以上的计算机程序的进程对应的指令加载到存储器102中,并由处理器101来运行存储在存储器102中的计算机程序,从而实现各种功能:使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;使机器人末端移动到至少一个第二位置点处;在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵。
由上可知,该电子设备,通过使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;使机器人末端移动到至少一个第二位置点处;在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵;从而可实现标定过程的自动化,提高工作效率,降低人力消耗。
本申请实施例还提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时运行如上述的机器人手眼标定方法的步骤,以实现以下功能:使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;使机器人末端移动到至少一个第二位置点处;在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵。
其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory, 简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory, 简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory, 简称EPROM),可编程只读存储器(Programmable Red-Only Memory, 简称PROM),只读存储器(Read-OnlyMemory, 简称ROM),磁存储器,快闪存储器,磁盘或光盘。
综上所述,虽然本发明已以优选实施例揭露如上,但上述优选实施例并非用以限制本发明,本领域的普通技术佩戴人员,在不脱离本发明的精神和范围内,均可作各种更动与润饰,其方案与本发明实质上相同。
Claims (8)
1.一种机器人手眼标定方法,用于对视觉传感器设置在机器人外的机器人进行手眼标定;其特征在于,包括步骤:
A1.使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;
A2.在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;所述TCP标记物为预设在末端工具的TCP点上的点状标记物;
A3.根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;
A4.使机器人末端移动到至少一个第二位置点处;
A5.在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;
A6.根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵,完成标定;
步骤A3中,通过求解以下公式得到机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵:
步骤A6中,通过求解以下公式计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵:
2.根据权利要求1所述的机器人手眼标定方法,其特征在于,所述第一位置点多于四个;
步骤A3包括:
多次从所述第一位置点中选取四个第一位置点组成一组目标第一位置点,得到多组目标第一位置点,使各组目标第一位置点中的四个第一位置点不全相同;
根据每组目标第一位置点的第一坐标和对应的第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,得到多个初步旋转变换矩阵;
根据所述多个初步旋转变换矩阵计算最终的旋转变换矩阵。
3.根据权利要求1所述的机器人手眼标定方法,其特征在于,所述第二位置点多于一个;
步骤A6包括:
根据每个第二位置点的第二坐标和第二位姿计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵,得到多个初步位置变换矩阵;
根据所述多个初步位置变换矩阵计算最终的位置变换矩阵。
4.根据权利要求1所述的机器人手眼标定方法,其特征在于,步骤A1包括:
从预设的位置点记录表中随机选取至少四个位置点作为第一位置点;
使机器人末端先移动到其中一个第一位置点处,再依次平移到其它第一位置点处。
5.根据权利要求1所述的机器人手眼标定方法,其特征在于,步骤A4包括:
从预设的位置点记录表中随机选取至少一个位置点作为第二位置点,且第二位置点不属于第一位置点;
使机器人末端依次移动到各第二位置点。
6.一种机器人手眼标定装置,用于对视觉传感器设置在机器人外的机器人进行手眼标定;其特征在于,包括:
第一执行模块,用于使机器人末端移动到一个第一位置点后依次平移到至少三个其它第一位置点处;
第一获取模块,用于在每个所述第一位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第一坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第一位置;所述TCP标记物为预设在末端工具的TCP点上的点状标记物;
第一计算模块,用于根据所述第一坐标和所述第一位置计算机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵;
第二执行模块,用于使机器人末端移动到至少一个第二位置点处;
第二获取模块,用于在每个所述第二位置点处,获取由视觉传感器采集的TCP标记物在视觉传感器坐标系中的第二坐标,并获取机器人末端法兰坐标系相对机器人基坐标系的第二位姿;
第二计算模块,用于根据所述第二坐标、所述第二位姿和机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵,计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵;
第一计算模块通过求解以下公式得到机器人基坐标系与视觉传感器坐标系之间的旋转变换矩阵:
第二计算模块通过求解以下公式计算机器人基坐标系与视觉传感器坐标系之间的位置变换矩阵:
7.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有计算机程序,所述处理器通过调用所述存储器中存储的所述计算机程序,用于执行如权利要求1-5任一项所述的机器人手眼标定方法的步骤。
8.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时运行如权利要求1-5任一项所述的机器人手眼标定方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110618844.2A CN113246135B (zh) | 2021-06-03 | 2021-06-03 | 机器人手眼标定方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110618844.2A CN113246135B (zh) | 2021-06-03 | 2021-06-03 | 机器人手眼标定方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113246135A CN113246135A (zh) | 2021-08-13 |
CN113246135B true CN113246135B (zh) | 2021-10-12 |
Family
ID=77186164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110618844.2A Active CN113246135B (zh) | 2021-06-03 | 2021-06-03 | 机器人手眼标定方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113246135B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113940198B (zh) * | 2021-10-25 | 2022-07-12 | 季华实验室 | 多机器人水果采摘方法、装置、电子设备及存储介质 |
CN113850815B (zh) * | 2021-11-29 | 2022-03-08 | 季华实验室 | 工件点云获取方法、装置、电子设备及存储介质 |
CN114888791B (zh) * | 2022-04-21 | 2023-08-25 | 北京航空航天大学 | 一种面向截骨机器人的头眼联合标定方法 |
CN114918926B (zh) * | 2022-07-22 | 2022-10-25 | 杭州柳叶刀机器人有限公司 | 机械臂视觉配准方法、装置、控制终端及存储介质 |
CN114918928B (zh) * | 2022-07-22 | 2022-10-28 | 杭州柳叶刀机器人有限公司 | 手术机械臂精准定位方法、装置、控制终端及存储介质 |
CN115414117B (zh) * | 2022-08-31 | 2023-05-09 | 北京长木谷医疗科技有限公司 | 骨科手术机器人执行末端位置坐标的确定方法及装置 |
CN115229805B (zh) * | 2022-09-21 | 2022-12-09 | 北京壹点灵动科技有限公司 | 手术机器人手眼标定方法、装置、存储介质及处理器 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110834333A (zh) * | 2019-11-14 | 2020-02-25 | 中科新松有限公司 | 一种机器人手眼标定方法及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101660904A (zh) * | 2009-09-22 | 2010-03-03 | 大连海事大学 | 一种用于测量机器人的运动学标定的方法 |
CN101957176B (zh) * | 2010-09-19 | 2012-05-02 | 天津大学 | 基于机器人结合相机定标的高精度汽车车门的检测方法 |
CN104827480A (zh) * | 2014-02-11 | 2015-08-12 | 泰科电子(上海)有限公司 | 机器人系统的自动标定方法 |
CN105014679A (zh) * | 2015-08-03 | 2015-11-04 | 华中科技大学无锡研究院 | 一种基于扫描仪的机器人手眼标定方法 |
CN106426172B (zh) * | 2016-10-27 | 2019-04-16 | 深圳元启智能技术有限公司 | 一种工业机器人工具坐标系的标定方法与系统 |
US11254019B2 (en) * | 2019-03-05 | 2022-02-22 | The Boeing Company | Automatic calibration for a robot optical sensor |
-
2021
- 2021-06-03 CN CN202110618844.2A patent/CN113246135B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110834333A (zh) * | 2019-11-14 | 2020-02-25 | 中科新松有限公司 | 一种机器人手眼标定方法及存储介质 |
Non-Patent Citations (1)
Title |
---|
基于单目视觉引导的机械手定位技术研究;杨国炜;《中国优秀博硕士学位论文全文数据库(硕士)》;20210115;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113246135A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113246135B (zh) | 机器人手眼标定方法、装置、电子设备及存储介质 | |
CN113021358B (zh) | 机械臂工具坐标系原点标定方法、装置和电子设备 | |
CN110640747B (zh) | 机器人的手眼标定方法、系统、电子设备和存储介质 | |
US10695910B2 (en) | Automatic calibration method for robot system | |
KR102084656B1 (ko) | 로봇 시스템을 위한 자동 교정 방법 | |
CN104842352B (zh) | 利用了视觉反馈的机器人系统 | |
US9199379B2 (en) | Robot system display device | |
US9519736B2 (en) | Data generation device for vision sensor and detection simulation system | |
CN106514651A (zh) | 测量装置以及校准方法 | |
US20160279800A1 (en) | Robot, robot control device, and robotic system | |
CN112091971A (zh) | 机器人手眼标定方法、装置、电子设备和系统 | |
CN111256732B (zh) | 一种用于水下双目视觉的目标姿态误差测量方法 | |
US20190105781A1 (en) | Robot system | |
JP5450242B2 (ja) | マニピュレータのキャリブレーション方法及びロボット制御システム | |
CN114310901B (zh) | 用于机器人的坐标系标定方法、装置、系统以及介质 | |
CN111890356A (zh) | 机械臂坐标系和相机坐标系标定方法、装置、设备及介质 | |
CN114310880A (zh) | 一种机械臂标定方法及装置 | |
KR102228835B1 (ko) | 산업용 로봇의 측정 시스템 및 방법 | |
CN114516051B (zh) | 三个及以上自由度机器人视觉测量的前方交会方法及系统 | |
US11577400B2 (en) | Method and apparatus for managing robot system | |
CN112116664A (zh) | 手眼标定轨迹生成方法、装置、电子设备及存储介质 | |
CN113405532B (zh) | 基于视觉系统结构参数的前方交会测量方法及系统 | |
CN116038701A (zh) | 一种四轴机械臂的手眼标定方法及装置 | |
CN112792816B (zh) | 基于几何的手眼标定方法、机器人、计算机及存储介质 | |
US11267129B2 (en) | Automatic positioning method and automatic control device |
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 |