CN107924174B - 用于确定工具偏移的系统和方法 - Google Patents

用于确定工具偏移的系统和方法 Download PDF

Info

Publication number
CN107924174B
CN107924174B CN201680042904.8A CN201680042904A CN107924174B CN 107924174 B CN107924174 B CN 107924174B CN 201680042904 A CN201680042904 A CN 201680042904A CN 107924174 B CN107924174 B CN 107924174B
Authority
CN
China
Prior art keywords
robot
tool
reference object
data
determining
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
Application number
CN201680042904.8A
Other languages
English (en)
Other versions
CN107924174A (zh
Inventor
B.M.戴维斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
X Development LLC
Original Assignee
X Development LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by X Development LLC filed Critical X Development LLC
Publication of CN107924174A publication Critical patent/CN107924174A/zh
Application granted granted Critical
Publication of CN107924174B publication Critical patent/CN107924174B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/10Programme-controlled manipulators characterised by positioning means for manipulator elements
    • B25J9/1005Programme-controlled manipulators characterised by positioning means for manipulator elements comprising adjusting means
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/401Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for measuring, e.g. calibration and initialisation, measuring workpiece for machining purposes
    • G05B19/4015Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by control arrangements for measuring, e.g. calibration and initialisation, measuring workpiece for machining purposes going to a reference at the beginning of machine cycle, e.g. for calibration
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1692Calibration of manipulator
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37231Tool used as touch probe, sensor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39026Calibration of manipulator while tool is mounted
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40589Recognize shape, contour of tool
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/02Arm motion controller
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S901/00Robots
    • Y10S901/30End effector
    • Y10S901/41Tool

Abstract

公开了确定在附接点附接到机器人的工具的工具偏移数据的示例系统和方法。该方法可以包括控制机器人以使参考对象与工具接触。参考对象可以是具有已知位置的刚性对象。机器人的力反馈传感器可以指示工具何时已经接触参考对象。一旦接触,可以接收到指示在工具接触期间的机器人位置的数据。此外,机器人可暂时停止工具的移动以防止损坏工具或参考对象。接下来,可以基于参考对象相对于机器人的位置和接收到的机器人位置数据来确定工具偏移数据。工具偏移数据可以描述工具上的至少一个点和附接点之间的距离。

Description

用于确定工具偏移的系统和方法
背景技术
机器人系统可以用于涉及材料处理、焊接、装配和分配等的应用。随着时间的推移,这些机器人系统操作的方式变得更智能、更高效、更直观。随着机器人系统在现代生活的许多方面变得越来越普遍,对可以与人类一起操作并与之交互的机器人系统的需求变得明显。因此,对这种机器人系统的需求已经帮助开创了致动器、传感技术、控制器以及部件设计和组装的创新领域。
发明内容
示例系统和方法可以提供用于确定附接到机器人的工具的工具偏移数据。该工具可以在具有已知位置的附接点处附接到机器人。机器人可以由控制系统控制以使得工具一次或多次地接触参考对象。参考对象可以是具有已知位置的刚性对象。此外,参考对象可以包括在已知位置和取向处的一个或多个平坦表面以供工具接触。例如,参考对象可以是具有一个平坦表面的木板,该木板在已知的位置处以已知的取向附接到机器人。
机器人的力反馈传感器可以指示工具何时已经接触参考对象。一旦实现接触,机器人可暂时停止工具的移动以防止损坏工具和/或参考对象。控制系统还可以基于机器人的编码的关节角度确定工具接触期间的机器人位置数据。然后可以基于机器人位置数据和参考对象相对于机器人的位置来确定工具偏移数据。工具偏移数据可以描述工具上的至少一个或多个点和附接点之间的距离。例如,工具偏移数据可以描述工具的高度。
在一个示例中,提供了一种方法,其包括确定参考对象相对于机器人的位置。所述方法还可以包括控制机器人,使得在第一接触事件期间在附接点处连接到机器人的工具接触参考对象。所述方法还可以另外包括接收指示在所述第一接触事件期间所述工具接触所述参考对象时所述机器人的位置的机器人位置数据。所述方法还可以包括至少基于所述参考对象相对于机器人的位置和机器人位置数据来确定工具的工具偏移数据,其中,所述工具的工具偏移数据描述附接点与工具上的至少一个点之间的距离。
在另外的示例中,提供了存储可由一个或多个计算设备执行的指令的非暂时性计算机可读介质。当指令被执行时,指令使一个或多个计算设备执行包括确定参考对象相对于机器人的位置的功能。所述功能还可以包括控制机器人,使得在第一接触事件期间在附接点处连接到机器人的工具接触参考对象。所述功能还可以包括接收指示在所述第一接触事件期间所述工具接触所述参考对象时所述机器人的位置的机器人位置数据。所述功能还可以包括至少基于所述参考对象相对于机器人的位置和机器人位置数据来确定工具的工具偏移数据,其中,所述工具的工具偏移数据描述附接点与工具上的至少一个点之间的距离。
在另一个示例中,公开了一种系统,其包括处理器和存储由处理器执行的指令的存储器。当被执行时,指令使系统执行包括确定参考对象相对于机器人的位置的功能。所述功能还可以包括控制机器人,使得在第一接触事件期间在附接点处连接到机器人的工具接触参考对象。所述功能还可以包括接收指示在所述第一接触事件期间所述工具接触所述参考对象时所述机器人的位置的机器人位置数据。所述功能还可以包括至少基于所述参考对象相对于机器人的位置和机器人位置数据来确定工具的工具偏移数据,其中,所述工具的工具偏移数据描述附接点与工具上的至少一个点之间的距离。
在另外的示例中,系统包括用于确定参考对象相对于机器人的位置的器件。所述系统还可以包括用于控制机器人使得在第一接触事件期间在附接点处连接到机器人的工具接触参考对象的器件。所述系统还可以另外包括用于接收指示在所述第一接触事件期间所述工具接触所述参考对象时所述机器人的位置的机器人位置数据的器件。所述系统还可以包括用于至少基于所述参考对象相对于机器人的位置和机器人位置数据来确定工具的工具偏移数据的器件,其中,所述工具的工具偏移数据描述附接点与工具上的至少一个点之间的距离。
前面的概述仅仅是说明性的,并不意图以任何方式进行限制。除了以上描述的说明性方面、实施例和特征之外,通过参考附图和以下详细描述和附图,进一步的方面、实施例和特征将变得明显。
附图说明
图1示出了根据示例实施例的机器人系统的示例配置。
图2A示出了根据示例实施例的示例机器人臂。
图2B示出了根据示例实施例的另一示例机器人臂。
图3A是根据示例实施例的示例末端执行器和参考对象的俯视图。
图3B是根据示例实施例的示例末端执行器和参考对象的侧视图。
图4是根据示例实施例的示例方法的框图。
具体实施方式
这里描述了示例方法和系统。本文描述的任何示例实施例或特征不一定被解释为比其他实施例或特征优选或有利。这里描述的示例实施例并不意味着限制。容易理解的是,所公开的系统和方法的某些方面可以以各种各样的不同配置进行布置和组合,所有这些都在本文中考虑。
此外,附图中所示的特定布置不应被视为限制性的。应该理解,其他实施例可以更多或更少地包括给定图中所示的每个元件。此外,可以组合或省略所示出的元件中的一些。另外,示例实施例可以包括图中未示出的元件。
控制机器人以执行任务的常见问题是确定工具偏移。例如,用户可能想要用附接的工具或末端执行器来控制机器人以执行一个或多个任务。用户可以基于要执行的任务将特定类型的工具附接到机器人上。在这种情况下,用户可以知道所选择的工具附接到机器人的附接点的位置。另外,用户也可以知道附接到机器人的工具的类型。
但是,用户可能不了解附接工具的几何形状。可替代地,用户可能只大致了解附接点的位置。无论在哪种情况下,用户都可能想要确定工具上的点与附接点之间的偏移,以改善对机器人和附接工具的控制执行任务。偏移可以是工具上的点和附接点之间的距离。在某些情况下,偏移可以是工具高度。可替代地,偏移可以描述附接点与工具上的其他点之间的距离。可以使用各种尺寸来描述工具偏移,包括X方向、Y方向和Z方向上的距离以及角度偏移,例如θ(theta)。
典型地,用户手动输入工具偏移到机器人控制系统中,以精确和精准地控制机器人和附接工具以执行任务。但是,手动输入工具偏移数据的一个问题是,它要求用户正确测量偏移。另一个问题是用户必须知道精确而精准地测量工具偏移的方法。还有一个问题是随着工具的使用(例如,随时间的工具弯曲,翘曲或磨损),工具偏移可能随时间而改变。因此,机器人执行的用于确定工具偏移数据的自动过程可以消除与手动测量和确定工具偏移相关的问题。
机器人可以在工具已经附接到机器人之后执行自动过程以确定工具偏移数据。首先,机器人可以识别刚性结构作为参考对象。接下来,机器人可以利用附接工具与参考对象接触。机器人可以基于附接工具接触参考对象来收集机器人位置数据。基于机器人位置数据,机器人可以确定一部分工具偏移数据。机器人然后可以反复地(iteratively)继续使用工具接触刚性参考对象以获取更多的机器人位置数据。基于附加的机器人位置数据,机器人可以确定对于工具上的点的附加的工具偏移数据。在一些实施例中,机器人可以反复地使刚性对象与工具接触,以确定工具上多个关注的点的工具偏移数据。在一个实施例中,机器人可以反复地使刚性对象与工具接触以积累足够的机器人位置数据以生成附接工具的3D模型。
参考对象可以是刚性结构,其允许机器人与附接工具接触以累积机器人位置数据以确定工具偏移数据。参考对象可以在已知的地方附接到机器人。例如,参考对象可以是在已知位置处位于机器人上的木板。参考对象可以是具有两个表面的木板,其中第一参考对象表面与第二参考对象表面成一定角度。又例如,参考对象可以是在已知位置处位于机器人上的的工具球。参考对象可以在一位置放置在机器人上,使得参考对象不会干扰机器人的操作。可替代地,参考对象可以位于远程位置(即,不在机器人上)。参考对象的远程位置可以由机器人已知。其他参考对象和参考对象位置也是可能的。参考对象相对于机器人的相对位置可以与机器人位置数据结合使用以确定工具偏移数据。
当机器人与参考对象接触时,机器人可以收集机器人位置数据以确定工具偏移数据并改善机器人控制。机器人位置数据可以提供关于机器人、机器人臂、机器人工具、参考对象和/或机器人的其他部分的位置、定位和/或取向的信息。例如,机器人可以基于机器人编码的关节角度来确定接触期间的附接点位置和角度取向。在其他实施例中,机器人位置数据可以包括其他信息。所收集的机器人位置数据可以用于确定部分或全部的工具偏移数据。可以使用诸如IMU的传感器来获取机器人位置数据。传感器可以附接到机器人。
机器人可以从位于机器人上的力反馈传感器获取力感测数据。例如,力反馈传感器可以提供指示机器人工具已经与参考对象接触的力感测数据。该指示可以通过消除机器人和参考对象之间的过度和/或不必要的接触来防止损坏工具和/或机器人。力反馈传感器可以位于附接点处。然而,力反馈传感器的其他位置也是可能的。传感器提供指示何时在附接点处施加力在机器人上(表明附接工具与参考对象之间的接触)的精确和精准的测量值。来自力传感器的精确和精准的测量使得能够精确和精准地确定工具偏移数据。
机器人可以允许各种类型的工具附接到机器人。在一个实施例中,机器人包括附接到机器人臂的注射器,以执行涉及输送存储在注射器内的流体的任务。注射器工具的关注点可以是注射器的针的尖端。该点可以允许机器人确定如何控制机器人臂和附接的注射器以执行涉及输送存储在注射器内的流体的任务。
另一个可以附接到机器人的工具可以是2指平行夹具。夹具可以执行涉及将对象拾取、保持和放下的任务。夹具的手指可以朝向彼此和彼此远离地握持和/或释放对象。夹具可以具有多个关注点以确定用于控制夹具的各种夹具尺寸。例如,夹具的关注点可以包括每个手指的内表面上的点,每个手指的外表面上的点,连接手指的内表面的夹具的内表面上的点,以及连接每个手指的内表面和外表面的末端表面上的点。
每个手指的内表面上的点可以用于确定夹具的手指的内部宽度。每个手指的外表面上的点可以用于确定夹具的手指的外部宽度。连接手指内表面的夹具内表面上的点和夹具手指的末端表面上的点可用于确定夹具的手指长度。夹具的手指长度和内部宽度可以用于确定夹具可以抓住哪些对象。夹具可以在最大内部宽度和最小内部宽度之间被致动以在这两个状态期间累积机器人位置数据。然后可以使用机器人位置数据来确定最大和最小内部宽度。夹具上的其他关注点也可以被确定来计算夹具的其他尺寸。
现在参考附图,图1示出机器人系统100的示例配置。机器人系统100可以是机器人臂、不同类型的机器人操纵器,或者可以具有多种不同的形式。另外,机器人系统100也可以被称为机器人装置、机器人操纵器或机器人等等。
机器人系统100示出为包括(一个或多个)处理器102,数据存储器104,程序指令106,控制器108,(一个或多个)传感器110,(一个或多个)电源112,(一个或多个)致动器114和(一个或多个)可移动部件116。注意,机器人系统100仅出于说明的目的示出,因为在不脱离本发明的范围的情况下机器人系统100可以包括额外的部件和/或移除一个或多个部件。此外,请注意,机器人系统100的各种部件可以以任何方式连接。
(一个或多个)处理器102可以是通用处理器或专用处理器(例如,数字信号处理器,专用集成电路等)。(一个或多个)处理器102可以配置为执行存储在数据存储器104中并且可执行以提供在此描述的机器人系统100的功能的计算机可读程序指令106。例如,程序指令106可以是可执行的以提供控制器108的功能,其中控制器108可以配置成指令致动器114以引起一个或多个可移动部件116的移动。
数据存储器104可以包括或采取可由(一个或多个)处理器102读取或访问的一个或多个计算机可读存储介质的形式。一个或多个计算机可读存储介质可以包括可以整体地或部分地与(一个或多个)处理器102集成的易失性和/或非易失性存储部件,诸如光学,磁性,有机或其他存储器或盘存储器。在一些实施例中,数据存储器104可以使用单个物理设备(例如,一个光学,磁性,有机或其他存储器或盘存储单元)来实现,而在其他实施例中,数据存储器104可以使用两个或更多个物理设备来实现。此外,除了计算机可读程序指令106之外,数据存储器104还可以包括诸如诊断数据等之类的附加数据。
机器人系统100可以包括(一个或多个)传感器110,例如力传感器,接近传感器,运动传感器,负载传感器,位置传感器,触摸传感器,深度传感器,超声波范围传感器和红外传感器等。(一个或多个)传感器110可将传感器数据提供给(一个或多个)处理器102以允许机器人系统100与环境的适当交互。另外,如下面进一步讨论的,传感器数据可以用于评估用于提供反馈的各种因素。此外,机器人系统100还可以包括配置为向机器人系统100的各个部件供应动力的一个或多个动力源112。可以使用任何类型的动力源,例如汽油机(gasoline engine)或电池。
机器人系统100还可以包括一个或多个致动器114。致动器是可以用于引入机械运动的机构。特别地,致动器可以配置为将存储的能量转换为一个或多个部件的运动。可以使用各种机构来给致动器供以动力。例如,致动器可以由化学制品、压缩空气或电力等等来供以动力。在一些情况下,致动器可以是可在涉及旋转运动形式的系统(例如,机器人系统100中的关节)中使用的旋转致动器。在其他情况下,致动器可以是可以在涉及直线运动的系统中使用的线性致动器。
在任一种情况下,(一个或多个)致动器114都可以引起机器人系统100的(一个或多个)各种可移动部件116的移动。(一个或多个)可移动部件116可以包括诸如机器人臂、腿和/或手等附件(appendage)。(一个或多个)可移动部件116还可以包括可移动基座、轮子和/或末端执行器等等。
在一些实施方式中,计算系统(未示出)可以被联接到机器人系统100,并且可以配置为诸如经由图形用户界面来接收来自用户的输入。该计算系统可以并入机器人系统100内,或者可以是能够与机器人系统100(有线或无线)通信的外部计算系统。这样,机器人系统100可以例如基于图形用户界面处的用户输入和/或基于通过按压机器人系统100上的按钮(或触觉输入)接收到的用户输入等来接收信息和指令。
机器人系统100可以采取各种形式。为了说明,图2A和图2B示出了示例机器人臂200。如图所示,机器人臂200包括基座202,基座202可以是固定的基座或者可以是可移动的基座。在可移动基座的情况下,基座202可以被认为是(一个或多个)可移动部件116中的一个,并且可以包括由(一个或多个)致动器114供以动力的轮子(未示出),其允许整个机器人臂200移动。
另外,机器人臂200包括关节204A-204F,每个关节与(一个或多个)致动器114中的一个或多个联接。关节204A-204F中的致动器可以操作以引起(一个或多个)各个可移动部件116(诸如附件206A-206F和/或末端执行器208)的移动。例如,关节204F中的致动器可引起附件206F和末端执行器208的移动(即,由于末端执行器208联接到附件206F)。此外,末端执行器208可以采取各种形式并且可以包括各种部件。在一个示例中,末端执行器208可以采取诸如2-手指平行夹具之类的夹具的形式(如图2A所示)、不同类型的手指夹具的形式或诸如吸取夹具之类的不同类型的夹具的形式。在另一个示例中,执行器208B可以采取注射器的形式,如图2B所示,或者一些其他工具(例如钻孔器,刷子等)。注射器208B可具有位于注射器的针的末端处的关注的点210。在又一个示例中,末端执行器可以包括诸如力传感器、位置传感器和/或接近传感器的传感器。其他示例也是可能的。
在示例实施方式中,机器人系统100(例如机器人臂200)能够以示教模式进行操作。特别地,示教模式可以是机器人臂200的操作模式,其允许用户物理地与机器人臂200交互并引导机器人臂200执行和记录各种移动。在示教模式中,基于教导输入来向机器人系统100(例如由用户)施加外力,该教导输入旨在教导机器人系统关于如何执行特定任务。机器人臂200因此可以基于来自用户的指示和指导获得关于如何执行特定任务的数据。这样的数据可以涉及(一个或多个)可移动部件116的多个配置,关节位置数据,速度数据,加速度数据,扭矩数据,力数据和功率数据等。
例如,在示教模式期间,用户可以抓到机器人臂200的任何部分上,并通过物理地移动机器人臂200来提供外力。具体地,用户可以引导机器人臂200抓到对象上,然后将对象从第一位置移动到第二位置。当在示教模式期间用户引导机器人臂200时,系统可获得并记录与移动有关的数据,使得机器人臂200可配置为在独立操作期间的未来时间独立地执行任务(例如,当机器人臂200在示教模式之外独立操作)。但是,注意,外力也可以由物理工作空间中的其他实体来施加,例如通过其他对象,机器和/或机器人系统等。
在图2A和2B中,工具208(或工具208B)可以是附接到机器人臂200的夹具、注射器或一些其他类型的工具。工具208可以在附接点209处附接到臂200。附接点209表示工具208可以连接到机器人100的一部分(例如机器人臂200)的位置。机器人100可以知道附接点209的位置。可替代地,附接点209可以是机器人100部分已知或未知的。在一些实施例中,附接点209表示工具208可以附接到机器人100的不同部分的位置。
图2A显示了包括第一表面214和第二表面216的参考对象212。第一表面214和第二表面216以一定角度连接在一起以形成边缘218。表面214和216连同边缘218从机器人臂200的附件206A突出。图2A中的参考对象212可以包括比示出的更多或更少的表面。另外,参考对象212的表面可以以与图2A中所示的角度不同的角度连接。虽然参考对象的显示表面是平坦的,但是在其它实施例中,参考对象212的表面可以是不同的形状,例如凹的、凸的或其他形状。
图2B显示了包括平坦的第一表面214B的参考对象212B。参考对象212B位于距图2B中的机器人臂200的远程位置处。相反,图2A中的参考对象212在基座202处连接到机器人臂200。在其他实施例中,参考对象可以连接到机器人的不同部分,或者在不同位置连接到机器人臂200。
机器人100可以使用参考对象212(或212B)来确定工具208的工具偏移。在一些实施例中,机器人100可以自动识别参考对象。在其他实施例中,参考对象可被输入到机器人100中。参考对象可以是具有预定位置和取向的刚性结构(例如,木板)。可以相对于机器人100描述参考对象的位置和/或取向。
此外,参考对象的一个或多个表面可以以预定取向定位在预定位置。另外,参考对象的表面可以产生一个或多个边缘和一个或多个角度。关于参考对象、参考对象表面和参考对象边缘的取向、位置和/或角度的信息可被输入到机器人100中。相对于机器人的参考对象位置可以与机器人位置数据一起使用以确定工具偏移数据。
参考对象位置信息可以使用一个或多个尺寸来描述,诸如对于XYZ坐标系统的X方向上的第一尺寸、Y方向上的第二尺寸以及Z方向上的第三尺寸。在其他实施例中,可以将关于参考对象的其他信息输入到机器人100中。在一些实施例中,如果参考对象的位置和/或取向未知,则机器人100可以确定参考对象的位置和取向。
参考对象可以是位于不干涉机器人操作(例如机器人臂200的移动)的位置处的刚性结构。尽管参考对象可以是木板,但参考对象可以是不同的物品,诸如工具球。此外,参考对象可以包括一个或多个木板、一个或多个工具球或一些其他物品。其他类型的参考对象也是可能的。
机器人100可以执行一方法来确定在机器人臂200的诸如附接点209的位置处附接到机器人100的工具208的工具偏移。工具偏移可以描述附接点209与工具208上的至少一个点之间的距离。工具偏移可以表示为具有一个或多个尺寸的位置。例如,可以使用一个或多个尺寸来描述工具偏移,诸如对于XYZ坐标系的X方向上的第一尺寸、Y方向上的第二尺寸以及Z方向上的第三尺寸。其他尺寸,例如角度偏差θ也可以是可能的。
在一些情况下,机器人100可以基于附接点的已知位置来确定工具偏移数据,以确定工具上的关注点的位置。可替代地,机器人100可基于工具的已知几何形状来确定工具偏移数据,以确定附接点的更精确的位置。在这种情况下,一旦附接点的精确位置被确定,机器人100就可以基于所确定的附接点的精确位置来确定工具上的一个或多个关注点相对于机器人100的位置。
当新工具附接到机器人100的一部分(例如机器人臂200)时,机器人100可以执行确定工具偏移的方法作为自动启动程序。可替代地,工具偏移确定方法可以作为故障排除方法的一部分来执行。例如,如果在工具208的操作期间出现错误或意外的结果,则机器人100可以执行自动工具偏移确定方法来纠正错误和/或意外的结果。
甚至进一步,机器人100可以执行工具偏移确定方法作为自动维护过程。例如,由于之前使用的磨损和撕裂,弯曲,翘曲和/或其他原因,工具的尺寸可能随时间而变化。结果,周期性地执行工具偏移确定方法可以考虑到工具尺寸改变,使得机器人以精确和精准的工具偏移来操作工具208。在其它实施例中,由于其他原因,机器人100可以执行自动工具偏移确定方法。
自动工具偏移确定方法可以提供相比于手动输入工具偏移到机器人100中的若干改进。首先,自动方法可以比人工输入更精确和精准。其次,与手动输入相比,自动方法可以更快速、更有效率,并且用户执行的工作更少。第三,无论用户如何,自动程序可以是一致的工具偏移确定程序,而手动输入可能基于用户而变化。第四,自动工具偏移确定过程意味着用户不需要知道用于测量工具偏移的精确和精准的方法。通过执行用于确定工具偏移的自动程序也可以存在其他益处。
机器人100可以通过识别参考对象来开始执行工具偏移确定方法。接下来,机器人100可以移动机器人臂200以使参考对象212与工具208接触,并且在接触事件期间获得机器人位置数据和力感测数据。机器人100然后可以基于机器人位置数据来确定工具偏移数据的一部分。机器人100可以通过反复地产生接触事件并且在接触事件期间获取机器人位置数据和力感测数据来继续确定工具偏移数据的附加部分。工具偏移数据的所确定的部分然后可以用于确定一个或多个关注点相对于机器人的位置。然后可基于关注点的位置来确定一个或多个尺寸和/或工具偏移。所确定的尺寸和关注点可以基于工具类型(例如夹具,注射器,钻头,刷子等)而变化。
图3A显示示例工具208(来自图2A)和参考对象212(包括表面214和216以及边缘218)的俯视图300。图3B显示了同一示例工具208(来自图2A)和参考对象212的侧视图350。工具208是2指平行夹具。在所显示的实施例中,针对可被计算以确定各种尺寸和/或工具偏移的夹具显示各种关注点。
在图3A和3B所示的实施例中,夹具208包括第一手指301、第二手指302、连接部分303和附接点209。夹具208沿致动方向304朝向参考对象212移动。可以计算出的夹具的尺寸中的一些包括外部宽度尺寸305、内部宽度尺寸306、外部长度尺寸307、内部长度尺寸308和高度尺寸309。夹具208可以具有被计算的其他尺寸。
第一手指301包括内表面311、外表面312和顶表面313。类似地,第二手指302包括内表面321、外表面322、顶表面323以及底表面324。此外,连接部分303包括内表面331、外表面332和顶表面333。每个手指和/或连接部分可以包括比上述那些更多和/或不同的表面。
夹具208还包括各个关注点。关注点包括第一手指301的第一点341,第一手指301的第二点343,第二手指302的第一点342,第二手指302的第二点344以及第二手指302的第三点348。连接部分303还包括用于夹具208的第一点345,第二点346和第三点347。夹具208的其他关注点也是可能的。
对于第一手指301,第一点341位于第一手指301的顶表面313与内表面311相交的拐角处。第二点343位于第一手指301的顶表面313与外表面312相交的拐角处。对于第二手指302,第一点342位于顶表面323与内表面321相交的拐角处。第二点344位于第二手指302的顶表面323与外表面322相交的拐角处。第三点348位于第二手指302的外表面322和底表面324相交的拐角处。
对于连接部分303,第一点345位于连接部分303的内表面331与第一手指301的内表面311沿连接部分303的顶表面333相交的拐角处。第二点346位于连接部分303的内表面331与第二手指302的内表面321沿着连接部分303的顶表面333相交的拐角处。第三点347位于第二手指302的外表面322与连接部分303的外表面332沿着连接部分303的顶表面333相交的拐角处。
为了执行夹具208的精确和精准的控制,机器人100可以基于夹具208的各个关注点来确定尺寸和工具偏移。例如,尺寸305-309可以由机器人100基于一个或多个关注点341-348来确定。特别地,外部宽度尺寸305可以基于点343和344的位置来确定。内部宽度尺寸306可以基于点341和342(或345和346)的位置来计算。外部长度尺寸307可以基于点344和347的位置来确定。内部手指长度尺寸308可以基于点341和345(或者点342和346)来确定。高度尺寸309可以基于点344和348的位置来确定。每个点的位置可以由机器人100通过针对关注点执行工具偏移确定方法来确定。
图3A和3B包括显示XYZ坐标系的X,Y和Z方向的图例351和352。在显示的实施例中,宽度尺寸305和306可以描述沿着X方向的距离。另外,长度尺寸307和308可以描述沿着Y方向的距离。此外,致动方向304也可以沿着Y方向。而且,高度尺寸309可以描述沿着Z方向的距离。然而,在其他实施例中,尺寸可以描述沿着不同方向的距离。
作为用于确定工具偏移的自动过程的一部分,机器人100可以通过使工具208接触参考对象212来控制工具208以产生一个或多个接触事件。当连接到机器人100的工具208移动使得工具208接触参考对象212时发生接触事件。在接触事件期间,机器人100可以收集包括机器人位置数据、力感测数据和/或其他信息的数据。机器人100可以移动工具208以一次或多次接触参考对象212,包括至少第一接触事件。
当工具208接触参考对象212时,机器人可以停止工具208的移动,从而允许工具208保持与参考对象212接触并收集数据。机器人100然后可以将工具208移动到工具208不再与参考对象212接触的位置。接触事件在工具208首先连续接触参考对象212时开始,并且当与参考对象212的连续接触停止时结束。然而,在其他实施例中,接触事件可以被不同地定义。
机器人100通过力反馈传感器获取力感测数据。力反馈传感器可以在附接点209处位于机器人上,或机器人100上的某些其他位置处。力反馈传感器用于提供工具208何时与参考对象212接触的指示。传感器可以被设计成对传感器引起的力敏感,使得可以对接触事件进行精确和精准的测量。接触事件的精确和精准的测量使得机器人能够确定精确和精准的工具偏移,这进而使得能够精确和精准地控制工具208。
一旦力反馈传感器接收到指示工具208与参考对象212接触的数据,则传感器允许机器人100在机器人100收集数据的同时停止工具208的移动。通过暂停机器人的移动,力传感器有助于防止工具208、参考对象212、机器人100和机器人臂200由于重复或过度的接触而引起任何额外的损害。
在替代实施例中,接触事件的指示可以与接触事件电路被连接(或断开)相对应。具体而言,当工具208接触参考对象212时,可以连接(或断开)接触事件电路。因此,接触事件电路被进行(或断开)的指示可对应于由工具208接触参考对象212开始的接触事件。当接触事件结束时(即,工具208不再与参考对象212接触),接触事件电路可以返回到其打开(或闭合)的原始状态。用于确定接触事件的其他实施例也是可能的。
在接触事件期间,机器人100还可以获得指示接触事件期间机器人的位置的机器人位置数据。机器人位置数据可以基于接触事件期间机器人的编码关节角度来确定。编码的关节角度和/或其他信息可以允许确定机器人100、机器人臂200、附接点209或机器人的其他部分的位置、定位和/或取向。为了获得机器人位置数据,可以使用附接到机器人100的IMU传感器。机器人位置数据可以与参考对象相对于机器人的位置结合使用,以确定一部分工具偏移数据。
通过生成一个或多个接触事件,可以针对工具208确定一部分工具偏移数据。可以基于所获取的机器人位置数据、参考对象相对于机器人的位置以及在一些情况下之前确定的工具偏移数据来确定工具偏移数据。其他因素也可能影响工具偏移数据的确定。
外部长度尺寸307可以使用点344和347相对于附接点209的工具偏移数据来确定。在所示实施例中,附接点209的位置由机器人100已知。附接点209可以大致位于连接部分303的外表面332的中心处。另外,参考对象212、表面214和216以及边缘218的位置和取向由机器人100已知。因此,可以基于附接点209和参考对象212的已知位置和取向来确定点344和347的工具偏移数据。
点的工具偏移数据可被描述为相对于附接点209在XYZ坐标系上的点(X,Y,Z)。点的工具偏移数据确定可包括确定特定点相对于附接点209的三个工具偏移尺寸(X,Y和Z)中的每一个。特定点相对于附接点的工具偏移尺寸可以通过将夹具取向使得沿着致动方向304移动夹具以产生允许基于机器人位置数据计算工具偏移尺寸的接触事件来确定。
例如,确定点347的工具偏移数据包括确定点347相对于附接点209的工具偏移尺寸X,Y和Z。点347的工具偏移X尺寸可以通过沿着方向304移动夹具208使得在接触事件期间第二手指302的外表面322接触参考对象212的边缘218来确定。此外,点347的工具偏移Y尺寸可通过沿方向304移动夹具208使得在接触事件期间连接部分303的外表面332接触参考对象212的边缘218来确定。此外,点347的工具偏移Z尺寸可以通过沿着方向304移动夹具208使得在接触事件期间第二手指302的顶表面323接触参考对象212的边缘218来确定。
可以在接触事件期间计算特定点的工具偏移尺寸X,Y和Z。具体地,对于其中夹具沿着与Y方向对应的方向304移动的接触事件,可以基于参考对象位置、附接点位置和夹具208与参考对象接触的部分来确定特定工具偏移尺寸。具体而言,工具偏移尺寸的大小等于接触事件期间参考对象和附接点的位置在Y坐标上的差异。确定的特定尺寸取决于在接触事件期间夹具的哪个表面接触参考对象212。
例如,对于点347,在第二手指302的外表面322接触参考对象212的边缘218的接触事件期间计算工具偏移X尺寸。工具偏移X尺寸的大小等于接触事件期间边缘218和附接点209的位置的Y坐标的差异。机器人100可以在接触事件期间确定附接点209的位置。在一些实施例中,附接点209的位置基于接触事件期间的编码的关节角度来确定。如前所述,机器人100已经知道参考对象212(包括边缘218)的位置。在该接触事件期间,Y坐标的差异等于外部宽度尺寸305的一半(即W/2)。因此,点347相对于附接点209的工具偏移X尺寸是W/2。
另外,在连接部分303的外表面332接触参考对象212的边缘218的接触事件期间计算工具偏移Y尺寸。在该接触事件期间,参考对象212的边缘218和附接点209的Y坐标的差异等于零。因此,点347相对于附接点209的工具偏移Y尺寸是零。
另外,在第二手指302的顶表面323接触参考对象212的边缘218的接触事件期间计算工具偏移Z尺寸。在该接触事件期间,参考对象212的边缘218和附接点209的Y坐标上的差异等于夹具208的高度309的一半(即H/2)。因此,点247相对于附接点209的工具偏移Z尺寸是H/2。因此,点347相对于附接点209的工具偏移数据等于(W/2,0,H/2)。
可以以类似于上述点347的工具偏移数据确定的方式确定点344相对于附接点209的工具偏移数据。一旦确定了点344和347的工具偏移数据,就可以计算出夹具208的外部长度尺寸307。类似地,可以相对于附接点209确定其他关注点341-348的工具偏移数据。然后可以使用计算出的工具偏移数据来确定夹具尺寸305-309。
在一些实施例中,机器人100可以在开始接触事件之前用工具208搜索参考对象212。机器人100可以基于已知的参考对象的位置和取向来移动工具208以搜索参考对象。一旦机器人100已经用工具208搜索、找到并且接触参考对象212,则接触事件可以开始。
例如,当机器人正在确定点347相对于附接点209的工具偏移数据时,机器人100可以控制工具208在边缘218处接触参考对象212。然而,工具可能最初在表面214或216处接触参考对象212。因此,机器人100可能必须控制工具208来搜索边缘218。
因为机器人100知道参考对象212的位置和取向,所以机器人100可以通过沿着表面214和/或216移动工具208来搜索边缘218,直到找到边缘218。一旦机器人100感测到表面214与表面216之间的角度过渡,机器人100就知道边缘218已被找到。一旦机器人接触边缘218,接触事件就可以开始。机器人可以在移动工具以与边缘218结束接触之前收集机器人位置数据和力感测数据。工具208的其他类型的搜索也是可能的。
因为参考对象212包括成角度的表面214和216,所以机器人可以使用不同类型的接触事件来确定工具偏移数据。例如,机器人100可控制夹具218在参考对象212的两个点处产生一个接触事件,以确定夹具的特定尺寸。具体地,机器人臂200可以通过移动夹具208以使得同时点341接触表面214并且点342接触表面216来产生接触事件。在此接触事件期间,机器人100可获得机器人位置数据以确定夹具208的内部宽度尺寸306。
夹具208初始可以沿方向304朝向参考对象212移动。在夹具208接触参考对象212之后,夹具可搜索参考对象,使得同时点341接触表面214并且点342接触表面216。特别地,夹具208可以使夹具208围绕参考对象212移动,直到适当的点接触适当的表面。一旦同时点341接触表面214并且点342接触表面216,则机器人100可以停止夹具208的移动并且获得机器人位置数据。
所获得的机器人位置数据可以与已知的参考对象位置和取向结合使用,以确定夹具208的内部宽度尺寸306。具体地,机器人位置数据可以依赖编码的关节角度来在接触事件期间确定附接点209的位置。基于确定的附接点位置、参考对象位置和取向、以及之前获得的工具偏移数据(例如,夹具208的外部长度尺寸307),机器人然后可以确定在与表面214接触期间点341的位置以及在与表面216接触期间点342的位置。使用这些确定的位置,机器人然后可以计算夹具208的内部宽度尺寸306。在其他实施例中,机器人100可以使用不同的工具偏移确定方法来获得不同的工具偏移数据。
用于工具偏移确定的关注点取决于附接到机器人100的工具208的类型。例如,在图2B中,机器人100的机器人臂200显示为利用注射器作为末端执行器208B。与2指平行夹具不同,注射器的关注点210是针的尖端。机器人100可以执行工具偏移确定方法以确定点210相对于附接点209的位置。针对点210的工具偏移数据的确定允许机器人100精确和精准地控制注射器208B。
机器人100可使用类似于针对点347所描述的方法来确定注射器208B的点210的工具偏移数据。具体而言,相对于附接点209确定点210的工具偏移数据。针对点210相对于附接点209确定工具偏移尺寸X,Y和Z。虽然注射器208的针不具有像夹具208的表面,但是机器人臂200可以旋转到合适的取向以允许注射器针的不同部分在接触事件期间接触参考对象212,使得可以针对点210测量工具偏移尺寸X,Y和Z。其他工具类型和关注点也可以用于工具偏移数据确定。
在其他实施例中,机器人可以反复地产生多个接触事件以连续获得工具的工具偏移数据。在一个实施例中,机器人反复地产生足够的接触事件以对足够的关注点确定足够的工具偏移数据以生成所附接的工具的3D模型。工具偏移确定方法的其他实施例也是可能的。
图4示出了根据示例实施例的示出可以允许确定工具偏移的方法400的流程图。方法400可以由机器人执行,诸如关于图1示出和描述的机器人。然而,不同于图1中描述的机器人的机器人控制系统或一些其他装置也可以执行方法400。
此外,注意到,结合本文描述的流程图描述的功能可以被实现为特定功能和/或配置的通用功能硬件模块,由处理器执行的用于实现特定逻辑功能、确定和/或结合图4所示的流程图描述的步骤的程序代码的部分。在使用的情况下,程序代码可以存储在任何类型的计算机可读介质上,例如包括磁盘或硬盘驱动器的存储设备。
此外,图4中所示的流程图的每个框可以表示被连线(wire)以在过程中执行特定逻辑功能的电路。除非特别指出,取决于所涉及的功能,图4所示的流程图中的功能可以与所示出或讨论的顺序无关地执行,包括基本上同时执行单独描述的功能,或者甚至在一些示例中以相反的顺序执行,只要所述方法的整体功能得以保持。
如图4的框402所示,方法400可以涉及确定参考对象相对于机器人的位置。在一些示例中,参考对象可以是具有一个或多个平坦表面的刚性结构。在另外的示例中,参考对象可以在距机器人的远程位置处,或者附接到机器人。
方法400可进一步涉及控制机器人,使得在第一接触事件期间,在附接点处连接到机器人的工具接触参考对象,如图4的框404所示。在一些示例中,连接到机器人的工具可以是2指平行夹具、注射器、钻头、刷子或一些其他工具。在另外的示例中,附接点位置可以是机器人已知的、部分已知的或未知的。
方法400还可以涉及接收指示当工具在第一接触事件期间接触参考对象时机器人的位置的机器人位置数据,如图4的框406所示。在一些示例中,机器人位置数据可以基于在第一接触事件期间机器人的编码的关节角度来确定。在另外的示例中,编码的关节角度可以用于确定机器人和/或机器人部件的位置、定位或取向。
方法400可以另外涉及至少基于参考对象相对于机器人的位置和机器人位置数据来确定工具的工具偏移数据,其中工具的工具偏移数据描述附接点与工具上的至少一个点之间的距离,如图4的框408所示。在一些示例中,工具偏移数据可以基于工具上的关注点和附接点之间的距离来描述工具的尺寸(例如,工具长度)。在另外的示例中,对于可以确定工具偏移数据的工具,例如2指平行夹具,可以存在多个关注点。在进一步的示例中,可以只有一个确定工具偏移数据的关注点,例如注射器。在另外的示例中,确定工具偏移数据的注射器的关注点可以是注射器的针的末端。
使用具有附接工具的机器人的各种应用和环境对于所公开的系统和方法是可能的。例如,可以适用具有附接工具机器人的工具偏移确定的一些环境包括制造设施、邮寄或运输(shipping)设施、机场、医院或其他使用具有附接工具的机器人的环境。此外,具有附接工具的机器人的工具偏移确定可以适用的其他应用包括建筑、运输、制造、y医疗和/或使用具有附接工具的机器人的其它应用。所公开的系统和方法的其他可适用的环境和应用也是可能的。
本公开不受在本申请中描述的特定实施例的限制,其旨在作为各个方面的说明。对于本领域技术人员来说显而易见的是,在不脱离本公开的精神和范围的情况下可以进行许多修改和变型。根据前面的描述,除本文列举的那些之外,在本公开的范围内的功能上等同的方法和设备对于本领域技术人员将是显而易见的。这样的修改和变型旨在落入所附权利要求的范围内。
上述详细描述参考附图描述所公开的系统、装置和方法的各种特征和功能。在附图中,相似的符号通常标识相似的组件,除非另有说明。这里和附图中描述的示例实施例并不意味着限制。可以使用其它实施例,并且可以进行其它改变,而不脱离本文给出的主题的精神和范围。将容易理解的是,如本文大体描述并且在附图中示出的本发明的各方面可以以各种各样的不同配置布置、取代、组合、分离和设计,在本文中所有这些都被明确地设想。
表示信息处理的框可对应于可被配置为执行本文描述的方法或技术的特定逻辑功能的电路。可选地或附加地,表示信息处理的框可对应于程序代码(包括相关数据)的模块、段或一部分。程序代码可以包括可由处理器执行的一个或多个指令,用于实现该方法或技术中的特定逻辑功能或动作。程序代码和/或相关数据可以存储在任何类型的计算机可读介质上,例如包括磁盘或硬盘驱动器或其他存储介质的存储设备。
计算机可读介质还可以包括诸如类似寄存器存储器、处理器高速缓存和随机存取存储器(RAM)等存储数据持续短时间段的计算机可读介质的非暂时性计算机可读介质。计算机可读介质还可以包括存储程序代码和/或数据持续更长时间段的非暂时性计算机可读介质,诸如类似只读存储器(ROM)、光盘或磁盘、压缩盘只读存储器(CD-ROM)等的二级或持久长时间存储器。计算机可读介质也可以是任何其它易失性或非易失性存储系统。例如,计算机可读介质可以被认为是计算机可读存储介质或有形存储设备。
而且,表示一个或多个信息传输的框可对应于同一物理设备中的软件和/或硬件模块之间的信息传输。然而,其他信息传输可以在不同物理设备中的软件模块和/或硬件模块之间。
图中所示的具体布置不应视为限制。应该理解,其他实施例可以包括给定图中所示的每个元件中的更多或更少的元件。此外,可以组合或省略所示出的元件中的一些。另外,示例实施例可以包括图中未示出的元件。
虽然本文已经公开了各种方面和实施例,但是其他方面和实施例对于本领域技术人员将是显而易见的。本文公开的各个方面和实施例是为了说明的目的,而不是旨在限制,其真实范围由所附权利要求指示。

Claims (17)

1.一种用于确定工具偏移的方法,包括:
基于机器人上的参考对象的已知位置,使机器人朝向机器人上的参考对象移动工具,其中所述工具在附接点处连接到机器人;
确定工具在第一接触事件期间接触机器人上的参考对象;
接收在所述第一接触事件期间所述工具接触机器人上的所述参考对象时指示所述机器人的位置的机器人位置数据;以及
至少基于机器人上的所述参考对象的位置和所述机器人位置数据来确定所述工具的工具偏移数据,其中,所述工具的工具偏移数据描述所述附接点与所述工具上的至少一个点之间的距离。
2.根据权利要求1所述的方法,其中,所述参考对象是在预定取向和预定位置处的具有第一平坦表面的木板,其中,所述工具在第一接触事件期间接触所述木板的所述第一平坦表面。
3.根据权利要求1所述的方法,其中,所述参考对象具有第一平坦表面和第二平坦表面,其中,所述第一平坦表面被定位为与所述第二平坦表面成一角度。
4.根据权利要求1所述的方法,其中,所述工具偏移数据包括在第一方向上的第一距离、在与所述第一方向垂直的第二方向上的第二距离以及在与所述第一方向和所述第二方向都垂直的第三方向上的第三距离。
5.根据权利要求1所述的方法,还包括:
控制机器人,使得在第二接触事件期间,所述工具接触所述参考对象;
接收在所述第二接触事件期间所述工具接触所述参考对象时指示所述机器人的位置的机器人位置数据;以及
至少基于机器人上的所述参考对象的位置、在第一接触事件期间接收到的机器人位置数据以及在第二接触事件期间接收到的机器人位置数据来确定所述工具的工具偏移数据。
6.根据权利要求1所述的方法,还包括:
通过使所述工具接触所述参考对象来反复地引起对应于多个不同机器人位置的多个接触事件;
接收对应于所述多个接触事件的指示所述多个不同机器人位置的机器人位置数据;以及
基于接收到的机器人位置数据确定所述工具的三维模型。
7.根据权利要求1所述的方法,还包括:
从机器人上的力传感器接收力感测数据;
基于所述力感测数据,确定所述机器人已经用所述工具接触所述参考对象;以及
响应于确定所述机器人已经用所述工具接触所述参考对象,使所述机器人停止移动所述工具。
8.根据权利要求1所述的方法,还包括:
至少基于工具上的至少一个点的工具偏移数据来确定工具的形状;以及
基于所确定的工具形状确定所述工具的工具类型。
9.根据权利要求1所述的方法,其中,所述机器人位置数据至少基于机器人的编码的关节角度来确定。
10.一种非暂时性计算机可读介质,其存储能够由一个或多个计算设备执行的指令,其中,执行所述指令使得所述一个或多个计算设备执行包括以下的功能:
基于机器人上的参考对象的已知位置,使机器人朝向机器人上的参考对象移动工具,其中所述工具在附接点处连接到机器人;
确定工具在第一接触事件期间接触机器人上的参考对象;
接收在所述第一接触事件期间所述工具接触机器人上的所述参考对象时指示所述机器人的位置的机器人位置数据;以及
至少基于机器人上的所述参考对象的位置和所述机器人位置数据来确定所述工具的工具偏移数据,其中,所述工具的工具偏移数据描述所述附接点与所述工具上的至少一个点之间的距离。
11.根据权利要求10所述的非暂时性计算机可读介质,其中,所述参考对象是在预定取向和预定位置处的具有第一平坦表面的木板,其中,所述工具在第一接触事件期间接触所述木板的所述第一平坦表面。
12.根据权利要求10所述的非暂时性计算机可读介质,其中,所述参考对象具有第一平坦表面和第二平坦表面,其中,所述第一平坦表面被定位为与所述第二平坦表面成一角度。
13.根据权利要求10所述的非暂时性计算机可读介质,其中,所述机器人位置数据至少基于所述机器人的编码的关节角度来确定。
14.一种用于确定工具偏移的系统,包括:
处理器;以及
存储器,其存储指令,所述指令在由所述处理器执行时使所述系统执行包括以下的功能:
基于机器人上的参考对象的已知位置,使机器人朝向机器人上的参考对象移动工具,其中所述工具在附接点处连接到机器人;
确定工具在第一接触事件期间接触机器人上的参考对象;
接收在所述第一接触事件期间所述工具接触机器人上的所述参考对象时指示所述机器人的位置的机器人位置数据;以及
至少基于机器人上的所述参考对象的位置和所述机器人位置数据来确定所述工具的工具偏移数据,其中,所述工具的工具偏移数据描述所述附接点与所述工具上的至少一个点之间的距离。
15.根据权利要求14所述的系统,其中,所述参考对象是在预定取向和预定位置处的具有第一平坦表面的木板,其中,所述工具在第一接触事件期间接触所述木板的所述第一平坦表面。
16.根据权利要求14所述的系统,其中,所述存储器存储由所述处理器执行时还使所述系统执行以下功能的指令:
确定所述机器人的接触电路的状态已经改变;
基于所确定的状态改变,确定所述机器人已经用所述工具接触所述参考对象;以及
响应于确定所述机器人已经用所述工具接触所述参考对象,使机器人停止移动所述工具。
17.根据权利要求14所述的系统,其中,所述机器人位置数据至少基于所述机器人的编码的关节角度来确定。
CN201680042904.8A 2015-07-23 2016-07-25 用于确定工具偏移的系统和方法 Active CN107924174B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/807,434 2015-07-23
US14/807,434 US10016892B2 (en) 2015-07-23 2015-07-23 System and method for determining tool offsets
PCT/US2016/043836 WO2017015655A1 (en) 2015-07-23 2016-07-25 System and method for determining tool offsets

Publications (2)

Publication Number Publication Date
CN107924174A CN107924174A (zh) 2018-04-17
CN107924174B true CN107924174B (zh) 2020-11-10

Family

ID=56684249

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680042904.8A Active CN107924174B (zh) 2015-07-23 2016-07-25 用于确定工具偏移的系统和方法

Country Status (5)

Country Link
US (2) US10016892B2 (zh)
EP (1) EP3326037B1 (zh)
JP (1) JP6663978B2 (zh)
CN (1) CN107924174B (zh)
WO (1) WO2017015655A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10016892B2 (en) * 2015-07-23 2018-07-10 X Development Llc System and method for determining tool offsets
WO2018013344A1 (en) * 2016-07-14 2018-01-18 Siemens Healthcare Diagnostics Inc. Methods and apparatus to calibrate a positional orientation between a robot gripper and a component
JP6860843B2 (ja) * 2017-02-20 2021-04-21 株式会社安川電機 ロボットシステム、ロボット制御装置、及びロボット制御方法
JP7013766B2 (ja) * 2017-09-22 2022-02-01 セイコーエプソン株式会社 ロボット制御装置、ロボットシステム、及び制御方法
JP6687581B2 (ja) 2017-11-24 2020-04-22 ファナック株式会社 水平多関節型ロボットの校正システムおよび校正方法
US11623366B2 (en) * 2017-12-15 2023-04-11 Rolls-Royce Corporation Tooling inserts for ceramic matrix composites
DE102018125840B4 (de) 2018-10-18 2021-07-22 Megatron Elektronik Gmbh & Co. Kg Tool Center Point
WO2021147037A1 (en) * 2020-01-22 2021-07-29 Abb Schweiz Ag Method and electronic device, system and computer readable medium for calibration

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998057782A1 (en) * 1997-06-13 1998-12-23 Jan Paul Huissoon Method and device for robot tool frame calibration
JP3457651B2 (ja) * 2001-06-05 2003-10-20 大阪機工株式会社 作業用ロボット
JP2005170290A (ja) * 2003-12-12 2005-06-30 Nissan Motor Co Ltd 障害物検出装置
WO2006086021A3 (en) * 2004-10-25 2007-03-15 Univ Dayton Method and system to provide improved accuracies in multi-jointed robots through kinematic robot model parameters determination
CN1951642A (zh) * 2005-10-17 2007-04-25 新日本工机株式会社 并联运动装置、并联运动装置的校准方法及校准程序产品
CN101090781A (zh) * 2004-10-26 2007-12-19 古德尔集团股份公司 用于输送冲压机中工件的传送系统
CN101298984A (zh) * 2007-05-04 2008-11-05 六边形度量衡股份公司 坐标测量方法及装置
DE102008021050A1 (de) * 2008-04-26 2009-10-29 Mtu Aero Engines Gmbh Verfahren und Vorrichtung zur automatisierten Lagekorrektur
CN102015221A (zh) * 2008-04-30 2011-04-13 Abb技术有限公司 用于确定机器人坐标系与位于机器人工作范围内的本地坐标系之间的关系的方法和系统
CN102689118A (zh) * 2012-02-03 2012-09-26 昆山工研院工业机器人研究所有限公司 实现焊接机器人工具中心点自动偏移的方法及系统
CN103658966A (zh) * 2012-09-04 2014-03-26 株式会社F.泰克 摩擦搅拌接合装置
CN104739487A (zh) * 2013-12-30 2015-07-01 颜炳郎 骨科手术的手持式机器人以及其控制方法

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS609678A (ja) * 1983-06-27 1985-01-18 松下電器産業株式会社 多関節ロボツトの工具補正方法
JPS61133411A (ja) * 1984-11-30 1986-06-20 Fanuc Ltd 数値制御装置の移動距離測定器
US4740904A (en) 1985-11-01 1988-04-26 Nagle John B Line following system and process
JPH01257593A (ja) 1988-04-06 1989-10-13 Hitachi Ltd ロボットの芯ずれ補正方法
JP2700965B2 (ja) 1991-07-04 1998-01-21 ファナック株式会社 自動キャリブレーション方式
JPH06320453A (ja) * 1993-05-13 1994-11-22 Fanuc Ltd 産業用ロボットの位置決め装置
JPH0970780A (ja) 1995-09-06 1997-03-18 Fanuc Ltd ロボットのツール形状補正方式
JPH0976178A (ja) * 1995-09-12 1997-03-25 Hitachi Ltd ロボット制御装置
GB9603426D0 (en) 1996-02-19 1996-04-17 Western Atlas Uk Ltd Improved monitoring system for workpiece and tool carriage movement
US5929584A (en) 1998-04-27 1999-07-27 Pht, Inc. Tool center point calibration apparatus and method
US6606774B2 (en) 2001-10-25 2003-08-19 Abb, Inc. (Flexible Automation Division) Combination tool for robot assisted assembly
AU2003235693A1 (en) 2002-01-15 2003-07-30 Johannes Kemp Calibration device and method for calibrating a working point of tools for industrial robots
EP1474271A1 (en) * 2002-01-31 2004-11-10 Abb Research Ltd. Robot machining tool position and orientation calibration
US7684895B2 (en) * 2002-08-31 2010-03-23 Applied Materials, Inc. Wafer loading station that automatically retracts from a moving conveyor in response to an unscheduled event
KR20060015557A (ko) 2003-04-28 2006-02-17 스티븐 제임스 크램톤 외골격을 구비한 cmm 암
JP3733364B2 (ja) * 2003-11-18 2006-01-11 ファナック株式会社 教示位置修正方法
US8122846B2 (en) 2005-10-26 2012-02-28 Micronic Mydata AB Platforms, apparatuses, systems and methods for processing and analyzing substrates
JP4291382B2 (ja) 2007-07-31 2009-07-08 ファナック株式会社 接触検知による取り付け誤差の自動補正機能を有する工作機械
JP5235376B2 (ja) 2007-10-05 2013-07-10 川崎重工業株式会社 ロボットのターゲット位置検出装置
CN102216860B (zh) * 2008-11-25 2013-07-24 Abb技术有限公司 用于标定工业机器人系统的方法和设备
JP2010152550A (ja) 2008-12-24 2010-07-08 Canon Inc 作業装置及びその校正方法
US8406922B2 (en) 2009-07-31 2013-03-26 Fanuc Robotics America, Inc. System and method for setting the tool center point of a robotic tool
JP4795462B2 (ja) * 2009-11-12 2011-10-19 ファナック株式会社 力センサを搭載したロボットマニピュレータを用いたロールヘム加工装置
EP2547490B1 (en) 2010-03-18 2014-01-08 ABB Research Ltd. Calibration of a base coordinate system for an industrial robot
JP2014176943A (ja) 2013-03-15 2014-09-25 Yaskawa Electric Corp ロボットシステム、校正方法及び被加工物の製造方法
JP6473919B2 (ja) * 2013-06-24 2019-02-27 パナソニックIpマネジメント株式会社 マスタスレーブロボットの制御装置及び制御方法、ロボット、マスタスレーブロボットの制御プログラム、並びに、マスタスレーブロボットの制御用集積電子回路
CN104608128A (zh) * 2013-11-01 2015-05-13 精工爱普生株式会社 机器人、控制装置、机器人系统、以及机器人控制方法
JP2016185572A (ja) * 2015-03-27 2016-10-27 セイコーエプソン株式会社 ロボット、ロボット制御装置およびロボットシステム
US10016892B2 (en) * 2015-07-23 2018-07-10 X Development Llc System and method for determining tool offsets

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998057782A1 (en) * 1997-06-13 1998-12-23 Jan Paul Huissoon Method and device for robot tool frame calibration
JP3457651B2 (ja) * 2001-06-05 2003-10-20 大阪機工株式会社 作業用ロボット
JP2005170290A (ja) * 2003-12-12 2005-06-30 Nissan Motor Co Ltd 障害物検出装置
WO2006086021A3 (en) * 2004-10-25 2007-03-15 Univ Dayton Method and system to provide improved accuracies in multi-jointed robots through kinematic robot model parameters determination
CN101090781A (zh) * 2004-10-26 2007-12-19 古德尔集团股份公司 用于输送冲压机中工件的传送系统
CN1951642A (zh) * 2005-10-17 2007-04-25 新日本工机株式会社 并联运动装置、并联运动装置的校准方法及校准程序产品
CN101298984A (zh) * 2007-05-04 2008-11-05 六边形度量衡股份公司 坐标测量方法及装置
DE102008021050A1 (de) * 2008-04-26 2009-10-29 Mtu Aero Engines Gmbh Verfahren und Vorrichtung zur automatisierten Lagekorrektur
CN102015221A (zh) * 2008-04-30 2011-04-13 Abb技术有限公司 用于确定机器人坐标系与位于机器人工作范围内的本地坐标系之间的关系的方法和系统
CN102689118A (zh) * 2012-02-03 2012-09-26 昆山工研院工业机器人研究所有限公司 实现焊接机器人工具中心点自动偏移的方法及系统
CN103658966A (zh) * 2012-09-04 2014-03-26 株式会社F.泰克 摩擦搅拌接合装置
CN104739487A (zh) * 2013-12-30 2015-07-01 颜炳郎 骨科手术的手持式机器人以及其控制方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Method of offset surface generation based on configuration space;H. Tokunaga;《Proceedings of 1995 IEEE International Conference on Robotics and Automation》;20020806;第2740-2745页 *
一种弧焊机器人工具标定方法;刘蕾;《自动化与仪器仪表》;20140930;第76-77页 *

Also Published As

Publication number Publication date
US20170021495A1 (en) 2017-01-26
WO2017015655A1 (en) 2017-01-26
CN107924174A (zh) 2018-04-17
US10583555B2 (en) 2020-03-10
JP2018526727A (ja) 2018-09-13
EP3326037B1 (en) 2022-08-31
EP3326037A1 (en) 2018-05-30
US20180281175A1 (en) 2018-10-04
JP6663978B2 (ja) 2020-03-13
US10016892B2 (en) 2018-07-10

Similar Documents

Publication Publication Date Title
CN107924174B (zh) 用于确定工具偏移的系统和方法
JP6661001B2 (ja) ワークオフセットを決定するシステムおよび方法
US9919416B1 (en) Methods and systems for providing feedback during teach mode
JP6806935B2 (ja) 再帰反射多軸力トルクセンサー
JP6906508B2 (ja) センサ装置、および、当該センサ装置を備えたロボットシステム
US20150127141A1 (en) Robot, control device, robot system and robot control method
US10059001B2 (en) Robot control device, robot system, and robot
US9919422B1 (en) Methods and systems to provide mechanical feedback during movement of a robotic system
US9869597B1 (en) Compound strain gage carrier for multi-axis force/torque sensing
US9981379B1 (en) Detachable support member for robot gripper
KR20180132964A (ko) 로봇 디바이스를 위한 스프링식 웜 파지기
JP6208724B2 (ja) 物体の姿勢算出システム
JP6661925B2 (ja) 制御装置、ロボットおよびロボットシステム
US10150218B2 (en) Automated digit interchange
Back et al. Control a contact sensing finger for surface haptic exploration
JP5942720B2 (ja) 状態判別方法、ロボット、制御装置、及びプログラム
Choi et al. Kinesthetic sensing of hole position by 3-finger gripper
WO2023013699A1 (ja) ロボット制御装置、ロボット制御システム、及びロボット制御方法
JPH04343691A (ja) ロボットハンドの制御方法

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