具有移动指令的机器人程序的策略限制执行的制作方法

文档序号:32683039发布日期:2022-12-24 05:52阅读:109来源:国知局
具有移动指令的机器人程序的策略限制执行的制作方法

1.本公开涉及工业机器人领域,尤其涉及一种机器人控制器,其被配置为应用将机器人程序的执行限制到其包含与机器人操纵器的未验证位置相关的移动指令的程度的策略。


背景技术:

2.除了老化和磨损之外,工业机器人在操作期间还面临突然损坏的风险。机器人操纵器的结构部件和驱动部件以及其工具或工件可能由于不准确的定位和定向、较差的抓握、不利的摩擦条件以及甚至碰撞而损坏。这种损坏可能与随机性质的因素(包括由于机器人的逐渐磨损而引起的公差、间隙和其它偏差)以及确定性因素(例如编程误差)有关。程序员(也是有经验的专业人员)可能发现难以完全掌握复杂的或变化的工作环境。此外,即使正确地理解要执行的任务,良好的编程实践也可以包括避免会降低机器人效率和性能的过大安全裕度。
3.申请人的在先申请us 20150190926a1公开了一种用于多个交互机器人的离线编程的系统。该系统可用于在执行机器人程序的计算机模拟中验证一个或多个机器人路径。系统中的例程模拟用于验证机器人程序代码的至少一个机器人路径。该验证可用于评估某些虚拟对象的不同位置,并检测移动对象之间的可能的碰撞和其它建模的异常。此外,系统的用户可以评估所建模的机器人是否能够到达零件处理任务所需的所有目标(零件位置)。评估可以遵循逆运动学方法,其中用户的运动计划被变换成用于机器人的关节致动器轨迹。
4.xp 010835360(hasegawa等人)和申请人较早的wo2017220128a1涉及表示机器人操纵器的自由空间的问题。
5.经验表明,即使已经通过模拟核实的机器人程序代码也可能在执行期间造成损坏。特别地,仿真的理想化虚拟环境可能无法预测机器人操作的物理现实的所有细节。


技术实现要素:

6.一个目的是,提供一种用于控制机器人操纵器的方法,该方法降低了执行潜在有害的移动指令的风险。一个特定的目的是,识别机器人程序是否包含潜在有害的移动指令,并且如果是,则应用限制程序的可执行性的策略。另一个目的是,提出一种不限于特定机器人设施的方法。另一个目的是,使具有相应效果的设备和计算机程序可用。
7.这些目的和其它目的通过如独立权利要求所限定的本发明来实现。从属权利要求限定了有利的实施例。
8.根据第一方面,本发明提供了一种用于基于程序来控制机器人操纵器的方法,该程序尤其包含多个移动指令。该方法包括获得与机器人设施有关的识别信息,确定任何移动指令是否与未验证的机器人操纵器的相对于机器人设施的位置有关,并且如果是这种情况,则应用限制程序执行的策略。
9.如这里所使用的,机器人操纵器的“位置”可以指点、姿态(方位)、路径和/或调制路径。位置可以在任何参考坐标系中表示,包括固定参考坐标系和与机器人的或机器人操纵器的一部分一起移动的坐标系。机器人操纵器的姿态(方位)可以表示为关节空间中的坐标。关节空间坐标表示机器人连杆的每个关节的平移和/或角位移。路径可以理解为通过两个或更多个规定点的曲线,其任选地受到短的总持续时间、短的总长度、低的机械磨损、有限的瞬时速度、有限的曲率等的要求。调制路径可以满足进一步的要求,诸如路径的期望形状或在沿着路径的运动期间要执行的活动,包括振荡运动、工具的使用或抑制、负载的夹持等。可以基于由运动指令规定的输入来获得路径的优化。
10.在本公开中,如果移动指令(或运动指令)隐含地或明确地指位置,则将其称为“涉及”该位置。作为示例,请求机器人操纵器沿着连接两个端点的路径移动的移动指令通过陈述端点而隐含地指代该路径。这里,运动指令使机器人操纵器执行的路径可以是根据机器人的默认设置生成的路径、直线、曲线或满足运动指令中指定的某些约束或最优性条件的路径。作为另一示例,请求机器人操纵器从空间中的未指定的当前点移动到空间中的指定的目标点的移动指令隐含地是指在当前点中开始并在目标点中结束的路径(例如,根据默认设置生成的路径)。类似地,请求机器人操纵器以规定的相对平移量和/或相对旋转量递增地改变其位置或姿态的运动指令隐含地指其当前位置和姿态、在规定的平移量和/或旋转量之后产生的位置和姿态,以及如果适用,指连接这些的路径。
11.本发明的该第一方面可以带来这样的技术益处,即,被发现包含与尚未通过验证测试或未通过手边的机器人设施的验证测试的位置有关的移动指令的程序由于应用或实施策略而被限制执行。策略至少在最初限制执行的事实可以使操作者在执行程序之前采取安全措施。此外,策略的应用可以警告程序员审查并可能改进新的、尚未执行的机器人程序和/或将由不同机器人、重新配置的机器人或重新安装的机器人执行的现有程序。在机器人的使用期限内,这种策略可以保持与质量、安全或兼容性相关规范的符合性,和/或确保机器人保持足够的技术条件以仍然通过最终用户指定的验收测试。作为另一种使用情况,该策略可以被设计为保护租用的机器人设备免受由执行有害程序代码造成的损害。
12.在该方法的实施例中,位置被保持为非验证的,除非它可以与验证位置的集合相匹配。特别地,该位置被保持为非验证的,除非其可以与针对识别信息所涉及的机器人设施所验证的位置集合相匹配。在该实施例的一个实现中,针对与移动指令相关的位置来搜索经验证的位置的集合;如果搜索不成功,则推断该位置未验证。本实施例允许更有效地处理程序中位置的多个实例;特别地,由第一遇到的实例的实质分析产生的经验证的或非经验证的状态可以转移到相同位置的后续实例,而不需要重复该实质分析。
13.在不同的实施例中,验证位置的集合可以从外部源获得,或者可以在将执行该程序的机器人操纵器的较早操作期间累积。在第二选项下,该方法可以包括如下较早的步骤:通过使用机器人设施来监测与位置有关的移动指令的执行来验证该位置。经验证的位置的集合可以至少用于与在被监测的执行中所使用的机器人设施相同或等同的机器人设施。移动指令可以可选地属于要执行的程序,尽管这不是必需的。
14.作为一个简单的例子,移动指令名义上使机器人操纵器移动到一个点x并停留在这个位置,可选地具有指定的姿态(方位)θ。被监测的执行可以包括执行该指令并测量机器人操纵器的实际位置;实际位置可能由于磨损、安装不精确性、意外负载等而不同。然而,如
果发现实际位置与标称值一致直到可应用的公差,则认为该点x被验证,可选地与姿态θ一起验证。如果保持了经验证的位置的集合,则可以将点x和可选的姿态θ添加到该集合。作为另一个示例,可以针对机器人操纵器与周围物体(例如具有不准确尺寸的工件、没有考虑的物理障碍物等)的交互来监测移动指令的执行。
15.在另一简单示例中,运动指令名义上使机器人操纵器采取指定姿态θ并停留在该位置。所监测的执行可以包括针对特定的机器人设施执行该指令,同时测量该机器人操纵器的实际姿态和/或查明该机器人操纵器是否未与周围物体接触或碰撞。然而,如果发现实际姿态与标称值一致直到适用的公差,并且可以确认没有碰撞,则认为对应于姿态θ的位置被验证。如果保持了用于该机器人设施的验证位置的集合,则可以将所述姿态θ添加到该集合。
16.因此,该集合将由已经逐一添加的一个或多个经验证的点x或经验证的姿态θ组成。这意味着,在正常情况下,该集合将是离散元素的有限集合。
17.根据以上概述的实施例的验证位置的过程可以被限制为已经由先前的核实过程预先限定的位置。核实过程可以包括计算机辅助的模拟过程,其中在包括机器人操纵器的虚拟环境中执行与要核实的位置有关的移动指令。在一个示例中,该模拟接受闭合的(绝对的)或增量的(相对的)移动指令作为输入,并且返回机器人零件位置,这些位置是通过向前运动学方法并且使用结合了该机器人的零件、其操纵器、工具、负载等的尺寸、质量和/或驱动功率的模型来计算的。该模拟可以包括计算这些移动指令所指的点之间的路径;特别地,它可以包括在上述意义上计算调制路径。此外,该模拟可以被配置成用于计算在增量移动指令序列的执行过程中由该机器人操纵器上的参考点所访问的所有点(或由该机器人操纵器的任何部分所访问的所有空间区域),其中,该序列在该机器人操纵器处于已知的起始位置中时开始,并且任选地经受上和/或下速度限制。模拟结果可以由人类用户检查,或者可以由计算机实现的例程自动或半自动地分析,以发现任何碰撞、接近碰撞、运动或动态限制的超标、过度磨损或不安全行为的发作、或其它异常。如果发现不是这种情况,则认为该位置是有效的。
18.在一个实施例中,验证位置的集合与程序无关地被存储。例如,集合可以被存储为数据文件、数据库或与包含移动指令的程序不同或分开的其它数据结构。该实施例对于在由不同程序p1、p2、p3实现的不同任务之间交替的机器人的使用是特别有利的。在这种情况下,位置的验证的或非验证的状态可以用于所有不同的程序。例如,经验证的位置的集合可能已经通过程序之一p1的受监测的执行而形成,从该程序p1中至少一些位置重新出现在其它程序p2、p3中。如果机器人的设施改变,该实施例也是有利的,其结果是必须重复位置的验证。在独立于程序地维护经验证的位置的集合的设置中,修改集合以反映机器人设施的变化就足够了,当重新运行确定任何移动指令是否涉及未验证的位置时,这将导致不同的结果。
19.在一个实施例中,验证位置的集合可由另一实体使用,例如机器人控制器、机器人编程站或便携式通用计算机。例如,由与特定机器人或机器人操纵器相关联的第一机器人控制器准备的集合可以与同该机器人或机器人操纵器相关联的第二机器人控制器共享。这种重用减少了在位置验证上花费的努力。如果该集合被认为适用于另外的机器人或机器人操纵器,则它可以与更大圈的这种实体共享。
20.在一个实施例中,验证位置的集合与识别的机器人设施相关联。一种方法可以是,针对于与要在其上执行机器人程序的机器人设施相关联的经验证位置的集合来检查机器人程序。这可以限制使用经验证的位置集合来检查机器人程序的风险,考虑到与机器人程序要在其上执行的机器人设施不同的机器人设施。如在此使用的,两个“机器人设施”可以在以下特性中的一个或多个方面不同:机器人的身份、附接点、负载质量、参考坐标系、最新校准日期、机器人部件、机器人操纵器或机器人软件的供应日期。这些属性中的任何一个的改变可以将机器人的行为改变到验证位置不再被信任的程度;相反,可能需要重新验证该位置。例如,安装在第一连接点处的机器人的自由空间可以与安装在第二连接点处的相同机器人的自由空间显著不同,在第二连接点处机器人的自由空间被不同的物体包围。机器人设施可以通过任意字母数字标识符来识别,或通过反映所提及的一个或多个特性的技术信息来识别。
21.在一个实施例中,该方法包括显示任何未验证位置的可视化。该可视化可以显示给用户,该用户例如充当机器人编程器、机器人集成器或机器人的操作员。或者,可视化可以示出与至少一个未验证位置相关的每个移动指令。可视化可突出显示与非验证位置相关的移动指令;或可突出显示所有移动指令,但与未验证位置相关的移动指令除外;或者可以定义对应于一个位置的以下状态中的一个或多个的多个外观:已验证、未验证、已核实、用户超驰。不同的外观可以对应于不同的颜色、字体、标志、帧或其它图形符号。在该实施例的进一步改进中,在通过尝试将程序中的位置与经验证集合中的一个集合进行匹配来找到非经验证的位置的情况下,当集合改变或被替换时更新可视化;这种改变或替换可以是在上述意义上修改机器人设施的结果。一旦改变或替换变得已知,就可以更新可视化,或者可以推迟更新,直到下一次用户请求显示可视化。
22.在一个实施例中,确定程序中的任何移动指令是否涉及机器人操纵器的未验证位置可以是间接的。这种间接确定可以包括计算程序的指纹。如这里所使用的,“指纹”是在对小变化具有高灵敏度的映射下的程序的图像。该图像优选地具有可管理的尺寸,例如不超过几十或几百个字符,即通常比程序小几个数量级。在这个意义上,“指纹”可以被称为校验和、摘要或散列。映射可被配置成无视编译器或解释器或执行环境忽略的代码和/或面向用户的注释、变量和其它对象的标签和名称。
23.在已经计算了程序的指纹之后,将其与其它程序的一组指纹进行匹配,对于这些指纹,已经完成了关于每个其它程序中的任何移动指令是否与机器人操纵器的未验证位置相关的直接确定。如果已经确定与未验证位置相关的移动指令的出现满足预定阈值,则这些其它程序之一的指纹可以包括在指纹集合中。阈值可以表示最大允许发生率,诸如考虑到比如机器人的预期任务、工作环境、质量分级和安全等级的因素而选择的数量或百分比。示例性的百分比可以是一位数,例如低一位数,或者甚至是零。已经检查的程序的指纹集合可以与特定的机器人设施相关联,因为如上文结合验证位置的集合所解释的,机器人设施中的改变可能使得需要重新验证至少一些位置。
24.如果在已经检查的程序的指纹集合中找到计算出的程序指纹,则不需要执行进一步的确定是否有任何移动指令涉及机器人操纵器的未验证位置。相反,如果没有找到计算出的指纹,则认为程序的移动指令所涉及的位置是不确定的,并且必须启动对未验证位置的搜索。例如,对未验证位置的搜索可以包括将每个位置与验证位置的集合相匹配。
25.如这里所使用的,至少关于本实施例,“程序”在其可以在机器人控制器上执行的意义上可以是完整的,在该机器人控制器上操作系统、标准库等是可用的。“程序”在其使机器人操纵器执行工业任务或其明确定义的子任务的意义上也可以是完整的。在基于指纹的间接确定程序中的任何移动指令是否涉及机器人操纵器的未验证位置的上下文中,术语“程序”也可以指完整程序的一部分,诸如模块、例程、模板、面向对象编程中的类定义、或预期由程序员重新使用或出于其它原因重新出现的代码段。例如,可以定义分解规则,通过该分解规则,程序被分解为可独立分析的部分,每个部分被当作“程序”。在该分解规则—其既用于建立指纹集合又用于检查要执行的特定程序代码—下,可分析部分可以以明确地指定机器人操纵器的位置的任何移动指令开始;可分析部分通常不能以增量的或相对的运动指令开始,因为当执行运动指令时,结果位置取决于机器人操纵器的起始位置。分解规则可以要求可分析部分在其不延伸超过下一个可能的可分析部分的起始点的意义上应该是最小的;这种最小倾向于缩短可分析部分,从而增加可以将指纹匹配的可能性。一旦通过应用分解规则产生了可分析部分,它们的移动指令所涉及的位置就可以直接或间接地确定涉及未验证位置的移动指令的出现是否是可接受的。回想到,直接确定可以依赖于与经验证的位置集合的匹配或依赖于被监测的执行,并且间接确定可以是基于指纹的。
26.根据第二方面,提供了一种包括存储器和处理电路的处理器,其被配置为执行根据第一方面的方法的步骤。处理器可以构成被配置用来控制机器人或机器人操纵器的机器人控制器或作为其一部分。或者,在分布式实现中,诸如在边缘服务器或云结构中的处理资源的一个或多个联网处理器可构成处理器。
27.根据第三方面,提供了一种计算机程序,包括使可编程处理器执行根据第一方面的方法的步骤的指令。
28.在一个实施例中,提供了一种存储或携带该计算机程序的数据载体。如这里所使用的,“数据载体”可以是诸如调制的电磁波或光波的瞬态数据载体,或非瞬态数据载体。非瞬态数据载体包括易失性和非易失性存储器,例如磁、光或固态类型的永久和非永久存储器。仍然在“数据载体”的范围内,这样的存储器可以是固定安装的或便携式的。
29.通常,权利要求中使用的所有术语将根据其在技术领域中的普通含义来解释,除非在此另外明确定义。所有对“一个/所述部件、装置、组件、机构、步骤等”的引用,除非另外明确说明,否则将被开放地解释为涉及部件、装置、组件、机构、步骤等的至少一个实例。除非明确说明,本文公开的任何方法的步骤不必以所公开的确切顺序执行。
附图说明
30.现在参考附图通过示例的方式描述各方面和实施例。关于这些,图1示出了工业机器人系统;以及
31.图2是流程图,其中主实施例的方法的步骤表示为实线框,并且属于三个另外的实施例的可选步骤组分别以虚线、点线和点划线绘制。
具体实施方式
32.现在将参照附图更全面地描述本公开的各方面,在附图中示出了本发明的某些实施例。然而,这些方面可以以许多不同的形式来体现,并且不应被解释为限制。相反,通过示
例的方式提供实施例,从而本公开将是彻底和完整的,并且将本发明的所有方面的范围完全传达给本领域技术人员。
33.图1示出了工业机器人系统,其包括机器人控制器110、连接到机器人控制器110的外部存储器180和与机器人控制器110交换控制信号、传感器数据等的机器人操纵器190。机器人控制器110包括处理电路112和存储器111。存储器111在操作期间的示例内容在图1中示出。这样的内容可以包括:
[0034]-s:操作系统、基本设置、实现一般动作的软件、感知、自我监控、一般有用的功能和服务(通常都由原始制造商提供)、任务或角色特定的配置、配置模板(通常由机器人系统集成商提供)和站点特定的设置(通常由最终用户提供)中的任何一个;
[0035]-p1、p2、p3:机器人程序或项目使得机器人操纵器190在其工作环境中执行有用的或预期的任务。
[0036]
执行程序p1、p2、p3的过程可以根据存储器内容s,例如通过调用其中的可用功能、库、例程或参数值来这样做。回想到,机器人控制器110的存储器111和处理电路112可以是分布式的,和/或包含具有与图1所示不同的物理定位的网络化资源。
[0037]
程序p1、p2、p3可以由程序员借助于机器人编程站或通用计算机来创建,或者如果提供了用户接口则直接在机器人控制器110处创建。在前两种情况下,程序p1、p2、p3的版本可以通过有线或无线连接或通过临时存储在便携式存储器上而下载到机器人控制器110。例如,如果外部存储器180包括在编程站中,则机器人控制器110可以经由所示出的连接线从其接收数据。如上所述,每个程序可以包含与诸如点的位置、姿态、路径和调制路径有关的多个移动指令。与调制路径相关的移动指令可以表示为或者可以包括路径上处理指令。
[0038]
作为其一部分,机器人操纵器190包括臂191,臂191包括结构元件和至少一个线性的或旋转的接头。它还可以承载允许它与工件相互作用的工具。操纵器190可通过内部马达、驱动器或致动器(未示出)的动作而移动,并且包括换能器、传感器和其它测量设备(未示出),操纵器190的当前位置、姿态、技术条件、负载等可从这些设备中以一定程度的准确度获得。机器人操纵器190的位置、姿态等可以具体指臂191。
[0039]
图2所示的方法200可以由机器人控制器110或由另一设备中的处理器来实现。处理器可以至少包括存储器和与机器人控制器110类似的处理电路。
[0040]
在第一实施例中,方法200包括以下步骤:确定216任何移动指令是否与机器人操纵器190的未验证位置相关;以及响应于肯定的确定,应用224限制程序执行的策略。在流程图中用非实线表示的其它步骤是可选的,并且不包括在本实施例中。
[0041]
策略的精确性质,包括其所体现的规则,对于本发明并不重要。作为一个示例,如果未验证位置的百分比超过阈值,则策略可阻止程序的执行。为了计算百分比,每个位置可以仅在其第一次出现时被计数(唯一位置的百分比),或者位置的所有出现都可以被计数(总百分比)。如果应用策略,则该策略可分类地阻止程序的执行。或者,策略可允许程序执行,直到遇到涉及未验证位置的第一移动指令;在这一点上,执行可以停止,并且可选地,机器人操纵器190返回到中性位置,或者要求操作员批准超驰使执行停止的阻止。
[0042]
作为替代的或附加的特征,如果在确定步骤216期间遇到的与未验证位置相关的移动指令的足够份额已被用户超驰(即,在允许超驰策略的执行限制的意义上标记),则策略可允许程序执行。这样的超驰可以表示用户已经审阅了所讨论的运动指令,并且他或她
自己满意于这是次要的,因此在这种情况下是可接受的。然后,如果既未被验证也未被超驰的位置的百分比超过阈值,则包括超驰特征的策略可被配置成(仅)阻止程序的执行。
[0043]
运行时监控可能不是本实施例的主要目的。相反,根据本实施例的方法200可以离线执行,例如在第一次尝试开始执行程序之前,或者在将程序下载到机器人控制器110之前。为了操作的方便,特别是如果机器人控制器110包括其他安全或质量保证机制,则机器人控制器110可以允许程序在专用模式(例如,手动模式、试验模式、引导模式)下执行,其中禁止应用策略,因此不能限制执行。
[0044]
确定步骤216可以包括计算程序的指纹,并将其与满足与未验证位置相关的移动指令的最大允许发生率的程序指纹集合进行匹配。类似于机器人操纵器190的经验证的位置的集合,指纹的集合可以存储在与程序p1、p2、p3分开的机器人控制器110的存储器111中,或者存储在外部存储器180中。
[0045]
在第二实施例中,方法200包括获得214机器人操纵器190的经验证的位置的集合的附加前步骤。在该实施例中,确定步骤216包括将移动指令所涉及的位置与集合进行匹配。
[0046]
机器人操纵器190的经验证的位置的集合优选地独立于方法200评估的类型的可执行程序p1、p2、p3而被存储。因此,该集合可以存储在外部存储器180或存储器111中,但是存储在与包含特定程序的文件分离的文件或数据结构中。这便于当要评估另一程序时重新使用该集合。此外,可以简单地通过访问单个存储器位置来修改或替换该集合,而无需重新访问每个程序。
[0047]
在第三实施例中,除了所述确定216和应用224策略之外,方法200还包括通过被监测的与位置有关的移动指令的执行来验证212位置的步骤。在这种意义上被监测的执行可以包括以降低的速度执行和/或由操作员监控的执行和/或由机器人外部传感器监控的执行。所监测的执行可以以机器人的手动或自动模式来实行。无论是以手动模式还是以自动模式实行,所监测的执行可包括操作员监测、自动监测或其组合。自动监测依赖于充分了解可能的错误状态,即依赖于相应例程的设计者的预见或给予机器学习算法的适当训练;然而,其对已知错误的搜索是非常持久和准确的。相反,人类观察者在工作有限的时间段时,很好地发现在理论或离线基础上难以预见的错误。
[0048]
外部传感器可用于监控机器人操纵器190,特别是其位置和姿态,与内部传感器相比具有改进的精度。这由传感器192示出,传感器192示出为临时安装在机器人操纵器190附近,但不是机器人操纵器190的部件。传感器192可以是超声传感器、激光传感器、照相机等。它可以包括检测碰撞或接近碰撞的逻辑。以降低的速度执行可以帮助机器人内部传感器实现比它们的固有精度更好的传送精度,因为降低的速度使得更多的时间可用于采样。
[0049]
外部传感器应包括在机器人操纵器190附近的物体已通过临时使用外部传感器而先前定位的情况。该定位实现了周围物体的位置是已知的,此后可以移除外部传感器。这又允许机器人操纵器190在被监测的执行过程中被精确地定位,例如通过根据需要让臂191接触或接近周围物体。周围物体的位置可以参考机器人内部参考坐标系或在非移动的或全局的参考坐标系中表示。
[0050]
如在前述部分中所描述的,可以通过在验证位置的集合中输入位置来记录位置的成功验证。回想一下,位置可以是点、姿态(方位)、路径和/或调制路径。可以通过例如将该
位置的表示添加到为此目的而维护的数据记录中来将验证的位置输入到集合中。
[0051]
当在验证212期间建立集合时,保持执行运动指令的机器人设施的关键属性通常是有利的。只要机器人设施没有改变,这就允许重新使用经验证的指令的集合。相反,它提供了防止不正确地应用该集合以便评估将在不同的机器人设施上执行的程序的安全措施。如上所述,机器人设施的关键特性可以是以下中的一个或多个:机器人的身份、附接点(例如,具有特定坐标或另一标识符的安装地点)、由机器人承载的负载的质量、参考坐标系,最新校准的日期、机器人部件、机器人操纵器或机器人软件的供应日期。
[0052]
可选地,在验证步骤212之前是通过模拟与位置相关的移动指令来核实210位置的步骤,并且验证212被限制到已经被核实的位置。如上所述,核实过程可以包括计算机辅助模拟过程,其中在包括机器人操纵器190的虚拟环境中执行与要核实的位置有关的移动指令。模拟结果可以由人类用户检查,或者可以由计算机实现的例程自动或半自动地分析,以确定不存在不期望的结果。然后,该位置被认为是经核实的,并且可用于验证212。
[0053]
在第四实施例中,方法200还包括显示218任何未验证位置和/或与未验证位置相关的移动指令的可视化的步骤。可视化通知程序员、操作员或其他用户存在需要验证(或超驰)的位置,并且可以准确地指示在这个意义上哪些位置或移动指令是有问题的。可视化可以显示在机器人操纵器190上、机器人控制器110上或编程站或适于观看程序的其他设备中的文本或图形用户界面上。
[0054]
当方法200的该第四实施例包括与经验证的位置的集合匹配时,它可选地包括确定220该集合是否已被修改或替换的另一步骤。如果发现是这种情况(向下分支),则根据修改的或替换的集合来更新222可视化。更新的可视化可以揭示一些位置由于集合的改变而变得过时。相反,如果确定集合保持不变(右手分支),则在预定时间量之后重复确定220。在可视化已经被更新222之后,还可以以类似的方式重复确定220。
[0055]
在第五实施例中,方法200包括以下步骤:获得215与机器人设施有关的识别信息;基于识别信息,确定216任何移动指令是否与未被验证的机器人操纵器的相对于机器人设施的位置有关;以及如果找到至少一个未被验证的位置,则应用224限制程序执行的策略。与机器人设施有关的识别信息可以从操作者输入来获得,或通过发出对机器人操纵器190所属的机器人设施的自识别的请求(例如,向机器人控制器110)来获得。
[0056]
应当理解,识别信息允许执行方法200的实体识别应用于机器人操纵器190的机器人设施。这使得能够重新使用现有知识。例如,方法200可以包括获得机器人操纵器190的经验证的位置的集合的在前步骤214,其中该集合与至少一个机器人设施相关联。该集合与至少一个机器人设施相关联,因为一方面它可应用于多个机器人设施。另一方面,收集可以包括针对第一机器人设施(或机器人设施组)验证的位置的第一子收集,以及针对第二机器人设施验证的位置的第二子收集。在确定步骤216中,程序p1、p2、p3的移动指令所涉及的位置仅与对应于机器人操纵器190的机器人设施的子集合相匹配。实际上,即使先前已经针对不同的机器人设施验证了特定位置(例如,在不同的附接点处),仍然存在本机器人操纵器190的机器人设施具有更受限制的自由空间的可能性,具有增加的碰撞风险。
[0057]
第二、第三、第四和第五实施例的步骤可以组合以形成更进一步的实施例。非验证位置的基于指纹的间接确定216可以是每个这种组合的可选特征。例如,第二和第三实施例的组合可以提供创建和应用机器人操纵器190的经验证的位置的集合的方法200。
[0058]
上面主要参考几个实施例描述了本发明的各方面。然而,如本领域技术人员容易理解的,在由所附专利权利要求所限定的本发明的范围内,除以上公开的实施例之外的其它实施例同样是可能的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1