在具有公用平台的监视系统中的可扩展资产类的制作方法

文档序号:11677384阅读:152来源:国知局
在具有公用平台的监视系统中的可扩展资产类的制造方法与工艺

本申请涉及在具有与多种资产和资产监视应用通信的公用软件平台基础设施的电子监视系统中的可扩展对象类(objectclass)的使用。



背景技术:

电子监视系统用于监视,并且在一些情况下配置和控制资产。例如,电子监视系统可以用于具有需要监视的多件机械和其它设备的工厂(例如过程工厂、电力工厂等)中。工厂可以包括电动机、泵门、热交换器、阀和其它设备,所有这些设备统称为“资产”,并且一个或多个监视设备(其也是资产)可以附接到这些资产的每个上或与其相关联以用于监视相关联资产的一个或多个参数。监视设备可以归组到一起并由不同计算机应用服务。例如,可能存在一个应用用于振动监视,另一个应用用于温度监视,再一个应用用于监视工厂内阀的位置和操作。其它应用可以与对资产执行各种类型的分析或使用由资产提供的数据相关联。这些应用中的每一个可以产生大量数据。例如,应用可以识别重要的发生(其被统称为“事件”)。例如,事件可以是温度太高、阀未正确操作、或检测到故障传感器。事件还可以表示物理事件,例如,在电动机中检测到超过警报级别的振动。在任何情况下,这些事件一般需要报告给一个或多个用户,例如,工厂操作员、维护人员、监视人员等,并且每个应用将具有一些策略来报告这种事件。因此,如将理解的是,各种不同的监视应用可以访问和使用来自不同资产、来自相同资产中的一些或来自各种重叠资产集合的数据。例如,振动监视应用可能需要访问来自或关于与石油监视应用相同的资产中的一些的数据。然而,由于各种监视应用可能由不同开发者所开发,并且可能主要设计为由过程工厂或另一资产环境中的不同人员所使用,所以通常在工厂中没有当前结构允许各种监视应用有效地操作以获得和使用这些应用所需要的工厂数据。



技术实现要素:

提供一种在过程工厂或其它资产环境中使用的应用软件平台,以使得各种不同的应用(例如,监视应用)执行,来以一致且容量理解的方式获得对来自或关于工厂或其它资产环境中的各种不同资产的数据的访问并使用所述数据。软件平台可以实现于分布式计算网络中,分布式计算网络包括与一个或多个用户(客户端设备)耦合的一个或多个服务器,所述用户执行使用经由平台提供的数据的各种监视和其它应用来执行各种功能,例如,分析功能、操作功能、维护功能、监视功能等。所述一个或多个服务器可以经由任何期望的通信网络连接到一个或多个客户端设备上,并还可以经由相同的或不同的通信网络连接到资产,例如在工厂或其它监视环境中的设备。

软件平台包括基于类的对象结构或模型,其被建立并用于组织和有效提供对关于工厂中的资产、由所述资产产生、或从所述资产处获得的数据的访问。该基于类的对象结构可以用于提供在各种监视或其它应用和工厂资产或数据源之间的有效且有组织的通信。在一个例子中,基于类的对象结构可以包括或定义类对象的各种层级,其反过来定义被监视的资产或其它物理或逻辑实体(即,从其获得数据或获得关于其的数据)的各种级别,以及这些资产或物理或逻辑实体的属性和行为。例如,所述属性和行为可以包括从被监视的资产或其它物理或逻辑实体可用或关于其的数据的定义、用于获得该数据的方式或路径等。此外,基于类的对象结构是可扩展的,因为各种应用可以向软件平台注册,并例如通过在层级内定义类对象的新类型、类对象的新实例、类对象或其实例的新属性、将连接到各种不同类型对象或其实例或者与其相关联的附加对象、在层级内各种不同类对象或其实例之间的关系等,而向基于类的结构强加改变。

在平台内定义、存储和使用这些可扩展资产类(称作模型)提供一种一致的、可管理的和容易理解的结构,当都以减小或优化在各种资产设备和应用之间的通信的方式,来获得来自或关于各种资产设备的数据(即,经由平台服务)、存储这种数据、向各种应用提供关于从各种资产设备或关于其可用何种数据或其它信息的信息、存储定义在各种资产设备之间的各种相互关系的信息等时,所述结构由平台使用。因此,该结构可以用于支持多种不同的监视应用,多种不同的监视应用需要针对不同功能访问和使用不同的资产数据。此外,软件平台使用的资产模型以基本级别被预先定义,并因此跨使用软件平台的多个资产环境中是一致的。该特征为在不同工厂处、不同客户站点处等的相同类型的资产支持或确保一致的模型定义,由此确保在由相同的一个或多个用户可以监视或管理的未连接的或单独的资产环境中模型的定义和使用的一致性。

作为一个例子,在较大的监视系统中,多个监视器(monitor)被放置在由多个应用管理的多个资产上,可能报告大量事件,并且这种事件可以创建消息(也称作警告),所述消息被电引导到各种监视应用的用户。这种用户可以是使用特定应用的任何人,例如维护人员、可靠人员、工厂操作员等。为了支持这些警告的更优分布,平台可以定义多个监视资产类,其中每个资产类具有一个或多个实例,该一个或多个实例表示或被绑定到工厂内的特定监视设备。警告可以被定义为与各种资产类对象的一个或多个相关联或者与各种资产类对象的实例相关联,并可以指示警告应该被引导向的用户、应用或其它目的地。此外,在接收一个或多个警告的各种不同监视应用可以首先定义新的资产类,或者可以修改在平台内的一个或多个资产类以定义应用所需或所使用的警告(或其它数据)。一旦定义了资产类,并且平台装置或计算机通信耦合到资产本身,平台服务就可以使用资产类对象和实例来由此获得、生成和/或管理警告(基于来自资产设备的其它数据)。例如,在任何特定实例中,平台服务可以确定警告的目的地。该目的地例如可以是应用(例如,监视应用)、用户、监视设备等。在其它情况下,平台服务可以简单地广播警告,而无需知道警告的特定目的地或用户,并且在资产环境中的应用、用户、计算机设备等可以按照需要订阅警告。此外,应用可以使用或连接到在平台中已经创建或定义的资产类对象,以经由平台服务从资产获得数据。管理警告仅是平台可以使用资产对象模型来支持各种应用(其使用资产数据执行功能)的方式的一个例子。

作为一个例子,一种电子通信系统,其用于在具有不同类型和用途的多个物理资产的环境中使用,所述电子通信系统包括:处理器;存储器;通信接口;存储于所述存储器中的对象模型;以及耦合到所述通信接口的多种平台服务,其在所述处理器上执行以接收和处理来自一个或多个应用的消息。所述对象模型包括一个或多个类对象,其每一个都指示在资产环境中的物理或逻辑实体,并且其每一个都包括定义在所述资产环境中的物理或逻辑实体的一个或多个方面的一个或多个特征,所述特征具有指示将为每个特征存储的数据的特征字段。此外,所述多种平台服务的一个或多个平台服务使用所述对象模型来执行关于来自一个或多个应用的消息的动作,例如,获得来自或关于资产的数据,从一个或多个资产或与一个或多个资产相关联的数据库读取数据或写入数据,响应于来自一个或多个应用的关于在对象模型中的数据的查询,等等。

如果需要,所述平台服务的至少一个通过使得对象模型能够被扩展以包括定义关于资产环境中的物理或逻辑实体的额外信息的额外对象信息,来管理对象模型。此外,如果需要,对象模型可以存储多个资产类对象(每个资产类对象表示在资产环境中的一种类型的物理资产)、多个位置类对象(每个位置类对象表示在资产环境中的一种类型的位置)、多个主机类对象(每个主机类对象表示与资产环境相关联的一种类型的主机计算机或设备)、和/或多个路由类对象(每个路由类对象表示在资产环境中的一种类型的路由)。

在一些情况下,对象模型存储多个资产类对象,每个资产类对象表示在资产环境中的一种类型的物理资产,并且对象模型为资产类对象中的一个资产类对象存储一个或多个资产对象实例,其中每个资产对象实例包括资产类对象中的一个资产类对象的特征,并包括在资产对象实例的特征字段内定义在资产环境中的特定资产的资产数据。多个资产类对象中的一个或多个资产类对象可以是所述多个资产类对象中的另一个资产类对象的子类对象,并且所述子类对象可以包括所述多个资产类对象中的所述另一个资产类对象的所有特征。此外,所述平台服务中的至少一个可以通过使得所述对象模型能够被扩展以包括定义关于在资产环境中的一种类型的资产的额外信息的一个或多个额外资产类对象,或包括资产类对象的额外特征,来管理所述对象模型。如果需要,所述平台服务可以通过存储对扩展所述对象模型以包括所述资产类对象的一个资产类对象的额外特征的应用的指示,或可以存储对与在所述对象模型中已经被扩展的资产类对象的额外特征相关联的多个应用的指示,来管理所述对象模型。在这些情况中,例如,所述平台服务可以限制对扩展的资产类对象或从其创建的任何资产类对象实例的额外特征的访问,对存储于所述资产类对象或从其创建的与所述额外特征相关联的资产类对象实例中的一个或多个应用的访问。

类似地,所述对象模型可以包括一个或多个附加(add-on)对象,其中所述一个或多个附加对象中的每一个都包括定义资产信息的一组特征,并且其中一个或多个附加对象与一个或多个资产类对象或所述一个或多个资产类对象的实例相关联,以进一步定义与一个或多个资产类对象或所述一个或多个资产类对象的实例相关联的资产。类似地,所述资产类对象中的至少一个资产类对象可以包括附加对象的列表,其定义可以与所述资产类对象的所述至少一个资产类对象的资产类对象实例相关联的附加对象;并且当附加对象不在所述资产类对象的附加对象的列表中时,所述平台服务可以管理所述对象模型以防止所述附加对象与资产类对象的资产类对象实例相关联。在另一方面,或者另外地,所述资产类对象的至少一个可以包括附加对象的列表,其定义必须与所述资产类对象的至少一个资产类对象的资产类对象实例相关联的附加对象。

此外,所述对象模型可以包括一个或多个关系定义,其中每个关系定义定义在两个或更多个类对象之间的关系。作为例子,关系定义可以定义:受控(controlled-by)关系,其中在受控关系中,与第一资产对象实例相关联的资产受控于与第二资产对象实例相关联的资产;控制(is-controlling)关系,其中在控制关系中,与第一资产对象实例相关联的资产控制与第二资产对象实例相关联的资产;被监视关系(monitored-by),其中在被监视关系中,第一资产对象实例相关联的资产被与第二资产对象实例相关联的资产监视;或监视(is-monitoring)关系,其中在监视关系中,与第一资产对象实例相关联的资产监视与第二资产对象实例相关联的资产。类似地,关系定义可以定义:上卷(roll-up)关系,其中在上卷关系中,来自一个或多个孩子资产对象实例的数据将出于特定目的被父母资产对象实例所使用或与其相关联;中继(relay)关系,其中在中继关系中,第一资产对象实例向第二资产对象实例提供信息,例如警告或其它消息;以及绑定(bound-to)关系,其中在绑定关系中,第一资产对象实例被创建为占位符资产对象实例,并在稍后被启用以通过从在所述资产环境内的特定资产的数据源获得针对所述占位符资产对象实例的特征的数据,而绑定到在所述资产环境内的所述特定资产。

在另一例子中,一种在电子通信系统中执行通信的方法,所述电子通信系统支持具有不同类型和用途的多个物理资产的环境,所述通信方法包括:在电子存储器中存储对象模型,所述对象模型包括一个或多个类对象,所述一个或多个类对象中的每一个都指示在资产环境中的物理或逻辑实体,所述类对象中的每一个都包括定义在所述资产环境中的物理或逻辑实体的一个或多个特征的一个或多个特征,以及为每个特征存储的数据的特征字段。所述通信方法还包括:经由处理器执行通信接口以与一个或多个外部应用进行通信;以及包括经由处理器执行多种平台服务,以接收和处理来自一个或多个外部应用的消息,还包括使得所述多种平台服务的一个或多个使用所述对象模型来执行关于来自所述一个或多个外部应用的消息的动作。此外,所述方法可以包括:经由处理器执行所述平台服务中的至少一个平台服务,以通过使得所述对象模型能够被扩展以包括定义关于在所述资产环境中的物理或逻辑实体的额外信息的额外对象信息,来管理所述对象模型。

在又一例子中,一种电子通信系统,其用于在具有不同类型和用途的多个物理资产的环境中使用,所述电子通信系统包括:处理器;存储器;通信接口;存储于所述存储器中的对象模型;以及耦合到所述通信接口的多种平台服务,其在所述处理器上执行以接收和处理来自一个或多个应用的消息,所述消息是经由所述通信接口接收的。在该系统中,所述多种平台服务的一个或多个使用所述对象模型来执行关于来自一个或多个应用的消息的动作。此外,所述对象模型包括多个资产对象,所述多个资产对象中的每一个都指示在所述资产环境中的物理资产,并包括定义在所述资产环境中的资产的一个或多个特征的一个或多个特征。所述对象模型还包括一个或多个关系定义,所述一个或多个关系定义中的每一个指示在两个或更多个资产对象之间的关系。

附图说明

当结合附图考虑时,通过参考详细描述,本发明的其它优点将变得显而易见。

图1是可以实现基于可扩展类的平台结构或模型的计算机装置的示意图。

图2是计算机网络的图,该计算机网络包括服务器、数据库、一组客户端计算机设备、一组资产源、以及一组资产,在其中可以实现基于可扩展类的平台结构或模型以执行通信。

图3是为多个不同资产类型定义的示例性的一组资产类对象和子类对象的层级图。

图4是平台装置或结构的示意图,该平台装置或结构存储一组资产类对象、附加对象、和定义各种资产的属性和其各种资产之间的关系的关系定义,并使用这些对象来执行平台服务。

图5是定义各种类对象的平台层级的图,其包括资产对象和在一些资产对象之间定义的相互关系。

图6是示例性的一组资产类对象、子类对象、对象实例和附加件的更详细的图,其还示出了在一些资产对象之间定义的各种关系。

具体实施方式

图1示出了经由计算机装置10实现分布式计算环境的一种系统和方法,计算机装置10具有使用基于类的对象结构或模型(特别地,基于资产类的对象结构)的平台。图1的计算机装置10示出为本地硬连线计算机网络,但是可以实现为任何期望类型的计算机网络,例如,分布式计算和/或通信网络、基于web或基于互联网的网络等。一般而言,计算机装置10可以提供或帮助实现遍及一个或多个工厂(例如过程工厂)或其它资产环境的通信,以便例如监视和/或控制各种资产,例如机械、控制设备(包括阀、锅炉、热交换器等)、管线、电动机、监视设备(例如,传感器、监视数据收集设备、振动检测设备等)和其它类型的资产。这种资产可以涉及或牵涉控制和/或监视流体、液体、固体、其它设备或装备等。但是,在一般意义中,本文所描述的基于类的计算和通信结构将在具有过程控制和监视装备的一个或多个过程工厂中使用的背景中描述,该基于类的计算和通信网络或装置可以在任何其它环境中使用,以监视和/或控制其它类型的资产或设备,例如包括:在工业制造工厂、电力工厂、农业农场或工厂、石油和天然气钻井和收集平台等中的资产。

如图1所示,计算机装置10包括一组平台应用(本文称作公用平台应用12),其经由公用平台api(应用程序接口)22连接到一组公用平台服务28。平台服务28包括服务总线24和数据高速总线26,其可以用于向一个或多个其它用户提供平台服务数据或信息和其它数据。上述“平台”元件统称为平台基础设施。一般而言,可以提供平台基础设施以使得平台应用12能够以一致且容易理解的方式获得对关于或来自一个或多个资产(例如在工厂中的资产)的数据或其它信息的访问,从而允许或支持各种不同应用开发者来开发在工厂中或与工厂一起使用的应用,而无需知道或理解在工厂中如何生成、存储或以其它方式组织和访问数据。

在典型的应用环境中,例如在过程或其它制造工厂中,在平台基础设施外部提供多个应用、服务和总线。例如,振动插件(plug-in)应用14可以连接到振动api20和公用平台api22。类似地,可以提供其它插件应用16,并且将其连接到公用平台api22和其它插件api18。此外,其它插件服务32可以连接到所有的三个api22、20和18上。“其它”元件将被理解为表示多个其它应用、服务和总线,其可以被提供在该特定计算机装置10中以与公用平台服务28接口连接(interface)来从各种资产获得数据。

重要地,公用平台服务28连接到资产源40(其可以是振动资产源)和其它资产源42,这两者通过平台webapi34连接。资产源40还连接到api36,各种源可以通过该api36彼此通信。作为例子,资产源40可以包括振动源,例如振动收集和监视设备(例如,模型2140、9420、6500),以及由过程管理(processmanagement)提供的其它设备。振动资产源40可以通过api36与振动插件服务30通信,并且其它资产源42可以通过其它api38与其它插件服务32通信。在该特定例子中,其它插件服务32和其它资产源42连接到所有三个api34、36和38上,这可以是期望的但可以是可选的。一般而言,应用(例如,振动插件web应用14)和源(例如,源40)将不与其它应用或其它服务接口连接。相反,任何事物都将通信到公用平台服务28,并且在应用之间或在源之间的通信将通过公用平台服务api22和34完成。

将理解的是,所有的资产源(例如,源40和42)可以通过或使用公用平台服务28直接与应用12、14、16通信。例如,当如资产源40和42所确定的发生重要事情时,可以由资产源40和42之一生成事件信号,并且该信号可以通过公用平台服务28通信到例如在公用平台web应用12中的消息传送应用。因此,一般而言,在平台基础设施外部生成事件信号,并且通过平台基础设施内的消息传送服务生成消息。类似地,利用公用平台服务28,响应于来自(经由)公用平台服务28的读取请求,或因为资产源40和42被配置为例如经由广播消息到应用12、14、16中各个应用(经其由平台服务28订阅该消息)而自动发送这种数据或信号,可以从资产源40和42中的任何资产源将其它资产数据或信号提供到应用12、14、16的中的任何应用。这种数据可以包括性能数据、控制数据、维护数据、感测的数据、过程变量数据、测量得的数据、设备信息数据、配置数据等。

此外,将理解的是,资产源40、42可以是单独的设备(例如,监视设备、耦合到传感器或其它监视设备的数据收集设备),单独的控制设备(例如,控制器、阀、热交换器等),可以是收集和存储来自其它资产的任何类型的资产数据的数据库(例如,在过程工厂中收集和存储在工厂内生成的控制和维护数据的监视、过程控制、维护数据库),或者可以是到相互连接的工厂系统(例如,控制系统、维护系统等)的网关。因此,图1的资产源40、42可以是资产数据的任何源,其直接或间接耦合到一个或多个资产,以获得任何类型的数据。例如,资产数据可以是由资产生成的、存储于资产中的、关于资产存储的或由资产收集的数据。

图2示出了分布式计算系统,在该分布式计算系统中,图1的计算机装置10可以用于或实现以提供经由各种计算机网络连接对各种不同类型的资产或资产数据的访问。特别地,图2的分布式计算系统包括服务器100(其可以是一组任何数量的服务器设备,并在其中具有处理器和通信电路),其连接到各种客户端计算设备102以及连接到资产数据的各种源104。特别地,服务器100可以存储和执行以下的各种:平台服务28、插件服务(例如,图1的振动服务30或其它插件服务32)。类似地,客户端设备102可以是内有处理器的任何类型的计算设备,例如个人计算机、膝上型计算机、手持计算机、其它服务器、电话、平板等,其可以存储和执行图1的平台应用12和/或其它插件或应用14和16中的任一个。如果需要,则应用12、14、16中的一些或所有可以存储于并执行于服务器100中,并且这些应用可以与作为用户接口设备的客户端设备102进行通信。当然,客户端设备102可以包括用户接口和/或显示器,以使得用户能够与在这些设备上存储和执行或与其通信的应用进行交互。此外,虽然服务器100示出为经由一个或多个硬连线通信网络(例如,以太网网络连接、基于web的网络连接如互联网等)连接到客户端设备102上,但客户端设备102可以经由任何期望的硬连线或无线(或组合的硬连线和无线)通信网络连接到服务器100。因此,例如,客户端设备102d之一示出为手持的无线设备,其经由无线路由器105连接到服务器100上,所述无线路由器105经由硬连线连接到服务器100上。

此外,服务器100可以包括或连接到一个或多个数据库106,该数据库106存储由平台服务28获得、生成和/或使用的数据,以相对客户端设备102内或经由其访问的各种应用(插件)提供数据收集和组织。此外,如图2所示,服务器100经由任何期望的一个或多个通信网络(例如,有线和/或无线)连接到各种资产源104。在图2的示例性系统中,资产源104可以包括单个监视设备110(其可以是或可以收集来自布置在例如工厂中的各种传感器的数据)、数据库112(其可以收集和存储从其它资产或设备接收到的数据)、过程工厂计算机或接口(例如,工厂控制接口114)、过程维护接口116、工厂监视接口118等。任何或所有的工厂接口114、116、118可以经由各种通信网络耦合到工厂(例如,过程工厂、电力工厂等)内的设备,并且这些接口可以操作以任何已知或传统的方式收集来自工厂设备或资产的资产数据。例如,控制接口114可以经由工厂控制网络120连接到各种控制器122,其可以经由输入/输出设备和任何期望的或已知的有线或无线通信链路(例如,通信链路、fieldbus通信链路、无线通信链路如通信链路)连接到现场设备和其它工厂设备124,如阀、传感器、变送器、燃烧器、热交换器、电动机等。此外,维护接口116可以经由工厂控制网络120连接到各种现场设备124上,和/或可以经由独立或单独的维护通信网络连接到在工厂内的这些和其它维护设备126(其可以是监视设备,如振动监视设备)。以类似的方式,监视接口118可以经由任何安装的或自组通信网络或链路连接到各种监视设备,例如振动监视设备126等。如将理解的,图2的资产源110、112、114、116、118、122、124、126等可以是图1的源40和42的任何一个。此外,在图1和图2中示出的资产源仅是一些可能类型的资产源,其可以连接到服务器100内的平台服务28上。

一般而言,图1的平台服务28将操作以帮助执行在应用和资产源之间的通信,并通过实现可扩展资产类(eac)结构或模型(本文称作可扩展模型或装置)来组织资产数据获取和使用,所述eac结构或模型反过来描述或定义各种类型的资产(或其它物理或逻辑实体),并将这些资产(或其它物理或逻辑实体)分类为建模现实世界资产(例如,图2的资产源的任一种)的逻辑结构。在一种情况下,模型(本文还称作对象模型)包括表示或定义在工厂或其它环境中的不同类型的实体(例如资产)的一组类或类对象。如果需要,则利用对象定义类,所述对象可以在面向对象的计算环境或语言中被创建、实现和存储为对象。每个资产类对象唯一地定义与特定类型的现实世界资产相关联的在特定抽象级别的一组属性和行为。此外,将模型的资产类对象布置为层级结构,例如父母/孩子结构。该层级结构的目的是以逻辑和容易理解的方式布置资产类以供应用(例如,创建)使用,并从父母类向其子类(孩子类)提供属性和行为的继承。根据父母类对象创建的子类或孩子类可以具有其自己的额外的唯一属性和行为,以进一步定义落到父母类对象定义下的资产的子集。因此,一般而言,父母类是其更具体的子类的泛化。例如,子类“泵”比其父母类“机器”更具体,并且子类“机器”比其父母类“资产”更具体。

虽然包含于平台服务28内并由其使用的类对象定义可以超出仅是资产,并可以包括其它物理或逻辑实体,例如位置、路由和主机等,但是该描述主要集中于类对象的资产类型,将理解的是,其它类型的类和类对象可以由平台服务28使用,并且这些其它类型的类对象可以拥有如本文所述的用于资产类对象的类似行为。此外,将理解的是,针对可扩展性设计本文描述的资产类对象结构或层级,从而该结构可以在使用期间被添加、删除、修改或改变以便更通用,从而支持更多或不同应用和插件,来容纳新的或不同的资产等。因此,例如,本文描述的基于类的对象平台结构包括在模型内扩展对象和容纳额外类型的资产的机制。此外,将理解的是,基于类的对象平台结构的基本模型定义(例如,在单个资产环境中扩展之前)在一些或所有使用中可以是相同的,并因此跨不同资产环境、工厂等是一致的。该特征导致在不同工厂中的一致使用,所述工厂可以例如由公共拥有者、操作员或监视实体、或者甚至不同的拥有者、操作员或监视实体所拥有、操作或监视。

更特别地,每个资产类或资产类对象具有一组属性,其定义在特定抽象级别处与资产相关联的物理和/或逻辑特性,并且适于由各种技术、应用或过程使用。例如,资产类对象可以包括定义资产的特征的字段,其可以包括资产的属性、行为等。作为例子,物理属性可以包括例如资产的重量、尺寸、长度、流容量等的事物。类似地,特征可以包括描述属性,例如,名称、描述、制造商、用于表示资产的一个或多个图像和/或图标等。此外,特征可以包括行为属性,并可以例如包括描述资产或资产属性的行为(例如,如果资产字段是只读的,则是资产属性的默认值)的元数据、将结合资产使用的验证规则等。类似地,资产对象特征可以包括配置属性或字段,其指示资产可以如何配置或设置用于特定用途。

此外,每个资产类或类对象可以具有与其相关联或从其定义的子类(sub-class),其进一步细化资产类型的定义。类对象的每个子类继承其父母类对象的属性,但是子类通常添加或包括额外的特征,例如,进一步细化特定资产子类型的定义的属性(通过父母对象的属性)。资产对象模型的该操作称作扩展类。一般而言,可以扩展在对象模型中的任何资产类。例如,一些资产类被核心装置对象定义,被称作资产平台或简称为平台。这种平台可以包括资产基本类(baseclass),在其上可以建立所有资产子类。此外,可以扩展现有资产类,并且可以向模型添加新的资产类,并且这些添加的类随后可以通过图1的各种应用或插件12、14、16扩展。在基本资产对象模型上执行扩展活动的应用称作扩展器,并且这些应用可以扩展资产类模型和平台装置。

如上所述,基本类的属性由针对基本类定义或从基本类扩展的子类继承。然而,平台知道或跟踪起源于特定基本类的每个子类,并且知道或跟踪源自于扩展器或由扩展器添加的任何属性和行为的源。此外,如本文所描述的类定义包括资产类对象的实际实例。一般而言,根据类对象创建类对象实例,并因此具有由类对象定义所定义的所有属性,包括可应用的默认值。然而,类对象实例用于表示特定资产。因此,类对象实例一般具有基于由类对象实例所表示的特定资产而填充的特征字段(例如,属性字段)

为了更好地理解这些概念,图3描绘了示例性资产类对象层级或模型200,其已被创建以使用本文描述的资产类对象结构的原理来建模各种类型的资产。特别地,资产类模型200包括基本资产类对象202,其具有一组特征204和与其相关联的特征字段206。在该情况下,特征204可以定义或命名对于所有资产公用的属性、行为和定义,并且特征字段206可以在每个字段中定义数据的类型或特性(长度、类型等)。类似地,特征字段206可以定义在对象中创建所述特征的应用或源。在该情况下,资产类对象202具有一组特征,其将被包括在所有的资产类对象中,包括名称、描述、是否是逻辑实体的指示、图标、图像、制造商和型号。当然,其它特征字段也可以存在,或替代地包括例如定义与提供关于连接到对象(即,对象的实例)的特定资产的数据的资产源进行通信的方式的特征字段。这种通信信息可以包括通信路径、链路、端口、地址等、用于执行这种通信的一种或多种通信格式等。另外,资产源可以是资产本身或资产的代理,例如数据库、收集关于资产的数据的监视设备、过程控制、维护或监视接口等。类似地,通信路径或链路可以是定义通过一个或多个其它设备和/或通信网络到特定资产的资产源的通信链路的链路或路径。该通信信息可以在使用公用平台28的通信系统的运行时(runtime)期间使用,以使得平台服务28或耦合到公用平台服务28的应用或插件(例如,12或14)能够从一个或多个资产源获得实时或实况数据。在特征字段206中的括号<>内的指示定义或识别每个字段的源或创建者,其在该情况下是公用平台28。该指示还可以指示在模型内当使用平台服务28时应用或插件将具有对该属性的访问或将“看到”该属性。如果需要,则将禁止在该属性中未列出的其它应用或插件看到该属性。在另一方面,一旦属性存在于模型中,则平台服务28可以使得所有应用看到或访问所述属性。

如图3所示,根据资产类定义了两个资产子类210和212,包括“机器”资产类210和“设备”资产类212,其在图3中由标题资产.机器和资产.设备指示。此外,为机器资产类对象210定义了另外两个资产类对象(其是子类对象),包括电动机类对象214和泵类对象216。此外,已将ac电动机类对象218定义为在电动机类对象214下的孩子或子类对象。如将看到的,类对象210、214、216和218中的每个继承它们的直接父母类对象的所有特征和字段,并包括与其相关联的额外特征和特征字段。因此,例如,ac电动机子类对象继承电动机类对象214的所有属性,并还包括“#转子条(rotorbar)”和“#定子槽(statorslot)”的属性作为该类对象的一部分。

此外,如图3所示,已经扩展了各种资产类,并且在一些情况下已经通过不同应用(或扩展器)进行了扩展。因此,例如,电动机类对象214具有由命名为振动(vibration)的插件(在该背景中也称作扩展器)添加的“马力(horsepower)”属性,并且具有由命名为其它(other)的扩展器添加的“amps”属性。当多于一个插件扩展器要求添加相同语义属性时,可能出现情况,在该情况下将属性标记为源自于多个扩展器。该情形的一个例子是,在ac电动机类对象218中的“#转子条”示出为来源于mhm和其它扩展器。

如将理解的,平台28可以操作以具有使得插件取回所有对象属性(由平台和所有扩展器创建)或使得插件仅取回由(公用)平台或自身创建的对象属性的服务。将理解的是,虽然图3的模型200示出了多个资产类对象的定义和属性以及其它特征,但是这些资产类对象的各种实例可以被创建以表示在工厂或其它资产环境中的实际物理实体。在该情况下,将利用特定于连接对象实例的实际资产或可能从其获取的数据或信息填充对象实例的特征字段。

现在参考图4,更详细地示出图1的平台28以示出平台28可以被配置为利用如本文所描述的基于类的对象层级来执行服务的方式。特别地,平台服务机器28包括图1的api22和34,其被配置为在处理器340上执行以与使用公用平台服务的资产源和各种应用或插件接口连接,由此使得插件能够经由服务总线24和数据总线26访问例如来自工厂环境内的一个或多个资产的数据、从一个或多个资产接收消息、发送消息到一个或多个资产、配置一个或多个资产等。平台服务机器28还包括内在或内部网络总线350或链路,其耦合到api22和34以及经由一个或多个端口351耦合到总线24和26。内部总线350由被配置为或创建为在处理器340(其可以是微处理器、在操作系统上运行的通用处理器、专用集成电路asic、或任何其它期望类型的电子处理器)上执行的各种平台服务或服务模块352使用,以基于来自api22和34的调用来执行各种不同的低级别服务或过程。服务352可以例如包括数据读取服务、数据写入服务、通信服务、联网服务、下载服务、执行服务、消息传送服务、或可通过api22由在平台服务机器28外部的各种不同插件应用调用的服务。在一些情况下,一些服务352可以使用或调用其它服务352。一般而言,一些或所有的平台服务352可以访问和使用(例如,图3的)对象模型中的数据以执行这些服务,包括从与在对象模型中定义的各种资产或其它物理或逻辑实体有关的对象模型读取数据,使用在对象模型中的对象之间定义的关系366(如下所述)来执行动作,例如转发消息、转发或收集数据,使用在对象模型中的数据来与资产源通信,修改或扩展对象模型或对象模型中的数据等。

重要地,在图4中标记为服务352m的一个服务352是类对象管理服务,其用于生成、配置和管理如本文所描述的各种类模型或基于类的层级,从而使得类模型的对象能够被其它服务352使用或访问,以执行如各种插件应用调用的数据读取、写入、消息传送等功能。特别地,服务352m可以使得能够创建、扩展、修改、用数据填充等平台机器28的类对象层级。另一服务352n可以使用所存储的层级和其中的数据,来确定哪些应用或插件具有对哪些类对象、类对象实例、对象属性或其它对象特征等的访问。

如上所指示的,基于类的对象层级可以包括用于各种类型的现象或信息中的任一任何类型的现象或信息的类对象,包括资产、位置、路由、主机等。因此,类服务352a可以用于创建类对象,例如资产类对象、位置类对象、主机类对象等,并响应于来自经由api22连接到平台服务28上的各种应用或插件的api调用来扩展和修改这些类对象。一旦被创建,各种其它平台服务352可以使用由平台服务352m创建和管理的资产或其它对象来执行动作,例如,从各种不同设备或资产处获得数据,转发消息,将信息写入到各种资产中,对数据执行分析,修改资产或工厂中资产内的信息,向各种用户或各种插件应用发送数据或信息,等等。

如图4所示,平台服务机器28包括存储器360,其可以存储包括各种类型的类对象362(其表示工厂内的物理实体或逻辑信息)的一个或多个对象模型,可以存储各种附加对象364(其表示由多个不同对象362所使用或与其相关联的额外信息),以及可以存储本文称作关系366的关系定义(其定义在各种对象362之间的关系)。更特别地,如图4所示,对象模型包括各种类型的类对象362,其可以包括一组资产类对象370、一组位置类对象372、一组路由类对象374、和一组主机类对象376、以及表示在工厂内或工厂组合内或与工厂组合或相关联的其它物理或逻辑结构或现象的任何其它类型的类对象。如将理解的,资产对象370定义或涉及工厂内的物理资产,例如,机器、设备、监视器等。位置对象372可以定义或关联工厂内的各种位置,例如,工厂站点、楼层、房间、部门、区域等。路由对象374可以定义或表示工厂内的路由,包括物理路由、通信路由等。类似地,主机对象376可以定义或涉及工厂内的主机或主机机器(计算机),例如包括:维护主机、控制操作员主机、监视主机等。如将是明显的,资产对象370(或资产对象模型)将在本文更详细地描述。然而,将理解的是,可以利用本文描述的用于基于资产类的对象或资产模型的相同原理来创建和配置其它类型的基于类的对象和对象模型,例如,主机、路由和位置对象模型。此外,本文描述的这种对象和对象层级结构的使用可以应用于和用于除了本文具体描述或提及之外的其它类型的物理或逻辑现象。

各种类型的基于类的对象集合中的每一个(例如,资产对象370)包括公用或基本类对象,并且可以包括多个孩子类对象、孙子类对象等,其定义了本质上更详细的子对象(类对象)。如本文所解释的,每个这种类对象包括或定义各种属性、定义和行为,其与由类对象表示的物理或逻辑现象或实体相关联。每个类对象可以具有任何数量的依赖其的子对象(其还可以是类对象并在本文称作孩子类对象或孩子对象)。每个这种子对象包括或继承父母对象的所有的属性、定义和行为。然而,子对象(类对象)包括进一步定义一类的更通用的父母类对象的额外的属性、定义和/或行为。例如,图4示出了与基本资产类对象370相关联或依赖其的一组子对象,包括机器类对象380、分析类对象382和监视器类对象384。当然,其它类型的资产将具有因此定义的其它资产类对象,并依赖于基本资产类对象370。一般而言,基本资产类对象370定义与所有资产相关联的一组属性、定义和行为(统称为特征),并且子类对象380、382、384继承这些基本特征,并包括特定于与子类对象相关联的特定类型的资产的额外特征,使得这些子类对象更特定于特定类型的资产。

如图4所示,每个资产类对象380、382和384可以包括其资产对象实例。类对象的每个实例包括类对象的所有特征,但是与工厂内的实际或特定物理或逻辑实体相关联或与其连接。特别地,资产类对象的实例连接并表示由创建实例的资产类对象定义的类型的工厂内的特定资产。然而,类对象实例包括用于与工厂内的特定实体相关联的每个定义特征(属性、定义、行为)的特定数据或信息。因此,例如,图4中的平台服务机器28的图示包括机器资产类对象380的三个实例380a-380c,其可以表示工厂内的特定机器;包括用于分析资产类对象382的两个实例382a、382b,其可以反映在工厂内的振动分析设备;以及监视器资产类对象384的一个实例384a,其可以表示工厂内的特定监视设备或节点。在从其创建实例的类对象所定义的特征字段内,每个资产类对象实例可以具有从工厂中表示的各种特定实体获得的或与其关联的数据。

当然,任何类对象或为其定义的子对象可以具有其实例。该结构可以在层级内重复任何次数,以定义任何数量级别的资产类对象层级,从而定义在工厂内资产的任何数量级别的抽象。因此,如图4所示,为类对象384定义各种子类对象392、394和396,并且为这些子类对象390、394、396中的每一个创建和存储各种实例。只要必要,基于类的对象的该结构就可以按照需要在对象层级继续向下(父母到孩子到孙子等),以进一步定义或细化工厂内的各种资产或资产类型。

虽然在图4中未明确示出,但是可以针对位置372、路由374和主机376以及平台服务使用类对象的任何其它物理或逻辑现象定义类似类型的基于类的对象结构。该事实被基本类对象372、374和376之下的云(cloud)指示所示出。

如上所述,在图4中示出且在本文描述的基于类的对象结构提供属性从父母到孩子的继承,并且每个基于类的对象实例包括在为从其创建实例的类对象定义的每个特定特征字段内的数据。如将理解的,当在类层级内创建或定义新的类对象和实例时,服务352m可以操作以强加这些继承属性。此外,例如,特定的基于资产类的对象连接到(关联于)工厂内的单个或特定资产,并包括特定于所述资产的信息以定义所述资产,从而使得实现与在层级内的所述资产的通信或正确组织所述资产,以便通过平台服务机器28实现对资产的一致且综合的理解,包括所述资产是什么、其是如何定义的、资产的属性和行为、以及如何与资产通信。

如上所述在类和子类之间的简单继承模型的一个限制在于不相关的类不能共享相同集合的属性,并且在一些情况下,不希望对象的一些属性或特征继承给孩子对象。该限制可以通过在基于类的模型或层级中使用附加对象来解决。

如图4所示,平台服务数据库360可以存储一组附加对象364。附加对象364类似于基于类的对象,除了附加对象364不提供在父母和孩子对象之间的继承属性。相反,附加对象364设计为连接到或关联于各种资产对象370或其它基于类的对象,以便为这些对象进一步提供定义或属性。通常,附加对象是定义或包括跨多种资产类可应用于资产的属性或其它特征的对象,而不必遵循资产类对象的特定的父母/孩子链。因此,附加对象可以应用于孩子资产类对象或甚至可应用于孩子资产类对象的实例,而不相关于或不适用于父母类对象或父母类对象实例。因此,附加对象364用于提供在基于类的对象层级的不同级别处使新属性与各种不同类对象或类对象的实例相关联的能力,而无需这些属性从父母继承或可继承到孩子。在一些情况下,附加对象364可以只具有附加名称的属性,其可以为了描述或分类的目的而标记类对象或类对象的实例。

更特别地,附加对象364具有类似于资产类对象的结构,在于类似于资产类对象,插件对象364可以具有属性。然而,为了简洁,对于附加对象364不支持属性的继承。因此,附加对象364可以用于定义应用于类对象的特定资产类实例而不必应用于所有实例的行为和/或属性。一般而言,对于任何给定的资产类定义可以存在多个资产实例,并且相同或不同的附加对象364可以应用于不同的那些实例,而不应用于所有的实例。此外,任何资产对象实例(不管是否具有相同资产类定义)可以具有分配给其或与其相关联的相同附加对象364。例如,监视设备的多个资产实例(例如,压力传感器)可以用于测量不同的压力、流体液位或流速。与这些不同压力资产相关联的每个类对象实例可以具有分配给其的不同附加实例(即,压力附加对象、液位附加对象、或流动附加对象),从而特征化在工厂内这些设备的操作。

使用附加对象364来描述类实例的行为的优点在于附加对象364可以被定义一次,并在多个资产类实例上使用。虽然附加对象364可以包括定义或解释工厂内的设备或资产的操作或配置的定义,但附加对象364可以具有特定的属性。例如,当创建具有附加对象的类对象实例时,以太网附加对象可以具有填充有特定地址“ip地址”的属性。此外,类对象定义可以具有允许的附加对象的列表和要求的附加对象的列表,如果需要,则作为其属性的一部分。如果需要的话,当类对象定义不包括特定附加对象作为允许的附加对象时,则从类定义导出的任何类对象实例不能具有添加到其上的附加对象。再次,当设置或扩展资产类层级或模型时,类定义服务352m可以强制这些规则。

如图4所示,平台服务数据库360包括在其内定义或存储的一组关系366。关系366可以用于定义在各种不同的资产对象(包括资产类对象和资产类对象的实例)之间的各种类型的关系。通常,关系定义366定义资产对(或资产对象对)和一种类型的关系。资产对象对可以是一对一、一对多、多对一、或多对多对。

一般而言,关系366将基于类的模型或层级扩展超出基本父母/孩子关系,以定义在类或包括类对象的实例的类中的对象之间的额外关系。关系的类型可以包括例如:“受控”关系(指示一个资产受控于另一资产),“控制”关系(指示一个资产控制另一资产),“被监视”关系(指示一个资产被另一资产监视),“监视”关系(指示一个资产监视另一资产),“父母-孩子”关系(定义对象继承关系),“上卷”关系,“中继”关系,或各种其它类型关系中的任一种。

关系366设计为用于可扩展性,因为关系366可以在工厂或资产系统的操作期间定义、创建、修改、删除和改变,并且可以在任何时候通过类对象管理服务352m连接到资产层级中的资产对象或从其断开连接。因此,虽然不是所有现实世界的关系都可以包含于层级中,但是服务352m可以操作以扩展基于类的模型和装置,来容纳额外类型的关系,并允许在不同类型的类对象结构之间建立关系,例如在位置和资产对象之间,在路由和资产对象之间,在路由和位置对象之间,等等。

可以在数据库360中定义和存储的关系类型的例子是孩子-父母关系。如上所指示的,资产父母-孩子关系具有继承属性行为,由此孩子继承其父母的属性,并可以具有其自己的额外属性。为其它类型的类对象定义的关系不必要求资产类对象父母-孩子关系的属性继承行为。例如,位置类对象可以不实现属性继承行为。

另一示例性关系包括被监视关系,其可以用于使例如机器的资产与例如振动监视器的监视设备的资产相关。例如,被csi9420振动监视设备监视的电动机可以具有关于csi9420设备定义的被监视关系。监视关系基本上与被监视关系相反,其可以用于使例如监视设备的资产与监视的资产相关。例如,当csi9420振动监视设备监视电动机时。

另一示例性关系是受控关系,其可以用于使例如机器的资产与被控制器控制的资产相关。例如,电动机被电动机控制器所控制。控制关系与受控关系相反,并可以用于将例如控制器的资产与控制的资产相关。例如,电动机控制器控制电动机。

关系的另一例子是上卷关系。该关系可以用于指示如何或是否将信息或数据从孩子类实例上卷到其父母类实例。上卷实例的例子可以是从孩子资产对象实例将资产健康上卷到其父母资产对象实例。在该情况下,上卷关系支持或用于在父母对象实例处或与其相关联地执行计算,例如,将来自多个孩子资产实例的健康值组合到单个父母资产健康参数值。当然,上卷关系可以在其它实例中使用或用于其它目的。

关系类型的另一例子是中继关系,其指示资产实例或资产对象实例将指定的/规定的属性/信息从一个类实例中继或传递到另一个。使用这种关系的例子在这样的情况下:将消息从孩子资产实例转移到其父母资产实例,或者从资产对象实例转移到其位置对象实例。

此外,另一关系是绑定关系,其使得类对象或对象实例在创建后绑定到另一实例。特别地,在创建类层级期间遇到的一个问题是创建层级的人可能不能直接访问某些资产,例如在创建层级或对象模型时的监视设备(如,csi9420设备)。在这些情形中,用户可以创建表示实际资产的“占位符”类实例。这些占位符实例来自特定类对象,但是尚未连接到实际物理设备。绑定动作是这样一种关系:占位符类实例变为绑定到并且完全连接到实际物理资产。绑定结果是占位符实例的特定属性值被物理资产的实际属性值所替代。例如,占位符不具有序号属性值,而一旦占位符绑定到物理资产,将很可能存在占位符对象实例内的资产的实际序号。

此外,在类定义之间的关系在类实例之间在运行时是可配置的。例如,在位置和资产之间的“绑定”关系将暴露/允许在运行时期间在位置实例和资产实例之间的绑定行为。

此外,当在类模型或层级中移动(新的父母/孩子关系)、复制(duplicate)(拷贝(copy)/粘贴)和/或删除类实例时,类关系可以具有特定行为。类对象管理服务352m可以在通过授权应用或插件移动、复制或删除操作时强制这些规则或动作。例如,当移动对象实例时,有两个关系改变。移动的类实例的父母/孩子关系改变,并且上卷关系被移除。所有其它关系可以被维持,即使它们在被移动的类实例之外。类似地,对于拷贝/粘贴(复制)动作,如果类实例被拷贝和粘贴(复制),则创建新的父母/孩子关系并且移除所有其它关系。此外,在删除对象动作时,移除所有关系。此外,绑定关系可以使得一些属性从一个类实例覆写到另一个。

为了示出各种关系,图5描绘了包括标记为站点db(数据库)结构的基本节点的工厂层级400,所述站点db结构包括与其相关联的两个位置,包括电动机控制室mcr和锅炉室br。层级400包括两个电动机控制器mtrctrl103和mtrctrl101,而锅炉室包括两个锅炉给水泵bfp101和bfp102、电动机mtr103和监视设备248t-b3。锅炉给水泵101包括电动机mtr101、泵pmp101、两个监视设备9420-b1和9420-b2以及监视设备248t-b4。类似地,锅炉给水泵102包括电动机mtr102、泵pmp102以及两个监视设备9420-a1和9420-a2。

在图5中的点线402示出了存在于各种设备之间的被监视关系,将理解的是这些关系将被定义为在与模型或类层级中的这些设备相关联的对象实例之间。特别地,监视设备9420-b1监视泵pmp101,而监视设备9420-b2和248t-b4监视电动机mtr101。类似地,监视设备9420-a1监视泵pmp102,而监视设备9420-a2监视电动机mtr102。最后,监视设备248t-b3监视电动机mtr103。

此外,如图5中由虚线/点线404所示,受控关系存在于或定义于电动机mtr103和电动机控制器mtrctrl103之间和电动机mtr101和电动机控制器mtrctrl101之间。可以通过一个或多个插件使用从平台机器28的对象模型处获得的数据来提供对例如图5(或图3)的层级的描述,作为如何使用对象模型来将数据提供给各种插件的一个例子。

作为另一例子,图6提供了例如针对工厂定义的基于类的对象层级结构500的示意图,并且示出了各种不同的附加对象,它们可以连接到各种不同的资产对象(包括资产类对象和资产实例对象),以及在多个不同资产对象实例之间的关系。特别地,图6示出了具有基本资产类对象502的资产类对象结构500,根据该基本资产类对象502定义了四个资产类子对象504、506、508和510。如图6所示,对于资产类对象504存在或创建了各种资产类对象实例504a-504c,对于类对象506和508没有创建资产类对象实例,以及对于类对象510创建了一个资产类对象实例510a。然而,资产类对象504具有两个另外的资产类子对象512和514,并且资产类子对象512包括四个实例资产类对象512a-512d,而资产子类对象514包括一个对象实例514a。此外,类资产子对象506包括从其创建的单个类自对象516,其具有四个资产类子对象实例516a-516d。以类似方式,资产类对象508包括具有两个对象实例520a和520b的单个资产类子对象520。类似地,资产类子对象510不包括类子对象,但是包括单个实例对象510a。

如在图6中能最好理解的,定义了各种附加对象,并且其关联于或连接到对象模型500的各种不同的资产类对象(或子对象)和资产类对象实例。一般情况下,资产类对象504、506、508、510、512、514、516和520中的每个包括许可的和/或要求的附加对象530的列表。这样,来自这些类对象的类对象实例可以在相关联的资产类对象的列表530内具有零个、一个或多个许可的附加对象,并且必须包括指示为在列表530中所需要的附加对象。列表530可以通过父母-孩子关系继承,并类似于其它属性,被增加或添加到父母-孩子对的孩子级别。然而,列表530的继承是不必要的。

通过例子,两个附加对象532和534示出为关联于或连接于资产类对象实例520a,以进一步定义对象实例。这里,将在与资产类对象520相关联的附加对象530的许可的或要求的列表内提供附加对象532和534。另外,附加对象534与资产对象实例504b和512c相关联,其处于父母-孩子关系(因为它们各自的资产类对象处于父母-孩子关系)。然而,附加对象536连接到或关联于不处于父母-孩子关系的每个资产对象实例510a和516b。如将理解的,任何数量的附加对象可以与资产类对象或资产类对象的实例中的任一个相关联,并且相同的附加对象可以与不同的资产类对象和/或资产类对象实例(包括处于或不处于父母-孩子关系的那些)相关联。

此外,图6使用在各种资产类对象和/或资产类对象实例之间的点线示出了在模型500内的资产对象之间定义的各种关系。例如,点线550示出了在两个类对象实例512c和516a之间的一对一监视关系,指示与资产对象实例512c相关联的资产在监视与类对象实例516a相关联的资产。类似地,点线552示出了一对多的受控关系,其中与类对象实例520b和510a相关联的资产受控于与类对象实例516c相关联的资产。点线554的集合示出了上卷关系,其中来自类对象实例512b、512c和514a的信息上卷到父母类对象实例504c,其可以在这些上卷值上执行相同的动作,但是在来自于与对象实例512a和512d相关联的资产的这种值上不执行。当然,取代或除了图6所示那些外,可以为各种资产类对象和资产类对象实例定义或在其中示出其它类型和数量的附加对象和其它类型和数量的关系。因此,将理解的是,图6只描绘了各种不同类型的资产类结构、附加结构、类对象实例结构、以及可以在平台模型中创建和使用的关系的一个例子。

因此,如本文所描述的,平台28包括一组可扩展资产类(eac),其包描述各种类型的资产并将这些资产分类到建模现实世界资产的逻辑结构的可扩展模型和装置。每个这种资产类唯一地定义了其属性和行为。此外,eac模型和装置是可扩展的。如本文所描述的,资产类可以具有子类,其进一步细化被建模资产的定义,从而父母类是更具体的孩子或子类的概括。另外,资产类可以具有子类,其继承它们的父母的属性和行为,并可以具有自己的额外的唯一属性和行为。此外,每个资产类具有定义其物理或逻辑特性的一组属性,所述特性可以适于被各种技术、应用和过程所使用,并可以被技术、应用和过程访问以获得资产信息而用于执行数据获取和分析、消息传送等。此外,扩展器装置或应用可以通过向其添加属性和行为来扩展现有的资产类,并且在一些情况下,扩展器装置可以添加整体的新资产类和子类。在使用期间,类定义用于创建所述类的资产的实际的实例,并且资产类实例具有由其类定义所定义的所有属性,包括可应用的默认值。

此外,附加对象可以具有自己的一组属性和行为,并用于定义应用到一些资产类实例且通常可应用于来自各种不同资产类的实例的行为和/或属性。当属性和行为跨在类层级中不具有共同亲子关系的各种各样的类是公用的时,和/或当特定类实例可以或不可以实现被建模的属性和行为时,可以有利地使用附加对象来代替类继承。此外,类对象定义可以具有允许的附加对象的列表和要求的附加对象的列表。如果类定义列表不包括附加对象作为允许的附加对象,则从类定义导出的任何类实例不能实现附加对象。

类关系是在模型内对象之间的关系的定义,并可以应用于多种不同类型的类或类对象,例如资产、位置、路由和主机,等等。虽然本文描述了“被监视”、“监视”、“受控”、“控制”、“绑定”、“上卷”和“中继”类型的关系,但这只是关系的几个可能的例子,并且可以使用拥有类似行为的其它类型的类关系。此外,类或类对象定义与那些对象和相关子对象和实例相关联的可允许的关系,而为每个实际类实例定义每个可允许的关系的实例。此外,在类实例之间在运行时可以配置类定义之间的关系。

在这些例子中,资产父母-孩子关系具有继承属性行为,由此孩子从其父母处继承属性,并可以具有其自己的额外属性。然而,非资产对象或资产父母-孩子关系不必具有属性继承行为。

被监视关系用于使例如机器的资产与例如振动监视器的监视设备的资产相关,而监视关系用于使例如监视设备的资产与监视的资产相关。类似地,受控关系用于使例如机器的资产与被控制器控制的资产相关,而控制关系用于使例如控制器的资产与控制的资产相关。

上卷关系用于指示从孩子类实例向其父母类实例上卷或传递信息,中继关系将指定的/规定的属性/信息从一个类实例中继或传递到另一个,并且绑定关系是这样的关系:占位符类对象实例完全连接到实际物理资产。绑定的结果是占位符对象实例的特定属性值被物理资产的实际属性值所替代。

在移动(新的父母/孩子关系)、复制和删除类实例时,类关系可以具有特定行为。例如,例如,移动类实例将导致两个关系改变。移动的类实例的父母-孩子关系改变,并且上卷关系被移除。所有其它关系可以被维持,即使它们在被移动的类实例之外。在类实例上的拷贝/粘贴(复制)动作导致创建新的父母-孩子关系并且移除所有其它关系。类似地,删除类实例将导致移除所有关系。绑定动作可以使得一些属性从一个类实例覆写到另一个。

如将理解的,本文描述的软件平台存储和提供对模型和模型中的数据的访问,包括与每个模型对象(包括类对象和对象实例)相关联的资产数据,以使得应用或插件能够查看、理解、解析、搜索和使用数据,以及从资产本身获得所收集的数据。该系统本质上提供前端接口,用于访问来自和关于各种资产(例如,工厂资产)的信息和数据,以使得不同应用(其可以由不同供应商开发)能够以协调和无缝的方式获得和使用在特定工厂内或其它资产环境内的资产数据。该配置还可以限制或减少系统中的整体通信,因为在许多实例中插件应用不需要为已经存储于平台模型中的信息(例如,资产定义信息、资产属性信息、资产行为信息、关系等)而轮询资产。软件平台另外使得各种应用能够添加或扩展模型,以提供额外的新资产、或关于在资产环境中的资产或从其可用的新类型的信息

此外,如上所述,基于类的对象平台结构的基本模型定义(例如,在单个资产环境中扩展之前)可以在一些或所有使用中相同,并因此可以跨不同资产环境、工厂等是一致的。该特征导致在例如被共同拥有者、操作员或监视实体或甚至被不同拥有者、操作员或监视实体所拥有、操作或监视的不同工厂的一致性使用。例如,类型对象模型可以是基本的非扩展模型或者其可以包括由特定用户定义的附加对象、关系等,其可以是跨多个安装统一(即,相同的)。因此,虽然类对象的特定实例在每个安装或在不同安装内可以是相同的,但模型仍是相同的,因为具有相同层级结构和命名约定。例如,在第一消费者站点处的电动机类可以是与在第二消费者站点处使用的模型中存在的电动机类相同。因此,跨多个不同资产环境,至少在预扩展的状态相同的模型结构(包括层级和类对象命名约定)可以是相同的。然而,因为模型是可扩展的,可以在不同站点处基于在每个站点的合适位置处的扩展器看到在基本(或预扩展)模型中的变化。但是,在第一资产环境与第二资产环境在适当位置具有完全相同的扩展器的情况下,在这些站点处的模型实际上相同。

可以通过计算机直接访问或与平台基础设施间接接口模型数据和实际资产和其它数据。平台基础设施可以与其它网络(包括互联网)接口连接。因此,可以在移动设备(例如,iphone或android设备)或其它工作站或计算机设备上接收和显示数据或信息。可以以任何方式显示并操纵数据,包括经由图像、视频、语音和其它声记录,以允许通过接收应用或设备来使用和操纵该数据。当然,可以以任何其它期望的方式使用和查看数据。

为了图示和描述,已经呈现了本发明的优选实施例的前述描述。其并不打算详尽或将本发明限制到所公开的精确形式。根据上述教导,各种修改或变型是可能的。选择并描述实施例,以便提供本发明原理及其实际应用的最佳说明,并由此使得本领域普通技术人员能够利用各个实施例和结合各种修改的发明作为适于构思出的特定使用。所有这些修改和变型在根据它们公平地、合理地和公正地授予的宽度解释时落入如所附权利要求书确定的本发明的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1