包括操作上下文感知复制和粘贴特征的机器视觉系统程序编辑环境的制作方法

文档序号:9510112阅读:353来源:国知局
包括操作上下文感知复制和粘贴特征的机器视觉系统程序编辑环境的制作方法
【技术领域】
[0001] 本发明涉及机器视觉检查系统,并涉及这样的系统、图形用户界面和方法,其在计 算机可读介质中被实施,用于在这种系统中创建和编辑部件程序,包括智能复制和粘贴特 征,其可被用于产生基本"计算机语言"指令和/或它们相应的基本指令的简化表示,以在 创建部件程序时协助"非程序员"用户。
【背景技术】
[0002] 精确机器视觉检查系统(或简称为"视觉系统")可被用于获得检查的对象的精确 尺寸测量,并检查各种其他对象特性。这样的系统可以包括计算机、摄像机和光学系统和精 密工台,其可在多个方向上移动,以允许摄像机扫描被检查的工件的特征。一个可商用的示 例性现有技术系统是可从位于Aurora, III的Mitutoyo America Corporation(MAC)得到 的QVPAK?软件、以及基于PC的视觉系统的QUICK VISKM_系列。例如,在2〇〇3年1 月公布的"the QVPAK 3D CNC Vision Measuring Machine User's Guide"、以及 1996 年 9 月公布的 "the QVPAK 3D CNC Vision Measuring Machine Operation Guide" 中,一般性 地描述了视觉系统的QUICK VISION?系列和QVMK?软件的特征和操作,通过引用将 其各自的全部内容合并于此。例如,这一系列的产品能够使用显微镜型光学系统,以在各种 放大倍数提供工件的图像,并根据需要移动台,以超过任何单个视频图像的限制而遍历工 件表面。在给定这种系统的期望放大倍率、测量分辨率以及物理尺寸限制的情况下,单个视 频图象通常仅涵盖被观察或检查的工件的一部分。
[0003] 机器视觉检查系统通常利用自动化的视频检查。美国专利6542180( '180专利) 教导了这种自动视频检查的各个方面,在此引入其全部内容。如'180专利所教导的,自动 视频检查计量仪器一般具有编程能力,其允许用户为每个特定的工件配置定义自动检查事 件序列。例如,这可以通过基于文本的编程来实现,或由通过存储与用户在图形用户界面的 帮助下执行的检查操作的序列对应的机器控制指令序列而逐步地"学习"检查事件序列的 记录模式来实现,或通过结合上述两个方法来实现。这种记录模式经常被称为"学习模式" 或"训练模式"。一旦在"学习模式"中定义了检查事件序列,随后便可在"运行模式"期间, 使用这样的序列来自动获得(并另外分析或检查)工件的图像。
[0004] 机器控制指令,包括具体的检查事件序列(即,如何获得每个图像以及如何分析/ 检查每个获得的图像),通常被存储为"部件程序"或"工件程序",其专用于特定的工件配 置。例如,部件程序定义如何获得每个图像,例如,如何相对于工件定位摄像头、在什么照明 度、在什么放大级别等。此外,部件程序定义如何分析/检查所获得的图像,例如,通过使用 一个或多个视频工具,如边缘/边界检测视频工具。
[0005] 为了有助于由相对不熟练的用户编程,视频工具(或简称为"工具")和其它GUI 特征可以被设置来完成检查和/或其他机器控制操作。可在学习模式中记录视频工具的设 置参数和操作,以创建自动检查程序,或"部件程序",其并入了要由各种视频工具执行的测 量/分析操作。例如,视频工具可以包括边缘/边界检测工具、自动对焦工具、形状或图案 匹配工具、尺寸测量工具,等等。其它GUI特征可以包括与数据分析、步骤和重复循环编程 相关的对话框--例如,在美国专利8271895 (' 895专利)中公开的,在此通过引用将其全 部内容合并于此一一等等。例如,这样的工具和⑶I特征被例行用于在各种商用的机器视 觉检查系统中,如QUICK VISION?系列视觉系统和相关联的QVPAK?软件,如上面所讨 论的。
[0006] 由相对不熟练的用户编辑部件程序可能是困难的。特别是目前,没有用于由不熟 练的用户进行"支持操作上下文"的复制和粘贴操作的简便方法。也就是说,没有用于机 器视觉系统或其他自动检查系统的部件程序的复制和粘贴操作,它通过考虑复制被配置用 于兼容部件程序中的一个位置的操作上下文和/或编辑上下文的指令需要修改之后才可 提供与部件程序中的另一个位置处的粘帖位置的操作上下文和/或编辑上下文的兼容,这 对编辑程序是有用的。例如,从步骤和重复循环的内部向外部复制和粘贴指令(或反之亦 然),对于不熟练的用户来说尤其困难。
[0007] 本发明的目的是提供系统、图形用户界面和方法,其在计算机可读介质中实施,其 允许创建和使用直观、灵活和强大的操作和/或命令,用于精密机器视觉检查系统的部件 程序的复制和粘贴编辑命令。

【发明内容】

[0008] 提供本概述来以简化形式介绍概念的选择,其在下面的【具体实施方式】部分被进一 步描述。本概述并不旨在标识所要求保护的主题的关键特征,也不是旨在用于帮助确定所 要求保护的主题的范围。
[0009] 在各种实施例中,提供了机器视觉检查系统,它可操作用来在学习模式中创建部 件程序,并在运行模式中可操作来执行先前创建的部件程序。该系统包括成像部分、用于在 成像部分的视野中持有一个或多个工件的台、控制部分、以及图形用户界面(GUI)。该系统 还包括编辑部分,其可操作来在学习模式中编辑部件程序指令,所述编辑部分包括可显示 在GUI中的编辑接口部分。
[0010] 该系统还包括复制和粘贴管理器部分,其可以以硬件和/或软件来实现,其配置 为可操作用来在学习模式中生成和定义部件程序中的复制操作和粘贴操作。在一些实施例 中,复制和粘贴命令可被用于粘贴一组元素,其为在部件程序中的新位置处复制的元素的 实质重复。如这里所使用的,短语"实质重复"不一定意味着检查指令或它们的表示的所有 细节的字面或精确重复,尽管在一些实施例中可能是这样的情况。相反,它意味着:对重复 的操作块的本质或基本操作进行重复的至少指令特征的重复。
[0011] 复制的元素可以包括以标记语言(例如,HTML、XML或衍生物)编写的机器可执 行代码指令和/或显示在图形用户界面(例如,在编辑部分中)的相关联的可编辑指令表 示。本文所用的术语"复制的元素" 一般可以包括这两个关联的方面,除非描述或上下文另 有说明。与这里引用的其他类型的指令和指令的表示一样,可在各个实施例中分配和使用 唯一标识(例如,节点标识),以支持特定的操作上下文建立操作、和/或用户界面窗口同步 操作、和/或代码和表示关联。在一个实施例中,这样的关联和特征可如下面的文献所述那 样实现:2011年11月15日提交的共同未决、共同转让的美国专利申请13/297232 ('232申 请),题为"Machine Vision System Program Editing Environment Including Real Time Context Generation Features",公布号为美国申请公开 2013/0123945A1 ;以及 2012 年 11 月13日提交的共同未决、共同转让的美国专利申请13/676061 ('061申请),题为"Machine Vision System Program Editing Environment Including Synchronized User Interface Features",公布号为美国申请公开2013/0125044A1,各自在此通过引用整体并入本文。
[0012] 在一些实施例中,部件程序表示和/或复制的元素(例如,指令表示和/或代码指 令)可以树结构的方式被布置,其包括具有一个或多个子节点的一个或多个父节点,等等。 用来在图形用户界面上编辑指令表示(包括复制的元素)的用户输入可包括添加、删除和 修改任何指令表示中的一个或多个。在一些实施例中,一些节点对应于各自包含针对诸如 几何测量操作或成像(例如,自动对焦)操作、或图像处理操作等的离散操作的指令的子集 的视频工具。在各种实施例中,每个复制的元素可以被分配唯一节点名、变量名称和/或代 码块名称。在一些实施例和/或情况下,可在已编辑当节点或复制的元素时改变名称。
[0013] 在各种实施例中,提供了计算机可读介质,其包括计算机可执行指令,其被配置为 加载到计算机,以使计算机能够执行对应于本文所述的特征和操作的方法。
[0014] 应当理解的是,编辑用于机器视觉检查系统的部件程序是比编辑用于机器工具或 装配机器人等的程序等更复杂的任务。例如,用于机器视觉检查系统的部件程序包括随后 的部分,其控制操作,并且/或者,提供依赖于图像的测量结果,其至少部分依赖由程序的 先前部分的执行确定的结果、和/或被用于提供检查操作必需的图像的工件的特定实例。 此外,特定图像所需要的所需照明和/或曝光时间可取决于工件的特定实例。此外,如果用 户保存部分完成的部件程序,并在之后再调用部件程序以改变或完成编程,则可能不知道 其间是否已发生了特定类型的改变(例如,环境条件的改变,在台上无意移动部件,等等), 其可能不利地影响对部件程序的继续编辑。由于这种考虑,对于一些这样的系统,已经有了 标准实践,用来从开始实际执行部件程序的全部指令,并包括任何潜在的附加修改、或对部 件程序指令的添加,以便基于它们的操作的真实条件集合来验证修改和/或添加正在被编 程。然而,为了修改或添加指令而执行部件程序的所有指令以提供真实操作条件,这对于大 型部件程序来说不现实(例如,包括大量图像获取和/或特征检查的那些大型部件程序), 大型部件程序对于提供宏观物体(如,几十或数百毫米的物体)的微观检查(例如,微米分 辨率测量)的机器视觉检查系统来说特别常见。
[0015] 通过引用并入本文的'232申请和'061申请公开了这样的特征,其可以提供编辑 环境,其可以在编辑操作期间、在短时间(例如,近"实时")可靠地更新操作条件或操作上 下文,并允许更快速、高效、直观、灵活和健壮地创建和编辑用于精密机器视觉检查系统的 部件程序。然而,仍需要与这样的编辑环境相关联的复制和粘贴操作。已知的复制和粘贴 的方法也不支持与在' 232申请和' 061申请中公开的操作关联的元素和功能。困难在于, 在机器视觉检查系统部件程序中的复制和粘贴指令比不实际移动物理对象的基于文本的 程序中的剪切和粘贴指令更复杂,且甚至比用于机器工具或组装机器人等的程序中的剪切 和粘贴指令更复杂。通过先前已知的方法,不能执行根据部件程序中的一个位置处的适当 操作上下文配置、随后粘帖到部件程序的另一个位置的复制指令。先前已知的基于文本的 方法,即使可能能够执行所需的操作,也不能被相对不熟练的用户使用,所述相对不熟练的 用户非计算机程序员,且不理解用来编写被存储和再调用以便之后执行来检查工件的基础 部件程序的计算机语言。在' 232申请和' 061申请中概述的方法与这样的编辑环境相关: 其允许高速操作上下文生成和使用,并向相对不熟练的程序编辑者提供相对即时和真实的 "程序创建和编辑结果"反馈,但未考虑到与从部件程序的一个部分复制"允许上下文的操 作"程序指令并将其粘帖到部件程序的另一部分相关联的困难。期望用于在这样的编辑环 境中进行复制和粘贴的手段。
[0016] 根据上述考虑,对于机器视觉检查系统来说,期望提供这样的复制和粘贴操作,其 在编辑部件程序时与对操作上下文的近实时更新兼容,以便在对修改和/或添加编程时验 证操作条件的真实集合可用作所述修改和/或添加的基础或操作上下文。这在通过记录 机器视觉检查系统的用户输入的实际控制操作而创建和编辑部件程序时尤其重要,原因在 于,用户基于机器视觉检查系统的状态和/或其提供其输入操作时呈现的图像的外观和位 置等,直观地选择其输入操作的细节。因此,用户没有首先在如由部件程序的先前指令在运 行模式期间在其执行自动模式期间的执行所提供的那个位置、在基本相同的操作上下文中 建立系统的情况下,不能在部件程序中的任意位置开始部件程序的有效和可靠的修改。迄 今,没有通用机器视觉检查系统,尤其没有记录实际用户控制的操作以便创建部件程序的 系统(例如,与简单的图形对象或基于文本的编程系统相反)已提供了这样的编辑环境,其 能够可靠且稳健地提供有效的部件编程操作上下文,用于在编辑操作期间近实时复制和粘 贴操作。
[0017] 复制和粘贴操作应至少包括一些自动操作,使得复制和粘贴操作可由相对不熟练 的用户使用。在各种实施例中,复制和粘贴操作应向用户呈现为:在可由相对不熟练的用户 编辑的部件程序指令的简单表示上、而不是在实际形成被存储并运行以自动执行检查操作 的部件程序指令的基于基础文本的语言上动作。在各种实施例中,可与可被编辑的简单表 示相关联的各种元数据被包括在基础部件程序指令或代码中,使得它们被隐藏。在各种实 施例中,它们的存在和/或去除可能对用户不可见,以避免GUI中的混乱,并避免对相对不 熟练的用户混淆。用于运行的编辑模式的替代数据可以是一个这样类型的元数据。在为"步 骤-重复"程序定义的阵列的形式中的数据格式可以是元数据的另一个例子。在各种实施 例中,复制和粘贴操作自动调整(增加、删除、修改)与部件程序指令的复制的表示相关联 的元数据,使得调整后的元数据可以与部件程序内的粘帖位置兼容。在各种实施例中,所粘 贴的表示自身中可能不反映基础关联的指令或元数据(如替代数据等)的存在、不存在、或 改变。相反,复制和粘贴命令可包括这样的操作,其被构造为使得对用户识别有用的元数据 状态的方面被反映在状态指示符(例如,节点标识、编码的光标状态、插入指向状态、"彩条" 的状态,其将其状态沿着代码块的边缘延伸到颜色代码,如在' 232申请等中公开的)中,所 述状态指示符通常在用来执行此功能的编辑界面中被使用。因此,复制和粘贴操作提供粘 贴的代码,其与它被粘贴到的操作上下文兼容,并以与用户可能在粘帖位置和/或在该操 作上下文中执行的其它编程操作(例如,新操作创建等)共享许多或大多数操作特性的方 式,关于状态指示和运行操作等而作用,包括其响应于粘贴位置的编辑操作的行为,等等。
[0018] 在编辑环境由于部件程序指令以基础编程语言(例如,标记语言)编写而抑制部 件程序指令、并替代地在编辑界面中使用指令的简化表示以有助于由相对不熟练的用户 (例如,不理解标记语言的用户)编程时,出现另外的考虑。在这样的情况下,在各个实施例 中,这对复制和粘贴命令来说可能是有利的:对指令表示和基础编程语言都自动操作,同时 向用户隐藏基础程序复制和粘贴操作。这对复制和粘贴命令来说也可能是有利:自动展开 最初在指令表示中收缩的任何父节点,使得用户可以看到它们的子节点,从而理解复制和/ 或粘贴操作的全部范围。此外,如上所述的编辑环境的图形用户界面可以包括编辑上下文 状态指示符,其在接近于所显示的部件程序表示的位置中显示,以指示该位置的编辑上下 文状态(操作上下文状态)。在这样的情况下,这对复制和/或粘贴命令来说可能是有利 的:操作使得粘贴的元素以类似于新创建或插入的新的指令那样的方式作用,而不
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1