使用I/O抽象的现场设备配置对过程工厂中的设备的绑定的制作方法

文档序号:14649409发布日期:2018-06-08 21:29阅读:344来源:国知局
使用I/O抽象的现场设备配置对过程工厂中的设备的绑定的制作方法

本申请请求于2015年10月12日提交的题为“Smart Commissioning of Process Control Plants”的美国申请No.62/240,084的优先权和权益,其全部公开内容通过引用方式并入本文。

本申请涉及于2015年1月26日提交的题为“Commissioning Field Devices in a Process Control System Supported by Big Data”的美国申请No.14/605,304以及与此同时提交并且题为“Method and System for Commissioning Process Control Hardware”(代理案卷号06005-593481)的美国专利申请No.15/291,200,它们的全部公开内容通过引用在此并入本文。

技术领域

本公开内容总体上涉及过程工厂和过程控制系统,并且更具体地,涉及过程工厂和过程控制系统的现场设备的回路的智慧或智能调试。



背景技术:

分布式过程控制系统(如在化学、石油、工业或其它过程工厂中使用以制造、精炼、转换、生成或生产物理材料或产品的分布式过程控制系统)通常包括一个或多个过程控制器,其经由模拟、数字或组合的模拟/数字总线、或经由无线通信链路或网络通信地耦合到一个或多个现场设备。现场设备(其可以是例如阀、阀定位器、开关和变送器(例如,温度、压力、液位和流速传感器)位于过程环境内并且通常执行物理或过程控制功能(诸如打开或关闭阀)、测量过程和/或环境参数(诸如温度或压力等),以控制在过程工厂或系统内执行的一个或多个过程。诸如符合众所周知的现场总线协议的现场设备之类的智能现场设备也可以执行控制计算、报警功能、以及控制器内通常实现的其它控制功能。通常也位于工厂环境内的过程控制器接收指示现场设备获得的过程测量结果的信号和/或与现场设备有关的其它信息,并且执行运行例如不同的控制模块的控制器应用,该不同的控制模块作出过程控制决策、基于接收到的信息生成控制信号、并且与现场设备(诸如和Fieldbus现场设备)中执行的控制模块或块进行协调。控制器中的控制模块通过通信线路或链路将控制信号发送到现场设备,从而控制过程工厂或系统的至少一部分的操作,例如控制在工厂或系统内运行或执行的一个或多个工业过程的至少一部分。例如,控制器和现场设备控制由过程工厂或系统控制的过程的至少一部分。通常位于工厂环境内的I/O设备通常被设置在控制器与一个或多个现场设备之间,并且能够例如通过将电信号转换成数字值(反之亦然)来在它们之间通信。如本文所使用的,现场设备、控制器和I/O设备通常被称为“过程控制设备”,并且通常位于、设置、或安装在过程控制系统或工厂的现场环境中。

来自现场设备和控制器的信息通常通过数据高速通道或通信网络可用于一个或多个其它硬件设备,诸如操作员工作站、个人计算机或计算设备、数据历史库、报告生成器、集中式数据库、或其它集中式管理计算设备,这些计算设备通常放置在控制室或远离工厂的较严苛的现场环境的其它位置,例如在过程工厂的后端环境中。这些硬件设备中的每个硬件设备通常跨过程工厂或过程工厂的一部分而集中。这些硬件设备运行应用,该应用可以例如使操作员能够执行关于控制过程和/或操作过程工厂的功能,诸如改变过程控制例程的设置、修改控制器或现场设备内的控制模块的操作、查看过程的当前状态、查看现场设备和控制器生成的警报、仿真过程的操作以培训人员或测试过程控制软件、保存和更新配置数据库等。硬件设备、控制器和现场设备使用的数据高速通道可以包括有线通信路径、无线通信路径、或有线和无线通信路径的组合。

作为示例,艾默生过程管理公司出售的DeltaVTM控制系统包括储存在位于过程工厂内不同位置处的不同设备内并由其执行的多个应用。驻留在过程控制系统或工厂的后端环境中的一个或多个工作站或计算设备中的配置应用使得用户能够创建或改变过程控制模块并将这些过程控制模块经由数据高速通道下载到专用分布式控制器。典型地,这些控制模块由通信互连的功能块组成,这些功能块是面向对象的编程协议中的对象,其基于对其的输入来执行控制方案内的功能并且向控制方案内的其它功能块提供输出。配置应用还可以允许配置设计者创建或改变由查看应用使用的操作员接口,以向操作员显示数据并且使得操作员能够改变过程控制例程内的设置,诸如设定点。每个专用控制器以及在一些情况下一个或多个现场设备储存并执行相应的控制器应用,该控制器应用运行指派并下载到其中的控制模块以执行实际的过程控制功能。可以在一个或多个操作员工作站上(或者在与操作员工作站和数据高速通道通信连接的一个或多个远程计算设备上)执行的查看应用经由数据高速通道从控制器应用接收数据并使用用户接口向过程控制系统设计者、操作员、或用户显示该数据,并且可以提供诸如操作员视图、工程师视图、技术人员视图等之类的多个不同视图中的任何视图。数据历史库应用通常储存在数据历史库设备中并且由其执行,数据历史库设备收集和储存跨数据高速通道提供的一些或全部数据,而配置数据库应用可以在附接到数据高速通道的又一计算机中运行,以储存当前过程控制例程配置和与之关联的数据。替代地,配置数据库可以位于与配置应用相同的工作站中。

通常,过程工厂或系统的调试涉及使工厂或系统的各部件达到系统或工厂可按预期运行的点。如众所周知的,物理过程元件(诸如将用于控制过程工厂中的过程的阀、传感器等)(例如,根据管道和仪表图(P&ID)和/或工厂楼层布局和/或过程布局的其它计划或“蓝图”)安装在工厂的现场环境内的相应位置处。在过程元件已经被安装后,至少一些过程元件被调试。例如,现场设备、采样点、和/或其它元件可能会经受调试。调试是通常包括多个动作或活动的涉及的复杂的过程。例如,调试可以包括以下动作或活动,除了其它以外,诸如验证或确认已安装的过程控制设备(诸如现场设备)的身份及其预期的连接;确定并提供唯一识别过程控制系统或工厂内的过程控制设备的标签;为设备设置或配置参数的初始值、极限等;在各种条件下例如通过操纵提供给设备的信号和执行其它测试、以及其它调试活动和动作来验证设备的安装、操作和行为的正确性。调试期间的设备验证对于安全原因以及符合监管和质量要求非常重要。

其它调试动作或活动在其中包括设备的过程控制回路上执行。这种调试动作或活动包括:例如,验证跨互连发送的各个信号导致互连两端的预期行为、对过程控制回路的完整性检查,生成完工I/O列表以指示工厂内实施的设备的实际物理连接以及记录其它“已安装”数据、等等。

对于一些调试任务,用户可以在各目标过程控制设备、部件和回路处本地地使用调试工具(例如,手持式或便携式计算设备)。一些调试任务可以在过程控制系统的操作员接口处执行,例如在包括在过程工厂的后端环境中的操作员工作站的操作员接口处执行。

典型地,过程工厂的调试需要在过程工厂的现场环境中安装、建立、和相互连接物理设备、连接、布线等。在工厂的后端环境处(例如,在诸如操作员工作站、个人计算机或计算设备、集中式数据库、配置工具等之类的集中式管理计算设备处,它们通常放置在控制室或远离较严酷的工厂现场环境的其它位置中),专门识别和/或定址各设备、它们的配置、以及它们的互连的数据被集成、验证或调试并储存。因此,在物理硬件已经被安装和配置之后,标识信息、逻辑指令、以及其它指令和/或数据被下载或以其它方式提供给设置在现场环境中的各设备,使得各设备能够与其它设备进行通信。

当然,除了在后端环境中执行的调试动作之外,还执行调试动作或活动以单独地和整体地验证物理和逻辑设备两者的现场环境中的连接和操作的正确性。例如,现场设备可以被物理安装并且被单独验证,例如通电、断电等。现场设备的端口然后可以物理连接到调试工具,经由该调试工具可以将仿真信号发送到现场设备,并且可以测试现场设备响应于各种仿真信号的行为。类似地,其通信端口被调试的现场设备最终可以物理连接到终端块,并且可以测试终端块与现场设备之间的实际通信。典型地,现场环境中的现场设备和/或其它部件的调试需要部件标识的知识,并且在一些情况下需要部件互连的知识,从而测试信号和响应可以在现场设备和其它回路部件之间传输,并且所得到的行为被验证。在目前已知的调试技术中,这种标识和互连知识或数据通常由后端环境提供给现场环境中的部件。例如,后端环境将把在控制模块中使用的现场设备标签下载到在实时工厂操作期间将由控制模块控制的现场设备中。

最终,在已经分别调试、检查、或测试过程控制回路的各个部件和部分之后,整个回路本身被调试、检查和/或测试,例如“回路测试”。通常,回路测试涉及响应各个输入或条件和/或各种状态来测试回路的行为。后端环境中的操作员与现场环境中的操作员协调,以在过程控制回路处注入各输入和/或生成各种条件和/或状态,并针对它们对可接受的目标值和/或范围的依附程度检查所得到的行为和/或测量值。



技术实现要素:

本文公开了用于智能调试(也称为“智慧调试”或“并行调试”)的技术、系统、装置、部件、设备和方法。所述技术、系统、装置、部件、设备和方法可应用于本文可互换地称为“工业控制”、“过程控制”或“过程”系统、环境、和/或工厂的工业过程控制系统、环境和/或工厂。典型地,这些系统和工厂以分布式方式提供对一个或多个过程(本文也称为“工业过程”)的控制,该过程操作为制造、精炼或转化原始物理材料以生成或生产产品。

过程控制系统和/或工厂的智能调试包括各种技术、系统、装置、部件和/或方法,它们允许调试过程的至少一些部分在本地、自动地和/或分发地执行,从而过程工厂的设备、部件、和其它部分可以在被并入或集成到工厂或系统中作为整体之前被部分或甚至完全调试。智能调试允许例如过程控制系统的各个部分和/或其相应的安全仪表系统(SIS)(例如,独立式或集成安全系统(ICSS))在被集合在一起并集成在过程工厂的驻地位置或场地处之前被构建并且至少部分地在不同的地理位置(例如,在不同的“改装场(mod yards)”)处被调试。从某种意义上讲,智能/智慧调试允许并行调试活动和动作发生。

例如,智能调试允许一些(假如不是大多数)调试活动和/或动作在过程工厂的现场环境和后端环境中独立地(并且实际上并行地,如果需要的话)执行。在现场环境中执行的设计和工程设计的调试不再取决于正在执行并且主要在后端环境中完成的功能设计、工程设计、和调试的进度(和完成)。因此,现场环境的物理部件的本地调试活动的重要部分能够独立于后端环境的功能或逻辑部件的调试来执行,反之亦然。换言之,在现场环境或后端环境中的调试活动和动作的至少一部分可以在现场环境和后端环境通信地断开连接(例如,当已经(或正在)安装在现场环境中的回路(或其一部分)与后端环境通信地断开连接)时执行。例如,使用智能调试技术,在现场环境和/或后端环境中的调试活动和动作的至少一部分能够在过程控制系统或工厂知道现场设备指派给特定的I/O卡和/或通道之前执行。

类似地,关于过程工厂的过程控制回路,智能调试允许对回路的各个部件和部分执行各种调试活动和/或动作,而不需要首先安装和互连回路的所有部件。相应地,过程控制回路的调试活动的至少一部分可以在过程控制回路的各个部件被断开连接或尚未被分配给彼此、给回路和/或给后端环境时执行。例如,当过程工厂的后端环境和现场环境通信地断开连接时,可以在过程工厂的后端环境和现场环境两者处发起和执行相应的调试活动。现场环境和后端环境可以在它们的各自侧同时调试过程控制回路的各个部分,然后在结合两侧时,执行的剩余调试活动的大部分是回路整体经受的那些调试活动。

此外,智能调试允许某些调试动作和活动基于某些条件被自动触发或发起,而不需要任何用户输入。在某些情况下,可以自动触发和执行多个调试动作和/活动,而不需要用户指示接下来将执行哪些活动、对哪些部件执行以及如何执行。

因此,由于智能调试允许在过程工厂的现场环境中执行的物理设计和工程设计独立于在过程工厂的后端环境中执行的功能设计和工程设计进行,并且也由于智能调试还允许过程控制回路的各个部分的分段调试独立地或在如同安装的基础上执行,因此后端与现场之间的调试调度依赖性减少,并且调试过程工厂所需的整体日历时间也减少了。因此,智能调试优化了整个调试过程,同时显著降低了时间和人力资源,因此显著降低了成本。

附图说明

图1描绘了例示示例性系统过程工厂的框图,其至少一部分可以通过利用本文描述的一个或多个智能调试技术来进行调试;

图2A包括可以被包括在图1的过程工厂中并且可以利用智能调试技术至少部分地进行调试的两个示例性回路的框图;

图2B例示了可以包括在图1的过程工厂中的电子编组(mashaling)块或装置的示例性架构;

图2C包括可以包括在图1的过程工厂中并且可以利用智能调试技术至少部分地进行调试的两个示例性回路的框图;

图3A描绘了示例性标签解析装置或设备的框图;

图3B描绘了标签解析的示例性方法的流程图;

图4A例示了可以在智能调试期间使用的示例性设备容器或占位符对象;

图4B描绘了用于调试过程工厂的示例性方法的流程图;

图5A例示了可以在智能调试期间使用的电子编组部件的示例性扩展器;

图5B提供了用于在回路与过程工厂的后端环境通信地断开连接时在过程工厂的现场环境中本地生成完工回路信息的示例方法的流程图;

图5C描绘了示例性的本地完工回路信息生成装置或设备的框图;

图6提供了用于调试过程工厂的示例性方法的流程图;

图7A-7B例示了过程或工业工厂的后端系统内的部件的视图,该过程或工业工厂提供了在现场装备经由工厂中的I/O网络连接和/或分配之前配置和执行对诸如模块、应用、和接口程序之类的后端部件的调试动作的能力;

图7C描绘了用于当在现场装备经由工厂中的I/O网络连接和/或分配之前配置和调试后端系统部件时与作为现场装备的代理的设备占位符对象进行通信的系统和方法;

图8描绘了在过程或工业工厂的调试中使用以经由建立的I/O网络将工厂的后端系统中的对象与工厂中的现场装备绑定的绑定应用和系统;

图9A例示了描绘示例性过程控制回路的框图,该过程控制回路中的一个或多个可以通过本文描述的自动回路测试技术来进行测试;

图9B描绘了用于自动测试过程控制回路的示例性方法的流程图;

图9C描绘了用于自动测试多个过程控制回路的示例性方法的流程图;以及

图10包括将传统的调试技术与本文所述的至少一些智能调试技术进行比较的图表。

具体实施方式

如上所述,当在线时操作为实时控制一个或多个工业过程的过程工厂、过程控制系统、或过程控制环境可以利用本文描述的新颖的智能调试技术、系统、装置、部件、设备、和/或方法中的一个或多个来进行调试。过程工厂当在线调试和操作时包括一个或多个有线或无线过程控制设备、部件、或元件,这些过程控制设备、部件、或元件与过程控制系统一起执行物理功能,以控制在过程工厂内执行的一个或多个过程。过程工厂和/或过程控制系统可以包括例如一个或多个有线通信网络和/或一个或多个无线通信网络。另外,过程工厂或控制系统可以包括集中式数据库,诸如连续、批次、资产管理、历史库和其它类型的数据库。

为了说明,图1是示例性过程工厂、过程控制系统、或过程控制环境5的框图,其至少一部分已经通过使用本文描述的任何一种或多种智能调试技术来进行调试。过程工厂5包括一个或多个过程控制器,其接收指示由现场设备获得的过程测量结果的信号,处理该信息以执行控制例程,并且生成控制信号,该控制信号通过有线或无线过程控制通信链路或网络发送到其它现场设备以控制工厂5中的过程的操作。通常,至少一个现场设备执行物理功能(例如打开或关闭阀,增加或降低温度,进行测量,感测状况等)以控制过程的操作。某些类型的现场设备通过使用I/O设备与控制器进行通信。过程控制器、现场设备、和I/O设备可以是有线或无线的,并且任何数量和组合的有线和无线过程控制器、现场设备和I/O设备可以包括在过程工厂环境或系统5中。

例如,图1例示了经由输入/输出(I/O)卡26和28通信地连接到有线现场设备15-22并且经由无线网关35和过程控制数据高速通道或骨干10通信地连接到无线现场设备40-46的过程控制器11。过程控制数据高速通道10可以包括一个或多个有线和/或无线通信链路,并且可以使用任何期望的或合适的或通信协议(诸如,举例来说,以太网协议)来实现。在一些配置(未示出)中,控制器11可以使用一个或多个除骨干10以外的通信网络通信地连接到无线网关35,诸如通过使用任何数量的其它有线或无线通信链路,其支持一个或多个通信协议,例如,Wi-Fi或其它符合IEEE 802.11的无线局域网协议、移动通信协议(例如,WiMAX、LTE或其它ITU-R兼容协议)、Profibus、Fieldbus等。

可以是例如由艾默生过程管理公司出售的DeltaVTM控制器的控制器11可以操作为使用现场设备15-22和40-46中的至少一些来实现批量过程或连续过程。在实施例中,除了通信地连接到过程控制数据高速通道10之外,控制器11还使用任何期望的硬件和软件来与现场设备15-22和40-46中的至少一些通信连接,这些硬件和软件与例如标准4-20mA设备、I/O卡26、28和/或诸如Fieldbus协议、协议、协议等之类的任何智能通信协议相关联。在图1中,控制器11、现场设备15-22和I/O卡26、28是有线设备,并且现场设备40-46是无线现场设备。当然,有线现场设备15-22和无线现场设备40-46可符合任何其它期望的标准或协议(诸如任何有线或无线协议),包括将来开发的任何标准或协议。

图1的过程控制器11包括实现或监督一个或多个过程控制例程38(例如,储存在存储器32中的过程控制例程)的处理器30。处理器30被配置为与现场设备15-22和40-46以及通信地连接到控制器11的其它节点进行通信。应该注意,本文描述的任何控制例程或模块可以使其部分由不同的控制器或其它设备实现或执行(如果需要的话)。类似地,将在过程控制系统5内实现的本文描述的控制例程或模块38可以采取任何形式,包括软件、固件、硬件等。控制例程可以以任何期望的软件格式来实现,诸如使用面向对象编程、梯形逻辑、顺序功能图、功能框图、或使用任何其它软件编程语言或设计范例。控制例程38可以储存在任何期望类型的存储器32(诸如随机存取存储器(RAM)或只读存储器(ROM))中。同样地,控制例程38可被硬编码为例如一个或多个EPROM、EEPROM、专用集成电路(ASIC)、或任何其它硬件或固件元件。因此,控制器11可以被配置为以任何期望的方式实现控制策略或控制例程。

控制器11使用通常被称为功能块的控制策略来实现控制策略,其中,每个功能块是整体控制例程的对象或其它部分(例如,子例程),并且与其它功能块(经由称为链路的通信)结合操作以实现过程控制系统5内的过程控制回路。基于控制的功能块通常执行诸如与变送器、传感器或其它过程参数测量设备相关联的输入功能、诸如与执行PID、模糊逻辑等控制的控制例程相关联的控制功能、或者控制某个设备(诸如阀)的操作的输出功能中的一个,以在过程控制系统5内执行一些物理功能。当然,存在混合和其它类型的功能块。功能块可以储存在控制器11中并且由控制器11执行,当这些功能块用于标准4-20mA设备以及某些类型的智能现场设备(诸如设备)或者与它们相关联时,通常是这种情况,或者这些功能块可以储存在现场设备本身中并由其实现,这可以是Fieldbus设备的情况。控制器11可以包括一个或多个控制例程38,其可以实现通过执行一个或多个功能块来执行的一个或多个控制回路。

有线现场设备15-22可以是任何类型的设备(诸如传感器、阀、变送器、定位器等),而I/O卡26和28可以是符合任何期望的通信或控制器协议的任何类型的I/O设备。在图1中,现场设备15-18是通过模拟线路或组合的模拟和数字线路与I/O卡26通信的标准4-20mA设备或设备,而现场设备19-22是诸如Fieldbus现场设备之类的智能设备,其使用Fieldbus通信协议通过数字总线与I/O卡28进行通信。然而,在一些实施例中,虽然有线现场设备15、16和18-21中的至少一些和/或I/O卡26、28中的至少一些另外地或替代地使用过程控制数据高速通道10和/或通过使用其它合适的控制系统协议(例如,Profibus、DeviceNet、Foundation Fieldbus、ControlNet、Modbus、HART等)与控制器11通信。

在图1中,无线现场设备40-46使用无线协议(诸如协议)经由无线过程控制通信网络70进行通信。这样的无线现场设备40-46可以直接与无线网络70的一个或多个其它设备或节点(也被配置为进行无线通信)进行通信(使用例如无线协议或另一无线协议)。为了与未被配置为进行无线通信的一个或多个其它节点通信,无线现场设备40-46可以利用连接到过程控制数据高速通道10或另一个过程控制通信网络的无线网关35。无线网关35提供对无线通信网络70的各无线设备40-58的访问。具体地,无线网关35提供无线设备40-58、有线设备11-28和/或过程控制工厂5的其它节点或设备之间的通信耦合。例如,无线网关35可以通过使用过程控制数据高速通道10和/或通过使用过程工厂5的一个或多个其它通信网络来提供通信耦合。

类似于有线现场设备15-22,无线网络70的无线现场设备40-46执行过程工厂5内的物理控制功能,例如,打开或关闭阀、或者获得过程参数的测量结果。然而,无线现场设备40-46被配置为使用网络70的无线协议进行通信。因此,无线网络70的无线现场设备40-46、无线网关35、和其它无线节点52-58是无线通信数据包的生产者和消费者。

在过程工厂5的一些配置中,无线网络70包括非无线设备。例如,在图1中,图1的现场设备48是传统的4-20mA设备,而现场设备50是有线设备。为了在网络70内进行通信,现场设备48和50经由无线适配器52a、52b连接到无线通信网络70。无线适配器52a、52b支持诸如WirelessHART之类的无线协议,并且还可以支持诸如Fieldbus、PROFIBUS、DeviceNet等之类的一个或多个其它通信协议。另外,在一些配置中,无线网络70包括一个或多个网络接入点55a、55b,其可以是与无线网关35有线通信的单独的物理设备,或者可以与无线网关35一起提供为整体设备。无线网络70还可以包括一个或多个路由器58以将数据包从一个无线设备转发到无线通信网络70内的另一个无线设备。在图1中,无线设备40-46和52-58彼此通信并通过无线通信网络70的无线链路60、和/或经由过程控制数据高速通道10与无线网关35通信。

在图1中,过程控制系统5包括通信地连接到数据高速通道10的一个或多个操作员工作站71。经由操作员工作站71,操作员可以查看并监控过程工厂5的运行时间操作,以及采取可能需要的任何诊断、修正、维护、和/或其它动作。至少一些操作员工作站71可以位于工厂5中或附近的各个受保护区域,并且在一些情况下,至少一些操作员工作站71可以位于远处,但仍然与工厂5通信连接。操作员工作站71可以是有线或无线计算设备。

示例性过程控制系统5还被例示为包括配置应用72a和配置数据库72b,其中的每一个也通信地连接到数据高速通道10。如上所述,配置应用72a的各实例可以在一个或多个计算设备(未示出)上执行,以使得用户能够创建或改变过程控制模块并经由数据高速通道10将这些模块下载到控制器11,并且使得用户能够创建或改变操作员接口,操作员能够经由该操作员接口查看数据并且改变过程控制例程中的数据设置。配置数据库72b储存所创建的(例如配置的)模块和/或操作员接口。通常,配置应用72a和配置数据库72b是集中式的并且对过程控制系统5具有统一的逻辑外观,但是配置应用72a的多个实例可以在过程控制系统5内同时执行,并且配置数据库72b可以跨多个物理数据储存设备实现。因此,配置应用72a、配置数据库72b、及其用户接口(未示出)包括用于控制和/或显示模块的配置或开发系统72。典型地但非必要地,用于配置系统72的用户接口与操作员工作站71不同,因为用于配置系统72的用户接口由配置和开发工程师使用,不管工厂5是否实时地操作,而操作员工作站71在过程工厂5的实时操作(在此也可互换地称为过程工厂5的“运行时间”操作)期间由操作员使用。

示例性过程控制系统5包括数据历史库应用73a和数据历史库数据库73b,其中的每一个也可通信地连接到数据高速通道10。数据历史库应用73a操作为收集跨数据高速通道10提供的一些或全部数据,并将数据历史化或储存在历史库数据库73b中以用于长期储存。类似于配置应用72a和配置数据库72b,数据历史库应用73a和历史库数据库73b是集中式的并且对过程控制系统5具有统一的逻辑外观,但是数据历史库应用73a的多个实例可以在过程控制系统5内同时执行,并且数据历史库73b可以跨多个物理数据储存设备实现。

在一些配置中,过程控制系统5包括一个或多个其它无线接入点74,其使用其它无线协议与其它设备进行通信,诸如Wi-Fi或其它符合IEEE802.11的无线局域网协议、诸如WiMAX(全球微波接入互操作性)、LTE(长期演进)或其它ITU-R(国际电信联盟无线电通信部门)兼容的协议之类的移动通信协议、诸如近场通信(NFC)和蓝牙之类的短波长无线电通信、或其它无线通信协议。通常,这样的无线接入点74允许手持式或其它便携式计算设备(例如,用户接口设备75)通过与无线网络70不同的并且支持与无线网络70不同的无线协议的相应的无线过程控制通信网络进行通信。例如,无线或便携式用户接口设备75可以是由过程工厂5内的操作员利用的移动工作站或诊断测试装备(例如,一个操作员工作站71的实例)。在一些场景下,除了便携式计算设备之外,一个或多个过程控制设备(例如,控制器11、现场设备15-22、或无线设备35、40至58)也使用由接入点74支持的无线协议进行通信。

在一些配置中,过程控制系统5包括到即时过程控制系统5外部的系统的一个或多个网关76、78。通常,这样的系统是由过程控制系统5生成或操作的信息的客户或供应商。例如,过程控制工厂5可以包括网关节点76,以将即时过程工厂5与另一个过程工厂通信地连接。另外地或替代地,过程控制工厂5可以包括网关节点78,以将即时过程工厂5与外部公共或私人系统(诸如实验室系统(例如,实验室信息管理系统或LIMS)、操作员轮班数据库、材料处理系统、维护管理系统、产品库存控制系统、生产调度系统、气象数据系统、运输和处理系统、包装系统、互联网、另一个供应商的过程控制系统、或其它外部系统)通信地连接。

应该注意,尽管图1仅例示了包括在示例性过程工厂5中的单个控制器11以及有限数量的现场设备15-22和40-46、无线网关35、无线适配器52、接入点55、路由器58、以及无线过程控制通信网络70,但是这只是说明性的且非限制性的实施例。任何数量的控制器11可以被包括在过程控制工厂或系统5中,并且任何控制器11可以与任何数量的有线或无线设备和网络15-22、40-46、35、52、55、58和70进行通信以控制工厂5中的过程。

此外,应注意的是,图1的过程工厂或控制系统5包括通过数据高速通道10通信地连接的现场环境122(例如“过程工厂平面122”)和后端环境125。如图1所示,现场环境122包括被设置、安装并且互连在其中以在运行期间操作为控制过程的物理部件(例如,过程控制设备、网络、网络元件等)。例如,控制器11、I/O卡26、28、现场设备15-22、以及其它设备和网络部件40-46、35、52、55、58和70被定位、设置、或以其它方式包括在其中在过程工厂5的现场环境122中。一般而言,在过程工厂5的现场环境122中,使用设置在其中的物理部件来接收和处理原材料以生成一种或多种产品。

过程工厂5的后端环境125包括诸如计算设备、操作员工作站、数据库或资料库(databank)等之类的各部件,它们被屏蔽和/或被保护以免受现场环境122的恶劣条件和材料的影响。参照图1,后端环境125包括例如操作员工作站71、用于控制模块和其它可执行模块的配置或开发系统72、数据历史库系统73、和/或其它集中管理系统、计算设备、和/或支持过程工厂5的运行时间操作的功能。在一些配置中,包括在过程工厂5的后端环境125中的各计算设备、数据库和其它部件和装备可以在物理上位于不同的物理位置处,其中一些对加工厂5而言可以是本地的,而其中一些可以是远程的。

图2A包括描绘示例性过程控制回路100a的示例性架构的框图,在示例性过程控制回路100a中包括智能或智慧现场设备102a并且过程控制回路100a可以使用本文描述的任何一个或多个智能调试技术来进行调试。通常,如本文所使用的,“智能”或“智慧”现场设备是整体包括一个或多个处理器和一个或多个存储器的现场设备。另一方面,如本文所使用的,“傻瓜”或“传统”现场设备不包括板上处理器和/或板上存储器。

回路100a可以被集成或并入到过程工厂中以用于在过程工厂的运行时间操作期间控制其中的过程。例如,回路100a可以安装或设置在过程工厂5的现场环境122中。

在图2A所示的示例性过程控制回路100a内,智能或智慧现场设备102a通信地(例如,以有线或无线方式)连接到电子编组设备或部件110a(例如,由艾默生过程管理公司提供的CHARacterization模块或CHARM)。电子编组部件110a通信连接112a到I/O终端块105a,I/O终端块105a又通信地连接到I/O卡108a。I/O卡108a通信连接118a到控制器120a,控制器120a又通信地连接121a到过程工厂5的后端环境125。在过程工厂5的在线操作期间,过程控制器120a接收由智能现场设备102a生成的信号的数字值,并且对接收到的值进行操作以控制工厂5内的过程,和/或发送信号以改变现场设备102a的操作。另外,控制器120a可以经由通信连接121a向后端环境125发送信息并从后端环境125接收信息。

在图2A中,电子编组部件110a、I/O终端块105a和I/O卡108a被描绘为一起位于机柜或外壳115a(诸如I/O机柜)中,该机柜或外壳115a经由总线、底板或其它合适的互连机构将电子编组部件110a、I/O终端块105a和I/O卡108a和/或容纳在机柜115a内的其它部件电互连。当然,如图2A所示,机柜115a中的CHARM 110a、I/O终端块105a和I/O卡108a的外壳,只是许多可能的外壳配置中的一种。

特别关于电子编组部件110a,图2B例示了支持图2A所示的电子编组组件110a的示例性电子编组块或装置140的侧视图,并且因此在下面同时参照图2A进行讨论。在图2B中,电子编组块或装置140包括支持过程控制器120a可连接到(例如,经由图2A所示的有线或无线连接118a)的一个或多个CHARM I/O卡(CIOC)145的CHARM承载件142。此外,电子编组块或装置140包括通信地连接到CHARM承载件142(并因此连接到CHARM I/O卡145)并且支持多个可单独配置的通道的一个或多个CHARM底板148。每个通道对应于专用CHARM终端块150,CHARM 110a可以牢固地接收到以及电连接该专用CHARM终端块150中,从而将现场设备102a和I/O卡108a与控制器120a电子编组。例如,I/O终端块105a是其中接收CHARM 110a的CHARM终端块150,并且I/O卡108a是与CHARM终端块150对应的并且与控制器120a连接118a的CIOC 145。图2B还示出了其它CHARM 152,它们已经被它们相应的CHARM终端块150接收,并且可以连接过程工厂5的现场环境122中的其它相应设备(未示出)。

现在回到图2A,图2A还包括描绘其中包括智能/智慧现场设备102b的示例性过程控制回路100b的示例性架构的框图,然而,与回路100a不同,回路100b排除任何电子编组部件,并且替代地利用传统编组技术,诸如直接编组。具体地,智能现场设备102b通信地连接到(例如,以有线或无线的方式)I/O终端块105b,I/O终端块105b又连接到具有与过程控制器120b的特定的直接编组连接118b的I/O卡108b。例如,I/O终端块105b、I/O卡108b、和/或其它部件例如被容纳或包含在I/O编组机柜115b中,并且连接118b通过总线、背板、或其它合适的互连机构(未在图2A中示出)实现。以这种方式,回路100b可以安装或设置在过程工厂5的现场环境122中,并且例如经由控制器120b通信地连接121b到后端环境125。在过程工厂5的在线操作期间,由于I/O卡108b与过程控制器120b通信地连接118b,所以过程控制器120b接收由智能现场设备102b生成的信号的数字值并且对所接收的值进行操作以控制工厂5内的过程,和/或发送信号以改变现场设备102b的操作。另外,控制器120b可以经由通信连接121b向后端环境125发送信息并从后端环境125接收信息。

图2C是描绘其中包括传统现场设备102c的过程控制回路100c的示例性架构的框图。与示例性过程控制回路100a和100b一样,过程控制回路100c可以使用本文描述的任何一种或多种智能调试技术来进行调试。另外,如前所讨论的,传统现场设备102c包括最小本地存储器和/或处理能力(如果有的话)。回路100c可以集成或并入到过程工厂(诸如图1的过程工厂5)中,以在过程工厂5的运行时间操作期间用于控制其中的过程。例如,回路100c可以安装或设置在过程工厂5的现场环境122中。

在图2C中,传统设备102c通信地连接到(例如,以有线或无线方式)电子编组设备或部件110c(例如,CHARM)。电子编组部件110c通信地连接112c到I/O终端块105c,I/O终端块105c又通信地连接到I/O卡108c。I/O卡108c通信地连接118c到控制器120c,控制器120c又通信地连接121c到过程工厂5的后端环境125。因此,I/O终端块105c可以是CHARM终端块(例如,图2B中描绘的CHARM终端块150中的一个CHARM终端块),并且I/O卡108c可以是CIOC(例如,图2B中描绘的CIOC 145中的一个CIOC)。

在图2C中,电子编组部件110c、I/O终端块105c、和I/O卡108c被描绘为位于机柜或外壳115c(诸如I/O机柜)中,该机柜或外壳115c经由总线、底板、或其它合适的互连机构将电子编组部件110c、I/O终端块105c和I/O卡108c和/或容纳在机柜115c内的其它部件电气互连。因此,在过程工厂5的在线操作期间,控制器120c接收由传统现场设备102c生成的信号的值,并且对所接收的值进行操作以控制工厂5内的过程,和/或发送信号以改变现场设备102c的操作。另外,控制器120c例如经由数据高速通道10与过程工厂5的后端环境125通信地连接121c。

图2C还包括描绘其中包括传统设备102d的示例性过程控制回路100d的示例性架构的框图,然而,与回路100c不同,回路100d排除了任何电子编组部件,并且替代地利用传统编组技术,诸如直接编组。在图2C中,传统现场设备102d通信地连接到(例如,以有线或无线方式)I/O终端块105d,I/O终端块105d又连接到I/O卡108d,该I/O卡108d具有到过程控制器120d的特定的直接编组的连接118d,并且控制器120d例如经由数据高速通道10通信连接121d到过程工厂5的后端环境125。I/O终端块105d、I/O卡108d、和/或其它部件被容纳或包含在I/O机柜115d中,如图2C所示的示例性布置中所示。由于I/O卡108c在过程工厂5的在线操作期间与过程控制器120c通信地连接118c,过程控制器120c接收由传统现场设备102d生成的信号的值,并且对所接收的值进行操作以控制工厂5内的过程,和/或发送信号以改变现场设备102d的操作。另外,控制器120d例如经由数据高速通道10与过程工厂5的后端环境125通信连接121d。

图2A和图2C各自还例示了设置在过程工厂5的后端环境125中并用于调试目的的集中式数据库或数据储存器128。集中式数据库128除了其它之外还储存数据和其它信息,这些数据和其它信息具体识别了计划或期望在过程工厂平面或现场环境122上实现的各设备或部件及其互连和/或对它们寻址。该调试数据中的一些可以被提供给现场环境122中的部件以用于设备和其中的回路的调试,并且该数据中的一些可以用于后端环境125中,例如用于设计、开发、和准备控制模块和/或操作员接口模块,该控制模块和/或操作员接口模块将在过程工厂5的实时操作期间结合现场环境122进行操作。在示例中,批准的控制模块被下载到过程控制器120中,从而当在实时操作期间执行时,过程控制器120根据其驻留的控制模块进行操作,以向/从其回路100中的其它部件(以及在一些情况下,向/从其它过程控制器)发送和接收各个信号,从而控制过程工厂5中的至少一部分过程。

因此,在后端环境125和现场环境122中已知和利用的数据必须是同步的并且是一致的。例如,在过程工厂5内,现场设备102由现场环境122和后端环境125两者中的相同的特定设备标签(例如,图2A和图2C中所例示的标签ST-A、ST-B、ST-C和ST-D)唯一地识别。类似地,由现场设备102生成或接收的信号由过程工厂5的现场环境122和后端环境125两者中的相同的特定设备信号标签(未示出)唯一地识别。此外,包括在过程回路100中的各部件的期望的或计划的关联必须在现场环境122与后端环境125之间同步并且一致。例如,在后端环境125中,数据库128储存指示由设备标签ST标识的现场设备102被指派为经由特定I/O卡108和/或特定I/O终端块或通道105进行通信、特定I/O卡108被指派为与特定的控制器120进行通信等等的信息。在后端环境125处逻辑上已知的关联和互连集合应当在现场环境122中在物理上实现。因此,在调试过程工厂期间,不仅现场环境122中的各设备、部件、和连接的物理操作被测试和验证,而且针对现场环境122与后端环境125之间的一致性和相关性,命名、关联、互连、和其它调试数据也被验证。

如前所讨论的,传统的调试技术要求在现场环境122中设置的各部件的名称或标识以及在调试之前在后端环境125中定义的它们与其它部件的关联和互连能够在现场环境122中以任何重要的方式开始。换言之,传统调试技术要求各现场部件的名称、关联、和互连首先在后端环境125中配置或定义,然后下载或以其它方式经由过程控制系统5内的已建立的通信路径传送到现场环境122,以便使这种调试数据在现场环境122中可用于调试现场环境122的部件。例如,使用传统的调试技术,将调试数据(包括配置和定义)经由数据高速通道10从后端环境125传送到控制器120和I/O设备108,并且在一些情况下,传送到现场环境122中的现场设备102,使得调试数据可用于在现场环境122中执行一个或多个调试动作或活动。

另一方面,过程控制系统和/或工厂的智能调试不需要配置和定义在发起现场环境122中的调试活动之前在后端环境125处大部分完成。相反,本文描述的智能调试技术允许物理设计、安装、工程设计、和调试在过程工厂5的现场环境122中发起和执行,而独立于正在过程工厂的后端环境125中执行的功能/逻辑设计和工程设计的进展。例如,可以在现场环境122通信地连接到过程工厂5的后端环境125之前(例如,在现场环境122和后端环境125通信地断开连接时,和/或已经安装在现场环境122中的回路100(或它的部分)与后端环境125通信地断开连接时),在过程工厂5的现场环境122中执行各种调试活动或动作。例如,在过程控制系统或工厂5获悉将现场设备102指派给特定I/O卡108和/或I/O通道之前,可以在现场环境122中执行调试活动和动作的至少一些部分。附加地或替代地,当各部件与过程控制回路100的其它部件断开连接时和/或当各部件尚未被分配给回路100的其它部件时,可以在过程控制回路100的各部件上形成各种调试活动或动作。因此,智能调试允许调试过程的至少一些部分本地地、自动地、分布式地、和/或并行地执行,使得过程工厂5的设备、部件、和其它部分可以在并入或集成到工厂或系统5中作为整体之前可以部分地或者甚至完全进行调试,从而与传统的调试技术相比,显著减少调试过程工厂所需的时间、人员和成本。

下面描述用于智能调试过程工厂或过程控制系统5的各个方面、装置、系统、部件、设备、方法、和技术。下面同时参考图1、图2A、图2B和图2C描述智能调试技术;然而,这只是为了便于阅读,而不是为了限制目的。事实上,如本领域技术人员将认识到的,本文描述的智能调试技术中的至少一些可应用于独立式设备、和/或可应用于这些部分未被调试的情景中的过程工厂的部分。

逻辑标识符

智能调试的关键方面是现场环境中的部件的逻辑标识符的独立可用性以供调试期间使用。这样的逻辑标识符的示例包括设备标签(DT),设备标签中的每一个都表示特定的仪器、控制器、阀、或其它物理现场设备、以及设备信号标签(DST),设备信号标签中的每一个表示由特定设备接收或生成并且通常对应于现场设备所使用的特定参数的特定信号。对于一些设备,设备信号标签包括设备的设备标签和由该设备接收或生成的特定信号的标识符(例如,由控制模块引用的特定参数的标识符)的组合。对于一些设备(通常是传统设备或傻瓜设备),设备标签表示物理设备和设备生成的信号两者。一般而言,设备的逻辑标识符由过程工厂5在现场环境122和后端环境125两者中用来唯一地标识设备。

无论如何,如前所讨论的,传统调试过程需要设备和信号的这种逻辑标识符例如在功能设计和工程设计阶段期间首先在过程工厂的后端环境125中定义,然后随后提供给现场环境122,以用于调试设置在其中的物理设备和装备。然而,在智能调试的情况下,这样的逻辑标识符在现场环境122和后端环境125中独立且异步地得到和/或获得,从而逻辑标识符在相应的本地环境122、125中容易地可用,以用于本地调试活动和动作,例如在需要时。重要的是,逻辑标识符比在调试过程中更早地可用于现场环境122,从而使得现场环境122中的调试活动的发起和进展更少依赖于后端环境125中的调试活动的进展。

通常,表示特定设备102的逻辑标识符通过分别从本地可用于现场环境122的设备102的物理或其它源标识符得到逻辑标识符,来在现场环境122中独立且本地得到。类似地但是单独地,在后端环境125中,表示特定设备102的逻辑标识符从本地可用于后端环境125的设备102的源标识符独立且本地地得到。在示例中,设备102的逻辑标识符从作为物理设备102的唯一标识符的源标识符得到。一般而言,本地可用的设备102的物理标识符或其它标识符在本文中被称为“源标识符”或“源标签”,并且从系统标识符或标签得到的设备102的逻辑标识符在本文中被称为“系统标识符”或“系统标签”。

通常但非必要地,从其得到系统标识符或标签的设备102的源标识符或标签的总字符数不同于逻辑标识符的总字符数,并且该源标识符或标签可以具有任何期望的格式。标识符标签的字符(无论是源还是系统)通常包括字母数字字符,其可以散布有破折号或其它非字母数字字符。在实施例中,系统标识符或标签的期望格式由用户指示或选择。

在一些情况下,包括在设备102的源标签中的总字符数大于包括在设备102的系统标签中的总字符数。例如,当设备102的源标签是标识设备102的物理标识符(诸如32个字符的HART长标签)时,设备102的得到的系统标签可以是缩短的标签,诸如8个字符的HART短标签(例如,由初始HART协议规范定义的8个字符的短标签以及在修正版6之前对其的修正),或者由过程控制系统5及其控制逻辑使用的16个字符的主机标签,以唯一地标识设备102。

在一些情况下,包括在设备102的源标签中的总字符数小于包括在设备102的系统标签中的总字符数。例如,当设备102的源标签是由初始HART协议规范定义的8字符HART短标签以及在修正版6之前对其的修正时,设备102的得到的系统标签可以是过程控制系统5所使用的16个字符的主机标签,或得到的系统标签可以是8个字符的HART短标签,其被预先考虑、附加、或以其它方式修改以包括附加字符。

在本文描述的说明性但非限制性的示例中,设备102的源标签被称为“长标签”(LT),并且该设备的系统标签被称为设备102的“缩短的标签”(ST)。为了便于在附图中参考,特定的设备长标签由“LT-x”引用,并且特定的设备缩短的标签由“ST-x”引用,其中x表示特定例示的现场设备102a、102b、102c或102d。另外,为了便于读取,长标签通常由“LT”引用,并且缩短的标签通常由“ST”引用。

设备102的长标签(LT)可以例如是型号和序列号、条形码、根据HART、WirelessHART或HART-IP协议的标识符(例如,32个字符的HART长标签)、根据另一个工业协议的标识符、或本地可用的其它合适的标识符。现场设备102的长标签LT的特定字符可以由其制造商指派,或者可以由过程工厂5a的供应商先验地指派,例如在生成过程流程图(PFD)和/或管道仪表图(P&ID)或以其它方式规划过程工厂时。长标签可以例如通过资产管理系统(诸如由艾默生过程管理公司提供的资产管理软件(AMS)套件或其它库存和安装系统132)分别在本地环境122、125中提供。对于某些智慧或智能现场设备(例如,现场设备102a、102b),相应的长标签LT在调试现场设备102之前被预先供应或储存到物理现场设备102的存储器中。例如,图2A描绘了当设备102b到达现场时、正在进行安装时等等,设备102b的长标签LT-B已经预先供应或储存在物理现场设备102b中(例如在工厂处)。

生成或确定指示现场设备102的系统标签(其在本说明性示例中,由缩短的标签ST表示)可由标签解析设备、部件、或装置200执行,装置200的示例性框图在图3A中例示。标签解析装置200包括输入202,经由输入202接收或获得设备102的源标签(其在本说明性示例中,由长标签LT表示)。输入202经由链路205通信地连接到长标签LT的发送方。链路205可以具有任何期望的实现方式,例如,有线链路、无线链路(其可以是例如长距离、短距离或近场)、网络链路、功能调用或其它类型的软件实现的链接、或者经由其接收设备102的长标签LT的某个其它合适的链路。在示例中,长标签LT经由通信链路从另一个设备或从数据储存器获得。在另一示例中,标签解析装置200通过访问本地数据库来获得长标签LT。

在一些实现方式(未示出)中,长标签LT经由光学接口在标签解析装置200的输入202处获得。在示例性配置中,标签解析装置200包括光学接口,其从标签、条形码、图像、QR码(快速响应码)或长标签LT的其它二维表示扫描、读取、或以其它方式光学地获得长标签LT。标签解析装置200还包括图像和/或光学处理器,以从所获得的图像中自动确定或获得长标签LT的特定字符。

如图3A所示,标签解析装置200包括标签解析器208,标签解析器208对经由输入202接收的长标签LT进行操作。标签解析器208可以包括(i)计算机可执行指令集合,其储存在一个或多个有形的非易失性存储器上并且可由一个或多个处理器执行,(ii)可执行的固件指令,和/或(iii)可执行的硬件指令。标签解析装置200还包括解析规则210的集合,解析规则210可供标签解析器208访问并且定义或指示现场设备102的缩短的标签ST的字符集合将如何基于现场设备102的长标签LT的字符集合来被提取、选择、得到、或以其它方式确定。例如,如果长标签LT遵循约定或格式AABB-CCCCxxxyyyD-zzE,则解析规则210的集合可以指示对应的缩短的标签ST将遵循约定或格式CCCCxxxyyyD-zzE。解析规则210的集合可以包括缩短标签长度的任何类型的规则,诸如对应于标签的截断、各种顺序或非顺序字符的删除、通过数学运算组合或操纵数字字符等的规则。

注意,尽管在本说明性示例中,源标签被实现为长标签(LT)并且得到的系统标签被实现为缩短的标签(ST),但这仅仅是许多可能的实施例中的一个。在其它示例性场景中,诸如当得到的系统标签具有比源标签的长度更长的长度时,解析规则210仍然定义或指示系统标签的字符集合将如何基于源标签的字符集合来确定或得到。例如,解析规则210可以指示附加字符,该附加字符将被预先考虑、附加、和/或散布在源标签的字符内,以生成系统标签。一般而言,解析规则210定义或指示待应用于设备102的源标签的修改,以生成或得到设备102的相应系统标签。事实上,不同类型的解析规则210可被定义并且应用于不同格式和/或不同的源标签所基于的通信协议。此外,解析规则210中的至少一些可以跨不同的过程控制系统供应商、跨不同的工厂位置、跨不同类型的部件或设备、和/或基于其它标准而不同(如果期望的话)。事实上,在一些实施方式中,解析规则210中的至少一些是可配置的或可修改的。

现在回到说明性示例,标签解析装置200还包括输出212,经由该输出212,所得到或所确定的缩短的标签ST被提供给另一装置或设备(诸如现场设备102),和/或被提供给一个或多个本地或远程存储器以进行储存。输出212可以经由链路215通信地连接到接收方装置或设备,链路215可以是链路205或不同的链路。链路215可以具有任何期望的实现方式,例如,有线链路、无线链路、网络链路、功能调用或其它类型的软件实现的链路、或其它合适的链路。

在现场环境122中,标签解析装置200的实例可以设置在其中的任何一个或多个位置处。例如,标签解析装置200可以被包括在AMS或其它资产系统132中,和/或在一个或多个现场调试工具135a、135b中。现场调试工具135可以是AMS系统132的一部分,或者可以是独立式现场调试设备或工具。一般而言,现场调试工具135是被带到现场环境122(例如,现场环境122的集结区域和/或安装区域)的膝上型计算机(例如,参考标记135a)、平板电脑或手持智能设备(例如,参考标记135b)、或其它便携式计算设备。操作员利用调试工具135临时连接(例如,经由有线和/或无线连接)到目标设备或部件(例如,现场设备102、I/O终端块105、I/O卡108、CHARM 110、控制器120等),以对所连接的部件执行一个或多个调试活动。

在一些布置中,标签解析装置200的实例被包括在机柜115中,或设置在现场环境122中的另一机柜中。例如,标签解析装置200可被包括在I/O终端块105、I/O卡108、电子编组装置140、控制器120中,或容纳在现场环境122中的机柜中的某个其它设备或装置中。

然而,标签解析装置200不需要在单一设备或装置中实现。例如,解析规则210的集合可以被储存在容纳在机柜115中的存储器中,而标签解析器208被包括在现场调试工具/便携式设备135中。替代地,标签解析器208可以被储存在容纳在机柜115中的存储器中,并且解析规则210的集合可以储存在现场调试工具/便携式设备135处。在另一个实施例中,解析规则210可以储存在标签解析器208可访问的远程位置处(例如,在远程资料库处、在云中等等)。通过将标签解析装置200的部分跨多个设备和/或装置分布,关于将哪些解析规则应用于哪些类型的源标签的灵活性是可能的。

此外,现场环境122可以包括标签解析装置200的多个实例。在示例中,多个现场调试工具或设备135各自包括标签解析装置200的相应实例。另外地或替代地,资产管理系统132可以包括标签解析装置200的相应实例。实际上,安装在现场环境122中的一些智慧现场设备102和/或其它部件可以各自包括相应的板载标签解析装置200。

类似地,在后端环境125中,标签解析设备、部件、或装置200的实例可以被布置在其中的任何一个或多个位置处。在示例中,标签解析装置200的相应实例被包括在一个或多个后端调试工具138a、138b中。通常,后端调试工具138是设置在后端环境125中的膝上型或台式计算机(例如,参考标记138a)、平板电脑或手持式智能设备(例如,参考标记138b)、或其它便携式或固定计算设备环境。后端调试工具138中的至少一些可以是独立的后端调试设备或工具。附加地或替代地,后端调试工具138中的至少一些可以是AMS或其它资产系统132的一部分,和/或后端调试工具138中的至少一些可以是其它集中式后端系统的一部分,诸如控制模块或功能工程设计开发系统、集中式管理系统、集中式操作员接口系统等。

值得注意的是,该解析规则210的集合的所有实例跨过程工厂5是一致的。具体地,该解析规则210的集合(及它的任何部分)跨过程工厂5的现场环境122和后端环境125以及跨用于调试过程工厂的调试工具135、138是一致的,并且位于工厂5的解析规则210的集合所设置的任何其它位置处。然而,标签解析装置200的不同实例可以包括用于不同目标设备或部件的解析规则210的不同子集,例如出于效率的目的。

图3B描绘了可以至少部分地由图3A的标签解析装置200执行或者由任何其它合适的装置来执行的标签解析的示例性方法230。在实施例中,标签解析装置200的标签解析器208执行方法230或它的部分。典型地但非必要地,方法230的至少一部分在过程工厂5的现场环境122中执行。

在方框232处,方法230包括获得232唯一地标识过程工厂5内的物理现场设备102的源标识符或标签。源标识符或标签的格式(例如,字母数字字符、诸如破折号、点等之类的其它类型的字符、字符的排序和数量等)可以根据特定的过程通信协议,诸如HART、WirelessHART或HART-IP通信协议或某个其它工业过程协议。替代地,源标签可以采用某个其它合适的格式,诸如型号/序列号、条形码、QR码等。

现场设备102的源标识符或标签可以由一个或多个现场调试设备135和/或由设置在过程工厂5的现场环境122中的资产管理或其它系统132来获得232。对于一些设备,源标签可以由现场设备102自身获得232。在示例中,源标签是从智能现场设备102a、102b的存储器获得的。在另一个示例中,源标签是从资产管理或其它库存/安装系统132获得的。在又一示例中,源标签由现场调试设备135获得,例如通过经由通信接口读取文件或接收源标签。在一些情况下,现场设备102的源标签通过现场调试设备135的接口(诸如通过近场或短距离通信接口(例如,NFC、RFID等)、或通过诸如扫描仪或照相机之类的光学接口)来获得。例如,现场调试设备135扫描、读取、或以其它方式光学地获得230现场设备102的源标签的标记、条形码、图像、QR码、或其它表示,并且现场调试设备135通过使用图像处理和/或其它合适的技术来自动确定包括在现场设备102的源标签中的字符。

源标签的格式(字母数字字符、诸如破折号、点等之类的其它类型的字符、字符的排序和数量等)可以根据特定的过程通信协议,诸如HART、WirelessHART或HART-IP通信协议或某个其它工业过程协议。替代地,源标签可以具有某个其它合适的格式,诸如型号/序列号、条形码等。现场设备102的源标签可以在现场设备102处于多个状态中的任何状态时获得232,诸如无电、通电、I/O未分配、I/O已分配、断开连接、连接等。在本公开内容的其它部分中描述了对现场设备102的各状态的讨论。

在方框235处,方法230包括基于所获得的指示现场设备102的源标签和解析规则210的集合来确定或得到对应于现场设备102的一个或多个系统标签。例如,在方框235处确定或获得与现场设备102相关联的设备标签和/或一个或多个设备信号标签。通常,系统标签的总字符数与源标签的总字符数不同,并且因此,解析规则210的集合指示截断、各字符的删除、各字符的添加、包含在源标签中的数字字符的组合和/或操纵、和/或用于修改源标签的长度的另一种技术。相应地,在方框235处,从源标签的字符得到或以其它方式确定系统标签的字符。

在一些实施例(未示出)中,方法230包括基于设备102的源标签、设备102的系统标签、和/或解析规则210的集合来确定或得到与过程回路100相关联的其它标签或标识符。在示例中,基于设备102的源标签、设备102的系统标签、和/或解析规则210的集合来确定或得到标识过程工厂5内的过程回路100的控制标签。

在一些实施例中(也未示出),方法230包括定义、配置、和/或以其它方式修改解析规则210的集合。例如,解析规则210可以针对附加设备或设备类型102、过程工厂5的不同部分、不同设备位置、不同调试设备135、或根据需要在其它方面被定义、配置、和/或修改。

无论如何,在方框238处,方法230包括将现场设备102的系统标签(以及可选地,在方框235处自动得到或确定的任何其它信息)储存到设置在过程工厂5的现场环境122中的一个或多个存储器中。例如,当现场设备102是智能现场设备时,系统标签可以被储存在现场设备102的内部存储器中。系统标签可以附加地或替代地被储存在过程回路122内的其它部件的存储器中,诸如在I/O终端块105、I/O卡108、电子编组块或装置、诸如CHARM 110之类的电子编组部件等处。另外或替代地,现场设备102的系统标签可以储存在一个或多个现场调试工具135中和/或储存在资产管理或其它系统132中。

在方框240处,方法230包括利用现场设备102的所储存的系统标签来在过程工厂5的现场环境122中的现场设备102处执行一个或多个调试活动或动作。典型地但是不必须地,当正在执行一个或多个调试活动或动作时,现场设备102处于I/O未分配或I/O断开状态(并且就此而言,在执行方法230的方框232-238中的任何一个或多个期间处于I/O未分配状态)。可以使用所储存的系统标签(方框238)在现场设备102处执行的调试活动或动作的示例包括对现场设备102上电和断电,注入测试信号以及验证相应的响应,自动生成包括现场设备102的完工I/O列表的至少一部分,自动生成包括现场设备102的完工回路图或地图的至少一部分、等等。

在一些情况下,方框240包括利用现场设备102的系统标签自动发起一个或多个调试活动或动作。例如,一旦完成系统标签的得到(方框235)或一旦完成储存系统标签(方框238),使用现场设备102的系统标签的特定调试动作就被自动发起。在一些场景下,方框238附加地或替代地包括将现场设备102的系统标签提供给设置在过程工厂5的现场环境122中的另一个设备,例如,用于涉及现场设备102和另一个设备两者的另一调试动作。例如,现场设备102的系统标签可以被提供给相应的CHARM 110,并且包括现场设备102和CHARM 110两者的控制回路100的一部分可以使用现场设备102的系统标签来进行调试。

输入/输出(I/O)分配状态

智能调试的另一个关键方面是在过程工厂5的现场环境122中、设备(诸如现场设备102)的I/O分配状态的可用性以及至少部分地基于其I/O分配状态来配置设备。一般而言,设备102的I/O分配状态指示设备是否已经被分配给特定的I/O卡,并且在某些情况下,被分配给特定的I/O通道。例如,当特定的物理I/O地址和/或特定的I/O通道尚未被指派给现场环境122中的设备102时,设备102被视为处于I/O未分配状态,换言之,特定的设备102到特定的物理I/O地址/通道的映射在现场环境122中不可用。另一方面,当特定的物理I/O地址(以及可选的,特定的I/O通道,例如,用于有线设备)已经被指派给现场环境122中的设备102时,设备102被视为处于I/O已分配状态,并且所述指派被储存在安装在现场环境122中的一个或多个部件中,从而使得设备102与所指派的特定I/O卡和/或特定I/O通道之间的映射可用。利用现场环境122中的设备的I/O分配状态的可用性以及至少部分地配置未分配的设备的能力,各个调试动作和/或活动可以在各设备处于I/O未分配状态时发起、执行、甚至完成122,而无需等待如当前在传统现场调试期间所需的对特定I/O卡和特定I/O通道的指派。

参考图2A-2C以例示,现场设备102b、102d的I/O分配状态指示现场设备102b、102d是否已经被分配给其相应的I/O卡108和/或卡108的其相应I/O通道。对于电子编组的现场设备102a、102c,现场设备102a、102c的I/O分配状态指示现场设备102a、102c是否已被分配给其相应的CIOC145、CHARM终端块150、和/或CIOC通道。然而,通常,为了便于本文的阅读,设备的“I/O分配状态”和诸如“I/O已分配”、“I/O未分配”等之类的相关术语指示该设备是否已被指派给任何类型的I/O卡和/或I/O通道,例如,分配给任何传统或智能I/O卡、CIOC、WIOC(无线I/O卡)、安全信息系统逻辑解算器(例如,单工、复杂、智能逻辑解算器、CSLS(CHARM智能逻辑解算器)等)、或在过程控制和/或安全信息系统中使用的任何其它已知类型的卡/通道,以执行对应于设备的I/O功能。因此,为了便于阅读,本文通常使用术语“I/O卡”、“I/O通道”、和“I/O节点”来指代任何类型的I/O卡、I/O通道和I/O节点。

设备容器或占位符实现现场环境122中的设备102的I/O分配状态的可用性以及在现场环境122中的设备102的特定的I/O连接尚未由后端环境125定义或提供时至少部分地配置和调试现场环境122中的设备102的能力。一般而言,现场设备102的设备容器或占位符保存或储存设备102的I/O抽象配置,如下面所解释的。

设备容器或占位符被实现为例如能够在现场环境122中被配置成用于相应设备的容器或占位符的特定实例的可配置对象(或另一个合适的定义储存表示)。设备容器或占位符可由资产管理或其它库存或安装系统132和/或由现场调试设备135在现场环境122中提供。对于某些智能现场设备102c、102b,对应于智能现场设备102a、102b的设备占位符或容器的相应实例可以事先地,或者通过例如在设备102被安装在现场环境122中之前或者在设备102已经安装在现场环境102中之后传输到设备的存储器中,来储存在设备的存储器中。

设备容器或占位符对象包括用于储存设备的I/O分配状态的字段或属性。设备容器或占位符对象包括用于在定义设备的物理I/O布局之前储存各设备配置参数值的附加字段或属性。换言之,对于处于I/O未分配状态的设备102,可以定义设备102的至少部分或抽象配置,并将其与抽象的I/O类型信息一起储存在其对应的设备容器或占位符中,从而可以至少部分地配置和调试设备102而无需知道设备的准确的I/O配置,并且在某些情况下甚至无需存在或甚至创建设备的对应物理I/O节点。此外,设备容器或占位符对象对于多种类型的设备是公共的,并且独立于对应物理设备的特定类型的I/O。一般而言,设备容器或占位符对象的各种属性可以是显露的属性,和/或设备容器占位符对象的各种属性可以是隐藏属性。

图4A描绘了在过程工厂5的现场环境122中使用的示例性设备容器或占位符对象模板300。使用设备容器或占位符对象300,用户能够创建设备占位符对象300的实例,以使用I/O抽象的信息将设备102定义到过程控制系统5,从而例如涉及设备102的各调试动作能够在设备102处于I/O未分配状态时被执行(即,在设备102已被分配给特定的物理I/O卡、I/O通道、和/或I/O节点之前)。例如,用户可以通过针对对应于设备102的一般属性302(例如,名称、描述、电缆ID、典型布线图等)的集合输入期望值来开始为设备102定义设备容器或占位符对象300的实例。对于特别是HART设备,一般属性302另外包括特定于HART的属性,诸如HART描述、HART设备定义、HART长标签、命名参考类型、和命名参考子类型等等。对于非HART的其它类型的设备(未示出),对应于设备类型的其它属性可以包括在对象300中。在实施例中,设备容器或占位符对象300指示对象300是否对应于基本过程控制系统(BPCS)设备或安全仪表系统(SIS)设备,例如通过显露另一个一般属性302或通过使不同类型的设备占位符对象300分别对应于BPCS设备和SIS设备。

设备占位符对象300还包括连接路径属性305,其值指示对应设备是否处于I/O已分配状态或处于I/O未分配状态。通常但非必要地,在初始化用户希望为对应设备配置的设备占位符对象300的实例时,实例的连接路径属性305的默认值被设置为“I/O未分配”,并且在明确的I/O硬件连接已被定义之后,实例的连接路径属性305被改变为“I/O已分配”。无论如何,基于对于设备102,连接路径属性302被设置为“I/O未分配”,对象300的一个或多个其它属性或字段(例如,参考标记308-338)被显露以供用户在其中输入相应的值,以进一步定义或配置实例。属性308-338中的至少一些属性是“I/O抽象的”属性,即,其值指示对象设备的能力、特性、和/或行为但其值不基于(并且不需要知道)与对象设备的实际指派的物理I/O连接的属性。

例如,设备占位符对象300包括I/O抽象的设备定义属性308的集合,用户可以经由该I/O抽象的设备定义属性308使用I/O抽象概念来定义或配置对象设备。对于处于I/O未分配状态(例如,如连接路径属性305所指示的)的设备102,I/O抽象的设备定义308包括I/O抽象的接口类型属性310,其值可以被定义或被选择为指示I/O接口的类型或类别,物理设备102经由该I/O接口能够物理连接。I/O抽象的接口类型属性310的可能值包括例如“常规”(例如,对于傻瓜、非智能、非HART、惯用和/或传统设备)、“HART”、“WirelessHART”、“SIS传统”、“SIS HART”等。

在已经定义了对象300中的I/O抽象的接口类型310之后,可以显露对应于定义/填充的I/O抽象的接口类型310的附加属性,以允许用户进一步细化I/O抽象的设备定义308。例如,对于“常规”、“SIS常规”、或“HART”的定义的I/O抽象的接口类型310,显露了I/O抽象的设备类型属性312。一般而言,I/O抽象的设备类型属性312指示设备102的类型或类别,从而进一步细化设备102的I/O抽象的设备定义308。可能的I/O抽象的设备类型312的示例包括电流输入、电流输出、离散输入、离散输出、脉冲输入、连续脉冲输出、热电偶输入、毫伏输入、RTD(电阻温度检测器)输入、热电偶输入、电压输入、24VDC电源、HART模拟输入、HART两态DVC输出、WirelessHART等。

然而,一些I/O抽象的接口类型310可能不会导致任何I/O抽象的设备类型312被显露(例如,各属性可能保持隐藏),而其它I/O抽象的接口类型310可能导致一个、两个、或更多个I/O抽象的设备类型312被显露。特定I/O抽象的接口类型310与一个或多个I/O抽象的设备类型312(如果有的话)的映射或关联可以被事先定义,并且在某些情况下可以是可修改的。

在已经定义了对象300中的I/O抽象的设备类型312之后,对于一些I/O抽象的设备类型312,一个或多个I/O抽象的设备特性属性315可以被显露以进一步细化I/O抽象的设备定义308。例如,如果I/O抽象的设备类型312被定义为“当前输入”,则对应的I/O抽象的设备特征315,例如,“设备子类型”被显露用于储存对应的描述值,例如“0-20mA”、“4-20mA”等。在另一个示例中,如果I/O-抽象的设备类型312是某种类型的HART设备(例如,HART模拟输入、HART两态DVC输出、WirelessHART等),则对应的I/O抽象的设备特性315,诸如设备102的“HART制造商”、“HART模型”和“HART修订版”被显露使得相应的HART信息可以被储存在定义308中。一些I/O抽象的设备类型312不会导致任何I/O抽象的设备特性315被显露,而其它I/O抽象的设备类型312可能导致一个、两个或更多个I/O抽象的设备特性315被显露。特定I/O抽象的设备类型312与一个或多个I/O抽象的设备特性315的映射或关联(如果有的话)可以被事先定义,并且在某些情况下可以是可修改的。

I/O抽象的设备定义308还包括I/O抽象的I/O接口配置属性318的集合,设备102的I/O接口配置的抽象属性经由该I/O抽象的I/O接口配置属性318来定义。I/O抽象的I/O接口配置属性318的可能类型或类别(以及在一些情况下,特定值)至少部分地基于所定义的I/O抽象的设备定义308。如图4A所示,I/O抽象的I/O接口配置属性318可以包括显露的各种I/O配置参数属性320和/或I/O通道参数322。

例如,基于设备102的所配置或定义的I/O抽象的设备定义308的定义的属性值310-315,确定与所配置或定义的设备102兼容的I/O硬件的类型(例如,CHARM、I/O卡等等)。各设备定义值308与各种类型的I/O硬件之间的兼容性可以被事先定义,并且在某些情况下可以是可修改的。在实施例中,设备定义值308与I/O硬件的类型之间的兼容性被储存在兼容性矩阵或其它合适的格式中。此外,与设备102的所配置或定义的I/O抽象的设备定义308兼容的每种类型的I/O硬件又对应于I/O抽象的I/O配置参数属性320的相应集合。因此,I/O抽象的I/O配置参数属性320的相应集合被显露在I/O抽象的I/O接口配置318中以进一步细化其对设备102的定义。对于某些模拟、有线、或常规类型的I/O硬件,相应的I/O抽象的I/O配置参数属性320包括一个或多个通道参数属性322,其被显露以进一步细化设备102的I/O抽象的I/O接口配置318。对于非模拟、有线、和/或常规(例如,数字或智能I/O硬件类型)的I/O硬件的类型,通道参数属性322被排除,例如不被显露或被隐藏。

为了说明,假设设备102的I/O抽象的设备定义308被配置为传统电流输入4-20mA设备。这样的I/O抽象的设备定义308与两种特定类型的I/O硬件(例如,AI(模拟输入)4-20mA HART CHARM和IS(本质安全)AI4-20mA HART CHARM)兼容(例如,如基于兼容性映射或关联所确定的)。因此,用于AI(模拟输入)4-20mA HART CHARM和IS AI 4-20mA HART CHARM两者的I/O抽象的I/O配置参数属性320的相应集合被显露在I/O抽象的I/O接口配置318中,用于配置和/或定义。因为两种兼容类型的I/O硬件是常规类型的I/O硬件,所以对应于每种兼容类型(例如,抗混叠滤波器、欠范围极限、超范围极限、NAMUR极限检测等)被显露以进一步细化设备102的I/O抽象的I/O接口配置318。

一个或多个特定通道属性322与一个或多个特定类型的I/O抽象的I/O配置参数属性320和/或一个或多个特定类型的I/O硬件(并且因此,与相应特定的I/O抽象的设备定义308)的映射或关联可以被事先定义,并且可以是可修改的。类似地,对于非模拟、有线、和/或常规的I/O硬件类型(例如,数字或智能I/O硬件类型),一个或多个特定I/O抽象的I/O接口配置属性318与一个或多个特定类型的I/O硬件(并且因此,与特定I/O抽象的设备定义308)的映射或关联可以被事先定义,并且可以是可修改的。

可以被包括在I/O抽象的设备定义308中的其它属性包括特定于设备协议的属性,诸如示例性HART设备警告属性328、示例性HART设备警报属性330、自动回路测试配置属性332、和/或其它I/O抽象的属性335。当然,诸如Foundation Fieldbus协议设备、CAN设备、Profibus设备等之类的其它设备协议可具有可根据那些协议来配置的其它预定义属性。如图4A所示,当I/O抽象的设备类型312被设置为HART或WirelessHART时,示例性HART设备警告属性328和HART设备警报属性330被显露以进行定义。一般而言,HART设备警告属性328和HART设备警报属性330定义对于各种类型的警告将引发什么类型的警报(如果有的话)、以及它们相应的行为。警报类型的示例包括咨询、失败、维护、不在通信、无警报等。警告类型的示例包括例如现场设备故障、配置改变、主变量超出极限、CPU EEPROM写入失败、和/或与HART设备有关的其它警告。自动回路测试配置属性332定义涉及对象设备的自动回路测试的各个方面的值。例如,指示将针对自动回路测试生成的测试信号的类型和水平的值可以储存在自动回路测试配置属性332中。当然,任何其它期望的I/O抽象的设备定义308的I/O抽象属性335可以附加地或替代地被显露,以用于定义或配置。此外,对象300的任何其它属性338(其可以或可以不是I/O抽象的)可以附加地或替代地被显露以用于定义或配置。一般而言,对于设备102,储存在其设备容器对象300的实例中的特定值302-338至少部分地以I/O抽象的方式定义或配置特定设备102。

一般而言,当其对应的I/O抽象的I/O接口类型310、I/O抽象的设备类型312、设备子类型特性315的属性已经被提供、选择或以其它方式定义时,传统设备被认为使用I/O抽象的信息来充分地定义或配置,并且当其I/O抽象的I/O接口类型310、I/O抽象的设备类型312、以及I/O抽象的设备特性315制造商、型号、修正版属性已经被提供、选择、或以其它方式定义时,HART设备被认为使用I/O抽象的信息来充分地配置或定义。

此外,在一些实现方式中,保存或储存在现场设备102的设备占位符300的实例中的属性的至少一些值被储存为元数据。例如,属性值305-308以及一个或多个一般属性值302中的任何一个或多个可被保存或储存为元数据。

因此,在设备的特定I/O卡、I/O通道、和/或I/O节点已被指派给设备102之前,设备容器或占位符对象300实现了以I/O抽象的方式配置特定设备102和现场环境122。具体地,设备占位符对象300允许配置现场设备102的特定身份(例如,其名称,其长标签,其HART设备定义(如果设备102是HART设备)等)以及设备102的各种属性(参考标记308-335,以及可选地,302和338中的所选属性),其中至少一些是I/O抽象的。现场设备102的属性包括设备102的描述性属性以及当各种状况发生时设备102的行为属性或行为,诸如警报、警告、低范围和/或超范围极限的检测、以及其它行为。现场设备102的至少一些属性指示对应于设备102的相应类别、类型、或特性,而不是明确标识(例如,类型310、312、318等),并且因此是“I/O抽象的”。此外,在将设备102指派给特定I/O卡、特定I/O通道、和/或特定I/O节点时或之后(例如,在设备的连接路径属性305被改变以指示设备102处于I/O已分配状态之后),保存或储存在设备102的设备占位符对象实例中的属性值302-338中的至少一些在过程控制系统5中保留或继续,如将在后面的部分中描述的。

为了清楚起见,配置设备容器或占位符对象300的以上讨论包括用户经由用户接口(诸如经由资产管理系统132和/或现场调试工具135的用户接口)输入、配置或以其它方式定义各种属性302-338的期望值。然而,至少由于处于I/O未分配状态的设备的设备定义308的I/O抽象性质,可以由在资产管理系统132处、在现场调试工具135(例如,如在图2A和2C中所描绘的)处或在某些其它计算设备处执行的配置应用340自动配置、定义和填充期望的属性值302-338中的至少一些(例如,针对暴露的属性和/或针对隐藏的属性)。在一示例中,配置应用340基于储存在一个或多个文件、数据库或数据储存器342中的信息来自动填充属性值302-338中的至少一些。数据文件或储存器342中的至少一些可以相对于配置应用340而本地设置(例如,在资产管理系统132处,在如图2A和图2C所示的现场调试工具135处,和/或在某些其它本地数据储存器处)。另外地或替代地,一个或多个文件或数据库342中的至少一些可以远程地(例如,在远程服务器、在资料库处、在云端储存器中,等等,未示出)设置并由配置应用340远程访问。

数据储存器342储存I/O抽象信息的各种映射或关联的指示或定义,例如,在各种I/O抽象接口类型310与各种I/O抽象设备类型312之间,在各种I/O抽象设备类型312与各种I/O抽象设备特征315之间,在各种I/O抽象设备定义308与各种类型的I/O硬件之间,在各种类型的I/O硬件与各种I/O抽象的I/O接口配置属性318之间,在各种I/O抽象设备定义308与各种I/O抽象的I/O配置属性318之间,在各种I/O抽象的I/O配置属性318与各种I/O抽象配置参数属性320之间,在各种I/O抽象配置参数属性320与各种通道参数属性332之间,等等。另外地或替代地,文件或数据库342还可以储存一般属性302(诸如名称、描述、电缆ID、典型布线图、HART长标签、HART设备定义等)的值和/或其它设备特征338的值。文件、数据库或数据储存器342可以以任何合适的格式(例如,兼容性矩阵、表格、参考数据库等)来实现,并且可以跨任意数量的数据储存设备来实现。

因此,基于处于I/O未分配状态并且使用数据储存器342的内容的设备的设备定义308的I/O抽象性质,配置应用340能够为多个设备(例如,共享一个或多个公共属性值302-338的那些设备)批量配置(bulk-configure)属性值302-338中的至少一些,由此促进跨过程工厂5内的不同区域对设备配置的跟踪的一致性以及在调试期间的效率。

现在转到包括在对象300的一般属性302中的名称属性,如过程控制系统5内使用的逻辑设备标识符,名称属性服从相同的命名和名称空间规则,诸如用于设备标签和设备信号标签的命名和名称空间规则。因此,在一实施例中,名称属性储存设备102的缩短的标签(ST),如上面关于图3A和3B所讨论的,缩短的标签(ST)可以从设备的长标签(LT)自动得到,例如,通过标签解析器装置200。因此,在一些情况下,标签解析器装置200从配置应用340接收特定设备的长标签(LT),或者直接访问文件或数据库342以读取或以其它方式获得特定设备的长标签,然后对所获得的长标签进行操作以确定设备的缩短的标签(ST),例如,以诸如上述方式。在一些情况下,标签解析器装置200从文件或数据库342中的一个或多个批量读取多个设备长标签(LT),生成对应的多个设备缩短的标签(ST),并将所生成的多个缩短的标签(ST)储存在文件或数据库342中的一个或多个中以便由配置应用340进行后续访问以填充多个设备的相应名称属性。在一些情况下,配置应用340在每设备基础上或批量地从标签解析器装置200接收设备的缩短的标签(ST),而不是读取或访问文件342以获得设备的缩短的标签(ST)。

应注意的是,虽然配置应用340和标签解析器装置200被讨论为单独实体,但是在一些实现方式中,配置应用300和标签解析器装置200至少部分是整体实体。例如,标签解析器装置200可以包括在配置应用340中,或者标签解析器208可以包括在配置应用340中。

图4B描绘了调试过程工厂的示例方法350,方法350可以至少部分由设置在现场环境中的资产管理系统或其它系统132、由一个或多个现场调试设备135和/或由设置在过程工厂5的现场环境122中的任何其它合适的装置来实现。为了便于说明,但不是出于限制目的,同时参考图1-图4A来描述方法350。一般而言,方法350的至少一部分(并且在一些情况下,整个方法350)在过程工厂5的现场环境122内(例如,在现场环境122的集结区域中和/或在现场环境122的安装区域中)执行。

在方框352处,方法350包括获得描述现场设备102的值的集合,用于填充到现场设备102的设备占位符对象300的各种属性中。在过程工厂5的运行时间期间,现场设备102用于在过程工厂5的现场环境122中执行物理功能,并且发送和/或接收对应于物理功能的数据以控制过程工厂5内的过程。对应于物理功能的数据将经由被通信连接到I/O设备的端口来发送和/或接收。然而,在方法350的执行期间,现场设备102处于I/O未分配状态,例如,现场设备102未被指派(例如,还未被指派)为经由任何I/O设备进行通信。

该值集合中的至少一些值具体标识过程工厂5内的现场设备102,例如其名称、其长的标签、HART设备定义(如果现场设备102是HART设备的话)等等。另外,该值集合中的至少一些分别指示描述现场设备102的相应类别的类型。例如,该值集合可以包括一个或多个值,其中每一个值分别指示I/O接口类型310、设备类型312、设备类型的特征315、I/O配置类型318、I/O配置类型的一个或多个属性/参数320、I/O配置类型的一个或多个通道参数322、设备警告(alert)配置328、设备警告配置330、自动回路测试配置332或现场设备102的描述性属性的其它类型或类别335、338。

从一个或多个源获得对应于现场设备102的该值集合中的至少一些值(方框352)。例如,可以通过从文件或数据储存器读取值、通过经由通信链路接收值、通过经由用户接口接收值、通过从另一应用接收值和/或通过用于获得数据的任何其它已知手段来获得描述现场设备102的值中的至少一些。重要的是,当其中包括现场设备102的回路(或其一部分)与过程工厂5的后端环境125在通信上断开连接时,但是获得描述现场设备102的该值集合(方框352)。例如,该值集合中没有值能够从在过程工厂5的后端环境125处使用的控制配置工具或应用获得,因为现场环境122与现场环境122之间经由控制回路100(例如,经由现场设备102、指派的I/O卡、控制器120以及后端数据高速通道或骨干10)的通信路径还没有(尚未)设立或建立。

可以通过从另一个获得的值中自动得到来获得对应于现场设备102的该值集合中的一些值(方框352)。例如,可以从源获得设备的源标签,并且可以从所获得的源标签自动得到现场设备102的系统标签。

在方框355处,方法350还包括使用所获得的描述现场设备102的值来为现场设备102配置设备占位符对象300的实例,由此定义设备102的I/O抽象配置。配置现场设备102的设备占位符对象实例包括利用描述现场设备102的相应值来填充对象300的相应字段或属性。

应注意的是,并非设备占位符对象300的所有配置的实例包括相同的属性集合。基于包括在对象300中的其它属性的一个或多个填充值,可以暴露不同的属性集合。因此,为现场设备102配置设备占位符对象300的实例(方框355)包括:对于一些场景,基于已经填充到对象300的另一个属性中的值来暴露对象300的额外属性(图4B中未示出)。例如,基于被填充为常规的I/O抽象接口类型属性310,I/O抽象设备类型属性312针对其相应的填充来暴露(例如,到当前输入、当前输出等)。基于其它属性的特定填充值的额外属性的特定暴露的关联可以例如被储存在文件、数据库或数据储存器342中,文件、数据库或数据储存器342储存对关联或映射的指示。此外,新暴露属性的可能填充值的范围也可以储存在文件、数据库或数据储存器342中。

还应注意的是,尽管设备占位符对象300的配置的实例包括针对各种属性的I/O抽象值(例如,I/O抽象接口类型、I/O抽象设备类型等),但是该配置的实例可以包括针对其它属性的显式值。例如,警告限制可以设置为显式值,某些I/O配置属性参数值可以设置为显式值。

在方框358处,方法350包括:当现场设备处于I/O未分配状态时,在现场设备102处发起一个或多个调试动作。基于现场设备102的I/O抽象配置来发起一个或多个调试动作。在一示例中,在检测到现场设备102处于I/O未分配状态时,如由保持或储存在现场设备102的配置的设备占位符对象实例中的值所指示的,发起一个或多个调试动作(方框358)。另外地或替代地,一个或多个调试动作可以利用储存在现场设备102的I/O抽象配置中的信息或数据中的至少一些。例如,现场设备102的名称(其可以是例如与现场设备102相对应的设备标签或设备信号标签)可以用于验证所安装的现场设备102的身份并且用于生成测试信号。在另一个示例中,填充到HART设备警告328和HART设备警报配置330中的值定义现场设备102的针对警告和/或警报的行为,并且这些预期行为通过一个或更多调试动作进行标识、测试和/或验证。

在可选的方框360中,方法350包括:检测或确定现场设备102已经改变为I/O已分配状态,由此表示现场设备102已经被指派给特定的I/O设备、特定的I/O通道和/或特定的I/O节点。基于检测到设备102处于I/O已分配状态,可以发起一个或多个其它调试动作,并且这些其它调试动作可以利用由现场设备102保持或储存的信息或数据中的至少一些。例如,在回路100上执行的自动回路测试可以利用填充到现场设备102的自动回路测试配置属性332中并且指示不同信号级别的值,所述不同信号级别将在现场设备102处生成以测试和/或验证过程控制回路100的行为。

在一些实施例中,方法350可以以其整体来执行,而不需要或使用任何输入,除了可能从用户接口接收用于方法350的发起命令之外。例如,在接收到用于发起方法350的用户命令时,在没有任何介入的用户输入的情况下自动生成或定义现场设备102的I/O抽象配置(例如,方框352、355)和一个或多个调试动作,在没有任何介入的用户输入的情况下自动发起利用所生成的设备102的I/O抽象配置的一个或多个调试动作(例如,方框358)。

此外,在一些场景下,方法350被扩展以应用于多个现场设备102,所述多个现场设备102可以包括不同类型的现场设备(例如,传感器、阀、测量设备等)。在示例性场景中,针对多个现场设备102执行方法350的方框355(例如,在没有任何介入的用户输入的情况下以串行和/或并行方式),由此以I/O抽象的方式来批量配置多个现场设备102。实际上,在一实施例中,针对多个现场设备自动执行整个方法350,而不需要或使用任何用户输入(除了可能从用户接口接收发起命令之外)。换言之,在没有任何介入的用户输入的情况下自动生成或定义用于多个现场设备的I/O抽象配置,并且在没有任何介入的用户输入的情况下自动发起利用所生成的I/O抽象配置的一个或多个调试动作。

现场环境中的设备信息的分发

因此,设备102的I/O抽象配置在现场环境122中可用于在设备102处于I/O未分配状态时和/或在包括设备102的回路与后端环境125在通信上断开连接时供各种调试活动使用。在现场环境122中,利用保持或包括在设备102的I/O抽象配置中的至少一些信息的一个或多个调试活动可以在设备102处或设备102上执行,例如,当设备102被初始安装时,当设备102处的通信连接可用时(例如,在设备的端口处接收到接线,设备102的无线收发器被激活等),当设备102通信地连接到CHARM 110a时,等等。例如,使用设备的I/O抽象配置,即使设备102处于I/O未分配状态,在设备102处输入根据设备102的I/O抽象设备定义308的测试信号以测试其响应行为。

因此,设备102的I/O抽象配置被储存在现场环境122中的位置处,使得现场调试工具135能够容易地访问其中保持或储存的信息。例如,设备102的I/O抽象配置的至少一部分可以被本地储存在调试设备135处,本地储存在资产管理系统132中和/或对于调试设备135可访问的一些其它文件或数据储存器342中。在一些实施例中,设备102的整个I/O抽象配置被本地储存在调试设备135处,本地储存在资产管理系统132处和/或文件或数据储存器342中。

另外,在一些场景中,储存在设备102的I/O抽象配置中的至少一些信息被分发以储存在一个或多个部件处,该一个或多个部件处与现场设备102相关联并且已经(和/或意图)被安装用于现场环境122中的运行时间操作以控制工业过程的至少一部分,诸如现场设备102是其一部分的过程控制回路100的其它部件。在设备102的I/O抽象配置中保持或储存的信息集合,一般而言,至少现场设备102的标识,诸如名称属性值、缩短的标签(ST)或现场设备102的其它特定标识,被分发到并储存在接收部件处。对于一些设备和/或对于一些接收部件,储存或保持在设备102的I/O抽象配置中的额外信息也被分发并储存到接收部件的存储器中。通常,现场设备的I/O抽象配置的至少一些信息被分发到的一个或多个部件排除任何用户接口设备(例如,排除现场调试工具135、资产管理系统132的用户接口和其它用户接口设备)。

替代地,在一些调试场景中,现场调试设备135和/或资产管理系统132将储存在设备102的I/O抽象配置中的至少一些信息(例如,设备102的名称以及可选的其它信息)复制、传送或分发到设置在过程工厂5的现场环境122中的一个或多个接收部件。在一示例中,现场调试设备135和/或资产管理系统132建立(在有或没有人工辅助的情况下)与接收部件的有线或无线通信链路或连接,并且经由所建立的连接将现场设备102的I/O抽象配置的期望信息复制、传送或以其它方式分发到接收部件,以储存在接收部件的存储器中。

将现场设备102的期望的I/O抽象配置信息分发到接收部件可以利用任何合适的电子通信技术或技艺。这种合适的电子通信技术的示例是短距离无线条件协议,例如,RFID(射频识别)、蓝牙、NFC(近场通信)或其它短距离无线通信协议,诸如在与本申请同时提交的标题为“Method and System for Commissioning Process Control Hardware”的美国专利申请No.15/291,200(代理人案卷号06005-593481)中所描述的,该美国专利申请的全部公开内容通过引用并入本文。然而,应该注意的是,不同的短距离无线技术可以用于不同的情况。例如,当接收部件还没有(尚未)通电时,可以使用RFID将现场设备102的期望设备配置信息从便携式调试设备135或其它手持式设备传送到附接到接收部件的外部表面或一些其它外部部分的存储器,而当接收部件通电时,可以使用另一种技术,诸如蓝牙、Wi-Fi或直接的物理接线或电缆。

实际上,当接收部件至少部分地通电并且包括内部存储器时,可以使用各种无线和/或有线技术来传送现场设备102的期望配置信息,以储存在接收部件处。通常,在这些情况下,接收部件包括被配置为经由接收部件的有线或无线端口来接收设备102的期望配置信息的硬件、软件和/或固件,并将接收到的信息储存到内部存储器中。在一示例中,便携式调试设备135或其它手持式设备利用蓝牙、NFC或其它短距离无线协议将现场设备102的期望设备配置信息经由无线链路发送到接收部件的无线端口,并且接收部件使得接收到的信息储存在其内部存储器中。在另一个示例中,适配器(dongle)或其它类似的有线通信接口将便携式调试设备135或其它手持式设备安全且临时地连接到接收部件的端口,以便将设备102的期望的I/O抽象配置从便携式调试设备135或其它手持式设备传送到接收部件,并且接收部件使得接收到的信息储存在其内部存储器中。例如,有线适配器的第一端被插入到便携式调试设备135或其它手持式设备的端口中,并且第二端被插入到接收部件中。

在一示例性场景中,现场设备102的配置信息的接收部件是现场设备102本身,例如当现场设备102是智能现场设备(例如,现场设备102a、102b)时。对于智能现场设备,期望的设备配置信息直接储存到其内部存储器中。对于传统的现场设备(例如,设备102c、102d),或者如对于智能现场设备102a、102b所期望的,现场设备102的期望的配置信息储存到与现场设备102通信地连接的另一部件或设备(例如,包括在现场设备102是其一部分的过程控制回路100中的部件)的存储器中,从而将配置信息储存在传统现场设备102的代理位置处。在一示例中,现场设备102的配置信息被分发到并储存在CHARM 110a处,该CHARM 110a物理连接到现场设备102但尚未被插入到和/或指派给CHARM终端块150或CIOC 145。在另一个示例中,现场设备102的配置信息被分发到并储存在CHARM扩展器(extender)处,该CHARM扩展器设置在CHARM 110a与CHARM终端块150处的槽之间。

图5A中示出了用于电子编组部件的扩展器的示例(例如,CHARM扩展器)。图5A例示了包括现场设备102的CHARM 110a、CHARM扩展器402和CHARM终端块150的示例分解图400。一般而言,CHARM扩展器402是在一端可牢固地附接到CHARM 110a并且在其另一端可牢固地附接到CHARM终端块150的槽的物理部件。例如,如图5A所例示,CHARM110c可以被牢固地接收到CHARM扩展器402中,该扩展器402转而可以被牢固地接收到CHARM终端块150中。当CHARM 110a、CHARM扩展器402和CHARM终端块150被牢固地附接到彼此时,建立了从CHARM110a通过CHARM扩展器402到达CHARM终端块150的信号路径。

CHARM扩展器402包括板载或内部存储器405,设备102的至少一些配置信息(诸如设备的系统标签和/或其它期望的信息)可以储存到存储器405中。在一些配置中,CHARM扩展器402包括处理器408以使得能够从源(例如,从现场调试设备135和/或资产管理系统132)读取或接收设备的配置信息,并且将设备的配置信息储存到存储器405中。在一些配置中,在CHARM 110a与其终端块150之间设置并互连多个CHARM扩展器402,例如,以便为传统设备102或者出于其它原因提供额外存储器储存能力。

应该注意的是,尽管上述对分发现场设备102的至少一些配置信息以便储存在一个或多个接收部件的存储器中的讨论发生在接收部件已经安装在现场环境122中之后,但是在其它场景中,在接收部件被安装在现场环境122中之前的任何时间,现场设备102的期望设备配置信息储存到接收部件的存储器中。例如,可以将现场设备102的期望配置信息预先配置到接收部件中,例如在工厂处。在另一个示例中,可以在现场环境122中的接收部件的物理安装之前将现场设备102的期望配置信息加载到现场环境122的集结区域中的接收部件的存储器中。

此外,除了将现场设备102的期望配置信息分发到现场设备102本身或分发到其代理中之外,现场设备的配置信息可被自动分发以储存在与现场设备102相关联的其它部件处(例如,在随同现场设备102被包括在过程回路100中的其它部件处)。所述向另外接收部件的自动分发可以由一个或多个其它条件触发。例如,现场设备的配置信息向另一个部件的自动分发可以通过检测在现场设备102与另一个部件之间已建立的连接来触发,和/或可以在成功完成在现场设备102处执行的一个或多个调试动作时触发自动分发。当现场设备102处于I/O未分配状态时,可以发生向某些部件的自动分发,并且在现场设备102已转换为I/O已分配状态之后可以发生向其它部件的其它自动分发。实际上,将现场设备102转换到I/O已分配状态本身可以触发现场设备的配置信息向一个或多个部件的自动分发。一般地,但不排他地,现场设备的配置信息的自动分发是在现场环境122中的上游方向上执行的,例如,从更接近现场设备102的部件朝向更远离现场设备102但更接近后端环境125的部件分发。

上面讨论的分发概念通过利用所述公开内容的这些和其它新颖技术的示例性调试场景来说明。在该示例性场景中,智能现场设备102已经被安装在过程工厂5的现场环境122中,但尚未连接到任何其它设备。现场操作员利用手持式现场调试工具135来从资产管理系统132获得数据以配置设备占位符对象300的实例,从而为智能设备102定义I/O抽象配置。设备102的I/O抽象配置包括指示设备102的缩短的标签,其中从储存在资产管理系统132处的长标签(LT)(例如,设备的HART标签)自动得到了缩短的标签(ST)。在该示例性场景中,设备102(或其副本)的I/O抽象配置被储存在现场调试设备135处,以供在包括现场设备102的过程工厂5的调试部分期间使用。

现场操作员通过使用现场调试工具135和现场设备102的I/O抽象设备配置中保持或储存的至少一些信息来在现场设备102处执行一个或多个调试动作。例如,操作员利用调试设备135来比较/验证在设备的I/O抽象配置信息中保持或储存的设备标识与在附接到物理安装设备102的标签(例如,RFID标签或粘贴的标记)上出现的或者在附接到物理安装的设备102的电缆的标签或标记上提供的标识信息。在成功的标识验证时,现场调试工具135将现场设备102的缩短的标签(ST)(以及可选地,其它信息)分发到现场设备102,以便板载储存在现场设备102的内部存储器中。分发可以由现场操作员在现场调试工具135处的手动命令触发,或者分发可以例如由现场调试设备135或现场设备102在检测到现场设备的标识信息的成功验证时自动地触发。

另外,当现场设备102处于独立(并且因此,I/O未分配)状态时,在现场设备102处执行一个或多个其它调试活动,以验证设备102如预期那样操作,例如,通电、断电、复位、硬重启和软重启等。这些调试动作或活动中的一些可以包括将现场调试设备135连接到现场设备102的端口,并且经由该端口发送来自调试设备135的仿真信号以验证现场设备的结果行为。仿真信号可以具有依据可用于现场调试设备135的设备102的I/O抽象配置的格式。

在该示例性场景中进一步继续,在独立设备102上执行了初始一轮调试动作/活动之后,现场操作员随后将设备102连接到另一个部件(例如,包括在设备102的过程控制回路100中的另一个部件)并且对两个连接的部件的组合执行一个或多个调试动作或活动。例如,现场操作员将接线或电缆的一端连接到智能设备102的端口,并将接线或电缆的另一端连接到CHARM 110a,从而连接智能设备102和其CHARM 110a。由于CHARM110a比现场设备102更靠近(从通信路径的角度来看)后端环境125,因此CHARM 110a被认为被设置在设备102的“上游”。在检测到智能设备102与CHARM 110a之间的连接的建立时,储存在现场设备102的内部存储器中的至少一些设备配置信息(例如,设备102的缩短的标签(ST)以及可选的其它信息)被自动分发到上游CHARM 110a的内部存储器,例如通过将信息自动推送到上游CHARM 110a或通过上游CHARM 110a从智能现场设备102自动拉取信息。因此,设备的配置信息现在可在CHARM 110a和智能设备102处获得,并且在执行涉及CHARM 110a和智能设备102两者的一个或多个调试动作以及其它调试动作或活动时可以由CHARM 110a和智能设备102分别使用。涉及CHARM 110a和智能设备102两者的示例性调试活动包括:在CHARM 110a与智能设备102之间根据设备的配置信息所指示的格式来发送信号或消息,以验证格式、保真度、信号强度等,和/或根据在CHARM 110a处的设备的配置信息来注入仿真的CIOC信号以测试现场设备102的结果行为。

此外,现场设备102的配置信息的自动上游分发和所分发的配置信息在调试活动中的使用不必仅发生在现场设备102处于I/O未分配状态时、在现场环境122与后台环境125在通信上断开连接、和/或在回路100(或其一部分)与后端环境125在通信上断开连接时。例如,继续该示例性场景,最初分发给智能设备102然后后续分发给CHARM 110a的设备102的配置信息的内容包括设备102的缩短的标签以及CHARM 110a意图插入/插接到的组(bank)和槽。当CHARM 110a插入到CHARM终端块150中时,对应于现场设备102并储存在CHARM 110a处的所储存的组和槽信息可以用于验证CHARM 110a是否插入在正确的位置。另外,在将CHARM 110a插入到CHARM终端块150中时,现场设备102的配置信息(例如,缩短的标签(ST)以及可选的其它信息)被自动分发到并储存在CHARM承载件142的存储器中。例如,现场设备102的配置信息可以被自动地拉取或推送到CHARM承载件142的存储器中,并且CIOC145的调试可以利用储存在CHARM承载件142的存储器中的现场设备102的配置信息142。

当然,诸如缩短的标签和其它信息之类的设备配置信息的分发还可以从现场调试设备135直接分发到上游部件而不是由安装(或要安装)用于与现场设备102的运行时间操作的部件自动感测和分发。例如,现场操作员可以利用现场调试设备135将多个现场设备的配置信息批量加载到CIOC145或CHARM承载件142的存储器中,例如以类似于如上针对将设备配置信息分发到CHARMS 110a、CHARM扩展器402和现场设备102中所讨论的方式。

示例性调试活动

因此,鉴于讨论,通过使用本文所描述的新颖的智能调试技术中的一种或多种,各个现场设备、部件和过程控制回路的各个部分可以在它们分别被安装和互连时进行调试。另外,本文所描述的新颖的智能调试技术允许在分别调试过程控制回路的设备、部件和部分时增量地或逐段地实现回路相关的调试活动,而不是需要等待安装并调试整个回路。

例如,在分别调试各个设备、部件和回路100的部分时,能够增量地生成完工列表、完工回路示意图(diagram)、完工回路地图(map)和完工文档的部分。在传统的调试中,由于必须在过程控制系统5内提供专门的软件应用,所以生成完工列表、示意图、地图和文档是困难的,并且通常,只能在回路已被调试并且连接到过程工厂5的后端环境125之后生成完工列表、示意图、地图和文档。(为了便于阅读本文,完工列表、完工回路示意图、完工回路地图和完工文档通常被称为“完工信息”。因此,本文所使用的术语“完工信息”是指任何数量的单独的或组合的完工列表、完工回路示意图、完工回路地图和/或其它完工文档。)

然而,由智能调试提供的本地和增量地生成完工回路信息的部分移除了传统调试的限制和延迟。替代地,在回路100与过程工厂5的后端环境125在通信上断开连接(例如,尚未通信连接到过程工厂5的后端环境125)时,本地和增量地生成完工回路信息。例如,在现场设备102处于I/O未分配状态时,在控制器120已经物理地连接到I/O机柜115之前,在现场设备102已经被指派到特定I/O卡108之前,和/或处于调试过程回路100或工厂5的其它类似过渡状态中时,本地生成完工信息中的部分。当过程工厂被模块化构建时(例如,当过程工厂的各个部分在被聚集在一起并集成到过程工厂5中作为工厂场地处的整体之前过程工厂的各个部分被单独地建立在不同的物理位置处时),本地生成完工回路信息具有特定的用处并且提供特定的益处。当将新的回路添加到在线过程工厂时,本地生成完工回路信息也具有特定的用处并提供特定的益处,因为可以调试新的回路,而不中断或延迟过程工厂的在线操作。通常,本地生成完工回路信息允许当需要时在不同的物理位置处执行对回路的调试,因此节省了需要在工厂场地处执行整体系统调试的时间和人员-工时。

图5B是用于当回路与过程工厂5的后端环境125在通信上断开连接(例如还未连接到过程工厂5的后端环境125)时本地生成完工回路信息的示例性方法420的流程图。例如,当在回路在过程工厂5的现场环境122中或在场地外集结区域处建立和调试回路时,可以执行方法420中的至少一些部分。在一实施例中,方法420的至少一部分可以由本地完工回路信息生成器(关于图5C对其进行更详细地描述)执行,并且方法420在下面被如此描述以便于讨论而非限制目的。通常,但不一定,在过程工厂5的现场环境122中,例如由现场调试设备135和/或由资产管理系统132,执行方法420。此外,为了便于讨论而非限制目的,下面同时参考图1-图5A来描述方法420。

在方框422处,方法420包括:获得关于过程控制回路100的第一部分已被验证的指示,例如基于一个或多个相应调试活动的完成。例如,本地完工回路信息生成器从现场调试工具135或资产管理系统132获得关于过程控制回路100的第一部分已被验证的指示(方框422)。

方法420还包括:生成完工I/O列表的第一部分,该列表在其中将过程控制回路的第一部分指示或描述为完工(方框425)。在方框428处,将所生成的完工I/O列表的第一部分储存在例如现场调试工具135处、资产管理系统132处、在对于访问完工信息生成器可访问的一个或多个数据储存器342处、和/或储存在某些其它适合的存储器或数据储存器中。如果需要(方框430),在过程控制回路100的后续部分分别经由相应的调试动作或活动进行验证时,可以针对所述后续部分重复方框422-428。

方法420可以可选地包括:基于所储存的完工I/O列表的部分来生成和储存其它类型的完工信息(方框432)。例如,可以在生成425和储存428完工I/O列表的每一个部分本身时增量地,或者针对一批已经储存的完工I/O列表的多个部分,生成并存储432与完工I/O列表的相应部分相对应的I/O回路示意图或地图的部分。类似地,可以在生成并存储完工I/O回路示意图或地图中的每一个部分时增量地或者针对一批已经储存的完工I/O回路地图或示意图的多个部分,生成并存储432与完工I/O回路示意图或地图的相应部分相对应的完工I/O文档的部分。

在方框435处,方法420包括:将本地生成的完工I/O信息提供给过程控制系统5的后端环境125。当回路100与后端环境125在通信上断开连接时,可以将本地生成的完工I/O信息提供给过程控制系统5的后端环境125(方框435),例如经由手动和/或外部网络传输。在一示例中,当回路100与后端环境125在通信上断开连接时,将本地生成的完工I/O信息从现场调试工具135或资产管理系统132下载到包括在过程工厂5的后端环境125中的集中式数据库或数据储存器128。例如,在生成完工I/O信息中的每一个部分时,或者在包括完工I/O信息的多个部分的批次中,可以以增量方式将完工I/O信息提供给后端环境125(方框435)。

在另一个示例中,在回路100连接到过程工厂5的后端环境125时,将本地生成的完工I/O信息自动提供(例如,经由过程控制系统5的控制器120和一个或多个内部运行时间通信网络自动提供)给过程控制系统5。例如,在检测到回路100到后端环境125的通信连接的建立时,经由回路的通信连接将已经生成并存储在现场环境122中的完工I/O信息中的至少一部分自动提供给后端环境125。在后端环境125处,例如,经由操作员工作站71,过程控制系统5可以利用本地生成的完工I/O回路信息来进行对回路100的部分以及回路100整体的测试、排除故障和可视化。例如,可以利用完工回路示意图或地图来测试和验证整个回路100。

图5C描绘了示例性本地完工回路信息生成器450的框图。在一实施例中,本地完工回路信息生成器450被包括或实现在本地回路信息生成设备或装置452中,本地回路信息生成设备或装置452可以至少部分地被容纳或实现在现场调试工具135、资产管理系统132、I/O终端块105、I/O卡108和/或任何容纳在I/O机柜115内的其它部件中。在一示例中,本地回路信息生成设备或装置452容纳在I/O机柜115中,并且因此,本地完工回路信息生成器450通信地连接到回路100的其它也容纳在机柜115中的部件,如参考标记455所指示的。在另一个示例中,本地回路信息生成设备或装置452至少部分地被包括或实现在现场调试工具/便携式设备135中,并且因此,本地完工回路信息生成器450能够通信地连接(例如,以有线和/或无线方式)到现场设备102、I/O卡108和/或任何设置在现场环境122中的其它部件,如参考标记455所指示的。

本地完工回路信息生成器450可以包括:(i)一组存储在有形、非易失性存储器上并且可由处理器执行的计算机可执行指令,(ii)可执行固件指令,和/或(iii)在其中正在安装和调试回路100的现场环境122中本地执行的可执行硬件指令。包括本地完工回路信息生成器450的指令可以是可执行的以执行例如方法420中的至少一部分。

此外,本地回路信息生成设备或装置452可以包括回路信息存储区域458,在该回路信息存储区域458中存储本地生成的完工回路信息并且该回路信息存储区域458对于回路信息生成器450可访问。例如,回路信息存储区域458可以被包括在现场设备102的内部存储器、I/O卡108、其它驻留在机柜115中的存储器中。另外地或替代地,回路信息存储区域458可以被包括在现场调试工具135的内部存储器、资产管理系统123的存储器和/或数据储存器342中。

图6描绘了调试过程工厂5的示例性方法460,方法460可以至少部分地由设置在现场环境中的资产管理系统或其它系统132、由一个或多个现场调试设备135、由设置在过程工厂5的现场环境122中的一个或多个回路部件102、105、108、110、120、和/或由设置在过程工厂5的现场环境122中的任何其它适合的部件、设备和/或装置执行。为了便于说明而非限制目的,方法460同时参考图1-图5B进行描述。一般而言,但不一定,方法460中的至少一部分(以及在某些情况下,整个方法460)在过程工厂5的现场环境122内(例如,在现场环境122的集结区域和/或现场环境122的安装区域中)执行。

在方框462处,方法460包括:当现场设备102处于I/O未分配状态时,获得现场设备102的标识。如先前所讨论的,现场设备102的I/O未分配状态指示现场设备102未被指派(例如,尚未被指派)到任何特定的I/O卡108。现场设备102的标识通常(但不一定)包括标识过程工厂5的现场设备102的系统标签。该系统标签可以是例如指示现场设备102的设备标签或设备信号标签,并且可能已经从现场设备102的源标签中自动得到。

获得现场设备102的标识(方框462)包括:例如,在一示例中,从设置在过程工厂5的现场环境122中的资产管理系统132或现场调试工具135接收现场设备标识。在另一个示例中,获得现场设备102的标识(方框462)包括:访问设置在现场环境122中的数据储存器342以获得现场设备102的标识。在一些场景中,结合现场设备102的标识获得与现场设备102相对应的额外信息(方框462)。例如,结合现场设备的标识获得对应于与现场设备102相关的CHARM 110a的机柜115的组和槽、包括在现场设备102的I/O-抽象配置中的选定信息、和/或与现场设备102相对应的其它信息(方框462)。

在方框465处,方法460包括:当现场设备102处于I/O未分配状态时,将所获得的现场设备102的标识储存到过程控制回路100的部件的存储器中,其中现场设备102是该过程控制回路100的一部分。可选地,方框465另外包括:对结合现场设备的标识已获得(方框462)的与现场设备102相对应的任何其它信息进行储存。

在其中储存现场设备102的标识(方框465)的部件可以是现场设备102本身,诸如当现场设备102是智能设备并且包括板载存储器时。针对非智能现场设备,或如针对智能现场设备所期望的,该部件可以是用于现场设备102的代理,诸如CHARM 110a、CHARM扩展器402或也包括在回路100中的现场设备102的其它上游部件。

在方框468处,方法460包括:将所储存的现场设备102的标识(以及结合现场设备的标识已储存的任何信息)分发到第二设备,该第二设备通信地连接到过程工厂5的现场环境122中的现场设备102并包括在现场设备102是其一部分的回路100中。将现场设备标识从部件分发468到第二设备,使得所分发的现场设备标识可以用于调试包括现场设备102和第二设备两者的过程控制回路100的一部分。通常,但不一定,第二设备在现场设备102的上游,并且包括将所分发的现场设备102的标识写入或储存在其中的板载存储器。例如,当在其中储存现场设备的标识(方框465)的部件是CHARM扩展器402时,第二设备可以是CHARM终端块150或CHARM承载件142。

在一些场景中,将现场设备102的标识从该标识被存储在其处的部件分发到第二设备(方框468)包括:在检测到在现场设备102和第二设备之间的通信连接的建立时,自动分发所储存的现场设备标识。例如,在检测到在智能现场设备102与其CHARM 110a之间建立的有线连接时,将现场设备102的标识从智能现场设备102自动分发到CHARM 110a,例如,通过将场设备标识自动拉取到CHARM 110a中,或者通过从智能现场设备102自动推送现场设备标识。

在一些场景中,将现场设备102的标识从该标识被存储在其处的部件分发到第二设备(方框468)包括:在完成在现场装备处执行的调试动作时,自动分发所储存的现场设备标识。例如,在接收到在智能现场设备102处执行的完成调试动作的指示(例如,现场操作员对完成的调试动作进行电子签署(sign-off),或者现场调试工具135自动记录调试动作的成功结果)时,将现场设备102的标识自动从智能现场设备102分发到CHARM 110a,例如,通过将现场设备标识自动推送或拉取到CHARM 110a中。

在可选的方框470中,方法460包括:将储存在第二设备中的现场设备102的标识(以及结合现场设备的标识已储存的任何信息)分发到第三设备,该第三设备通信地连接到过程工厂5的现场环境122中的第二设备。通常,但不一定,现场设备102、第二设备和第三设备包括在过程控制回路100中。将现场设备标识从第二设备分发470到第三设备,使得所分发的现场设备标识可以用于调试过程控制回路100的另一部分(例如,包括现场设备102、第二设备和第三设备的回路100的一部分)。通常,但不一定,第三设备在第二设备的上游,并且包括将所分发的现场设备102的标识写入或储存在其中的板载存储器。在一示例中,在检测到第二设备与第三设备之间的通信连接的建立时,可以将现场设备102的标识从第二设备自动分发到第三设备。在另一个示例中,在接收到完成已经在通信连接的现场设备102和第二设备上执行的调试动作的指示时,将现场设备102的标识从第二设备自动分发到第三设备。

在可选的方框472中,方法460包括:检测现场设备102已经从处于I/O未分配状态改变为处于I/O已分配状态,其中I/O已分配状态指示现场设备被指派为经由特定的I/O设备108进行通信。在检测到现场设备102处于I/O已分配状态时,方法460的方框472包括:将所储存的现场设备102的标识与储存在过程工厂5的后端环境125中的现场设备102的相应标识进行同步。例如,当现场设备102到其相应控制器120的通信路径现在被定义为经由所指派的、特定的I/O设备,从而将回路100与后端环境通信地连接时,储存在现场环境122中的现场设备102的标识可以经由所述通信路径与对于过程工厂5的后端环境125而言已知的现场设备102的标识进行同步。如果在同步期间发现差异,则可以在操作员工作站71、调试工具135、138和/或某些其它操作员接口处生成并呈现警告。另外地或替代地,可以自动采取用于减轻差异的步骤。在本公开内容的后续部分中更详细地描述同步过程的这些和其它方面。

另外,如上所述,可以与如上面所描述的在现场环境122中发生的调试活动中的至少一些同时或并行在后端系统125中发起并执行各种配置和调试活动。后端系统125的这种并行调试使得能够在现场装备被安装或连接到控制器或其它后端系统设备之前和/或在I/O卡和/或通道将现场装备连接到控制器和被指派的、配置的、分配的后端装备之前开发和测试例如控制例程、通信例程、仿真例程、用户接口例程等(其最终要在控制器处或后端系统计算机设备中的一个后端系统计算机设备中实现)。

一般而言,在工厂的调试过程期间,需要创建、配置、测试和调试在工厂的在线操作期间要运行或执行的各种应用和模块。这种应用或模块包括例如控制模块(例如,要在工厂控制器或现场设备中实现的控制例程)、安全系统模块(例如,执行工厂中的安全逻辑解算器中的安全系统功能或SIS功能的安全系统逻辑模块)、控制和安全应用接口(其在后端环境125中的各种用户接口设备中执行,以使控制和安全操作员能够在工厂的操作期间与控制和安全系统对接)、通信模块(其使其它模块和设备能够与现场环境122内的设备进行通信)、资产管理模块和应用(其由维护人员使用以与工厂内的现场装备进行通信、对工厂内的现场装备进行跟踪、修理并且在某些情况下控制工厂内的现场装备)、仿真模块(其执行在仿真环境中的各种其它模块和应用(诸如控制模块和用户接口模块),以测试这些模块的操作,以训练用户等)、数据库模块(其收集并储存来自工厂装备的数据)、分析模块(其对来自工厂的数据执行分析)等。当然,可以出于其它目的创建许多其它类型的模块、应用和用户接口程序,并且可以在工厂调试期间对其进行测试。

重要地,这些模块、应用、用户接口程序等通常与工厂内的各种现场设备和其它现场装备进行通信,并且为此,通常必须被配置有足够的信息以知道如何到达特定的现场设备(即,要用来与现场设备进行通信的I/O通信路径),并且通常必须被编程为以与设备自身兼容的方式来与现场设备进行通信。也就是说,后端环境125中的模块、应用或用户接口程序等必须知道设备的类型和设备的能力(例如,设备符合什么通信或设计协议、什么信息是可从设备获得的、什么动作或数据请求可以被发送到设备、设备具有什么限制或范围、可从设备中获得什么信号或设备创建什么信号等),以便当设备连接在工厂现场环境122中时能够与设备适当地通信。在过去,使用设备的系统标签(或与设备相关联的特定信号)向模块、应用、用户接口程序等提供该配置和调试信息,其中该系统标签唯一地定义过程控制系统中的设备,这使得模块、应用或程序能够经由配置的I/O网络与设备进行通信。另外,通信路径与设备的系统标签相关联,该通信路径定义通过工厂的I/O网络的路径,其需要被横穿以到达现场设备。该通信路径信息通常储存在模块、应用、程序等中,或者储存在后端系统125中的配置数据库中并且当需要时基于设备的系统标签而提供给模块、应用程序等。然后,模块、应用或用户接口程序使用设备的系统标签和/或通信路径信息,经由安装的和分配的I/O网络与现场设备进行通信。然而,一般而言,现场装备的系统标签和/或用于现场装备的通信路径信息对于这些模块、应用以及用户接口程序而言是不可获得的(或者如果可获得,不可用于由些模块、应用以及用户接口程序进行的通信),直到现场装备连接在现场环境122内并且I/O网络被配置为实际将现场装备连接到后端系统125(例如,经由过程控制器)。此外,当现场装备经由工厂中的I/O网络中的特定I/O网络来安装和分配时,系统标签和/或通信路径信息仅可用于与现场装备进行通信。因此,在现场装备连接到工厂和I/O网络被配置和分配之前,可能不能针对适当的操作来全面测试后端模块、应用和程序,因为这些模块、应用和程序可能不能测试它们是否被适当地配置为实际与期望的或适当的现场设备进行通信。具体地,测试这些模块、应用和程序以确保这些实体被配置为与正确的现场设备或其它现场装备进行通信,确保它们包括关于如何与特定的设备进行通信、确定设备是否具有模块、应用或程序等所需的信息或能力等的正确配置信息,是不可能的或者至少是非常困难的。因此,该种I/O连接要求使得难以全面开发和测试各种模块、应用和程序,所述模块、应用和程序在调试的早期阶段期间(即,在I/O网络被配置并且工厂的现场设备被分配到I/O网络的特定的卡和/或通道之前)要在后端环境125中运行。

图7A示出了包括硬件和软件实体的示例性后端系统700,该硬件和软件实体使得能够在现场装备被连接到和/或分配到工厂中的各种I/O网卡和/或通道之前(至少部分地)创建、测试、配置以及调试后端系统部件。后端系统700可以用作先前的实施例的后端系统125中的任何后端系统,包括例如,图1、图2A和图2B的后端系统。在某些情况下,相似的部件在图7A-7C中被编号为与先前的附图中相同。

更具体地,如图7A所示,后端系统700可以包括典型的控制、维护和仿真系统,其被描绘为控制系统710、资产管理系统(AMS)712和仿真系统714。为了简单起见被示为单个块的控制系统710可以包括许多不同的控制应用和数据库,其中在相同或不同的控制系统处理设备中(诸如在图1的各种不同的处理设备、用户工作站、服务器和数据库中)储存和执行所述控制应用和数据库。更具体地,控制系统710可以包括一个或多个控制系统设计应用710A,其可以用于创建各种控制模块、控制用户接口应用和其它控制程序(在图7A中被示为模块710B)。可以最终在一个或多个过程控制器或安全系统逻辑设备中储存和执行的控制模块710B,可以执行用于实现控制动作的控制逻辑、用于实现安全逻辑的安全系统逻辑等。可以在一个或多个后端系统计算机设备(诸如具有用户接口的工作站等)中执行的控制用户接口应用,可以使控制工程师、控制操作员、或其它人员能够在工厂中执行各种基于活动的控制。此外,控制应用710A可以用于创建从过程工厂中收集数据并将该数据储存在数据库中的数据库模块、对来自工厂的数据执行分析的分析模块等。一旦被创建,这种控制模块、例程、应用和程序710B可以在过程工厂运行时间期间被下载到控制系统的各种控制器、I/O设备、现场设备、数据库、用户接口设备、服务器、处理设备等并在其中执行。此外,所创建的控制模块(例如,其可以由各种互连的功能块组成)、安全仪表模块、用户接口模块、通信模块、分析模块、数据库模块等可以储存在配置数据库716中。在某个时候,这些控制模块、程序、接口等还可以在调试过程期间被下载并安装在各种计算机处理设备中,诸如在过程控制器、工作站、用户接口设备、数据库、服务器等中。

同样地,资产管理系统(AMS)712可以包括各种维护系统创建和配置应用712A,维护系统创建和配置应用712A用于创建维护系统对象、用户接口、数据库对象或其它应用或模块712B,712B可以在工厂中的各种设备中进行储存并且执行,以执行工厂中的(包括在用户工作站设备、手持式设备、便携式计算设备等中的)维护活动。模块、对象、程序和应用712B可以通过或结合其它维护系统部件来运行,并且可以在各种平台或设备(诸如后端系统设备、可以在工厂内移动的手持式或便携式设备等)上运行。此外,这些模块、应用、程序、接口等可以用于在过程或工业工厂内的设备上(包括在工厂的控制系统和工厂的安全仪表系统中的设备上)执行任何期望或已知类型的维护活动。如图7A所示,AMS系统712的部件可以连接到配置数据库716并且可以向配置数据库716储存信息和从配置数据库716接收信息,并且可以进行操作以在工厂的操作期间更新或改变配置数据库716中的数据、对象或其它信息。

此外,图7A的后端环境700被示为包括仿真和测试系统714,仿真和测试系统714可以包括各种应用714A,应用714A可以用于测试使用控制系统710内的应用710A和712A以及AMS 712来开发的和/或存储在配置数据库716中的控制模块710B、安全模块710B、通信模块710B、资产管理系统模块712B、用户接口应用710B和712B中的各种模块和应用。在某些情况下,仿真系统应用714A可以用于创建用于运行其它模块和应用710B和712B中的各种模块和应用的仿真环境,以训练操作员、用户、维护人员等。在某些情况下,仿真系统应用714A可以用于创建仿真场景或模块714B,714B仿真工厂中的特定类型的问题、状况、动作等,并且这些模块714B可能需要在其操作期间与工厂中的各种设备进行通信。

同样地,如图7A所示,后端环境700包括储存设备占位符对象732集合的资产对象系统数据库730,以及一个或多个配置/调试应用738,诸如本文所描述的调试应用中的任何一个,其使得工厂调试人员能够或帮助工厂调试人员在工厂中执行调试活动。调试应用738可以与上面关于图1-图4所描述的调试应用340或调试设备138相同或相似,并且可以执行如上面所描述的这些应用的各种功能。然而,在这种情况下,调试应用或设备738在后端环境700中进行操作,以对后端环境700中的数据、软件、模块和设备执行调试活动。此外,在许多情况下,应用738可以在后端环境700通信地连接到(图2A和图2C的)现场环境122中的现场装备之前和/或在对将现场环境122中的现场装备连接到后端环境700中的控制器或其它装备的I/O网络进行分配或配置之前进行操作。

为了在后端环境700通信地连接到现场设备之前或在I/O网络被配置为提供从后端环境700到现场装备的通信路径之前使得能够对后端环境700的软件和硬件部件执行调试活动,后端环境700包括资产对象系统730,如图7A所示,资产对象系统730连接到控制系统710、AMS 712、仿真系统714和调试应用738以及配置数据库716。在某些情况下,资产对象系统730可以是配置数据库的部分。重要地,资产对象系统730在其中储存各种设备占位符对象732,并且通常储存用于现场环境中的每件现场装备(例如,每一个现场设备)的这种设备占位符对象732。用于现场设备或其它硬件的设备占位符对象732通常被指示为设备标签(DT)占位符对象。另外,资产对象系统730可以储存用于设备的每一个不同的信号或可寻址参数的设备占位符对象,并且这些设备占位符对象732通常被指示为设备信号标签(DST)对象。DST对象732可以使用与设备信号标签所对应的设备的设备标签相同的设备标签作为根标签,具有包括在其中的额外或其它信息。因此,例如,用于DST对象的设备标签可以是用于信号所属于的DT对象的设备标签,具有与其连接的额外信号标签信息。

设备占位符对象732通常与上面关于图4A所描述的设备占位符对象300相同或相似,并且一般而言,将如上面所描述的现场设备环境122中所创建的,将为相同设备(以及在适当情况下,设备信号)中的每一个创建设备占位符对象732。因此,后端环境700中的设备占位符对象732在其中储存有与如针对现场装备环境122中的设备占位符对象300所描述的相同的格式和相同类型的信息。然而,应当注意的是,在现场环境122通信地连接到后端环境700之前和/或在I/O网络被配置为将现场装备分配到工厂的I/O网络中的特定的卡和/或通道之前,资产对象系统730中的设备占位符对象732是与现场装备占位符对象300分开地创建的,并储存在后端环境700中以描述或定义在现场环境122中的各种现场装备或现场设备。此外,如果需要,设备占位符对象732(或其实例)可以储存I/O通信通道信息(诸如可以是定义、参数、I/O设备类型、I/O设备等的I/O通道属性),其将被用于将现场设备通信地连接到后端系统700,诸如后端环境700中的过程控制器。

具体地,配置和调试应用738可以用于以上面参考图4A所描述的方式来创建设备占位符对象732(其中的两个被示为设备占位符对象DT 732m和DST 732n)。然而,再次注意的是,调试应用738可以创建设备占位符对象732并且可以独立于参考图4A所描述的设备占位符对象300将这些对象732储存在资产对象数据库或系统730中,设备占位符对象300被储存在例如现场装备环境122内的现场设备102和I/O设备105、108中。当然,调试应用738可以以与针对现场装备环境122描述的基本相同的方式,使用与如关于图4A所描述的那些相同的配置规则集合、预定义的数据格式等来创建设备占位符对象732。

因此,例如,调试应用738可以出于各种目的而获得要在工厂中使用的现场设备和/或其它现场装备的列表,包括关于现场设备中的每一个的源标签的信息(其来自数据库,例如,配置数据库716),并且可以为每一个这种现场设备和/或每一个这种现场设备的信号创建设备占位符对象732。在某些情况下,应用738可以为每一个这种设备自动创建设备占位符732,并且在其它情况下,用户可以为现场设备和其它现场装备单独地创建设备占位符对象732。在这些情况中的任一情况下,调试应用738可以例如调用或访问(如上面关于图3A所描述的)源标签到系统标签转换应用或系统200,该应用或系统200使用解析规则210的集合(还如上面关于图3A描述的),以将设备源标签转换为设备系统标签。然后,调试应用738可以将现场设备或其它现场装备的源标签和/或系统标签中的一个或两者储存在用于特定现场设备的设备占位符对象732(DT对象)中或用于特定现场设备信号的设备占位符对象732(DST对象)中。作为示例,调试应用738可以通过获得特定过程控制设备的唯一标识符来获得特定过程控制设备的设备源标签,该唯一标识符符合HART通信协议、WirelessHART通信协议、Foundation Fieldbus通信协议或另一种工业通信协议。此外,调试应用738可以通过确定过程控制设备的控制标签、设备标签或设备信号标签中的至少一个来确定标识特定过程控制设备的系统标签,和/或可以如上面所描述的基于解析规则集合来确定系统标签。因此,调试应用738可以基于以下中的至少一个来生成系统标签:截断源标签、从源标签删除一个或多个字符、向源标签添加一个或多个字符、组合或操纵源标签中所包括的数字字符中的至少一些、扩展或收缩源标签、或用于将源标签转换为系统标签的另一种技术。

此外,调试应用738可以从用户、数据库(诸如配置数据库716)或以其它方式获得关于现场设备的设备类型和其它设备描述信息(例如,图4A的字段308-318的I/O抽象设备定义信息、和/或图4A的字段325-338的其它设备配置和属性信息),并且应用738可以使用该信息来为要用于工厂中的现场设备或其它现场资产中的每一个填充设备占位符对象732的各个字段。作为该过程的一部分,配置或调试应用738可以访问预定义的I/O抽象定义740,其中该预定义的I/O抽象定义740基于设备类型或设备的其它更一般的信息来定义每一个设备占位符对象732的各种形式、子字段或可能的子字段,由此定义不同的设备占位符对象732的各种字段或属性、不同的设备占位符对象732的各种字段/属性的内容以及关于设备占位符对象732要采取的可能的配置和调试活动。在某些情况下,为现场设备配置设备占位符对象732的实例可以包括:储存设备占位符对象的一个或多个暴露的或隐藏的属性的相应值、每一个相应值指示描述现场设备的相应类别或类型。此外,储存指示描述现场设备的相应类别或类型的相应值可以包括储存一个或多个值,其中的每一个分别指示例如I/O接口类型、设备类型、设备类型的特征、I/O配置类型、I/O配置参数类型的属性或者I/O配置类型的通道参数。同样地,调试应用738或其它系统可以基于为现场设备的设备占位符对象732的实例的第二属性储存的值来暴露、设置、配置或储存现场设备的设备占位符对象732的实例的第一属性。

如上所述,设备占位符对象732还可以甚至在I/O通道的位置(例如,I/O通道的通信路径和设备)是已知或被设置之前,储存用于(或定义)相关联的I/O通道的属性(诸如参数、定义、类型、配置信息),该相关联的I/O通道将用于通过工厂中的I/O网络通信地连接相关联的现场设备。如在设备占位符对象中所储存的用于现场设备的该I/O通道信息向调试系统提供了配置、使用和测试设备占位符对象(或其实例)的能力,而无需将该占位符对象分配给特定的I/O通道。该配置信息还使调试系统能够测试被创建为与现场设备进行通信的其它对象,以确保这些其它对象被适当地配置为经由适当的I/O通道类型、设备等与现场设备进行通信。

此外,调试应用738可以使用户能够基于或使用设备占位符对象732在后端环境700中采取各种中间调试动作。具体地,随着信息储存在设备占位符对象732中,定义这些对象所属于的现场设备或现场资产的类型和性质以及用于到达现场设备的I/O通道特征,可以使用这些设备占位符对象732作为用于现场环境122中的实际现场设备或其它现场资产的代理对后端环境700中的其它对象执行越来越多的调试活动和测试活动。例如,当工厂中使用的各种现场设备由各种设备占位符对象732来定义,并且这些设备占位符对象732指示相关联的现场设备处于I/O未分配状态时,控制系统710并且具体地,控制模块创建或测试应用710A中的一个或多个可以使用例如设备的系统标签来连接到这些设备占位符对象732或与这些设备占位符对象732通信(就好像设备占位符对象732是工厂中的实际现场设备),并且这些应用710A然后可以针对关于与所创建的模块、应用或程序在工厂的操作期间将连接到的现场设备的通信的适当配置和操作,来测试所述模块、应用和程序的操作。因此,在一种情况下,调试应用或单元738或与其相关联的执行引擎或通信接口基于如从储存的设备占位符对象732中的一个(在本文中还被称为设备占位符对象732的实例)所获得的针对多个现场设备中的一个的配置信息,来确定由关于多个现场设备中的一个进行测试的模块、应用和程序等发起的通信是否适当(例如,具有正确的格式、语法、设备或信号标签等,请求实际从设备可获得的信息,是在设备的能力或支持的通信内的消息,被配置为经由适当类型的I/O通道或设备进行发送等)。以类似的方式,维护和仿真创建应用712A和714A可以以相同的方式使用占位符对象732来创建、配置和测试各种模块、对象、应用和程序712B和714B。

因此,可以使用现场设备的系统标签或设备信号标签(其指的是使用现场设备的系统标签的现场设备的特定信号或字段),在控制系统配置应用710A中、在维护系统配置应用712A中以及在仿真系统创建应用714B中创建(如通常那样)需要或涉及将信号发送到工厂中的现场设备中的一个或多个或者从工厂中的现场设备中的一个或多个接收信号的创建的对象、模块、应用和程序710B、712B、714B。然后,用户可以使用控制系统应用710A、维护系统应用712A和仿真系统应用714A或独立仿真或配置应用来配置和执行模块、对象、应用和程序710B、712B、714B,710B、712B、714B在执行期间将使用设备系统标签(和/或基于设备系统标签的设备信号标签)以定位资产对象系统730中针对引用的设备或设备信号的设备占位符对象732。当如在资产对象系统730中所储存的设备占位符对象732被指示为处于I/O未分配状态时,控制系统710、维护系统712、仿真系统714或其它仿真或测试引擎将识别出实际的现场设备没有经由控制系统I/O通信网络连接到后端系统700。然而,在这些情况下,设备占位符对象732仍然可以储存关于通过由调用模块、应用或程序所需或所引用的设备(和/或经由I/O网络到达设备所需的I/O路径或通道)的信息,并且因此设备占位符对象732可以基于在设备占位符对象732内储存的配置数据来提供响应或用于提供响应以模仿设备的操作或实际设备的响应,或者以指示调用是否基于关于被寻址的设备而储存的设备和I/O通道信息来适当地配置。在其它情况下,在从设备占位符对象732中识别出设备处于I/O未分配设备状态时,调试应用738、控制应用710A、维护应用712A、仿真应用714A或在例如在资产对象系统730中的单独的执行引擎可以创建来自设备的仿真响应,以将已知信号提供回给请求对象,以使得能够对请求对象进行测试和仿真,就好像该设备实际上经由控制系统I/O网络连接到后端环境700。

图7B示出了具有经由总线或通信网络760互连在一起的图7A的各种后端功能系统的后端系统700,具体地,包括连接到通信总线760(其可以是任何类型的通信网络,诸如有线或无线以太网连接等)的控制系统710、资产管理系统712、仿真系统、配置数据库716、配置/调试工具应用738以及资产对象系统数据库730。另外,一个或多个控制器762被示为连接到总线760。在图7B中将控制器762示出为通过I/O网络763连接到各种现场设备或现场资产764。然而,应当注意的是,I/O网络763在调试过程期间可能没有连接到控制器762,或者当I/O网络763可以连接到控制器762时,I/O网络763可能未被配置或分配,这意味着控制器762可能不具有对如何经由I/O网络763访问特定的现场设备或现场资产763的理解或指示(因为通过I/O网络763到每一个这种现场设备764的信号路径尚未被建立或分配),或者控制器762可能不能够经由配置的信号路径与现场设备进行通信,因为现场设备764可能还没有物理连接到I/O网络763。因此,尽管图7B中示出了I/O网络763和现场设备764,但是在后端系统700中发生的调试活动中的某些调试活动期间,I/O网络763可能实际上未连接到控制器762和/或各种现场设备764中的现场设备可能未连接到I/O网络763。

另外,如图7B所示,各种系统710、712和714包括配置应用,诸如控制应用或控制模块创建应用710A、维护对象或接口创建应用712A以及仿真系统应用714A,这些配置应用可以在工厂调试期间使用,或用于创建模块、对象、应用和/或用户接口程序710B、712B、714B中的各种模块、对象、应用和/或用户接口程序,其将被下载到并且潜在地在后端网络700内的各种计算设备(诸如图1中示出的那些设备中的任何设备)中运行,或者其可以被提供给控制器762(或未示出的安全系统逻辑解算器)或其它设备中的一个,以便当工厂在线操作时(即在工厂已被调试之后)在工厂操作期间执行。此外,设备占位符对象732也可以用于测试这些其它类型的对象、模块、程序、应用等。此外,对设备占位符对象732并且具体地储存在其中的配置信息的使用可以使调试系统(诸如调试应用738)能够基于对象732的状态来采取各种不同的调试或配置动作。因此,例如,调试应用738可以首先实现对一个或多个模块、应用、程序、用户接口等的测试,并且如果这些测试成功,则可以使这些模块、应用、程序、用户接口等能够被实例化和/或下载到各种后端环境设备中,在后端环境设备中,这些模块、应用、程序、用户接口等将在工厂的在线操作期间执行。可以执行这种实例化以使得模块、应用、程序、用户接口等能够将现场设备的系统标签用于通信目的。此外,可以将模块、应用、程序、用户接口等下载到过程控制器、工作站(具有与之相关联的用户接口)、数据库、服务器或后端环境中的任何其它计算设备以便执行。此外,可以在或从后端环境700中的任何期望的计算设备(诸如其中执行调试应用程序738的工作站、不同的工作站、配置数据库716等)执行这些进一步的调试和配置动作(诸如模块、应用、程序、用户接口等的实例化和下载)。此外,如将理解的是,当用于现场设备的设备占位符对象732指示现场设备处于I/O未分配设备状态时(其意味着现场设备没有经由I/O网络连接到后端环境700,或者I/O网络没有以提供到现场设备的通信路径的方式进行分配,或者诸如执行调试动作的人员之类的用户优选不使用与实际现场设备的通信,即使这种通信可能是经由分配的I/O网络到连接的现场设备),可以执行这些进一步的或另外的调试动作。

如将理解的是,资产对象系统或数据库730储存用于现场设备资产764中的每一个的设备占位符对象732,并且因此当这些占位符对象处于I/O未分配设备状态时向其它系统710、712、714提供关于这些对象的配置信息。在现场设备764实际通过I/O网络763连接或分配到各种控制器762之前,对资产对象系统数据库730并且特别是设备占位符对象的使用使得其它应用(诸如程序710A、712A、714A)能够完成对对象、模块、应用和程序710B、712B、714B的各种调试和测试活动。如上所述,配置应用738可以操作或接收针对要在工厂中使用的所有现场资产或一组现场资产的单独地用户输入或组输入(诸如从电子表格中),包括关于那些现场资产的各种信息,诸如设备类型、设备名称、长标签或源标签、I/O通道信息等,并且然后,配置和调试应用738可以利用其中的各种信息来创建和/或填充各种设备占位符对象732。在该过程期间,如上面所描述的,配置和调试应用738可以使用源标签到系统标签(也称为长标签到短标签)转换器应用200和各种转换规则210、以及与各种现场设备相关联的I/O分配或抽象定义740来创建设备占位符对象732。

一旦设备占位符对象732至少在某种程度上被配置为具有诸如设备系统标签、设备类型和可以确定的或基于设备类型的各种子信息(包括由用户提供的这种子信息)的这种信息,和/或具有关于将用于与现场设备通信的I/O通道信息,则各种其它应用710A、712A、714A可以使用这些设备占位符对象732作为用于与实际现场设备或与现场设备764内的信号进行通信的代理。因此,设备占位符对象732用作实际现场设备764的代理,并且在调试过程或测试过程期间,其它应用(诸如控制应用710A、维护应用712A和仿真应用714A)可以与设备占位符对象732(使用系统、设备或设备信号标签)进行通信,而不是尝试经由I/O网络763与实际设备进行通信。该特征使得在现场设备764连接到控制系统并经由I/O网络763进行分配之前,应用710A、712A、714A能够使用它们在那些应用的在线操作期间将具有的唯一信息(即,设备系统标签)来测试由此创建的模块,以执行测试、配置、仿真和各种其它调试活动。

此外,将注意的是,可以在后端系统700中执行越来越多的配置和调试活动,因为越来越多的信息储存在设备占位符对象732内的现场设备中或周围。因此,在一个实例中,配置应用738可以在设备占位符对象中的各种设备占位符对象中填充信息,然后使得关于那些对象的其它应用能够采取各种不同的和特定的调试或测试活动。随着越来越多的信息储存在设备占位符对象中(例如,I/O通道信息、范围、限制等),可以启用或发起越来越多的这种调试活动。也就是说,将特定类型的配置信息包括在设备占位符对象732中可以使配置应用738能够发起越来越多特定的调试活动。此外,在某些情况下,这种调试活动可以包括实例化一个或多个控制模块或其它应用、程序、用户接口应用等,和/或将实例化的模块、程序、用户接口应用或其它应用下载到过程控制器、工作站、服务器或其它计算设备中,在过程控制器、工作站、服务器或其它计算设备中,这些模块、程序等将在工厂操作期间执行。

关于图7C示出了其中在后端系统700中的调试和测试活动期间,设备占位符对象732用作后端系统700中的实际现场设备764的代理的系统或环境的一个示例。更具体地,图7C示出了仿真或测试系统770,该仿真或测试系统770可以结合控制系统设计应用710A中的一个进行操作,该控制系统设计应用710A用于仿真或测试在工厂调试期间创建的一个或多个控制模块710B的操作,以由此在那些模块或对象被下载到控制器762(或下载到要连接到负责测试控制模块的控制器762的一个或多个现场设备764)之前实现对控制对象或模块710B的测试。具体地,图7C的系统770被示出为执行并测试由互连的功能块772a、772b、772c的集合组成的控制模块710B,该互连的功能块772a、772b、772c利用通信链路进行互连,其中控制模块710B是控制系统710的部分。然而,系统770还可以或替代地执行并测试与后端系统700中的其它系统(诸如资产管理系统712和仿真系统714)相关联的其它模块、应用、程序、对象等。

在任何情况下,系统770包括执行引擎780,执行引擎780转而执行控制模块710B的功能块772a-772c中的每一个,并提供这些功能块772a-772c之间的通信,如通过通信链路所定义的。应当注意的是,执行引擎780可以是实现应用710A、712A、714A中的任何应用的计算机处理设备,或者可以是运行调试应用738的执行引擎、运行出于调试目的而设计的专用仿真或测试应用(其可以与仿真应用714A不同)的处理器等。因此,执行引擎780可以是控制系统710、资产管理系统712、仿真系统714等的部分,或者执行引擎780可以是独立部件,其被设计为或专用于在工厂的现场设备764连接到工厂内的I/O网络或经由工厂内的I/O网络进行分配之前由调试应用738调用时实现测试和调试活动。此外,可以在后端系统700中的任何地方(在任何期望的计算设备中)实现执行引擎780,只要执行引擎780通信地耦合到资产对象系统或数据库730。如果执行引擎780与调试应用738相关联或由调试应用738来实现,则调试应用738可以对例如控制模块710B执行调试测试,以测试这些模块关于配置的设备通信的操作。在这种情况下,调试应用738可以在控制模块710B被下载到控制器762中的一个之前,从控制系统710(或其它系统712、714)或从配置数据库716获得正在测试的控制模块710B(或其它模块,应用等,712A、714A)。

在任何情况下,在执行需要与现场设备或其它现场资产通信的特定功能块772期间,执行引擎780调用或使用通信接口782以使用例如现场设备的系统标签与现场设备进行对接(这在控制、维护和仿真模块中是常见的)。在该点,通信引擎782不知道到达现场环境中的现场设备所需的通信路径(即,I/O网络路径)。然而,通信接口782访问资产对象系统数据库730,并且使用现场设备的系统标签或设备信号(如由正在被测试的模块所提供的)来定位资产对象数据库730针对现场设备的特定设备占位符对象732。

接下来,通信接口782根据设备占位符对象732确定相关联的现场设备(或其它现场资产)处于I/O未分配设备状态还是或处于I/O已分配设备状态。如果设备占位符对象732指示现场设备处于I/O已分配设备状态(意味着到现场设备的I/O路径已经被配置和指派),则通信接口782可以从设备占位符对象中的其它字段获得其它配置。具体地,在这种情况下,通信接口782可以请求并且设备占位符对象732可以返回(如先前为设备分配的并且储存在设备占位符对象732中的)用于设备的I/O通信路径,并且通信接口782使用该路径向现场环境中的实际现场设备发送信号以及从现场环境中的实际现场设备中接收信号,即,经由分配的I/O通信路径与现场设备进行通信。在某些情况下,通信接口782可以经由控制器762中的一个发起这些通信,其中该控制器762中的一个连接到与现场设备附接的I/O网络763。

然而,如果设备占位符对象732指示现场设备处于I/O未分配设备状态,则通信接口782可以再次访问用于设备的其它配置信息和/或用于设备的I/O通道以确定所请求的信息是否储存在设备占位符对象732中。如果是,则通信接口782获取该期望或需要的信息并将该信息提供回给执行引擎780。在某些情况下,设备占位符对象732可以储存与实际现场设备相关联或定义实际现场设备的配置信息,诸如设备类型、源(长)标签、系统(短)标签、设备范围、限制、能力等。在其中所请求的信息实际储存在设备占位符对象732的情况下,可以从设备占位符对象732返回该信息,就好像其来自现场设备本身。此外,在某些情况下,通信接口782可以仅确定来自控制模块710B的所请求的通信是否匹配或符合设备的适当协议或设备配置或与设备占位符对象732相关联的设备的I/O通道。该确定仍然使调试人员能够基于如在设备占位符对象732内所储存的设备类型、设备配置参数、I/O通道配置参数等来确定控制模块710B是否被正确配置为与特定设备进行通信。

然而,在其它实例中,其中请求的设备数据(或设备参数)未储存在设备占位符对象732中(因为其可能涉及由现场设备基于现场设备的实际操作而收集或生成的非配置数据),通信接口782可以访问仿真响应块或模块784,仿真响应块或模块784可以为现场设备提供仿真响应以仿真现场设备的操作。仿真响应块或模块784可以是特定于调试过程的,并且因此可以是调试应用738的部分,或者如果需要可以被提供为资产对象系统730的部分。这种仿真响应可以由用户或测试系统提供,可以储存在为了测试和调试目的而创建的仿真文件中,可以即时地(on the fly)来生成,或者可以以其它方式来提供。将该仿真设备响应(其可以是设备状态、设备测量、设备参数等的仿真值)提供给执行引擎780,就好像该值是从现场设备本身返回的值或信号。该仿真响应由此基于预定义的设备响应来实现进一步测试控制模块710B。一般而言,仿真块784可以被配置为使设备占位符对象732看起来像智能对象或者表现为能够将实际设备响应提供回给请求模块(即,正在测试的模块)。然而,在通常情况下,通信接口782仅仅使用仿真块784来以某种已知的仅用于测试目的的方式模仿由设备占位符对象定义的设备的操作。此外,通信接口782(其也可以是调试应用738或资产对象系统730的部分)可以对照储存在设备占位符对象732中的配置数据,针对如实际设备或连接到该设备的I/O通道所需的适当的格式、上下文、语法、I/O寻址或其它I/O特定参数等来测试来自由执行引擎780测试的模块的通信请求,以确保在实际工厂中,该通信请求将出于其预期目的而工作(如果该请求被发送给并且到达其被发送给的实际设备的话)。当然,如果在这些通信中的任何通信中存在错误,例如,因为设备占位符对象配置数据不匹配或不符合来自控制模块710B的请求,则通信接口782或执行引擎780可以生成错误指示,其指示正在测试的功能块或模块中存在配置或其它类型的错误或问题。可以将这种错误指示经由与测试系统或与调试应用738相关联的用户接口提供给用户。

在另一个实施例中,调试系统770可以进行操作以通过以下操作来测试诸如控制模块之类的模块:将这些控制模块下载到将在工厂的操作期间实际实现这些模块的过程控制器762或其它计算设备中,然后在过程控制器中执行这些模块以测试这些模块。在这种情况下,控制器762的处理器可以作为图7C的执行引擎780进行操作。然而,控制器762的输出(其通常经由I/O网络763中的I/O设备连接到现场设备)可以(物理地或电子地)连接到后端环境700内(诸如在调试应用738内)的通信接口782。通常,控制器762可以在该场景中经历工作台测试,或者如果控制器762安装在工厂中,则可以提供从控制器762的现场侧通信端口到例如图7B的网络760、或者到可以执行调试应用738的手持设备的的单独分路连接(shunt connection)。因此,在这种情况下,面向控制器762的通信端口的现场侧可以回送到后端环境700以连接到通信接口782,通信接口782取得控制器762的输出并且使用该输出来访问如在资产对象系统730中所储存的适当的设备占位符对象732。接口782然后可以如上所描述的使用适当的设备占位符对象732(基于例如通信请求的系统标签)来对通信执行配置、格式、语法、I/O通道属性等测试,和/或可以使仿真对象784参与生成仿真设备响应,该仿真设备响应可以被提供回给控制器762的现场侧通信端口,就好像该响应来自连接到控制器762的实际现场设备。同样地,在由于某个配置错误而存在关于通信的错误或问题的情况下,通信接口782可以向调试应用738通知该问题,并且因此向用户通知调试错误。当然,其它类型的模块、应用、程序、用户接口等可以被实例化并且被下载到其它计算设备,诸如后端环境700中的工作站、数据库、服务器等,并且以相同的方式进行测试。

I/O绑定

例如,当设备占位符对象732已经被完全填充或配置(但仍处于I/O未分配设备状态)并且其它调试活动已经被执行时,应用710A、712A、714A已经使用那些设备占位符对象732来测试其模块、应用、对象、模型等中的各种,设备占位符对象732将包括足够的信息以唯一地定义工厂中的现场设备中的每一个。调试过程的最后阶段中的一个是然后通过将现场设备764和其它现场装备分配或指派到I/O网络763的特定部件来将现场装备环境122中的现场设备764与后端系统700内的控制器762和其它装备进行绑定。在本文中被称为“I/O绑定”的这种绑定可以在现场设备764物理连接到I/O网络之后发生。作为该绑定过程中的部分,调试系统必须将(在后端系统700中创建的)设备占位符对象732与它们所涉及的实际现场设备进行匹配以确定使得后端系统700中的部件能够与实际现场设备进行通信的I/O通信路径,反之亦然。然而,重要的是要记住,在工厂网络的现场装备侧122,可能已经为现场设备和/或与现场设备相关联的信号标签创建了设备占位符对象300,并且这些现场装备设备占位符对象300储存在现场装备环境122内的某处,诸如I/O网络设备中的一个内、I/O卡中的一个内、现场设备本身内等等。此外,理论上,因为已经在两侧使用设备占位符对象从两端(后端环境700和现场装备环境122)进行了调试活动,所以在各个对应的占位符对象对内的信息应当是相同的(即,储存在用于特定现场设备或者现场设备信号的两个占位符对象中的信息应当彼此精确匹配)。换句话说,如在现场设备本身中所储存的和如在现场环境内创建的设备占位符对象中所可能储存的现场设备配置信息应当匹配在后端系统700中的设备占位符对象732内储存的配置信息。然而,这种条件不能保证,因此在用于特定现场设备或现场设备信号的两个设备占位符对象(本文称为后端设备占位符对象和现场装备设备占位符对象)中的信息之间可能存在差异。当现场设备实际上被绑定到I/O网络763并且在I/O网络763内进行分配时,需要解决这种情况,因为在工厂的后端系统700中和工厂的现场环境122中单独执行的各种调试活动可能此时已经使用不同的现场设备和I/O通道配置信息来执行,这可能导致操作错误或问题。

图8示出了I/O绑定的系统和方法,例如,通过I/O网络763将现场设备764绑定到后端系统700内的控制器762和其它设备,以便完成对过程工厂的调试。一般而言,绑定工具790可以储存在后端系统700中的某处,(诸如在图7B的通信网络760上的设备中)和/或现场装备环境中的某处(诸如在现场设备764中的一个中、在I/O网络设备763中的一个中、在连接到现场设备764中的一个或I/O网络763中的I/O网络设备中的一个的手持式或便携式设备791中)。一般而言,绑定工具或应用可以用于发起将工厂或工厂内的特定现场设备绑定到后端系统700(其可以是图2A和2C的后端系统125)中的控制器762和其它设备。

更具体地,如图8所示,后端系统700被示出为方框795,其可以包括图7A-图7C中所描述的后端系统700内储存的计算机、数据库等中的各种。方框795中的设备连接到各种控制器762,控制器762转而通过在这时候未分配的I/O网络763连接到现场设备764中的各个现场设备。具体地,I/O网络763可以包括各种标准I/O设备或卡和终端、基于CHARM的I/O设备或模块和/或关于例如图2A和2C示出和描述的任何其它I/O网络设备。重要地,如图8所示,现在存在针对现场设备764或其它现场资产中的每一个的两个配置信息集合,包括储存在现场设备本身(如所配置的)中和/或在用于每一个现场设备和/或储存在工厂5的现场环境内的现场设备的设备信号的设备占位符对象中的配置信息,以及储存在后端环境700中的设备占位符对象732中的配置信息。具体地,在后端系统700中,资产对象数据库730储存用于现场设备和现场信号标签(与更复杂的现场设备相关联)中的每一个的设备占位符对象732BE,而在现场装备侧122中,设备配置(其可以是或者可以不是设备占位符对象)732FE储存在现场设备本身内或者在用于现场设备和现场设备信号中的每一个的I/O网络763的I/O设备内的某处。如将注意的,在后端系统700中创建的设备占位符对象被称为对象732BE,为现场设备创建并储存在现场装备环境122中的现场设备配置信息或对象被称为对象732FE

在I/O绑定过程期间,绑定应用790执行绑定动作以经由I/O网络763将后端系统700与现场装备764进行绑定。绑定应用790可以实现在连接到后端系统700的设备内,诸如在后端用户接口设备、控制器762、连接到网络760的手持式设备、或调试应用738中,或者绑定应用790可以实现在现场装备环境中的设备中,诸如在现场设备764中的一个、I/O网络763的I/O网络设备中的一个、或在可以连接到现场设备764或I/O网络763中的I/O设备(诸如I/O卡或I/O网络763的其它部分)的手持式或便携式设备791中。这种便携式且通常可移除的连接在图8中用虚线示出。因此,本文所描述的绑定动作可以从现场装备侧122或从后端装备侧700发起,以执行通过I/O网络763将现场装备764绑定到后端系统700。

此外,绑定应用790可以一次执行针对整个工厂网络的绑定,或者可以针对工厂或工厂网络的有限部分(诸如针对单个设备、针对连接到特定I/O卡或网络的设备集合,针对连接到特定控制器762的设备集合或任何其它的设备组合)的绑定。为了执行该动作,绑定应用790可以提供用户接口,该用户接口使用户或调试人员能够将发生的绑定活动限制到现场设备764和/或控制器762和/或I/O网络763中的I/O设备中的各种,以便将发生的实际绑定限制到工厂中的所有现场设备或现场装备的子集。例如,当新的现场设备764被添加到已经绑定的现有I/O网络763、新的控制器762被添加到工厂、新的或不同的I/O设备被添加到工厂的I/O网络763或者替代I/O网络763中的另一个设备时,受限制和受控制的绑定是优选的,以防止在这些情况下必须重新绑定已经在网络内绑定的所有其它未受影响的现场设备。

在任何情况下,在绑定期间,绑定应用790通过其连接到的设备进行通信,向上从现场装备侧到后端系统700,或向下从后端系统700(例如,从控制器762),以自动感测该设备连接到的设备。因此,一般而言,绑定应用790通过检测第一设备来执行通过I/O网络的发现过程,然后自动感测通信地连接到第一设备的其它设备中的每一个以确定通过第一设备到其它设备中的每一个的通信路径,并且重复该过程,直到找到连接到第一设备的所有设备,或直到找到绑定应用790尝试绑定的特定设备。绑定应用790可以针对任何数量的设备重复该发现过程,并且可以在任一方向或两个方向上执行该过程(例如,从控制器侧向下通过I/O网络到现场设备,或者从现场设备侧向上通过I/O网络到控制器)。此外,该发现过程可以经由有线或无线设备连接或两者而发生,并且可以使用设备的自动感测能力(协议,命令等)或工厂内的已连接设备和网络的通信协议。

具体地,如果绑定应用790是从后端系统700实现的,则绑定应用790可以尝试通过图8的控制器762A进行通信并且自动感测连接到该控制器762A的所有I/O卡。这种I/O卡可以是标准I/O卡或哑卡(dumb card),可以是可配置的I/O卡,诸如CHARM I/O卡等等。(这种通信可以经由如图8中示意性所示的有线I/O网络或无线I/O网络来进行)。此外,绑定应用790将储存标识自动感测到的或检测到的I/O卡或其它I/O装备中的每一个的“已连接”设备列表,包括这些设备在其处连接到控制器762A的各种端口、地址等。此后,绑定应用790可以向下(或向上)到I/O网络763中的下一级别的设备,以检测下一级设备中的每一个在其处连接的特定设备、端口、地址、终端块并且可以自动感测这些设备及其已配置连接中的每一个。因此,对于特定控制器762A而言,绑定应用790可以识别连接到控制器762A的每一个I/O卡,然后可以自动感测连接到那些I/O卡中的每一个I/O卡的每一个终端块的设备。在智能-I/O卡或CHARM-I/O卡的情况下,I/O卡可以告诉控制器762A哪些设备连接到卡的哪些卡的终端或者卡下面的设备地址或信号路径。例如,在通常的I/O情况下(诸如图1的系统中所示的I/O情况),绑定应用790可以使得控制器通过I/O卡进行通信并且通过I/O卡的特定端口或终端块提供通信以自动感测连接到该终端块的设备。在该情况下,绑定应用790将检测例如连接到I/O卡的I/O端口的特定终端块的现场设备其它现场资产,并且应用790然后将识别到达现场设备所需的信号路径。绑定应用790然后可以与现场设备进行通信,请求现场设备识别自身并提供关于其身份的信息。在其它情况下,绑定应用790可以到达I/O网络设备,诸如智能-I/O网卡或CHARM-I/O网卡,其能够向应用790提供关于该网卡下面的设备中的每一个设备的信息以及关于它们在I/O卡处连接到的终端或端口的信息。在任何情况下,应用790遍历I/O网络元件和子元件中的每一个的端口、终端和连接中的每一个,直到应用790达到其找到关于通过该I/O连接端口、终端等连接的现场设备的某些信息的程度。

在某些情况下,绑定应用790将检测其何时到达其中具有一个或多个现场侧配置对象(诸如储存在I/O设备中的、为连接到I/O设备的现场设备提供现场设备配置信息的设备占位符对象732FE,或者储存在实际现场设备764中的配置信息732FE)的设备,并且将请求现场设备的系统标签或请求与配置对象或文件相关联的现场设备的其它标识信息。在现场设备侧的配置对象或信息将标识与之相关联的已配置现场资产,例如,通过资产的系统标签。如上所述,现场设备配置信息可以储存在现场设备本身中,或者可以储存在现场装备设备占位符对象中,该现场装备设备占位符对象可以储存在例如实际现场设备中或者可以储存在I/O卡中或在I/O网络内储存的数据库中。在任何情况下,当应用790检测到诸如设备占位符对象之类的这种现场设备配置信息时,应用790前往数据库730以找到对应于该相同系统标签或现场设备的对应后端系统设备占位符对象,然后对这两个配置信息集合进行匹配。在优选的情况下,两个设备占位符对象内的信息将至少在较高程度上精确匹配,并且在这时候,绑定应用790可以将到达该设备所必需的I/O路径连接信息提供给后端系统700中的设备占位符对象732FE(以及现场设备或现场装备设备占位符对象732FE中的现场设备配置信息),从而实现从任一侧与那些设备的未来直接通信。另外,在这种情况下,绑定应用790可以将用于现场设备的设备占位符对象(它们两者,如果两个都存在的话)设置为I/O分配设备状态,这意味着实际I/O网络连接路径信息被储存在设备占位符对象内或现场设备配置本身内,并且可以将该通信路径信息提供给与设备占位符对象通信或使用设备占位符对象经由工厂中的I/O网络执行通信的其它对象、模块、应用和程序。该通信路径信息还可以储存在配置数据库716中并被提供给工厂中的其它对象,诸如系统710、712、714的模块、应用、程序等。类似地,如果绑定应用790是从工厂的现场装备侧发起的,则绑定应用790向上通过I/O网络763内的设备,直到其找到控制器762。绑定应用790然后可以使控制器762与数据库730进行通信以找到与要进行绑定的设备相关联的设备占位符对象732BE,从而使得应用790能够检测并比较用于现场装备侧的每一个现场设备或现场资产的两个设备配置信息集合。

当然,在一些实例中,对应的配置存储器对内的信息(例如,两个设备占位符对象或现场设备和后端设备占位符对象732BE的配置信息)可能不相同,或者可能以某种方式被错误配置。在该情况下,绑定应用790将包括规则或策略数据库,规则或策略数据库使得应用790能够在设备占位符对象732BE中的信息不匹配用于工厂的现场装备侧中的对应的现场设备的配置信息时(即当用于特定设备或设备信号的两个配置信息集合不同时)执行绑定。在某些情况下,规则或策略数据库中的规则或策略可以指示后端设备占位符对象732BE是正确的信息(或将作为主对象),并且在后端侧的主设备占位符对象的信息将被被提供到或储存在现场设备内或在用于现场设备的现场装备设备占位符对象732FE中。在其它情况下,规则或策略可以指示现场装备设备配置信息(诸如现场设备内或者占位符设备占位符对象732FE内的配置信息)正在控制或者是主对象,然后绑定应用790将如在工厂的现场设备侧中所储存的现场装备设备配置信息复制到后端系统设备占位符对象732BE。然而,在某些情况下,规则或策略可以使或要求用户参与冲突,并且要求用户决定哪些信息实际上是正确的,并且因此哪些信息要在设备占位符对象732BE和工厂现场设备侧内的的配置字段或存储器两者内使用。这种规则或策略可以强制将警告或警报经由用户接口从绑定应用790发送给用户,告诉用户两个设备配置对象集合之间的不同信息,从而允许用户提供关于哪一个包括要在两个位置储存的正确信息的决策。当然,可以使用其它规则或策略,并且可以要在任何特定实例中使用的规则或策略可以是从系统到系统可配置的。因此,由绑定应用790执行的冲突解决过程可以是可配置的。此外,在某些情况下,可以基于配置信息集合中的另一个集合内的配置信息来填充配置信息集合中的一个配置信息集合中的空的或未配置的字段。因此,如果特定设备占位符对象732BE没有将配置字段中的某些字段的值包括在其中,则可以将如在现场设备中或用于现场设备的占位符对象732FE中所储存的值复制到后端设备占位符对象732BE的空字段中。当然,可以将配置信息从后端设备占位符对象732BE复制到现场设备的配置存储器或与现场设备相关联的设备占位符对象732FE

因此,协调检测到的在用于现场设备的后端设备占位符对象中储存的信息与在工厂的现场装备侧中储存的现场设备的配置信息之间的差异可以包括:当这些配置存储器中的第二存储器或其各种字段不具有储存在其中的任何配置的信息时,将在这些配置存储器中的第一存储器中储存的配置信息储存到这些存储器中的第二存储器。同样地,协调检测到的差异可以包括:当在这些配置存储器的第一字段中的信息不匹配时,将在用于现场设备的设备占位符对象732BE(其储存在后端环境中)的第一配置字段中储存的配置信息自动储存在用于现场设备的配置存储器(诸如设备占位符对象)(其储存在现场环境中)的第一配置字段中。此外,协调检测到的差异可以包括:当这些配置存储器的第一字段中的信息不匹配时,将在现场环境中储存的用于现场设备的配置存储器中储存的第一字段中的配置信息储存到在后端环境中储存的用于现场设备的设备占位符对象732BE的第一字段中。另外,协调检测到的配置信息之间的差异可以包括向用户生成关于在两个配置信息集合之间存在储存的配置信息中的差异的消息,并且可以包括使用户(经由绑定系统的用户接口)指定关于如何解决两个配置信息集合之间的检测到的差异的方式的信息。因此,例如,绑定系统可以包括存储器,该存储器储存关于如何解决在配置信息中检测到的差异之间的冲突的规则集合,并且绑定系统可以使用户能够配置要使用哪个或哪些规则来解决在用于工厂的特定现场设备、单元、区域等的配置信息中的检测到的差异之间的冲突。在任何情况下,将现场设备绑定到过程控制器可以包括通过将检测到的通信路径储存在现场设备的现场设备配置存储器或现场环境中的现场设备占位符对象732FE和在后端环境中的设备占位符对象732BE中的一个或两者中,来将检测到的与现场设备相关联的通信路径储存在配置存储器中。

当设备占位符对象信息中的冲突被解决并且用于特定现场设备的两个设备占位符对象相同时,I/O网络路径或通信路径信息可以被储存在两个配置存储器中,诸如在用于现场设备的两个设备占位符对象中,并且该路径可以被提供给其它应用、程序等并且由其它应用、程序等使用以执行通信。此外,绑定应用790可以将设备占位符对象中的任一个或两者(如果存在两个的话)置于I/O已分配设备状态。因此,此后,这些设备占位符对象可以用于向其它实体,诸如后端环境700内的模块、应用、程序等通知要在工厂的操作期间使用的那些现场设备中的每一个现场设备的实际I/O分配,以及因此通过I/O网络763的通信路径。此外,该信息可以储存在配置数据库716中。将该分配信息储存在配置数据库716以及需要该信息的设备模块、系统等中的每一个中使得网络设备能够使用如由绑定应用790所检测和配置的实际分配的I/O信号路径从后端到现场设备(反之亦然)彼此实际通信。此外,在这时候,可以将设备占位符对象可以被设置为I/O已分配设备状态,其指示现场设备在工厂中被实际分配,并且因此可以使用所确定的设备分配和信号路径经由正常通信通道在现场侧和后端侧之间进行通信。在某些情况下,在绑定发生后,设备占位符对象可能会被丢弃、擦除或者只是未使用(即,当被设置在I/O已分配设备状态时)。此外,如果需要,绑定应用或系统790可以采取其它绑定动作来将现场设备绑定到过程控制器,诸如将控制模块实例化和/或下载到过程控制器,其中,在控制模块的操作期间,控制模块与现场设备进行通信。绑定应用或系统790还可以或替代地将其它模块、应用、程序、用户接口等(其将与绑定的现场设备通信)实例化和/或下载到工厂中的其它计算机设备,诸如工作站、服务器、手持式或便携式设备等。

自动回路测试

在过程控制回路的部件和部分已经被调试(例如,在不同的地理位置处,诸如借助本文所描述的技术)之后,可以通过执行“回路测试”对(一个或多个)过程控制回路以其整体进行测试。本文所描述的智能调试技术包括执行自动回路测试(有时也称为“自动化回路测试”),与传统的回路测试不同,自动回路测试不需要后端环境125中的操作员来与现场环境122中的操作员协调,以在过程控制回路处注入各种输入和/或生成各种条件和/或状态。相反,借助下面的技术,单个操作员可以执行单个操作(例如,提供关于要发起自动回路测试的指示),以便执行对以其它方式调试的过程控制回路中的某些或全部的回路测试。在其它实施方式中,如下面进一步所讨论的,可以在没有任何操作员提供任何用户输入的情况下发起自动回路测试。如下面进一步所讨论的,在某些实施方式中,自动回路测试可以另外地或替代地在任何适合的或期望的时间执行,包括在过程控制回路已经被调试并且已经实时进行操作(在某些情况下本文也称为“运行时间”或“在线”)之后。例如,在过程控制回路已经以运行时间进行操作之后,可以根据需要间歇性地执行自动回路测试,以便于确保根据需要继续执行过程控制回路。

图9A示出描绘示例性过程控制回路800a-800c的框图,其中的一个或多个可以通过本文所描述的自动回路测试技术来进行测试。当然,任何适当数量的过程控制回路800可以被包括在现场环境122中。如图9A所示,过程控制回路800a-800c包括相应的现场设备802a-802c、相应的I/O设备804a-804c以及相应的控制器806a-806c。如根据本文的教导和公开内容可以理解的是,在各种实施方式中,过程控制回路800中的一个或多个是或包括图2A和2C中所示的过程控制回路100中的一个或多个回路的部件。在各种实施方式中,如下面所讨论的,自动回路测试技术包括:使得现场设备802a-802c在各种测试状态中操作,例如,通过将测试输入信号注入或供应给现场设备802a-802c,并基于由控制器806a-806c生成的结果信号和/或过程控制回路800a-800c的其它结果行为,确定过程控制回路800a-800c中的每一个是否根据需要和/或预期进行操作。

现场设备802a-802c中的每一个可以是任何适合的智能或传统现场设备,并且I/O设备804a-804c中的每一个可以是或包括任何适合的I/O部件,诸如传统I/O卡、CIOC和CHARM、WIOC、安全信息系统逻辑解算器等,如本文在上面进一步所讨论的。如图9A所示,过程控制回路800a及其部件被称为“回路A”或称为“回路A”的部件。“回路B”和“回路C”分别类似地指过程控制回路800b和800c以及其部件。因此,例如,图9A将I/O设备804a示为“回路AI/O设备”。

图9A还示出了设置在后端环境125中并可以用于自动回路测试的一个或多个后端计算设备808。为了便于阅读,一个或多个后端计算设备808有时在本文中以单数形式被称为“后端计算设备808”,然而,应当理解的是,可以实现任何适当数量的后端计算设备808。在各种示例中,如下面进一步所描述的,后端计算设备808被用于自动回路测试,尤其是通过使得现场设备802a-802c在相应的多个测试状态中进行操作,如下面所描述的,并且通过评估过程控制回路800a-800c的相应的结果行为。如图9A所示,后端计算设备808经由控制器806a-806c通信地耦合到过程控制回路800a-800c中的每一个。另外地或替代地,后端计算设备808可以直接通信地耦合到现场设备802a-802c(为了简化图示,在图9A中未如此示出),以使得在如本文所描述的自动回路测试期间,后端计算设备808使现场设备802a-802c在各种测试状态下进行操作。后端计算设备808中的至少一部分可以被包括在(一个或多个)操作员工作站71、AMS系统132、后端调试工具138a或138b中的一个或多个(其如上所述可以是AMS系统132的一部分)、和/或设置在工厂5的后端环境125中并用于执行本文所描述的自动回路测试技术的任何其它适当的计算设备中或由其实现。

如图9A所示,后端环境125还包括耦合到后端计算设备808的一个或多个后端存储器810。在某些布置中,诸如图9A所示的布置,一个或多个后端存储器810通信地耦合到控制器806a-806c中的每一个。一个或多个后端存储器810储存例如指示要在自动回路测试中使用的测试状态的信息(例如,指示要供应给现场设备802a的输入测试信号的信息,如本文所描述的),自动回路测试的结果(如下面进一步所描述的)和/或指示过程控制回路800a的分别对应于每一个输入测试信号的可接受的和/或预期的结果行为的信息,例如,生成的信号及其期望值和/或值范围等。在实施方式中,集中式数据库128包括一个或多个后端存储器的至少一部分。

更详细地转至自动回路测试的执行,图9B描绘了自动测试过程控制回路(诸如过程控制工厂5的过程控制回路800a)的示例性方法820。在某些实施方式中,上面所描述的一个或多个计算设备(例如,后端计算设备808或其它适当的计算设备或处理器)执行方法820或其至少部分。

在方框822处,方法820包括接收关于执行过程控制回路800a的自动测试将被执行的指示。在一个示例中,该指示是经由后端计算设备808的用户接口或另一个用户接口接收的任何适当的用户输入。在另一个示例中,后端计算设备808接收关于过程控制回路800a的自动测试将被执行的指示而不包括任何用户输入。例如,在现场设备802a被指派为经由I/O设备804a和/或I/O设备804a的特定信道进行通信时,关于过程控制回路800a的自动测试将被执行的指示由另一个设备或应用(例如,另一个处理器或其它适当的设备,诸如本文描述的计算设备中的一个)自动生成。在实施方式中,后端计算设备808然后从其它设备或应用接收关于过程控制回路800a的自动测试将被执行的指示。

方法820还包括响应于接收到关于自动回路测试将被执行的指示,自动地使得(不包括任何用户输入)现场设备802a在多个测试状态中的每一个中进行操作。更具体地,在方框825处,方法820包括获得对用于现场设备802a的测试状态(例如,用于现场设备802a的多个测试状态中的第一测试状态)的指示。在实施方式中,由后端计算设备808从一个或多个后端存储器810中获得对测试状态的指示。

在方框828处,方法820包括(例如,通过后端计算设备808)将输入测试信号自动注入到或供应给现场设备802a以使得现场设备802a在所指示的测试状态下操作。例如,在某些实施方式中,诸如当现场设备802a是现场设备时,后端计算设备808根据通信协议向现场设备802a发送一个或多个命令,以便供应输入测试信号,或者指示要供应的输入测试信号,并且由此自动地使得现场设备802a在所指示的测试状态下进行操作。类似地,当现场设备802a根据另一个工业协议进行操作时,后端计算设备808根据现场设备802a的工业通信协议向现场设备802a发送一个或多个命令。

继续关于方框828,在某些实施方式中,输入测试信号是具有或指示表示为百分比信号强度的信号强度(在本文中也被称为“信号水平”)的信号。仅举一个示例,输入测试信号具有表示为现场设备802a处的满信号强度的0%、25%、50%、75%或100%的信号强度(例如,跨越现场设备802a与相应的I/O设备804a之间的连接)。因此,在实施方式中,多个输入测试信号,其中的每一个由于方法820的执行而被供应给现场设备802a(如本文进一步所描述的),包括具有表示为现场设备802a处的满信号强度的0%、25%、50%、75%和100%的信号强度的信号。例如,现场设备802a处的满信号强度是在现场设备802a的正常操作期间现场设备802a处的最大信号强度(例如,传感器处的最大信号强度),在与超过正常操作的最大信号强度的现场设备802a处的信号相对应的预定条件期间现场设备802a处的最大信号强度、或任何适当的信号强度。

进一步参考方框828,在某些实施方式中,输入测试信号是具有或指示以工程单位来表示的信号强度的信号。仅举一个示例,输入测试信号是具有以摄氏度、磅/平方英寸(PSI)或任何其它适合的工程单位为单位来表示的信号强度的信号。对于具有以工程单位来表示的信号强度的输入测试信号而言,在实施方式中,后端计算设备808到过程控制回路800a(例如,到现场设备802a,如上面所描述的)的通信连接,允许后端计算设备808适当地将输入测试信号的一个或多个指示转换或格式化为工程单位的一个或多个指示。因此,在一示例中,输入测试信号具有作为最大信号强度的特定百分比的信号强度,其中该特定百分比转而对应于所指示的工程单位。在各种实施方式中,其中以其表示输入测试信号的信号强度的工程单位的(一个或多个)指示被传送到过程控制回路800a,以便使得现场设备802a在方框825处指示的测试状态下进行操作。

在方框830处,方法820包括针对在方框825处指示的测试状态,确定过程控制回路800a的结果行为是否被包括在与测试状态相对应的现场设备802a的预期行为的集合中。在实施方式中,关于方框830描述的确定是基于储存在一个或多个后端存储器810中的信息的。在各种示例中,多个测试状态中的每一个(在每一个状态下,使得现场设备802a在方法820的执行期间操作(如本文进一步所描述的))对应于过程控制回路800a的相应的预期行为的集合。因此,于是在某些实施方式中,多个输入测试信号中的每一个对应于过程控制回路800a的相应的预期行为集合中的相应一个。一般而言,在某些情况下,相应的预期行为集合包括单个预期行为,并且在某些情况下包括多于一个的预期行为,其可以预期交替或组合地发生。

例如,在实施方式中,过程控制回路800a的结果行为可以包括由控制器806a响应于供应给现场设备802a的输入测试信号而生成的相应信号。例如,向现场设备802a供应具有表示为现场设备802a处的最大操作信号强度的25%的信号强度的输入测试信号导致控制器806a生成作为由控制器806a提供的最大输出信号强度的25%的对应信号。在这种实例中,由控制器806a生成的信号被确定为包括在相应的预期行为集合中,该相应的预期行为集合与在方框825处指示的测试状态的相对应,其中在方框825处指示的测试状态对应于最大信号强度的25%。

另外地或替代地,过程控制回路800a的结果行为是或者包括由现场设备802a生成的相应输出信号(例如,由于输入测试信号被供应给现场设备802a,从而使得控制器806a生成通过I/O设备804a的方式提供给现场设备802a的相应输入信号)。

进一步参考方框830,在各种实施方式中,当由控制器806a生成的相应信号(如上面所描述的)具有预期值(例如,预期的信号强度百分比)、在预期的值范围(例如,在由控制器806a处、在后端计算设备808或其它适当的计算设备处的操作员预定义的范围)内、和/或满足某些其它预期标准等时,过程控制回路800a的相应的结果行为被确定为包括在对应于多个测试状态中的一个的相应的预期行为集合中。另外地或替代地,在另一个实施方式中,当由于相应的输入测试信号而由现场设备802a生成的相应输出信号(如上面所描述的)具有期望值、在预期的值范围内、满足某些其它预期标准等时,过程控制回路800a的相应的结果行为被确定为包括在对应于多个测试状态中的一个的相应的预期行为集合中。

还要注意的是,现场设备802a的单个测试状态(例如,在方框825处指示的测试状态)可能导致回路800a的单个或多个结果行为。类似地,与现场设备802a的单个测试状态相对应的预期的行为集合可以包括回路800a的单个或多个预期行为。

在方框832处,方法820包括储存过程控制回路800a的自动回路测试的结果和所指示的测试状态(即,在方框825处指示的测试状态)。在一示例中,如在方框832处所生成的自动回路测试的结果被储存在一个或多个后端存储器810中。在各种示例中,如在方框832处所生成的自动回路测试的结果是或包括对过程控制回路800a的结果行为是否包括在与在方框825处指示的测试状态相对应的预期行为集合中的指示。在一示例中,当过程控制回路800a的结果行为包括在预期行为集合中时,过程控制回路800a的自动回路测试的结果指示对于在方框825处指示的测试状态而言“成功”(例如,过程控制回路800a的正常操作)。相应地,在一示例中,当过程控制回路800a的结果行为未被包括在预期行为集合中时,自动回路测试的结果指示对于在方框825指示的测试状态而言“超出范围”或“故障”(例如,过程控制回路800a没有正常地操作)。如果需要,实际输出数据(例如,实际输出值)还可以结合指示来储存。

在框835处,方法820包括确定是否要使得过程控制回路800a在另一测试状态下操作(例如,具有储存在一个或多个后端存储器810中的指示的多个测试状态中的任何测试状态是否尚未如关于方框825-832所描述的来实现)。如果要使得过程控制回路800a在另一测试状态下操作,则重复框825-835。

如果不要使得过程控制回路800a在另一测试状态下操作(例如,确定已经使得现场设备802a在多个测试状态中的所有期望的测试状态下进行操作),则在方框838处,方法820包括生成过程控制回路800a的自动回路测试结果(例如,针对多个期望的测试状态中的所有测试状态)。例如,自动回路测试结果指示(i)现场设备802a的第一测试状态集合(例如,多个测试状态中的一个或多个),针对该第一测试状态集合,过程控制回路800a的相应结果行为包括在与第一测试状态集合的测试状态相对应的一个或多个相应的期望行为集合中,和/或(ii)现场设备802a的第二测试状态集合(例如,多个测试状态中的一个或多个),针对该第二测试状态集合,过程控制回路800a的相应结果行为不包括在与第二测试状态集合的测试状态相对应的一个或多个相应的期望行为集合中。根据本文的教导和公开内容将理解的是,上面讨论的第二测试状态集合包括对于其而言自动回路测试指示“超出范围”或“失败”的测试状态,例如,对于其而言相应的结果行为(例如,控制器输出、现场设备输出等,如上面所讨论的)不是如所预期的测试状态。如果需要,自动回路测试结果可以另外地包括每一个测试状态的输出数据(例如,实际输出值)。

继续参考方框838,在一示例中,生成自动回路测试结果,使得构成自动回路测试结果的信息(例如,如上面所讨论的,对(多个)第一和/或第二测试状态集合的指示)可以经由任何适合的计算设备的用户接口来呈现。例如,构成自动回路测试结果的信息经由后端计算设备808中的一个或多个的显示屏幕被呈现给操作员或其它用户。另外地或替代地,自动回路测试结果可以被发送到与工厂5相关联的任何期望的计算设备(诸如操作员工作站71或后端调试工具138),和/或可以储存在任何期望的数据储存器(诸如一个或多个储存器810或集中式数据库128)中。

根据本文的教导和公开内容将理解的是,在各种实施方式中,自动地使得现场设备802a在不包括任何用户输入的多个测试状态中的每一个状态下进行操作包括:在现场设备802a在多个测试状态中的第一测试状态下进行操作完成时,通过自动重复不包括任何用户输入的方框825-835而自动地使得现场设备在后续测试状态之间改变。例如,后端计算设备808重复方框825-835,直到在方框835处确定其中没有剩下另外的测试状态来操作现场设备802a。在实施方式中,现场设备802a响应于后端计算设备808处的用户输入而在第一测试状态下进行操作,其中该用户输入向后端计算设备808提供关于过程控制回路800a的自动测试将被执行的指示。然而,如根据上面的讨论将理解的是,现场设备802a随后并且自动地转换到在其它测试状态中的每一个中进行操作,而无需用户指示现场设备802a来这样做。

根据前述讨论将进一步理解的是,可以执行自动回路测试,并且针对过程控制回路800a生成自动回路测试结果。应当理解的是,对过程控制回路800a的自动回路测试的描述以及对涉及现场设备802a、I/O设备804a和控制器806a的动作的描述也或替代地适用于过程工厂5的其它过程控制回路。例如,继续参考图9A,在各种示例中,自动回路测试还包括对过程控制回路800b和800c中的每一个的相应测试。在实施方式中,过程控制回路800b和800c的测试与过程控制回路800a的测试被同时地执行。当然,在各种实施方式中,与其它过程控制的自动测试同时地、顺序地或不同时间地自动测试任何适合数量的过程控制回路(包括,例如,图9A中未示出的另外的过程控制回路),并且在某些示例中,每一个过程控制回路都被自动地测试,不包括任何使得相应的现场设备在相应的多个测试状态下操作的用户输入或者根本不包括任何用户输入(如本文其它地方所描述的)。

更具体地参考过程控制回路800a-800c的同时自动测试,图9C描绘了自动测试多个过程控制回路(诸如过程控制回路800a-800c)的示例性方法850。在某些实施方式中,上面所描述的一个或多个计算设备(例如,后端计算设备808或其它适合的计算设备或处理器)执行方法850或其至少部分。

在方框852处,方法850包括接收关于另外的过程控制回路(例如,过程控制回路800b)的自动测试将被执行的指示。在一个示例中,该指示是经由后端计算设备808的用户接口或另一个用户接口接收的任何适合的用户输入。在另一个示例中,后端计算设备808接收用户输入以一般而言指示将执行自动回路测试(诸如上面关于图9B所描述的),但是接收到关于过程控制回路800b的自动测试将被执行的指示而不包括任何何用户输入。例如,可以将关于过程控制回路800b的自动测试将被执行的指示连同要对其执行自动测试的任何其它过程控制回路(例如,过程控制回路800c)的指示储存在一个或多个后端存储器810中。响应于接收到或者同时接收到如关于方框822所描述的关于自动回路测试将被执行的指示,可以接收所储存的关于过程控制回路800b的自动测试将被执行的指示。

在方框855处,方法850包括自动地使得(例如,通过后端计算设备808)另外的过程控制回路的相应现场设备(例如,现场设备802b)在相应的多个测试状态下进行操作,诸如以关于图9B所描述的方式。在某些实施方式中,与用于现场设备802a的多个测试状态相比,该相应的多个测试状态是不同的多个测试状态。在这种实施方式中,过程控制回路800b的相应的预期行为集合因此也与过程控制回路800a的相应的预期行为集合不同,并且因此,当过程控制回路800a和800b测试成功时,其相应的结果行为在过程控制回路800a和800b之间也是不同的。

在方框858处,方法850包括:针对另外的过程控制回路(例如,过程控制回路800b),以与如参考图9B所描述的关于过程控制回路800a所描述的方式相同或相似的方式来确定相应的结果行为是否是预期行为(例如,包括在相应的预期行为集合中)。

在方框860处,方法850包括:以与参照图9B所描述的储存关于过程控制回路800a的测试状态中的每一个的自动回路测试结果的方式相同或相似的方式来储存另外的过程控制回路(例如,过程控制回路800b)的自动回路测试的结果。例如,将另外的过程控制回路800b的自动回路测试的结果储存在一个或多个后端存储器810中。

在方框862处,方法850包括:确定是否要对另一个过程控制回路(例如,过程控制回路800c)执行另一个自动测试。在一个示例中,确定是否要执行另一自动测试是基于储存在一个或多个后端存储器810中的一个或多个指示的。如果要执行另一个自动测试,则可以重复方框855-862。

如果确定不要执行另一个自动测试(例如,已经测试了期望被自动测试的过程控制工厂5的所有过程控制回路),则在方框865处,该方法可以包括:生成自动回路测试结果,除了与过程控制回路800a相对应的信息之外,该自动回路测试结果还包括与过程控制回路800b和800c相对应的信息(例如,过程控制回路800b和800c的结果)。在实施方式中,构成过程控制回路800a-800c的自动回路测试结果的信息经由诸如后端计算设备808的显示屏幕之类的任何适合的用户接口来呈现。另外地或替代地,回路800a-800c的自动回路测试结果可以被发送到与工厂5相关联的任何期望的计算设备(诸如操作员工作站71或后端调试工具138),和/或可以储存在任何期望的数据储存器(诸如一个或多个存储器810或集中式数据库128)中。

继续参考方框865,在实施方式中,针对过程控制回路800a-800c中的每一个,自动回路测试结果指示(i)相应的多个测试状态的第一集合(例如,相应的多个测试状态中的一个或多个测试状态),针对该相应的多个测试状态的第一集合的相应结果行为包括在与相应的多个测试状态的第一集合相对应的一个或多个相应的预期行为集合中,和/或(ii)相应的多个测试状态的第二集合,针对该相应的多个测试状态的第二集合的相应结果行为不包括在与相应的多个测试状态的第二集合相对应的一个或多个相应的预期行为集合中。

应当注意的是,尽管图9C示出了顺序地确定是否要执行过程控制回路800b和800c的自动回路测试,但是根据本文的教导和公开内容将理解的是,在各种实施方式中,关于图9C所描述的确定是否要执行这些自动回路测试和后续对动作的执行是在过程控制回路800a-800c之间同时执行的。也就是说,在某些实施方式中,针对多个过程控制回路(例如,过程控制回路800a-800c)同时执行自动回路测试和自动回路测试结果的生成(以及在某些情况下,提供自动回路测试结果,如上面所描述的)。

此外,尽管上面关于设置在过程工厂5的后端环境125中的后端计算设备808和一个或多个后端存储器810来描述自动化回路测试,但是在某些场景中,另外地或替代地使用设置在现场环境122中的计算设备870和存储器872来执行自动化回路测试。具体地,如图9A进一步所示,现场环境122包括一个或多个现场存储器872,其储存指示要在自动回路测试中使用的测试状态的信息(例如,指示要供应给现场设备802a的输入测试信号的信息,如本文所描述的)、自动回路测试结果和/或指示过程控制回路800a的分别对应于每一个输入测试信号(例如,生成的信号及其预期值和/或值范围等)的可接受的和/或预期的结果行为的信息。在各种实施方式中,代替储存在一个或多个后端存储器810中或者除了储存在一个或多个后端存储器810中,这种信息储存在一个或多个现场存储器872中。在实施方式中,数据文件或储存器342包括一个或多个场存储器872的至少一部分。

代替用于自动回路测试的后端计算设备808或者除了用于自动回路测试的后端计算设备808,图9A还描绘了可以用于自动回路测试的、设置在现场环境122中的一个或多个现场计算设备870(例如,一个或多个现场计算设备870执行如由本文其它地方描述为由后端计算设备808执行的动作中的至少一些动作)。一个或多个现场计算设备870中的至少一部分可以被包括在AMS系统132、现场调试工具135a或135b中的一个或多个(其如上所述可以是AMS系统132的一部分)和/或任何设置在现场环境122中的其它适当的计算设备中或由其实现。如图9A所示,一个或多个现场计算设备870经由现场设备802a-802c通信地耦合到过程控制回路800a-800c中的每一个,以使得一个或多个现场计算设备870能够使得现场设备802a-802c在自动回路测试期间进行操作,如本文所描述的。还如图9A所示,一个或多个现场计算设备870通信地耦合到一个或多个现场存储器872。在某些配置中,除了或代替经由现场设备802a通信地耦合到过程控制回路800a-800c-802c中的每一个,一个或多个现场计算设备870经由控制器806a-806c直接通信地连接到过程控制回路800a-800c中的每一个(为了简化图示在图9A中未如此示出)。

在现场环境122中的某些实施方式中,代替或除了用于自动回路测试的一个或多个现场计算设备870和/或一个或多个现场存储器872,现场设备802a-802c中的一个或多个包括用于自动回路测试的一个或多个处理器和/或一个或多个存储器。例如,图9A将现场设备802a描绘为包括处理器874和存储器876,处理器874和存储器876被配置为支持自动回路测试(例如,执行本文其它地方描述为由后端计算设备808执行的动作中的至少一些动作)。在各种示例中,现场设备802a是任何适合类型的智能现场设备,诸如现场设备。另外地或替代地,在各种示例中,(i)一个或多个现场存储器872或(ii)存储器876中的一个或两者储存指示将在自动回路测试中使用的测试状态的信息、自动回路测试结果、和/或指示过程控制回路800a的分别对应于每一个输入测试信号的可接受的和/或预期的结果行为的信息,例如,生成的信号及其预期值和/或值范围等。在各种实施方式中,除了储存在一个或多个后端存储器810中或者代替储存在一个或多个后端存储器810中,这种信息储存在一个或多个现场存储器872和/或存储器876中。

因此,如上面所讨论的,自动回路测试的执行有利地不需要后端环境125中的操作员与现场环境122中的操作员进行协调以在过程控制回路处注入(例如,供应)各种输入和/或生成各种条件和/或状态。相反,在某些实施方式中,单个操作员执行单个操作(例如,提供关于将发起(一个或多个)自动回路测试的指示)以便执行对调试的过程控制回路中的某些或全部的自动回路测试。在其它实施方式中,如上面所讨论的,在没有任何操作员提供任何用户输入的情况下发起(一个或多个)自动回路测试。

其它考虑

如上面所讨论的,本文所描述的智能调试技术显著地减少了调试过程工厂5的时间、人员和成本。图10示出了图表900,其将通过使用传统的调试技术902和通过使用本文所描述的智能调试技术905中的至少一些来本地调试示例性现场设备(例如,现场设备102)和/或其中包括现场设备的示例性过程控制回路(例如,过程控制回路100)所需的时间和资源进行了比较。图表900中所示的数据是在本文描述的智能调试技术的开发和实验性测试期间收集的。

如图10所示,通常由用户执行以本地调试现场设备的任务908a-908g包括走向物理现场设备(参考908a);确认物理现场设备是期望的设备并验证其布线连接(参考908b);验证现场设备的身份(例如,经由储存在现场设备的存储器中的设备标签),并使设备标签对于过程工厂5的其它系统(诸如过程控制系统、资产管理系统、安全系统等(参考908c))可用;配置设备参数908d;下载与设备相对应的控制模块(参考908e);执行设备的调试检查或测试(参考908f);以及生成指示现场设备的完工回路信息(参考908g)。当然,在设备调试期间,除了图10所示的动作908a-908g之外,可以执行更多的、更少的、替换的和/或替代的调试动作。

还如图10中所示的,针对每一个调试动作908a-908g,在图表900中显示了执行现场设备的传统调试902所需的工时的时间,其中用于传统调试现场设备的总工时数是两小时20分钟。针对每一个调试动作908a-908g,在图表900中显示了执行现场设备的智能调试905所需的工时的时间,其中智能调试的总工时数是仅为10分钟——配置单个现场设备所需的工时减少了93%。由于过程工厂可能包括数百、数千乃至数万个现场设备,其中的每一个都必须在过程工厂开始操作之前进行调试,因此在工时中的资源节约(因此在经济上)是非常大的。此外,由于智能调试技术中的至少一些是自动执行的,因此它们不易受用户错误影响,因此比传统的调试技术更准确。

注意,尽管本文所描述的智能调试技术是关于过程控制系统5来进行描述的,但本文所描述的智能调试技术中的任何一种或多种同样适用于过程控制工厂的过程控制安全信息系统,诸如由艾默生过程管理公司提供的DeltaV SISTM产品。例如,独立的过程控制安全系统或集成的控制和安全系统(“ICSS”)可以使用本文所描述的智能调试技术中的任何一种或多种进行调试。

另外,当用软件来实现时,本文所描述的应用、服务和引擎中的一个或多个可以储存在任何有形、非暂时性计算机可读存储器中,诸如储存在磁盘、激光盘、固态存储器设备、分子存储器储存设备或其它储存介质上、储存在计算机或处理器的RAM或ROM中等。虽然本文所公开的示例性系统被公开为包括在硬件上执行的软件和/或固件等,但应当注意的是,这种系统仅仅是说明性的,并不应当被认为是限制性的。例如,可以设想的是,这些硬件、软件和固件部件中的任何或全部可以体现为仅硬件、仅软件或硬件和软件的任意组合。因此,尽管本文所描述的示例性系统被描述为用在一个或多个计算机设备的处理器上执行的软件来实现,但本领域普通技术人员将容易理解的是,所提供的示例不是实现这种系统的唯一方式。

因此,尽管已经参考特定示例来描述了本发明,其中这些示例旨在是说明性的而不是限制本发明,但是对于本领域普通技术人员来说将显而易见的是,可以对所公开的实施例进行改变、添加或删除,而不脱离本发明的精神和范围。此外,尽管前述文本阐述了众多不同实施例的详细描述,但应当理解的是,本专利的范围是由本专利末尾处提出的权利要求的文字及其等同物进行限定的。详细描述应仅被解释为示例性的,并没有描述每个可能的实施例,因为描述每个可能的实施例即使不是不可能也是不切实际的。可以使用当前技术或在本专利申请日之后开发的技术来实现众多替代的实施例,其仍然落入权利要求及其所有等同物的范围内。

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