内容管理的制作方法
【专利摘要】内容管理包括构成具有模块化对象和与模块化数据相相关联的元数据的库。响应于查询,可以部分地基于元数据来搜索库。查询可以与工业过程的实现相关。可以将库中的一个或更多个模块化对象识别为满足查询。可以输出查询的结果,并且输出可以包括所识别的模块化对象和与所识别的模块化对象相关联的相应元数据。元数据可以是关于对象所获知的可能不能在运行控制时访问的任何事。
【专利说明】内容管理
【技术领域】
[0001]本主题公开内容总体上涉及工业自动化设计,以及总体上还涉及用于工业自动化应用的设计对象。
【背景技术】
[0002]在工业环境中广泛采用计算机联网能力和处理能力导致了工业自动化系统的日益增加的使用。这些工业自动化系统可以是复杂的,并且被期望包括工业自动化系统的不同部件之间的功能配合。不同部件可以由一个供应商供应,或者在许多情况下由不止一个供应商供应。因此,通常部件之间存在有限的互操作性和一致性。在用户侧,有限的互操作性和一致性导致了用户不满意。在供应商侧,来自不同供应商的部件的互操作性未必是优先考虑的。
【发明内容】
[0003]以下呈现简化的
【发明内容】
以提供本主题公开内容的一些方面的基本理解。所述
【发明内容】
不是宽泛的概述并不意在确定所有方面的关键要素或重要要素,也不意在描述任意方面或所有方面的保护范围。所述
【发明内容】
的唯一目的是以简化的形式呈现一个或更多个方面的一些概念作为之后呈现的详细描述的开始。
[0004]一方面涉及一个系统,所述系统包括存储器以及通信地耦接至所述存储器的处理器。所述存储器存储计算机可执行指令,所述处理器使所述计算机可执行指令的执行便利:至少构成具有多个模块化对象以及与所述多个模块化对象相关联的元数据的库。所述处理器还使所述计算机可执行指令的执行便利:响应于与工业过程的实施相关的查询来至少搜索所述库,其中所述搜索是部分地基于所述元数据的。所述处理器还使计算机可执行指令的执行便利:识别来自所述多个模块化对象中的满足所述查询的一个或更多个对象并输出查询结果。所述输出包括所述一个或更多个模块化对象以及与所述一个或更多个模块化对象相关联的相应元数据。
[0005]另一方面涉及一种方法,所述方法包括:由包括处理器的系统创建包括一个或更多个对象以及与所述一个或更多个对象相关联的元数据的库。所述方法还包括:由所述系统区分所述库的一个或更多个对象中与请求匹配的第一对象。另外,所述方法包括由所述系统呈现所述第一对象以及来自一个或更多个元数据的至少第一元数据的视觉表示,其中,所述第一元数据与所述第一对象相关。
[0006]又一方面涉及一种系统,所述系统包括存储器以及通信地耦接至所述存储器的处理器。所述存储器存储计算机可执行指令,所述处理器使所述计算机可执行指令的执行便利:从源程序接收与工作流开发相关的设计输入。另外,所述处理器使所述计算机可执行指令的执行便利:部分地基于所述设计输入来至少创建工作流设计。所述处理器还使所述计算机可执行指令的执行便利:至少将所选择的对象集成至所述工作流设计中,其中,与所选择的对象相关联的功能显露在所述工作流设计中并输出关于设备的工作流设计。[0007]再一方面涉及一种方法,所述方法包括:由包括处理器的系统接收开发工作流的请求,由所述系统访问与源程序以及包括对象和相关联的元数据的库相关联的设计输入。所述方法还包括:由所述系统基于所述设计输入、所述对象以及所述相关联的元数据建立工作流;以及由所述系统将所述工作流输出给用户或外部系统。
[0008]再一方面涉及一种系统,所述系统包括存储器以及通信地耦接至所述存储器的处理器。所述存储器存储计算机可执行指令,所述处理器使所述计算机可执行指令的执行便利:至少创建多个模块化对象并且将功能集成至所述多个模块化对象的每个模块化对象中,其中,至少一种功能与至少一个模块化对象集成在一起。所述处理器还使所述计算机可执行指令的执行便利:至少接收所述多个模块化对象集合的执行请求,并且在所述多个模块化对象集合的执行期间显露所述功能。
[0009]再一方面涉及一种方法,所述方法包括:由包括处理器的系统构建包括第一对象和第二对象的库,由所述系统将第一功能嵌入至所述第一对象以及将第二功能嵌入至所述第二对象。所述方法还包括:由所述系统执行所述第一对象和所述第二对象中的至少一个,以及由所述系统显示所述第一功能、所述第二功能或所述第一功能和所述第二功能二者作为执行结果。
[0010]再一方面涉及一种系统,所述系统包括存储器以及通信地耦接至所述存储器的处理器。所述存储器存储计算机可执行指令,所述处理器使所述计算机可执行指令的执行便利:响应于对象的设计请求至少输出一组对象和一组功能,接收从所述一组对象中选择的第一对象和从所述一组功能中选择的第一功能。所述处理器还使所述计算机可执行指令的执行便利:至少将一组规则应用于所述第一对象和所述第一功能,由于所应用的一组规则将所述第一对象和所述第一功能绑定在一起。
[0011]再一方面涉及一种方法,所述方法包括:由包括处理器的系统评估包括一组对象的数据模型的设计请求,由所述系统输出替代对象和与所述数据模型相关的关联功能。所述方法还包括:由所述系统接收将一个或更多个替代对象和关联功能包括在所述数据模型中的指示,以及由所述系统将述一组规则应用于被包括的一个或更多个替代对象和关联功能。另外,所述方法包括:由所述系统创建数据模型,所述数据模型包括所选择的一个或更多个替代对象、所述关联功能以及所应用的一组规则。
[0012]为了完成前述目的和/或相关目的,以下描述和附图提出了 一个或更多个方面的特定示例性特征。这些特征是示例性的,然而可以采用根据各个方面的原理的若干方式。其他优点和区别性特征根据以下结合附图考虑的详细描述将变得明显,本公开内容的方面意在包括所有这样的方面及其等价物。
【专利附图】
【附图说明】
[0013]图1示出了根据一个方面的非限制性系统的示例,该非限制性系统被配置以提供整体的、自下而上的方法以便利工业应用的对象的设计、管理以和使用以及其他类型的应用;
[0014]图2示出了根据一个方面的被配置成维持内容并且包括对象和元数据的非限制性系统的示例;
[0015]图3示出了根据一个方面的用于响应于工业过程的实施请求的非限制性系统的示例;
[0016]图4示出了根据一个方面的用于操作对象的非限制性系统的示例;
[0017]图5示出了根据一个方面的被配置成集成工作流与库模块的非限制性系统的示例;
[0018]图6示出了根据一个方面的用于根据工作流设计识别缺失的对象的非限制性系统的示例;
[0019]图7示出了根据一个方面的被配置成生成确诊信息和能力的非限制性系统的示例;
[0020]图8示出了根据一个方面的被配置成便利对象设计的非限制性系统的示例;
[0021]图9示出了根据一个方面用于内容管理的非限制性方法的示例;
[0022]图10示出了根据一个方面的用于更新库的非限制性方法的示例;
[0023]图11示出了根据一个方面的用于合并两个或更多个对象的非限制性方法的示例;
[0024]图12是根据一个方面的用于集成工作流的非限制性方法的示例;
[0025]图13示出了根据一个方面的被配置成识别并获得初始未包括在工作流中的对象的非限制性方法的示例;
[0026]图14示出了根据一个方面的用于创建对象或模块的非限制性方法的示例;
[0027]图15示出了根据一个方面的用于将功能嵌入至合并的对象中的非限制性方法的示例;
[0028]图16示出了根据一个方面的用于对象设计的非限制性方法的示例;
[0029]图17示出了根据一个方面的用于选择性地屏蔽和/或揭露数据的非限制性方法的示例;
[0030]图18示出了根据一个方面的可操作以执行本公开内容的方面的计算机的框图;以及
[0031]图19示出了根据一个方面的示例性计算环境的示意性框图。
【具体实施方式】
[0032]现在参照附图描述各个方面。在以下描述中,为了解释,提出许多特定细节以提供一个或更多个方面的透彻理解。可能显而易见,然而这样的方面可以不需要这些特定细节来实现。在其他情况下,为了便利描述这些方面,公知的结构和设备以框图形式示出。
[0033]应当注意,在本公开内容中解释的系统、装置和/或过程的各个实施方式可以构成包括在一个或更多个机器中的机器可执行部件,例如包括与一个或更多个机器相关联的一个或更多个计算机可读介质。这些部件当被一个或更多个机器(例如计算机、计算设备、虚拟机器等)执行时可以使所述机器执行上述操作。
[0034]工业自动化总体上涉及使用控制系统以增加工业过程的生产力和/或质量。在本文中便于生产商品和/或传递服务的过程被称为“工业过程”。另外,在本文中管理、命令、引导和/或调节在工业过程中利用的设备和/或其他设备的行为的设备和/或一组设备被称为“控制系统”。
[0035]由于工程外包、执行标准和/或缩短产品周期的努力,工业自动化装备的用户期望操作所有元件以提供关于产品甚至关于生产的第一天的丰富、统一以及集成的信息。为了提供这样的益处,本公开内容的方面便利了在公共上下文(例如在应用、机器、供应商、技术等方面的普通的或可再度使用的上下文)中制造的机器、生产线或工艺的自动化。另外,借助于本公开内容的方面,集成信息在操作工业自动化装备的应用中可用,不管与这样的工业自动化装备和系统相关联的不同供应商和/或部件的数目。另外,本公开内容的方面可以提供从交换信息能力(例如语法)到信息的内容的固有设置(例如语义)的转变。
[0036]本公开内容的方面可以便利业务模型的开发以提供具有如下信息的整条生成线:所述信息可以帮助克服与工程成本的增加相关联的挑战,降低机器的市场价格,将生产转移至新兴市场并且增加终端用户的需求。另外,本公开内容的方面可以被配置成提如下供预制应用技术:其可以被立即用于机器以抵消较低的技能组合、增加的工程成本以及较低的机器区分的增加。
[0037]图1示出了根据一个方面的非限制性系统100的示例,该非限制性系统可以被配置成提供整体的、自下而上的方法以便利工业应用的对象的设计、管理和使用以及其他类型的应用。例如,可以由控制系统使用对象以管理、命令、引导和/或调节在工业过程中利用的其他设备的行为。控制系统的示例包括但不限制于可编程逻辑控制器(PLC)、可编程自动控制器(PAC)以及可以在工业过程中利用的其他控制设备。
[0038]系统100可以至少部分地包括设备102,该设备102可以为例如机器、工业装备、工业自动化系统、台式计算机、平板计算机、膝上型计算机、游戏设备、移动电话和/或其他类型的通信设备。可以部分地基于可再度使用的内容提供自下而上的方法,该可再度使用的内容考虑到特定于行业的焦点。
[0039]如在本文中利用的,术语“对象”总体上指可以在工业自动化系统中利用的一条或更多条软件代码(例如,工业自动化应用)。对象为可再度使用的软件:其能够被应用于应用并且能够暴工业自动化应用的部件(例如硬件(例如设备)、软件或硬件和软件二者)的功能而且还提供对与工业自动化系统的各个部件的通信和互动的细节的抽象。
[0040]对象是可定制的,使得对象包括能够针对工业自动化系统中的应用快速并容易地进行定制的代码段。可以针对特定应用定制与工业应用的部件通信和互动的细节而不需要重新编码所有代码。此外,尽管在本文中使用单数形式,但是术语“对象”可以为两个或更多个单一对象的组合(例如应用)。
[0041 ] 引用的“对象设计”总体上指针对一个或更多个应用的对象(例如待被一个或更多个控制系统使用的对象)的定制。对象设计可以包括创建、定制和/或操作能够自动和/或手动实施的一个或更多个对象。例如,当创建对象时,可以由设计者手动定义与所述对象相关联的信息或元数据。在另一个示例中,当对象用于特定应用时,可以创建与所述对象相关联的元数据和/或对现有元数据进行注释。在又一个示例中,可以基于对象的源来自动应用与对象相关联的信息或元数据(例如,如果对象取自另一个应用,则自动应用于与其他应用相关联的元数据)。
[0042]在本文中利用的术语“应用”或“工业自动化应用”总体上指用于便利生产商品和/或传递服务的过程的(被控制系统利用的)控制代码。例如,应用可以包括被链接并且可以一起操作以满足工作流的一个或更多个对象。例如,工作流可以定义工业过程的生产目标和/或工业过程的规则。可以识别一个或更多个对象(例如应用)的配置并且可以链接所述对象以满足生产目标和/或工作流的生产规则。
[0043]继续参照图1,系统100能够包括至少一个存储器104,该至少一个存储器104能够存储计算机可执行部件和指令。处理器106能够在通信上耦接至该至少一个存储器104。耦接能够包括各种通信,包括但不限于直接通信、间接通信、有线通信、和/或无线通信。注意的是,尽管可以在本文中描述一个或更多个计算机可执行部件并将其示出为与存储器104分离(例如,在操作上连接至存储器)的部件,但是根据各种实施方式,能够将一个或更多个计算机可执行部件存储在存储器104中。此外,在示出各种部件为分离部件时,将理解的是,在不偏离示例实施方式的情况下,能够将多个部件实施为单个部件,或者能够将单个部件实施为多个部件。
[0044]在系统100中还能够包括数据存储器,称为库108,其能够存储一个或更多个对象110。尽管库使用了单数,然而库能够涉及单个库或一组库(包括两个或更多个库)。能够再使用(例如,可再使用)和/或定制(例如,可定制)存储在库108中的对象110。对象110能够为能够包含在库108中的标准对象(例如,未修改的对象)、定制对象、或标准对象与定制对象的组合。在实施中,为了利于发现两种对象类型,能够对标准对象和定制对象进行区另O。例如,能够不同地表示标准对象和定制对象以利于发现两种对象类型。
[0045]根据一些方面,库108还能够存储通过链接对象所创建的应用,因此库108能够保持对象和应用二者。根据另一个方面,能够将应用转变成可搜索对象,该可搜索对象能够以与能够被存储和/或被搜索的标准对象和/或定制对象相似的方式被存储和/或被搜索。
[0046]在实施中,库(例如,单个库或一组库)能够为公共库(例如,全球库)。在另一个实施中,库能够为专用库(例如,局部库)。一组库能够包括公共库、专用库、或其组合(例如,两个或更多个公共库、两个或更多个专用库、一个或更多个专用库和一个或更多个公共库等)。此外,一组库中的单个库能够被托管在一个或更多个位置(例如,分布在多个数据存储器和/或多个位置上)。
[0047]通过在因特网上可用的公共网络、公共服务器能够将公共或全球库托管为云计算方案等。在示例中,公共库能够以Web应用的形式。根据一个或更多个公共安全协议和/或公共安全例程能够可访问公共库。例如,全球安全协议能够应用于在广域网上通信地耦接的一组设备。根据一个方面,安全协议能够为开放安全协议,其能够使用户免费(例如,不存在与查看对象相关联的费用)或基于支付的收据(例如,存在查看对象的相关联费用)能够查看包含在库中的对象。在无需支付就能够查看对象的示例中,能够限制与库和包含在库中的对象相关联的其他功能(例如,下载、和注解等)的使用直到接收到适当支付为止(例如,基于费用的访问)。在另一个示例中,在能够查看对象且执行其他动作之前,用于访问库的支付可能是必需的(例如,与查看、使用、和/或操作对象相关联的费用)。
[0048]通过专用网络能够访问专用或局部库,该专用网络为例如工厂网络、工作场所网络(例如,企业内部互联网)、和根据工艺协议例如以太网/IP或公共工业协议应用的网络等。能够使用专用安全协议使得只有被授权的用户能够访问专用库。例如,专用安全协议能够应用通过一个或更多个局域网通信地耦接的一组设备。分配给每个被授权的用户的权利能够为用户的角色、位置、和安全等级等的函数。例如,机械操作者可能具有限制的权利,而设计者或工程师可能具有非限制的权利。在另一个示例中,专用库能够为个体的私有库,其中,拥有库的个体具有对库的非限制访问,而其他用户的访问被拒绝和/或限制。[0049]如上所示,对象能够为能够用于工业自动化应用的软件代码。软件代码能够为可再使用的软件和/或可定制的成件软件,其能够显露工业自动化应用的部件(硬件和软件二者)的功能性,同时根据工业自动化应用的这样部件的通信和交互的细节来提供抽象。对象具有至少某一程度的模块性并且还能够被称为“模块”和/或“模块化对象”。模块性通常涉及将对象与其他对象分离和/或将对象与其他对象结合的能力。模块化对象使得编程者能够集中于对象的功能性上而非实施的机械学上。此外,能够使用对象来利于不同设备的集成,其提供能够在不同设备之间进行交互的标准变成工具。
[0050]对象能够包括能够使得对象能够实施在各种应用中的一个或更多个功能性。例如,每个对象(例如,库中的兼容项目的每个项目)能够包括一组公共(例如,全球)功能、一组项目特定功能、一组工业特定功能、一组客户(例如,端用户)特定功能、或其组合。在实施中,每个功能能够具有一组被限定的接口。例如,功能的属性能够包括人机接口、针对可编程自动化控制器内的其他功能的接口、历史编辑器、报告属性、对象文件、模块文件、训练材料、工具、和/或质量属性。
[0051]在库108中还能够包括一个或更多个元数据112。在示例中,每个对象110能够与至少一个元数据112相关联。在另一个示例中,例如当多个设计对象被用于相同产品线或用于不同产品线时,多个设计对象能够与同一个元数据相关联。然而,在一些情况下,不同的对象能够与不同的元数据相关联。当设计对象时和/或在设计了对象之后能够创建元数据,例如当使用对象或对象的集合并且用户对元数据进行注解和/或创建新的元数据时。另外地或可替代地,能够基于应当与关联对象相关联的信息的推论来自动创建元数据(例如,如果从外部系统采集对象,则能够包括与外部系统有关的信息作为元数据)。
[0052]元数据112能够识别对象和/或对象的特征。元数据112还能够利于搜索对象和/或其他动作。在示例中,元数据包括与对象的创建者相关的信息(例如,设计者的名称、和设计者的联系信息等)。在另一个示例中,元数据能够包括与对象的功能性相关的信息。根据另一个示例,元数据能够包括与其中能够实施对象和/或功能性的应用相关的信息。在另外的示例中,元数据能够包括与针对其设计了对象和/或功能性的产品相关的信息。在又一另外的示例中,元数据能够包括能够可再使用的定义的定义。该可再使用的定义能够包括能够改变工业自动化系统中一个或更多个资源的状态的程序代码(例如,能够控制阀的打开和/或闭合的逻辑代码)程序代码能够为例如梯形逻辑、功能图、脚本、JAVA、和C代码等。在另一个示例中,程序代码能够为自动化内容,包括但不限于操作者可视化屏幕、管理信息仪表盘、和产品配方对象等。此外,元数据能够包括能够包括一个或更多个资源的规格,其,该一个或更多个资源能够包括装备、材料、人员、区段、和存储等中的一个或更多个。在示例中,资源能够为根据逻辑代码被打开和/或闭合的阀。
[0053]在示例中,库108能够被保持在存储器104中,能够与存储器104分离,或者能够被保持在设备102的另一个部件中。然而,根据一些方面,库108、对象110、和/或相关元数据112未存储在设备102上,但设备102从内部源、外部源、或内部源和外部源二者可访问库108、对象110、和/或相关元数据112。例如,对象110和相关元数据112能够存储在设备102的另一个部件中,或者能够例如通过系统100和/或不同系统的另一个设备和/或部件被存储在设备102外部并且能够通过空中接口、通过有线接口、通过因特网、或通过其他通信装置被设备102可访问。例如,由于存储能力和/或处理能力,可能有益的是,将对象和相关元数据保持在设备102外部,并且当需要时设备102能够从外部源选择性地检索对象和相关元数据。
[0054]设备102还能够包括接口部件114,该接口部件114能够被配置成使得能够向和/或从设备102传达(例如,传送)信息。例如,接口部件114能够为用户接口,例如屏幕、显示器、键盘、麦克风、和/或使得用户能够与系统进行通信(例如,有利于各种类型的通信的发送和/或接收)的另外的装置。接口部件114能够使得设计者和/或用户获得查看对象和/或元数据、对对象和/或元数据进行注解、和/或增加新的对象和/或元数据的能力。在示例中,接口部件114能够使得能够按照所述来针对具体目的(例如,针对具体应用)对完全不同类型的对象进行分组。
[0055]接口部件114能够通过声频装置(例如,麦克风/扬声器对)、通过视频装置(例如,显示器或屏幕)、和/或通过传达信息的其他方式(例如,灯(能够为彩色灯)的发光、和触觉方式(包括振动)等)。在实施中,接口部件114能够为与设备102集成在一起的显不器或在操作上与设备102连接(例如,被外部源托管)的显示器。在另外的或可替代的实施中,接口部件114能够为与设备102集成在一起的麦克风/扬声器或在操作上与设备102连接(例如,被外部源托管)的麦克风/扬声器。
[0056]在一个方面,接口部件114能够提供图形用户接口(⑶I )、命令行接口、语音接口、和自然语言文本接口等。例如,能够使GUI变成提供给用户待例如下载、输入、选择、和读取各种请求的区域或手段,并且GUI能够包括待呈现这样的结果的区域。这些区域能够包括文本和/或图形区域,该文本和/或图形区域包括对话框、静态控件、下拉菜单、列表框、弹出菜单、编辑控件、复选框、单选按钮、检查框、按钮、和图形框。另外,可以采用有利于信息传达以确定区域是否将可见的实用程序,例如用于导航的垂直和/或水平滚动条和工具条。因此,能够推出用户的确想要执行的动作。
[0057]例如,用户还能够通过各种设备例如鼠标、滚动球、小键盘、键盘、笔、用相机捕捉的姿势、和/或话音激活与区域进行交互来选择并提供信息。典型地,能够在输入信息之后使用例如键盘上的下压按钮或输入键的机构来初始化信息传达。然而,公开的方面不限于此,而例如仅仅强调检查框能够初始化信息传达。在另一个示例中,能够使用命令行接口。例如,命令行接口能够通过提供文本消息、或产生音调等来提示用户信息。然后用户能够提供适合信息,例如与接口提示中提供的选项对应的字母数字输入或与提示中提出的问题对应的答案。应当理解,命令行接口能够结合CTI和/或API来使用。另外,命令行接口能够结合硬件(例如,视频卡)和/或显示器(例如,黑色和白色、和EGA)在受限图形支持和/或低带宽通信通道下来使用。
[0058]系统100中还能够包括文本管理器116,该文本管理器116能够被配置成保持包括对象110和元数据112在内的内容。在实施中,文本管理器116能够被配置成有利于识别对象适用的应用的类型。在另一个实施中,文本管理器116能够有利于评价对象110和/或元数据112,并且有利于响应于一个或更多个疑问来选择性地检索并整理对象110和/或元数据112。根据另外的实施,文本管理器116还能够被配置成有利于对内容进行评级和/或提供与一个或更多个疑问相关的建议的列表。例如,文本管理器116能够有利于基于使得各个用户能够通过例如web浏览器(例如,wiki)相对于内容进行增加、修改、删除、评级和执行其他动作的站点所建立的平台。为了提供建议和/或相对于内容执行其他动作能够使用用户提供的信息。
[0059]系统100还能够包括集成管理器118,该集成管理器118能够被配置成增强并优化工作流设计。根据实施,集成管理器118能够有利于对象110和/或元数据112与来自其他系统的信息和/或与去向其他系统的信息的动态匹配。例如,来自其他系统的信息能够包括能够在工业控制处理的自动化中使用的外部源对象。在另一个示例中,去向其他系统例如目标系统的信息能够包括包括公共接口的对象,该公共接口使得对象能够在目标系统上被展开。
[0060]系统100中还能够包括进程管理器120,该进程管理器120能够被配置成有利于工业自动化系统内诊断信息的生成和诊断能力的使用。例如,基于对初始化工作流的请求,进程管理器120能够从库108检索对象并评价对象中的每个对象的诊断能力。如果检索到的对象不包括工作流需要的诊断能力,则能够发送请求以包括工作流中缺失的诊断能力,其中,具有推荐的诊断能力的对象能够被创建和/或从外部源被检索到。
[0061]另外,系统100能够包括数据模型管理器122,该数据模型管理器122能够被配置成有助于对象设计和/或应用设计。例如,数据模型管理器122能够有利于推荐一组对象和相关联元数据以用于创建分级数据模型。能够将规则选择性地应用于该组对象。另外,按照规则而有效的对象能够被合并到分级数据模型中。基于用户的识别(例如,安全凭证、和用户角色等),能够使与分级数据模型中的对象相关联的元数据显露给用户、或对用户隐藏。
[0062]将参照以下附图来提供与文本管理器116、集成管理器118、进程管理器120、和数据模型管理器122相关的另外的信息。另外,尽管部件中的一个或更多个被示出并描述为位于设备102上,然而能够将其定位在设备102外部。
[0063]图2示出了根据一个方面的示例非限制系统200,该系统200被配置成保持包括对象110和元数据112在内的内容。由于设计库填充有数百个,所以如果不是数千个设计对象和模块,则开发者(和其他人)就可能难于识别感兴趣的对象或模块。公开的方面能够识别对象适用的应用的类型并管理内容。系统200能够聚合内容(例如对象、和元数据等)并提供对内容的视觉表示,该内容能够以分组内容(例如元数据模型)的形式来表示。另外,系统200能够提供灵活且可扩展的设计库,该设计库能够显露自动化合作构架和软件开发设计环境的潜在模型和特征。
[0064]随着创建对象110,设计者可以将元数据112与对象110相关联。在创建时刻与各个对象相关联的元数据可以包括对象的描述、其中意于使用的对象的一个或更多个应用以及其他信息(例如,创建者身份、至其他对象的链接等)。还可以将元数据112注释为所使用的对象。该对象和相关的元数据可以被接口部件114接收,该接口部件114可以与设计者或用户直接进行通信或者通过其他设备、系统和/或实体间接地(例如,通过互联网)进行通信。元数据112使得系统能够理解对象(例如,将对象用于什么用途,对象的潜在应用,相关对象等)。元数据112还可以使得系统能够提供查询结果。(例如,查询元数据),和/或能够表示对用户的搜索(例如,生成建议列表)。
[0065]因为对象是模块化的(例如,模块化对象),所以对象被设计所用的应用可能不是该对象可以被使用的唯一应用。因此,对元数据的注释可以扩展库108。此外,元数据112可以使得对象110能够被搜索。元数据112可以包括:对象的描述,该对象的描述可以包括该对象可以做什么(例如,其用途);描述对象的关键字;以及可以用于识别并应用工业自动化系统(和/或另一系统)中的对象的其他信息。元数据可以是已知在运行时间控制处不能访问的对象的任意元数据。例如,元数据可以识别该对象适于哪种类型的应用。
[0066]在实施中,用户接口部件114可以使得作者(例如,设计者)和/或用户能够创建和/或注释元数据112。识别数据可以包括例如描述符、关键字、与已经在哪里使用过对象有关的信息、版本控制数据、作者、确认、安全性等。这样的方面可以被用于不能通过运行时间控制访问的任何合适的对象或模块。上下文管理器116可以被配置成将元数据112与一个或更多个对象110相关联。因此,元数据112可以提供用于待进行自描述以及能够待被搜索的对象110的装置。
[0067]系统200可以包括采集模块202,该采集模块202可以被配置成使用多个模块化对象和与多个模块化对象相关联的元数据来填充库。例如,采集模块202可以在对象被创建的近似同一时间或不同时间接收对象以及相关联的元数据。例如,因为使用一个或更多个对象,所以可以创建新的元数据并且/或者可以对现存的元数据进行修改和/或删除。因此,采集模块202还可以被配置成随着对对象和/或元数据进行改变来更新库。
[0068]与工业过程(例如,工业自动化应用)的设计和/或实现有关的一个或更多个查询204可以通过接口部件114来接收。例如,用户可能想要使工业环境中的混频器自动化,并且查询可以是对与如何使混频器自动化有关的信息的请求。例如,查询可以使用自然语言例如“如何使混频器自动化”。在另一示例中,接口部件114可以输出使得用户能够选择期望内容的图片或文本(例如,可以呈现混频器的图片)。接口部件114可以通过一系列的画面来引导用户,该一系列的屏幕可以使得用户能够挖取期望内容。因为新的数据基于所接收的用户输入是可用的,所以接口部件114可以选择性地提供用户可以用来寻找期望信息的更多的信息(例如,额外的图片或文本)。
[0069]可以将查询信息输送至被配置成易于评估对象110和/或元数据112的上下文管理器116,使得可以将查询的结果提供给用户。在实施中,搜索引擎206可以被配置成接收并执行与和设计对象相关联的搜索有关的查询204。在实施中,部分地基于元数据112,搜索引擎206可以执行库108的搜索。例如,搜索引擎206可以显露元数据模型208,该元数据模型208可以用于识别一个或更多个适当的对象以用于与设计任务的连接。元数据模型208可以是动态的,其中,可以对对象110的各种配置进行评估,以确定可以用来满足查询的对象的一个或更多个组合。
[0070]根据方面,搜索引擎206可以采集关键字和其他数据(例如,来自元数据112),并且评估器210可以从库中识别满足查询的一个或更多个对象。根据实施,搜索引擎206可以选择性地为对象和/或模块编注索引以及慢慢研究对象和/或模块以获取信息。例如,随着用户开始建立其应用并且使用代码,用户通过首先选择来自库的对象而开始。可以基于请求向用户呈现库中的项列表。可以将与请求相匹配的元数据用于向用户呈现对象列表。
[0071]在实施中,评估器210可以分析由设备模块组成的一组模块,其中,分析超出仅关键字的采集。例如,评估器210可以决定在下一个阶段应当如何连接模块并且能够如何显示这样的连接(例如,通过接口部件114)。在另一示例中,评估器210可以分析元数据112中的各个查询的关键字并且寻找该关键字或其同义字。当可以通过评估器210来识别(例如,发现匹配)来自满足查询的多个模块化对象的一个或更多个模块化对象时,可以将相关联的对象分类为可以回应查询的潜在方案或者方案的一部分。
[0072]基于该匹配,例如,可以通过接口部件114将为元数据模型208形式的查询结果输出至用户。该输出可以包括一个或更多个模块化对象和相对应的元数据。
[0073]图3示出了根据一个方面的用于响应于用于工业过程的实施的查询的非限制性系统300的示例。为了响应于查询,需要将与查询相关的信息应用于模块化对象110和/或元数据112以提供有用结果。
[0074]根据实施,提取模块302可以被配置成分析查询204中的每个查询并且从查询中挖掘关键字、词组和/或短语。例如,如果查询为“如何使混频器自动化”,则由提取模块302挖掘的关键词组可以是“自动”和/或“混频器”。在另一示例中,如果查询为“如何从食品生产线消除细菌”,则所挖掘的关键词组可以包括“细菌”、“食品”、“生产线”和/或“食品生产线”。提取模块302还可以获得同义字、普遍拼写错误和/或相关词组以确定查询的基础。
[0075]基于由提取模块302挖掘的关键字、词组和/或短语并且/或者其他项(例如,同义词,普遍拼写错误等),关系模块304可以被配置成将关键词组与元数据112进行匹配。例如,关系模块304可以在所挖掘的关键词组与包括在元数据112中的关键词组之间进行一对一匹配。在另一示例中,关系模块304可以包括数据库(或可以访问数据库),以确定相关词组(例如,同义词,普遍拼写错误等),从而对可以通过提取模块302执行的这样的分析增加或代替的元数据112进行分析。
[0076]应当注意,数据库可以包括易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。通过说明但不限于此的方式,非易失性存储器可以包括只读存储器(ROM)、可编程ROM (PR0M)、电PROM (EPROM)、电可擦除PROM (EEPRON)或闪存。易失性存储器可以包括可以用作外部高度缓冲存储器的随机存取存储器(RAM)。通过说明但不限于此的方式,以例如如下的许多方式RAM是可用的:静态RAM (SRAM);动态RAM(DRAM);同步 DRAM (SDRAM);双倍速率 SDRAM (DDR SDRAM);增强型 SDRAM (ESDRAM);同步链路DRAM (SLDRAM);以及直接总线式RAM (DRRAM)0所公开的各个方面的存储器(例如,数据存储、数据库等)意于包括但不限于这些存储器和任意其他合适类型的存储器。
[0077]关系模块304可以识别作为响应于查询的潜在候选的一个或更多个元数据112。作为识别的结果,应用模块306可以被配置成访问和与关键词组相匹配的元数据有关联的一个或更多个模块化对象。一个或更多个模块化对象可以返回作为查询结果。例如,接口部件114可以以可见格式(例如,视觉、听觉等)输出一个或更多个对象。
[0078]另外地或可替代地,推荐模块308可以被配置成建议将来自多个模块化对象的模块化对象的子集用于工业过程的实施。例如,元数据112可以包括与如下对象有关的信息:该与相同或相似业务中的对象不同的对象已经用于获得相同结果和/或相关结果。例如,如果查询与使混频器自动化有关,则已经使混频器自动化的其他查询可能已经使用产品或使用一个或更多个对象和/或一个或更多个元数据。在此情况下,推荐可以使得向用户呈现(通过接口部件114)产品、和/或一个或更多个对象和/或一个或更多个元数据作为建议。用户可以选择产品、对象和/或元数据中的一个或更多个,以使其过程自动化。
[0079]在实施中,推荐模块308可以检查其他元数据(不同于与关键词组相匹配的元数据)以确定其他对象是否可以适于作为响应于该查询的替换方案。如果检查确定存在适当的对象,则可以将一个或更多个对象返回作为一建议备选方案的形式的查询结果。所建议的备选可以通过接口部件114向用户呈现。
[0080]可替代地或另外地,推荐模块308可以被配置成提供与一个或更多个查询204有关的建议列表作为分级结果。在实施中,可以使用类似于维基的平台,以使得用户能够对对象进行划分等级和/或注释。例如,用户可以与接口部件114进行交互,以访问关于各个对象、关于一个或更多个对象或关于一组对象的信息。该信息可以被保存作为元数据112并且可以与一个或更多个对象110相关联。此外,可以将一组对象识别作为对象的组合。
[0081]在实施中,分类模块310可以被配置成根据所接收的等级(通过接口部件114)对对象进行分级。例如,分类模块310可以基于用户等级(例如,具有最有利的等级的对象分级最高)、基于最普遍的等级(例如,使用最多的对象)等对对象进行分级。该分级可以作为查询的结果输出(例如,通过接口部件114)和/或可以被评估器210用来确定针对特定应用应当使用哪个对象。例如,如果向评估器210呈现具有相似功能的两个或更多个对象,则评估器210可以使用该分级以选择代替其他对象的对象之一(例如,具有较高分级的对象是优选的)。
[0082]图4示出了根据一个方面的用于操纵对象的非限制性系统400的示例。在示例中,基于从用户接收的信息,可以手动地操纵对象。在另一示例中,部分地基于对象的使用以及其他内在和/或外在信息(例如,用户输入、通过系统的观察等),可以通过系统300来动态地或自动地操纵对象。
[0083]在实施中,观察查询输出(例如,结果)的用户可以期望来改变对象和/或相关联的元数据。例如,可以在创建对象时接收与相对应的对象相关联的元数据,并且因此,对于在已经使用对象后更新该元数据是有利的。元数据可以包括相关联的模块化对象的功能,并且/或者,该元数据可能是特定于工业应用的并且包括工业实践信息。在另一实施中,元数据112可以受客户的约束,并且随着客户访问系统,该客户可以观察到工业中的其他元数据能够使用库内容来完成。
[0084]根据该实施,接口部件114可以接收相对于至少一个元数据的至少一个用户注释402。注释402可以直接被输入至包含有元数据的文件和/或可以被单独接收并且通过系统400应用于元数据。基于注释信息,修改模块404可以被配置成将注释402应用于所识别的元数据并且创建至少一个注释的元数据406。上下文管理器116 (或采集模块202)可以使用注释的元数据406来填充库。在实施中,保留原始元数据112,使得原始元数据112(例如,未注释的元数据)和注释的元数据406两者被取回并且响应于一个或更多个查询204而呈现。
[0085]在另外的实施或替换实施中,可以积累并合并元数据,以在接合两个或更多个对象时创建新的元数据。因此,可以执行元数据接合操作,以创建新的元数据。元数据可以是已知在运行时间控制处不能访问和/或在运行时间控制处能够访问的对象的任意元数据。根据一个方面,响应于一个或更多个查询,上下文管理器116可以被配置成评估对象110和/或元数据112并且选择性地取回并核对对象110和/或元数据112。
[0086]系统400可以包括能够被配置成观察多个模块化对象110的使用的监视模块408。例如,监视模块408可以检查相对应的对象的元数据并且标注元数据的相似度。这样的相似度可以是基于关键字、关键词组、关键短语、预期端结果、关于为什么创建该对象的原因以及推荐使用等。此外,相似度可以基于表示两个或更多个对象完全一样的输入(例如,可以从库移除对象中的一个或更多个)。
[0087]基于相似度,组织模块410可以被配置成根据各个参数来合并对象和/或元数据。例如,监视模块408可以被配置成评估如何使用对象并且。因此,如果总是一起使用两个对象(例如,用于初始化报警的第一对象和用于消声报警的第二对象),则监视模块408可以识别这两个对象。基于该识别,组织模块410可以被配置成将两个(或更多个)单独对象与单一对象相结合。此外,组织模块410 (和/或修改模块404)可以结合或合并相关元数据和/或自动地创建适用于结合的单一对象的新的元数据(例如,注释的元数据406)。
[0088]如所讨论的,如果显露库108和相关联的内容,则还可以提供对象的标识(例如,元数据),该可以使得例如开发者能够以不同的方式来查看对象和/或合并对象。这还可以易于新对象的请求、新对象的建议以及显露现存对象的另外的功能。
[0089]图5示出了根据一个方面的可以被配置成使工作流程与库模块一体化的非限制性系统500的示例。本文所公开的各种系统可以提供可以将工作流程与库对象一体化的动态设计环境,以提高并优化工作流程设计。例如,对象可以显露并提供功能,并且当在工作流程上下文中与其他对象相结合时可以根据工作和数据流来使对象的互连性失效。以这样的方式,工作流程文件不再是静态的。相反,工作流程文件可以用作底层程序。
[0090]集成管理器118能够被配置成提供用于生成和/或集成对象和模块的通用接口。例如,能够利用所公开的方面来辅助处理器间通信(例如,管理控制器之间的链接)。不论是否配置该对象,两个或更多个对象能够具有通用接口。能够通过底层架构来提供通用接口,该通用接口能够使得开发者和/或其他用户能够直观看到两个对象能够共享数据。设计者和/或其他用户不需要看见或理解底层架构。
[0091]系统500能够被配置成接收来自例如用户的工作流请求502。该工作流请求502能够是用于开发工作流的请求。根据一个实现,工作流请求502由接口部件114接收。
[0092]对应于工作流请求502,提取模块504能够被配置成从源程序506获得与工作流开发有关的设计输入508。源程序506能够是与外部系统相关联的设计工具和/或对象。设计输入508能够由提取模块504通过例如将库中的一个或更多个对象110与从另外的系统接收的信息和/或送往另外的系统的信息进行匹配来获得。根据一些方面,在试图获得来自源程序506的设计输入506之前,查找针对满足工作流请求502的合适的设计输入的库108。
[0093]开发模块510能够被配置成部分地基于设计输入508来创建工作流设计512。由于在设计输入508中接收的元数据能够用于针对不同系统(例如源程序506执行或运行的系统)的接口,其中接口可能不被系统500所支持,所以提取模块504能够利用各种准则。例如,与对象相关联的元数据能够定义在不同系统中(例如,与源程序相关联的系统)。当接收到元数据时,在设计输入508 (或与设计输入508相关联)中,提取模块504能够评估元数据并且将所接收的元数据与已包括在库108中的元数据进行匹配。
[0094]考虑不同软件包例如不同绘图应用之间的通用性。如果将利用绘图应用来创建具有输入/输出(I/o)卡或模块的控制器,则不管所使用的绘图应用产品,都需要有关该I/O卡的类似信息。因此,提取模块504能够被配置成理解能够基于元数据来确定的所需信息的形式。这使得系统500能够从交换信息的功能(例如,语法)切换至固有的提供信息内容(例如,语义)。[0095]根据一个实现,提取模块504能够被配置成访问包含在不同系统中的信息并且获取包含其中的能够用于工作流设计的各种信息。在一个方面,提取模块504能够被配置成查看其他系统和/或模式中的数据库,该数据库能够视为确定能够从其他系统中获取的对象的位置和类型。能够将工作流设计512输出至用户(例如,通过接口部件114或另外的部件)。
[0096]在一个实现中,查看工作流设计512之后或开发工作流设计512期间,用户可以选择应该包括在工作流设计512中的一个或更多个对象110。因此,组合模块514能够被配置成将由用户选择的对象集成到工作流设计512中。与所选择的对象相关联的功能能够在工作流设计512内公开。
[0097]根据一个实现,未选择对象能够保留在针对未来消耗的保留区中。能够将未选择对象存储在数据库中。例如,根据一个方面,不放在工程(例如,工作流设计512)内的文件和/或数据块能够放在“剪贴簿”中用于以后使用。
[0098]图6示出了根据一个方面用于识别从工作流设计中丢失的对象的非限制系统600的示例。除工作流请求502之外,用户能够选择应该包括在所创建的工作流设计512中的一个或更多个对象110。例如,能够在与接收工作流请求502的时间大约相同的时间和/或不同的时间(例如,当正在创建工作流设计时,创建工作流设计之后等)来接收一个或更多个对象的指示(例如,由接口部件114)。
[0099]能够包括在系统600中的表示模块602能够被配置成以视觉格式来描述工作流设计和所选择的对象(例如,作为显示屏上的视觉表示)。根据一个实现,表示模块602和接口部件114能够交互以便于输出期望的信息。在一个实施方式中,当选择了对象时,视觉窗口识别丢失的工作流设计片断(例如,根据工作流以及对象/设计准则)给开发者,以提示用户哪些东西没有连接起来(例如,没有连接的工作流的部分)。
[0100]例如,当选择了对象时,能够提供识别丢失片断给开发者(和/或其他用户)的视觉窗口。能够基于工作流来识别丢失片断。根据一些方面,能够基于对象准则和/或设计准则来识别丢失片断。提供丢失对象的视觉表示提示开发者还需要的对象。根据一些方面,以另外的格式如通过听觉装置来提供表示。
[0101]根据一个方面,能够提供两个或更多个不同类型的视图。配置接口(例如,接口部件114)能够包括两个或更多个不同类型的视图的至少部分。根据一个方面,能够提供不同类型的视图的组织模型,其中配置接口能够是视图组的部分。例如,当正在创建工业过程或工作流设计时,可以存在能够利用的一些对象的替代者(例如,两个对象具有相似的功能并且能够选择任一对象)。因此,接口部件114能够提供不同视图的替代者,其中一个视图能够重叠到另外的视图上或者多个视图能够彼此重叠。被重叠的视图仍然能够保留有区别的特性(例如,不同颜色方案、不同类型的字体、不同背景等),使得用户不混淆包括在每个不同视图中的对象和/或元数据。在另外的示例中,视图中的一个视图能够是维护视图,其中第一视图提供事件的可视化(例如,触发的报警),而第二视图提供已经(可能已经)触发的事件的可视化。
[0102]也能够包括在系统600中的分析模块604能够被配置成识别从工作流设计512的视觉表示丢失的对象。在一个实现中,系统600也能够包括探索模块606,探索模块606能够被配置成查找针对由分析模块604所确定的识别为从工作流设计512中丢失的对象的库108。例如,探索模块606能够被配置成评估与对象110相关联的元数据112并且选择对象110中的至少一个来完成工作流设计512。导入模块608能够被配置成从库108将一个或更多个对象导入到工作流设计512中以消除丢失对象。
[0103]根据一个实现,如果从库中导入所有可能对象之后仍然存在从工作流设计丢失的对象,则探索模块606能够被配置成访问一个或更多个其他系统(类似于源程序506)以试图找到丢失对象。其他系统能够是不同于系统600的系统(例如,外部系统)。如果从外部系统找到丢失对象,则导入模块608能够从外部系统请求一个或更多个丢失对象,并且从外部系统接收的一个或更多个丢失对象能够应用于工作流(例如,由组合模块514)。
[0104]如果仍然未找到丢失对象,则能够识别视觉表示的丢失部分并且能够呈现用于用户输入的提示。该提示能够告知用户丢失对象不可用并且能够给用户提供执行关于丢失对象的一个或更多个功能(例如,选择不同的或可替代的对象,创建丢失对象等)的机会。
[0105]系统600也能够包括导出模块610,该导出模块610能够被配置成将工作流设计导出至一个或多个外部系统。例如,所选择的对象能够包括通用接口,该通用接口使得能够将工作流设计配置到外部系统上。根据一个实现,外部系统能够是与系统600接口的系统,其中在系统600和一个或更多个外部系统之间共享信息(例如,各自的库的信息)。
[0106]在可替代的或另外的实现中,验证模块612能够被配置成验证所选择对象和工作流设计的可互联性。例如,提供给用户选择一个或更多个对象110以包括在工作流设计512中的机会。然而,所选择对象可能不与工作流设计兼容,从而因此不能(或不应该)并入到工作流设计中,上述能够由验证模块612来确定。
[0107]在一个实现中,验证模块612将执行验证作为与工作流设计和/或至少一个所选择对象相关联的准则的功能。例如,验证模块612能够应用与工作流设计或至少一个所选择对象相关联的准则以便于验证可互联性。
[0108]根据另外的实现,验证模块612将与工作流设计和/或至少一个所选择的对象相关联的一组目标区分优先次序。基于该优先次序,验证模块612验证所选择对象和工作流设计的可互联性。例如,能够向开发者提供代替所选择对象和/或除所选择对象之外应该包括在工作流设计中的其他对象的提示或建议。如果由验证模块612确定为一个或更多个所选择对象不与工作流设计兼容,则能够向开发者提供能够使用的可替代对象。在选择一个或更多个可替代对象之后,能够执行进一步验证。然而,根据一些实施方式,在将替代者呈现给用户之前执行该验证。
[0109]在一个实现中,设计环境能够接收工作流的高级别目标(例如,产量增加25%,能量利用减少10%,每小时增加输出300个对象等),并且作为验证的部分(例如,验证过程),验证模块能够告知开发者该设计将实现该目标(或该设计无法实现该目标)。以类似的方式,能够根据验证基于各种度量(例如,成本、可用资源、时间、吞吐量等)对目标和/或目的区分优先次序和/或加权。
[0110]图7示出了根据一个方面配置成生成诊断信息和能力的非限制系统700的示例。在一个实现中,能够将诊断和/或预测功能集成到对象中,使得来自对象的诊断和/或预测功能在执行期间是可用的。作为示例以及非限制性示例,诊断和/或预测功能能够包括有关预防性维护、预测性维护、报警、事件和/或通知的特征。有关工业过程或其他过程的功能的其他示例能够包括优化分析、工作流优化、企业资源规划(ERP)优化、基于上下文分析、整体设备效率(OEE)、环境整治和/或其他整治。其他示例包括减少停机时间、订购新部件、上下游部件/对象分析、盈利和/或库存分析。其他的示例包括故障时间、维修时间和/或替代时间。
[0111]根据一些实施方式,能够使得默认的诊断和/或预测功能在与使得对象可用的时间基本上相同的时间可用。可替代地或另外地,开发者或其他用户能够将诊断和/或预测功能的至少一个子集与对象相关联。例如,基于针对工作流初始化的请求,能够从库中将对象恢复并且能够对每个对象的诊断能力进行评估。如果所恢复对象不包括工作流所需的诊断能力,则能够将请求发送以包括工作流中的丢失诊断能力,其中能够从外部源创建和/或恢复具有所需要的诊断能力的对象。
[0112]系统700包括对象创建模块702,对象创建模块702能够被配置成创建多个模块化对象。虽然示出为包括在进程管理器120中,但是根据一个实现,对象创建模块702能够与例如图1的数据模型管理器122相关联。
[0113]嵌入模块704能够被配置成将功能集成到每个模块化对象中。例如,至少一个功能能够与至少一个模块化对象集成。功能能够是每个模块化对象的诊断能力。根据一个方面,功能能够是模块化对象的预测能力。在一个实现中,嵌入到每个模块化对象的功能是基于各自的模块化对象的分析的不同功能。例如,第一模块化对象已经将第一功能嵌入其上,并且第二模块化功能已经将第二功能嵌入其上,其中第一功能和第二功能是不同的功能。根据一个实现,嵌入模块704能够被配置成将一组功能嵌入到每个模块化对象中,其中该组功能是可编辑或可配置的。
[0114]接口部件114 (或另外的部件)能够接收针对一组多个模块化对象的执行的请求706。能够由显示模块708在执行该组多个模块化对象期间,选择性地公开针对模块化对象组中的每个模块化对象的一个或更多个功能。在一个实现中,显示模块708和接口部件114能够是单个部件或能够是分离的部件。
[0115]根据一个实现,系统700能够包括组织模型710,组织模型710能够被配置成创建和提供过程、设备和/或代码的全系统模型。全系统模型能够辅助用户组织内容。另外,能够通过组织层次对包括在全系统模型中的信息(例如,诊断、预测、报警、事件等)进行分组、过滤和/或合计。例如,组织模型710能够通过提供全系统模型来提供运行时间和维护值,全系统模型使得用户能够将整个系统概念化(例如,工业自动化系统等)的,而不仅仅是系统的部分。
[0116]根据一个实现,能够至少部分地基于用户输入定义组织模型710。能够应用组织模型710以将上下文提供给来自一个或更多个对象的诊断。另外,组织模型710能够具有提供上下文、分组和/或由对象提供的数据集合的层次。在一个实现中,能够基于位置、作用、重要性、优先级等来应用滤波器。
[0117]根据一些方面,能够提供公开诊断或预测功能的弹出窗口。根据一些方面,能够由显示模块708利用标准或颜色来辅助可扫视设计环境。可扫视设计环境能够帮助将工作流重定向和/或过程审计可视化。例如,能够区分已经发生的活动和还未发生的活动。
[0118]另外,显示模块708能够提供使得用户能够快速容易地选择诊断和/或预测功能以与对象相关联的交互式可视化工具。该工具能够平衡历史使用、普及性、可靠性、上下文、用户偏好、比率等以创建使得能够无缝且直观地设计具有诊断功能和/或预测功能的对象的丰富的开发环境。
[0119]在实施方式中,应用模块可以评估其中待部署一个或更多个模块化对象的工作流。推荐模块可以部分基于评估来推荐功能以与一个或更多个模块化对象相关联。可以由显示模块708来显露功能以响应于请求706。
[0120]根据另一实施方式,显示模块708 (或接口部件114)可以被配置为生成功能列表的可视化表达。可以接收来自功能列表的功能的选择(例如,来自用户和/或实体)。此外,可以接收应该与所选择的功能相关联的对象的选择。所选择的对象和功能(例如,通过上下文管理器116)相关联。根据一方面,功能和/或对象的选择可以由接口部件114接收。
[0121]在另一实施方式中,验证模块可以被配置为验证对象、工作流设计中的至少一个,并且功能的子集是兼容的。可以由验证模块部分地基于数据模型来进行验证。
[0122]在又一实施方式中,组合模块可以被配置为将第一对象与一组功能相链接。可以基于第一对象的使用上下文来选择性地采用一组功能的至少一部分。使用上下文可以部分地从用于执行的请求706中推导出。另外地或可替代地,由于共同的功能,因此组合部件可以被配置为链接两个或更多个对象。
[0123]另外地或可替代地,可以评估在工作流内的对象的分级关联。基于评估,功能生成器712可以被配置为基于在工作流内的对象的关联创建较高的层级功能。根据一些方面,工具(例如功能生成器或另一系统部件)可以便于适当功能的显示和/或推荐能够与作为工作流、预期的使用、上下文、用户偏好、或其他指标的功能的对象相关联。在示例中,功能生成器712可以被配置为将对象与一大组的诊断和/或预后功能相链接,并且可以基于各自对象用途的上下文来访问这样的功能。
[0124]例如,由于各自对象组合(例如,使用组织的、工作流或数据模型),因此可以加入或去掉所链接对象的功能。因此,由于工作流内的分级关联,因此可以自动创建较高层级的诊断和/或预后功能。
[0125]图8示出了示例,根据一方面,非限制性系统800被配置为便于对象设计。系统800可以便于分级数据模型的创建以创建对象或模块。另外,系统800可以被配置为将功能集成入对象以及将绑定和/或执行规则施加至对象。分级数据模型可以提供可扩展的设计环境以使得对象设计和部署的一致性和方便性。数据模型的一个方面与对象继承相关,所述对象继承使得对象的快速组合能够创建较高级别的对象和关联功能。模型也可以具有基于类别的组织。
[0126]接口部件114 (或另一系统部件)可以被配置为输出一组对象和一组功能以响应于对象的设计的请求802。接口部件114 (或另一系统部件)可以被配置为接收来自一组对象的第一对象(和/或随后的对象)和来自一组功能的第一功能(和/或随后的功能)的选择。例如,一组对象和一组功能可以以列表格式(或另一格式类型)输出。用户可以选择对象中的一个和应与所选择对象相关联的功能中的一个。
[0127]应用模块804可以被配置为将一组规则施加至第一对象和第一功能。例如,对于公司(例如,公司例程、公司价值等)、特定行业、或基于其他参数(例如,客户要求、环境法规等),规则可以被预定义并且可以是特定的。在示例中,规则可以指定特定用户是否可以访问包括访问的和/或修改的对象110和/或元数据112的库108。
[0128]在实施方式中,由应用模块804所施加的一组规则可以提供第一功能(和随后的功能)的对象继承。由于所施加的一组规则,因此绑定模块806可以被配置为绑定第一(或随后的)对象和第一(或随后的)功能。例如,如果第一对象和第一功能符合一组规则,那么绑定发生。然而,如果未满足规则,那么绑定不发生,可能传达至用户的指示示出功能不能被施加至对象。
[0129]系统800还可以包括禁用模块808,所述禁用模块808可以被配置为选择性地使绑定至作为用户的识别功能的至少一个对象的一组功能中的至少一部分禁用。当用户登录到工业控制器(例如,通过输入用户名/密码对或通过其他方式如生物传感器)时,可以探知用户的识别。用户的识别可以与用户的角色(例如管理员、操作者等)和/或用户的授权级另Ij(例如安全级别)相关。如果用户不具有适当的角色和/或适当的授权级别,那么通过一个或更多功能的禁用可以拒绝访问。禁用导致一组功能(包括第一功能)的一部分对用户隐藏。
[0130]系统中还包括的激活模块810可以被配置为激活绑定到作为用户的识别功能的至少一个对象的一组功能的至少一部分。激活导致一组功能(包括第一功能)的至少一部分显露至用户。例如,一组功能可能具有示出被隐藏的功能的默认参数。然而,如果用户具有适当的认证,那么用户能够感知功能。
[0131]用途确定器812可以被配置为探知第一(或随后的)对象的预期用途。例如,用途确定可以是基于对象是否用于其设计目的(例如基于元数据)或用于不同用途的发现。在另一示例中,用途确定可以与版本控制和维护相关以减轻过时版本被不恰当地应用和/或应用到错误的上下文中。
[0132]基于第一对象的预期用途,禁用模块808可以被配置为掩蔽第一(或后续的)对象的嵌入式功能和用于第一(或随后的)对象的链接功能。所述掩蔽使嵌入式功能和链接功能对用户隐藏(例如用户不能感知功能)。链接功能可以与至少第二 (或随后的)对象相关联。
[0133]在另一示例中,基于对第一对象的预期用途,激活模块810可以被配置为不掩蔽第一(或随后的)对象的嵌入式功能和用于第一(或随后的)对象的链接功能。所述不掩蔽显露嵌入式功能和链接功能(例如用户能够感知功能)。
[0134]在实施方式中,可以将一个或更多个功能作为链接到各自对象的元数据存储。如上所述,元数据可以包括与对象相关联的各种特征。非限制性示例特征可以包括发现、版本控制和维护、原子元素、和/或不复杂的数据类型。其他示例性特征可以包括在运行的事件的生产/消耗、统一通信(例如音频、视频等)、和/或面向对象和上下文程序。其他示例特征包括创建和编辑的时间戳,通过时间戳的使用示出发生哪些事件和利用事件聚集数据、和/或置于上下文的数据(例如声明事件针对独特的产品)的队列。
[0135]如上文所述,可以利用各种嵌入式的链接功能的掩蔽和/或不掩蔽来为上下文(例如预定的用途、识别用户等)提供对的功能,而不是仅提供功能列表。由于可以有数百或数千的功能或参数,因此如果提供所有的功能可能会导致混乱。因此,系统800可以被配置为通过选择性的掩蔽和不掩蔽的功能来为不同的人提供访问最合适的信息。
[0136]在本文示出和描述的示例性系统中,参考以下的流程图,将会更好地理解根据一个或更多个公开方面来实施的方法。虽然为了简化说明的目的,但该方法被示出和描述为一系列的方框,但应当理解,所公开的方面并不限于方框的数目或顺序,因为本文描述和说明的一些方框可能会以不同顺序发生和/或基本上与其他方框同时发生。此外,未示出的方框可能需要实施下文所述的方法。注意,可以通过软件、硬件、其组合或任何其他合适的装置(例如,器件、系统、过程、部件)来实施与方框相关联的功能。此外,还应注意,下文公开和贯通本说明书的方法能够被存储在制造的物品上以便于将这样的方法学运输和转移至各种设备。那些本领域技术人员将理解,方法可以替换地被表示为一系列相互关联的状态或事件,如在状态图中。可以通过包括至少一个处理器的系统来执行本文所公开的各种方法。
[0137]图9示出示例,根据一方面,非限制性方法900用于内容管理。当创建包括一个或更多个对象以及与一个或更多个对象相关的一个或更多个元数据的库时,方法900在902处开始。元数据可以包括一个或更多个对象的功能。在另一示例中,元数据可以是特定的工业应用并且可以包括工业实践信息。库可以是通过公共网络托管的全球性库。根据另一方面,库可以是通过私有网络访问的私人库。根据实施方式,当和/或在不同时间创建(例如当注释对象、当合并对象等)各自对象时,一个或更多个元数据可以被施加到一个或更多个对象的各自对象。
[0138]在904处,在库中的与请求相匹配的一个或更多个对象中的第一对象区别于库中的其他对象。在906处,呈现出第一个对象和来自一个或更多个元数据的至少第一元数据的可视化表示(例如,通过显示输出)。第一元数据与第一对象相关。
[0139]在实施方式中,区别可以包括为主要属性挖掘请求并且将主要属性与一个或更多个元数据进行比较。继续这个示例,探知第一元数据中是否包含主要属性中的至少一个。第一元数据可以被链接至第一对象。另外,第一对象可以被施加至可视化表达。
[0140]另外地或可替代地,方法900可以包括接收与第一对象相关的输入的请求。基于输入,可以针对数据库中的多个对象来对第一对象分级。根据实施方式,可以以基于分级的顺序呈现可视化表达。
[0141]图10示出示例,根据一方面,非限制性方法1000用于更新库。在1002处,创建了包括对象和相关元数据的库。接收了与工业过程的实施相关的请求,并且在1004处,来自库中的第一对象区别于库中的其他对象。如果第一对象与请求相匹配,那么区分出第一对象。在1006处,输出第一对象和与其相关的元数据。例如,所述输出可以包括第一对象和相关元数据的可视化表达。
[0142]在1008处,接收到对第一元数据的注释。根据实施方式,可以从用户和/或实体接收注释。例如,注释可以包括当前使用的对象、以其他方式使用的对象、或其他信息。根据不同的实施方式,注释可以被直接输入到包含元数据的文件中和/或可以被单独接收到并且被施加至元数据。
[0143]在1010处,库被更新至包括注释。可以保留(例如未更新)原始或未注释版本的元数据。这可能会导致至少两个版本的元数据,原始版本和注释版本。在1012处,未注释版本和注释被存储在库中。可以在未注释版本、注释和第一对象之间设置链接或映射。以这样的方式,如果需要先前版本的元数据,那么与先前版本相关的信息是可获得的。
[0144]图11示出示例,根据一方面,非限制性方法1100用于合并两个或更多个对象。在1102处,用于第一对象的第一工业用途和用于第二对象的第二工业用途被确定为是相同的工业用途。例如,可以基于与对象中的每个相关联的元数据的分析来进行确定,所述元数据可以是原始的(例如未注释的)元数据和/或注释的元数据。[0145]在1104处,合并第一对象和至少第二对象以创建处合并的对象。根据实施方式,第一对象、第二对象和合并的对象的情况被保留在库中。在1106处,由于合并所以可以创建新的元数据。新的元数据可以包括第一对象和第二对象的元数据的组合。根据一些方面,元数据包括与合并相关的信息。这样的信息可以包括,例如,原始对象的识别,对于对象为什么被合并的信息、与当对象被合并时相关的时间戳等。
[0146]图12示出示例,根据一方面,非限制性方法1200用于工作流的集成。工作流可以与库对象集成以增强和优化工作流设计。
[0147]当接收到对工作流的开发的请求时,方法1200在1202处开始。所述请求可以包括工作流的所期望的结果或目标(例如,降低废品率3%,提高每小时15个单位的生产力等)。根据一些方面,所述请求可以包括与应集成在工作流中的一个或更多个过程(例如增加第三油漆处理步骤)相关的信息。
[0148]在1204处,与源程序相关联的设计输入被访问。源程序可以是与不同的系统或应用相关联的程序。例如,源程序可以是与外部系统相关联的设计工具和/或对象。访问也可以是与包括对象和关联元数据的库相关联的设计输入。
[0149]在1206处,基于设计输入、对象和关联的元数据来建立工作流。在1208处,工作流被输出至用户和/或外部系统。工作流可以是工作流的可视化表达。在示例中,将工作流输出至外部系统可以包括将工作流导出至外部系统。对象可以包括被部署在外部系统上的部署模块化对象。
[0150]根据实施方式,方法1200可以包括将一组规则施加至设计输入和施加至对象,并可以进行验证以确定工作流符合所施加的一组规则。根据另一实施方式,方法1200可以包括对与工作流相关联的一组目标、设计输入,或对象设置优先级,并且验证设计输入和对象到工作流的互操作性。在另一实施方式中,方法1200可以包括从库中识别未用在工作流中的对并且维护所识别的未用在工作流中的对象以用于不同的工作流。
[0151]图13示出根据一个方面的被配置成识别并获得最初未包含在工作流中的对象的示例性非限制方法1300。在1302处,接收对工作流的进展的请求。基于该请求,在1304处,可以存取与源程序和库相关联的设计输入。库包含对象和相关联的元数据。在1306处,基于设计输入、对象和相关联的元数据建立工作流。
[0152]在1308处,确定工作流缺失对象。例如,所缺失的对象未包括在设计输入中,但应当包括在其中。可以基于与可用的对象相关联的元数据来做出这种确定。在简单的示例中,与粉末涂料有关的对象的元数据可能指示过程中的下一步应当为干燥。然而,与干燥相关联的对象未包含在设计输入或者库中。因此,继该示例,方法可以确定干燥对象从工作流中缺失。
[0153]在步骤1310中,从外部系统请求干燥对象。外部系统可以包括包含对象和元数据的库,其中,由外部系统维护的库不同于由该方法访问以创建工作流的库和/或与由该方法访问以创建工作流的库互补。如果从外部系统接收到所缺失的对象,在1312处,将所缺失的对象施加到工作流中。在1314处,将工作流呈现给提交请求的用户和/或实体(例如,外部系统)。
[0154]图14示出根据一个方面的用于创建对象或模块示例性非限制方法1400。在1402处,构建包括第一对象和至少一个第二对象的库。在1404处,将第一功能嵌入到第一对象中,并且将第二功能嵌入到第二对象中。根据实施例,嵌入功能包括将两个或更多个功能嵌入到第一对象和第二对象中的每一个对象中。库可以包括嵌入到第一对象和第二对象中的每一个对象中的两个或更多个功能。功能可以是对相应对象的诊断能力。在另一示例中,功能可以是相应对象的预后能力。根据实施例,功能是可编辑的。
[0155]在1406处,执行或实施第一对象和第二对象中的至少一个对象。例如,可以基于请求来执行第一对象和第二对象。根据实施例,执行对象可以包括接收对启动工作流的请求和评估工作流。可以基于工作流的参数来执行第一对象和第二对象中的至少一个对象,继该实施例,可以基于评估来推荐待与第一对象和第二对象中的至少一个对象相关联的附加功能。
[0156]在1408处,作为执行的结果来显示第一功能、第二功能或者第一功能和第二功能两者。可以在第一对象和/或第二对象的执行期间显露该功能。根据实施例,显示功能可以包括创建工作流的可视化表示并输出该可视化表示。可视化表示可以包括第一功能、第二功能或者第一功能和第二功能两者。
[0157]图15示出根据一个方面的用于将功能嵌入至合并的对象的示例性非限制方法1500。在1502处,第一组元数据与第一对象相关联。第一组元数据可以部分地包括第一功能。在1504处,第二组元数据与第二对象关联。第二组元数据可以部分地包括第二功能。根据实施例,第一功能和第二功能可以是不同的功能。
[0158]在第一功能和第二功能为相似功能的实施例中,在1506处,方法1500可以继续确定第一功能和第二功能为相同(或相似)功能。继该实施例,在1508处,基于功能为相同(或相似)的确定来合并第一对象和第二对象。
[0159]图16示出根据一个方面的用于对象设计的示例性非限制方法1600。在1602中,评估对包括一组对象的数据模型的设计请求。根据第一实施例,评估可以包括针对支持数据模型的功能搜索嵌入在一组对象中的元数据。
[0160]在1604处,输出与数据模型相关的替代对象和关联的功能。例如,可以输出替代对象和相关联的功能以使得用户能够决定替代对象中的哪个对象应当用于数据模型。在1606处,接收指示。指示为替代对象和相关联功能中的一个或更多个将被包含在数据模型中。
[0161]在1608处,将一组规则施加于所包含的一个或更多个可替代的对象和相关联的功能。如果可替代对象和相关联的功能不符合规则,则将该替代对象不能应用于该数据模型中。根据实施例,在将对替代对象的选择呈现给用户之前,判定替代对象是否符合该组规则。
[0162]在1610处,如果替代对象和相关联的函数不符合规则,则创建数据模型。数据模型可以包括所选择的一个或更多个替代的对象、相关联的功能,所施加的一组规则。
[0163]图17示出根据一个方面的用于选择性地掩盖数据和/或不掩盖数据的示例性非限制方法1700。例如,选择性地掩盖数据和/或不掩盖数据可以向用户提供可用于创建数据模型的最有意义的数据。因此,并不是输出可能是100种以上(或1000种)不同的功能的所有可用的功能,该功能可以是基于已知的关于用户信息而为特定用户定制的功能。
[0164]在1702处,当探知对请求模型数据的用户的识别时,方法1700开始。根据一个实施例,在1704处,基于对用户的识别来禁用与数据模型相关的关联功能的至少一部分。禁用可以包括确定用户不具有对相关联功能的中的至少一部分的访问权限。继该实施例,在1706中,输出其中相关联的功能中的至少一部分被禁用的数据模型。禁用隐藏相关联的功能使用户不能查看。
[0165]根据另一实施例,在1704处,基于对用户的识别来激活与数据模型相关的关联功能的至少一部分。激活可以包括确定用户具有对相关联功能的中的至少一部分的访问权限。继该实施例,在1706中,输出其中相关联的功能中的至少一部分被激活的数据模型。激活使得用户能够查看相关联的功能。
[0166]参照图18,示出可操作成执行所公开方面的计算机的框图。为了提供用于各方面的附加上下文。图18和以下的讨论旨在提供合适的对可以实施所述实施方式的各方面的计算环境1800的简洁通用描述。尽管以上描述是在可以运行在一个或更多个计算机上的计算机可执行指令的通用上下文中进行的,单本领域技术人员应认识到可以结合其他程序模块和/或作为硬件和元件的结合来实施各实施方式。
[0167]总体上,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、部件、数据结构等。此外,本领域技术人员应理解,所公开的方面可以用包括如下的其他计算机系统配置来实行:即包括单处理器或多处理器计算机系统,单板计算机、微型计算机、大型计算机和个人计算机、手持计算设备、基于微处理器或可编程消费类电子产品、微控制器、嵌入是控制器、多核处理器等,其中每一个可以可操作地耦接至一个或更多个相关联的设备。
[0168]各实施方式的示出方面还可以在其中某些任务由通过通信网络链接的远程处理装置来执行的分布式计算环境来实施。在分布式计算环境中,程序模块可以位于本地存储器存储设备和远程存储器存储设备两者中。计算平台可以托管或许可所有或者许多不同的逻辑代理来处理。可替代地,每个代理可以在单个的网络连接的处理器中操作,其中该处理器被集中定位或大概定位,或者与该代理管理的处理或处理设备集成(例如,运行在烤箱代理中的单板计算机可以嵌入在烤箱控制器中。可以实现不同程度的集中式处理和分布式处理。
[0169]计算装置通常包括各种介质,其可以包括计算机可读存储介质和/或通信介质,本文使用的两种术语如下彼此不同。计算机可读存储介质可以是能够由计算机访问的任何可用的存储介质,并且包括易失性介质和非易失性介质。作为示例而非限制,计算机可读存储介质可以结合用于存储信息的任何方法或技术来实现,例如计算机可读指令、程序模块、结构化数据或非结构化数据。计算机可读存储介质可以包括但不限于可以用于存储期望信息的RAM、ROM、EEPROM、DRAM,闪存、记忆棒或固态存储器,或其他存储器技术,CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁带盒、磁带、磁盘存储器或其他磁存储设备或其他有形的和/或非暂态性介质。针对与由介质存储的信息相关的各种操作,可以由一个或更多个本地或远程计算设备例如经由访问请求、查询或其他数据检索协议来访问计算机可读存储介质。
[0170]通信介质通常包含计算机可读指令、程序模块、或者结构化数据信号中的其他结构化或非结构化数据诸如调制数据信号,例如载波或其他传输机制,并且包括任何信息传递或传输介质。术语“调制数据信号”或信号是指具有其特征集中的一个或更多个特征或者以一个或更多个信号编码信息方式改变的信号,作为示例而非限制,通信介质包括诸如有线网络或直接连线连接等有线介质以及诸如音波、微波、射频、红外或其他无线方法(例如,IEEE802.12X、IEEE 802.15.4、蓝牙)等无线介质。
[0171]在实施例中,提供了存储有计算机可执行指令的非暂态性的或者有形的计算机可读介质。非暂态性计算机可读存储介质可以将响应于执行,使包括处理器的计算设备进行操作的计算机执行指令存储在其上。操作可以包括用对象和相关联的元数据填充库,其中每个元数据可以与一个或多个对象相关联。操作还可以包括响应于用于工业应用的查询,评估相关联的元数据并且确定与查询匹配的至少一个元数据。此外,该操作可以包括将与所述至少一个元数据相关联的至少一个对象作为查询的结果输出。
[0172]另外,操作可以包括将所接收的至少一个对象的分级与用于其他对象的分级进行比较,并且输出第二对象,其中,基于比较有序地呈现所述至少一个对象和第二对象的可视化表示。另外地或者可替代地,操作可以包括监测其中使用对象中的每一个的工业应用;将两个或更多个对象合并作为监测的结果;以及创建用于合并的两个或更多个对象的新的元数据。
[0173]根据另一实施例,操作可以包括接收对工业控制过程的自动化的请求,并且从外部源获得用于在工业控制过程的自动化中使用的对象。另外,操作可以包括将来自外部源的对象应用于工业控制过程的自动化的设计中,并且识别不是从外部源接收的至少一个对象,其中,所述至少一个对象将被用于设计中。操作还可以包括从第二外部源导入至少一个对象。
[0174]另外地,操作可以包括针对至少一个对象查询包括多个对象的库,评估与多个对象相关联的元数据,以及将来自库的至少一个对象导入工作流中。另外地或者可替换地,操作可以包括将工作流导出至目标系统,其中,工作流包括包含共用接口的对象,并且工作流被部署在目标系统上。
[0175]根据另一实施方式,操作可以包括接收指示以启动工作流,其中工作流包括多个对象。操作还可以包括从库中检索多个对象,其中,多个对象中的每一个对象包括相应的诊断能力。操作还可以包括对多个对象中每一个对象的相应诊断能力进行评估并且为工作流推荐诊断能力,其中分层关联是预定义的并且为多个对象提供诊断上下文。多个对象的相应的诊断能力中不包括所推荐的诊断能力。
[0176]继本实施例,操作可以包括评估工作流中的多个对象的分层关联,并且作为评估的结果,针对多个对象中之一创建功能。另外地或者可替代地,操作可以包括产生工作流的表示,该表示包括多个对象和各自的诊断能力。操作还可以包括接收对各自的诊断能力中之一的选择,并且基于该选择来启动工作流的至少一部分上的诊断例程。
[0177]根据另一实施例,操作可以包括从对象库中检索一组对象和相关联的元数据,其中,将一组对象推荐给分层的数据模型并且接收对来自该一组对象的一个或更多个的选择。操作还可以包括将规则施加于所选择的一个或更多个对象,确定所选择的一个或更多个对象中的至少一个对象被规则验证,以及将所述至少一个对象合并至分层数据模型中。
[0178]继该实施例,操作可以包括评估对分层数据模型的请求,其中,该请求包括用户识别信息;根据评估掩盖用于所述至少一个对象相关联的元数据;以及呈现分层的数据模型,其中,对用户隐藏所掩盖的关联元数据。另外地或者可替换地,操作还包括评估对分层数据模型的请求,其中,该请求包括用户识别信息;基于评估不掩盖用于所述至少一个对象的关联元数据;以及呈现分层的数据模型,其中根据评估来向用户显露相关联的元数据。
[0179]参照图18,用于执行各方面的示例性环境1800包括包含处理单元1804的计算机1802、系统存储器1806和系统总线1808。系统总线1808将包括但不限于系统存储器1806的系统元件耦接至处理单元1804。处理段元1804可以是各种市场上可买到的处理器中任一个。双微处理器、定制处理器、定制集成电路、多核处理器阵列、模拟处理器、流水线处理器以及其他多处理器架构也可以用作处理单元1804。
[0180]系统总线1808可以是总线结构的若干种类型中的任何类型,其还可以互连到存储器总线(具有或不具有存储器控制器)、外围总线以及使用各种市售的总线体系结构中的任何一种的本地总线。系统存储器1806包括只读存储器(ROM) 1810和随机存取存储器(RAM) 1812。基本输入/输出系统(BIOS)存储在非易失性存储器1810 (如ROM、EPROM、EEPROM)中,BIOS包含有助于例如在启动过程中在计算机1802内的元素之间传输信息的基本程序。RAM1812还可以包括高速RAM,如用于缓存数据的静态RAM。
[0181]计算机1802还包括磁盘存储器1814,其可以包括内部硬盘驱动器(HDD)(例如,电子集成驱动器(EIDE)、SATA),该内部硬盘驱动器还可以被配置为适当机箱(未示出)的外部使用、磁性软盘驱动器(FDD)(例如,以对可移动软盘进行读取或写入)、以及光盘驱动器(例如,读取CD-ROM光盘,或对其他高容量光学介质如DVD进行读取或写入)。硬盘驱动器、磁盘驱动器和光盘驱动器可以分别经由硬盘驱动器接口、磁盘驱动器接口和光盘驱动器接口连接到系统总线1808。用于外部驱动器实现的接口 1816包括通用串行总线(USB)和IEEE1094接口技术中的至少一者或两者。其他外部驱动器连接技术均本文所述的各种实施方式的意图内。
[0182]驱动器及其相关联的计算机可读介质提供数据、数据结构、计算机可执行指令等的非易失性存储。对于计算机1802,驱动器和介质以适当数字格式容纳任何数据的存储。虽然上面的计算机可读介质的描述是指HDD、可移动的磁性软盘、和可移动的光学介质(如CD或DVD),本领域中的技术人员应当理解,能够由计算机读取的其他类型媒介(如zip驱动器、磁带盒、闪存卡、编码磁带等)也可以用在示例性操作环境中,并且进一步,任何这样的媒介可以包含计算机用于执行所公开的方面的可执行指令。
[0183]许多程序模块可以存储在驱动器和RAM中,包括操作系统1818、一个或更多个应用程序1820、其他程序模块1824和程序数据1826。操作系统、应用程序、模块、和/或数据中的全部或部分也可以缓存在RAM中。应当理解,各种实施方式可以以各种市售的操作系统或操作系统的组合来实现,或可以不用操作系统来实现。
[0184]用户可以通过一个或更多个有线/无线输入设备1828 (如键盘和定点设备(如鼠标))将命令和信息输入到计算机1802中。其他输入设备(未示出)可以包括麦克风、红外(IR)遥控器、操纵杆、游戏垫、记录笔、触摸屏等。这些和其他输入设备通常通过耦接到系统总线1808的输入设备(接口)端口 1830而连接到处理单元1804,但也可以由其他接口(如并行端口、IEEE 1094串行端口、游戏端口、USB端口、IR接口等(进行连接。另外,接口端口1830可以包括数字和/或模拟输入的一个或更多个信道。用于模拟信号的接口端口将接收例如来自过程传感器如温度传感器的电压输入。从温度传感器到接口端口 1830的电压输入可以随着传感器的温度线性变化。接口端口将生成与呈现至接口端口的电压相对应的数字值。传感器值的数字表示将被处理、求平均、或根据需要进行过滤以供应用1820和/或模块1824使用。接口端口还可以接收例如来自开关或按钮的数字输入,并且类似地将该数字值提供给应用1820和/或模块1824。
[0185]监视器或其他类型的显示设备也经由输出(适配器)端口 1834如视频适配器而连接到系统总线1808。除了监视器之外,计算机通常包括其他外围输出设备1836,如扬声器、打印机等。输出适配器还可以提供一个或更多个数字和/或模拟值以供显示、控制、或其他基于计算机的设备使用。例如,输出适配器1834可以提供在约O伏和10伏之间的电压信号,O伏和10伏对应于搅拌电机的期望速度,使得约O伏对应于约Orpm (每分钟转数)并且约10伏对应于约1200rpm。
[0186]计算机1802可以经由至一个或更多个远程计算机如远程计算机1838的有线和/或无线通信、使用逻辑连接在联网环境中操作。远程计算机1838可以是工作站、服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐设备、对等设备或其他公共网络节点,并且通常包括相对于计算机1802所描述的元素中的许多或全部,虽然出于简洁的目的仅示出存储器/存储设备1840。多台计算机可以以集成方式进行操作以控制单个(例如,多步)生产过程。过程控制任务可以跨多台计算机分布。例如,基于代理的控制架构可以具有驻留在单个基于计算机的控制器中的所有代理,或可以具有驻留在若干基于计算机的控制器中的若干个或更多个代理,或者具有驻留在单独的基于计算机的控制器中的每个代理。
[0187]远程计算机可以具有使得能够连接至计算机1802的网络接口 1842。逻辑连接包括至局域网(LAN)和/或更大网络例如广域网(WAN)的有线/无线连接。这样的LAN和WAN网络环境在办公室和公司中是常见的,并且便利企业范围的计算机网络例如内联网,所有这些都可以连接到全球通信网络例如因特网。
[0188]当在LAN网络环境中使用时,计算机1802通过有线和/或无线通信网络接口或适配器(通信连接)1844连接到本地网络。适配器1844可以便利至LAN的有线或无线通信,其还可以包括设置在其上的用于与无线适配器进行通信的无线接入点。
[0189]当在WAN网络环境中使用时,计算机1802可以包括调制解调器,或连接至WAN上的通信服务器,或具有用于通过WAN如经由互联网来建立通信的其他装置。可以是内部或外部的并且是有线或无线设备的调制解调器经由串行端口接口连接到系统总线1808。在网络环境中,关于计算机1802所描述的程序模块或其部分可以被存储在远程存储器/存储设备1840中。将理解的是,所示的网络连接是说明性的,并且可以使用在计算机之间建立通信链路的其他装置。
[0190]计算机1802能够操作为与可操作地布置在无线通信中的任何无线设备或实体进行通信,该任何无线设备或实体例如为打印机、扫描仪、台式和/或便携式计算机、便携式数据助理、通信卫星、与可无线检测的标签相关联的任何一件装备或位置(例如,亭、报刊亭等)以及电话。这包括至少无线网络连接(W1-Fi)和蓝牙(Bluetooth?)无线技术。因此,通信可以是预定义结构正如传统网络,或简化为在至少两个设备之间的自组织通信。
[0191]W1-Fi或无线保真允许在不使用导线的情况下连接到互联网。W1-Fi是类似于在蜂窝电话中使用的无线技术,其使这样的设备例如计算机在室内和室外、在基站范围内的任何地方发送并接收数据。W1-Fi网络使用被称为IEEE 802.11 (a,b,g等)的无线电技术以提供安全、可靠、快速的无线连接。W1-Fi网络可以用于将计算机连接至彼此、互联网、以及有线网络(其使用IEEE 802.3或以太网)。
[0192]W1-Fi网络可以在未授权的2.4GHz和5GHz频段运行。ffiEE 802.11通常应用于无线LAN,并且使用跳频扩频(rass)或直接序列扩频(DSSS)来在2.4GHz频段提供IMbps或2Mbps的传输。IEEE 802.1la是802.11的扩展,其应用于无线LAN并且在5GHz频段提供最高达54Mbps。IEEE 802.1la使用正交频分复用(OFDM)编码方案而不是HlSS或DSSS。IEEE 802.1lb (也称为802.11高速率DSSS或W1-Fi)是802.11的扩展,其应用于无线LAN并且在2.4GHz频段提供IlMbps的传输(回退到5.5,2Mbps和1Mbps)。IEEE 802.1lg应用于无线LAN并且在2.4GHz频段提供20+Mbps。产品可以包含不止一个频段(例如,双频段),所以网络能够提供类似于在许多办公室中使用的基本IOBaseT有线以太网络的现实世界性能。
[0193]现在参照图19,其示出根据另一个方面的用于处理所公开的体系结构的示例性的计算环境1900的示意性框图。环境1900包括一个或更多个客户端1902。客户端1902可以是硬件和/或软件(例如,线程、进程、计算设备)。例如,客户端1902可以结合各种实施方式来容置Cookie(S)和/或相关联的上下文信息。
[0194]环境1900还包括一个或多个服务器1904。服务器1904也可以是硬件和/或软件(例如,线程、进程、计算设备)。例如,服务器1904可以结合各种实施方式容置线程以执行转换。在客户端1902和服务器1904之间的一种可能通信可以是适合于在两个或更多个计算机进程之间传输的数据包的形式。该数据包可以包括例如cookie和/或相关联的上下文信息。环境1900包括通信框架1906 (例如,全球通信网络如Internet),其可以被采用为便利在客户端1902与服务器1904之间的通信。
[0195]通信可以经由有线(包括光纤)和/或无线技术而便利。客户端1902可操作地连接到一个或更多个客户端数据存储1908,其可以被用于存储客户端1902的本地信息到(例如,Cookie(S)和/或相关的上下文信息)。类似地,服务器1904可操作地连接到一个或更多个服务器数据存储1910,其可以被用于存储服务器1904的本地信息。
[0196]本文所述的各种技术可以结合硬件或软件,或在适当情况下结合这两者来实现。如本申请中所使用的,术语“部件”、“模块”、“对象”、“服务”、“模型”、“表示”、“系统”、“接口”等通常意指与计算机相关的实体,其中这样的实体可以是硬件、硬件和软件的组合、软件或执行中的软件。例如,部件可以是但不限于在处理器上运行的进程、处理器、硬盘驱动器、(光学和/或磁存储介质的)多个存储驱动器、对象、可执行文件、执行的线程、程序、和/或计算机。以说明的方式,在控制器上运行的应用程序和控制器都可以是部件。一个或更多个部件可以驻留执行的进程和/或线程中,部件可以被定位在一台计算机上和/或分布在与其通信的两台或更多台计算机、工业控制器或模块之间。作为另一示例,接口可以包括I/O部件以及相关联的处理器、应用程序、和/或API部件。
[0197]已经关于若干部件之间的交互描述了上述系统。可以理解,这样的系统和部件可以包括那些部件或特定的子部件、一些特定的部件或子部件、和/或根据前述的各种排列组合的另外部件。子部件也可以被实现为通信地耦接至其他部件,而不是包含在父部件中(分层)。另外,可以注意到,一个或更多个部件可以被组合成提供总功能单个部件,或被分为若干个独立的子部件,并且注意,任何一个或更多个中间层如管理层可以被提供为通信地耦接至这样的子部件以提供集成功能。本文所描述的任何部件也可与未在本文具体描述但通常是本领域技术人员已知的一个或更多个其他部件交互。
[0198]除了本文所描述的各种实施方式之外,应当理解,可以使用其他类似的实施方式,或者可以对所描述的实施方式做出修改和补充,以用于在不偏离其的情况下执行相应实施方式的相同或等效功能。更进一步地,多个处理芯片或多个设备可以共享本文所描述的一个或更多个功能的性能,并且类似地,存储可以跨多个设备实现。因此,本发明不应该受限于任何单个实施方式,而是应被解释为在广度、精神和范围上符合所附权利要求。
[0199]如上文所述的主题事物包括各种示例性方面。然而,应当认识到,不可能出于描述这些方面的目的而描述每一个可以设象的部件或方法。本领域的技术人员可以认识到另外的组合或置换是可能的。可以采用各种方法或架构来实现本发明、修改、变型或其等价物。因此,本文所描述的方面的所有这些实现旨在包括权利要求主题的范围和精神。
[0200]用于本文中的词语“示例性”意在用作示例、实例或说明。为了避免产生疑问,本文所公开的主题事物并不限于这样的示例。此外,本文描述的作为“示例”的任何方面或设计不一定被解释为比其他方面或设计优选或有利,也不意味着排除等效的示例性结构和本领域的技术人员公知的技术。
[0201]关于在详细描述或权利要求书中使用的术语“包含”,这样的术语意在以类似于术语“包括”的方式是包容性的,如“包括”在权利要求中采用时被解释为过渡词。此外,在详细描述或权利要求书中使用的术语“或”意指包容性的“或”而不是排他性的“或”。也就是说,除非另有说明或从上下文清楚的,否则短语“X采用A或B”意指任何自然包容性排列。也就是说,短语“X采用A或B”满足于下列实例中的任一种:X采用A ;X采用B ;或X采用A和B两者。另外,除非另有说明或从上下文清楚的是针对单数形式,否则在本申请和所附权利要求中使用的冠词“一”、“一个”通常应当被解释为意指“一个或更多个”。
【权利要求】
1.一种系统,包括: 存储器,所述存储器存储计算机可执行指令;以及 处理器,所述处理器通信地耦接至所述存储器,所述处理器使所述计算机可执行指令的执行便利至少以下操作: 构成具有多个模块化对象和与所述多个模块化对象相关联的元数据的库; 响应于与工业过程的实施相关的查询来搜索所述库,其中,所述搜索部分地基于所述元数据; 识别来自所述多个模块化对象中的满足所述查询的一个或更多个模块化对象;以及输出所述查询的结果,其中,所述输出包括所述一个或更多个模块化对象以及与所述一个或更多个模块化对象相关联的相应元数据。
2.根据权利要求1所述的系统,其中,所述处理器还使所述计算机可执行指令的实施便利以下操作: 将注释应用于至少一个元数据以创建至少一个经注释的元数据;以及 用所述至少一个经注释的元数据更新所述库。
3.根据权利要求1所述的系统,其中,所述处理器还使所述计算机可执行指令的实施便利以下操作: 在创建所述多个模块化 对象中的第一模块化对象时,接收与所述第一模块化对象相关联的元数据。
4.根据权利要求1所述的系统,其中,所述处理器还使所述计算机可执行指令的实施便利以下操作: 从所述查询提取关键词组; 将所述关键词组与所述元数据相匹配; 存取与所述关键词组相匹配的所述元数据相关联的模块化对象;以及 返回所述模块化对象作为所述查询的结果。
5.根据权利要求1所述的系统,其中,所述处理器还使所述计算机可执行指令的实施便利以下操作: 建议采用来自所述多个模块化对象中的模块化对象的子集以用于所述工业过程的实施。
6.根据权利要求1所述的系统,其中,所述处理器还使所述计算机可执行指令的实施便利以下操作: 接收关于所述多个模块化对象的级别;以及 根据所述级别将所述多个模块化对象分级。
7.根据权利要求1所述的系统,其中,所述处理器还使所述计算机可执行指令的实施便利以下操作: 观察所述多个模块化对象的使用; 将所述多个模块化对象中的两个或更多个模块化对象组合作为所观察的使用的结果;以及 基于所述两个或更多个模块化对象的所述组合来创建新的元数据。
8.根据权利要求1所述的系统,其中,所述元数据包括相关联的模块化对象的功能。
9.根据权利要求1所述的系统,其中,所述元数据是特定于工业应用的并且包括工业实践信息。
10.根据权利要求1所述的系统,其中,所述库是通过公共网络托管的全局库。
11.根据权利要求1所述的系统,其中,所述库是能够通过专用网络访问的专用库。
12.—种方法,包括: 由包括处理器的系统创建包括一个或更多个对象和与所述一个或更多个对象相关的一个或更多个元数据的库; 由所述系统区分在所述库中的所述一个或更多个对象中的与请求匹配的第一对象;以及 由所述系统呈现所述第一对象和来自所述一个或更多个元数据中的至少第一元数据的视觉表示,其中,所述第一元数据与所述第一对象相关。
13.根据权利要求12所述的方法,其中,所述区分包括: 针对主要属性挖掘所述请求; 将所述主要属性与所述一个或更多个元数据对比; 探知所述第一元数据包含所述主要属性中的至少一个,其中,所述第一元数据链接至所述第一对象;以及 将所述第一对象应用于所述视觉表示。
14.根据权利要求12所述的方法,还包括: 在创建所述一个或更多个对象中的相应对象时,由所述系统将所述一个或更多个元数据应用于所述相应对象。
15.根据权利要求12所述的方法,还包括: 由所述系统接收对所述第一元数据的注释; 由所述系统利用所述注释来更新所述库,其中,不更新所述第一元数据的未注释的版本;以及 由所述系统将所述未注释的版本和所述注释存储在所述库中,其中,所述未注释的版本、所述注释以及所述第一对象是链接的。
16.根据权利要求12所述的方法,还包括: 由所述系统请求与所述第一对象相关的输入;以及 由所述系统基于所述输入、针对所述一个或更多个对象对所述第一对象进行分级,其中,按照基于所述分级的顺序来呈现所述视觉表示。
17.根据权利要求12所述的方法,还包括: 由所述系统确定用于所述第一对象的第一工业用途和用于至少第二对象的第二工业用途是相同的工业用途; 由所述系统合并所述第一对象和至少所述第二对象;以及 由所述系统创建新的元数据作为所述合并的结果。
18.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质在其上存储有计算机可执行指令,所述计算机可执行指令响应于执行而使包括处理器的计算设备执行操作,所述操作包括: 构成具有对象和相关联的元数据的库,其中,每个元数据能够与一个或更多个对象相关联; 响应于针对工业应用的查询,评估所述相关联的元数据; 确定与所述查询匹配的至少一个元数据;以及 输出与所述至少一个元数据相关联的至少一个对象作为所述查询的结果。
19.根据权利要求18所述的非暂态计算机可读存储介质,其中,所述操作还包括: 将所述至少一个对象的所接收的分级与关于其他对象所接收的分级进行对比;以及 输出第二对象,其中,按照基于所述对比的顺序呈现所述至少一个对象和所述第二对象的视觉表示。
20.根据权利要求18所述的非暂态计算机可读存储介质,其中,所述操作还包括: 监视使用所述对象中的每个对象的工业应用; 合并两个或更多个对象作为所述监视的结果;以及 创建用于所合并的两个或更多个对象的新的元数据。
【文档编号】G06F17/30GK103810233SQ201310545687
【公开日】2014年5月21日 申请日期:2013年11月6日 优先权日:2012年11月6日
【发明者】诺曼·韦泽海德, 安德鲁·R·斯顿普, 海塞姆·曼苏里, 阿克塞尔·罗德里格斯, 约阿希姆·汤姆森 申请人:洛克威尔自动控制技术股份有限公司