用于评估与过程控制系统相关联的配置文件的系统和方法与流程

文档序号:17158454发布日期:2019-03-20 00:18阅读:172来源:国知局
用于评估与过程控制系统相关联的配置文件的系统和方法与流程

本公开内容总体上涉及在过程工厂使用模块化控制系统,例如撬装系统,具体而言,涉及有效且高效地评估和管理与模块化控制系统相关联的配置文件。



背景技术:

目前在各种工业中使用的模块化控制系统是完整的控制系统,其可以提供特定的功能,例如煮沸水、过滤液体或控制热交换。模块化控制系统通常被实施为撬装系统,或简称为“撬装块”,这么叫是因为系统被封闭在框架内并且易于运输。货盘可以作为整体单元输送到工厂,而不需要拆卸和重新组装,并且通常由制造商预先配置。货盘通常包括例如可编程逻辑控制器(plc),诸如阀或锅炉的专用设备,以及诸如压力或温度传感器的传感器。

另一方面,分布式控制系统(dcs)也用于各种过程工业,包括化学、石化、精炼、制药、食品和饮料、电力、水泥、水和废水、石油和天然气、纸浆和造纸及钢铁,用于控制在单个站点或远程位置运行的批次、补料分批和连续过程。过程工厂通常包括通过模拟、数字或组合模拟/数字总线或通过无线通信链路或网络通信地耦合到一个或多个现场设备的一个或多个过程控制器。各种设备共同执行监视、控制和数据收集功能,以控制过程、安全关闭系统、火灾和气体检测系统、机器健康监测系统、维护系统、决策支持和其他系统。

现场设备可以是例如阀、阀定位器、开关和变送器(例如,温度、压力、液位和流率传感器),位于过程环境内并且通常执行物理或过程控制功能,例如打开或关闭阀、测量过程参数等,以控制在过程工厂或系统内执行的一个或多个过程。智能现场设备,例如符合众所周知的现场总线协议的现场设备,也可以执行控制计算、报警功能和通常在控制器内实施的其他控制功能。过程控制器通常也位于工厂环境内,接收指示由现场设备进行的过程测量和/或与现场设备有关的其他信息的信号,并执行运行例如不同控制模块的控制器应用程序,控制模块制定过程控制决策,根据接收到的信息生成控制信号,并与现场设备(例如现场总线现场设备)中执行的控制模块或块协调。控制器中的控制模块通过通信线路或链路将控制信号发送到现场设备,从而控制过程工厂或系统的至少一部分的操作。

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

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

在过程控制和工业自动化系统中运行的设备可以以有线或无线方式互连,并使用诸如foundationtm现场总线、或profibus的工业通信协议进行通信。此外,已经开发出诸如modbus的协议来互连plc。此外,除了标准工业自动化协议之外,还存在用于互连过程控制系统中的节点的专有协议。deltav是一种这样的协议的示例。通常,这些协议指定用于传送测量、警报和状态报告、影响过程变量或自动化参数的命令、用于启用或停用设备的命令等的格式。典型的工业通信协议还通过预定义的命令或由制造商根据协议的语法为特定设备定义的命令来支持设备配置。

模块化控制系统可以被编程为根据配置文件操作,该配置文件可以存储在模块化控制系统的本地(例如,在控制器的存储器中)。多个计算设备或主机可以被配置为与模块化控制系统接口连接,其中,每种计算设备在某些情况下可以例如用存储在计算设备上的配置文件的版本更新配置文件(即,配置模块化控制系统)。例如,与过程工厂相关联的技术人员和与制造模块化控制系统的oem相关联的技术人员可以周期性地配置模块化控制系统。

然而,当多个计算设备配置模块化控制系统时会出现问题,因为配置文件的版本可能没有反映模块化控制系统使用的最新版本。例如,试图配置模块化控制系统的计算设备可能不具有最近用于配置模块化控制系统的配置文件的版本。因此,某些配置更新和修复可能没有包括在某些配置实例中,或者可能无意中从某些配置实例中移除。



技术实现要素:

本公开内容的模块化控制器在模块化控制系统(例如撬装系统)中操作,以独立于其他控制器(类似于plc)执行模块化控制系统的控制逻辑。模块化控制器可以本地存储反映模块化控制系统的配置的配置文件的版本。计算设备或主机被配置为与模块化控制器接口连接以便于更新配置文件,例如利用计算设备存储或访问的配置文件的版本。计算设备配置有用户接口以呈现与配置文件的版本相关联的信息,并且使用户能够促进某些功能以确保使用适当的版本来配置模块化控制器。

在一实施例中,提供了一种评估与过程工厂中的模块化控制系统相关联的配置文件的版本的计算设备中的计算机实施的方法。计算设备可以存储配置文件的计算设备版本,并且该方法可以包括:由计算设备和与模块化控制系统相关联的控制器接口连接,控制器具有并入其中的存储器,存储器存储配置文件的控制器版本;识别配置文件的最后备份实例,该最后备份实例表示计算设备在控制器上对配置文件的最新备份;计算设备的处理器将配置文件的计算设备版本与配置文件的控制器版本进行比较;并且通过计算设备的用户接口呈现(i)配置文件的计算设备版本、配置文件的最后备份实例和配置文件的控制器版本中的每一个的指示,以及(ii)比较的结果。

在另一实施例中,提供了一种用于评估与过程工厂中的模块化控制系统相关联的配置文件的版本的计算设备。计算设备可以包括通信端口、用户接口、设备存储器,存储(i)计算机可执行指令集,(ii)配置文件的计算设备版本,以及(iii)配置文件的最后备份实例的记录,配置文件的最后备份实例表示计算设备对在与模块化控制系统相关联的控制器上的配置文件的最新备份,以及与通信端口、用户接口和存储器接口连接的处理器。处理器可以被配置为执行计算机可执行指令集以使处理器:经由通信端口和与模块化控制系统相关联的控制器接口连接,控制器具有并入其中的存储器,存储器存储配置文件的控制器版本;将配置文件的计算设备版本与配置文件的控制器版本进行比较;并且使得用户接口呈现(i)配置文件的计算设备版本、配置文件的最后备份实例和配置文件的控制器版本中的每一个的指示,以及(ii)比较的结果。

在另一实施例中,提供了一种管理与过程工厂中的模块化控制系统相关联的配置文件的版本的计算设备中的计算机实施的方法。计算设备可以存储配置文件的计算设备版本,并且该方法可以包括:由计算设备和与模块化控制系统相关联的控制器接口连接,控制器具有并入其中的存储器,存储器存储配置文件的控制器版本;由计算设备的处理器将配置文件的计算设备版本与配置文件的控制器版本进行比较;通过计算设备的用户接口呈现(i)配置文件的计算设备版本、配置文件的控制器版本和表示计算设备对控制器上的配置文件的最新备份的配置文件的最后备份实例中的每一个的指示,以及(ii)比较的结果;通过用户接口接收与比较结果相关联的用户选择;并且基于用户选择,促进以下中的至少一个的更新:配置文件的计算设备版本和配置文件的控制器版本。

在又一实施例中,提供了一种过程工厂中的模块化控制系统。模块化控制系统可以包括过程控制设备集合,其通信地连接以操作来控制过程集合,控制器,存储配置文件的控制器版本,并且被配置为根据配置文件的控制器版本操作过程控制设备集合,以及计算设备,被配置为与控制器接口连接,以及存储(i)配置文件的计算设备版本,以及(ii)配置文件的最后备份实例的记录,配置文件的最后备份实例表示计算设备对控制器上的配置文件的最新备份。计算设备还可以被配置为:将配置文件的计算设备版本与配置文件的控制器版本进行比较,并且经由用户接口呈现(i)配置文件的计算设备版本、配置文件的最后备份实例和配置文件的控制器版本中的每一个的指示,以及(ii)比较的结果。

这些技术的又一个实施例是计算设备包括一个或多个处理器以及非暂时性计算机可读介质存储实施如本文所述的功能的指令。

附图说明

图1是根据某些实施例的可以集成示例性模块化控制系统的分布式过程控制系统的框图;

图2是根据某些实施例的示例性控制器模块的示意图;

图3是根据某些实施例的示例性计算设备和示例性控制器模块的示意图;

图4是根据某些实施例的与评估和管理配置文件的版本相关联的信号图;

图5是根据某些实施例的评估与过程工厂中的模块化控制系统相关联的配置文件的版本的示例性方法的流程图;

图6和7是示出根据某些实施例的与控制器配置相关联的某些信息的示例性界面。

具体实施方式

通常,本公开内容的模块化控制系统包括可由作为独立plc、撬装系统的控制器或作为模块化工厂结构中的模块操作。在下面称为“模块化控制器”,或者在某些情况下仅称为“控制器”的控制器可以在诸如deltav的平台上本地构建,该平台支持分布式控制,以使得模块化控制器的配置、安全机制和通信与集成了模块化控制器的dcs完全兼容,其中,dcs可以构建在同一平台上,也可以构建在不同的可能专有的平台上。根据本文所讨论的实施例,模块化控制系统可以附加地或替代地与dcs分离且独立地操作。

根据本文讨论的系统和方法,模块化控制系统的控制器可以通信地连接到过程控制设备集合,该过程控制设备集合被配置为根据存储在控制器上或可由控制器访问的配置文件来操作过程集合。有时,用户(例如,管理员、技术人员、工程师等)可能希望更新配置文件,例如修复错误或故障、更新设置、实施新的或更新的进程,或出于其他原因,包括确定配置文件的哪个版本存储在控制器上。为了便于更新或评估,用户可以使用可以通信地连接到控制器的计算设备(例如,笔记本电脑或其他设备),其中,计算设备存储其自己的配置文件版本以及指示计算设备何时最后更新存储在控制器上的配置文件的数据。

计算设备可以与控制器接口连接以获得与存储在控制器上的配置文件的版本相关联的数据,并且可以比较多个版本(或与多个版本相关联的数据)以确定如何(如果有的话)更新存储在控制器上的配置文件和/或存储在计算设备上的配置文件。在特定场景中,配置文件的控制器版本可能比与计算设备相关联的版本更新。在另一种场景中,计算设备上的版本可能比存储在控制器上的版本更新。本文讨论了其他场景。

计算设备可以经由用户接口呈现与配置文件的各种版本相关联的信息以及版本之间的任何差异(例如,哪个(哪些)版本是最新的)。用户可以查看所呈现的信息并促进与配置文件相关联的某些功能,例如更新存储在控制器上的版本和/或存储在计算设备上的版本,或者解析设备版本和控制器版本之间的差异。

因此,该系统和方法提供了许多益处。具体地,系统和方法确定配置文件的不同版本之间的差异,并有效地呈现差异以供用户查看。因此,用户能够选择如何解析版本之间的差异,并促进与解析相关联的功能。结果,用户以及与模块化控制系统相关联的另外用户可以在知道配置文件是最新的的情况下有效地查看和更新存储在控制器上的配置文件。应该理解,可以想到其他益处。

图1示出了实施分布式控制系统22的示例性过程工厂10。通常,分布式过程控制系统22具有一个或多个控制器40,每个控制器通过输入/输出(i/o)设备或卡48连接到一个或多个现场设备或智能设备44,输入/输出(i/o)设备或卡48可以是例如现场总线接口、profibus接口、hart接口、标准4-20ma接口等。控制器40还通过数据高速通道54耦合到一个或多个主机或者操作员工作站50、52,数据高速通道54可以是例如以太网链路或另一链路适当的局域网(lan)链路。过程数据数据库58可以连接到数据高速通道58并且操作以收集和存储与工厂10内的控制器和现场设备相关联的参数、状态和其他数据。在过程工厂10的操作期间,过程数据数据库58可以通过数据高速通道54从控制器40和间接地从设备44-46接收过程数据。

配置数据库60按照下载到并存储在控制器40和现场设备44和46内的存储工厂10中的过程控制系统22的当前配置。配置数据库60存储定义过程控制系统22的一个或多个控制策略的过程控制功能、设备44和46的配置参数、设备44和46到过程控制功能的分配,以及与过程工厂10有关的其他配置数据。配置数据库60可以另外存储图形对象以提供过程工厂10的元素的各种图形表示。一些存储的图形对象可以对应于过程控制功能(例如,为某个pid回路开发的过程图形),并且其他图形对象可以是设备特定的(例如,对应于压力传感器的图形)。

过程工厂10还可以包括耦合到数据高速通道54的其他数据库,为了避免混乱,图1中未示出。例如,数据历史记录可以存储事件、警报、注释和操作员采取的操作过程。事件、警报和注释可以涉及单个设备(例如,阀、变送器)、通信链路(例如,有线现场总线段、wirelesshart通信链路)或过程控制功能(例如,用于维持期望温度设定点的pi控制回路)。此外,知识库可以存储参考、操作员日志条目、帮助主题或者到这些以及操作员和维护技术人员在监督过程工厂10时可能发现有用的其他文档的链接。此外,用户数据库可以存储关于例如操作员12和维护技术人员16的用户的信息。对于每个用户,用户数据库可以存储例如他或她的组织角色,过程工厂10内与用户相关联的区域,工作团队关联等。

这些数据库中的每一个可以是任何所需类型的数据储存或收集单元,具有用于存储数据的任何所需类型的存储器以及任何所需或已知的软件、硬件或固件。当然,数据库不需要驻留在单独的物理设备中。因此,在一些实施例中,这些数据库中的一些在共享数据处理器上实施。通常,可以利用更多或更少的数据库来存储由上述数据库共同存储和管理的数据。

虽然控制器40、i/o卡48及现场设备44和46通常分布在整个有时严酷的工厂环境中,但是操作员工作站50和52以及数据库58、60等通常位于控制室中或其他不太严酷的环境,易于由控制器、维护和其他各种工厂人员评估。然而,在一些情况下,手持设备可用于实施这些功能,并且这些手持设备通常被携带到工厂中的各个位置。

如已知的,控制器40中的每一个,例如可以是由emersonprocessmanagement销售的deltavtm控制器,存储和执行控制器应用程序,该控制器应用程序使用任意数量的不同的、独立执行的控制模块或块70来实施控制策略。每个控制模块70可以由通常称为功能块的部分组成,其中,每个功能块是整体控制例程的部分或子例程,并与其他功能块一起操作(通过称为链路的通信)以在过程工厂10内实施过程控制回路。众所周知,功能块可以是面向对象编程协议中的对象,通常执行以下之一:输入功能,例如与变送器、传感器或其他过程参数测量设备相关联的输入功能,控制功能,例如与执行pid、模糊逻辑等控制的控制例程相关联的控制功能,或输出功能,控制某些设备(例如阀)的操作,以在过程工厂10内执行某些物理功能。当然,存在混合和其他类型的复合功能块,例如模型预测控制器(mpc)、优化器等。虽然现场总线协议和deltav系统协议使用在面向对象编程协议中设计和实施的控制模块和功能块,但控制模块可以使用任何期望的控制编程方案来设计,包括例如顺序功能块、梯形逻辑等,并且不限于使用功能块或任何其他特定编程技术来设计和实施。每个控制器40还可以支持应用套件,并且可以使用预测智能来提高生产资产(包括机械设备、电气系统、过程设备、仪器、现场和智能现场设备44、46及阀)的可用性和性能。

在图1所示的工厂10中,连接到控制器12的现场设备44和46可以是标准的4-20ma设备,可以是智能现场设备,例如hart、profibus或foundationtm现场总线现场设备,其包括处理器和存储器,或者可以是任何其他期望类型的设备。这些设备中的一些,例如现场总线现场设备(在图1中用附图标记46标记),可以存储和执行与在控制器40中实施的控制策略相关联的模块或子模块,例如功能块。图1中示出为设置在两个不同的现场总线现场设备46中的功能块72可以结合控制器40内的控制模块70的执行来执行,以实施过程控制,这是众所周知的。当然,现场设备44和46可以是任何类型的设备,例如传感器、阀、变送器、定位器等,并且i/o设备48可以是符合任何期望通信或控制器协议(例如hart、现场总线、profibus等)的任何类型的i/o设备。

工作站50和52可以包括执行存储在存储器80中的指令的一个或多个处理器82。指令可以部分地实施查看应用程序84,其在过程工厂10的操作期间提供各种显示以使操作员12能够查看并控制过程工厂10内的各种操作,或者如在大型工厂中常见的,在过程工厂10的分配了相应操作员的部分内的各种操作。查看应用程序84可以包括支持应用程序或与支持应用程序协作,诸如控制诊断应用程序、调整应用程序、报告生成应用程序或可以用于帮助操作员12执行控制功能的任何其他控制支持应用程序。此外,查看应用程序84可以允许维护技术人员监督工厂10的维护需求,例如,查看各种设备40、44和46的操作或工作条件。查看应用程序还可以包括支持应用程序,例如维护诊断应用程序、校准应用程序、振动分析应用程序、报告生成应用程序或可用于帮助维护技术人员14在工厂10内执行维护功能的任何其他维护支持应用程序。

过程工厂10还可以包括示例性模块化控制系统100,其可以包括模块化控制器102、配置数据库104和可以包括现场设备110、112、114的专用设备。模块化控制系统100可以是撬装系统,其中,设备102、104、110、112、114位于物理框架120内。模块化控制系统100可以被配置为以独立模式操作并且在工厂中执行相对复杂的功能,例如以受控方式泵送液体,加热水并在罐中保持一定温度,执行过滤功能等。为此,模块化控制系统100可以包括阀、罐、传感器等。另外,尽管图1示出了连接到控制系统22并与控制系统22接口连接的模块化控制系统100,但是应当理解,模块化控制系统100可以分离并独立于控制系统22。

模块化控制器102可以本地构建在分布式控制系统22的平台上。即,专门开发模块化控制器102用于分布式控制系统22中,同时还能够自主操作,例如如同模块化控制系统100与控制系统22是分开的。为此,模块化控制器102可以包括不需要中介物的固件和/或软件功能(例如固件和/或软件的移植/适配层或相应的应用程序编程接口(api)功能)以与分布式控制系统22的节点交互。某个软件架构中的模块化控制器102与分布式控制系统22的其他控制器共享一个或多个软件层。在任何情况下,作为分布式控制系统22的平台本地的,模块化控制器102的配置、安全机制和通信与分布式控制系统22完全兼容。

例如,配置数据库104可以存储在非暂时性计算机可读存储器上,例如硬盘、闪存驱动器或sd卡。计算机可读存储器和模块化控制器102可以作为单个芯片组的一部分提供(即,计算机可读存储器可以作为控制器102的一部分包括在内)或者分别提供,这取决于实施方式。

制造商可以组装模块化控制系统100,用设定值和其他参数(例如pid回路的增益值、现场设备110的名称和标签、许可证、区域设置等)配置模块化控制系统100的参数。制造商也可以配置参数安全性。例如,制造商可以将增益值作为受限控制的一部分,并且要求仅在提供用于解锁该变量的适当密钥时才改变该值。在一些情况下,制造商可以完全组装模块化控制系统100以作为整体单元运输。

如果模块化控制系统100连接到控制系统22,则模块化控制系统100可以根据存储在配置数据库60中的控制系统22的当前配置来操作现场设备110、112、114。然而,如果模块化控制系统100未连接到控制系统22,则模块化控制系统100可以根据存储在与控制器102相关联的配置数据库104中的配置文件来操作现场设备110、112、114。本文将存储在配置数据库104中的配置文件的版本称为配置文件的“控制器版本”。

根据实施例,附加或替代主机141可以连接到模块化控制系统100的控制器102,其中,主机141可以便于访问、评估或更新配置文件的控制器版本。主机141可以存储配置文件的“计算设备版本”151(和/或与其相关联的元数据)。在某些情况下,配置文件的计算设备版本151可以表示主机141可以用于尝试配置控制器102的版本(即,用计算设备版本替换控制器版本)。另外,主机141可以存储“最后备份实例”的记录,该最后备份实例可以表示主机141备份存储在配置数据库104中的配置文件的最新实例。图4和5讨论了与评估和管理配置文件的不同版本相关的某些功能。

尽管本文讨论的一些功能描述了单个配置文件,但是应当理解,多个配置文件可以存储在主机141和控制器102上,其中,每个配置文件可以具有计算设备版本(即,存储在主机141上)、控制器版本(即,存储在控制器102上)和/或最后备份实例。例如,主机141和控制器102中的每一个可以存储逻辑配置文件、现场设备配置文件和图形配置文件。另外,主机141和控制器102可以存储相同或不同的配置文件,其中,相应的配置文件可以相同或不同。例如,主机141可以存储逻辑配置文件和图形配置文件,并且控制器102可以存储逻辑配置文件和现场设备配置文件(即,控制器102不存储图形配置文件而主机141不存储现场设备配置文件)。另外,分别存储在主机141和控制器102上的逻辑配置文件可以不同。

另外,如本文所讨论的,评估、比较和更新功能可适用于存储在主机141和控制器102上的任何或所有相应配置文件。具体地,可以并行地或逐个文件地促进评估、比较和更新功能。因此,系统和方法可以使得能够检索、协调和/或更新某些个别配置文件(例如,具有差异的配置文件),而其他个别配置文件(例如,相同的配置文件)可以保持不变。图2示出了与模块化控制系统200相关联的示例性控制器模块202的某些部件的示意图。在实施例中,控制器模块202可以包括两个冗余分布式控制器207和208,以及相关联的开关211和212,每个控制器分别控制通信端口(例如,以太网端口)213和214的集合。

根据实施例,控制器207可以被认为是主控制器,控制器208可以被认为是备用或冗余控制器。因此,在正常操作中,控制器207可以操作过程控制设备集合221;并且在备份操作中,控制器208可以操作过程控制设备集合221。

控制器207和208中的每一个可以存储配置文件的相应版本,该配置文件可以指定或规定如何操作过程控制设备集合221。具体地,控制器207可以存储配置文件的版本216,控制器208可以存储配置文件的版本218。应当理解,控制器207和208可以存储多个配置文件,每个配置文件具有各自的版本。根据实施例,配置文件的版本216、218可以存储在与相应控制器207、208接口连接的存储卡(例如,sd卡)上。然而,应当理解,配置文件的版本216、218可以存储在其他类型的存储器(例如,只读存储器(rom)、电可编程只读存储器(eprom)、随机存取存储器(ram)、可擦除电可编程只读存储器(eeprom)和/或其他硬盘驱动器、闪存等)上。

通常,配置文件的版本216、218是相同的。当计算设备与控制器模块202接口连接时,计算设备可以更新存储在控制器207上的配置文件的版本216。控制器207还可以使控制器208更新其配置文件的版本218以匹配更新版本216。

图3示出了示例性计算设备341(诸如关于图1所讨论的主机141)的硬件图,该示例性计算设备341可以与如关于图2所讨论的示例性控制器模块202接口连接,其中可以实施本文讨论的功能。根据实施例,计算设备341可以是被配置为与控制器模块202接口连接并通信的任何类型的计算设备,诸如笔记本电脑、台式计算机、平板设备、智能电话、智能手表、智能眼镜等。

计算设备341可以包括处理器372以及存储器378。存储器378可以存储能够促进如本文所讨论的功能的操作系统379以及应用程序集合375(即,机器可读指令)。例如,该应用程序集合375中的一个可以是文件评估应用程序390,其被配置为便于评估和协调配置文件的版本。应当理解,可以设想一个或多个其他应用程序392。

处理器372可以与存储器378接口连接以执行操作系统379和应用程序集合375。根据一些实施例,存储器378还可以存储配置文件380及其元数据,其中,配置文件380可以是如本文所讨论的配置文件的计算设备版本。存储器378还可以存储与计算设备341对配置文件的最后备份实例相关联的元数据,以及与其散列函数(hashfunction)及输出相关联的数据。具体地,散列函数输出可以由配置文件380输入到散列函数中产生。存储器378可以包括一种或多种形式的易失性和/或非易失性、固定和/或可移动存储器,例如rom、eprom、ram、eeprom和/或其他硬盘驱动器、闪存、存储卡等。

计算设备341还可以包括通信模块377,其被配置为经由有线连接或经由一个或多个无线网络与控制器模块202传送数据。根据一些实施例,通信模块377可以包括根据ieee标准、3gpp标准或其他标准运行的一个或多个收发机(例如,wwan、wlan和/或wpan收发机),并且被配置为经由一个或多个通信端口376接收和传送数据。例如,计算设备341可以经由相应的通信端口376、213、214中的一个或多个连接到控制器模块202。

计算设备341还可以包括用户接口381,其被配置为向用户呈现信息和/或从用户接收输入。如图3所示,用户接口381可以包括显示屏382和i/o部件383(例如,端口、电容或电阻式触敏输入面板、按键、按钮、灯、led)。根据一些实施例,用户可以经由用户接口381访问计算设备341以查看信息、进行选择和/或执行其他功能。

在一些实施例中,计算设备341可以作为“云”网络的一部分执行如本文所讨论的功能,或者可以以其他方式与云内的其他硬件或软件部件通信以发送、检索或以其他方式分析数据。

通常,根据实施例的计算机程序产品可以包括计算机可用储存介质(例如,标准随机存取存储器(ram)、光盘、通用串行总线(usb)驱动器等),具有包含在其中的计算机可读程序代码,其中,计算机可读程序代码可以适于由处理器372执行(例如,结合操作系统379工作)以促进如本文所述的功能。在这方面,程序代码可以用任何期望的语言实施,并且可以实施为机器代码、汇编代码、字节代码、可解释源代码等(例如,通过golang、python、scala、c、c++、java、actionscript、objective-c、javascript、css、xml)。在一些实施例中,计算机程序产品可以是云资源网络的一部分。

图4示出了与评估和模块化控制系统相关联的配置文件的版本并且基于版本比较来促进各种功能相关联的示例性信号图400。信号图400的功能可以由计算设备405和控制器模块415促进。计算设备405可以类似于关于图3所讨论的计算设备341,并且可以包括至少一个处理器472和存储器478。控制器模块415可以包括控制器410(诸如关于图2所讨论的控制器207)和存储器412。根据实施例,存储器412可以是与控制器410相关联或由控制器410访问的任何类型的内置或可移除储存设备(例如,sd卡)。虽然图4中未示出,但是存储器412可以包括可以存储配置文件的主要版本的主存储器和可以存储配置文件的备份版本的备份存储器。

计算设备405(或计算设备405的用户)的目的可以是根据由与模块化控制系统相关联的人员(例如,工程师、管理员、技术人员等)做出的改进、修复、特征等来更新存储在控制器模块415的存储器412中的配置文件的版本。

根据实施例,与模块化控制系统相关联的配置文件可以包括多个版本。具体地,计算设备405的存储器478可以存储配置文件的“计算设备版本”,其可以表示计算设备405的用户意图在控制器模块415的存储器412中更新的配置文件的版本。配置文件的计算设备版本可以具有相关联的“设备散列输出”,其由计算设备版本输入到散列函数中产生,散列函数也可以由存储器478存储。计算设备405的存储器478还可以存储指示配置文件的“最后备份实例”的记录或数据(例如,包括时间戳的元数据),其可以表示由计算设备405对在控制器模块415的存储器412中的配置文件的最新备份或更新。

控制器模块415的存储器412可以存储配置文件的“控制器版本”,其是当前存储在存储器412中的,并且控制器410用于控制可应用的过程控制设备集合的配置文件的版本。配置文件的控制器版本可以具有关联的“控制器散列输出”,其由控制器版本输入到散列函数中产生,其也可以由存储器412存储。根据实施例,设备散列输出和控制器散列输出可以在生成或保存配置文件的相应版本时或者在另一时间生成或确定。

在实施例中,存储器478和存储器412中的每一个可以存储多个配置文件,其中,存储在存储器478中的配置文件可以是计算设备版本,而存储在存储器412中的配置文件可以是控制器版本。存储器478还可以存储指示配置文件的最后备份实例的记录或数据。另外,存储器478、412可以存储分别与配置文件的多个版本相关联的多个散列输出。

尽管信号图400描述了单个配置文件的检索、访问、比较、解析和/或更新,但是应当理解,如果存在多个配置文件,则可以针对每个配置文件,并行或顺序地执行信号图400的功能。

当处理器472连接(420)到控制器模块415的控制器410或与控制器模块415的控制器410接口连接时,信号图400可以开始。在实施例中,处理器472可以经由计算设备405和控制器模块415的相应通信端口并经由至少一个有线或无线连接而连接到控制器410。

在连接到控制器410之后,处理器472可以向控制器410请求(422)配置文件的控制器版本。在实施例中,处理器472可以请求整个配置文件或其一部分,和/或与配置文件相关联的元数据集合。例如,该元数据集合可以包括标识最新更新的时间的时间戳,和/或其他元数据。控制器410可以从存储器412检索(424)配置文件的控制器版本。在实施例中,控制器410可以根据来自处理器472的请求检索与控制器版本相关联的数据。

控制器410可以经由相应的通信端口并经由至少一个有线或无线连接向处理器472提供(426)配置文件的控制器版本(和/或根据请求的任何检索的数据)。处理器472可以访问(428)或检查配置文件的计算设备版本以及指示配置文件的最后备份实例的数据。在实施例中,处理器472可以从存储器478访问整个计算设备版本或其一部分,和/或与计算设备版本相关联的任何元数据。此外,在实施例中,处理器472可以从存储器478访问指示配置文件的最后备份实例的所有数据或部分数据。

处理器472可以将配置文件的计算设备版本与配置文件的控制器版本进行比较(430)。在比较版本时,处理器472可以另外检查指示最后备份实例的数据。在一实施方式中,处理器472可以比较计算设备版本、控制器版本和指示最后备份实例的数据中的每一个的时间戳数据,其中,时间戳数据可以指示对于各个版本和最后备份实例的最新修改时间、最新访问时间和/或其他时间数据。因此,处理器472可以基于时间戳数据确定计算设备版本和控制器版本中的哪个是最新版本,以及时间数据与最后备份实例的时间数据相比较如何。应当理解,可以设想替代或附加的元数据比较。

在另一实施方式中,处理器472可以将与计算设备版本相关联的设备散列输出和与控制器版本相关联的控制器散列输出进行比较,其中,比较的结果可以指示存在(或不存在)计算设备版本与控制器版本之间的任何差异。通常,如果设备散列输出与控制器散列输出不同,则计算设备版本与控制器版本不同。类似地,如果设备散列输出与控制器散列输出相同,则计算设备版本与控制器版本相同。

在一些情况下,散列输出比较可以消除与配置文件的版本相关联的元数据可以指示的感知冲突。在特定场景中,计算设备版本的时间戳可以与控制器版本的时间戳不同,其中,时间戳的比较可以推断出计算设备版本与控制器版本不同(例如,比控制器版本更新)。然而,时间戳不一定对应于文件修改,可以代之以对应于例如无修改的文件访问。因此,虽然时间戳比较可以指示配置文件的版本不同,但是散列输出比较可以指示版本实际上是相同的。在这种场景中,在处理器否则可以基于元数据比较而采取特定操作时,处理器472可以基于散列输出比较确定不采取特定操作(或反之亦然)。

基于比较功能(430),处理器472可以确定(432)如何更新和/或解析配置文件的版本。在一个场景(本文称为“场景a”)中,比较可以指示计算设备版本比控制器版本和最后备份实例更新(例如,具有比控制器版本和最后备份实例更新的时间戳),并且控制器版本的时间戳与最后备份实例的时间戳匹配。因此,在场景a中,处理器472可以确定计算设备版本应该替换保存在存储器412中的控制器版本。在场景a的实施方式中,处理器472可以不采取操作来替换保存在存储器412中的控制器版本。

在另一场景(本文称为“场景b”)中,比较可以指示计算设备版本的时间戳与最后备份实例的时间戳匹配,并且控制器版本比计算设备版本和最后备份实例更新(例如,具有比计算设备版本和最后备份实例更新的时间戳)。因此,在场景b中,处理器472可以确定计算设备版本应该被更新的控制器版本替换。在场景b的实施方式中,处理器472可以不采取操作来用较新的控制器版本替换计算设备版本。

在另一场景(本文称为“场景c”)中,比较可以指示计算设备版本与控制器版本不同,计算设备版本比最后备份实例更新(例如,具有比最后备份实例更新的时间戳),并且控制器版本比计算设备版本更新(即,控制器版本是最新的)。因此,在场景c中,处理器472可以确定在计算设备版本和控制器版本之间需要协调。在场景c的实施方式中,处理器472可以不采取操作来协调计算设备版本与控制器版本。

处理器472可以可选地根据所确定的场景更新或解析(434)计算设备版本。具体地,如果确定的场景是场景b或场景c,则处理器472可以更新或解析计算设备版本。如果确定的场景是场景b(即,控制器版本比计算设备版本更新),则处理器472可以使存储器478用在(426)中接收的控制器版本替换所存储的计算设备版本。因此,(更新的)计算设备版本是最新的,并且计算设备405的用户可以相应地编辑或修改(更新的)计算设备版本,用于随后更新配置文件的控制器版本。

如果所确定的场景是场景c(即,控制器版本比计算设备版本更新,计算设备版本比最后备份实例更新),则处理器472可以解析配置文件的版本之间的差异。在一些实施例中,处理器472可以自动地将控制器版本中的更新或差异与计算设备版本中的任何更新或差异合并。在其他实施例中,处理器472可以使存储器478用控制器版本替换计算设备版本,或者可以使存储器412用计算设备版本替换控制器版本。在另一实施例中,处理器472可以使用户(例如,经由计算设备405的用户接口)选择如何解析差异。具体地,用户接口可以指示版本之间的差异,并且可以使用户能够接受或拒绝某些添加、删除、修改等。

在促进任何更新或解析功能之后,处理器472可以可选地向控制器410提供(436)计算设备版本。在实施例中,如果所确定的场景是场景a(即,计算设备版本比控制器版本更新并且应该替换存储在存储器412中的控制器版本),则处理器472可以将计算设备版本原样提供给控制器410。在其他实施例中,如果所确定的场景是场景c并且处理器472促进配置文件的版本的任何更新或解析,则处理器472可以将配置文件的更新或解析版本提供给控制器410。否则,在实施例中,如果所确定的场景是场景b,则处理器472可能不需要将配置文件的任何版本提供给控制器410。

在接收到计算设备版本(或者由处理器472提供任何版本)之后,控制器410可以将所接收的版本提供(438)给存储器412。因此,存储器412可以更新(440)控制器版本以反映由控制器410在(438)中提供的版本。因此,存储在存储器412中的配置文件的控制器版本可以被认为是最新的并且可以反映由计算设备405的用户发起的更新。

图5示出了评估与过程工厂中的模块化控制系统相关联的配置文件的版本的示例性方法500的框图。根据实施例,方法500可以由被配置为连接到与模块化控制系统相关联的控制器并与其接口连接的计算设备(并且更具体地,其处理器)来促进。计算设备的存储器可以存储配置文件的计算设备版本,并且控制器可以包括并入其中的存储器(例如,sd卡),其可以存储配置文件的控制器版本。应当理解,方法500的功能是示例性的,可以设想附加或替代功能。

方法500可以在计算设备和与模块化控制系统相关联的控制器接口连接(块505)时开始。在实施例中,计算设备可以经由相应的通信端口与控制器接口连接,并且可以从控制器检索配置文件的控制器版本。计算设备可以识别(块510)配置文件的最后备份实例,其表示计算设备在控制器上对配置文件的最新备份。在实施例中,计算设备可以检查元数据(例如,时间戳)以识别最后备份实例。

计算设备可以将配置文件的计算设备版本与配置文件的控制器版本进行比较(块515)。在一些实施例中,计算设备可以比较分别与配置文件的计算设备版本和控制器版本相关联的时间戳集合。在其他实施例中,计算设备版本可以关联由散列函数产生的设备散列输出,并且控制器版本可以关联由散列函数产生的控制器散列输出,计算设备可以将设备散列输出与控制器进行比较。在将计算设备版本与控制器版本进行比较时,计算设备还可以检查与最后备份实例相关联的数据。

计算设备可以经由用户接口呈现(块520)(i)对计算设备版本、最后备份实例和控制器版本中的每一个的指示,以及(ii)比较结果。在呈现比较结果时,计算设备可以以视觉上不同的方式(例如,突出显示或下划线)指示配置文件的哪个版本是最新版本。计算设备可以可选地经由用户接口接收(块525)与比较结果相关联的用户选择。具体地,用户选择可以对应于用户可能想要查看、修改或引起更新的配置文件的版本的选择。

计算设备可以基于块520的比较来确定(块530)是更新、检索还是解析配置文件的某些版本。如果计算设备确定更新(“更新”;即,配置文件的计算设备版本比配置文件的控制器版本和最后备份实例更新或本文所讨论的场景a),则计算设备可以致使(块535)控制器的存储器更新控制器版本。具体地,计算设备可以使存储在控制器的存储器中的配置文件的控制器版本被配置文件的计算设备版本替换。在场景a的替代实施方式中,计算设备可以不采取进一步操作(即,可以不致使控制器的存储器更新控制器版本)。

如果计算设备确定检索(“检索”;即,(i)配置文件的计算设备版本与配置文件的最后备份实例一致,以及(ii)配置文件的控制器版本比配置文件的计算设备版本更新,或本文所讨论的场景b),则计算设备可以从控制器的存储器中检索(块540)配置文件的控制器版本。此外,计算设备可以根据控制器版本更新(块545)配置文件的计算设备版本。具体地,计算设备可以用从控制器检索的配置文件的控制器版本替换配置文件的本地存储的计算设备版本。

如果计算设备确定解析(resolve)(“解析”;即,配置文件的计算设备版本比最后备份实例更新,并且配置文件的控制器版本比配置文件的计算设备版本更新,或本文所讨论的场景c),则计算设备可以从控制器的存储器中检索(块550)配置文件的控制器版本。此外,计算设备可以用配置文件的控制器版本解析(块555)配置文件的计算设备版本。具体地,计算设备可以合并版本之间的更新,使用户能够选择如何解析版本,或促进其他功能,如本文所讨论的。在场景c的特定实施方式中,计算设备可以仅解析计算设备版本而不修改控制器版本(或反之亦然)。

图6和7示出了与实施例及其功能相关联的示例性界面600、700。计算设备(诸如关于图3所讨论的计算设备341)可以被配置为呈现界面600、700,其中,计算设备可以连接到模块化控制系统的控制器并与其接口连接。应当理解,界面600、700的内容仅仅是示例性的,并且可以设想附加的或替代的内容。

图6的界面600包括与配置文件的评估相关联的各种信息。图标602可以表示计算设备,图标604可以表示包括在模块化控制系统的控制器中的存储器,其中,计算设备和存储器中的每一个可以存储配置文件的一个或多个版本。状态集合603可以指示计算设备在评估配置文件的版本时所采取的各种操作,并且比较概要605可以总结评估。

如图6所示,比较摘要605指示计算设备的最后更改(即,配置文件的计算设备版本)、计算设备的最后备份(即,配置文件的最后备份实例)和项目备份(即配置文件的控制器版本)。关于图7讨论与这些版本相关的附加信息。

图7的界面700包括与配置文件的版本的评估相关的细节,例如与不同版本相关联的时间元数据。具体地,界面700标识存在于计算设备和控制器上的具有不同时间戳的三(3)个配置文件(701、702、703),以及存在于控制器中但不在计算设备上的两个(2)配置文件(704)。

各个配置文件的标识701、702、703中的每一个可以标识名称、配置类型、条目类型、修改的时间戳(即,计算设备版本的时间戳)、修改的(最后备份)时间戳(即,最后备份实例的时间戳)、修改的(备份)时间戳(即控制器版本的时间戳),以及比较结果。标识701可以对应于场景a,其中,最后备份实例和控制器版本具有相同的时间戳,并且计算设备版本具有更新的时间戳。标识702可以对应于场景b,其中,计算设备版本和最后备份实例具有相同的时间戳,并且控制器版本具有更新的时间戳。标识703可以对应于场景c,其中,计算设备版本时间戳比最后的备份实例时间戳更新,并且控制器版本时间戳比计算设备版本时间戳更新。

计算设备可以被配置为以视觉上不同的方式指示哪些版本可能需要被评估、比较、解析等具体地,如图7所示,与场景a相关联的标识701在计算设备版本下面划线,因为它是最新版本;与场景b相关联的标识702在控制器版本下面划线,因为它是最新版本;与场景c相关联的标识703在计算设备版本和控制器版本中的每一个下面划线,因为可能需要解析这些版本。

计算设备还可以被配置为使计算设备的用户能够进行选择并促进与更新和解析配置文件的版本相关联的某些操作。具体地,标识701、702、703中的每一个可以包括用于检索相应配置文件的特定版本的可选框。在实施例中,当用户选择特定配置文件的检索框并选择检索选择705时,计算设备可以促进访问或检索配置文件的适用版本,显示适用版本,以及使用户能够进行选择,促进合并,进行编辑或添加,和/或执行其他编辑。在一种实施方式中,当用户选择检索选择705时,计算设备可以访问或检索以视觉上不同的方式显示的配置文件的版本(例如,突出显示的版本)。

还设想了与本文描述的技术相关联的附加特征。具体地,可以提供可视化用户界面(ui),其可以从计算设备和控制器两者的角度显示配置信息。另外,可视化ui可以实现配置文件的多个版本的合并,如本文所讨论的,其中,计算设备可以配置有“自动合并功能”,其可以自动合并同一文件的两个版本,同时使用户能够监视和/或进行附加选择(例如计算设备没有自动合并的文件的部分)。此外,计算设备可以使用户能够选择保存或保留同一文件的多个版本。因此,计算设备可以借助或者使用为副本自动选择的新文件名或者通过允许用户输入文件名而使用户能够选择保存多个版本。

本公开内容中描述的技术的实施例可以包括单独或组合的任何数量的以下方面:

1、一种评估与过程工厂中的模块化控制系统相关联的配置文件的版本的计算设备中的计算机实施的方法,所述计算设备可以存储配置文件的计算设备版本,并且所述方法包括:

由所述计算设备和与模块化控制系统相关联的控制器接口连接,所述控制器具有并入其中的存储器,所述存储器存储配置文件的控制器版本;识别配置文件的最后备份实例,所述最后备份实例表示所述计算设备对所述控制器上的配置文件的最新备份;所述计算设备的处理器将配置文件的计算设备版本与配置文件的控制器版本进行比较;并且通过所述计算设备的用户接口呈现(i)对配置文件的计算设备版本、配置文件的最后备份实例和配置文件的控制器版本中的每一个的指示,以及(ii)比较的结果。

2、根据权利要求1所述的计算机实施的方法,其中,将配置文件的计算设备版本与配置文件的控制器版本进行比较包括:比较分别与所述配置文件的计算设备版本和所述配置文件的控制器版本相关联的时间戳集合。

3、根据权利要求1所述的计算机实施的方法,其中,所述配置文件的计算设备版本与由散列函数所产生的设备散列输出相关联,并且所述配置文件的控制器版本与由散列函数所产生的控制器散列输出相关联,并且其中,将配置文件的计算设备版本与配置文件的控制器版本进行比较包括:将设备散列输出与控制器散列输出进行比较。

4、根据权利要求1至9中任一项所述的计算机实施的方法,其中,(i)所述配置文件的计算设备版本与所述配置文件的最后备份实例一致,以及(ii)所述配置文件的控制器版本比所述配置文件的计算设备版本更新。

5、根据权利要求4所述的计算机实施的方法,还包括:从控制器的存储器中检索所述配置文件的控制器版本;及根据所述配置文件的控制器版本更新所述配置文件的计算设备版本。

6、根据权利要求1至3中任一项所述的计算机实施的方法,其中,所述配置文件的计算设备版本(i)比所述配置文件的最后备份实例所发生的时间更新,以及(ii)比所述配置文件的控制器版本更新。

7、根据权利要求6所述的计算机实施的方法,还包括:使所述控制器的存储器将所述配置文件的控制器版本更新为所述配置文件的计算设备版本。

8、根据权利要求1至3中任一项所述的计算机实施的方法,其中,所述配置文件的计算设备版本比所述配置文件的最后备份实例所发生的时间更新,并且其中,所述配置文件的控制器版本比所述配置文件的计算设备版本更新。

9、根据权利要求8所述的计算机实施的方法,还包括:从控制器的存储器中检索所述配置文件的控制器版本;及用所述配置文件的控制器版本解析所述配置文件的计算设备版本。

10、根据权利要求1至9中任一项所述的计算机实施的方法,还包括:经由所述用户接口接收与所述比较的结果相关联的用户选择。

11、一种用于评估与过程工厂中的模块化控制系统相关联的配置文件的版本的计算设备,包括:通信端口;用户接口;设备存储器,存储(i)计算机可执行指令集,(ii)配置文件的计算设备版本,以及(iii)配置文件的最后备份实例的记录,最后备份实例表示计算设备对在与模块化控制系统相关联的控制器上的配置文件的最新备份;以及处理器,与通信端口、用户接口和存储器接口连接,并且被配置为执行所述计算机可执行指令集以使处理器:经由通信端口和与模块化控制系统相关联的控制器接口连接,所述控制器具有并入其中的存储器,所述存储器存储配置文件的控制器版本;将配置文件的计算设备版本与配置文件的控制器版本进行比较;并且使得用户接口呈现(i)配置文件的计算设备版本、配置文件的最后备份实例和配置文件的控制器版本中的每一个的指示,以及(ii)比较的结果。

12、根据权利要求11所述的计算设备,其中,为了将配置文件的计算设备版本与配置文件的控制器版本进行比较,所述处理器被配置为:比较分别与所述配置文件的计算设备版本和所述配置文件的控制器版本相关联的时间戳集合。

13、根据权利要求11所述的计算设备,其中,所述配置文件的计算设备版本与由散列函数所产生的设备散列输出相关联,并且所述配置文件的控制器版本与由散列函数所产生的控制器散列输出相关联,并且其中,为了将配置文件的计算设备版本与配置文件的控制器版本进行比较,所述处理器被配置为:将设备散列输出与控制器散列输出进行比较。

14、根据权利要求11至13中任一项所述的计算设备,其中,(i)所述配置文件的计算设备版本与所述配置文件的最后备份实例一致,以及(ii)所述配置文件的控制器版本比所述配置文件的计算设备版本更新。

15、根据权利要求14所述的计算设备,其中,所述处理器被配置为执行所述计算机可执行指令集以进一步使所述处理器:从控制器的存储器中检索所述配置文件的控制器版本;及根据所述配置文件的控制器版本在设备存储器中更新所述配置文件的计算设备版本。

16、根据权利要求11至13中任一项所述的计算设备,其中,所述配置文件的计算设备版本(i)比所述配置文件的最后备份实例所发生的时间更新,以及(ii)比所述配置文件的控制器版本更新。

17、根据权利要求16所述的计算设备,其中,所述处理器被配置为执行所述计算机可执行指令集以进一步使所述处理器:使所述控制器的存储器将所述配置文件的控制器版本更新为所述配置文件的计算设备版本。

18、根据权利要求11至13中任一项所述的计算设备,其中,所述配置文件的计算设备版本比所述配置文件的最后备份实例所发生的时间更新,并且其中,所述配置文件的控制器版本比所述配置文件的计算设备版本更新。

19、根据权利要求18所述的计算设备,其中,所述处理器被配置为执行所述计算机可执行指令集以进一步使所述处理器:从控制器的存储器中检索所述配置文件的控制器版本;及用所述配置文件的控制器版本解析所述配置文件的计算设备版本。

20、根据权利要求11至19中任一项所述的计算设备,其中,所述处理器被配置为执行所述计算机可执行指令集以进一步使所述处理器:经由所述用户接口接收与所述比较的结果相关联的用户选择。

21、一种管理与过程工厂中的模块化控制系统相关联的配置文件的版本的计算设备中的计算机实施的方法,所述计算设备存储配置文件的计算设备版本,所述方法包括:由计算设备和与模块化控制系统相关联的控制器接口连接,所述控制器具有并入其中的存储器,所述存储器存储配置文件的控制器版本;由计算设备的处理器将配置文件的计算设备版本与配置文件的控制器版本进行比较;通过计算设备的用户接口呈现(i)配置文件的计算设备版本、配置文件的控制器版本和表示计算设备对控制器的配置文件的最新备份的配置文件的最后备份实例中的每一个的指示,以及(ii)比较的结果;通过用户接口接收与比较的结果相关联的用户选择;并且基于用户选择,促进以下中的至少一个的更新:配置文件的计算设备版本和配置文件的控制器版本。

22、根据权利要求21所述的计算机实施的方法,其中,呈现所述比较的结果包括:在视觉上指示配置文件的计算设备版本、控制器版本和最后备份实例的时间中的哪一个是最新的。

23、根据权利要求21或权利要求22所述的计算机实施的方法,其中,所述用户选择与所述配置文件的控制器版本相关联,并且其中,促进所述更新包括:从所述控制器的存储器中检索所述配置文件的控制器版本;及根据所述配置文件的控制器版本更新所述配置文件的计算设备版本。

24、根据权利要求21或权利要求22所述的计算机实施的方法,其中,所述用户选择与所述配置文件的计算设备版本相关联,并且其中,促进所述更新包括:使所述控制器的存储器将所述配置文件的控制器版本更新为所述配置文件的计算设备版本。

25、一种过程工厂中的模块化控制系统,包括:过程控制设备集合,所述过程控制设备集合通信地连接以控制过程集合;控制器,所述控制器存储配置文件的控制器版本,并且被配置为根据配置文件的控制器版本操作所述过程控制设备集合;及计算设备,所述计算设备被配置为与控制器接口连接,以及存储(i)配置文件的计算设备版本,以及(ii)配置文件的最后备份实例的记录,配置文件的最后备份实例表示计算设备对控制器上的配置文件的最新备份,其中,所述计算设备还可以被配置为:将配置文件的计算设备版本与配置文件的控制器版本进行比较,并且经由用户接口呈现(i)配置文件的计算设备版本、配置文件的最后备份实例和配置文件的控制器版本中的每一个的指示,以及(ii)比较的结果。

26、根据权利要求25所述的模块化控制系统,其中,为了呈现比较的结果,所述计算设备被配置为在用户接口中在视觉上指示配置文件的计算设备版本、控制器版本和最后备份实例的时间中的哪一个是最新的。

27、根据权利要求25或权利要求26所述的模块化控制系统,其中,所述计算设备还被配置为:经由所述用户接口接收与所述比较的结果相关联的用户选择,并且基于所述用户选择,促进以下中的至少一个的更新:所述配置文件的计算设备版本和所述配置文件的控制器版本。

28、根据权利要求25至27中任一项所述的模块化控制系统,其中,为了将所述配置文件的计算设备版本与所述配置文件的控制器版本进行比较,所述计算设备被配置为:比较分别与所述配置文件的计算设备版本和所述配置文件的控制器版本相关联的时间戳集合。

29、根据权利要求25至27中任一项所述的模块化控制系统,其中,所述配置文件的计算设备版本与由散列函数所产生的设备散列输出相关联,并且所述配置文件的控制器版本与由散列函数所产生的控制器散列输出相关联,并且其中,为了将配置文件的计算设备版本与配置文件的控制器版本进行比较,所述计算设备被配置为:将设备散列输出与控制器散列输出进行比较。

另外,本公开内容的先前方面仅是示例性的,并非旨在限制本公开内容的范围。

以下另外的考虑适用于前述讨论。在整个说明书中,描述为由任何设备或例程执行的操作通常是指处理器根据机器可读指令操纵或转换数据的操作或过程。机器可读指令可以存储在通信地耦合到处理器的存储器设备上并从其中取出。即,本文描述的方法可以通过存储在计算机可读介质上(即,在存储器设备上)的机器可执行指令集来体现。当由相应设备(例如,操作员工作站、调试工具等)的一个或多个处理器执行时,指令使得处理器执行该方法。在本文中将指令、例程、模块、过程、服务、程序和/或应用程序称为存储或保存在计算机可读存储器或计算机可读介质上的情况下,词语“存储”和“保存”旨在排除暂时性信号。

此外,虽然术语“操作员”、“人员”、“人”、“用户”、“技术人员”、“管理员”以及其他术语用于描述过程工厂环境中可能使用本文描述的系统、装置和方法或与之相互作用的人,但这些术语并非旨在是限制性的。在说明书中使用特定术语的情况下,该术语部分地由于工厂人员参与的传统活动而使用,但并非旨在限制可能参与该特定活动的人员。

另外,在整个说明书中,多个实例可以实施被描述为单个实例的组件、操作或结构。尽管一个或多个方法的各个操作被示出并描述为单独的操作,但是可以同时执行单独的操作中的一个或多个,并且不需要以所示的顺序执行操作。在示例性配置中作为单独部件呈现的结构和功能可以实现为组合结构或部件。类似地,作为单个部件呈现的结构和功能可以实现为单独的部件。这些和其他变化、修改、添加和改进属于本文主题的范围内。

除非另有明确说明,否则本文使用诸如“处理”、“计算”、“运算”、“确定”、“识别”、“呈现”、“导致呈现”、“导致显示”、“显示”等词语的讨论可以指代在一个或多个存储器(例如,易失性存储器、非易失性存储器或其组合)、寄存器或接收、存储、传送或显示信息的其他机器部件内操纵或转换表示为物理(例如,电子、磁、生物或光学)量的数据的机器(例如,计算机)的操作或过程。

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

因此,尽管已经参考具体示例描述了本发明,这些示例仅旨在说明而不是限制本发明,但对于本领域普通技术人员显而易见的是,在不脱离本发明的精神和范围的情况下,可以对所公开的实施例进行改变、添加或删除。

还应该理解,除非在本专利中使用语句“如本文使用的术语“__”由此定义为表示……”或类似的语句来明确定义术语,否则无意明确或隐含地限制该术语的含义超出其常见或普通含义,并且该术语不应被解释为限于基于在本专利的任何部分(权利要求的文字除外)中做出的任何表述的范围。就本专利结尾处的权利要求中所述的任何术语在本专利中以与单个含义一致的方式被提及而言,仅是为了清楚以便不使读者混淆而这么做的,它并非意图将此类权利要求术语隐含地或以其他方式限制于该单个含义。最后,除非在没有任何结构的叙述的情况下通过表述词语“模块”和功能来限定权利要求要素,否则并非旨在基于35u.s.c§112(f)和/或前aia35u.s.c§112第六段的应用来解释任何权利要求要素的范围。

此外,尽管前文阐述了许多不同实施例的详细描述,但应该理解,该专利的范围由本专利结尾处所阐述的权利要求的文字限定。详细描述仅被解释为示例性的,并未描述每个可能的实施例,因为如果不是不可能的话,描述每个可能的实施例将是不切实际的。使用当前技术或在本专利申请日之后开发的技术可以实现许多替代实施例,这仍然属于权利要求的范围内。

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