模块化对象的公布和发现的制作方法

文档序号:6580761阅读:215来源:国知局
专利名称:模块化对象的公布和发现的制作方法
技术领域
本说明书总体涉及工业控制配置的操作,并且尤其涉及结合主机使用模块化对象。
背景技术
工业控制环境典型地可以涉及执行各种自动化机械和/或电子功能的复杂机械 式、电子式、机电式和/或机器人式机器。这样的机器可以包括可以提供特定物理输出的工 业电动机、泵、输送机、自动升降梯、钻孔机、冷却系统等。典型地,工业环境利用一个或更多 控制设备来确定例如何时激活或去激活这样的机器以及适当的激活水平(例如,提供给可 变输入电动机的电流量)。此外,控制设备与可以确定适当时间、程度、方式等的逻辑程序代 码相关联,以便基于各种可确定的情况(例如,另一个设备的输出、光学传感器的读数、诸 如设备中电流水平的电子测量、设备的转数或运动等)来操作这样的机器。
技术员可以联系该机器,以便提供不同类型的功能。起初,一组个体(individual) 可以在逻辑上和物理上构建使用该机器的工业控制过程。可以进行诊断测试,以确保机器 正确地被放置并且按照预期来操作(例如,物理管件基本没有泄漏地连接到一起)。 一旦操 作,监控者可以指定机器应该如何操作,并且维护工人可以执行修理和预防性任务,以确保 适当的功能持续(例如,为机械移动部分上油)。

发明内容
下文公开了说明书的简化总结,以提供对说明书某些方面的基本理解。该总结不 是说明书的宽泛概括。其既不尝试确立说明书的关键的或重要的元素,也不尝试描述说明 书的范围。其唯一目的是以简化的方式公开说明书的某些概念,作为后文公开的更详细描 述的序言。 在工业控制配置中,可以存在多个模块化对象用于执行任务。为了帮助执行这些 任务,模块化对象可以通过接口连接(interface)至少一个主机,使得模块化对象能够使 用主机的能力。为了便于适当地操作,可以将模块化对象与具有补足模块化对象操作需求 的能力的主机匹配并绑定(bind)。可以收集与多个主机相关的元数据,包括涉及主机能力 的元数据。可以进行校验以确定是否应当发生匹配,并且如果应当发生匹配,则可以将模块 化对象与主机绑定。 为了改进匹配的操作,可以使用目录来公布能力和/或操作需求(requirement) 信息。在模块化对象或主机进入配置或被修改之后,可以发生分析,以确定是否有改变。如 果发生改变,则可以将能力或需求信息放置在目录里。资源管理者可以使用该目录来生成 绑定,或者主机和/或模块化对象可以主动地相互匹配。此外,可以使用预订服务来通信类 似的信息。 下文的描述和附图阐述说明书的某些说明性方面。但是,这些方面表示仅仅按照 各种方式中的几种方式可以应用说明书的原理。在结合图考虑时,根据下文说明书的详细
3描述,说明书的其它优点和新颖特征会变得易明白。


图1示出根据本说明书一个方面的对象和主机的表示性配置。
图2示出根据本说明书一个方面的表示性对象匹配系统。 图3示出根据本说明书一个方面的将主机与至少一个对象匹配或者将对象与至 少一个主机匹配的表示。 图13示出根据本说明书一个方面的用于校验主机是否满足操作需求的表示性方 法体系(methodology)。
------ 图14示出根据本说明书一个方面的表示性目录管理方法体系。
图15示出根据本说明书一个方面的表示性自动化主机或对象评估方法体系。 图16示出根据本说明书一个方面的用于模块化对象的表示性类图。 图17示出根据本说明书一个方面的用于模块化对象的表示性类图。 图18示出根据本说明书一个方面的与控制器和主机绑定的实例的表示性可视化
图19示出根据本说明书一个方面的用于为绑定模块化对象组件的过程建立协议
的表示性可视化c
图20示出根据本说明书一个方面的涉及支持接口的多个模块化对象实施的表示
图21示出根据本说明书一个方面的与逻辑的操作需求有关的表示性可视化。
图22示出根据本说明书一个方面的公开信息系统逻辑的表示性可视化。
图23示出根据本说明书一个方面的用于模块化对象的逻辑操作需求的表示性可
图24示出根据本说明书一个方面的计算环境的示意性框图的示例。 图25示出可操作用于执行所公开的架构的计算机的框图的示例。
具体实施例方式
现在参照各图来描述所要求保护的主题内容,图中相同参考数字始终用于指示相 同元素。在下文的描述中,为了解释的目的,阐明多个特定细节以提供对所要求保护的主题 内容的彻底理解。但是,显然的是,所要求保护的主题内容可以不借助这些特定细节实施。
4在其它情况下,以框图形式示出公知的结构和设备,以便于描述所要求保护的主题内容。
如在本申请中所使用的,术语"组件"、"模块"、"对象"、"系统"、"接口"等通常意欲 指代与计算机相关的实体(或者是硬件、硬件和软件的组合、软件,或者是执行中的软件)。 例如,组件可以是但不限于在处理器上运行的进程、处理器、对象、可执行的、执行的线程、 程序和/或计算机。举例来说,在控制器上运行的应用和控制器都可以是组件。在进程和/ 或执行的线程内可以存在一个或更多组件,并且可以将组件本地化在一个计算机上和/或
分布于两个或更多计算机之间。如另一个示例,接口可以包括i/o组件以及相关联的处理
器、应用和/或API组件。 现在参照图I,公开了示例系统IOO(例如,工业控制配置的一部分)。对象102 (例 如,模块化对象、封装的对象、控制对象等)可以在工业控制配置上结合多个主机104存在。 涉及对象102的功能可以与软件中的插件方案相似。对象102可以发展为不同层(例如, 成为自动开发的或由使用者开发的组织层次),以形成面向对象的控制系统,并且可以存在 各种与对象102相关联的属性(例如,组织的较高等级继承较低等级对象的特性)。此外, 对象102可以具有能够用于不同层次等级的不同特征。 使用者可以生成这些对象102并随后以表示过程的方式连接它们,或者可以通过 自动化过程生成对象102。对象102可以包括能够与其它实体联系(engagement)并帮助执 行功能的不同部分。接口 106(例如,接口组件)可以定义向与对象102联系的至少一个客 户端应用所供应的外部行为。通过接口 106,对象102可以显露(e邓ose)数据、显露可以进 行的操作、显露对其它对象的依从性(d印endency)等。要认识到的是,对象可以支持多于 一个接口 (例如,为了与多于一个客户端应用联系),和/或多个逻辑部分可以为与多于一 个主机联系提供便利。 对象102可以包括可以位于企业系统中、单独位置等的逻辑108(例如,控制器逻 辑、用于人机接口的支持等)。要认识到的是,对象可以支持多于一个逻辑组件(例如,为了 与多于一个主机104联系)。外部参考(reference) 110 (例如,参考组件)可以保留与对象 (例如,对象102之一 )相关的元数据。外部参考可以包括描述对象102的依从性、指示支 持逻辑108所需的连接(例如,操作需求)等的信息。尽管公开了多个外部参考,但是可以 借助具有一个外部参考的参考组件实施对象102。要认识到的是,对象102可以包括诸如 局部数据、可视化元素等的其它部分。相反地,对象102在本质上可以比所公开的更受限制 (例如,对象只包括逻辑)。可以根据为了不同目的而对不同设备应用对象102的初始装备 制造者(例如,通用包装者)的意愿,生成和/或开发这些对象102。对对象102的开发可 以使对象能够与多个用户和/或多个计划联系。这不同于传统实践,在传统实践中,对象被 开发成与单一用户的单一工厂联系。对这些类型对象的使用违反了工业中的传统观点,因 为通常期望的是使对象专门为用户而制造,而非可以重复使用的通用且可定制的对象。
现在参照图2,公开了示例系统200用于使对象102与主机104匹配。对象102可 以提供外部接口 106、逻辑108或者参考110,以便于操作。此外,对象102可包括为了按照 期望的方式操作而应该被满足的若干操作需求。为了满足这些操作需求,可以将对象102 与具有至少一项能力和/或满足补足对象102的操作需求所需的(或强制的)能力的主机 104链接。 对象的操作需求通常是为了使对象102以特定方式起作用而应当被使用的能力。根据一个实施例,为了使对象102操作,操作需求必须被满足,但是,要认识到的是,在许多 情境中情况不是这样,并且至少一项操作需求是所期望的、优先的等等。示例操作需求(例 如,可以由主机能力满足)可以包括分辨率(resolution)存储量大小、版本、语言、时机等。
可以收集对象102的关于操作需要(例如,操作需求)的信息。示例信息可以包 括操作需要是什么、需求的重要程度如何、需求是否是关键的(例如,对于操作是绝对必要 的)等。此外,可以收集关于什么主机是系统200的一部分、那些主机的能力、能力是否由 另一个对象使用等的信息。系统200可以使用评估组件202,其评价至少一个主机的至少一 项能力和至少一个工业模块化对象的至少一项接待(hosting)需求。 集合(group)组件204基于可以由评估组件202所确定的、由匹配的主机的能力 满足的匹配的对象的接待需求,来匹配主机104和工业模块化对象(例如,对象102)。匹配 主机和对象可以包括生成软件绑定,其中对象可以利用主机104的能力。在匹配之前,可以 关于是否应当发生绑定向对象和/或主机104提出请求。 在说明性实例中,对象102可以便于公开在工业控制输送机过程中向使用者的报 警。借助对象102,利用以绿色表示的正常功能和以红色示出的报警功能(例如,一部分出 错)来示出该过程的物理表示。为了主机104适当地公开该过程,主机104应该具有能够 示出红色和绿色的能力。根据一个实施例,可以是必要的能力(例如,示出红色和绿色)和 期望的能力(例如,显示彩色)。评估组件202可以确定主机104的能力和操作需求。如果 主机104具有公开绿色和红色的能力,则集合组件204可以将主机104与对象102匹配。
现在参照图3,公开了涉及将对象与主机104匹配的示例系统300。系统300可以 使用评估组件202和集合组件204来生成主机与对象之间的匹配。处理组件302可以用于 向系统300提供功能。根据一个实施例,如果存在一个匹配主机,则将每个工业模块化对象 与一个主机匹配,或者如果存在多于两个的匹配主机,则将每个工业模块化对象与满足工 业模块化对象的接待需求的所有主机匹配。例如,如果存在匹配一个对象的一个主机,则可 以发生绑定。但是,如果存在满足该对象的需求的多个主机,则该对象可以与每个主机绑 定,并确定在运行时刻使用哪个主机。此外,如果存在具有需求的多个对象并且主机的数量 较少(诸如一个主机),则多个对象可以与一主机绑定,并且如果多个对象想要同时利用能 力,则该主机(或第三方单元)可以调节哪个对象取得优先。 联系组件304可以用于在有一个匹配时,向使用者呈递匹配接待需求的主机,或 者在有两个或更多匹配时,呈递匹配接待需求的至少一部分主机(例如,所有主机)。例如, 如果有匹配一个对象的一个主机,则可以通知使用者该匹配。但是,如果有多个匹配主机, 则可以通知使用者各匹配并且可以要求使用者提供选择结果,该选择结果用于生成对象与 所选主机之间的绑定。根据一个实施例,即使多个主机可用,也向使用者呈递一个主机(例 如,为了确认的目的),其中基于至少一项标准(例如,操作最快的主机)选择被呈递的主机 用于呈递。 系统300可以使用可视化组件306,以使使用者能够通过接口与主机和/或对象 相连。便利化组件308可以使使用者能够选择至少一个主机来与工业模块化对象相关联。 从而通过使用者的指示进行集合组件204的匹配。但是,集合组件204可以自动起作用和 /或忽略使用者指示。为了便于更加合作的体验(e邓erience),系统300可以使用优化组 件310,其基于主机、工业模块化对象、工业控制配置或其组合的估计性能,向使用者推荐用于与工业模块化对象结合的主机。此外,该推荐可以基于能力(例如,显示表现能力、指示 设定能力、所安装的库支持等)以及其它标准。可以通过实施至少一项人工智能技术、通过 使用规则设定(例如,推荐具有最快预期或历史性能的主机/对象组合)等做出推荐。
实施组件312可以进行所选择的结合。此外,失败组件314可以在没有发生匹配 时,通过联系组件304通知使用者没有与工业模块化对象的匹配。此外,失败组件314可以 在有匹配却不期望匹配发生时(例如,使用匹配会使性能下降到期望水平以下)发送通知。
现在参照图4,公开了示例系统400用于管理与使用对象有关的控制器。执行组件 402可以用于确定控制对于接待多个组件可以如何起作用。根据一个实施例,系统400的各 组件可以使用处理组件302。执行组件402可以收集任务要被执行的通知,并且任务评估 组件404可以详查任务,以确定相关对象的数量、对象如何相互关联等。任务评估组件404 可以作为用于评估任务的装置操作,以确定与该任务相关的对象的数量。控制器分析组件 406可以评估控制器,以确定控制器特性。示例特性可以包括存储量大小、处理速度等,判 定控制器对于任务对象可以如何起作用时可以使用这些特性。控制器分析组件406可以作 为用于分析控制器的装置操作,以确定控制器可以掌握多少对象。控制器确定组件408可 以使用组件404和组件406的结果,以确定是否应该使用多于一个的控制器来掌握任务对 象。这可以基于控制器是否能够掌握对象以及是否期望控制器掌握对象(例如,控制器能 做到,但是性能速度会显著降低)的判定。从而,在判定控制器是否可以掌握对象之外,控 制器确定组件408可以做出控制器掌握一般模块化对象的适宜程度如何和/或控制器掌握 所讨论的特定任务对象的适宜程度如何的判定。控制器确定组件408可以实施为这样一种 装置用于基于评估结果和分析结果来确定控制器是否可以掌握任务对象。根据一个实施 例,在下载任务之前做出确定,其中任务是应用。 如果确定了应该使用多于一个的控制器,则布局组件410可以用于管理多个单 元,以适应任务需要。从而,布局组件410可以便于使用布局(例如,布局是用来掌握与一 个任务相关联的对象的两个或更多控制器的组织)。控制器分析组件406可以考虑任务对 象来分析其它控制器,并且单元识别组件412可以识别能够掌握对象任务的控制器。这可 以是一般识别(例如,有一个不能由控制器掌握的对象,于是定位另一个可以掌握一个对 象的控制器)以及特定识别(例如,找到最善于掌握未被掌握的任务对象的控制器)。如 果确定控制器不能掌握任务对象,则单元识别组件412可以作为用于识别用来帮助控制器 掌握任务对象的至少一个单元的装置起作用。操作开发组件414可以确定应该如何构建布 局、在确定如何构建布局时应该使用什么标准、就构建如何被确定做出评述并调整等。操作 开发组件414可以作为这样一种装置起作用用于开发用于构建的装置,使得布局尝试使 任务以改进的性能操作。布局构建组件416可以根据通过操作开发组件414所规定的方式 建造布局。如果确定控制器不能掌握任务对象,则布局构建组件416可以作为用于构建布 局的装置起作用,以补偿控制器的缺陷,该布局包括至少一个被识别单元。
测试管理组件418可以便于评估布局,以确定布局是否正确地起作用、按预期起 作用(例如,布局组件410预测布局如何操作)等。布局测试组件420可以关于布局进行 测试,诸如运行诊断测试、运行模拟的或真实世界的事件、观察实施之后的操作以了解错误 等。布局测试组件420可以作为用于测试布局的装置操作,以确定是否有错误。如果错误 被确定,则错误解决组件422可以尝试改正错误。根据一个实施例,可以关于错误解决组件422是否应该操作(例如,有小错误,但是不值得花费资源纠正错误)做出判定。错误解决 组件422可以作为用于解决识别的错误的装置实施。此外,如果控制器不能操纵至少一部 分任务对象,则使用者通知组件424可以向个人电子设备发送错误已出现的消息。该消息 可以恳求使用者就如何进行做出回答,提供便于问题改正的交互式接口 ,提供推荐的替换 物(例如,请求使用者同意使用布局组件410)等。如果确定控制器不能掌握任务对象,使 用者通知组件可以作为用于通知使用者控制器不能操纵对象的装置起作用。
现在参照图5,公开了示例系统500用于公开目录502中主机104的能力和/或 对象操作需求。维持主机能力的目录502是有利的在对象要使用主机来操作时,对目录的 快速校验可以允许对象找到合适的主机。这可以比在每次对象要操作时单独地分析主机更 快。相似地,公开目录502中对象的操作需求和/或未满足的操作需求是有利的。如果在 目录中列有未满足的操作需求,在新主机进入系统500和/或主机的能力被修改时,则主机 104可以校验满足需求的能力。此外,管理器组件(例如,确定组件504的部分)可以起作 用,使得主机和需求在工业控制配置中以有效率的方式配对。能够通过目录502 (例如集中 式目录,分布式目录)快速查明需求和能力,这可以允许管理器组件持续更新绑定。
为了了解信息以便成员进入目录中,确定组件504可以识别主机104的至少一个 能力。此外,确定组件504可以识别对象的至少一个操作需求。可以运行校验,以确定是否 经识别的能力或需求已经在目录502中和/或目录中所表示的是否与所识别的不同。如果 状态和目录中的东西没有改变,则该确定可以停止来自其它组件的进一步操作,以节约资 源。 公开组件506可以公布至少一项经识别的能力的至少一部分,使得对象以及其它 工业控制配置实体可以访问能力。相反地,公开组件506可以公布操作需求信息以及目录 中的其它数据。信息的公布可以包括在目录502中放置新信息以及替换过期信息。
在替换实施例中,可以使用预订服务。在对信息做出改变时(例如,有新主机、主 机被修改、对象离开配置等),可以把该改变自动通知到诸如对象的实体。这可以是所有改 变,也可以通过特定改变来进行(例如,在修改对象所绑定的主机时,通知该对象)。可以实 施预订服务,以针对改变校验目录并且向实体公开所述改变。 现在参照图6,公开了示例系统600用于使用目录来通信与工业控制配置相关的 信息。尽管公开了用于公布主机能力的特定功能,但是要认识到的是,各个方面可以涉及其 它信息的公布,包括对象操作需求的公布。评价组件602可以评价至少一项经识别的能力, 评价的结果可以用于确定经识别的能力是否应该公布。可以使用确定组件504和公开组件 506来方便目录的成员。此外,处理组件302可以向系统500提供附加功能。可以使用预订 组件604为先前了解公布的实体来更新改变了的能力(例如,根据本文中所公开的方面执 行预订任务)。 可以将敏感信息放置进目录中,诸如所有权信息,并且可以使用访问组件606调 节对目录信息的访问。可以使用访问分析组件608来评估请求访问至少一项经识别的能力 和/或请求把信息放置在目录中的实体。可以进行该评估来查明为何做出请求、提出请求 的使用者、与请求相关的背景信息(例如,在相当短时间内做出异常多的请求)等。可以使 用访问管理组件610确定是否允许实体查看经识别的能力。该确定可以基于访问权、(例 如,请求者、配置等的)历史信息、由使用者提供的通过许可、能力的安全水平、对象的安全
8水平或其组合,以及基于其它标准。访问调节器组件612在确定实体被允许时可以使实体 能够查看公布(例如,完全的目录访问、有限的访问等),或者在确定实体不被允许时拒绝 对公布的访问。除了查看公布之外,访问调节器组件612可以使信息能够被复制、转发等。
有可能的是,应该公布某些信息,同时应该保护其它信息(例如,不公布)。例如, 应该公布主机的能力,而同时应该不公布其它能力和主机位置。基于评估的结果,可以使用 区分组件614确定至少一项应该公布的能力和至少一项不应该公布的能力,公开组件公布 被确定要公布的能力并且屏蔽被确定不被公布的能力。 现在参照图7,公开了示例系统700用于响应为了解工业控制配置实体(例如,主 机、对象)和这些实体的特性(例如,能力、操作需求等)而做出的请求。实体评估组件702 可以识别了解信息的请求,收集与请求实体相关的元数据,并且评估所收集的元数据。实体 评估组件702可以作为用于评估请求了解主机的至少一项能力或对象的至少一项操作需 求的实体的装置起作用。基于所评估的元数据,实体确定组件704可以确定是否应该准许 访问(例如,完全访问、受限制的访问等),是否应该拒绝访问,是否应该恳求使用者同意请 求等。实体确定组件704可以作为用于确定是否允许实体查看主机的至少一项能力或对象 的至少一项操作需求的装置起作用。根据一个实施例,用于确定的装置基于实体的访问权、 能力的安全水平、对象的安全水平或其组合做出确定。可以利用处理组件302向系统700 提供附加功能。 检查组件706可以便于允许实体查看信息或拒绝请求。使能组件708可以允许访 问(例如,提供访问权、提供口令、移除限制等)。如果确定实体被允许,使能组件708可以 作为使实体能够了解主机的至少一项能力或对象的至少一项操作需求的装置起作用。但 是,如果不应该有访问,则拒绝组件710可以操作。如果确定实体不被允许,拒绝组件710 可以作为用于拒绝访问主机的至少一项能力或对象的至少一项操作需求的装置实施。拒绝 可以是彻底的以及持续的(例如,起初拒绝,直到发生诸如提供口令的动作为止)。
可以使用依从性组件712来管理对象的依从性。客户端应用可以与该对象联系, 并且行为定义组件714可以定义对象的行为。行为定义组件714可以作为用于定义向至少 一个与对象联系的客户端应用提出的外部行为的装置起作用。元数据保持组件716可以存 储与对象相关的信息。元数据保持组件716可以作为用于保持与对象的至少一个依从性相 关的元数据的装置操作。 现在参照图8,公开了示例系统800用于在工业控制配置中管理资源。对象102可 以是系统800的一部分,其中对象通常使用接口 106、逻辑108、外部参考110或其组合。为 了便于操作,对象102可以与主机104绑定,使得对象102利用主机的至少一项能力。
可以发生匹配,其中能力被分配给对象。但是,在更复杂的环境中,对于绑定对象 和主机具有更大的管理存在是会有好处的。例如,可能有具有相对少见能力(例如,相对 大的存储量)的主机,并且许多对象可能具有大存储量的操作需求。如果所有对象与该主 机绑定,主机会以低速度运行,主机会由于不能操纵所有对象而出故障,等等。因此,可以利 用包罗万象的(overarching)管理来确定什么对象可以与主机绑定、对象何时可以使用主 机、对象的优先级顺序等。 资源管理组件802可以根据(例如,对于任何操作都需求的、对于特定操作方式所 需求的、以最有效速度运行所需求的、等等的)方式来确定对象需求什么资源来操作。资源
9管理组件802可以收集关于可用的主机和那些主机的能力的信息。这可以针对相对多的对 象进行,并且可以进行关于工业控制配置是否具有满足对象需求的足够资源(例如,通过 主机所提供的)的校验。 组织组件804可以使对象与主机配对,以尝试满足资源需求。基于由至少一项人 工智能技术提供便利的预测、通过来自使用者的指定或者其组合,以及通过其它实施,配对 可以随机发生。为了改进操作,组织组件804可以删除在对象和主机之间的绑定,并且生成 新的或不同的配对,以满足各种资源需求。在一个示例中,初始对象可以与具有高于所需求 的能力的主机绑定。如果需求较高的能力的第二对象应该被绑定,则组织组件804可以为 初始对象删除与所述主机的绑定,做出与另一个能力较低的主机的新绑定,并且为第二对 象和所述有能力的主机生成新绑定。 现在参照图9,公开了示例系统900,用于管理与工业控制配置有关(尤其与对象 和/或主机有关)的资源。系统900可以使用资源管理组件802和组织组件804,以便基 于能力和操作需求把主机和对象有机地集合起来。系统900可以使用处理组件302改进操 作。 测试组件902可以确定对于对象是否有资源需求未满足,并且尝试改正缺陷。比 较器组件904可以识别与根据所述方式操作的对象有关的主机的至少一个资源缺陷。例 如,为了以所期望的方式操作,对象所具有的操作需求可以是主机能够生成彩色图像。如果 没有具有彩色能力的主机和/或主机没有设定为公开彩色图像,则有缺陷。比较器组件904 可以尝试改正缺陷(例如,将主机的设定从非彩色改变为彩色)。如果确定满足至少一个资 源需求,则可以使用关联组件906自动将对象与主机匹配。 但是,有可能测试组件902不能消除缺陷,从而对象继续具有未满足的操作需求。 因此,可以使用延续组件908来监视配置,以确定是否发生具有满足需求的潜力的改变(例 如,添加新主机)。如果的确发生改变,则延续组件908可以指示组织组件804更换绑定。
相反地,延续组件908可以为进入配置的新对象进行监视。可以利用发现组件910 确定有新添加到配置的模块化对象,资源管理组件802可以确定新添加的模块化对象的资 源需求。延续组件908可以利用平衡组件912来基于新添加的模块化对象的操作需求而确 定是否应该破坏由关联组件做出的匹配。 一旦被破坏,主机可以重新分配给新添加的对象。
现在参照图10,公开了示例系统1000用于尝试满足对象的操作需求。图2的集合 组件204可以尝试用于集合对象和一个或更多主机,以满足操作需求(但是,有可能不能满 足所有操作需求)。可以使用校验组件1002确定在集合组件的操作之后是否有未满足的 需求。校验组件1002可以作为用于确定配置的模块化对象具有未被满足的操作需求的装 置起作用。 一旦确定需求未满足,则需要识别组件1004可以查明未满足的需求。需要识别 组件1004可以作为用于确定未满足的操作需求的装置起作用。识别尝试组件1006可以搜 索新添加的主机和/或未发现的主机,以尝试为对象找到满足需求的匹配。识别尝试组件 1006可以作为用于尝试识别可以满足未满足的操作需求的主机的装置起作用。
通知组件1008可以尝试使用通知来便于满足操作需求。通知生成组件1010可以 产生由系统使用的、需求未被满足的消息。服务器(例如,集中式的、分布式的)可以使用 该通知来尝试在主机进入配置后快速解决缺陷。如果用于尝试识别的装置没有找到合适的 主机,则通知生成组件1010可以作为用于生成主机并非所期望的通知的装置操作,该通知便于新进入或修改的主机鉴于未被满足的操作需求而被评估。有可能多个对象具有至少一 项未满足的操作需求,有时甚至是相同的需求。因此,通知优先级组件1012可以为各通知 设定优先级,以确保首先及时解决最重要的需求。通知优先级组件1012可以实施为基于具 有未满足的等效需求的多于一个的模块化对象来为各通知设定优先级的装置,使得与较高 优先级相关联的模块化对象取得对可用能力的首先访问。 可以做出主机包括所需求的能力的判定,并且匹配组件1014(例如,集合组件)可 以自动将主机和对象匹配到一起。匹配组件1014可以作为用于自动将模块化对象与被发 现满足由用于尝试识别的装置所识别的操作需求的主机匹配的装置操作。核实组件1016 可以就是否发生成功的匹配进行校验。如果未发生成功的匹配,则匹配组件1014可以尝试 再次进行匹配或者尝试生成新匹配。核实组件1016可以实施为用于核实新添加的主机的 装置,在核实新添加的主机之后,用于尝试识别的装置再次操作。 现在参照图ll,公开了示例系统IIOO用于表示在主机104和对象102之间的匹 配。对象102可以具有操作需求1102,例如,需求可以是具有高分辨率大小和大存储量的主 机。主机104可以具有不同的可以由对象102利用的能力1104。可以生成与主机的绑定 (用虚线表示),以尝试把操作需求与适当的能力匹配,或者仅生成一绑定(在该绑定变得 适当的情况下)。如果多于一个主机匹配需求,则可以生成多个绑定,或者可以发生选择并 使用一个绑定。如果没有匹配,则可以产生错误消息,或者可以发生持续观察,以确定是主 机进入还是主机被修改来满足操作需求。 在示例操作中,所期望的是生成最小数量的绑定。因此,对象102与具有高分辨率 大小和大存储量的能力1104的主机104绑定。在替换实施例中,因为多个主机满足至少一 项需求,所以并非变得过度依赖一个主机104是会有好处的。因此,可以与匹配至少一项操 作需求1102的所有主机生成绑定。 现在参照图12,公开了示例处理组件302用于向本文中公开的组件和方面提供各 种功能。为了便于操作,处理组件302可以使用可以与其它设备联系的通信组件1202传送 信息,诸如发送元数据请求、从辅助源接收元数据等。可以无线地、以固定布线方式、利用安 全技术(例如,加密)等进行操作。此外,元数据传送可以是主动的(例如,查询/响应)或 者被动的(例如,公共通信信号的监视)。此外,通信组件1202可以使用各种保护性特征, 诸如对所收集的元数据进行病毒扫描并且阻挡对于病毒呈阳性(positive)的元数据。
获得组件1204可以聚集来自各个位置的信息(例如,主机能力、操作需求等),包 括收集对象离开配置的通知、确定主机是否与另一个对象绑定等。可以实施过滤,使得只 收集可能相关的信息、先聚集来源更可靠的信息、收集有限数量的数据(例如,基于存储大 小)以及其他类型的过滤。 可以使用人工智能组件1206进行各种确定和/或推理。要认识到的是,可以使用 人工智能技术来实施在本说明书中公开的确定和推理。根据本文描述的实施各种自动化方 面,人工智能组件1206可以利用与在多个存储单元上动态地存储信息有关的、用于从数据 了解并随后做出推理和/或做出确定的若干方法体系之一 (例如,隐马尔科夫模型(HMM) 及相关原型依从性模型、诸如贝叶斯网络(例如,由使用贝叶斯模型分数或近似值的结构 搜索所生成)的更通用的概率图形模型、诸如支持向量机(SVM)的线性分类器、非线性分类 器、诸如称为"神经网络"方法体系的方法、模糊逻辑方法体系以及其它进行数据融合的方案等)。此外,人工智能组件1206也可以包括用于获取逻辑关系的方法,诸如定理证明程序 或更启发式的基于规则的专家系统。人工智能组件1206可以由外部可插入组件表示,某些 情况下由无联系的(第三)方设计。 可以在存储装置1208上保存诸如所收集的元数据、组件操作指示(例如,通信组 件1202)、源位置、组件本身等的信息的不同片段。存储装置1208可以以若干不同配置来设 置,包括作为随机访问存储器、带后备电池的存储器、硬盘、磁带等。可以在存储装置1208 上实施各种特征,诸如压縮和自动备份(例如,使用RAID配置)。此外,存储装置1208可以 作为能够操作地耦合到处理器的存储器操作。存储装置1208可以作为能够在其上具体化 计算机程序的计算机可读介质起作用。 例如,计算机程序可以包括用于评估被指定用于与工业控制配置结合操作的应用 的程序代码。此外,计算机程序可以包括用于尝试基于评估结果来识别可以在应用上操作 的主机的程序代码。在另一个示例中,计算机程序可以包括用于评估主机以确定至少一项 主机能力的程序代码,以及用于展示至少一项确定的主机能力(例如,向使用者展示、向实 体展示、向目录展示等)的程序代码。 此外,计算机程序可以包括用于评估需求计算资源来执行的对象实例(instance) 片段的程序代码,以及用于基于分析结果将至少一部分片段绑定到计算资源的程序代码。 计算机程序也可以包括用于使使用者能够通过使用逻辑视图(logic view)来从物理控制 或信息系统中分离绑定的程序代码,以及用于向多个物理系统部署逻辑视图的程序代码。
现在参考图13,公开了示例方法1300用于确定主机是否满足对象的操作需求。可 以在动作1302处收集与对象的至少一个操作需求相关的元数据。示例元数据可以包括操 作需求是什么、操作需求是否关键等。操作需求可以是必需的(例如,不满足要求则不发生 操作)、关键的(例如,不满足则有发生失败的可能)、优选的(例如,可期望满足要求)、可 选的(例如,由使用者自由决定的)或者其组合(例如,在一方面是关键的,在另一方面是 优选的)。 可以评估元数据,并且在动作1304处可以定位具有满足操作需求的潜能的主机。 因此,动作1304可以起到这样的作用,即定位至少一个满足未被满足的操作需求并且可以 与被比主机结合使用的主机。响应于对主机的广泛请求,可以从配置目录(例如,分布式目 录)获得主机的位置,也可以通过其他方式获得主机的位置。 可以在事件1306处评估经定位的主机,以确定特性元数据。可以在动作1308处 在至少一个主机和对象之间进行比较。动作1308可以实施为比较主机的至少一项能力与 工业模块化对象的至少一个操作需求(例如,比较关于对象所收集的元数据和从评估至少 一个主机而知道的元数据)。可以执行检查1310,其确定主机是否满足至少一个操作需求。 如果存在匹配,那么可以执行动作1312,如果确定主机满足操作需求,动作1312可以包括 将主机链接到工业模块化对象。通过执行绑定,可以确定链接的背景情况(例如,确定为什 么存在)。利用动作1312,可以基于链接的背景情况来修改与工业模块化对象相关联的逻 辑。例如,修改逻辑可以包括以工业模块化对象合计数据或者转换逻辑。例如,当绑定到培 训或者测试系统时,可以用模拟或者单元测试"脚本"来合计逻辑,以模拟系统的硬件或者 软件部分。另外,对于软件对象,系统可以转换对象的逻辑,以更好地适应主机能力(例如, 语言从C#转换成Java,反之亦然)。
12
然而,如果不存在匹配,那么如果确定主机不满足操作需求,则可以在动作1314 处发现未满足的操作需求是什么。例如,这可以通过在对象上执行直接询问来完成。可以 执行搜索,并且可以在动作1316处基于所述搜索而定位令人满意的主机。因此,不止一个 主机可以用来满足对象的操作需求。在动作1318处,可以构建一组可以用来满足操作需求 的主机,所述一组主机包括被比主机和至少一个经定位的主机。如果在动作1316处确定没 有可以满足的主机,那么可以做出是否可以修改主机来匹配操作需求的判定,并且如果是 肯定的结果,那么如果确定主机不满足要求,则可以修改主机的能力,以满足操作需求。
现在参考图14,公开了示例方法1400用于管理目录,所述目录可以包括主机能力 信息、对象操作需求信息等。在事件1402处,可以分析对象来确定对象的操作需求。可以 针对需求对对象进行直接请求,可以执行操作代码分析等。可以在动作1404处收集与操作 需求的内容相关的元数据(例如,关于网络安全、与操作需求相关联的安全等级等的元数 据)。 可以执行检查1406,以基于分析结果确定是否应当公布对象的操作需求。该确定 可以基于被预期访问公布的实体的访问权利、通过实体进行的预期信息复制、公布被妥协 的可能或者其组合,也可以基于其他因素。如果确定公布不应发生,那么方法1400可以继 续到动作1408,用于如果确定公布不应发生时屏蔽运行需求。该公布可以包括在目录中增 加信息、允许信息为可发现的等。 如果公布应该发生,那么可以执行检查1410,以确定如果公布应该发生被确定时 是否应该对公布进行限制。如果限制应该发生,则可以确定限制方式(例如,从背景信息、 使用者指示等推断),并且限制可以发生在动作1412处。然后在动作1414处可以发生带有 限制地公布操作需求。根据一个实施例,公布被限制,以便在实体可以访问公布的操作需求 之前存在授权检查。 然而,检查1410可以确定应当不对公布进行限制是有可能的。因此,方法1400可 以从检查1410移动到动作1414,用于如果确定公布应该发生的情况下公布操作需求。公布 可以实施为使得公布是至目录的,并且一旦公布了,授权的实体就可以访问公布了的信息。
现在参考图15,公开了尤其在进入或者重新进入工业控制配置之后、用于自动主 机和/或对象评估的示例方法1500。可以收集(例如,通过被动执行)与配置的变化相关 的元数据。可以分析元数据并且可以在动作1502处确定主机进入工业控制配置。在主机进 入配置之后,可以在事件1504处自动评估主机,以确定主机的至少一个能力。模块化对象 可以在动作1506处被定位并且在动作1508处被评估。基于所述评估,可以通过动作1508 访问模块化对象的至少一个操作需求。可以实施检查1510来确定是否需求由另一主机满 足。可能多个主机匹配操作需求,并且总体管理可以用来适当地放置对象和主机。在事件 1512处,可以动态分配对象到主机(例如,被分配以便最优化操作),其中一个主机与对象 相关联以满足操作需求。可以关联不止一个主机,诸如一个主机用作主要的,和另一主机用 作次要的(其是休眠的,除非主要的发生故障)。分配可以是初次分配,也可以是再分配,可 以通过算法(例如,基于负载平衡算法的人工智能)的使用来执行分配。
动作1514可以确定主机的能力是否满足模块化对象的操作需求。检查1516可以 起到确定是否另一主机满足模块化对象的操作需求的作用。根据一个实施例,确定主机的 能力是否满足模块化对象的操作需求发生在另一主机满足操作需求的否定确定之后。如果存在另一匹配,那么如果确定不止一个主机满足操作需求,则可以在动作1518处选择一 个主机来满足操作需求。另外,动作1518可以表示如果确定不止一个主机满足操作需求, 则选择一个主机来满足操作需求。如果没有另一匹配,那么主机可以与模块化对象在事件 1520处绑定;同样地,在动作1518处选择的主机可以在事件1520处与模块化对象绑定。当 描述模块化对象时,要意识到的是,可以使用封装的对象,也可以使用其他类型的对象。
出于简化说明的目的,将可以根据所公开的主题内容实施的方法显示和描述为一 系列块。然而,要理解和意识到的是,要求保护的主题内容不由块的顺序限制,因为一些块 可以按不同的顺序发生和/或与在文中所描绘和描述的其他模块同时发生。另外,不可以 要求所有说明的块实施在下文中描述的方法。另外,应进一步意识到的是,贯穿本说明书所 公开的方法能够被存储在制造的产品上,以便于将这样的方法传送并且传递到计算机。所 使用的术语"制造的产品"旨在包括可从任何计算机可读设备、载体或者介质获得的计算机 程序。 现在参考图16至lj24,示出的附图提供了关于本文所公开的方面的进一步指导。公 开了图16到图24以及相关的文本,以鉴于所公开的创新来提供示例信息,并且因此不应构 成对创新的限制。图16公开了针对模块化对象的示例类图的示例配置1600。图17公开了 针对对模块化对象的示例类图的示例扩展的示例配置1700。 绑定过程一般涉及取需求计算资源执行的对象实例的片段,并且将他们分配到那 些计算资源。在一些情况中,较高等级的对象在他们绑定时也会需求资源分配。在这一点 上,绑定过程仍然涉及逻辑模块化组件和计算资源。控制系统视图一般示出了在系统中可 获得的所有逻辑计算资源。计算资源的逻辑视图的使用允许使用者将绑定从物理控制和信 息系统分离。以这种方式,使用者可以稍后将这个逻辑视图部署到诸如测试实验室、试点线 或者全尺寸生产工厂的多个物理系统。在测试实验室的情况中,可以在单个机箱中模拟所 有的逻辑控制器,并且所有的逻辑软件服务器可以在一个计算机上运行。在试点线中,可以 使用硬件控制器(例如,微控制器)和多个计算机,而在生产工厂中,较大的控制器(例如, 过程自动化控制器)和附加分布式计算机可以存在。 在智能带输送机的示例中,可以存在逻辑、1/0连接和HMI(硬件监视器接 口-Hardware Monitor Interface)面板,作为为了绑定而考虑的一些项目。使用者通过将 对象实例(或者实例组)分配给这些逻辑资源来创造绑定。为了执行这种绑定,使用者可 以画出控制系统中计算资源的视图。图18公开了示例可视化1800,用于被绑定到控制器和 人机接口 (HMI)服务器的实例。因此,可以存在自动绑定和人工绑定两者。
关于可视化1800,存在名为测试线101的逻辑配置到名为填充符网络的物理控制 和信息系统的总绑定。此外,存在CLX填充符单元到名为主CPU的Logix控制器和EOI填 充符到名为eoi填充符100的嵌入式HMI服务器的绑定。此动作实质上将包含在该单元中 的所有对象实例都绑定到那些计算资源。在CLX填充符内,使用者可以选择将单个对象实 例绑定到适当的计算资源。例如,使用者将驱动组件(例如运动轴)钳协调、钳左伺服、轭 左伺服、轭右伺服、钳右伺服等绑定到Sercos网络中适当的资源,同时将槽控制器和EOI存 储绑定到控制器1756-A4和eoi槽存储100。使用者可以基于单个对象而容易地绑定到不 同计算资源中的相同计算资源。该绑定不需要将这些实例绑定到相同的计算资源,正是因 为所有这些实例在相同的线中。对要绑定的计算资源的选择是灵活的,并且留给使用者自行做出。但是,对象的层次构成一般不提供较高等级的操作,以在项目组上执行这些绑定动 作。 绑定这些对象实例(特别是执行装备控制的那些实例)的部分过程是把物理1/ 0(输入/输出)连接到在控制器(他们所绑定的控制器)中可获得的1/0模块并且分配针 对对象逻辑的执行进度表。控制系统视图中的控制器大致相当于离线控制器工程文件,并 且同样包括到在该控制器中可获得的1/0模块和任务的路径。类似地,所示的HMI服务器 可以大致相当于HMI工程。 因此,对于智能带输送机示例(图19),可以存在需要被绑定的两个数字输入点 (例如,进料和出料照片眼)和三个驱动(例如,进料轴、间隙轴和出料轴)。另外,需要将 阀的逻辑安排成以所要求的速率执行。如果被分配了对象实例的控制器包括1/0配置和配 置好的周期以及运动轴执行速率,那么系统可以推荐选择,以完成这些绑定。可能某种形式 的向导可以用于便利使用者接口中的绑定过程。图19公开了关于在这个过程中如何可以 建立I/O点和逻辑执行要求的示例可视化1900。 —旦绑定到它的逻辑计算资源,模块实例可能需要部署到一个或多个真实的、物 理计算资源,以准备控制工厂中的设备。这可以通过将控制系统视图中的逻辑资源连接到 网络视图中的物理资源来完成。在图20中,公开了示例可视化组2000,其可以是输送机公 共接口和HMI面板。 也可以是逻辑的开发。例如,智能带输送机可以在自动化控制器上运行,而它的其 他部分(诸如照片眼组件)可以使用具有板上处理器的RFID(射频识别)智能设备,并且 可以由MES(制造执行系统)或者ERP(企业资源计划)应用(例如,可能通过便利执行功 能的人工步骤排序使用者)支持另外的方面。可以以适合于执行平台的语言开发逻辑。例 如,软件应用对于语言可以使用Java。 —般地,所有的应用以及输送机的使用者不关心逻辑的任何这些下层方面;他们 使用在输送机中的公共接口定义和共享的HMI面板。在许多情况中,对象的执行环境(例 如,控制器相对MES执行环境)不如由它提供的功能组(接口定义和语义)重要。图21公 开了示例可视化2100,其可以是针对多平台的输送机逻辑。在由可视化2100强调的说明性 示例中,智能带输送机的逻辑可被开发用于自动控制器,并且包括针对版本和执行速率的 示例要求。同时,可以针对使用代理组件的传统(legacy)设备开发简单输送机的逻辑。要 意识到的是,模块化对象可以支持预定义的实例。 在模块化自动化的广阔背景中,可以针对许多不同的平台开发模块化对象的逻 辑。作为另一示例,考虑为了与由天气频道网站提供的网络服务互相作用而开发的天气预 报对象。如果系统可以支持允许使用者用Java和/或.NET开发对象逻辑的软件执行环境, 那么使用者可以针对那个目标平台开发此对象。预定的接口、定义、对象和实例的使用对于 天气预报对象来说,与它对于任何其他模块化对象是相同的。逻辑开发可以基于使用者的 平台选择而变化。图22公开了在天气预报对象中用于Java逻辑的示例可视化2200(然而, 要意识到的是可以使用其他模块)。 作为开发对象逻辑的部分,使用者通常需要局部操作寄存器或者变量来执行计算 和算法功能。与逻辑本身很像,这个局部数据的定义一般对逻辑平台是特有的。在控制器 中,私有标记典型地用于局部数据,而在较高等级的对象语言(例如,Java)中,可以有变量
15声明。但是,使用者目标可以是相同的,即用于定义某些数据是对象逻辑私有的,并且因此 不能由除了所述逻辑之外的任何逻辑访问。 例如,针对控制在高速包装机器中的运动轴的对象的逻辑可能需要每隔5毫秒执
行。另一方面,对于在过程应用中的温度控制环来说,每隔1/2秒运行可能就足够了。针对
较高等级报警管理对象的逻辑可能需要基于系统中的报警或者事件来执行。 用于对象逻辑的执行要求的配置也有助于当把对象分配给计算资源以执行时的
绑定过程。如果计算资源包括其支持的执行环境的定义(例如,在控制器中具有经配置的
速率的任务的定义),则系统可以建议(或者自动分配)用于对象逻辑的合适的绑定。图
23可以表示具有局部数据和执行要求的逻辑的示例可视化2300。 为了提供针对所公开的主题内容的各种方面的背景,图24和25以及以下的讨论 旨在提供其中可以实施所公开的主题内容的各种方面的适当环境的简要、概括的描述。尽 管以上在运行于一个或者多个计算机上的程序的计算机可执行指令的一般背景中描述了 主题内容,但是本领域的技术人员将承认,也可以结合其他程序模块来实施本文所描述的 主题内容。 一般地,程序模块包括执行特定任务和/或实施特定抽象数据类型的例行程序、 程序、组件、数据结构等。另外,本领域的技术人员将意识到,可以用其他计算机系统配置来 实践发明方法,包括单处理器、多处理器或者多核处理器计算机系统、迷你计算设备、大型 计算机,也包括个人计算机、手持计算设备(例如,个人数字助理(PDAh手机,手表...h基 于微处理器的或者可编程的消费电子设备或者工业电子设备等。也可以在分布式计算环境 中实践所说明的方面,在所述分布式计算环境中,由通过通信网络链接的远程处理设备执 行任务。然而,如果并非所要求保护的主题内容的全部方面可以在单机计算机上实践,则可 以实践一些方面。在分布式计算环境中,可以将程序模块设置在本地和远程存储器存储设 备中。 现在参考图24,示出了根据本说明书的计算环境2400的示意框图。系统2400包 括一个或多个客户端2402。客户端2402可以是硬件和/或软件(例如,线程、进程、计算设 备)。例如,客户端2402可以通过使用说明书载入信息记录程序(cookie)和/或相关背景 信息。 系统2400也可以包括一个或多个服务器2404。服务器2404也可以是硬件和/或 软件(例如,线程、进程、计算设备)。例如,服务器2404可以通过使用说明书载入线程以执 行转换。在客户端2402和服务器2404之间的一种可能的通信可以是按照数据包的形式, 该数据包适于在两个或者多个计算机进程之间传输。例如,数据包可以包括信息记录程序 和/或相关背景信息。系统2400包括通信框架2406 (例如,诸如互联网的全球通信网络), 该通信框架2406可以用于便利在客户端2402和服务器2404之间的通信。
可以经由有线(包括光纤)和/或无线技术来便利通信。将客户端2402操作性 地连接到一个或者多个客户端数据存储2408,客户端数据存储2408可以用于存储对于客 户端2402是本地的信息(例如,信息记录程序和/或相关背景信息)。类似地,将服务器 2404操作性地连接到一个或者多个服务器数据存储2410,服务器数据存储2410可以用于 存储对于服务器2404是本地的信息。 现在参考图25,示出了可操作用于执行所公开的体系结构的计算机的框图。为 了提供用于本说明书的各种方面的附加背景,图25和以下的讨论旨在提供适当计算环境2500的简要、概括的描述,在计算环境2500中可以实施说明书的各种方面。尽管以上在可 以运行于一个或者多个计算机上的计算机可执行指令的一般背景中描述了说明书,但是本 领域的技术人员将认识到,说明书也可以结合其他程序模块来实施,和/或实施为硬件和 软件的组合。 —般地,程序模块包括执行特定任务或者实施特定抽象数据类型的例行程序、程 序、组件、数据结构等。另外,本领域的那些技术人员将意识到,可以用其他计算机系统配置 来实践发明方法,其他计算机系统配置包括单处理器或者多处理器计算机系统、迷你计算 机、大型计算机,也包括个人计算机、手持计算设备、基于微处理器的或者可编程的消费电 子设备等,它们中的每个可以操作性地耦合到一个或者多个相关设备。 也可以在分布式计算环境中实践说明书说明的方面,在分布式计算环境中,由通 过通信网络链接的远程处理设备执行某些任务。在分布式计算环境中,可以将程序模块设 置在本地和远程存储器存储设备中。 计算机典型地包括多种计算机可读介质。计算机可读介质可以是可由计算机访问 的任何可用介质,并且包括易失性和非易失性介质、可移除和不可移除介质。作为示例而不 是限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括在用 于信息(诸如计算机可读指令、数据结构、程序模块或者其他数据)存储的任何方法或者技 术中实施的易失性和非易失性、可移除和不可移除的介质。计算机存储介质包括但不限于 RAM、ROM、EEPROM、闪存或者其他存储器技术,CD-ROM、数字化多功能磁盘(DVD)或者其他光
盘存储,卡式磁带、磁带、磁盘存储或者其他磁存储设备,或者任何可以用于存储所期望的 信息并且可以由计算机访问的其他媒介。 通信介质典型地包含在诸如载波或者其他传送机制的经调制的数据信号中的计 算机可读指令、数据结构、程序模块或者其他数据,并且包括任何信息递送介质。术语"经调 制的数据信号"是指以对信号中的信息进行编码的方式设置或改变其一个或者多个特性的 信号。作为示例而不是限制,通信介质包括诸如有线网络或者直接线连接的有线介质,以及 诸如声音、RF(射频)、红外或者其他无线介质的无线介质。以上的任何介质的组合应该也 包括在计算机可读介质的范围内。 再次参考图25,用于实施说明书的各种方面的示例环境2500包括计算机2502,计 算机2502包括处理单元2504、系统存储器2406和系统总线2508。系统总线2508将系统 组件(包括但不限于系统存储器2506)耦合到处理单元2504。处理单元2504可以是各种 商业上可获得的处理器或者所有权特殊配置的处理器中的任何处理器。也可以使用双微处 理器和其他多处理器体系架构作为处理单元2504。 系统总线2508可以是几种总线结构类型中的任何类型,所述总线结构可以进一 步互连到使用多种商业上可获得的总线体系架构的任何总线体系架构的存储器总线(具 有或者没有存储器控制器)、外围总线和局域总线。系统存储器2506包括只读存储器 (ROM) 2510和随机存取存储器(RAM) 2512。把基本输入/输出系统(BIOS)存储在诸如ROM、 EPR0M、EEPR0M的非易失性存储器2510中,该BIOS包括有助于在诸如启动过程中在计算机 2502内的元件之间传递信息的基本例行程序。RAM 2512也可以包括诸如静态RAM的高速 RAM,用于缓存数据。 计算机2502还包括内部硬盘驱动器(HDD)2514(例如,EIDE(增强型IDE接口 -Enhanced Integrated Device Electronics) 、 SATA(串行ATA接口规范-Serial Advanced Technology Attachment))、磁性软盘驱动器(FDD) 2516 (例如,用于对可移除盘 2518的读取或者写入)和光盘驱动器2520 (例如,读取CD-ROM盘2522,或者对诸如DVD的 其他大容量光学介质的读取或者写入),该内部硬盘驱动器2514也可以配置在适当的机箱 (未示出)中用于外部使用。可以将硬盘驱动器2514、磁盘驱动器2516和光盘驱动器2520 分别通过硬盘驱动器接口 2524、磁盘驱动器接口 2526和光学驱动器接口 2528连接到系统 总线2508。用于外部驱动器实施的接口 2524包括通用串行总线(USB)和IEEE1394接口技 术中的至少之一或者两者。其他外部驱动器连接技术在本说明书的预期内。
驱动器和他们相关联的计算机可读介质提供数据、数据结构、计算机可执行指令 等的非易失性存储。对于计算机2502,驱动器和介质以适当的数字化格式提供任何数据的 存储。尽管以上计算机可读介质的描述提到HDD、可移除磁盘和诸如CD或者DVD的可移除 光学介质,本领域的技术人员应当意识到,可由计算机读取的其他类型的介质,诸如压縮驱 动器、磁盘、闪存卡、卡带等,也可以在示例操作环境中使用,并且此外,任何这种介质可以 包括用于执行说明书的方法的计算机可执行指令。 可以将若干程序模块存储在驱动器和RAM 2512中,所述程序模块包括操作系统 2530、一个或者多个应用程序2532、其他程序模块2534和程序数据2536。也可以将操作系 统、应用、模块和/或数据的全部或者部分缓存在RAM 2512中。意识到的是,可以用各种所 有权或者商业上可获得的操作系统或者操作系统的组合来实施说明书。
使用者可以通过一个或者多个有线/无线输入装置(例如键盘2538和诸如鼠标 2540的点击设备)来把命令和信息输入到计算机2502中。其他输入装置(未示出)可以 包括麦克风、IR遥控、控制杆、游戏摇杆、记录笔、触摸屏等。通常将这些和其他输入装置通 过输入装置接口 2542连接到处理单元2504,输入装置接口 2542与系统总线2508耦合,但 是可以通过其他接口连接这些和其他输入装置,诸如并行端口、 IEEE 1394串行端口、游戏 端口、USB端口、 IR接口等。 把监视器2544或者其他类型的显示设备也经由诸如视频适配器2546的接口连接 到系统总线2508。除了监视器2544之外,计算机典型地包括诸如扬声器、打印机等的其他 外围输出设备(未示出)。 计算机2502可以使用经由有线和/或无线通信到一个或更多远程计算机(诸 如远程计算机2548)的逻辑连接在网络化环境中运行。远程计算机2548可以是工作站、
服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐装置、对等设备或
者其他公共网络节点,并且典型地包括相对于计算机2502所描述的许多或者全部元件,
尽管出于简洁的目的而仅仅示出了存储器/存储2550。所描绘的逻辑连接包括到局域网
(LAN) 2552和/或较大网络(例如,广域网(WAN) 2554)的有线/无线连接。这种LAN和WAN
网络环境在办公室和公司中是普通的,并且便利了诸如企业内部互联网的企业范围的计算
机网络,其中所有的企业范围的计算机网络可以连接到全球通信网络,例如互联网。 当在LAN网络环境中使用时,将计算机2502通过有线和/或无线通信网络接口或
者适配器2556连接到局部网络2552。适配器2556可以便利到LAN 2552的有线或者无线
通信,LAN2552也可以包括其上布置的无线接入点,用于与无线适配器2556通信。 当在WAN网络环境中使用时,计算机2502可以包括调制解调器2558,或者被连接到WAN 2554上的通信服务器,或者具有用于在WAN2554上建立通信的其他装置,诸如通过 互联网。将调制解调器2558经由输入装置接口 2542连接到系统总线2508,其中调制解调 器2558可以是内部的或者外部的以及有线的或者无线的设备。在网络化环境中,可以将相 对于计算机2502所描绘的程序模块或者其部分存储在远程存储器/存储2550中。将意识 到的是,所示的网络连接是示例,并且可以使用在计算机之间建立通信链接的其他装置。
计算机2502可操作用于与操作性地布置在无线通信中的任何无线设备或者实体 (例如,打印机、扫描仪、台式和/或便携式计算机、便携式数据助理、通信卫星、与无线可检 测标记相关联的装备的任何部分或者场所(例如,公用电话亭、报摊、休息室)和电话)通 信。这包括至少Wi-Fi (基于IEEE 802. lib标准的无线局域网-Wireless Fidelity)和 BluetoothTM(蓝牙)无线技术。因此,通信可以是与传统网络或者在至少两个设备之间的 简单ad hoc(点对点)通信一样的预定义结构。 Wi-Fi或者无线保真度(Wireless Fidelity)允许从家里的沙发、旅馆房间的床 或者工作中的会议室不用线地连接到互联网。Wi-Fi是与在手机中使用的无线技术相似的 无线技术,其使这种设备(例如,计算机)能够在户内和户外发送和接收数据(在基站范围 内的任何地方)。Wi-Fi网络使用称作IEEE 802. 11(a、b、g等)的无线电技术来提供安全、 可靠、快速的无线连接。Wi-Fi网络可以用于将计算机连接到彼此、到互联网以及到有线网 络(其使用IEEE 802. 3或者以太网)。Wi-Fi网络在没有得到许可的2. 4GHz和5GHz无线 电波段中以11Mbps (802. 11a)或者54Mbps (802. lib)的数据速率运行,例如,或者用包括两 个波段(双波段)的产品运行,因此网络可以提供与在许多办公室中使用的基本lOBaseT 有线以太网网络相似的真实世界性能。 相对于几个组件间的相互作用描述了前述系统。应意识到的是,这样的系统和组 件可以包括文中详述的那些组件或子组件、一些所详述的组件或者子组件、和/或附加组 件。可以将子组件实施为通信地耦合到其他组件的、而不是包括在母组件内的组件。另外, 应当注意的是,可以将一个或者多个组件组合到提供集合功能的单个组件中。组件也可以 与在文中没有详述、但是本领域的技术人员公知的一个或者更多其他组件相互作用。
如在文中所使用的一样,术语"推断"或者"推理"一般是指从经由事件和/或数 据所获取的一系列观察来推出或者导出系统、环境和/或使用者的状态的过程。例如,推理 可以用来识别特定的背景或动作,或者可以产生关于状态的概率分布。推理可以是可能性 的(即基于对数据和事件的考虑,就关注的状态计算概率分布)。推理也可以指的是用于从 一组事件和/或数据组成较高等级的事件所使用的技术。这种推理导致从一组所观察的事 件和/或所存储的事件数据构建新事件或者动作,无论事件是否是以紧密的时间临近相关 的,以及事件和数据是否来自一个或者几个事件和数据源。 此外,可以将要求保护的主题内容实施为使用标准编程和/或工程技术的方法、 装置或者制造的产品,以产生软件、固件、硬件或者其任何组合,来控制计算机实施所公开 的主题内容。文中所使用的术语"制造的产品"意欲包括可从任何计算机可读设备、载体或 者介质获得的计算机程序。例如,计算机可读介质可以包括但不限于磁存储设备(例如,硬 盘、软盘、磁带...)、光盘(例如,压密盘(CD)、数字化多功能盘(DVD)...)、智能卡和闪存设 备(例如,卡、棒、键驱动器...)。另外应意识到的是,可以使用载波来携带计算机可读电子 数据,诸如在发送和接收电子邮件中或者在访问诸如互联网或者局域网(LAN)的网络中使用的那些计算机可读电子数据。当然,本领域的技术人员将认识到,可以不离开要求保护的 主题内容的范围或者精神而对本配置进行许多修改。 另外,文中使用词"示例性"表示作为示例、实例或者说明。文中被描述为"示例 性"的任何方面或者设计不必解释为比其他方面或者设计是优选的或者有利的。相反地,词 "示例性"的使用旨在以具体的方式公开概念。如在本说明书中所使用的一样,术语"或者" 是用来表示包括的"或者",而不是排除的"或者"。也就是说,除非另外指定,或者从上下文 清楚,否则"X使用A或者B"是用来表示任何自然包括的排列。也就是说,如果X使用A, X 使用B或者X使用A和B,那么在任何前述的实例中满足了 "X使用A或者B"。另外,在本 说明书和所附权利要求中所使用的冠词"一"和"一个" 一般应该理解为表示"一个或者更 多个",除非另外指定或者从上下文清楚地看出指向单数形式。 以上所描述的包括本说明书的示例。当然,不可能为了描述本说明书的目的而描 述组件或者方法的每种可以想到的组合,但是本领域的普通技术人员可以认识到,本说明 书的许多另外的组合和排列是可能的。因此,本说明书意欲包括落在所附权利要求的精神 和范围内的所有这样的变更、修改和变化。此外,就在具体实施方式
或者权利要求中使用了 术语"包括"来说,如术语"包括"在权利要求中用作过渡词时被理解的一样,该术语以类似 于权利要求中"包括"的方式旨在是包括的。
权利要求
一种能够在工业控制环境或者工业信息环境实施的系统,包括确定组件,其识别主机的至少一项能力;以及公开组件,其公布至少一项所识别的能力的至少部分,以便可以由对象访问所述能力。
2. 根据权利要求l所述的系统,所述对象包括接口组件,其定义被提供给联系所述对象的至少一个客户端应用的外部行为;逻辑组件,其提供行为并且识别要由所述主机满足的至少一个操作需求; 参考组件,其保持与所述对象的至少一个依从性相关的元数据。
3. 根据权利要求1所述的系统,还包括评价组件,所述评价组件评估所述至少一个所 识别的能力,评估的结果用于确定是否应该公布所识别的能力。
4. 根据权利要求1所述的系统,还包括区分组件,所述区分组件基于评估的结果确定 应该公布的至少一项能力和不应该公布的至少一项能力,所述公开组件公布确定要公布的 能力并且屏蔽确定不公布的能力。
5. 根据权利要求1所述的系统,还包括访问分析组件,其评估请求了解所述至少一个所识别的能力的实体; 访问管理组件,其确定是否允许所述实体查看或者修改所识别的能力; 访问调节器组件,如果确定所述实体被允许则使得所述实体能够查看或者修改公布, 或者如果确定所述实体不被允许则拒绝访问公布。
6. —种能够在工业控制环境或者工业信息环境实施的方法,包括 分析对象以明确操作需求;以及基于分析的结果来确定是否应该公布所述对象的操作需求。
7. 根据权利要求6所述的方法,还包括如果确定公布应该发生则公布所述操作需求。
8. 根据权利要求7所述的方法,公布是受限的,以便在实体可以访问所公布的操作需 求之前进行授权检查。
9. 根据权利要求6所述的方法,还包括如果确定公布应该发生,则确定是否应该对公布做出限制;以及 公布具有限制的操作需求。
10. —种能够在工业控制环境或者工业信息环境实施的系统,包括 用于评估实体的装置,所述实体请求了解主机的至少一项能力或者对象的至少一个操作需求;用于确定是否允许所述实体查看所述主机的至少一项能力或者所述对象的至少一个 操作需求的装置。
全文摘要
本发明涉及模块化对象的公布和发现,一种可以在与执行功能或任务相关的工业控制配置中使用的对象。匹配可以发生,以便具有操作需求的对象可以与具有满足那些操作需求的能力的主机绑定(匹配可以自动发生,也可以通过使用者的操作发生)。一旦匹配了,可以向与所述对象相关的使用者呈现不同的功能。为了帮助使用者,所述对象可以包括外部参考、逻辑、局部或私有数据,也包括除了资源之外的其他。为了便利操作,可以在可由不同实体访问的目录中公布能力和资源(有时具有安全限制,以保护配置完整性)。同样地,可以使用预订系统,以便当对相关实体做出改变时,通知可以传递到相关实体并且操作可以基于改变而变化。
文档编号G06Q10/00GK101713962SQ200910177649
公开日2010年5月26日 申请日期2009年9月30日 优先权日2008年9月30日
发明者丹尼尔·B·塞格, 塔里尔·J·贾斯帕, 拉塞尔·W·布兰德斯, 罗伯特·J·克雷奇曼, 罗纳德·E·布利斯, 肯伍德·H·霍尔, 肯尼斯·S·普拉赫, 苏比安·戈文达拉杰, 詹姆斯·H·贾勒特, 迈克尔·D·卡兰恩, 道格拉斯·J·理查德, 雷蒙德·J·斯塔龙 申请人:洛克威尔自动控制技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1