CN101713964A - 模块化对象和主机匹配 - Google Patents

模块化对象和主机匹配 Download PDF

Info

Publication number
CN101713964A
CN101713964A CN200910177658A CN200910177658A CN101713964A CN 101713964 A CN101713964 A CN 101713964A CN 200910177658 A CN200910177658 A CN 200910177658A CN 200910177658 A CN200910177658 A CN 200910177658A CN 101713964 A CN101713964 A CN 101713964A
Authority
CN
China
Prior art keywords
main frame
operational requirements
ability
industrial
assembly
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200910177658A
Other languages
English (en)
Other versions
CN101713964B (zh
Inventor
肯尼斯·斯克特·普拉赫
丹尼尔·B·塞格
雷蒙德·J·斯塔龙
塔里尔·J·贾斯帕
詹姆斯·H·贾勒特
拉塞尔·W·布兰德斯
罗纳德·E·布利斯
迈克尔·D·卡兰恩
苏比安·戈文达拉杰
肯伍德·H·霍尔
道格拉斯·J·理查德
罗伯特·J·克雷奇曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rockwell Automation Technologies Inc
Original Assignee
Rockwell Automation Technologies Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Rockwell Automation Technologies Inc filed Critical Rockwell Automation Technologies Inc
Publication of CN101713964A publication Critical patent/CN101713964A/zh
Application granted granted Critical
Publication of CN101713964B publication Critical patent/CN101713964B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Operations Research (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Automation & Control Theory (AREA)
  • Marketing (AREA)
  • Finance (AREA)
  • Quality & Reliability (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

公开了模块化对象和主机匹配。对象可以在涉及执行功能或任务的工业控制配置中使用。匹配可以出现,使得具有操作需求的对象可以与具有满足该操作需求的能力的主机相绑定,匹配可以自动出现也可以通过用户操作而出现。一旦匹配,就可以将不同的功能呈现给属于该对象的用户。为了帮助用户,除了资源以外,该对象可以包括外部参考、逻辑、本地或私有数据及其它。为了便于操作,可以在可由不同实体访问的目录中公布能力和资源,有时候具有安全约束以保护配置完整性。同样地,可以使用预订系统,使得当对相关实体进行改变时,可以将通知传送到相关实体,并且可以基于该变化改变操作。

Description

模块化对象和主机匹配
技术领域
本申请总体上涉及工业控制配置的操作,具体涉及结合主机使用模块化对象。
背景技术
工业控制环境典型地可以涉及执行各种自动化的机械和/或电气功能的复杂的机械、电子、机电和/或机器人机器。这种机器可以包括工业马达、泵、传送机、电梯、钻孔机、制冷系统等,它们可以提供特定的物理输出。典型地,例如,工业环境使用一个或多个控制装置来确定何时启动或停止这种机器以及适当的启动水平(例如供应给可变输入马达的电流量)。另外,该控制装置与可确定适当的时间、程度、方式等的逻辑程序代码相关联,以基于各种可确定的情况(例如另一装置的输出、光学传感器的读数、装置中的诸如电流水平等的电子测量、装置的移动或转数等等)来操作这种机器。
技术人员可以使用该机器以提供不同类型的功能。最初,一组个人可以在逻辑上和物理上使用该机器构建工业控制过程。可以执行诊断测试以确保该机器被正确放置并按照预期操作(例如物理管线被连接在一起而没有物质泄漏)。当在操作中,管理人员可以指定该机器应如何操作,并且维修人员可以执行修理和预防性任务,以确保正确的功能得以持续(例如给活动机械部件加油)。
发明内容
下面公开本说明书的简要概述,以提供对本说明书的一些方面的基本理解。本概述不是本说明书的详尽综述。本概述既不是旨在指定本说明书的要点和关键要素,也不是旨在描绘本说明书的范围。本概述的唯一目的是用于以简化的形式公开本说明书的一些原理,作为稍后公开的更详细的说明的前序。
在工业控制配置中,可以存在用于执行任务的多个模块化对象。为了帮助执行这些任务,该模块化对象可以与至少一个主机相接口,使得该模块化对象可以使用该主机的能力。为了便于正确操作,模块化对象可以与具有用于满足该模块化对象的操作需求的能力的主机相匹配和相结合。可以收集属于多个主机的元数据,包括与主机能力相关的元数据。可以执行检查以确定是否出现匹配,如果出现匹配,则可以将该模块化对象与该主机相结合。
为了改进匹配操作,可以使用目录来公布能力和/或操作需求信息。当模块化对象或主机进入配置或被修改时,可以进行分析以确定是否存在改变。如果发生改变,则可以将能力或需求信息置于目录中。资源管理器可以使用该目录来创建绑定(binding),或者主机和/或模块化对象可以它们自己相互匹配。另外,可以使用预订服务来传送类似信息。
以下的说明和附图给出了本申请的某些说明性的方面。然而,这些方面只表示其中可采用本说明书的原理的一些各种方式。从当结合附图考虑下面对本说明书的详细说明时,本申请的其它的优点和新颖特征将是很明显的。
附图说明
图1示出了根据本主题说明书的一方面的对象和主机的典型配置。
图2示出了根据本主题说明书的一方面的典型的对象匹配系统。
图3示出了根据本主题说明书的一方面的用于将主机与至少一个对象相匹配或者将对象与至少一个主机相匹配的典型。
图4示出了根据本申请的一方面的用于管理对象匹配的典型系统。
图5示出了根据本主题说明书的一方面的用于能力或操作需求公开的典型系统。
图6示出了根据本主题说明书的一方面的用于通过目录传送信息的典型系统。
图7示出了根据本主题说明书的一方面的用于请求响应管理的典型系统。
图8示出了根据本主题说明书的一方面的用于资源管理的典型系统。
图9示出了根据本主题说明书的一方面的管理主机或对象资源的典型。
图10示出了根据本主题说明书的一方面的用于满足对象的操作需求的典型系统。
图11示出了根据本主题说明书的一方面的用于将主机与对象相匹配的典型配置。
图12示出了根据本主题说明书的一方面的典型处理组件。
图13示出了根据本主题说明书的一方面的用于检查主机是否满足操作需求的典型方法。
图14示出了根据本主题说明书的一方面的典型目录管理方法。
图15示出了根据本主题说明书的一方面的典型的自动化主机或对象评估方法。
图16示出了根据本主题说明书的一方面的针对模块化对象的典型类图。
图17示出了根据本主题说明书的一方面的针对模块化对象的典型类图。
图18示出了根据本主题说明书的一方面的与控制器和主机的示例绑定的典型显示。
图19示出了根据本主题说明书的一方面的用于建立连接模块化对象各组件的处理协议的典型显示。
图20示出了根据本主题说明书的一方面的与支持接口的多个模块化对象实现相关的典型显示。
图21示出了根据本主题说明书的一方面的与逻辑的操作需求相关的典型显示。
图22示出了根据本主题说明书的一方面的公开信息系统逻辑的典型显示。
图23示出了根据本主题说明书的一方面的针对模块化对象的逻辑操作需求的典型显示。
图24示出了根据本主题说明书的一方面的计算环境的示意性框图的例子。
图25示出了可操作用于执行所公开的体系结构的计算机的框图的例子。
具体实施方式
现在对照附图描述所要求保护的主题,其中始终使用相似的附图标记来表示相似的要素。在以下的描述中,为了说明的目的,提出了多个特定细节,以提供对所要求保护的主题的全面理解。但是,显然在没有这些特定细节的情况下也可以实现所要求保护的主题。在其它例子中,以框图的形式示出公知的结构和装置,以便于描述所要求保护的主题。
在本申请中使用的术语“组件”、“模块”、“对象”、“系统”、“接口”等通常旨在表示与计算机相关的实体,或者是硬件、硬件和软件的结合、软件,或者是执行中的软件。例如,组件可以是但不限于在处理器上运行的处理、处理器、对象、可执行文件、执行线程、程序和/或计算机。例如,在控制器上运行的应用和控制器均可为组件。一个或多个组件可以驻留在处理和/或执行线程内,并且组件可以位于一个计算机上和/或可以分布于两个或更多个计算机当中。作为另一个例子,接口可以包括I/O组件以及相关的处理器、应用和/或API组件。
现在对照图1,图1公开了示例系统100(例如工业控制配置的部分)。对象102(例如模块化对象、封装的对象、控制对象等)可以与多个主机104相结合地存在于工业控制配置上。与对象102相关的功能可以类似于软件中的插件方法。对象102可以发展为不同的层(例如发展为自动开发的或由用户开发的组织层次),以形成面向对象的控制系统,并且可以存在与对象102相关的各种属性(例如较低水平对象的较高水平的组织传统特性)。此外,对象102可以具有可跨不同的层次水平地使用的不同特性。
用户可以创建这些对象102,然后以表示处理的方式连接它们,或者可以通过自动化的处理创建对象102。对象102可以包括实现与其它实体之间的接洽(engagement)并辅助执行功能的不同部分。接口106(例如接口组件)可以定义提供给接洽对象102的至少一个客户端应用的外部行为。通过接口106,对象102可以暴露数据、暴露可执行的操作、暴露与其它对象的相关性等。应该理解,对象可以支持多于一个接口(例如与多于一个客户端应用相接洽),和/或多个逻辑部分可以便利于与多于一个主机之间的接洽。
对象102可以包括逻辑108(例如控制逻辑、对人机接口的支持等),该逻辑108可以处于企业系统中、处于单独的位置中等。应该理解,对象可以支持多于一个逻辑组件(例如与多于一个主机104相连接)。外部参考110(例如参考组件)可以保持属于对象(例如对象102之一)的元数据。外部参考可以包括描述对象102的相关性、表示支持逻辑108所需的连接(例如操作需求)等的信息。尽管被公开为多个外部参考,但是对象102可以用具有一个外部参考的参考组件来实现。应该理解,对象102可以包括其它部分,例如本地数据、可视化要素等。相反地,对象102在本质上可以比所公开的更有限(例如对象只包括逻辑)。这些对象102可以由为了不同目的将对象102应用到不同装置(例如通用打包机)的原始设备制造商在头脑中创建和/或开发。对象102的开发可以使得该对象可以与多个客户端和/或多个计划相接洽。这不同于将对象开发成与单个客户端的单个设备相接洽的传统做法。这些类型的对象的使用违背了工业中的传统想法,因为通常期望有专门为客户生产的对象,而不是期望可重用的通用可定制的对象。
现在对照图2,公开了用于将对象102与主机104相匹配的示例系统200。对象102可以提供外部接口106、逻辑108或者参考110,以便于操作。另外,对象102可以包括为了以期望的方式操作而应满足的多个操作需求。为了满足这些操作需求,对象102可以与至少具有一个能力和/或满足补充对象102的操作需求的所需(或强制)能力的主机104相链接。
对象的操作需求通常是为了使对象102以特定的方式起作用而使用的能力。根据一个实施例,为了对象102操作,该操作需求必须被满足,但是应该理解,在许多情况下不是这样的,并且至少在操作需求上是期望的、优选的等等。示例操作需求(例如可以被满足作为主机能力)可以包括分辨率存储器大小、版本、语言、定时等。
可以收集属于对象102的操作需要(例如操作需求)的信息。示例信息可以包括操作需要是什么、该要求如何重要、该要求是否关键(例如对于操作而言是绝对必须的)等等。另外,可以收集与什么主机是系统200的一部分、这些主机的能力、该能力是否被另一对象所使用等相关的信息。系统200可以使用评估组件202,评估组件202评价至少一个主机的至少一个能力和至少一个工业模块化对象的至少一个托管需求。
分组组件204基于被所匹配的主机的能力所满足的匹配对象的托管需求而将主机104与工业模块化对象(例如对象102)相匹配,这可以由评估组件202来确定。主机与对象的匹配可以包括创建软件绑定,其中对象可以采用主机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可以自动地起作用和/或忽略用户指令。为了有助于更协作的体验,系统300可以使用优化组件310,该优化组件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,公开了用于公开主机104的能力和/或目录502中的对象操作期望的示例系统500。保持主机能力的目录502是有益的,当对象要使用主机来操作时,对该目录的快速检查可以允许对象发现适当的主机。这可以比每次对象要操作时单独分析主机更快。同样地,公开目录502中的对象的操作需要和/或突出的操作需要是有益的。如果目录中列出了突出的操作需要,当新的主机进入到系统500和/或主机的能力被修改时,则主机104可以检查能力是否满足需要。另外,管理器组件(例如确定组件504的部分)可以用于使得主机和需要跨工业控制配置地以有效的方式配对。通过目录502(例如集中式目录、分布式目录)能够快速确定需要和能力,这可以允许管理器组件连续更新绑定。
为了将总体信息学习到该目录中,确定组件504可以识别主机104的至少一种能力。另外,确定组件504可以识别对象的至少一个操作需求。可以运行检查以确定识别出的能力或要求是否已经在目录502中和/或该目录中所代表的是否不同于所识别出的。如果不存在状态变化和目录中的内容的变化,则该确定可以停止来自其它组件的进一步操作以节省资源。
公开部件506可以公布至少一种识别出的能力的至少一部分,使得该能力可以被对象以及其它工业控制配置实体访问。相反地,公开组件506可以公布目录中的操作需求信息和其它数据。信息公布可以包括在目录502中放入新的信息以及替换过期的信息。
在替代性的实施例中,可以使用预订服务。当对信息进行改变时(例如存在新的主机、修改主机、对象离开配置等),可以将该变化自动通知给诸如对象等的实体。这可以是所有变化,并且可以通过特定的变化来执行(例如当存在对与对象相绑定的主机的修改时通知给对象)。预订服务可以实施为检查目录的变化并将该变化公布给实体。
现在对照图6,公开了用于使用目录来传送属于工业控制配置的信息的示例系统600。尽管公开了用于公布主机能力的特定功能,但是应该理解,各方面可以涉及其它信息的公布,包括对象操作需要的信息。评价组件602可以评估至少一种识别出的能力,该评估的结果可以用于确定是否应公布识别出的能力。确定组件504和公开组件506可以用于帮助目录的增加。此外,处理组件302可以向系统500提供附加功能。预订组件604可以用于将改变的能力更新到先前意识到该公布的实体(例如根据在此公开的方面而执行预订任务)。
可以将敏感信息放置在目录中(例如所有权信息),并且访问组件606可以用于规定对目录信息的访问。访问分析组件608可以用于评估请求访问至少一个识别出的能力和/或将信息放入目录中的实体。可以执行该评估以确定为何进行请求、提供该请求的用户、与该请求相关的上下文信息(例如在相对短的量的时间内进行不寻常数量的请求)等。访问管理组件610可以用于确定该实体是否被允许查看识别出的能力。该确定可以基于访问权限、历史信息(例如请求者的、配置的、等等),通过用户提供的授权、能力的安全级别、对象的安全级别或其组合,以及基于其它标准。如果确定该实体被允许,则访问调整器组件612可以使实体能够观看该公布(例如完全的目录访问、受限的访问等等),或者如果确定该实体不被允许,则访问调整器组件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使用该主机的至少一种能力。
将能力分配给对象时可以出现匹配。然而,在更复杂的环境中,具有与绑定对象和主机相关的较大管理存在是有益的。例如,可以存在具有相对罕见的能力的主机(例如相对大的存储器),并且许多对象可以具有大存储器的操作需求。如果所有对象都与该主机相绑定,则该主机可能以慢的速率运行,该主机可能由于不能够处理所有对象而失效等等。因此,可以使用全面管理来确定什么对象可以与主机相绑定、对象何时可以使用主机、对象的优先级等。
资源管理组件802可以确定对象需要什么资源来按照某一方式操作(例如需要用于任何操作、需要用于特定的操作类型、需要以最有效的速率运行等)。资源管理组件802可以收集与可利用的主机和这些主机的能力相关的信息。可以针对相对大量的对象进行该收集,并且可以对工业控制配置是否具有足够的资源(例如通过主机提供)以满足对象要求进行检查。
在尝试满足资源需要时,组织组件804可以将对象与主机相配对。可以随机配对,可以基于由至少一种人工智能技术帮助的预测而进行配对,可以通过来自用户的指定而进行配对,或者通过上述的组合进行配对,以及通过其它实施进行配对。为了改进操作,组织组件804可以删除对象和主机中的绑定,并创建新的或不同的配对以满足各种资源需要。在一个例子中,初始对象可以与具有比需要的更高的能力的主机相绑定。如果要绑定需要更高能力的第二对象,则组织组件804可以删除初始对象与主机的绑定,建立与另一较低能力主机的新绑定,并创建第二对象与该高能力主机的新绑定。
现在对照图9,公开了用于管理与工业控制配置相关的资源(尤其是与对象和/或主机相关的资源)的示例系统900。系统900可以使用资源管理组件802和组织组件804来基于能力和操作需要而有组织地将主机和对象分组到一起。系统900可以使用处理组件302来改进操作。
测试组件902可以确定是否存在不满足对象的资源需要,并尝试修改该不足。比较器组件904可以识别与按照该方式操作的对象相关的主机的至少一个资源不足。例如,为了以希望的方式操作,该对象可以具有主机能够产生彩色图像的操作需求。如果不存在具有彩色能力的主机和/或该主机未被设置成公开彩色图像,则存在不足。比较器组件904可以尝试修正该不足(例如将主机设置从非彩色改变为彩色)。如果确定至少一个资源需要被满足,则关联组件906可以用于自动将对象与主机相匹配。
然而,有可能测试组件902不能解决该不足,并且对象继续具有不被满足的操作需求。因此,可以使用延续组件908来监测该配置,以确定是否出现具有满足该需要的潜力的变化(例如新的主机加入)。如果确实出现变化,则延续组件908可以指示组织组件804改变绑定。
相反地,延续组件908可以监测进入该配置的新的对象。可以使用发现组件910,发现组件910确定存在新加入到该配置的模块化对象,资源管理组件802可以确定新加入的模块化对象的资源需要。延续组件908可以使用平衡组件912,平衡组件912基于新加入的模块化对象的操作需要而确定是否应断开由关联组件进行的匹配。一旦断开,就可以将主机重新分配给新加入的对象。
现在对照图10,公开了用于尝试满足对象操作需要的示例系统1000。图2中的分组组件204可以尝试将对象与一个或多个主机分组以满足操作需要,然而,有可能所有操作需要都不能被满足。可以使用核对组件1002来确定在分组组件的操作后是否存在不被满足的需要。核对部件1002可以作为用于确定该配置的模块化对象具有未被满足的操作需要的装置来操作。当确定需要不被满足时,则需要识别组件1004可以确认该需要不被满足。需要识别组件1004可以用作用于确定不被满足的操作需要的装置。身份尝试组件1006可以尝试搜索新加入的主机和/或未发现的主机,以找到针对满足该需要的对象的匹配。身份尝试组件1006可以用作用于尝试识别可以满足未被满足的操作需要的主机的装置。
通知组件1008可以尝试使用通知来帮助满足操作需要。通知创建组件1010可以生成由需要未被满足的系统使用的消息。当主机进入该配置时,服务器(例如集中式服务器、分布式服务器)可以使用该通知来尝试快速解决不足。如果用于尝试识别的装置没有发现适合的主机,则通知创建组件1010可以作为用于创建需要主机的通知的装置来操作,该通知鉴于未被满足的操作需要而帮助评估新加入的或修改的主机。有可能多个对象具有至少一个未满足的操作需要,有时甚至是相同的需要。因此,通知优先组件1012可以区分通知的优先次序,以确保最重要的需要被首先及时解决。通知优先组件1012可以实现为用于基于具有相同的未满足的需要的多于一个的模块化对象而区分通知的优先次序的装置,使得与较高优先级的通知相关联的模块化对象首先获得对可用的能力的访问。
可以确定主机包括所需要的能力并且匹配组件1014(例如分组组件)可以将主机和对象自动匹配到一起。匹配组件1014可以作为用于将模块化对象自动地与由用于尝试识别的装置所识别出的被发现满足该操作需要的主机相匹配的装置来操作。验证组件1016可以执行关于是否出现成功匹配的检查。如果没有出现成功匹配,则匹配组件1014可以再次尝试执行匹配或尝试创建新的匹配。验证组件1016可以实现为用于验证新加入的主机的装置,当验证了新加入的主机时,用于尝试识别的装置再次操作。
现在对照图11,公开了用于表示主机104和对象102中的匹配的示例系统1100。对象102可以具有操作需求1102,例如,该需求可以是主机具有高分辨率大小和大存储器。主机104可以具有可由对象102使用的不同的能力1104。可以尝试创建与主机的绑定(用虚线代表),以使操作需求与适当的能力相匹配,或者在绑定适当的情况下只创建该绑定。如果多于一个主机与需要相匹配,则可以创建多个绑定,或者可以进行选择并使用一个结合。如果不存在匹配,则可以生成错误消息,或者可以进行连续观察以确定主机是否进入或者被修改以满足操作需求。
在示例操作中,可能希望创建最少量的绑定。因此,对象102与具有高分辨率大小和大存储器的能力1104的主机104相绑定。在替代性实施例中,由于多个主机满足至少一个需求,所以变得不过度依赖于一个主机104,这可能是有益的。因此,可以创建与和至少一个操作需求1102相匹配的所有主机之间的绑定。
现在对照图12,公开了用于将各种功能提供给在此公开的组件和方面的示例处理组件302。为了便于操作,处理组件302可以使用可以与其它装置相接洽的通信组件1202以传送信息,例如发送对元数据的请求、从辅助源接收元数据等。可以用无线方式、有线方式、采用安全技术(例如加密)等进行操作。另外,元数据传送可以是主动的(询问/响应)或被动的(例如对公共通信信号的监测)。此外,通信组件1202可以使用各种保护特征,例如对收集的元数据执行病毒扫描并阻挡确定为病毒的元数据。
获取组件1204可以从各种位置搜集信息(例如主机能力、操作需求等),包括收集对象离开配置的通知、确定主机是否被绑定到另一个对象等。可以进行过滤使得只收集可能相关的信息,首先搜集来自更可靠的源的信息,收集有限量的数据(例如基于存储器大小)以及其它过滤类型。
在各种确定和推断的执行中可以使用人工智能组件1206。应该理解,可以使用人工智能技术来实施本主题说明书中公开的确定和推断。根据实施本文中描述的各种自动化方面,人工智能组件1206可以采用用于从数据中学习然后与多个存储单元上动态存储的信息相关地得出推断和/或进行判断的多种方法之一(例如,隐马尔可夫模型(HMM)和相关原型依赖性模型、更一般的概率图模型(例如使用贝叶斯模型分数或近似通过结构搜索创建的贝叶斯网络)、线性分类器(例如支持向量机(SVM))、非线性分类器(例如被称为“神经元网络”方法的方法)、模糊逻辑方法以及执行数据融合的其它方法等)。另外,人工智能组件1206还可以包括用于捕获逻辑关系的方法,例如定理证明器或基于更启发式规则的专家系统。人工智能组件1206可以被表示为外部插件,在某些情况下由完全不同的一方(第三方)来设计。
不同的信息(例如收集的元数据、组件操作指令(例如通信组件1202)、源位置、组件本身等)可以被保持在存储器1208上。存储器1208可以布置成多个不同的配置,包括随机访问存储器、电池支持的存储器、硬盘、磁带等。可以在存储器1208上实现各种特征,例如压缩和自动备份(例如使用RAID配置)。另外,存储器1208可以作为可拆卸地耦合到处理器的存储器来操作。存储器1208可以用作其上可包含计算机程序的计算机可读介质。
例如,计算机程序可以包括用于评估指定用于结合工业控制配置操作的应用的程序代码。另外,该计算机程序可以包括用于尝试基于评估结果识别可操作该应用的主机的程序代码。在另一例子中,该计算机程序可以包括用于评估主机以确定至少一个托管能力的程序代码以及用于呈现至少一个确定的托管能力的程序代码(例如呈现给用户、呈现给实体、呈现给目录等)。
另外,该计算机程序可以包括用于评估需要计算资源来执行的多个对象实例和用于基于分析结果将该对象实例的至少一部分与计算资源相绑定的程序代码。该计算机程序还可以包括用于使用户能够通过使用逻辑图从物理控制或信息系统分离该绑定的程序代码以及用于将该逻辑图部署到多个物理系统的程序代码。
现在对照图13,公开了用于确定主机是否满足对象操作需求的示例方法1300。在动作1302处可以收集属于该对象的至少一个操作需求的元数据。示例元数据可以包括操作需求是什么、该操作需求是否关键等等。该操作需求可以是需要的(例如不满足要求就不进行操作)、关键的(例如如果不满足就存在故障变化)、优选的(例如希望要求被满足)、任选的(例如用户可自由决定)或其组合(例如在一方面是关键的而在另一方面是优选的)。
在动作1304处可以评估该元数据,并且可以定位具有满足该操作需求的潜力的主机。因此,动作1304可以起到定位满足未被满足的操作需求的、且可与比较的主机相结合地使用的至少一个主机的作用。可以从配置目录(例如分布式目录)访问主机位置,可以根据对主机的广泛请求的响应而访问主机位置,也可以通过其它方式访问主机位置。
在事件1306处可以评估定位的主机以确认特征元数据。在动作1308处可以在至少一个主机与对象之间进行比较。动作1308可以实施为将主机的至少一个能力与工业模块化对象的至少一个操作需求相比较(例如将关于该对象收集的元数据与根据评估该至少一个主机而学习到的元数据相比较)。
检查1310可以进行主机是否满足至少一个操作需求的确定。如果存在匹配,则可以执行动作1312,该动作1312可以包括如果确定该主机满足该操作需求,则将该主机链接到工业模块化对象。通过执行该绑定,可以确定链接的上下文情况(例如确定为什么存在)。可以基于利用动作1312的链接的上下文情况来修改与工业模块化对象相关的逻辑。例如,修改逻辑可以包括将数据与该工业模块化对象相聚集或者转换该逻辑。例如,当绑定到训练或测试系统时,可以将逻辑与模拟或单元测试“脚本”相聚集,以仿真系统的硬件或软件。另外,对于软件对象,系统可以转换对象的逻辑以更好地符合主机能力(例如从C#转换到Java的语言转换,反之亦然)。
然而,如果不存在匹配,在动作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相绑定;同样地,在事件1520处,在动作1518处选择的主机可以与模块化对象相绑定。尽管描述了模块化对象,但是应该理解,可以使用封装的对象以及其它类型的对象。
为了简化说明,可根据所公开的主题而实现的方法被示出和描述为一系列框。然而,应该理解和认识到,所要求保护的主题不受该框的顺序的限制,这是因为一些框可以以与在此描绘和描述的框不相同的顺序发生和/或与其它框图同时发生。另外,可能不需要所示出的全部框图来实现下文描述的方法。此外,还应该理解,本说明书始终公开的方法能够被存储在制造物件上,以便于将这种方法运输并传送到计算机。所用的术语“制造物件”旨在包含可以从任何计算机可读装置、载体或介质访问的计算机程序。
现在对照图16至24,该图示被出以提供关于在此公开的各方面的进一步指导。图16至图24以及相关文本被公开以提供鉴于所公开的新技术的示例信息,因此不应被理解为限定该新技术。图16公开了模块化对象的示例类图的示例配置1600。图17公开了对模块化对象的的示例类图的示例扩展的示例配置1700。
绑定处理通常包括取得需要计算资源来执行的对象实例并将其分配给这些计算资源。在一些情况下,较高等级的对象在其绑定时也需要资源的分配。在这点上,绑定处理仍然包括逻辑模块化组件和计算资源。控制系统视图通常示出了该系统中可用的所有逻辑计算资源。计算资源的逻辑视图的使用允许用户从物理控制和信息系统分离该绑定。这样,用户稍后可以将该逻辑视图部署到多个物理系统,如测试实验室、试生产作业线、或全规模生产厂。在测试实验室的情况下,可以在一个机箱中模拟所有逻辑控制器,并且可以在一个计算机上运行所有逻辑软件服务器。在试生产作业线中,可以使用硬件控制器(例如微控制器)和多个计算机,而在生产厂中可存在更大的控制器(例如处理自动化控制器)和附加的分布式计算机。
在智能带输送机(Smart Belt Conveyor)的例子中,存在逻辑、I/O连接和HMI面板,这些项目中的一些要考虑绑定。用户通过将对象实例(或实例组)分配给这些逻辑资源来创建绑定。为了进行该绑定,用户可以在控制系统中的计算资源的视图上绘制。图18公开了与控制器和人机界面(HMI)服务器相绑定的实例的示例显示1800。因此,可以自动绑定,也可以手动绑定。
关于显示1800,存在名为测试_线_101的逻辑配置与名为填充符_网络的物理控制和信息系统的全面绑定。此外,存在CLX_填充符单元与名为主_CPU的Logix控制器的绑定以及EOI_填充符与名为eoi_填充符_100的嵌入式HMI服务器的绑定。该动作将该单元中包含的所有对象实例虚拟地绑定到这些计算资源。在CLX_填充符内,用户可以选择将单独的对象实例绑定到适当的计算资源。例如,用户将驱动组件(例如运动轴)钳_协调、钳_左_伺服、轭_左_伺服、轭_右_伺服、钳_右_伺服等绑定到Sercos网络中的适当资源,同时槽_控制器和EOI_存储绑定到控制器1756-A4以及eoi_槽_存储_100。用户可以基于单独的对象容易地绑定到不同计算资源中的相同的计算资源。该绑定不需要它,就是因为所有这些实例都在同一线内,它们被绑定到相同的计算资源。选择计算资源来绑定是灵活的,并被留给用户来判断。但是,对象的层次组件通常提供更高级别的操作以对项目组执行这些绑定动作。
用于绑定这些对象实例的处理的部分(尤其是那些执行设备控制的处理)将物理I/O(输入/输出)连接到控制器中的可用的I/O模块(对象实例与该控制器相绑定),并分配针对对象的逻辑的执行进度表。控制系统视图中的控制器大致等同于离线控制器方案文件,并且同样包括通向该控制器中可利用的I/O模块和任务的路径。类似地,所示出的HMI服务器可以大致等同于HMI项目。
所以对于智能带输送机例子(图19),可存在需要被绑定的两个数字输入点(例如进料和出料照片眼)和三个驱动(例如进料轴、间隙轴和出料轴)。另外,需要调度阀门的逻辑以便以需要的速率执行。如果对象实例被分配给的控制器包含I/O配置和配置的周期性的运动轴执行速率,则该系统可以推荐选择以完成这些绑定。可以使用一些形式的向导来帮助用户接口中的绑定处理。图19公开了关于在该处理期间可以如何建立I/O点和逻辑执行需求的示例显示1900。
当被绑定到其逻辑计算资源时,可能需要将模块实例部署到一个或多个真实的物理计算资源以准备控制设备中的装置。这可以通过将控制系统视图中的逻辑资源连接到网络视图中的物理资源来完成。在图20中,公开了示例可视化设置2000,其可以是输送机公用接口和HMI面板。
还可以存在逻辑开发。例如,智能带输送机可以在自动控制器上运行,同时智能带输送机的其它部分(例如照片眼组件)可以采用具有板上处理器的RFID(射频识别)智能装置,并且其它方面可以由MES或EPR(企业资源计划)应用来支持(例如它可以通过帮助执行功能的手动步骤确定用户的顺序)。可以用适合于执行平台的语言来开发逻辑。例如,软件应用可以使用Java语言。
通常,输送机的所有应用和用户不关心逻辑的这些底层方面;该应用和用户使用输送机中的公用接口定义和共享的HMI面板。在许多情况下,对象的执行环境(例如控制器对MES执行环境)没有其提供的功能集(接口定义和语义)重要。图21公开了可以是用于多平台的输送机逻辑的示例显示2100。在由显示2100强调的说明性例子中,可以为自动控制器开发用于智能带输送机的逻辑,并且该逻辑包括对版本要执行速率的示例需求。同时,可以使用代理组件为传统装置开发用于简单输送机的逻辑。应该理解,模块化对象可以支持预定义的实例。
在模块化自动化的广泛范围内,可以为许多不同的平台开发用于模块化对象的逻辑。作为另一个例子,考虑被开发用于与天气频道的网站提供的网络服务相交互的天气预报对象。如果该系统可以支持允许用户用Java和/或.NET开发对象逻辑的软件执行环境,则用户可以为目标平台开发该对象。对于天气预报对象而言预定义接口、定义、对象以及实例的使用与针对任何其它模块化对象的使用相同。逻辑开发可能基于用户对平台的选择而变化。图22公开了天气预报对象中Java逻辑的示例显示2200,然而,应该理解,可以使用其它模块。
作为开发对象的逻辑的一部分,用户经常需要本地工作寄存器或变量以执行计算和算法功能。就像逻辑本身那样,该本地数据的定义对于逻辑的平台通常是专用的。在控制器中,典型地将私有标签用于本地数据,而在更高级的对象语言(如Java)中可以有变量说明。然而,用户目的可以是相同的:定义对象逻辑所私有的一些数据,因此不能被除了该逻辑之外的任何事物所访问。
例如,控制高速打包机中的运动轴的对象逻辑可能需要每5毫秒执行一次。另一方面,对于处理应用中的温度控制环,每1/2秒运行一次就足够了。较高级的报警管理对象的逻辑可能需要基于系统中的报警或事件来执行。
当对象被分配给计算资源来执行时,对象逻辑的执行要求的配置还帮助绑定处理。如果计算资源包含其支持的执行环境的定义(例如在控制器中具有配置的速率的任务定义),则该系统可以为对象的逻辑建议(或自动分配)适当的绑定。图23可以表示具有本地数据和执行要求的逻辑的示例显示2300。
为了提供所公开的主题的各方面的上下文,图24和25以及下面的讨论旨在提供对可以实现所公开的主题的各种方面的适当环境的简要的一般性描述。尽管上面已经在一个或多个计算机上运行的程序的计算机可执行指令的一般的上下文中描述了该主题,但是本领域的技术人员将会认识到,在此描述的主题也可以与其它程序模块相结合地实现。一般地,程序模块包括执行具体任务和/或实现具体抽象数据类型的例程、程序、组件、数据结构等。此外,本领域中的技术人员将理解,本发明方法可以用其它计算机系统配置来实现,包括单处理器、多处理器或多核处理器计算机系统、微型计算装置、大型计算机、以及个人计算机、手持计算装置(例如个人数字助理(PDA)、电话、手表...)、基于微处理器的或可编程的消费电子装置或工业电子装置等。所说明的方面还可以在由通过通信网络链接的远程处理装置执行任务的分布式计算环境中实现。然而,所要求保护的主题的一些但不是全部的方面可以在独立的计算机上实现。在分布式计算环境中,程序模块可以位于本地存储器装置和远程存储器装置中。
现在对照图24,示出了根据本主题说明书的计算环境2400的示意性框图。系统2400包括一个或多个客户端2402。客户端2402可以是硬件和/或软件(例如线程、处理、计算装置)。例如,客户端2402可以通过使用本说明书来容纳cookie和/或相关的上下文信息。
系统2400还包括一个或多个服务器2404。服务器2404还可以是硬件和/或软件(例如线程、处理、计算装置)。例如,服务器2404可以通过使用本说明书容纳线程来执行转换。客户端2402和服务器2404之间的一个可能的通信可以是以适合于在两个或更多个计算机处理之间传送的数据分组的形式。例如,该数据分组可以包括cookie和/或相关的上下文信息。系统2400包括可用于帮助客户端2402和服务器2404之间的通信的通信框架2406(例如诸如因特网之类的全局通信网络)。
可以通过有线(包括光纤)和/或无线技术来帮助通信。客户端2402可操作地连接到一个或多个客户端数据存储2408,该客户端数据存储2408可用于将信息存储到客户端2402本地(例如cookie和/或相关的上下文信息)。类似地,服务器2404可操作地连接到一个或多个服务器数据存储2410,该服务器数据存储2410可用于将信息存储到服务器2404本地。
现在对照图25,示出了可操作用于执行所公开的体系结构的计算机的框图。为了提供针对本主题说明书的各方面的另外的情况,图25和以下的讨论旨在提供对可在其中实现本说明书的各方面的适当的计算环境2500的简要的一般性说明。尽管上面已经在可在一个或多个计算机上运行的计算机可读指令的一般的上下文中描述了本说明书,但是本领域的技术人员将会认识到,还可以结合其它程序模块和/或作为硬件和软件的结合而实施本说明书。
一般来说,程序模块包括执行具体任务或实现具体抽象数据类型的例程、程序、组件、数据结构等。此外,本领域中的技术人员将理解,本发明方法可以用其它计算机系统配置来实现,包括单处理器或多处理器计算机系统、微型计算机、大型计算机、以及个人计算机、手持计算装置、基于微处理器或可编程的消费电子装置等,其中每个都可以可操作地耦合到一个或多个相关装置。
所描述的本申请的各方面还可以在由通过通信网络链接的远程处理装置执行特定任务的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于本地远程存储装置和远程存储装置中。
计算机典型地包括各种计算机可读介质。计算机可读介质可以是可由计算机访问的任何可用介质,并且包括易失性介质和非易失性介质、可拆卸的介质和不可拆卸的介质。作为示例(而不是限制),计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质包括在用于存储计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术中执行的易失性的和非易失性的的、可拆卸和不可拆卸的介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储器、磁盒、磁带、磁盘存储器或其它磁存储装置、或者任何可用于存储期望的信息且可由计算机访问的其它介质。
通信介质典型地包括计算机可读指令、数据结构、程序模块或诸如载波或其它传输机制之类的模块化数据信号中的其它数据,并且包括任何信息传送介质。术语“模块化数据信号”是指其特征中的一个或多个被设定或改变使得信息被编码到其中的信号。作为示例(而不是限制),通信介质包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声音介质、RF介质、红外介质以及其它无线介质之类的无线介质。上述的所有组合也应该包括在计算机可读介质的范围内。
现在对照图25,用于实现本说明书的各种方面的示例环境2500包括计算机2502,计算机2502包括处理单元2504、系统存储器2506和系统总线2508。系统总线2508将包括但不限于系统存储器2506的系统组件耦合到处理单元2504。处理单元2504可以是各种可商业获得的处理器或私有的专门配置的处理器。双微处理器和其它多处理器体系结构也可以被用作处理单元2504。
系统总线2508可以是可以使用各种可商业获得的总线体系结构而进一步与存储器总线(具有或不具有存储器控制器)、外围设备总线、本地总线相互连接的数种总线结构中的任一个。系统存储器2506包括只读存储器(ROM)2510和随机存取存储器(RAM)2512。基本输入/输出系统(BIOS)被存储在诸如ROM、EPROM、EEPROM之类的非易失性存储器2510中,该BIOS包含例如在启动期间帮助在计算机2502中的元件之间传递信息的基本例程。RAM 2512还可以包括诸如用于高速缓存数据的静态RAM之类的高速RAM。
计算机2502还包括内部硬盘驱动(HDD)2514(例如EIDE、SATA)、磁软盘驱动(FDD)2516(例如从可拆卸磁盘2518中读取或写入可拆卸磁盘2518)以及光盘驱动2520(例如读取CD-ROM盘2522、从诸如DVD之类的其它高容量光学介质读取或写入诸如DVD之类的其它高容量光学介质),其中内部硬盘驱动2514还可以被配置在适当的机箱(未示出)中用于外部使用。硬盘驱动2514、磁盘驱动2516和光盘驱动2520可以分别通过硬盘驱动接口2524、磁盘驱动接口2526和光学驱动接口2528而连接到系统总线2508。用于外部驱动实现的接口2524包括通用串行总线(USB)和IEEE 1394接口技术中的至少一个或二者。其它外部驱动连接技术也在本主题说明书的考虑之内。
所述驱动及其相关的计算机可读介质提供数据、数据结构、计算机可执行指令等的非易失性存储。对于计算机2502,所述驱动和介质以适当的数字格式容纳任何数据的存储。尽管上面描述的计算机可读介质涉及HDD、可拆卸磁盘以及诸如CD或DVD之类的可拆卸光学介质,但是本领域的技术人员应该理解,在示例操作环境中也可以使用可由计算机读取的其它类型的介质,例如压缩驱动、盒式磁带、闪存卡、盒式磁盘等,此外,任何这种介质都可以包含用于执行本说明书的方法的计算机可执行指令。
驱动和RAM 2512中可以存储多个程序模块,包括操作系统2530、一个或多个应用程序2532、其它程序模块2534和程序数据2536。操作系统、应用、模块和/或数据中的全部或部分也可以被高速缓存在RAM 2512中。应该理解,可以用各种私有的或可商业获得的操作系统或操作系统组合来实施本说明书。
用户可以通过诸如键盘2538之类的一个或多个有线/无线输入装置和诸如鼠标2540之类的指示装置来将命令和信息输入到计算机2502中。其它输入装置(未示出)可以包括麦克风、IR远程控制、游戏杆、游戏垫、记录笔、触摸屏等。这些和其它输入装置经常通过与系统总线2508相耦合的输入装置接口2542而连接到处理单元2504,但是它们也可以通过其它接口连接,例如并行端口、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的有线/或无线通信,LAN 2552还可以包括布置在其上的用于与无线适配器2556通信的无线接入点。
当在WAN网络环境中使用时,计算机2502可以包括调制解调器2558,或者被连接到WAN 2554上的通信服务器,或者具有用于在WAN2554上建立通信的其它装置(例如借助于因特网)。可以是内部装置或外部装置且可以是有线装置或无线装置的调制解调器2558经由输入装置接口2542而连接到系统总线2508。在网络化环境中,所描述的与计算机2502相关的程序模块或其部分可以被存储在远程存储器/存储装置2550中。应该理解,所示出的网络连接是示例,并且可以使用在计算机之间建立通信链路的其它装置。
计算机2502可操作用于与可操作地布置在无线通信中的任何无线装置或实体通信,该无线装置或实体例如是打印机、扫描器、桌上计算机和/或便携式计算机、便携式数据助手、通信卫星、与可无线检测的标签相关联的任何设备或位置(例如亭子、报摊、休息室)以及电话。这至少包括Wi-Fi和蓝牙(BluetoothTM)无线技术。因此,该通信可以是与传统网络一样的预先定义的结构,或者可以简单地是至少两个装置之间的adhoc通信。
Wi-Fi或无线保真(wireless fidelity)允许从家中的躺椅、宾馆房间中的床或者工作中的会议室无线地连接到因特网。Wi-Fi是与蜂窝电话中使用的无线技术相类似的无线技术,其能够使计算机等装置在室内外在基站的范围内的任何地方发送和接收数据。Wi-Fi网络使用被称为IEEE802.11(a、b、g等)的无线电技术来提供安全可靠快速的无线连接性。Wi-Fi网络可以用于将计算机互连、连接到因特网和有线网络(其使用IEEE 802.3或以太网)。Wi-Fi网络例如在未得到许可的2.4GHz和5GHz的无线电频带内以11Mbps(802.11a)或54Mbps(802.11b)数据速率操作,或者利用包含两个频带(双频带)的产品操作,所以该网络可以提供与在许多办公室中使用的基本10BaseT有线以太网相类似的现实性能。
已经针对几个装置之间的相互作用而描述了上述系统。应该理解,这种系统和组件可以包括在此指定的那些组件或子组件、所指定的组件或子组件中的一些、和/或附加组件。子组件也可以实现为可通信地耦合到除了母体组件内包括的组件之外的其它组件的组件。另外,应该注意,一个或多个组件可以被结合到提供聚集功能的单个组件中。该组件还可以与在此未具体描述但本领域技术人员已知的一个或多个其它组件相交互。
如同在此所使用的,术语“推断”或“推论”一般是指根据通过事件和/或数据获得的一组观测而推理或导出系统、环境和/或用户的状态的处理。可以使用推论来识别特定的上下文或动作,或者推论可以产生例如状态的概率分布。推论可以是概率性的,也就是说,基于对数据和事件的考虑而计算所关注状态的概率分布。推论还可以指用于从一组事件和/或数据构造更高级别事件的技术。这种推论导致从一组观测到的事件和/或存储的事件数据、所述事件在很近的时间内是否相关以及所述事件和数据是否来自一个或几个事件和数据源来构建新的事件或动作。
此外,所要求保护的主题可以实现为使用标准编程和/或工程技术来产生软件、固件、硬件或其任何组合以控制计算机实现所公开的主题的方法、设备或制品。在此使用的术语“制品”旨在包括可从任何计算机可读装置、载体或介质访问的计算机程序。例如,计算机可读介质可以包括但不限于磁存储装置(例如硬盘、软盘、磁条...)、光盘(例如压缩盘(CD)、数字通用盘(DVD)...)、智能卡以及闪存(例如卡、棒、键驱动...)。另外应该理解,可以使用载波来承载例如在发送和接收电子邮件时或者在访问诸如因特网或局域网(LAN)等的网络时使用的计算机可读电子数据。当然,本领域的技术人员将认识到,在不偏离所要求主题的范围或精神的情况下可以对该配置进行许多修改。
另外,在此处使用的词汇“示例性的”是指用作例子、实例或例证。在这本文中作为“示例性”描述的任何方面或设计都不一定被认为比其它方面或设计更优选或有利。相反地,使用词汇“示例性”旨在以具体的方式公开概念。如本申请中所使用的,术语“或”旨在指包括性的“或”而不是排他性的“或”。也就是说,除非特别指出或者从上下文来看很明显,否则“X使用A或B”意图指任何自然包括的置换。也就是说,如果X使用A;X使用B;或者X使用A和B二者,那么“X使用A或B”满足上述任何一个实例。另外,在本申请和所附权利要求中使用的冠词“一个”应该一般性地理解为表示“一个或多个”,除非特别指出或者从上下文可以明显看出针对单数形式。
上面所描述的包括本主题说明书的例子。当然,不可能为了描述本主题说明书而描述组件和方法的每一个可想到的组合,但是本领域的普通技术人员可以认识到本主题说明书的许多进一步组合和置换是可能的。因此,本主题说明书旨在包括落入所附权利要求范围内的所有这种改变、修改和变体。此外,就本详细的说明书或权利要求中使用的术语“包括”而言,该术语旨在以与术语“包含”在权利要求中被用作过渡词时所被解释的意思相类似的方式地是包括性的。
方案1:一种能够在工业控制环境或工业信息环境中实现的系统,包括:评估组件,其评估至少一个主机的至少一种能力和至少一个工业模块化对象的至少一个操作需求;以及分组组件,其基于以下操作需求而将该主机与该工业模块化对象相匹配:被该被匹配的主机的能力所满足的被匹配的对象的操作需求。
方案2:根据方案1所述的系统,如果存在一个匹配主机,则每个工业模块化对象与一个主机相匹配,或者如果存在两个或更多个匹配主机,则每个工业模块化对象与所有满足该工业模块化对象的操作需求的主机相匹配。
方案3:根据方案2所述的系统,还包括接洽组件,如果存在一个匹配时,该接洽组件将与所述操作需求相匹配的主机呈现给用户,或者如果存在两个或更多个匹配时,该接洽组件将所有与所述操作需求相匹配的主机呈现给用户。
方案4:根据方案3所述的系统,还包括:帮助组件,其使用户能够选择至少一个主机以与所述工业模块化对象相关联;以及实施组件,其执行所选择的关联。
方案5:根据方案3所述的系统,还包括优化组件,该优化组件基于所估计的主机、工业模块化对象和工业控制配置的性能、主机、工业模块化对象和工业控制配置的实际性能、或其组合而向用户建议用于与所述工业模块化对象相关联的主机。
方案6:根据方案1所述的系统,还包括故障组件,当没有出现匹配时,该故障组件通过接洽组件向用户通知不存在针对所述工业模块化对象的匹配。
方案7:一种能够在工业控制环境或工业信息环境中实现的方法,包括:将主机的至少一种能力与工业模块化对象的至少一个操作需求相比较;以及确定所述主机是否满足所述至少一个操作需求。
方案8:根据方案7所述的方法,还包括如果确定所述主机不满足所述操作需求,则发现何种操作需求未被满足。
方案9:根据方案8所述的方法,还包括定位满足未被满足的操作需求的、且被与被比较的主机相协同地使用的至少一个主机。
方案10:根据方案9所述的方法,还包括构建可用于满足所述操作需求的主机组,该主机组包括被比较的主机和至少一个定位的主机。
方案11:根据方案10所述的方法,对所述主机组的构建使得使用最小数量的主机来满足所述操作要求。
方案12:根据方案7所述的方法,所述操作要求是需要的、关键的、优选的、任选的、或其组合。
方案13:根据方案7所述的方法,还包括如果确定所述主机满足所述操作需求,则将所述主机链接到所述工业模块化对象。
方案14:根据方案13所述的方法,还包括基于所述链接的上下文情况而修改与所述工业模块化对象相关联的逻辑。
方案15:根据方案14所述的方法,还包括确定所述链接的所述上下文情况。
方案16:根据方案14所述的方法,修改所述逻辑包括将数据与所述工业模块化对象相聚集或者变换所述逻辑。
方案17:一种包含在计算机可读介质上的计算机程序,包括:用于评估被指定用于与工业控制配置相结合地操作的应用的程序代码;以及用于基于所述评估的结果而尝试识别可以在所述应用上操作的主机的程序代码。
方案18:一种包含在计算机可读介质上的计算机程序,包括:用于评估需要计算资源来执行的对象实例的程序代码;以及用于基于所述分析结果而将所述多个对象实例的至少部分与所述计算资源相绑定的程序代码。
方案19:根据方案18所述的计算机程序,还包括用于使用户能够通过使用逻辑视图从物理控制或信息系统分离所述绑定的程序代码。
方案20:根据方案19所述的计算机程序,还包括用于将所述逻辑视图部署到多个物理系统的程序代码。

Claims (10)

1.一种能够在工业控制环境或工业信息环境中实现的系统,包括:
评估组件,所述评估组件评估至少一个主机的至少一种能力以及至少一个工业模块化对象的至少一个操作需求;以及
分组组件,所述分组组件基于以下操作需求而将主机与工业模块化对象相匹配:被该被匹配的主机的能力所满足的、该被匹配的对象的操作需求。
2.根据权利要求1所述的系统,如果存在一个匹配主机,则每个工业模块化对象与一个主机相匹配,或者如果存在两个或更多个匹配主机,则每个工业模块化对象与所有满足该工业模块化对象的操作需求的主机相匹配。
3.根据权利要求2所述的系统,还包括接洽组件,如果存在一个匹配,则所述接洽组件将与所述操作需求相匹配的主机呈现给用户,或者如果存在两个或更多个匹配,则所述接洽组件将所有与所述操作需求相匹配的主机呈现给用户。
4.根据权利要求1所述的系统,还包括故障组件,当未出现匹配时,所述故障组件通过接洽组件向用户通知不存在针对所述工业模块化对象的匹配。
5.一种能够在工业控制环境或工业信息环境中实现的方法,包括:
将主机的至少一种能力与工业模块化对象的至少一个操作需求相比较;以及
确定所述主机是否满足所述至少一个操作需求。
6.根据权利要求5所述的方法,还包括:如果确定所述主机不满足所述操作需求,则发现何种操作需求未被满足。
7.根据权利要求6所述的方法,还包括:定位满足未被满足的操作需求的、且被与被比较的主机相协同地使用的至少一个主机。
8.根据权利要求7所述的方法,还包括:构建可用于满足所述操作需求的主机组,所述主机组包括被比较的主机和至少一个被定位的主机。
9.根据权利要求5所述的方法,还包括:如果确定所述主机满足所述操作需求,则将所述主机链接到所述工业模块化对象。
10.一种在计算机可读介质上包含的计算机程序,包括:
用于评估需要计算资源来执行的对象实例的程序代码;以及
用于基于所述分析的结果而将所述对象实例的至少部分与所述计算资源相绑定的程序代码。
CN2009101776589A 2008-09-30 2009-09-30 能够在工业控制环境或工业信息环境中实现的系统和方法 Active CN101713964B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/241,319 US8818757B2 (en) 2008-09-30 2008-09-30 Modular object and host matching
US12/241,319 2008-09-30

Publications (2)

Publication Number Publication Date
CN101713964A true CN101713964A (zh) 2010-05-26
CN101713964B CN101713964B (zh) 2013-09-11

Family

ID=41528544

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101776589A Active CN101713964B (zh) 2008-09-30 2009-09-30 能够在工业控制环境或工业信息环境中实现的系统和方法

Country Status (3)

Country Link
US (1) US8818757B2 (zh)
EP (1) EP2169599A1 (zh)
CN (1) CN101713964B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109088759A (zh) * 2018-08-09 2018-12-25 上海通群科技有限公司 一种智能网络知识共享系统
CN111045408A (zh) * 2019-12-23 2020-04-21 深圳市安科讯电子制造有限公司 一种分布式自动化控制系统

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9058032B2 (en) 2006-09-29 2015-06-16 Rockwell Automation Technologies, Inc. Hosting requirements for services
US8776092B2 (en) 2006-09-29 2014-07-08 Rockwell Automation Technologies, Inc. Multiple interface support
US9261877B2 (en) 2006-09-29 2016-02-16 Rockwell Automation Technologies, Inc. Multiple machine interface
US8818757B2 (en) 2008-09-30 2014-08-26 Rockwell Automation Technologies, Inc. Modular object and host matching
US8041435B2 (en) 2008-09-30 2011-10-18 Rockwell Automation Technologies, Inc. Modular object dynamic hosting
US8265775B2 (en) 2008-09-30 2012-09-11 Rockwell Automation Technologies, Inc. Modular object publication and discovery
US8732658B2 (en) 2006-09-29 2014-05-20 Rockwell Automation Technologies, Inc. Layered interface in an industrial environment
US9217998B2 (en) 2006-09-29 2015-12-22 Rockwell Automation Technologies, Inc. Management and development of an industrial environment
US8078296B2 (en) 2006-09-29 2011-12-13 Rockwell Automation Technologies, Inc. Dynamic procedure selection
US9182755B2 (en) 2010-08-26 2015-11-10 Rockwell Automation Technologies, Inc. Automated operator interface generation in a control system
US8798775B2 (en) 2011-06-28 2014-08-05 Rockwell Automation Technologies, Inc. Binding graphic elements to controller data
US9031975B2 (en) 2012-11-06 2015-05-12 Rockwell Automation Technologies, Inc. Content management
US8898634B2 (en) * 2012-11-06 2014-11-25 Rockwell Automation Technologies, Inc. Customized object design for industrial automation application
US9563861B2 (en) 2012-11-06 2017-02-07 Rockwell Automation Technologies, Inc. Integration of workflow and library modules
US9355193B2 (en) 2012-11-06 2016-05-31 Rockwell Automation Technologies, Inc. Object design data model
WO2015172814A1 (de) * 2014-05-13 2015-11-19 Siemens Aktiengesellschaft Verfahren und engineering-werkzeug zum automatisieren einer industriellen anlage
DE102017103017A1 (de) * 2017-02-15 2018-08-16 Sig Technology Ag Verpackungsanlagendatenvermittlung sowie Verfahren zum Betreiben einer Verpackungsanlagendatenvermittlung
CN112764746B (zh) * 2019-11-01 2024-04-09 百度在线网络技术(北京)有限公司 数据处理方法、装置、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6104962A (en) * 1998-03-26 2000-08-15 Rockwell Technologies, Llc System for and method of allocating processing tasks of a control program configured to control a distributed control system

Family Cites Families (104)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05197573A (ja) 1991-08-26 1993-08-06 Hewlett Packard Co <Hp> タスク指向パラダイムによるタスク管理システム
US5522066A (en) 1992-04-16 1996-05-28 Industrial Technology Research Institute Interface for accessing multiple records stored in different file system formats
US5485620A (en) 1994-02-25 1996-01-16 Automation System And Products, Inc. Integrated control system for industrial automation applications
US5680619A (en) 1995-04-03 1997-10-21 Mfactory, Inc. Hierarchical encapsulation of instantiated objects in a multimedia authoring system
US5812394A (en) 1995-07-21 1998-09-22 Control Systems International Object-oriented computer program, system, and method for developing control schemes for facilities
DE19614789C1 (de) 1996-04-06 1997-09-25 Daimler Benz Ag Verfahren zur automatischen Konfigurierung eines technischen Systems unter Berücksichtigung unterschiedlicher Qualitäten von Komponenten-Außenwirkungen
US6868538B1 (en) 1996-04-12 2005-03-15 Fisher-Rosemount Systems, Inc. Object-oriented programmable controller
US6437805B1 (en) 1996-09-23 2002-08-20 National Instruments Corporation System and method for accessing object capabilities in a graphical program
US6067299A (en) 1997-04-16 2000-05-23 Sprint Communications Company, L.P. Communications system for providing ATM connections and echo cancellation
US6154684A (en) 1997-06-14 2000-11-28 Rockwell Technologies, Llc Template language for industrial controller programming
JPH1155324A (ja) 1997-07-31 1999-02-26 Fujitsu Ltd コンピュータネットワークの通信システム
US5946681A (en) * 1997-11-28 1999-08-31 International Business Machines Corporation Method of determining the unique ID of an object through analysis of attributes related to the object
US6161051A (en) 1998-05-08 2000-12-12 Rockwell Technologies, Llc System, method and article of manufacture for utilizing external models for enterprise wide control
US6505247B1 (en) 1998-08-21 2003-01-07 National Instruments Corporation Industrial automation system and method for efficiently transferring time-sensitive and quality-sensitive data
EP1116104B1 (en) 1998-09-03 2003-11-26 Kimono Limited Development method for a data processing system
US6269254B1 (en) 1998-09-28 2001-07-31 Motorola, Inc. Radio communications device and method with API between user application program and telephony program and method
US6718533B1 (en) 1999-02-26 2004-04-06 Real-Time Innovations, Inc. Method for building a real-time control system with mode and logical rate
US7089530B1 (en) 1999-05-17 2006-08-08 Invensys Systems, Inc. Process control configuration system with connection validation and configuration
US7096465B1 (en) 1999-05-17 2006-08-22 Invensys Systems, Inc. Process control configuration system with parameterized objects
US7272815B1 (en) 1999-05-17 2007-09-18 Invensys Systems, Inc. Methods and apparatus for control configuration with versioning, security, composite blocks, edit selection, object swapping, formulaic values and other aspects
US6615166B1 (en) 1999-05-27 2003-09-02 Accenture Llp Prioritizing components of a network framework required for implementation of technology
US6788980B1 (en) 1999-06-11 2004-09-07 Invensys Systems, Inc. Methods and apparatus for control using control devices that provide a virtual machine environment and that communicate via an IP network
US7069101B1 (en) 1999-07-29 2006-06-27 Applied Materials, Inc. Computer integrated manufacturing techniques
US6947798B2 (en) 1999-09-24 2005-09-20 Rockwell Software Inc. System and method for developing software programs by way of multiple applications and users
US6850808B2 (en) 1999-09-24 2005-02-01 Rockwell Software Inc. Method and system for developing a software program using compound templates
US6477435B1 (en) 1999-09-24 2002-11-05 Rockwell Software Inc. Automated programming system for industrial control using area-model
US7020697B1 (en) 1999-10-01 2006-03-28 Accenture Llp Architectures for netcentric computing systems
US9785140B2 (en) 2000-02-01 2017-10-10 Peer Intellectual Property Inc. Multi-protocol multi-client equipment server
WO2001067192A2 (en) 2000-03-06 2001-09-13 Siemens Technology-To-Business Center Llc Programming automation by demonstration
US20010034557A1 (en) 2000-03-10 2001-10-25 Hudson Edison T. Hardware architecture and method for distributed machine control
US20020059272A1 (en) 2000-04-20 2002-05-16 Porter Edward W. Apparatuses, methods, programming, and propagated signals for creating, editing, organizing and viewing collaborative databases
AUPQ808700A0 (en) 2000-06-09 2000-07-06 Honeywell Limited Human-machine interface
FR2813471B1 (fr) 2000-08-31 2002-12-20 Schneider Automation Systeme de communication d'un equipement d'automatisme base sur le protocole soap
US6539271B2 (en) 2000-12-27 2003-03-25 General Electric Company Quality management system with human-machine interface for industrial automation
DE10129564A1 (de) 2001-02-16 2002-09-19 Siemens Ag Vorrichtung und Verfahren zur Erstellung von Bedienungskomponenten
US7054878B2 (en) 2001-04-02 2006-05-30 Accenture Global Services Gmbh Context-based display technique with hierarchical display format
US7395122B2 (en) 2001-07-13 2008-07-01 Siemens Aktiengesellschaft Data capture for electronically delivered automation services
US7290030B2 (en) 2001-07-13 2007-10-30 Rockwell Automation Technologies, Inc. Internet object based interface for industrial controller
US7292900B2 (en) 2001-07-13 2007-11-06 Siemens Aktiengesellschaft Power distribution expert system
US7080066B1 (en) 2001-08-09 2006-07-18 Ncr Corporation Systems and methods for refining a decision-making process via executable sequences
US7197493B2 (en) 2001-12-21 2007-03-27 Lifestory Productions, Inc. Collection management database of arbitrary schema
US6789739B2 (en) 2002-02-13 2004-09-14 Howard Rosen Thermostat system with location data
US7051169B2 (en) 2002-02-26 2006-05-23 Kyocera Wireless Corp. Memory configuration for a wireless communications device
US7058712B1 (en) 2002-06-04 2006-06-06 Rockwell Automation Technologies, Inc. System and methodology providing flexible and distributed processing in an industrial controller environment
US7363338B2 (en) 2002-07-17 2008-04-22 Intel Corporation Selective assembly loading and execution based on platform capabilities
US7016759B2 (en) 2002-08-23 2006-03-21 Siemens Aktiengesellschaft Active resource control system method & apparatus
US7146232B2 (en) 2002-12-16 2006-12-05 Rockwell Automation Technologies, Inc. Agent program environment
US7111287B2 (en) 2003-01-10 2006-09-19 International Business Machines Corporation Global processor resource assignment in an assembler
US7043311B2 (en) 2003-02-18 2006-05-09 Fisher-Rosemount Systems, Inc. Module class objects in a process plant configuration system
US20040230328A1 (en) 2003-03-21 2004-11-18 Steve Armstrong Remote data visualization within an asset data system for a process plant
JP2005071227A (ja) 2003-08-27 2005-03-17 Sony Corp メタデータ流通管理システム,メタデータ流通管理装置,個人別メタデータ管理装置,クライアント端末,メタデータ流通管理方法およびコンピュータプログラム
US7225037B2 (en) 2003-09-03 2007-05-29 Unitronics (1989) (R″G) Ltd. System and method for implementing logic control in programmable controllers in distributed control systems
US7324856B1 (en) 2003-09-25 2008-01-29 Rockwell Automation Technologies, Inc. Autogeneration of code via human-machine interfaces (HMI) and self-building HMI
US7266677B1 (en) 2003-09-25 2007-09-04 Rockwell Automation Technologies, Inc. Application modifier based on operating environment parameters
US7194446B1 (en) 2003-09-25 2007-03-20 Rockwell Automation Technologies, Inc. Location-based execution of software/HMI
US7835931B2 (en) 2003-10-03 2010-11-16 Meta Command Systems, Inc. Method and system for network-based, distributed, real-time command and control of an enterprise
US7716357B2 (en) 2003-10-24 2010-05-11 Microsoft Corporation Service discovery and publication
US7904819B2 (en) * 2003-12-03 2011-03-08 International Business Machines Corporation Self-configuring component for recognizing and transforming host data
SE527467C2 (sv) 2003-12-22 2006-03-14 Abb Research Ltd Förfarande för positionering och ett positioneringssystem
JP2005196768A (ja) * 2004-01-07 2005-07-21 Internatl Business Mach Corp <Ibm> ワークフロー・システムおよび方法
US20050229004A1 (en) 2004-03-31 2005-10-13 Callaghan David M Digital rights management system and method
US7653008B2 (en) 2004-05-21 2010-01-26 Bea Systems, Inc. Dynamically configurable service oriented architecture
US8661420B2 (en) 2004-08-03 2014-02-25 Oracle International Corporation System and method for runtime interface versioning
US7594226B2 (en) 2004-08-16 2009-09-22 National Instruments Corporation Implementation of packet-based communications in a reconfigurable hardware element
US20060059127A1 (en) 2004-09-15 2006-03-16 International Business Machines Corporation Method, system, and storage medium for facilitating application development
WO2006043012A1 (en) 2004-10-22 2006-04-27 New Technology/Enterprise Limited Data processing system and method
US7509249B2 (en) 2005-06-07 2009-03-24 Rockwell Automation Technologies, Inc. Event-driven component mirroring method and system
US7418305B2 (en) 2005-02-09 2008-08-26 Siemens Corporate Research, Inc. Method of generating a component of a component-based automation system
US7680855B2 (en) 2005-03-11 2010-03-16 Yahoo! Inc. System and method for managing listings
US7748027B2 (en) 2005-05-11 2010-06-29 Bea Systems, Inc. System and method for dynamic data redaction
US7734619B2 (en) 2005-05-27 2010-06-08 International Business Machines Corporation Method of presenting lineage diagrams representing query plans
US7233830B1 (en) 2005-05-31 2007-06-19 Rockwell Automation Technologies, Inc. Application and service management for industrial control devices
US7676539B2 (en) 2005-06-09 2010-03-09 International Business Machines Corporation Methods, apparatus and computer programs for automated problem solving in a distributed, collaborative environment
KR100544514B1 (ko) 2005-06-27 2006-01-24 엔에이치엔(주) 검색 쿼리 연관성 판단 방법 및 시스템
US8099178B2 (en) 2005-08-22 2012-01-17 Trane International Inc. Building automation system facilitating user customization
US20070073850A1 (en) 2005-09-29 2007-03-29 Rockwell Automation Technologies, Inc. Industrial control device configuration and discovery
US7650196B2 (en) 2005-09-30 2010-01-19 Rockwell Automation Technologies, Inc. Production monitoring and control system having organizational structure-based presentation layer
US7945895B2 (en) 2005-10-17 2011-05-17 National Instruments Corporation Graphical programs with FIFO structure for controller/FPGA communications
US7627385B2 (en) 2005-11-14 2009-12-01 Rockwell Automation Technologies, Inc. Historian module for use in an industrial automation controller
US7571208B2 (en) 2005-11-30 2009-08-04 Microsoft Corporation Creating proxies from service description metadata at runtime
US7962888B2 (en) 2006-04-11 2011-06-14 Rojer Alan S Producing unitary class definitions from module specifications
US20070250630A1 (en) 2006-04-25 2007-10-25 Blanding William H Method and a system of generating and evaluating potential resource allocations for an application
US7793147B2 (en) 2006-07-18 2010-09-07 Honeywell International Inc. Methods and systems for providing reconfigurable and recoverable computing resources
US8898633B2 (en) 2006-08-24 2014-11-25 Siemens Industry, Inc. Devices, systems, and methods for configuring a programmable logic controller
US7912560B2 (en) 2006-09-29 2011-03-22 Rockwell Automation Technologies, Inc. Module and controller operation for industrial control systems
US7538664B2 (en) 2006-09-29 2009-05-26 Rockwell Automation Technologies, Inc. Customized industrial alarms
US8041435B2 (en) 2008-09-30 2011-10-18 Rockwell Automation Technologies, Inc. Modular object dynamic hosting
US7676279B2 (en) 2006-09-29 2010-03-09 Rockwell Automation Technologies, Inc. Services for industrial control systems
US8265775B2 (en) 2008-09-30 2012-09-11 Rockwell Automation Technologies, Inc. Modular object publication and discovery
US20080082577A1 (en) 2006-09-29 2008-04-03 Rockwell Automation Technologies, Inc. Module classification and searching for industrial control systems
US8028045B2 (en) 2006-09-29 2011-09-27 Rockwell Automation Technologies, Inc. Web-based configuration server for automation systems
US7835805B2 (en) 2006-09-29 2010-11-16 Rockwell Automation Technologies, Inc. HMI views of modules for industrial control systems
US8818757B2 (en) 2008-09-30 2014-08-26 Rockwell Automation Technologies, Inc. Modular object and host matching
US20080092131A1 (en) 2006-10-16 2008-04-17 Invensys Systems, Inc. Centralized management of human machine interface applications in an object-based supervisory process control and manufacturing information system environment
US7684876B2 (en) 2007-02-27 2010-03-23 Rockwell Automation Technologies, Inc. Dynamic load balancing using virtual controller instances
US7778713B2 (en) 2007-02-27 2010-08-17 Rockwell Automation Technologies, Inc. Construction of an industrial control system using multiple instances of industrial control engines
US8296733B2 (en) 2007-09-20 2012-10-23 Siemens Aktiengesellschaft Systems, devices, and/or methods for managing program logic units
US8327130B2 (en) 2007-09-25 2012-12-04 Rockwell Automation Technologies, Inc. Unique identification of entities of an industrial control system
KR101473337B1 (ko) 2007-10-01 2014-12-16 삼성전자 주식회사 컴포넌트 모델을 기반으로 하는 인터페이스 호환성 결정 방법 및 장치
JP4383476B2 (ja) * 2007-10-05 2009-12-16 新日本製鐵株式会社 プラント制御システム及び方法
US8479178B2 (en) 2008-06-27 2013-07-02 Microsoft Corporation Compiler in a managed application context
US7860944B2 (en) 2008-09-30 2010-12-28 Rockwell Automation Technologies, Inc. Aggregation server with information visualization panel subscription model
US20100088104A1 (en) 2008-10-06 2010-04-08 Deremer Robert Systems and methods for providing real-time data notification and related services
US7970830B2 (en) 2009-04-01 2011-06-28 Honeywell International Inc. Cloud computing for an industrial automation and manufacturing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6104962A (en) * 1998-03-26 2000-08-15 Rockwell Technologies, Llc System for and method of allocating processing tasks of a control program configured to control a distributed control system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109088759A (zh) * 2018-08-09 2018-12-25 上海通群科技有限公司 一种智能网络知识共享系统
CN111045408A (zh) * 2019-12-23 2020-04-21 深圳市安科讯电子制造有限公司 一种分布式自动化控制系统

Also Published As

Publication number Publication date
US20100082123A1 (en) 2010-04-01
CN101713964B (zh) 2013-09-11
EP2169599A1 (en) 2010-03-31
US8818757B2 (en) 2014-08-26

Similar Documents

Publication Publication Date Title
CN101713964B (zh) 能够在工业控制环境或工业信息环境中实现的系统和方法
CN101713963B (zh) 模块化对象动态托管
CN101713962B (zh) 模块化对象的公布和发现
US11044221B2 (en) Integration of devices through a social networking platform
US10855800B2 (en) Managing device profiles in the Internet-of-Things (IoT)
CN105706469B (zh) 管理机器对机器设备
CA3195875A1 (en) Extensible object model and graphical user interface enabling modeling
CN1737790B (zh) 用于工业系统的至少一部分的自动化配置的装置和方法
KR20200088803A (ko) 분산형 소프트웨어 정의식 산업 시스템
CN103309703A (zh) 用于在网络化计算环境中标识最佳升级方案的系统和方法
CN104142664A (zh) 使用大数据的工业产品的预测维护
CN114137910B (zh) 工业自动化资产和控制项目分析
CN104142663A (zh) 云平台中的工业设备和系统证明
CN104142630A (zh) 用信息叠加把基于云的数据用于工业自动化环境的虚拟化
CN104142661A (zh) 使用基于云的数据用于工业自动化系统训练
US8898099B2 (en) Library synchronization between definitions and instances
CN101424944A (zh) 集成控制模块的mes装置
US20180167467A1 (en) Automated learning universal gateway
US20100293263A1 (en) Method and system for managing a network of distributed entities
CN114237164B (zh) 工业开发中心库和设计工具
US20230146707A1 (en) Controlflash plus hardware serialization and registration
CN114167814B (zh) 工业开发中心的数字工程
US20230091963A1 (en) Industrial automation project design telemetry
Biswas et al. Security of the Tomorrow's Cyber Physical Systems
Lopes Intelligent IoT and Dynamic Network Semantic Maps for more Trustworthy Systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: ohio

Patentee after: Rockwell automation technologies

Address before: ohio

Patentee before: Rockwell Automation Tech Inc.