CN117615883A - 用于机器人***中的工具管理的方法和装置 - Google Patents
用于机器人***中的工具管理的方法和装置 Download PDFInfo
- Publication number
- CN117615883A CN117615883A CN202180100319.XA CN202180100319A CN117615883A CN 117615883 A CN117615883 A CN 117615883A CN 202180100319 A CN202180100319 A CN 202180100319A CN 117615883 A CN117615883 A CN 117615883A
- Authority
- CN
- China
- Prior art keywords
- tool
- arm
- calibration
- calibration object
- robotic
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 239000000523 sample Substances 0.000 claims description 66
- 230000009466 transformation Effects 0.000 claims description 40
- 238000005259 measurement Methods 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 24
- 239000000243 solution Substances 0.000 description 14
- 238000005520 cutting process Methods 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 7
- 230000036544 posture Effects 0.000 description 5
- 238000003860 storage Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000007493 shaping process Methods 0.000 description 2
- 101100105988 Bacillus subtilis (strain 168) yetA gene Proteins 0.000 description 1
- 239000012482 calibration solution Substances 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 239000011532 electronic conductor Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 239000002994 raw material Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
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/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/37—Measurements
- G05B2219/37021—Robot controls position of touch probe
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/37—Measurements
- G05B2219/37043—Touch probe, store position of touch point on surface
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39021—With probe, touch reference positions
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
Abstract
本公开的实施例提供了用于管理机器人***中的工具的方法、装置、***和计算机可读介质。在一种方法中,获得当工具被放置在用于校准工具的校准对象的表面上的姿势下时机器人***的机器人臂的多个臂位置,此处该姿势表示机器人臂的旋转参数。校准对象的中心基于多个臂位置来确定。机器人臂的参考位置基于中心的位置和姿势来生成,用于校准工具。进一步地,本公开的实施例提供了用于管理机器人***中的工具的装置、***和计算机可读介质。利用这些实施例,用于校准工具的参考位置可以以简单有效的方式获得,而无需复杂的手动操作。
Description
技术领域
本公开的示例实施例总体上涉及一种机器人***,更具体地涉及用于管理机器人***中的工具的方法、装置、***和计算机可读介质,使得工具可以以更有效的方式控制。
背景技术
随着计算机和自动控制的发展,机器人***已被广泛用于处理制造业中各种类型的对象。例如,工具可以被装备在机器人***的端臂处,用于测量、切割、抓取和其他操作。为了在机器人***中实现高性能,工程师需要花费大量时间和精力首先校准工具。已经提出了用于校准机器人***中的工具的若干解决方案。然而,这些解决方案需要工程师手动实施复杂的操作,以便获得用于校准的多个参考位置。这些操作需要丰富的校准知识,并且缺乏经验的工程师很难独立校准机器人***中的工具。因此,期望提出一种简单有效的方法来管理机器人***中的工具。
发明内容
本公开的示例实施例提供了用于管理机器人***的工具的解决方案。
在第一方面中,本公开的示例实施例提供了一种用于管理机器人***的方法。该方法包括:获得当工具被放置在用于校准工具的校准对象的表面上的姿势下时机器人***的机器人臂的多个臂位置,该姿势表示机器人臂的旋转参数;基于多个臂位置确定校准对象的中心;以及基于中心的位置和姿势生成用于校准工具的机器人臂的参考位置。与通过具有尖锐尖端的校准工具来校准工具的常规解决方案相比,根据本公开的校准对象可以具有更大的表面而不是仅具有尖锐尖端。在校准程序期间,工程师可以很容易地将待校准工具放置在校准对象的表面上。与用于将工具精确地放置在尖锐尖端处的常规解决方案相比,可以容易地控制校准程序,并且因此可以减轻由工具和尖锐尖端之间的偏差引起的校准误差。
在一些实施例中,确定校准对象的中心包括:基于校准对象的表面和校准对象的形状之间的几何关系来确定校准对象的中心。利用这些实施例,不需要将工具对准尖锐尖端以收集用于校准工具的参考位置。相反,可以将工具放置在表面上所需的位置处,然后可以使用校准对象的中心来确定参考位置。因此,需要有经验的工程师手动操作的复杂校准程序可以通过基于校准对象的表面和形状之间的几何关系的计算程序来改进。
在一些实施例中,校准对象的形状包括球、柱体、立方体、长方体、锥体和多面体中的任意一种形状,并且获得多个臂位置包括:基于校准对象的形状确定多个臂位置的数目;以及基于所确定的数目来获得多个臂位置。利用这些实施例,校准对象可以以各种形状制造。例如,具有适当形状的校准对象可以根据机器人***的操作环境的周围区域来选择,然后可以基于校准对象的形状来调整校准程序。因此,校准对象的各种形状可以为工具校准提供更灵活的选择。
在一些实施例中,生成机器人臂的参考位置包括:基于中心的位置生成参考位置中与位置相关的分量;以及基于机器人臂的旋转参数生成参考位置中与旋转相关的分量。利用这些实施例,可以以简单有效的方式确定分量(例如当采用具有六个自由度的位置格式时的三个位置分量和三个旋转分量)。
在一些实施例中,该方法还包括:根据以上方法生成多个参考位置;以及基于多个参考位置,确定机器人臂的臂坐标与机器人***的工具中心位置(TCP)坐标之间的变换关系。利用这些实施例,多个参考位置(例如四个或多个)可以通过分别在多个姿势下将工具放置在校准对象的表面上来生成。因此,多个参考位置可以被进一步用于校准工具。与分别在多个姿势下将工具精确放置在校准工具的尖锐尖端处的常规解决方案相比,这些实施例可以获得参考位置并且利用简单的手动操作准确地校准工具。
在一些实施例中,确定变换关系包括:基于臂坐标、TCP坐标和机器人***的基准坐标之间的几何关系来生成方程;以及通过求解方程来确定变换关系。利用这些实施例,确定变换关系的技术问题被转换为用于求解方程的数学问题。此处,可以通过最小二乘法容易地求解方程,然后可以以快速有效的方式确定变换关系。
在一些实施例中,基于变换关系来校准工具。利用这些实施例,工具可以基于所确定的变换关系以有效的方式来校准。
在一些实施例中,该工具包括探针工具,并且该方法还包括:利用校准工具来确定目标对象的尺寸。利用这些实施例,可以准确且有效地校准探针工具,然后可以测量目标对象的准确尺寸。
在一些实施例中,确定目标对象的尺寸包括:分别接收目标对象中的第一位置和目标对象中的第二位置;以及基于第一位置和第二位置之间的偏差来确定目标对象的尺寸。利用这些实施例,由于第一位置和第二位置两者都是由校准的探针工具测量的准确位置,因此从第一位置和第二位置确定的尺寸也是准确和可靠的。
在一些实施例中,工具被部署在机器人臂和与机器人***相关联的固定位置中的任意一个位置处,并且校准对象被部署在机器人臂和固定位置中的另一个处。利用这些实施例,基于机器人***的具体环境,校准对象可以被部署在机器人臂的尖端或机器人***中的固定位置处。因此,为校准工具提供了多个选择。
在第二方面中,本公开的示例实施例提供了一种用于管理机器人***中的工具的装置。该装置包括:获得单元,被配置用于获得当工具被放置在用于校准工具的校准对象的表面上的姿势下时机器人***的机器人臂的多个臂位置,该姿势表示机器人臂的旋转参数;确定单元,被配置用于基于多个臂位置确定校准对象的中心;以及生成单元,被配置用于基于中心的位置和姿势生成用于校准工具的机器人臂的参考位置。
在一些实施例中,确定单元还被配置用于:基于校准对象的表面和校准对象的形状之间的几何关系来确定校准对象的中心。
在一些实施例中,校准对象的形状包括球、柱体、立方体、长方体、锥体和多面体中的任意一种形状,并且获得单元还被配置用于:基于校准对象的形状确定多个臂位置的数目;以及基于所确定的数目来获得多个臂位置。
在一些实施例中,生成单元还被配置用于:基于中心的位置生成参考位置中与位置相关的分量;以及基于机器人臂的旋转参数生成参考位置中与旋转相关的分量。
在一些实施例中,生成单元还被配置用于生成多个参考位置;并且该装置还包括:变换关系确定单元,被配置用于基于多个参考位置来确定机器人臂的臂坐标和机器人***的工具中心位置(TCP)坐标之间的变换关系。
在一些实施例中,变换关系确定单元还被配置用于:基于臂坐标、TCP坐标和机器人***的基准坐标之间的几何关系来生成方程;以及通过求解方程来确定变换关系。
在一些实施例中,该装置还包括:校准单元,被配置用于基于变换关系来校准工具。
在一些实施例中,该工具包括探针工具,并且该装置还包括:测量单元,被配置用于利用校准工具来确定目标对象的尺寸。
在一些实施例中,测量单元还被配置用于:分别接收目标对象中的第一位置和目标对象中的第二位置;以及基于第一位置和第二位置之间的偏差来确定目标对象的尺寸。
在一些实施例中,工具被部署在机器人臂和与机器人***相关联的固定位置中的任意一个位置处,并且校准对象被部署在机器人臂和固定位置中的另一个处。
在第三方面中,本公开的示例实施例提供了一种用于管理机器人***中的工具的***。该***包括:被耦合至计算机可读存储器单元的计算机处理器,该存储器单元包括指令,在由计算机处理器执行时,该指令实施用于管理机器人***中的工具的方法。
在第四方面中,本公开的示例实施例提供了一种在其上存储有指令的计算机可读介质,当在至少一个处理器上执行时,该指令使至少一个处理器执行用于管理机器人***中的工具的方法。
附图说明
图1A图示了本公开的实施例可以被实施的机器人***的示意图;
图1B图示了根据一个解决方案的用于校准机器人***中的工具的示意图;
图2图示了根据本公开的实施例的用于收集参考位置以校准机器人***中的工具的示意图;
图3图示了根据本公开的实施例的用于管理机器人***中的工具的方法的流程图;
图4A图示了根据本公开的实施例的用于获得机器人臂的多个臂位置的示意图;
图4B图示了根据本公开的实施例的用于生成参考位置以校准工具的示意图;
图5图示了根据本公开的实施例的用于基于多个参考位置校准工具的示意图;
图6图示了根据本公开的实施例的机器人***中的多个坐标之间的关系的示意图;
图7图示了根据本公开的实施例的用于利用工具确定目标对象的尺寸的示意图;
图8A图示了根据本公开的实施例的用于获得机器人臂的多个臂位置的示意图;
图8B图示了根据本公开的实施例的用于生成机器人臂的参考位置的示意图;
图9图示了根据本公开的实施例的用于管理机器人***中的工具的装置的示意图;以及
图10图示了根据本公开的实施例的用于管理机器人***中的工具的***的示意图。
在附图中,相同或类似的参考符号被用于指示相同或类似的元件。
具体实施方式
本公开的原理现在将参照附图所示的若干示例实施例描述。虽然本公开的示例实施例在附图中图示,但是要理解的是,这些实施例的描述仅仅是为了便于本领域技术人员更好地理解从而实现本公开,而不是以任意方式限制本公开的范围。
为了便于描述,将参照图1A以提供本公开的环境的一般描述。图1A图示了本公开的实施例可以被实施的机器人***100A的示意图。在图1中,机器人***100A可以包括一个或多个臂120、122等,其中臂120经由关节被连接至机器人***100A的基座110,并且臂122经由关节被连接至臂120。端臂122的尖端可以被配备有用于处理目标对象的工具130,诸如要由机器人***100A测量或成形的原材料。此处,工具130可以包括例如用于测量目标对象的尺寸的探针工具或者用于将目标对象成形为期望形状的切割工具等。虽然在图1A中仅图示了两个臂,但机器人***100A可以包括更多或更少的臂。
为了准确控制工具130,在机器人***100A的正常操作之前,应该运行特殊的校准程序。提供了用于校准工具130的各种解决方案。在一个解决方案中,为校准程序提供校准工具140,并且校准工具140可以具有尖锐尖端。将参照图1B来描述校准程序。图1B图示了根据一个解决方案的用于校准机器人***中的工具的示意图100B。在校准程序期间,有经验的工程师可以在多个姿势下将工具130的尖端对准校准工具140的尖锐尖端。例如,工具130可以被放置在姿势150、152、154和156下,用于使工具尖端接触校准尖端140的尖锐尖端。
此时,可以分别从机器人***100A读取四个参考位置,用于校准工具130。进一步地,可以基于四点校准解决方案和/或另一解决方案来校准工具130。然而,由于工具尖端和尖锐尖端都很小并且不容易对准,校准程序通常包括可能潜在地影响校准准确性的手动误差。因此,在校准程序中可能会涉及很大的误差,从而导致机器人***未校准。
为了至少部分地解决以上和其他潜在问题,根据本公开的实施例,提供了一种用于管理机器人***中的工具的新方法。通常,提供具有表面的校准对象用于校准工具130,然后工程师只需要将工具130放置在校准对象的表面上,而不是以准确的方式将工具尖端对准尖锐尖端。利用本公开的这些实施例,可以降低手动操作的复杂性,并且可以减轻由手动操作引起的进一步误差。
针对本公开的简要描述,将参照图2,此处图2图示了根据本公开的实施例的用于收集参考位置以校准机器人***200中的工具的示意图。要理解的是,多种类型的工具可以被配备到机器人臂122,并且在下文中将探针工具210作为示例进行图示。在图2中,具有球探针212的探针工具210被配备在臂122处,并且探针工具210在用于测量目标对象的尺寸之前应该进行校准。进一步地,提供具有表面的校准对象220(诸如球形)用于校准探针工具210。尽管校准对象220被图示为具有球形,但是校准对象220可以具有另一形状,诸如柱体、立方体、长方体、锥体、多面体等。
探针工具210可以被控制并且移动到多个臂位置以分别以姿势接触校准对象220的表面。此处,姿势可以表示从机器人***200读取的臂位置中的旋转参数。进一步地,可以基于臂位置来确定校准对象220的中心(例如球的中心),然后可以使用校准对象220的中心来生成用于校准探针工具210的参考位置。与通过具有尖锐尖端的校准工具来校准工具的常规解决方案相比,本公开中提出的校准对象220具有更大的表面积,而不仅仅是尖锐尖端。在校准程序期间,工程师可以很容易地将待校准工具放置在校准对象200的表面上。利用本公开的实施例,不需要工程师将工具尖端精确地放置在尖锐尖端处,因此可以容易地控制校准程序。进一步地,可以减轻由常规校准对象140的工具尖端和尖锐尖端之间的偏差引起的校准误差。
在下文中,针对本公开的更多细节,将参照图3。图3图示了根据本公开的实施例的用于管理机器人***中的工具的方法300的流程图。在框310中,获得当工具被放置在用于校准工具的校准对象的表面上的姿势下时机器人***的机器人臂的多个臂位置。此处,姿势表示机器人臂的旋转参数。在校准程序中,工程师可以将探针工具210移动到多个臂位置,使得探针工具210中的球探针212接触校准对象220的表面。例如,探针工具210可以被放置在校准对象220的球面上。此时,可以直接从机器人***200的控制器读取多个臂位置。
要理解的是,当获得多个臂位置时,探针工具210应该被放置在相同的姿势下。换言之,探针工具210应该被放置在相同的定向上。假设臂位置以具有六个自由度的(x,y,z,俯仰,偏航,滚转)的格式表示,前三个分量(x,y,z)与位置中的x、y和z坐标值相关,并且后三个分量(俯仰,偏航,滚转)与旋转中的三个旋转角度(俯仰角、偏航角和滚转角)相关。针对获得多个臂位置的更多细节,将参照图4A。图4A图示了根据本公开的实施例的用于获得机器人臂的多个臂位置的示意图400A。在图4A中,探针工具210可以在多个臂位置230、232、234和236处被放置在校准对象220的表面上。例如,工程师可以移动探针工具210,并且使球探针212在各种位置处接触表面,同时保持探针工具210的姿势不变。换言之,在获得多个臂位置230、232、234和236期间,探针工具210的定向(俯仰,偏航,滚转)保持不变。
一旦探针工具210被放置在表面上的某个位置处,就可以从机器人***读取对应的臂位置。当以六个自由度表示臂位置时,臂位置230可以被表示为(x1,y1,z1,俯仰,偏航,滚转),臂位置232可以被表示为(x2,y2,z2,俯仰,偏航,滚转),臂位置234可以被表示为(x3,y3,z3,俯仰,偏航,滚转),并且臂位置236可以被表示为(x4,y4,z4,俯仰,偏航,滚转)。
要理解,探针工具210可以包括各种类型。在一些实施例中,探针工具210可以是基于探针的位置变化触发臂位置的收集的普通探针。此时,当探针工具210在校准对象220的表面上移动时,可以收集以上四个臂位置。在一些实施例中,探针工具210可以是当电极探针被连接至电子导体时触发臂位置的收集的电极探针。此时,校准对象220应该由电子导体材料制成,以便允许收集臂位置。在其他实施例中,探针工具210可以包括已经开发和/或将在未来开发的其他类型的探针。
返回参照图3,在框320中,基于多个臂位置来确定校准对象220的中心410。当探针工具210被放置在校准对象220的表面上的各种位置处时,球探针212的中心位于以校准对象220的中心410为中心的圆412处,并且圆412的半径等于校准对象220的半径和球探针212的半径之和。因此,可以基于校准对象220的表面和校准对象220的形状之间的几何关系来计算中心410。
在图4A中,校准对象220为球形,假设中心410被表示为(a1,a2,a3),圆412的半径被表示为r,并且球探针212在圆412处的中心被表示为(x,y,z),则公式(1)指示球形与表面之间的几何关系(其中:a1、a2、a3和r未知):
(x-a1)2+(y-a2)2+(z-a3)2=r2 公式(1)
进一步地,公式(1)可以进行下面的数学变换,以获得以下公式(2)至(3):
x2-2xa1+a1 2+y2-2ya2+a2 2+z2-2za3+a3 2=r2 公式(2)
-2xa1-2ya2-2za3+(a1 2++a2 2+a3 2-r2)=-(x2+y2+z2) 公式(3)
基于公式(4),公式(3)可以被转换为公式(5),然后以矩阵格式被转换为公式(6)。
b1=2a1,b2=2a2,b3=2a3,b4=2a1 2++a2 2+a3 2-r2 公式(4)
-xb1-yb2-zb3+b4=-(x2+y2+z2) 公式(5)
由于球探针212在圆412处的中心被表示为(x,y,z),所以所获得的臂位置230、232、234和236可以被引入到公式(6)中,以获得公式(7)中的矩阵A和公式(8)中的矩阵B:
基于矩阵变换原理,存在以下公式(9)至(11):
Ab=B 公式(9)
ATAb=ATB 公式(10)
b=(ATA)-1ATB 公式(11)
此处,以上矩阵A和B中的成员具有已知值,因此可以基于公式(11)计算矩阵b中的未知值b1、b2、b3和b4。因此,可以通过以上臂位置230、232、234和236来确定未知的a1、a2、a3和r。利用这些实施例,为了校准探针工具210,不需要将探针工具210对准常规校准对象140的尖锐尖端以收集参考位置。相反,可以将探针工具210放置在校准对象220的表面上的期望位置处,然后可以使用校准对象220的中心410来确定参考位置。此处,探针工具210可以被放置在表面上的任意位置处,然后需要有经验的工程师手动操作的复杂校准程序可以通过基于校准对象的表面和形状之间的几何关系的计算程序来改进。
返回参照图3,在框330中,用于校准工具的机器人臂的参考位置基于中心的位置和姿势来生成。此处,参考位置包括两个部分:与位置相关的分量(诸如(x,y,z))和与旋转相关的分量(诸如(俯仰,偏航,滚转))。图4B图示了根据本公开的实施例的用于生成参考位置以校准工具的示意图400。在图4B中,参考位置420由臂位置230至236确定。此处,参考位置420是用于模拟在姿势(俯仰,偏航,滚转)下将球探针212的中心放置在校准对象220的中心410处的模拟位置。
在一些实施例中,参考位置420中与位置相关的分量可以基于中心的位置来生成,并且参考位置420中与旋转相关的分量可以基于机器人臂的旋转参数来生成。具体地,参考位置420可以被表示为(a1,a3,a3,俯仰,偏航,滚转),并且以上六个符号中的所有符号都具有已知值。利用这些实施例,可以以简单有效的方式基于数学计算来确定参考位置420中的所有分量,而无需任意手动操作。
尽管图4A图示了四个臂位置,但可以从机器人***200读取更多或更少的臂位置以进行进一步处理。例如,可以获得五个或多个臂位置,并且这些臂位置可以被用于确定校准对象220的中心,随着收集更多的臂位置用于确定最终中心,可以基于更多的测量来计算最终中心。它可以减少由于某些点引起的测量误差对最终结果的影响。
以上段落已经描述了用于获得一个参考位置的实施例。利用所描述的实施例,具有表面的校准对象220被提供用于校准,并且因此待校准的工具可以被容易地放置在校准对象220的表面上,用于收集更多的参考位置。与用于将工具尖端对准校准工具的尖锐尖端的常规解决方案相比,工程师的操作可以被简化,并且它不需要工程师的高操作准确性。因此,对校准知识不深的工程师也可以独立实施校准程序。
在一些实施例中,可以多次实施以上方法300,以便确定用于校准探针工具210的多个参考位置。针对校准程序的更多细节,将参照图5,此处图5图示了根据本公开的实施例的用于基于多个参考位置校准工具的示意图500。在图5中,除了参考位置420之外,可以实施以上方法300来确定其他参考位置510、520和530。此处,参考位置420、510、520和530中的每个参考位置都具有唯一的姿势,然后这四个参考位置在六个自由度上具有相同的位置和不同的旋转。此时,四个参考位置可以进行用于校准探针工具210的四点校准540。
利用这些实施例,多个参考位置(例如四个或多个)可以通过分别在多个姿势下将工具放置在校准对象的表面上来生成。因此,多个参考位置可以被用于校准工具。与分别在多个姿势下将工具精确放置在校准工具的尖锐尖端处的常规解决方案相比,这些实施例可以获得参考位置并且利用简单的手动操作准确地校准工具。
在一些实施例中,机器人臂的臂坐标和机器人***200的TCP坐标之间的变换关系可以基于多个参考位置来确定。图6图示了根据本公开的实施例的机器人***200中的多个坐标之间的关系的示意图600。如图6所图示的,基准坐标610与机器人***200的基座相关,臂坐标620是臂122的凸缘的坐标(也称为工具0坐标),并且TCP坐标630是臂坐标620中的表示。
在一些实施例中,为了确定变换关系,可以基于臂坐标620、TCP坐标630和机器人***200的基准坐标610之间的几何关系来生成方程。然后,可以通过求解方程来确定变换关系。具体地,在机器人***200中存在以下公式(12):
在公式(12)中,表示第i个(i=0、1、2、3)参考位置,并且可以用通过以上段落确定的参考位置420、510、520和530中的对应参考位置代替。/>表示变换关系,并且TBT表示基准坐标和TCP坐标之间的关系,其中/>和TBT是未知的。公式(12)可以被转换为RT矩阵格式的公式(13):
可以展开公式(13),然后可以基于展开式中的最后一列获得公式(14):
当将以上参考位置420、510、520和530引入到公式(14)中时,可以获得公式(15):
进一步地,通过将表达式从“=”的右侧移动到左侧,可以以矩阵格式将公式(15)转换为公式(15):
因此,可以基于最小二乘法来确定未知tET,然后可以确定变换关系。利用这些实施例,确定变换关系的技术问题被转换为用于求解公式(16)中的未知参数的数学问题。此处,可以通过最小二乘法容易地求解方程,然后可以以快速有效的方式确定变换关系。
尽管以上公式图示了通过四个参考位置确定变换关系,但是可以生成更多的参考位置用于进一步处理。例如,可以生成五个或多个参考位置,并且这些参考位置可以被用于创建两个组(每个组包括四个参考位置)以单独地实施四点校准。进一步地,可以获得两个变换关系来确定最终结果。利用这些实施例,可以基于基于统计结果的更多测量来计算最终结果,从而减少由手动操作引起的误差。
在一些实施例中,可以基于所确定的变换关系来校准探针工具210,从而可以通过将所确定的变换关系作为校准参数输入到机器人***200中来以简单有效的方式校准探针工具。此后,校准的探针工具210可以以准确的方式操作以确定目标对象的尺寸。利用这些实施例,探针工具210可以准确且有效地校准,然后可以测量目标对象的准确尺寸。
图7图示了根据本公开的实施例的用于利用工具确定目标对象的尺寸的示意图700。如图7所图示的,目标对象710(诸如长方体)可以被放置在机器人***200中,并且目标对象710中的两个相对面732和734之间的距离730可以由探针工具210测量。为了测量距离730,探针工具210可以被放置在位置720和其他两个位置中,以使球探针212分别接触目标对象710的面732中的三个不共线点,从而检测面732的第一位置。接下来,探针工具210可以被放置在位置722和其他两个位置中,以使球探针212分别接触目标对象710的面734中的三个不共线点,从而检测面734的第二位置。然后,可以基于第一位置和第二位置之间的偏差来确定目标对象710的距离730。利用这些实施例,由于第一位置和第二位置两者都是由校准的探针工具测量的准确位置,因此尺寸是从第一位置和第二位置直接确定的。
尽管以上段落以球形校准对象作为示例描述了本公开的实施例,但校准对象可以包括其他形状,诸如柱体、立方体、长方体、锥体和多面体等。在本公开的一些实施例中,可以基于校准对象的形状来确定多个臂位置的数目。当在校准程序中使用立方体校准对象时,针对更多细节将参照图8A和8B。
图8A图示了根据本公开的实施例的用于获得机器人臂的多个臂位置的示意图800A。在图8A中,可以提供具有六个面的立方体810作为校准对象。此时,探针工具210可以被放置在六个面中的一部分或全部,用于确定立方体810的中心850。例如,探针工具210可以被分别放置在具有臂位置842的顶面840、具有臂位置832的底面830、…、以及具有臂位置822的右面820上。由于立方体810具有固定的边缘长度,并且相对面之间的距离等于边缘长度,因此可以容易地计算中心850,并且在下文中省略细节。图8B图示了根据本公开的实施例的用于生成机器人臂的参考位置的示意图800B。在图8B中,中心850的位置和与多个臂位置822、832、…、和842相关的姿势可以被用于生成参考位置860。进一步地,探针工具210可以以其他姿势被放置在立方体810的面上,然后可以获得更多的参考位置来校准探针工具210。
利用这些实施例,校准对象可以以各种形状制造。例如,具有适当形状的校准对象可以根据机器人***200的工作环境的周围区域来选择,然后可以基于校准对象的形状来调整校准程序。因此,各种形状可以为工具校准提供更灵活的选择。
尽管以上段落通过将探测工具210部署在机器人***200中的端臂122处并且将校准对象220部署在机器人***200中的固定位置处描述了本公开的实施例,但是探针工具210也可以被部署在机器人***200中的固定位置处,并且校准对象220可以被部署在机器人***200中的端臂122处。换言之,工具可以被部署在机器人臂和与机器人***200相关联的固定位置中的任意一个位置处,并且校准对象可以被部署在机器人臂和固定位置中的另一个处。利用这些实施例,基于机器人***的具体环境,校准对象可以被部署在机器人臂的尖端或机器人***中的固定位置处。因此,为校准工具提供了多个选择。
尽管以上段落通过将探针工具210作为工具130的示例描述了本公开的实施例,但工具130也可以包括其他类型,诸如用于将目标对象成形为期望尺寸的切割工具。此时,切割工具的固定点(诸如切割工具的刀片的尖端)可以被放置在校准对象220的表面上,用于收集多个参考位置。然后,可以实施四点校准程序来校准切割工具,使得切割工具可以以准确的方式操作。
先前段落已经提供了方法300的详细步骤,在本公开的其他实施例中,方法300可以由装置实施。图9图示了根据本公开的实施例的用于管理机器人***中的工具的装置900的示意图。此处,装置900包括:获得单元910,被配置用于获得当工具被放置在用于校准工具的校准对象的表面上的姿势下时机器人***的机器人臂的多个臂位置,该姿势表示机器人臂的旋转参数;确定单元920,被配置用于基于多个臂位置确定校准对象的中心;以及生成单元930,被配置用于基于中心的位置和姿势生成用于校准工具的机器人臂的参考位置。
在本公开的一些实施例中,确定单元920还被配置用于:基于校准对象的表面和校准对象的形状之间的几何关系来确定校准对象的中心。
在本公开的一些实施例中,校准对象的形状包括球、柱体、立方体、长方体、锥体和多面体中的任意一种形状,并且获得单元910还被配置用于:基于校准对象的形状确定多个臂位置的数目;以及基于所确定的数目来获得多个臂位置。
在本公开的一些实施例中,生成单元930还被配置用于:基于中心的位置生成参考位置中与位置相关的分量;以及基于机器人臂的旋转参数生成参考位置中与旋转相关的分量。
在本公开的一些实施例中,生成单元930还被配置用于生成多个参考位置;并且装置900还包括:变换关系确定单元,被配置用于基于多个参考位置来确定机器人臂的臂坐标和机器人***的工具中心位置(TCP)坐标之间的变换关系。
在本公开的一些实施例中,变换关系确定单元还被配置用于:基于臂坐标、基准坐标之间的几何关系以及基于多个参考位置的变换关系来生成方程;以及通过求解方程来确定变换关系。
在本公开的一些实施例中,装置900还包括:校准单元,被配置用于基于变换关系来校准工具。
在本公开的一些实施例中,该工具包括探针工具,并且该装置还包括测量单元,被配置用于利用校准工具确定目标对象的尺寸。
在本公开的一些实施例中,测量单元还被配置用于:分别接收目标对象中的第一位置和目标对象中的第二位置;以及基于第一位置和第二位置之间的偏差来确定目标对象的尺寸。
在本公开的一些实施例中,工具被部署在机器人臂和与机器人***相关联的固定位置中的任意一个位置处,并且校准对象被部署在机器人臂和固定位置中的另一个处。
在本公开的一些实施例中,提供了用于管理机器人***中的工具的***1000。图10图示了根据本公开的实施例的用于管理机器人***中的工具的***1000的示意图。如图10所图示的,***1000可以包括被耦合至计算机可读存储器单元1020的计算机处理器1010,并且存储器单元1020包括指令1022。当由计算机处理器1010执行时,指令1022可以实施先前段落中描述的用于调谐机器人***的方法300,并且细节在下文中将被省略。
在本公开的一些实施例中,提供了用于调谐机器人***的计算机可读介质。计算机可读介质在其上存储有指令,并且当在至少一个处理器上执行时,该指令可以使至少一个处理器执行先前段落中描述的用于调谐机器人***的方法,并且细节在下文中将被省略。
在本公开的一些实施例中,提供了一种用于管理机器人***中的工具的计算机程序产品。计算机可读介质在其上存储有指令,并且当在至少一个处理器上执行时,该指令可以使至少一个处理器执行先前段落中描述的用于调谐机器人***的方法,并且细节在下文中将被省略。
通常,本公开的各种实施例可以被实施在硬件或专用电路、软件、逻辑或其任意组合中。一些方面可以被实施在硬件中,而其他方面可以被实施在可以由控制器、微处理器或其他计算设备执行的固件或软件中。尽管本公开的实施例的各个方面被图示和描述为框图、流程图或者使用一些其他图形表示,但是要了解的是,本文描述的框、装置、***、技术或方法可以作为非限制性示例被实施在硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或者其他计算设备或其某种组合中。
本公开还提供了有形地存储在非瞬态计算机可读存储介质上的至少一个计算机程序产品。计算机程序产品包括计算机可执行指令,诸如程序模块中所包括的那些计算机可执行指令,它们在目标真实或虚拟处理器上的设备中被执行,以执行上面参照图3描述的过程或方法。通常,程序模块包括执行特定任务或实施特定抽象数据类型的例程、程序、库、对象、类、组件、数据结构等。在各种实施例中,程序模块的功能性可以理想地在程序模块之间组合或拆分。程序模块的机器可执行指令可以被执行在本地或分布式设备内。在分布式设备中,程序模块可以位于本地和远程存储介质中。
用于执行本公开的方法的程序代码可以以一种或多种编程语言的任意组合来编写。这些程序代码可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得在由处理器或控制器执行时,程序代码使流程图和/或框图中指定的功能/操作被实施。程序代码可以完全地在机器上执行,部分地在机器上执行,作为独立软件包执行,部分地在机器上执行并且部分地在远程机器上执行,或者完全地在远程机器或服务器上执行。
以上程序代码可以被实施在机器可读介质上,该机器可读介质可以是任意有形介质,它可以包含或存储通过指令执行***、装置或设备或结合指令执行***、装置或设备使用的程序。机器可读介质可以是机器可读信号介质或者机器可读存储介质。机器可读介质可以包括但不限于电子、磁性、光学、电磁、红外或半导体***、装置或设备或者前述的任意合适组合。机器可读存储介质的更具体示例将包括具有一个或多个电线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或闪存)、光纤、便携式光盘只读存储器(CD-ROM)、光学存储设备、磁性存储设备或者前述的任意合适组合。
进一步地,虽然操作以特定顺序描绘,但是这不应该被理解为要求这种操作按照所示的特定顺序或者按照相继顺序来执行,或者所有图示的操作被执行,以实现期望的结果。在某些情况下,多任务处理和并行处理可能是有利的。同样地,尽管多个具体的实施细节被包含在以上讨论中,但是这些不应该被解释为对本公开范围的限制,而应该解释为可能特定于特定实施例的特征的描述。在单独实施例的上下文中描述的某些特征还可以组合地被实施在单个实施例中。另一方面,在单个实施例的上下文中描述的各种特征也可以单独地或者按照任意合适的子组合被实施在多个实施例中。
尽管主题已经用特定于结构特征和/或方法行动的语言描述,但是要理解的是,在所附权利要求中限定的主题并不一定被限于上述具体特征或行动。相反,上述具体特征和行动被公开为实施权利要求的示例形式。
Claims (22)
1.一种用于管理机器人***中的工具的方法,包括:
获得当所述工具被放置在用于校准所述工具的校准对象的表面上的姿势下时所述机器人***的机器人臂的多个臂位置,所述姿势表示所述机器人臂的旋转参数;
基于所述多个臂位置来确定所述校准对象的中心;以及
基于所述中心的位置和所述姿势来生成用于校准所述工具的所述机器人臂的参考位置。
2.根据权利要求1所述的方法,其中确定所述校准对象的所述中心包括:
基于所述校准对象的所述表面与所述校准对象的形状之间的几何关系来确定所述校准对象的所述中心。
3.根据权利要求2所述的方法,其中所述校准对象的所述形状包括球、柱体、立方体、长方体、锥体和多面体中的任意一种形状,并且获得所述多个臂位置包括:
基于所述校准对象的所述形状来确定所述多个臂位置的数目;以及
基于所确定的数目来获得所述多个臂位置。
4.根据权利要求1所述的方法,其中生成所述机器人臂的所述参考位置包括:
基于所述中心的所述位置来生成所述参考位置中与位置相关的分量;以及
基于所述机器人臂的旋转参数来生成所述参考位置中与旋转相关的分量。
5.根据权利要求1所述的方法,还包括:
根据权利要求1所述的方法来生成多个参考位置;以及
基于所述多个参考位置,确定所述机器人臂的臂坐标与所述机器人***的工具中心位置TCP坐标之间的变换关系。
6.根据权利要求5所述的方法,其中确定所述变换关系包括:
基于所述臂坐标、所述TCP坐标和所述机器人***的基准坐标之间的几何关系来生成方程;以及
通过求解所述方程来确定所述变换关系。
7.根据权利要求5所述的方法,还包括:基于所述变换关系来校准所述工具。
8.根据权利要求6所述的方法,其中所述工具包括探针工具,并且所述方法还包括:利用所述校准工具来确定目标对象的尺寸。
9.根据权利要求7所述的方法,其中确定所述目标对象的所述尺寸包括:
分别接收所述目标对象中的第一位置和所述目标对象中的第二位置;以及
基于所述第一位置与所述第二位置之间的偏差来确定所述目标对象的所述尺寸。
10.根据权利要求1所述的方法,其中所述工具被部署在所述机器人臂和与所述机器人***相关联的固定位置中的任意一个位置处,并且所述校准对象被部署在所述机器人臂和所述固定位置中的另一个位置处。
11.一种用于管理机器人***中的工具的装置,包括:
获得单元,被配置用于获得当所述工具被放置在用于校准所述工具的校准对象的表面上的姿势下时所述机器人***的机器人臂的多个臂位置,所述姿势表示所述机器人臂的旋转参数;
确定单元,被配置用于基于所述多个臂位置来确定所述校准对象的中心;以及
生成单元,被配置用于基于所述中心的位置和所述姿势来生成用于校准所述工具的所述机器人臂的参考位置。
12.根据权利要求11所述的装置,其中所述确定单元还被配置用于:
基于所述校准对象的所述表面与所述校准对象的形状之间的几何关系来确定所述校准对象的所述中心。
13.根据权利要求12所述的装置,其中所述校准对象的所述形状包括球、柱体、立方体、长方体、锥体和多面体中的任意一种形状,并且所述获得单元还被配置用于:
基于所述校准对象的所述形状来确定所述多个臂位置的数目;以及
基于所确定的数目来获得所述多个臂位置。
14.根据权利要求11所述的装置,其中所述生成单元还被配置用于:
基于所述中心的所述位置来生成所述参考位置中与位置相关的分量;以及
基于所述机器人臂的旋转参数来生成所述参考位置中与旋转相关的分量。
15.根据权利要求11所述的装置,其中所述生成单元还被配置用于生成多个参考位置;并且所述装置还包括:
变换关系确定单元,被配置用于基于所述多个参考位置,确定所述机器人臂的臂坐标与所述机器人***的工具中心位置TCP坐标之间的变换关系。
16.根据权利要求15所述的装置,其中所述变换关系确定单元还被配置用于:
基于所述臂坐标、所述TCP坐标和所述机器人***的基准坐标之间的几何关系来生成方程;以及
通过求解所述方程来确定所述变换关系。
17.根据权利要求15所述的装置,还包括:校准单元,被配置用于基于所述变换关系来校准所述工具。
18.根据权利要求16所述的装置,其中所述工具包括探针工具,并且所述装置还包括:测量单元,被配置用于利用所述校准工具来确定目标对象的尺寸。
19.根据权利要求17所述的装置,其中所述测量单元还被配置用于:
分别接收所述目标对象中的第一位置和所述目标对象中的第二位置;以及
基于所述第一位置与所述第二位置之间的偏差来确定所述目标对象的所述尺寸。
20.根据权利要求11所述的装置,其中所述工具被部署在所述机器人臂和与所述机器人***相关联的固定位置中的任意一个位置处,并且所述校准对象被部署在所述机器人臂和所述固定位置中的另一个位置处。
21.一种用于管理机器人***中的工具的***,包括:被耦合至计算机可读存储器单元的计算机处理器,所述存储器单元包括指令,在由所述计算机处理器执行时,所述指令实施根据权利要求1至10中任一项所述的方法。
22.一种计算机可读介质,在所述计算机可读介质上存储有指令,当在至少一个处理器上执行时,所述指令使所述至少一个处理器执行根据权利要求1至10中任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2021/117711 WO2023035228A1 (en) | 2021-09-10 | 2021-09-10 | Method and apparatus for tool management in robot system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117615883A true CN117615883A (zh) | 2024-02-27 |
Family
ID=85507172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180100319.XA Pending CN117615883A (zh) | 2021-09-10 | 2021-09-10 | 用于机器人***中的工具管理的方法和装置 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4399064A1 (zh) |
CN (1) | CN117615883A (zh) |
WO (1) | WO2023035228A1 (zh) |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4831549A (en) * | 1987-07-28 | 1989-05-16 | Brigham Young University | Device and method for correction of robot inaccuracy |
EP1040393A4 (en) * | 1997-09-04 | 2004-03-10 | Dynalog Inc | METHOD FOR CALIBRATING A ROBOTIZED CONTROL SYSTEM |
US6199024B1 (en) * | 1999-09-07 | 2001-03-06 | Nextel Ltd. | Calibration process for shape measurement |
JP4638327B2 (ja) * | 2005-10-17 | 2011-02-23 | 新日本工機株式会社 | パラレルメカニズム装置、パラレルメカニズム装置のキャリブレーション方法、キャリブレーションプログラム、及び記録媒体 |
JP5459486B2 (ja) * | 2010-01-26 | 2014-04-02 | 株式会社Ihi | ロボットのキャリブレーション方法および装置 |
CN107428009B (zh) * | 2015-04-02 | 2020-07-24 | Abb瑞士股份有限公司 | 用于工业机器人调试的方法、使用该方法的工业机器人***和控制*** |
EP3602214B1 (en) * | 2017-03-27 | 2022-01-26 | ABB Schweiz AG | Method and apparatus for estimating system error of commissioning tool of industrial robot |
CN109465826B (zh) * | 2018-11-13 | 2021-08-17 | 南京工程学院 | 一种基于姿态均匀分布的工业机器人tcp标定方法 |
EP3921121A1 (en) * | 2019-02-07 | 2021-12-15 | ABB Schweiz AG | Method of calibrating a tool of an industrial robot, control system and industrial robot |
CN111002312A (zh) * | 2019-12-18 | 2020-04-14 | 江苏集萃微纳自动化***与装备技术研究所有限公司 | 基于标定球的工业机器人手眼标定方法 |
CN112277009B (zh) * | 2020-09-15 | 2023-09-12 | 唐山英莱科技有限公司 | 一种机器人的定位方法及计算机可读存储介质 |
-
2021
- 2021-09-10 WO PCT/CN2021/117711 patent/WO2023035228A1/en active Application Filing
- 2021-09-10 EP EP21956411.9A patent/EP4399064A1/en active Pending
- 2021-09-10 CN CN202180100319.XA patent/CN117615883A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4399064A1 (en) | 2024-07-17 |
WO2023035228A1 (en) | 2023-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110640747B (zh) | 机器人的手眼标定方法、***、电子设备和存储介质 | |
CN110695993B (zh) | 一种柔性机械臂同步测量方法、***及装置 | |
JP4191080B2 (ja) | 計測装置 | |
CN113021358B (zh) | 机械臂工具坐标系原点标定方法、装置和电子设备 | |
KR20190070875A (ko) | 비전-기반 조작 시스템들의 교정 및 동작 | |
JP2015147280A (ja) | ロボット較正方法 | |
US11577400B2 (en) | Method and apparatus for managing robot system | |
CN113211445B (zh) | 一种机器人参数标定方法、装置、设备及存储介质 | |
JP2009128191A (ja) | 物体認識装置およびロボット装置 | |
CN114310901B (zh) | 用于机器人的坐标系标定方法、装置、***以及介质 | |
CN109737871B (zh) | 一种三维传感器与机械手臂的相对位置的标定方法 | |
EP3693697A1 (en) | Method for calibrating a 3d measurement arrangement | |
JP2009128192A (ja) | 物体認識装置およびロボット装置 | |
CN117615883A (zh) | 用于机器人***中的工具管理的方法和装置 | |
TWI787107B (zh) | 非接觸式曲面量測路徑規劃方法、非接觸式曲面量測方法及非接觸式曲面量測系統 | |
CN113442144B (zh) | 欠约束下的最优位姿确定方法、装置、存储介质及机械臂 | |
CN110561387B (zh) | 工业机器人***中可旋转工件的测定方法 | |
CN113768535A (zh) | 一种遥操作用超声仿型探头姿态自校准方法、***及装置 | |
WO2022141054A1 (en) | Method and apparatus for managing camera system | |
CN113334383B (zh) | 一种基于线激光测量仪的机器人末端工具偏置标定方法 | |
US20220219328A1 (en) | Method and device for creation of three dimensional tool frame | |
EP4382259A1 (en) | Robot control device, robot control system, and robot control method | |
CN113459084A (zh) | 一种机器人参数标定方法、装置、设备及存储介质 | |
CN116736797A (zh) | 四轴设备插补标定方法、装置、计算机设备及其存储介质 | |
CN117739808A (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 |