首页> 中国专利> 用于发现工业自动化环境中的控制系统数据的爬取器

用于发现工业自动化环境中的控制系统数据的爬取器

摘要

用于对工业数据进行索引的系统和方法。工业数据索引系统有利于发现和索引位于多个不同数据平台上的全厂范围的数据。索引系统自动清点遍及工厂定位的工业设备和其他数据源,并且识别每个数据源上的可用数据项。索引系统在后续可以被搜索以定位感兴趣的数据项或标记的联合数据模型中对发现的数据项进行索引。联合数据模型记录在不同种类数据源上发现的对数据项的引用,不同种类数据源包括但不限于工业控制器程序、人机接口应用、数据历史、设备文档存储、库存跟踪系统以及其他这种数据源。索引系统还发现和记录数据项之间的相互依赖关系,该相互依赖关系可以用来改善返回给用户的搜索结果的相关性。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-08

    授权

    授权

  • 2017-12-05

    著录事项变更 IPC(主分类):G06F17/30 变更前: 变更后: 申请日:20151109

    著录事项变更

  • 2016-06-15

    实质审查的生效 IPC(主分类):G05B19/04 申请日:20151109

    实质审查的生效

  • 2016-05-18

    公开

    公开

说明书

技术领域

本文中公开的主题一般涉及工业自动化系统,更具体地,涉及能够发 现和记录一系列不同数据源平台上的全厂工业数据以用于后续搜索和检 索目的的数据发现和索引系统。

发明内容

下面给出简要总结以便提供对在本文中所描述的一些方面的基本理 解。该总结并不是排他性概述,也非旨在识别关键/重要要素或限定本文 中所述的各个方面的范围。该总结的目的仅是以简单的形式给出一些概念 作为稍后给出的更为详细的描述的前序。

在一个或更多个实施方式中,提供了一种用于索引工业数据的系统, 该系统包括:发现部件,该发现部件被配置成发现工业环境的多个数据源 上分布的可用数据项,其中多个数据源至少包括与第一数据平台对应的第 一数据源和与第二数据平台对应的第二数据源;以及索引部件,该索引部 件被配置成基于关于发现部件所生成的可用数据项的信息来生成记录数 据项的各位置的可搜索联合数据模型。

此外,一个或更多个实施方式提供了一种用于发现和索引多平台工业 数据的方法,该方法包括:通过包括处理器的系统在工业环境的工厂网络 上部署发现代理;通过该系统从发现代理接收关于位于工业环境的多个数 据源上的可用数据项的信息,其中多个数据源至少包括与第一数据平台对 应的第一数据源和与第二数据平台对应的第二数据源;以及通过该系统生 成索引数据项的各位置的联合数据模型。

此外,根据一个或更多个实施方式,提供了一种存储有指令的非暂态 计算机可读介质,该指令响应于执行而使系统执行操作,该操作包括:在 工业环境的工厂网络上部署发现代理;从发现代理接收关于位于工业环境 的多个数据源上的可用数据项的信息,其中多个数据源至少包括与第一数 据平台对应的第一数据源和与第二数据平台对应的第二数据源;生成索引 数据项的各位置的联合数据模型。

为了实现前述目的以及相关目的,在本文中结合下面的描述以及附图 描述了某些说明性方面。这些方面指出了可以实践的各种方式,所有这些 方式旨在被本文所覆盖。在结合附图考虑的情况下,根据下面的详细描述, 其他优点和新颖性特征可以变得明显。

附图说明

图1是示例工业控制环境的框图。

图2是示出工业数据联合的概念图。

图3是示例多平台工业数据索引系统的框图。

图4是包括遍及工业环境发现和索引多平台数据的工业数据索引系 统的一般示例构造的框图。

图5是示出多平台工业搜索系统的部件的框图。

图6是示出通过工业数据索引系统执行的处理的框图。

图7是示出利用在工业控制器上实现的索引功能来产生预索引子模 型的图。

图8是示出将预索引子模型提交至工业数据索引系统的图。

图9是示出其中发现代理收集和索引消息日志信息的构造的图。

图10是能够向工业数据索引系统自报告的示例智能设备的图。

图11是示出通过转换部件转换所发现的数据的图。

图12是能够通过多平台工业搜索系统的传递的示例搜索结果屏幕。

图13是包括控制器逻辑引用结果的扩展列表的示例搜索结果屏幕。

图14是工业搜索系统响应于选择与控制器逻辑引用结果对应的“启 动程序”按钮而通过工业搜索系统启动的示例控制器逻辑开发屏幕。

图15是包括可视化引用搜索结果的扩展列表的示例搜索结果屏幕。

图16是通过选择与可视化引用搜索结果相关联的“启动程序”按钮 而引发示例HMI屏幕。

图17是工业搜索系统的一般化的基于云的实施的概念图。

图18是示出基于云的工业搜索服务的框图。

图19是能够通过工业搜索系统服务于客户端设备的示例家用接口屏 幕。

图20是用于识别和索引工业环境中的多平台数据的示例方法的流程 图。

图21是用于在工厂设施中进行部署之前预索引工业控制系统的可用 数据项的示例方法的流程图。

图22是用于发现和索引多平台工业数据的项之间的关系的示例方法 的流程图。

图23是示例计算环境。

图24是示例网络环境。

具体实施方式

现在,参照附图描述本主题公开内容。其中,贯穿全文,相同的附图 标记用于指代相同的元件。在以下描述中,为便于说明,提出多个具体细 节以提供对以下描述的透彻理解。然而,可以明显的是,在没有这些具体 细节的情况下也可以对主题公开内容进行实践。在其他示例中,以框图的 形式示出众所周知的结构和设备,以便于对其描述。

如在本申请中所使用的,术语“部件”、“系统”、“平台”、“层”、“控 制器”、“端子”、“站”、“节点”、“接口”意在指代计算机相关实体或者与 具有一个或更多个具体功能的操作设备有关或作为具有一个或更多个具 体功能的操作设备的一部分的实体,其中,这样的实体可以为硬件、硬件 和软件的组合、软件或者执行中的软件中之一。例如,部件可以是但不限 于处理器上运行的处理、处理器、硬盘驱动器、包括附加固态存储驱动(螺 丝拧紧或螺栓固定的)或者可移除的附加固态存储驱动(光存储介质或磁 存储介质的)多个存储驱动器、对象、可执行、执行线程、计算机可执行 程序和/或计算机。通过例示,服务器上运行的应用和服务器二者均可以 为部件。一个或更多个部件可以存在于处理和/或执行线程内,并且部件 可以位于一个计算机上和/或分布在两个或更多个计算机间。另外,本文 中所描述的部件可以根据存储有各种数据结构的各种计算机可读存储介 质来执行。部件可以例如根据具有一个或更多个数据包(例如,来自与本 地系统、分布式系统中的另一部件交互的一个部件的数据以及/或者来自 经由信号经过网络例如因特网与其他系统交互的部件的数据)的信号经由 本地处理和/或远程处理进行通信。作为另一示例,部件可以为具有由电 路或电子电路操作的机械部件提供的特定功能的设备,电路或电子电路由 处理器执行的软件应用或固件应用来操作,其中,处理器可以位于设备内 部或设备外部并且执行软件应用或固件应用的至少一部分。作为又一示 例,部件可以是通过没有机械部件的电子部件提供特定功能的设备,电子 部件可以包括其中的处理器以执行提供电子部件的至少一部分功能的软 件或固件。作为再一示例,接口可以包括输入/输出(I/O)部件以及关联 处理器、应用或者应用程序接口(API)部件。虽然上述示例涉及部件的 各个方面,所例示的方面或特征也应用于系统、平台、接口、层、控制器、 终端等。

如本文中所使用的,术语“进行推断”和“推断”一般指根据如经由 事件和/或数据获取的观察集合推理或推断系统、环境和/或用户的状态的 处理。推断可以用于识别具体环境或动作,或者可以生成例如状态的可能 性分布。推断可以是或然性的——即,基于数据或事件的考虑对感兴趣状 态的可能性分布的计算。推断也可以指为了根据事件和/或数据的集合组 成较高水平的事件而采用的技术。这样的推断导致根据所观察的事件和/ 或存储的事件数据集创建新的事件或动作,而与事件是否与时间接近性密 切相关无关,并且与事件和数据是否来自一个或若干个事件和数据源无 关。

此外,术语“或者”意在指包括性“或者”而非排他性“或者”。也 就是说,除非特别指出,或者文本中明确说明,短语“X采用A或者B” 意在指自然包括排列中的任何一个。也就是说,下述示例中任何示例均满 足短语“X采用A或者B”:X采用A;X采用B;或者X采用A和B二 者。此外,除非特别指出或者文本中明确说明是指单数形式,否则本申请 及所附权利要求中所使用的词语“一个”和“一”通常应当理解为意指“一 个或更多个”。

此外,本文中所使用的术语“集合”不包括空集,例如其中没有元素 的集合。因此,主题公开内容中的“集合”包括一个或更多个元素或实体。 作为例示,控制器的集合包括一个或更多个控制器;数据源的集合包括一 个或更多个数据源等。类似地,本文中所使用的术语“组”是指一个或更 多个实体的集合,例如,一组节点是指一个或更多个节点。

将根据可以包括许多设备、部件、模块等的系统来给出各个方面或特 征。应当理解和明白的是,所述各种系统可以包括附加的设备、部件、模 块等,和/或可以不包括结合附图讨论的所有设备、部件、模块等。也可 以使用这些方式的组合。

工业控制器及其相关的I/O设备对于现代自动化系统的操作是重要 的。这些控制器与工厂地面上的场设备相互作用来控制与下述目的有关的 自动化过程:产品制造、材料处理、批处理、监督控制以及其他这种应用。 工业控制器存储以及执行用户定义的控制程序来影响与受控过程有关的 决策。这样的程序可以包括但不限于梯形逻辑、顺序功能表图、功能框图、 结构文本或其他这种平台。

图1是示例工业控制环境100的框图。在该示例中,遍及工业工厂环 境部署若干工业控制器118来监视和控制与产品制造、加工、运动控制、 批处理、材料处理或其他这种工业功能有关的各工业系统或过程。工业控 制器118通常执行各控制程序以便于监视和控制组成受控工业系统的工 业设备120。一个或更多个工业控制器118也可以包括在个人计算机或其 他硬件平台上或在云平台上执行的软件控制器。一些混合式设备也可以将 控制器功能与其他功能(例如,可视化)组合。工业控制器118所执行的 控制程序可以包括用于处理从工业设备120读取的输入信号以及用于控 制工业控制器生成的输出信号的任何可想到的类型的代码,包括但不限于 梯形逻辑、顺序功能表图、功能框图或结构文本。

工业设备120可以包括输入设备和输出设备两者,输入设备将与受控 工业系统有关的数据提供给工业控制器118,输出设备响应于工业控制器 118生成的控制信号来控制工业系统的各方面。示例输入设备可以包括遥 测设备(例如,温度传感器、流量计、物位传感器、压力传感器等)、手 动操作者控制设备(例如,按钮、选择开关等)、安全监视设备(例如, 安全垫、安全拉绳、光幕等)以及其他这种设备。输出设备可以包括电机 驱动装置、气动传动装置、信号装置、机器人控制输入、阀等。

工业控制器118可以通过硬连线连接或网络连接与工业设备120通信 接口。例如,工业控制器118可以配置有与工业设备120通信的本地硬连 线输入和输出以实现装置的控制。本地控制器I/O可以包括:向现场设备 发送和从现场设备接收离散电压信号的数字I/O;或者向设备发送和从设 备接收模拟电压或电流信号的模拟I/O。控制器I/O可以通过背板与控制 器的处理器通信,使得数字和模拟信号可以读入控制程序并且由控制程序 控制。工业控制器118也可以使用例如通信模块或集成网络端口通过网络 与工业设备120通信。示例网络可以包括因特网、企业内部网、以太网、 设备网(DeviceNet)、控制网(ControlNet)、数据高速公路和数据高速公 路加(DH/DH+)、远程I/O、现场总线、Modbus、过程现场总线(Profibus)、 无线网络、串行协议等。工业控制器118也可以存储由控制程序引用的并 且用于控制决定的持久数据,包括但不限于:表示受控的机器或过程的操 作状态(例如,罐内物位、位置、警报等)或者在自动系统的运行期间收 集的捕获时间序列数据(例如,对于多个时间点的状态信息、诊断事件等) 的测量值或计算值。类似地,一些智能化设备——包括但不限于马达驱动 器、仪器或状态监视模块——可以存储用于控制和/或可视化操作状态的 数据值。这样的装置也可以在日志上捕获时间序列数据或事件以用于后续 检索和查看。

工业自动化系统通常包括一个或更多个人机接口(HMI)114,其使 得工厂人员能够查看与自动化系统相关联的遥测和状态数据并且控制系 统操作的某些方面。HMI114可以通过工厂网络116与一个或更多个工业 控制器118通信并且与工业控制器交换数据,以便于在一个或多个预先开 发的操作者接口屏幕上对与受控工业过程有关的信息的可视化。HMI114 也可以被配置成允许操作者将数据提交到工业控制器118的存储器地址 或指定数据标签,由此给操作人员提供向受控系统发出命令(例如,周期 开始命令、设备致动命令等)的装置以修改定点值等。人机接口114可以 产生一个或更多个显示屏幕,通过该屏幕操作人员与工业控制器118交 互,并且由此与受控的进程和/或系统交互。示例显示屏幕可以采用基于 状态的颜色或位置的动画、渲染警报通知、或采用其他向操作人员呈现有 关数据的这样的技术,使用显示测量值或计算值的过程的图形表示来使工 业系统或其相关联设备的当前状态可视化。以这种方式呈现的数据通过 HMI114从工业控制器118读取并且根据由HMI开发者选择的显示格式 来呈现一个或更多个显示屏幕。HMI可以包括具有用户安装的或预安装 的操作系统以及用户安装的或预安装的图形应用软件的固定位置设备或 移动设备。

工业控制器118和HMI114包括与正在工厂环境内控制的工业过程 和系统有关的两个信息源。由于HMI114利用来自工业控制器118的数 据(或者在某些方案中从受控工业设备或其他I/O设备直接读取)以便于 受控系统的可视化,工业控制器118和HMI114两者可以包含与工业系 统的共同方面有关的信息。例如,可以在工业控制器118之一上执行用于 控制在批处理中使用的特定罐的操作的控制程序(例如、梯形逻辑、顺序 功能表图等),而可以在HMI114之一上查看用于查看罐当前状态和相关 设置点(例如,物位设置点、最大流量设置点等)的图形表示的操作者接 口屏幕。然而,由于这两个信息源跨两个不同数据源和平台隔离开,所以 操作者和维护人员通常一次只能查看一个信息源。也就是说,操作者可以 选择在相关HMI终端上查看感兴趣的罐的操作者接口屏幕(参见操作者 122),或者可以将个人计算设备(例如,笔记本电脑或平板计算机)连接 至工业控制器来查看用于控制罐操作的控制程序(参见操作者124)。在 多数情况下,操作者必须物理接近HMI终端或工业控制器以在特定数据 源上查看信息。因此,在对关于罐的维护问题进行故障诊断期间,人员必 须行进至信息源(例如,通常位于受控的物理机器附近的HMI终端或工 业控制器)并且在本地分别搜索HMI以及工业控制器中的每个。

一些工业环境还可以包括涉及被控制的工业系统的特定方面的其他 潜在相关信息的源。这些可以包括例如聚集并且存储从工业控制器118或 其他数据源采集的生产信息的数据历史110,或者包含构成被控制的工业 系统的各种工业设备的电子文档的设备文档存储104。其他信息源可以包 括库存跟踪系统102、工作订单管理系统106、机器或工艺图纸和文档的 储存库、供应商产品文档存储、供应商知识库、内部知识库或其他这种系 统,这些信息源中的一些或全部可以驻留在工业环境的办公网络108上。 这些不同的信息源分散在跨工厂环境内部以及外部(例如,在因特网上) 两者的许多位置和系统。当诊断问题时,通常要求维护人员使用特别针对 被搜索的各个数据源的若干不同软件包来分别搜索这些信息源中的若干 信息源。此外,搜索属于特定设备或机器的信息通常要求具有对整体工业 系统的广泛的了解,以定位要搜索的数据源(例如,工业控制器、HMI 等),以及识别相关操作者屏幕和控制程序例程。个别地搜索这些数据源 中的每个数据源与解决系统停机问题或其他问题相结合会延迟维护问题 的改正,导致损失收入和调度问题。

为了解决这些和其他问题,本公开内容的一个或更多个实施方式提供 了一种工业数据发现和索引系统,该系统跨构成工业企业的多个异质数据 平台发现可用数据项,并且在统一的可搜索名称空间中对数据项进行索 引。发现和索引系统可以是多平台工业搜索系统的部件,多平台工业搜索 系统允许用户针对感兴趣的信息搜索多个不同的工业数据平台。发现和索 引系统将公共名称空间下的多个不同源中的全厂控制系统信息或联合数 据模型统一起来。图2是示出该工业数据联合的示意图。在一个或更多个 实施方式中,发现和索引系统对跨工业设施或工业设施外部两者的多个源 中的数据进行索引,这些工业设施包括但不限于工业控制器、HMI、智能 工业设备、数据历史、设备和系统文档储存库(例如,图、手册、知识库 文章等)、系统库存管理系统、基于计算机的控制应用(例如,企业资源 计划系统、批处理管理系统等)、批软件、产品控制软件、与控制系统交 互的结构化查询语言(SQL)数据库、和/或其他这种平台。该系统对该 多平台数据进行索引和相互关联以产生可以被客户端设备204访问并搜 索的联合数据模型202。

在示例情形中,客户端设备204可以向联合数据模型202提交对于特 定数据标签(例如,罐1)的搜索请求。基于记录在模型中的被索引的全 厂范围的信息,工业搜索系统可以跨不同的数据源定位特定数据标签的所 有实例,并且传送根据数据平台分类的所有被发现的实例的列表。例如, 搜索系统可以提供经分类的搜索结果列表,该列表包括:在一个或更多个 工业控制程序中发现的对数据标签的引用的第一列表(例如,梯形逻辑、 顺序功能图等);以及显示在一个或更多个HMI屏幕上的数据标签的被发 现的实例的第二列表。响应于在工业控制器列表结果中选择搜索结果,搜 索系统在客户端设备上远程地启动适合的控制器开发应用的实例,并且导 航到控制程序(例如,梯形逻辑梯级)的与所选择的实例对应的部分。同 样地,在HIMI结果列表中选择搜索结果使搜索系统在客户端设备上启动 HMI可视化应用的实例,并且导航到与所选择的实例对应的显示屏幕。

发现和索引系统可以以多种方式自动地或半自动地构建和维护联合 数据模型202。在一些实施方式中,该系统可以在工厂网络上部署发现代 理。发现代理可以包括例如对网络进行爬取以发现包含可用数据项的工业 设备以及在工厂内部以及外部来源两者的其他数据源的软件脚本。发现代 理可以向发现和索引系统报告所发现的数据项,发现和索引系统将数据转 换成通用可搜索格式,使用预定的或自动生成的标签将数据置于上下文 中,识别数据项之间的任何相关性,以及在联合数据模型中索引该数据以 用于后续搜索。在另一情形中,一些与索引系统兼容的工业设备将关于其 可用数据项的信息推送至该系统以用于标记和索引。

图3是根据本公开内容的一个或更多个实施方式的示例工业数据索 引系统302的框图。本公开内容中解释的系统、设备或过程的方面可以构 成在机器中实施(例如,在与一个或更多个机器相关的一个或更多个计算 机可读介质(或媒介)中实施)的机器可执行部件。当通过一个或更多个 机器(例如,计算机、计算设备、自动化设备、虚拟机等)执行时,这样 的部件可以使机器执行所描述的操作。

工业数据索引系统302可以包括发现部件304、转换部件306、索引 部件308、搜索部件310、网络接口部件312、一个或更多个处理器314、 以及存储器316。在各种实施方式中,发现部件304、转换部件306、索 引部件308、搜索部件310、网络接口部件312中的一个或更多个、一个 或更多个处理器314以及存储器316可以彼此电耦合和/或通信耦合以执 行工业数据索引系统302的一个或更多个功能。在一些实施方式中,部件 304、306、308、310和312可以包括存储在存储器316上并且被处理器 314执行的软件指令。工业数据索引系统302也可以与图3中未描绘的其 他硬件和/或软件部件交互。例如,处理器314可以与一个或更多个外部 用户接口设备(例如,键盘、鼠标、显示器、触摸屏或其他这种接口设备) 交互。

发现部件304可以被配置成从工业环境内部及外部两者的一个或更 多个工业自动化设备和其他数据源收集信息。发现部件304也可以被配置 成发现数据项之间的相关性。转换部件306可以被配置成在索引之前转换 并且标记被发现部件发现的数据。这可以包括:例如将在不同类型的数据 平台上发现的异质数据项转换成同质格式以用于公共名称空间下的索引; 对所发现的具有相关上下文信息(例如,工厂、生产区域、机器或在其上 发现数据的设备)的数据、给定数据项与其他数据项之间的关系或相关性、 与数据项对应的数据平台(例如,工业控制程序、HMI应用、知识库文 章、设备文档等)或其他数据修改进行标记。索引部件308可以被配置成 基于所发现和转换的数据生成对在整个工业系统中的数据项的位置和来 源以及数据项之间的关系进行定义的联合数据模型(例如,联合数据模型 202)。所得到的联合数据模型能够识别和报告特定数据项或标签的来源以 及涉及特定数据项的相关上下文数据。

搜索部件310可以被配置成向联合数据模型提交搜索查询,并且检索 识别在整个工业系统中的所请求的数据项的位置的搜索结果。搜索部件 310可以被配置成根据结果被发现的各个数据源的平台(例如,控制逻辑、 HMI等)以及信息所位于的网络和/或物理位置(例如,生产区域)来对 搜索结果进行分类。对于与网络内容(例如,供应商知识库网站)对应的 搜索结果,搜索部件310可以生成便于直接导航至网站内容的链接。网络 接口部件312可以被配置成在工业数据索引系统302与工厂网络和/或外 部网络(例如,公共网络如因特网)之间交换信息。该通信可以包括例如 采用数据发现代理和从发现代理或直接从数据源自身接收被发现的数据 项。

一个或更多个处理器314可以参考所公开的系统和/或方法来执行本 文中描述的功能中的一个或更多个。存储器316可以是存储用于参考所公 开的系统和/或方法来执行本文中描述的功能的计算机可执行指令和/或信 息的计算机可读存储介质。

图4是包括多平台工业搜索系统420的一般示例架构的框图,多平台 工业搜索系统420使用工业数据索引系统302来发现并且索引整个工业环 境中的多平台数据。图4中描绘的示例工业环境包括一个或更多个工业控 制器404、HMI406、数据库408(例如,数据历史、雇员数据库、库存 数据库等)以及设备文件储存库410。工业环境还可以包括图4中未描绘 的其他工业数据源,包括但不限于产品库存跟踪系统、工作订单管理系统 等。数据源404至410驻留在工厂和/或办公网络412上。在一些情形中, 数据源404至410可以跨工厂设施中的多个网络分布;例如,通过防火墙 设备或其他网络基础设施设备通信连接的工厂网络和办公网络。网络412 也可以对外部网络414例如因特网(例如,经由防火墙416)进行访问。

工业数据索引系统302(其在该情形中也驻留在网络412上作为多平 台工业搜索系统420的一部分)发现并且索引在不同数据源404至410中 以及在外部网络414上可用的数据项。工业数据索引系统302也对数据项 之间的关系进行索引。这可以包括:例如记录驻留在多个数据源中的相同 数据项的实例(例如,记录与工业控制器404中的特定温度测量对应的数 据标签对应于用于在显示屏幕上显示该温度测量的HMI406之一中的数 据标签);观察某些数据项的值是其他数据项的函数(例如,与梯形逻辑 程序中的第一数据标签相关的输出线圈是基于用于梯级的输出条件的第 二数据标签的值来设置的);或者其他这种关系。

为了便于发现和索引,工业数据索引系统302可以在工厂网络412 上部署发现代理418,发现代理418穿过网络并且发现数据源(例如,工 业设备、知识库、设备文档存储设备、工作日程安排、维护记录数据库、 电子通信记录等)以及每个数据源上可用的数据项。在一些实施方式中, 发现代理418也可以穿过外部网络414来发现相关的外部数据源,包括但 不限于供应商网站或知识库。发现代理418可以将描述被发现数据的信息 返回至工业数据索引系统302用于在联合数据模型中处理并且索引。以此 方式,工业数据索引系统302通过发现在使用的工业资产及其相关联的可 用数据项来自动地对客户的工业环境进行清点。工业数据索引系统302 也可以发现驻留在外部网络414上的数据源上的相关数据,包括但不限于 设备或机器供应商文档、相关在线知识库文章、供应商产品发布信息等。

工业数据索引系统302记录索引信息(即,所发现的全厂范围内的数 据项及其关系)作为联合数据模型202,工业数据索引系统302可以通过 客户端设备402远程地访问和搜索以定位期望的数据项。客户端设备402 可以是能够远程访问搜索系统420的任意移动设备(例如,移动电话、膝 上型计算机、平板计算机、可穿戴计算机等)或固定位置计算机(例如, 台式计算机、服务器、操作界面等)。在一些实施方式中,可以在网络服 务器上实现多平台工业搜索系统420,使得客户端设备402能够经由因特 网连接访问联合数据模型。也可以在通过客户端设备402经由无线网络连 接可访问的联网的本地服务器上实现搜索系统420。在又一种情况下,可 以在云平台上实现搜索系统420,其中搜索系统作为基于云的服务执行。

在一种示例情况下,客户端设备402可以向搜索系统420提交针对特 定数据项(例如,数据标签名称)的搜素请求,搜索系统420开始搜索联 合数据模型202以便定位指定的数据项。然后,搜索系统420向识别所发 现的所有的跨各种数据源404-410的数据项的位置的客户端设备402返回 搜索结果的列表。系统可以根据数据源(例如,数据平台)的类型对结果 进行分类,其中在该数据源中发现了结果。在一些实施方式中,系统也可 以根据工厂环境(例如,生产线、工作单元等)内的位置对结果进行分类。 例如,结果可以包括识别控制逻辑梯级(rung)的控制器逻辑结果的第一 列表和识别HMI屏幕的HMI屏幕结果的第二列表,其中期望的数据项 引用控制逻辑梯级,期望的数据项显示在HMI屏幕上。当在客户端设备 402处选择搜索结果时,搜索系统也可以远程地启动用于查看所选择的结 果的合适的平台特定应用(例如,HMI查看器、控制逻辑查看/开发环境、 电子文档阅读器等)。

图5为更详细示出多平台工业搜索系统420的部件的框图。在一些实 施方式中,可以在服务器或驻留在工厂和/或办公室网络412上的其他计 算设备上实现搜索系统。在另外的实施方式中,可以在网络服务器上实现 搜索系统420,使得客户端设备能够经由网络连接远程地搜索联合数据模 型202。在又一些实施方式中,搜索系统可以被实现为如将在本文中更加 详细讨论的在云平台上执行的基于云的服务。

包括发现部件304、转换部件306和索引部件508的索引系统302收 集关于跨客户的工业环境分布的可用数据项的信息,并且生成代表所发现 的数据的可搜索的统一视图的联合数据模型202。索引系统302被配置成 在多个分散的平台(包括但不限于工业控制器404、HMI406、数据库408、 电子文档库、库存跟踪系统、工作订单管理系统等)上发现数据项。如将 在本文中更加详细描述的,索引系统302可以通过在网络412上部署发现 代理418来发现可用数据项。这些代理穿过网络412并且识别在整个工厂 中使用的设备,以及数据项或标签、应用和与那些设备相关联的配置信息。 因为给定的工业环境通常包括不同类型或供应商的设备的异类集合,并且 通过这些设备可用的数据可以包括许多不同的数据类型(例如,控制器标 签、HMI标签、警报、通知、事件、数据值、表列数据、日志、配置设 置、诊断值、警报、HTML页等),所以索引系统302可以管理和部署被 配置为从指定类型的设备或数据平台(例如,控制器、HMI等)提取和 分析信息的设备特定代理或平台特定代理。一些设备特定发现代理可以被 配置为定位被存储在特定设备类型上的应用项目文件(例如,工业控制器 上的配置和/或项目文件、HMI上的屏幕配置文件),并且根据对在这些 项目文件中包含的数据的分析来提取关于设备的相关信息。通过利用设备 特定代理和平台特定代理,索引系统302能够发现和索引遵从许多不同格 式和平台的数据。

为了在针对共同搜索(collectivesearching)的公共平台下统一这个 分散的异类数据,发现代理可以将所收集的数据转换成索引系统302可理 解的格式(例如,可扩展标记语言或其他格式),并且索引系统302可以 利用与公共搜索平台兼容的公共索引格式来索引这个经转换的数据。然 后,索引系统302对在联合数据模型202中发现的数据的规范化表示进行 编码。通过在这个统一的搜索平台下统一分散的数据,系统可以使得客户 端设备能够搜索全厂范围内的数据而不用知道用于读取各种数据源平台 (例如,工业控制器、HMI等)的规则或协议。除了经由在工厂网络上 部署的发现代理来发现设备及其相关联的数据之外,索引系统302的一些 实施方式还可以被配置成接收从如将在本文中更加详细描述的支持自识 别功能的设备上传的配置信息。

索引系统302也可以发现并且记录所发现的数据项之间的关系(明确 的或者推断的两者)。在一些实施方式中,索引系统302可以通过以下方 式记录这些关系:对所发现的数据项进行标记并且根据这些标签建立搜索 索引使得相关数据项共享公共的标签。在一些情况下,这些标签可以被系 统开发者明确定义使得索引部件确定哪个预先定义的标签应该被应用到 新发现的数据项。

利用这些技术中的一些或全部,索引系统302可以自动建立客户工业 环境的模型,包括整个工厂使用的分散的设备和多平台设备,他们的相关 联的可用数据项以及这些数据项之间的关系。这消除了对工厂人员要具有 对整个工厂中所使用的工业资产的全面知识的需求,这是因为索引系统 302可以自动对给定的工业环境开具清单并且记录在联合数据模型202中 发现的设备和数据。

一旦被索引系统302产生,联合数据模型202可以通过监视部件508 和搜索部件310来搜索。搜索部件310被配置为响应于客户端设备402提 交的搜索查询502来搜索联合数据模型202。客户端设备402可以经由设 备接口部件512与多平台工业搜索系统420交换数据,设备接口部件512 可以包括有线或无线网络接口、近场通信接口或其他适合于在其上实施搜 索系统平台的这种设备接口。在一些实施方式中,设备接口部件512可以 被配置成在允许通过客户端设备提交搜索查询之前验证客户端设备402 访问搜索系统的授权。设备接口部件512可以使用密码验证、生物识别、 交叉引用具有一套已知的授权设备的客户端设备的标识符或其他这种认 证技术来认证客户端设备或其用户。

在一些实施方式中,设备接口部件512可以被配置为当客户端设备请 求访问搜索系统420时向客户端设备402提供界面显示或控制面板。界面 显示可以包括使得客户端设备402的用户能够向搜索系统420手动输入和 提交搜索查询502的界面单元。例如,显示可以使得用户能够输入密码、 术语或短语作为搜索条件。示例搜索术语可以包括指定设备或机器的标识 符、工厂内的生产区的名称、产品名称或代码、员工姓名或其他这种条件。 除了手动输入搜索条件之外,设备接口部件512的一些实施方式可以被配 置为转换贴在设备或机器上的条形码或快速响应(QR)码。例如,用户 可以利用客户端设备402扫描或拍摄贴在设备、机器或产品(例如,在产 品生产过程中贴在工件上的针形冲压(pin-stamped)或激光蚀刻的条形 码)上的条形码或QR码,其中条形码包含关于相关部件的标识信息。然 后,客户端设备402可以向设备接口部件512提交从条形码提取的标识信 息作为搜索条件。在又一示例中,客户端设备402可以经由近场通信 (NFC)直接从设备提取关于工业设备或其相关过程的信息并且向设备接 口部件512提交所提取的信息。这个提取的信息可以包括但不限于设备标 识符、从保持在工业设备上的状态字读取的设备状态信息、从警报寄存器 提取的警报数据、存储在一个或更多个数据标签上的生产统计,或其他这 种信息。

一旦收到搜索查询502,设备接口部件512将这个请求路由至搜索部 件310,搜索部件310针对与搜索查询相关的内容搜索联合数据模型202。 搜索查询502可以包括例如数据标签名称(例如,罐1)、设备或机器属 性、设备供应商、工业环境的特定区域(例如,工作单元或生产线)的名 称、产品名称或标识符或者其他这种搜索条件。搜索部件310针对通过搜 索查询502识别的搜索条件来搜索联合数据模型202,识别与搜索条件对 应的数据项并且经由设备接口部件512向客户端设备返回搜索结果504 的列表。因为搜索结果504可以与在整个工厂环境(例如,工业控制器、 HMI、设备文档库等)中的多个分散的平台上发现的数据项对应,所以设 备接口部件根据这些结果在其上被发现的平台、工厂环境内的结果的位置 (例如,生产区、工作单元等)或其他分类条件对结果进行分类。

除了处理由用户经由客户端设备提交的搜索查询之外,多平台工业搜 索系统的一些实施方式也可以支持自动动态搜索。为此,多平台工业搜索 系统420可以包括监视部件508,监视部件508配置为监视工业系统的一 个或更多个性能或操作度量,以识别操作者或维护专家需要注意的问题。 响应于性能或操作问题的检测,监视部件508可以执行联合数据模型202 的自动搜索,以收集与所检测到的问题有关的搜索结果。然后,通知部件 510可以向与被确定为最适合于解决该问题的所选择的工厂人员相关联 的一个或更多个客户端设备通知检测到的问题的以及相关搜索结果。

在示例实施方式中,监视部件508可以根据所定义的监视规则来监视 工业系统514的所选择的数据项。监视规则例如可以定义跨工业系统514 分布的各种数据平台的哪些数据标记要被监视,以及当被确定为真时将触 发自动搜索和人员通知的指示性能问题的标准。监视规则也可以限定响应 于检测到的性能问题的每种类型将通知哪些员工。

图6为示出通过工业数据索引系统302执行的过程的框图。给定的工 业环境可以包括数据源610的异构集合。为了针对搜索目的在公共名称空 间下统一这些数据源上可用的数据,发现部件304可以被配置为以多种方 法发现数据。在工厂环境内的一些设备可以为无源设备604,无源设备604 仅响应于来自索引系统302的发现部件304的请求而提供关于他们的可用 数据项的信息。这样的请求可以由发现代理418发起(见图4)。

在示例情况中,当发现代理418在遍历工厂网络期间发现新数据源 时,代理将检查数据源以识别设备上有资格在联合数据模型202中进行索 引的数据项。如果发现的数据源例如是工业控制器,则可用数据项可以包 括由工业控制器的配置和编程文件定义的数据标签或寄存器。发现代理也 可以识别数据项如何以及在何处被用于工业控制器的程序(例如,梯形逻 辑、顺序功能图、结构化文本等),以使得该信息也可被索引。例如,当 在工厂网络上发现工业控制器时,发现代理418可以随后识别在控制器的 程序文件中定义的名为罐1中标签,其表示工业批量处理的特定罐。响应 于发现该标签,发现代理可以扫描控制程序以识别引用罐1的例程和程序 位置(例如,梯形逻辑梯级)。发现代理418也能够识别罐1的每个实例 如何被用在每个程序位置处(例如,输出线圈、常开触点、功能块参数等)。

发现代理可以另外识别在工业控制器中定义的与罐1的具有功能关 系的其他数据项。例如,当在工业控制器上运行的控制程序的梯级的输出 线圈上识别罐1的引用时,发现代理418则可以识别在控制该罐1输出线 圈的状态的梯级上定义的其他数据值和状态,并记录罐1和其他数据值和 状态中的每个数据值和状态之间的这种关系。在一些实施方式中,发现代 理418可以执行控制程序的另外扫描,以确定影响相关数据项中的每个的 状态的附加数据值和状态,这是因为这些附加的数据值/状态也影响罐1 输出线圈的状态。发现代理418可以这种方式迭代地循环通过控制程序多 次,以发现与罐1的具有功能关系的所有相关数据项。

在另一示例中,所发现的数据源可以是执行HMI应用以用于可视化 控制过程的接口终端。在该情况下,发现代理可以识别终端并且对HMI 应用中定义的标签列表进行扫描以识别由HMI引用的数据标签。这些数 据项可以包括链接至联网工业控制器的数据标签的HMI标签,以用于在 HMI屏幕的一个或更多个上显示关联的控制器数据值或状态,或者用于 经由呈现在HMI屏幕上的输入对象(例如,数据输入字段、虚拟按钮等) 将值写至控制器标签。针对每个发现的HMI标签,发现代理可以识别其 上登记有HMI标签的显示屏幕,以及与该HMI标签对应的外部控制器 标签。在某些情况下,HMI标签可以由与对应的控制器标签(例如,罐1) 相同的名称来标识,尽管可能并非总是如此。

发现代理418可以封装如上所述收集的信息——包括数据源的身份 及其类型(例如,工业控制器、HMI、知识库、设备文档等),在数据源 上发现的数据项,运行在数据源上的应用(例如,梯形逻辑程序的例程和 梯级、HMI屏幕等)内的数据项的位置,数据项之间的相关性等——并 且将该信息发送回发现部件304作为发现的数据612。由于发现代理418 能够对许多不同类型的数据的平台(例如,工业控制器、HMI、设备文档 等)进行适当的分析以识别数据平台及其可用数据,因此在将发现的数据 612返回至发现部件304之前,发现代理418可以预格式化发现的数据 612,以符合工业数据索引系统302兼容的格式。以该方式,发现部件304 及其关联的发现代理可以将来自不同数据格式的异构数据自动标准化成 能够由索引系统共同处理并索引的共同的同类格式。

虽然先前的示例将发现代理描述为由作为多平台工业搜索系统的一 部分的集中式索引系统的发现部件部署,但是可以在较大的工业企业内的 部署之前预先发现客户的较大工厂环境内的一些子系统。例如,在一些实 施方式中,索引系统可以实施在以下工业设备如工业控制器上,该工业设 备对发现代理进行部署以发现设备和驻留在该设备下的数据(例如,由工 业控制器控制的设备,或者向工业控制器提供数据的设备),以及与这些 设备关联的配置、数据和以及相互依赖性。图7是示出使用实施在工业控 制器702上的索引功能来生成预索引子模型704的图。在该示例中,工业 控制器702被安装在控制柜712中作为要安装在工厂设施处的控制系统 714的一部分。控制系统714被容置在控制柜712中,控制系统714可以 由原始设备制造商(OEM)、系统集成商或其他机器制造商设计和构建以 履行客户订单。

控制系统714可以包括与工业控制器702接口的多个I/O设备706(例 如,马达驱动器、传感器或其他遥测设备、电磁阀、远程I/O模块等)。 I/O设备706可以硬连线至工业控制器的I/O模块,或者可以通过本地网 络(例如,EthernetIP、通用工业协议等)与工业控制器702进行数据交 换。此外,I/O设备706中的一个或更多个可以连接有许多子设备708。 例如,如果I/O设备是远程I/O模块,则子设备708可以包括连接到该远 程I/O模块的I/O设备。控制柜712也可以包括HMI终端716以用于可 视化由控制系统714控制的机器或处理。HMI终端716通过本地网络连 接和接口电缆通信连接至工业控制器702。

由于工业控制器702实施有索引功能,因此控制器能够在控制系统 714被安装在客户设施之前预先发现控制柜712内的可用设备和数据。例 如,索引系统可以检查控制器的配置、标签列表和编程信息,以识别以下 项中的一些或全部:连接至控制器的I/O设备706和子设备708、控制器 上可用的数据项、控制器的程序例程内的数据项的位置、数据项之间的相 互依赖性等。此外,工业控制器702可以将发现代理710部署在其本地网 络上,以发现控制器级以下的另外的设备和可用数据。例如,发现代理 710可以识别连接至工业控制器702的HMI终端716,识别由在终端上运 行的HMI应用定义的可用数据标签以及其上引用每个数据项的接口屏 幕,HM标签中的一个或更多个HM标签与工业控制器702中定义的对 应标签之间的相关性等。发现代理710将此信息报告给工业控制器702 上的索引系统以用于索引。

以类似的方式,发现代理710遍历控制器级以下的其他可访问设备, 并且将发现的设备和数据报告回控制器的索引系统。在这方面,一些I/O 设备706——尤其是硬连线至工业控制器的I/O模块的I/O设备——可以 在没有部署发现代理710的情况下仅通过检查在工业控制器上定义的I/O 模块配置信息来发现,这是因为该I/O模块配置信息指定了连接至I/O模 块的每个点的设备。对于联网至工业控制器702的I/O设备——其可以包 括能够自主地操作或半自主地操作的设备,并且其可以包含对于工业控制 器702不可用的附加数据项(例如,视觉系统、条码冲压系统、条码阅读 器系统等)——发现代理710可以发现和分析这些设备并且将可用数据项 报告回控制器的索引系统。

工业控制器702利用所发现的数据以生成预索引子模型704,预索引 子模型704表示控制系统714及其可用数据。如图8所示,当控制柜712 被安装在客户设施处时,工业控制器702在工厂网络802上建立与预先存 在的工业数据索引系统302的通信,并且将预索引子模型704发送至索引 系统302用于与客户的现有联合数据模型202进行集成。通过将索引系统 实施在工业设备上,机器制造商可提供机器和关联的控制系统,其中控制 系统的名称空间模型的部分被预先发现并且被索引为子模型,该模型可以 与客户的较大工厂模型快速集成。

尽管上面结合图7和图8描述的示例描绘了索引功能被实施在工业控 制器上,然而该功能也可以实施在其他控制系统设备上,包括但不限于 HMI、马达驱动器或其他设备。

在一些实施方式中,发现代理也可以被配置成检查由工厂员工使用的 社交网络,以便基于与项目或解决问题有关的即时消息讨论来生成标签。 图9是示出发现代理902收集和索引消息日志信息的架构的图。在该示例 中,社交网络数据库904存储工厂人员之间的书面通信。书面通信可以包 括即时消息日志、电子邮件线程、文本记录或其他通信记录。在数据发现 期间,发现代理902可以识别社交网络数据库904,并且针对关键字来解 析所存储的消息日志,关键字可以用于将消息日志与特定的工作区域、机 器、过程或设备进行关联。例如,发现代理902可以基于在消息日志中特 定关键字的发现来确定生成了与诊断特定机器或工业设备有关的特定存 储会话。因此,发现代理902可以用指令将消息日志的存在报告给发现部 件,以将该消息日志标记为与机器或设备有关。以该方式,当在用于机器 或设备的联合数据模型202上执行后续搜索时,消息日志将被返回作为相 关结果。这些日志可能详述了由维护人员采取的与解决器或设备的特定问 题有关的步骤,因此当在机器或设备上执行搜索时由系统标记为相关的结 果。

在一些实施方式中,发现代理902可以基于对日志的关键字分析将相 关补充信息与发现的消息日志关联。例如,客户可以在工厂或办公网络上 维护包含知识库记录和/或与特定设备或维护问题有关的设备文档的知识 库906。当确定消息日志涉及特定机器或设备的故障诊断会话时,发现代 理902(或发现部件304)可以生成日志与知识库记录或关于机器或设备 的设备文档之间的关联。因此,当随后对机器或设备执行搜索时,搜索系 统可以使用到相关知识库文章或设备文档以提供补充信息的链接,呈现过 去采用的消息日志概述步骤来处理涉及机器/设备的维护问题。

现在返回到图6,除了无源设备604以外,工业环境可以包括一个或 更多个具有集成的自报式功能的智能设备606。这样的设备可以在不需要 通过发现代理分析的情况下向索引系统302直接提供关于他们的身份和 可用数据项的上传数据614。转到图10,示出了能够向索引系统302进行 自报的示例智能设备。智能设备1002——其基本上可以包括任何类型的 工业设备或数据存储单元(例如,工业控制器、HMI终端、电机驱动器、 设备文档存储等)——包括被配置为例如经由工厂网络或者在公共网络如 因特网上将智能设备1002通信耦合至索引系统302并且与其交换数据的 索引系统接口部件1012(针对其中索引系统驻留在网络服务器或云平台 上的配置)。

当智能设备1002被安装为工业自动化系统的一部分时,索引系统接 口部件1012可以建立与索引系统302的通信。在一个或更多个实施方式 中,索引系统接口部件1012可以被配置为自动发现公用网络上的索引系 统302。例如,智能设备1002可以被预配置为对设备向其提供设备的身 份和配置信息(例如,与索引系统关联的名称、机器标识符、云或网址等) 的索引系统进行识别,或者可以被配置为针对可以存在于网络上的兼容的 工业索引和搜索系统来搜索工厂网络。任何合适的握手协议可以用来建立 智能设备1002与索引系统之间的通信。

当发现搜索系统时,智能设备1002可以对关于设备及其可用数据的 有关信息进行打包并且发送给索引系统,其将报告数据项集成在联合数据 模型202中。在一些实施方式中,概要生成部件1016可以生成智能设备 1002的要经由索引系统接口部件1012发送到索引系统302的设备概要 1014。设备概要1014可以传达关于智能设备1002的信息,包括但不限于 设备的身份和类型、设备上可用的设备数据1022、工业环境内的设备的 上下文、提供对设备的数据的访问的任何内置显示器或对话框屏幕(例如, HTML页面)等。在一些实施方式中,概要生成部件1016可以收集被编 码在智能设备1002上存储的配置文件1020中配置信息,该配置信息可以 是控制程序、配置或参数设置文件、应用文件(例如,HMI应用或HTML 页面)或者其他这种文件。概要生成部件1016也可以识别设备上的可用 设备数据1022(例如,实时或历史数据标签等)。在一些实施方式中,概 要生成部件1016也可以使用类似于由发现代理使用的那些技术来识别数 据项之间的关系,包括但不限于上述的迭代关系发现过程。概要生成部件 1016可以将该信息打包到设备概要1014中,然后其由索引系统接口部件 1012作为上传数据614发送给索引系统。

智能设备1002的一些实施方式也可以包括工厂上下文部件1008,工 厂上下文部件1008被配置为收集关于智能设备1002的附加上下文信息以 用于递送到索引系统302。工厂上下文部件1008可以确定工厂或企业环 境内的智能设备1002的上下文。例如,工厂上下文部件1008的一个或更 多个实施方式可以识别其本地环境内的其他设备和系统,并且确定智能设 备1002在层级工厂上下文或设备拓扑内的位置。联合数据模型的一些实 施方式在多个层级水平和设备层级方面可以代表给定的工业企业,其中每 个水平包括被组织为类型及其属性的实例的企业单元。工厂上下文部件 1008可以采集有利于将其关联的智能设备1002以多种方式定位在组织或 设备层级内的信息。在一个示例中,工厂上下文部件1008可以识别与智 能设备1002共享公共网络的设备的拓扑以及设备之间的互连。例如,如 果智能设备1002是工业控制器,那么工厂上下文部件1008可以对连接至 控制器的一个或更多个离散或模拟I/O设备进行识别(例如,基于定义控 制器的I/O模块配置的配置文件1020)。此外,工厂上下文部件1008可 以识别网络上的其他控制器及其在整体工业企业内的作用(例如,生产区 域、工作单元或与相应的控制器关联的过程)。在一些实施方式中,工厂 上下文部件1008也可以确定附接有智能设备1002的特定网络的身份(例 如,网络名)。由于一些网络可以专用于特定的生产区域,所以可以(通 过概要生成部件1016或外部应用)利用该信息来确定工业自动化系统内 的设备的位置和作用。工厂上下文部件1008的一些实施方式也可以对连 接至智能设备1002的机器的类型(例如,托盘堆垛机、包装器、输送机 等)进行识别。

通过采集关于本地设备拓扑的信息,工厂上下文部件1008可以有利 于识别智能设备1002在企业层级内的位置。在一些实施方式中,可以通 过工厂上下文部件1008本身来确定企业层级内的位置。或者,概要生成 部件1016可以将由工厂上下文部件1008采集的信息包括在设备概要1014 中,以使得索引系统302可以准确地表示企业或设备层级内的智能设备 1002。

一些智能设备也可以存储用于设备配置或可视化操作数据的预定义 接口屏幕(例如,HTML屏幕)。索引系统可以检测这些屏幕(使用发现 代理或者基于由设备提供的设备概要1014中的信息)并且在联合数据模 型202中索引这些屏幕。

返回图6,索引系统302也可以收集并且索引关于某些工业设备的离 线数据,而不是从设备自身直接采集关于设备的信息。鉴于此,一些工业 设备可以具有关于他们的配置、编程和可用数据项的信息,这些信息被捕 获并且被存储为存储在单独的离线文件存储设备608中的离线文件。因 此,发现代理418的一个或更多个实施方式可以以如上所述的类似的方式 识别并且处理这些离线文件以在联合数据模型中索引这些设备。

转换部件306可以在进行索引之前对发现部件304所收集的数据执行 任何需要的转换。例如,这可以包括对未由发现代理418适当格式化的任 何数据进行标准化,以使得所有所收集的数据符合索引系统302可使用的 通用格式。在一些实施方式中,转换部件306也可以向所收集的数据项添 加上下文数据或标签以实现用于搜索目的的高粒度索引,以及有利于随后 发现不同的且全厂范围的数据项之间的相互依赖关系。图11是示出由转 换部件306对发现数据1102的转换的框图。如上所述,发现代理418(或 发现部件304)可以在将数据发送到转换部件306之前向发现数据项添加 一些上下文信息。然而,在一些情况下,转换部件306能够基于针对发现 代理418不可用的信息向该数据添加附加上下文。在其他情况下,由于关 于给定设备的有限的可用信息(例如,在具有有限能力的较旧的遗留设备 的情况下),所以发现代理418可能还不能将所有发现数据置于上下文中。

可以由转换部件306向给定数据项添加的上下文数据可以包括但不 限于:其处驻留有数据项源的生产区域和/或工厂的标识符;数据项所涉 及的机器或产品;要与数据项关联的一个或更多的员工(例如,基于生产 区域、在收集数据项期间的移动等);被确定为与发现数据项有关的并发 警报状态;指示所收集的数据项的值需要来自工厂人员的响应的可行动数 据标志;或者指示工厂的层级组织模型的上下文内的数据时间的位置(例 如,在企业级、工厂级、工作区域级、机器级、控制级等方面)的标签。

在一些实施方式中,转换部件306可以采用被定义为与索引系统302 关联的一个或更多个预定义标签1108选择性地对发现数据项进行标记。 这些标签可以用于基于根据标记规则的一个或更多个用户定义标签类别 将发现数据置于上下文中。例如,用户可以定义标记规则,该标记规则指 示要采用将数据项与人、产品、或用于索引和搜索目的的其他分类器关联 的预定义标签来标记从工厂的特定工作单元或机器内的数据源收集的数 据。标签1108使得用户能够定义不能自动被发现部件304发现的数据集 与该数据集的关联发现代理之间的关系。在一些实施方式中,索引系统还 可以被配置为对使得用户能够在组织的组合单元下选择性地关联不同设 备的用户定义系统视图进行维护。该用户定义关联随后可以由搜索系统使 用,以确保所有相关设备响应于搜索查询而被定位。例如,当一个设备(及 其关联的数据)响应于搜索查询被定位于由联合数据模型定义的系统的逻 辑层级中时,具有与所定位设备的用户定义关联的其他设备也将被识别并 且被检索为相关搜索结果。在一些实施方式中,这些用户定义关联还可以 在被存储在不同设备的选定数据项之间进行(数据级关联),以及在设备 本身之间进行(设备级关联)。

在一些实施方式中,转换部件306也可以基于上下文信息针对给定数 据项自动生成标签,上下文信息包括但不限于:与控制器标签相关联的梯 级注释、新发现的数据项与先前发现的数据项之间的获知的相关性(例如, 获知泵5与罐1相关联,并且标记泵5与罐1相关联,或者根据其工作于 的更大系统来标记罐1和泵5两者),或者其他发现的上下文信息。索引 部件308可以将联合数据模型202中的类似地标记的数据项相关联,而不 管其在哪个平台中被发现。例如,索引部件308可以将分别在工业控制器、 HMI及数据历史中发现的公共或相关数据项相关联。

现在返回至图6,转换部件306向索引部件308提供经转换的数据 602,索引部件308对所发现的数据以及在联合数据模型202中发现的数 据之间的相关性进行索引。如以上结合图5描述的,多平台工业搜索系统 420然后可以用于向联合数据模型202提交搜索查询。图12示出了可以 由多平台工业搜索系统420传递的示例搜索结果屏幕1202。在该示例中, 向系统提交了对名为罐1的标签的搜索。通过在搜索窗口1204中输入标 签名并且操作搜索按钮1212来发起该搜索。响应于查询,搜索部件310 识别记录在联合数据模型202中的罐1的所有实例,这表示整个工厂中名 为罐1的数据项的所有已知位置或对其的引用。在该示例中,发现了12 个实例——在控制器逻辑内引用的罐1的五个实例,以及在一个或更多个 HMI应用(可视化平台)上对罐1的六个引用。这些结果被分离在两个 可折叠的结果列表——控制器逻辑引用列表和可视化引用列表之间。

如图13所示,对控制器逻辑引用列表表头1206的选择扩展了控制器 逻辑引用结果1304的列表并使其可见。控制器逻辑引用结果1304的列表 中的每项标识引用罐1数据标签的控制逻辑梯级。在该示例中,每个结果 标识控制器(例如,IFT_Demo_10)、例程(例如,“警报”)、以及引用 标记的梯级(例如,“梯级13”)。每个结果还标识用于引用的附加上下文, 例如与罐1引用相关联的逻辑元件的类型(例如,常开触点、常闭触点、 输出线圈、GRT功能块等)。在一些实施方式中,控制器逻辑引用结果 1304中的每项可以包括特定梯级为其图形的形式的嵌入的图像,包括在 源逻辑程序中发现的梯级注释,以在用户选择之前提供关于结果的附加信 息和上下文。

每个结果还包括“启动程序”按钮1302。对“启动程序”按钮1302 的选择使搜索系统启动适当的程序或应用,用于在客户端设备上在上下文 中查看选择结果。在本示例中,如图14所示,对与控制器逻辑引用结果 中之一对应的“启动程序”按钮1302的选择使搜索系统启动客户端设备 上的控制器逻辑查看和/或开发环境。搜索系统还导航至控制器逻辑内的 与所选择的搜索结果对应的位置。也就是说,在启动控制器逻辑应用1402 之后,系统导航至特定控制器程序、例程以及与所选择的罐1的实例对应 的梯级号。控制器逻辑应用1402在客户端设备上提供所选择的逻辑程序 的运行时视图,包括实时梯级状态和标签数据值。在一些实施方式中,可 以通过搜索系统420将用于控制器逻辑的运行时呈现动画的实时数据路 由至客户端设备。在这样的实施方式中,搜索系统可以建立客户端设备 402和所选择的工业控制器之间的通信链路,使得从控制器的数据表中读 取的实时数据能够被传递至客户端设备402,以驱动控制器逻辑的运行时 呈现。

如图15所示,对可视化引用列表表头1208的选择扩展了可视化结 果列表1502并使其可见。与控制器逻辑引用结果1304的列表类似,可视 化结果列表1502中的每个结果标识用于对应的罐1引用的HMI位置。特 别地,每个结果标识引用罐1数据标签的HMI应用和接口屏幕。在一些 实施方式中,可视化结果列表中的每项可以包括对应的HMI屏幕的缩略 图以提供上下文。对可视引用结果之一旁边的“启动程序”按钮1504的 选择使得搜索系统在客户端设备上启动适当的可视化程序,以查看所选择 的HMI显示屏幕。图16示出了通过选择“启动程序”按钮1504调用的 示例HMI屏幕1602。在该示例中,HMI屏幕1602包括针对罐1的图形 1604,图形1604包括动画的罐级别图形、数字的罐级别指示器、以及用 于罐的动画排放阀。如上文所述的控制器逻辑应用,HMI屏幕1602提供 在客户端设备上可视化的过程的实时运行时视图,其中,使用由搜索系统 检索的并且传递至客户端设备的实时数据来驱动动画显示和数字显示。在 此将更详细地论述通过搜索系统进行的对应用的启动。

将理解的是,根据一个或更多个实施方式,图12至图16中未描绘的 附加的特定于平台的结果种类也是可以的。例如,如以上所指出,一些设 备可以包括内置网页(例如,HTML页面),用于查看和/或修改设备配置、 操作信息或诊断信息。这些内置设备接口可以被定位为和呈现为另一种类 的搜索结果。针对这些链接中之一选择“启动程序”按钮会将用户链接至 适当内置配置页面。在另一示例中,设备文档可以被呈现为结果的种类, 其中,对这些种类之一的选择启动适当文档查看器,用于打开和显示所选 择的文档。

如以上所指出的,搜索系统的一个或更多个实施方式也可以访问场外 (off-premise)数据源,包括但不限于基于网络的内容(例如,供应商知 识库或技术说明)。此外,搜索部件310的一些实施方式可以被配置成: 将本地搜索结果(即,位于工厂设施内的数据源上的搜索结果)与基于网 络的数据源上可用的信息进行关联。例如,如果本地搜索结果涉及工业设 备中的特定模型,则搜索部件310可以搜索基于外部网络的数据源以获取 有关该设备的附加信息(例如,知识库文章、在线文档、技术说明,关于 设备的最新固件版本的信息等)。然后,搜索部件310可以与适当的本地 搜索结果相关联地呈现至这些外部搜索结果的链接。

在一个或更多个实施方式中,搜索部件310也可以被配置成:基于从 其接收搜索查询的客户端设备402的当前位置来对搜索结果进行筛选。根 据这样的实施方式,在响应于搜索查询确定搜索结果集合时,搜索系统可 以确定客户端设备402的位置(或客户端设备402的用户的位置;例如, 使用由用户携带的位置跟踪标记),并且仅呈现总搜索结果的被确定为与 用户的当前位置有关的子集。例如,如果用户被确定为位于特定的生产线 附近或特定工作单元内,则搜索部件310可以识别搜索结果的与位于工厂 设施的该部分内的工业设备或机器对应的子集。

为了确保联合数据模型202被保持为当前的,发现部件304可以被配 置成周期性地部署一个或更多个发现代理以便识别新添加的设备或新可 用数据项。在一些实施方式中,发现部件304可以被配置成响应于检测到 添加至工厂网络的新设备而部署发现代理。

如以上所指出的,多平台工业搜索系统的一个或更多个实施方式可以 实现在云平台上。图17是针对本文中描述的工业搜索系统概括的基于云 的实现方式的概念图。在该实现方式中,多平台工业搜索系统在云平台 1702上作为基于云的服务1704执行,使得来自多个地理位置上不同的工 业设施(例如,工业设施17061至1706N)的工业数据能够在用于共同搜 索的公共联合数据模型下被索引。该基于云的实现方式还允许用户从基本 上任何位置访问工业搜索服务1704。

云平台1702可以是允许具有云能力的设备访问和使用工业搜索服务 1704的任何基础设施。云平台1702可以是具有因特网连接和适当授权以 使用工业搜索服务1704的设备能够经由互联网访问的公共云。在一些情 况下,云提供商可以提供云平台1702作为平台即服务(PaaS),并且工 业搜索服务1704可以驻留在云平台1702上并且在云平台1702上作为基 于云的服务来执行。在一些这样的配置中,可以将对云平台1702和工业 搜索服务1704的访问提供给客户,作为工业搜索服务1704的拥有者的订 阅服务。或者,云平台1702可以是企业内部操作的私有和半私有云,或 者共享或公司云环境。示例私有云可以包括托管工业搜索服务1704并且 驻留在由防火墙保护的公司网络上的一组服务器。

如果云平台1702是基于网络的云,则在各个工业设施1706处的云代 理设备1708可以直接或经由因特网与工业搜索服务1704进行交互。在示 例配置中,工业设备1710通过物理或无线局域网或者无线电链路连接至 预置(on-premise)云代理设备1708。在另一示例配置中,工业设备1710 可以使用集成型云代理直接访问云平台1702。

图18是更详细的示出了基于云的工业搜索服务的框图。如先前示例 中所描述的,工业数据索引系统302生成联合数据模型202,其从预置工 业设备1710索引多平台工业数据和文档并将其进行关联。在该基于云的 实现方式中,索引系统302可以经由云代理设备1708与工业设备1710接 口。在一些实施方式中,云代理设备1708可以用作基于云的索引系统302 与工厂车间上的工业设备1710之间的网关,使得索引系统302能够使用 与上文描述的技术类似的技术来发现多平台数据项并对其进行关联和索 引。例如,索引系统302可以经由云代理设备1708来部署至工厂网络的 发现代理,以利于对网络上可用的设备和数据的发现和索引。在该基于云 的实现方式中,可以跨不同位置的工厂设施1706进行数据发现。因此, 联合数据模型202表示跨多个工厂设施可用的设备和数据的统一表示。

监视部件508、通知部件510和搜索部件310执行与以上结合图5所 描述的功能类似的功能。在这个基于云的实现中,设备接口部件512经由 云平台与授权的客户端设备1804交换数据。这可以包括从客户端设备 1804接收用于访问工业搜索服务1704以及验证客户端装置1804被授权 访问和使用该服务(例如,使用密码验证、生物特征验证等)的请求。可 以位于工厂设施内部或外部的授权的客户端设备1804可以提交搜索查询 并且从先前示例中描述的基于云的工业检索服务1704接收搜索结果 1802。此外,监视部件508可以根据所定义的监视规则来监视工业设备 1710上的一个或更多个数据项,响应于确定所监视的数据满足由监视规 则定义的条件而启动所定义的自动搜索,并且指示通知部件510向指定的 工厂人员递送合适的通知,如在先前示例中描述的。由于通知服务在云平 台上实现,因此系统可以将这些通知递送给任何位置处的能够访问因特网 (例如,有线、无线、蜂窝等)的客户端设备。

在一些实施方式中,工业搜索系统使得用户能够对由设备接口部件 512递送到他们的客户端设备的主屏幕进行自定义。图19是可以由工业 搜索系统420提供给客户端设备的示例主界面屏幕1902。主界面屏幕1902 包括用于输入和提交对工业搜索系统的人工搜索的搜索窗口1906。该系 统允许用户将先前提交的搜索保存在“保存的搜索”列表1910中,使得 用户能够重新提交搜索而不需要在搜索窗口1906中手动重新输入搜索关 键字。用户还可以配置自己的主界面屏幕1902来显示其工业系统的选定 方面的信息概要1908。这些概要可以被配置成字母数字数据显示、图形 状态指示器、柱状图、饼状图、线图或其他合适的呈现格式。在一些实施 方式中,主界面屏幕1902还可以包含具有活动数据动画的选定HMI屏幕 或控制器逻辑屏幕。由于工业搜索系统将界面显示提供给具有不同大小和 显示长宽比的不同类型的客户端设备,因此系统可以对屏幕内容进行自动 缩放和布置以适合在其上显示屏幕的客户端设备的显示参数。例如,主界 面屏幕1902可以适于在笔记本电脑或平板电脑上显示。如果用户在移动 电话上调用主界面屏幕,则搜索系统可以递送符合该装置的大小和长宽比 的重新格式化的显示屏幕1904。

图20至图22示出了根据本主题申请的一个或更多个实施方式的各种 方法。虽然为了简化说明而将本文中示出的一个或更多个方法示出并描述 为一系列动作,但是应当理解并认识到,本主题创新并不受到这些动作的 次序的限制,因为一些动作可以据此按照不同的顺序发生以及/或者与本 文中示出并描述的其他动作同时发生。例如,本领域技术人员将理解并认 识到,可以可替代地将方法表示为如状态图中的一系列相互关联的状态或 事件。此外,并不需要示出的所有动作实现根据本创新的方法。另外,当 不同的实体执行方法中的不同部分时,可以用一个或多个交互图来表示根 据本主题公开的方法论或方法。此外,所公开的示例方法中的一个或更多 个方法可以彼此组合实施以实现本文中描述的一个或更多个特征或优点。

图20示出了用于对工业环境中的多平台数据进行识别和索引的示例 方法2000。首先,在2002处,将发现代理部署在工业环境的工厂网络上。 该发现代理可以例如由与工业搜索系统结合工作的工业数据索引系统的 发现部件进行部署。索引和搜索系统可以被实现为一个或更多个独立的服 务器、一个或更多个网络服务器、云平台或另一种实现。在2004处,从 发现代理接收关于跨工业环境的多个数据平台分布的可用数据项的信息。 在一些实施方式中,发现代理可以对工厂网络进行导航并收集关于使用中 的设备和系统(例如,工业控制器、HMI、电机驱动器、文档库、库存跟 踪系统等)的信息以及与每个设备或系统相关联的可用数据。发现代理也 可以识别跨各种设备和数据平台的数据项之间的相关性(例如,对下述情 况进行识别:在控制逻辑程序的特定梯级上引用的数据标签也被引用在 HMI的显示屏幕上)。

在2006处,如果从发现代理接收到的信息不是以公共名称空间格式 提供的,则将该数据转换为公共名称空间格式。在2008处,将上下文信 息添加到由该信息识别的各个数据项。该上下文信息可以包括例如在其上 发现数据的工厂、生产区、机器或设备;给定数据项与另一数据项之间的 关系或相关性;与该数据项对应的数据平台(例如,工业控制程序、HMI 应用、知识库文章、设备文档等)、与该数据项有关联的一个或更多个雇 员、或其他这种信息。在2010处,以可搜索联合数据模型对关于所发现 的数据项的上下文信息建立索引。

图21示出了用于在部署到工厂设备中之前对工业控制系统的可用数 据项进行预索引的示例方法2100。首先,在2102处,将发现代理部署在 工业控制系统的本地网络上。工业控制系统可以包括例如被容纳在要安装 到客户的工厂设施的一个或更多个控制箱中的集成控制系统。在一些实施 方式中,可以由工业控制系统的工业控制器中嵌入的工业数据索引系统来 部署发现代理。在2104处,从发现代理接收关于跨工业环境的多个数据 的平台分布的可用数据项的信息,该信息包括但不限于与下述方面有关的 信息:数据标签、I/O模块配置、以及对工业控制器本身的控制编程、控 制箱中安装的操作者界面终端的HMI应用中定义的数据标签、所发现的 数据项之间的任何所发现的相关性、关于设备的参数或属性列表(例如, 变频驱动参数、通信模块配置设定)、存储在用于访问所存储的数据或参 数的设备上的网页等。在2106处,基于在步骤2104处接收到的信息以预 索引子模型对所发现的数据项和互相关性建立索引。

在2108处,检测与主工业数据索引系统的集成。例如,当在工厂设 施处安装控制箱时,工业控制器的索引系统可以发现共享工厂网络上的主 工业索引系统。在步骤2110处,在与主索引系统建立通信时,将该子模 型发送到主索引系统以与工厂范围的联合数据模型集成。

图22示出了用于发现和索引多平台工业数据的项之间的关系的示例 方法2200。首先,在2202处,发现驻留在工厂网络上的多个数据源。这 些数据源可以包括例如工业控制器、HMI终端、电机驱动器、知识库、 设备文档库、库存数据库或其他这种数据源。这些数据源可以例如由工业 数据索引系统的发现部件来发现。在2204处,在多个数据源的第一数据 源上识别数据项。数据项可以包括例如对在工业控制器(第一平台)上执 行的梯形逻辑程序的一个或更多个梯级上的数据标签的引用、HMI(第二 平台)的一个或更多个显示屏幕上引用的数据标签或其他这种数据项。

在2206处,在第一数据源或不同的第二数据源中的至少一个数据源 上识别与该数据项有关系的一个或更多个相关数据项。这可以包括例如识 别影响感兴趣的数据项的一个或更多个其他数据标签(例如,其他设备的 状态、所测量的涉及其他设备的过程变量等)。在2208处,识别与在步骤 2206处识别的相关数据项有关系的一个或更多个附加的相关数据项。例 如,当在步骤2206处发现影响感兴趣的数据项的状态的若干个相关数据 项时,可以在步骤2208处通过控制相关数据项的状态(例如,其他设备 的状态、所测量的涉及其他设备的过程变量等)来识别间接影响感兴趣的 数据项的状态的附加的相关数据项。以这种方式,可以发现与在步骤2204 处识别的数据项有功能关系的所有相关数据项。

数据发现过程可以对这些新发现的附加的相关数据项执行迭代搜索, 直到满足所定义的完成条件。因此,在2210处,做出关于迭代搜索是否 完成的确定(例如,基于对完成条件的满足)。如果迭代搜索未完成,则 方法返回至步骤2206,并使用指定的数据项和附加的相关数据项作为搜 索条件来执行对相关数据项的附加搜索。以这种方式,搜索系统迭代地对 工厂网络上的可用数据源进行循环,直到发现被确定为与指定的数据项相 关的全部关系。

如果在步骤2210处确定迭代搜索已完成,则在步骤2212处,以可搜 索联合数据模型对描述数据项、相关数据项以及附加的相关数据项之间的 关系的信息建立索引以供后续搜索。

本文中描述的实施方式、系统和部件以及其中可以实施本主题说明书 中阐述的各个方面的工业控制系统和工业自动化环境可以包括能够跨网 络交互的计算机或网络部件如服务器、客户端、可编程逻辑控制器(PLC)、 自动化控制器、通信模块、移动计算机、无线部件,控制部件等。计算机 和服务器包括一个或更多个处理器(采用电信号来执行逻辑运算的电子集 成电路),该处理器被配置成执行存储在介质中的指令,该介质诸如随机 存取存储器(RAM)、只读存储器(ROM)、硬盘驱动器以及可以包括记 忆棒、存储卡、闪存驱动器、外部硬盘驱动器等的可移除存储设备。

类似地,如本文中使用的术语PLC或自动化控制器可以包括能够跨 多个部件、系统和/或网络共享的功能。作为示例,一个或更多个PLC或 自动化控制器可以与跨网络的各种网络设备进行通信和协作。这可以包括 基本上任何类型的控制模块、通信模块、计算机、输入/输出(I/O)设备、 传感器、致动器、仪器以及经由包括控制网络、自动化网络和/或公共网 络的网络进行通信的人机接口(HMI)。PLC或自动化控制器也可以与各 种其他设备进行通信并控制各种其他设备,各种其他设备例如是标准的或 额定安全(safety-rated)I/O模块,包括模拟、数字、编程/智能I/O模块、 其他可编程控制器、通信模块、传感器、致动器、输出设备等。

网络可以包括:公共网络,例如因特网、内联网;以及自动化网络, 例如包括DeviceNet、ControlNet以及以太网/IP的控制和信息协议(CIP) 网络。其他网络包括以太网、DH/DH+、远程I/O、现场总线、Modbus、 Profibus、CAN、无线网、串行协议、近场通信(NFC)、蓝牙等。另外, 网络设备可以包括各种可能性(硬件和/或软件部件)。这包括以下部件: 例如具有虚拟局域网(VLAN)能力的交换机、LAN、WAN、代理、网 关、路由器、防火墙、虚拟专用网(VPN)设备、服务器、客户端、计算 机、配置工具、监视工具和/或其他设备。

为了提供用于所公开的主题的各个方面的上下文,图23和图24以及 以下讨论旨在提供对在其中可以实现所公开的主题的各个方面的适合的 环境的简要的、一般的描述。

参照图23,用于实现上述主题的各个方面的示例环境2310包括计算 机2312。计算机2312包括处理单元2314、系统存储器2316和系统总线 2318。系统总线2318使得包括但不限于系统存储器2316的系统部件耦合 至处理单元2314。处理单元2314可以是各种可用处理器中任意一个。也 可以使用多核微处理器和其他多处理器架构作为处理单元2314。

系统总线2318可以是包括存储器总线或存储器控制器、外围总线或 外部总线、和/或局部总线的若干类型的一个或多个总线结构中的任意一 类,该局部总线使用以下任意多种可用总线架构,包括但不限于8位总线、 工业标准架构(ISA)、微通道架构(MSA)、扩展型ISA(EISA)、智能 驱动电子设备(IDE)、VESA局部总线(VLB)、外围部件互连(PCI)、 通用串行总线(USB)、高级图形端口(AGP)、个人计算机存储卡国际协 会总线(PCMCIA)以及小型计算机系统接口(SCSI)。

系统存储器2316包括易失性存储器2320和非易失性存储器2322。 在非易失性存储器2322中存储有包括例如在启动期间用于在计算机2312 内的元件之间传送信息的基本例程的基本输入/输出系统(BIOS)。作为 说明而非限制,非易失性存储器2322可以包括只读存储器(ROM)、可 编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除PROM (EEPROM)或闪速存储器。易失性存储器2320包括作为外部高速缓冲 存储器的随机存取存储器(RAM)。作为说明而非限制,RAM可以以许 多形式获得,例如同步RAM(SRAM)、动态RAM(DRAM)、同步DRAM (SDRAM)、双数据速率SDRAM(DDRSDRAM)、增强型SDRAM (ESDRAM)、SynchlinkDRAM(SLDRAM)和直接RambusRAM (DRRAM)。

计算机2312还包括可移除/不可移除计算机存储介质、易失性/非易失 性计算机存储介质。图23示出例如盘式存储器2324。盘式存储器2324 包括但不限于诸如磁盘驱动器、软盘驱动器、磁带驱动器、Jaz驱动器、 Zip驱动器、LS-100驱动器、闪存卡、或记忆棒的设备。另外,盘式存储 2324可以单独包括存储介质或者以与其他存储介质组合的方式包括存储 介质,其他存储介质包括但不限于光盘驱动器,例如压缩盘式ROM设备 (CD-ROM)、CD可记录驱动器(CD-R驱动器)、CD可复写驱动器 (CD-RW驱动器)或数字多功能盘ROM驱动器(DVD-ROM)。为便于 盘式存储器2324与系统总线2318连接,通常使用可移动或不可移动接口 例如接口2326。

应当理解的是,图23描述了在适合的操作环境2310中用作用户与所 描述的基本计算机资源之间的媒介的软件。这样的软件包括操作系统 2328。操作系统2328可以被存储在盘式存储器2324上,用作对计算机 2312的资源进行控制和分配。系统应用程序2330通过存储在系统存储器 2316中或盘式存储器2324上的程序模块2332和程序数据2334经由操作 系统2328利用资源管理。应当理解的是,可以利用各种操作系统或操作 系统的组合来实现本主题公开内容的一个或更多个实施方式。

用户通过输入设备2336将命令或信息输入到计算机2312中。输入设 备2336包括但不限于定点设备,例如鼠标、跟踪球、触控笔、触摸垫、 键盘、麦克风、操纵杆、游戏垫、卫星天线、扫描仪、TV调谐卡、数码 相机、数码摄像机、网络摄像头等。这些和其它输入设备通过系统总线 2318经由接口端口2338与处理单元2314连接。接口端口2338包括例如, 串行端口、并行端口、游戏端口和通用串行总线(USB)。输出设备2340 使用一些与输入设备2336相同类型的端口。因此,例如,USB端口可以 用来向计算机2312提供输入,并从计算机2312向输出装置2340输出信 息。设置输出适配器2342用以说明存在一些需要特殊适配器的输出装置 2340诸如监视器、扬声器和打印机以及其他输出设备2340。作为举例说 明而非限制,输出适配器2342包括提供输出设备2340与系统总线2318 之间连接的装置的显卡和声卡。应当注意的是,其他设备和/或设备系统 提供输入和输出两种能力,例如远程计算机2344。

计算机2312可以在网络化环境中操作以利用至一个或更多个远程计 算机例如远程计算机2344的逻辑连接。远程计算机2344可以为个人计算 机、服务器、路由器、网络PC、工作站、基于微处理器的装置、对等设 备或其他公共网络节点等,并且远程计算机2344通常包括许多或所有关 于计算机2312描述的元件。为了简明起见,仅记忆存储设备2346与远程 计算机2344一起进行说明。远程计算机2344通过网络接口2348逻辑连 接至计算机2312,然后经由通信连接2350物理地连接。网络接口2348 包括通信网络例如局域网(LAN)和广域网(WAN)。LAN技术包括光 纤分布式数据接口(FDDI)、铜分布式数据接口(CDDI)、以太网/IEEE 802.3、令牌环/IEEE802.5等。WAN技术包括但不限于点对点链路、电 路交换网诸如综合服务数位网(ISDN)及其变体、分组交换网络以及数 字用户线路(DSL)。网络接口2348还可以包括近场通信(NFC)或者蓝 牙通信。

通信连接2350指的是用于使网络接口2348与系统总线2318连接的 硬件/软件。尽管为了清楚说明起见,通信连接2350被示出在计算机2312 的内部,但通信连接2350也可以在计算机2312的外部。用于连接至网络 接口2348的必要的硬件/软件例如包括内部和外部技术,例如包括常见电 话级调制解调器、线缆调制解调器和DSL调制解调器、ISDN适配器和以 太网卡的调制解调器。

图24是可以与所公开的主题进行交互的示例计算环境2400的示意框 图。示例计算环境2400包括一个或更多个客户端2402。客户端2402可 以为硬件和/或软件(例如线程、过程、计算设备)。示例计算环境2400 还包括一个或更多个服务器2404。服务器2404也可以为硬件和/或软件 (例如线程、过程、计算设备)。例如,服务器2404可以通过利用本文中 所描述的一个或更多个实施方式的来容纳线程以进行转换。客户端2402 和服务器2404之间的一种可能的通信可以是适于在两个或更多个计算机 进程之间传送的数据包的形式。示例计算环境2400包括可以用来便于客 户端2402与服务器2404之间的通信的通信框架2406。客户端2402可操 作地连接至可以用于存储客户端2402本地的信息。类似地,服务器2404 操作连接至可以用来存储服务器2404本地的信息的一个或更多个服务器 数据存储器2410。

上述内容包括本发明的示例。当然,不可能为了描述所公开的主题而 描述部件或方法的所有可想到的组合,但是,本领域技术人员可以认识到, 本发明的很多另外的组合和置换是可能的。因此,所公开的主题意在包括 落入所附权利要求的精神和范围内的所有这样的替选、修改和变化。

具体地,关于由上述部件、设备、电路、系统等执行的各种功能,用 于描述这样的部件的术语(包括涉及“装置”)除非另行指出,否则意在 对应于执行所述部件的具体功能的任意部件(例如,功能上的等同),该 部件即使结构上不等同于所公开的结构,但执行所公开的主题的本文中示 出的示例方面中的功能。关于这点,还应当认识到,所公开的主题包括系 统以及具有计算机可执行指令的计算机可读介质,这些计算机可执行指令 用于执行所公开的主题的各种方法的动作和/或事件。

此外,尽管可能只关于若干实现中的一个实现公开了所公开的主题的 具体特征,然而,在有利于特定或具体应用或者被特定或具体应用所需要 的情况下,这样的特征可以与可以想到的其它实现的一个或更多个其它特 征相组合。此外,就术语“包括(includes)”和“包含(including)”及 其变体在详细描述或权利要求中的使用而言,这些术语意在以类似于术语 “包括(comprising)”的方式是包括性的。

在本申请中,词语“示例性”用于表示用作示例、例子或说明。本文 中描述为“示例性”的任意方面或设计并不一定要被理解为相比于其它方 面或设计是优选的或有利的。相反,词语“示例性”的使用意在以具体的 方式表示概念。

本文中所描述的各种方面和特征可以实现为方法、装置、或使用标准 编程和/或工程技术的制造物。本文中所使用的术语“制造物”意在包括 能够从任意计算机可读设备、载体或介质访问的计算机程序。例如,计算 机可读介质可以包括但不限于磁存储设备(例如,硬盘、软盘、磁条……)、 光盘(例如,致密盘(CD)、数字多功能盘(DVD)……)、智能卡和闪 存设备(例如,卡、棒、键驱动器……)。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号