CN109906440A - 处理控制系统中的具有分开的冗余方案的多核心设备 - Google Patents
处理控制系统中的具有分开的冗余方案的多核心设备 Download PDFInfo
- Publication number
- CN109906440A CN109906440A CN201680090574.XA CN201680090574A CN109906440A CN 109906440 A CN109906440 A CN 109906440A CN 201680090574 A CN201680090574 A CN 201680090574A CN 109906440 A CN109906440 A CN 109906440A
- Authority
- CN
- China
- Prior art keywords
- main
- core
- shadow
- equipment
- long
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0421—Multiprocessor system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0428—Safety, monitoring
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Hardware Redundancy (AREA)
Abstract
多核心系统控制处理控制系统中的设备。具有主要主核心和主要远程核心的主要控制处理设备被配置用于控制第一多个设备之间的在第一网络上的通信。主要远程核心被配置用于控制第二多个设备之间的在第二网络上的通信。影子控制处理设备耦合到第一网络和第二网络,用于处理设备之间的冗余通信。影子控制处理设备包括影子主核心和影子远程核心。影子主核心被配置用于控制第一多个设备之间的在第一网络上的通信。影子远程核心被配置用于控制第二多个设备之间的在第二网络上的通信。
Description
技术领域
本发明的各方面涉及联网的计算机化工业控制和自动化系统领域。这种工业控制和自动化系统一般而言包括处理控制器设备,其通常经由网络连接到整个处理控制系统中的大量现场设备。处理中的现场设备具有各种类型和功能,并且可能由许多不同的供应商公司创建。控制大量现场设备协调一致是确保处理控制系统生产力的重要任务。
背景技术
如今的典型工业处理是非常复杂的并且涉及许多智能设备(诸如发送器、定位器、马达驱动器、限位开关和其它使能通信的设备)。作为示例,不是没有听说过在工业工厂内具有成千上万个传感器和控制元件(例如,阀门致动器)监视/控制多级处理的各方面。当现场设备随着时间的推移变得越来越高级时,控制和同步现场设备的处理的复杂性也增大了。
在前几代工业处理控制装备(并且更具体而言是现场设备)中,发送器和定位器是比较简单的部件。在引入数字(智能)发送器之前,与现场设备相关联的活动相对简单。如用于气动仪器的3-15psi或用于电子仪器的4-20ma的行业标准允许一定程度的互操作性,这最小化模拟发送器的设置、配置和操作。
包括数字数据发送能力的更现代的现场设备和设备上的数字处理器(一般被称为“智能”现场设备)在设置新的现场设备时需要显著更多的配置努力。复杂的智能设备的管理需要各种不同的软件接口、协议和驱动器以确保与每种类型设备的高效交互。
发明内容
本发明的各方面允许用包括多个核心的单个处理设备来控制设备的分开的集合,其中每个核心都控制设备的集合。而且,每个核心都实现某个类型的冗余方案。
在一种形态中,提供了一种用于实现对处理控制系统中的设备的控制的多核心系统。该系统具有耦合到第一多个设备的第一网络和第二多个设备的第二网络的、用于处理设备之间的通信的主要控制处理设备。主要控制处理设备包括主要主核心和主要远程核心。主要主核心被配置用于控制第一多个设备之间的在第一网络上的通信。主要远程核心被配置用于控制第二多个设备之间的在第二网络上的通信。该系统还包括耦合到第一和第二网络的、用于处理设备之间的冗余通信的影子(shadow)控制处理设备。影子控制处理设备包括影子主核心和影子远程核心。影子主核心被配置用于控制第一多个设备之间的在第一网络上的通信。影子远程核心被配置用于控制第二多个设备之间的在第二网络上的通信。
在另一种形态中,提供了一种使用多核心处理设备控制多个设备集合的方法。
其它特征将部分地清楚并且部分地在下文中指出。
附图说明
图1是根据本发明一实施例的、采用嵌入式外部设备集成器(eEDI)设备的示例性处理控制系统的框图。
图2是图1的eEDI的示例性硬件层的图。
图3是进一步图示了冗余处理模块和多个核心的图1的eEDI的图。
图4是示出在入扫描(inscan)和出扫描(outscan)处理期间主核心和远程核心之间的示例性交互的图。
图5是示出在设备安装期间主核心和远程核心之间的示例性交互的图。
图6是示出在设备状态请求期间主核心和远程核心之间的示例性交互的图。
图7是通过以太网连接到现场设备的单个eEDI系统的示例性布局的图。
图8是具有两个eEDI和两个以太网网络的系统的示例性布局的图。
图9是具有两个eEDI和共享的以太网网络的系统的示例性布局的图。
图10是串行连接到现场设备的单个eEDI系统的示例性布局的图。
图11是具有串行连接到双端口现场设备的两个eEDI的系统的示例性布局的图。
图12是具有串行连接到单端口现场设备的两个eEDI的系统的示例性布局的图。
在附图中对应的标号指示对应的部分。
具体实施方式
参考图1,实现本发明各方面的处理控制系统100包括嵌入式外部设备集成器(eEDI)设备102。图1示出被配置用于与处理控制系统100中的其它设备通信的eEDI设备102。eEDI设备102与处理控制系统100的其它设备之间的通信包括从eEDI设备102到其它设备的请求和命令以及从其它设备到eEDI设备102的响应和其它数据。eEDI设备102连接到电源114和时钟信号112,该时钟信号112使eEDI 102和其中的模块能够同步操作。在一实施例中,eEDI设备102连接到一个或多个接口设备110,该接口设备110用于从eEDI设备102传送诸如状态信息之类的信息。接口设备110可以经由可视显示器或其它接口进行通信。
处理控制系统100的连接到eEDI设备102的设备被配置成通过各种类型的接口进行通信。第一设备集合是通过MESH网络(网状网络)连接而连接到eEDI设备102的现场设备108。第二设备集合是通过以太网连接而连接到eEDI设备102的以太网现场设备104。第三设备集合是通过串行连接而连接到eEDI设备102的串行现场设备106。在实施例中,eEDI使用MODBUS协议与串行设备通信。在实施例中,eEDI设备102可以连接到其它类型的设备并使用本领域普通技术人员所理解的其它类型的通信协议。
参考图2,eEDI设备102的实施例包括若干硬件层。在一实施例中,eEDI设备102包括底板202上的一个或多个处理器模块,底板202将eEDI设备102连接到外部连接。处理器模块的I/O板216直接附连到底板202。I/O板216充当底板202和处理器板218之间的导管。处理器板218执行eEDI设备102的所有的处理任务。显示器210连接到处理器板218以便监视eEDI设备102的活动。通过底板202,eEDI设备102与MESH网络208、串行连接的现场设备206和以太网连接的现场设备204交互。eEDI设备102由通过底板202连接的电源214供电,并且eEDI设备102的处理基于时间同步信号212被同步。I/O板216的一实施例通过将来自底板202的较高电压电力转换为期望电压来向处理器板218提供低电压电力。
在一实施例中,eEDI设备102包括具有能够并行执行处理的多个核心的处理器。参考图3,处理器的分开的核心各自被指派处理任务。主要处理器模块302包括被指派用于与第一设备集合314通信并执行与第一设备集合314相关联的处理任务的主核心304。主要处理器模块302的远程核心306被指派用于与第二设备集合316和318通信并且执行与第二设备集合316和/或318相关联的处理任务。根据所描述的系统,还可以使用附加的核心。可替代地,eEDI设备102包括被配置成并行执行处理的多个处理器,并且使用主处理器和远程处理器。应当理解的是,在替代实施例中,主和远程核心可以被指定为第一和第二核心。还应当理解的是,在替代实施例中,主和远程核心可以颠倒。
为了说明的目的,图3中示意性描绘的处理控制网络被大大地简化。本领域技术人员将容易地认识到的是,在示例性处理控制系统的每个绘出的级别处的部件的数量一般比所绘出的部件的数量大许多倍。关于所绘出的现场设备的数量,情况尤其如此。在实际的处理控制环境中,对于工业处理控制系统,现场设备(包括输入设备(例如,发送器和传感器)以及输出设备(例如,定位器和致动器))的数量是数百个。
在一实施例中,主核心304被指派用于与MESH网络设备314通信,并且远程核心306被指派用于与其它设备(诸如以太网设备316和串行设备318)通信。此外,主核心304以控制块的形式运行处理控制软件。控制块贯穿处理的操作被运行。主核心304根据需要从连接到主核心304或远程核心306的现场设备收集数据。在控制块内使用该数据来确定要提供给连接的现场设备的命令以便维持该处理。在一实施例中,远程核心306也可以运行控制块。
主核心304处理包括数字通信(DCI)块,其被配置成映射来自连接到远程核心306的设备的设备I/O数据。DCI块在控制处理的“入扫描”步骤期间用来自共享设备I/O表的数据填充,“入扫描”发生在紧接着控制块运行之前。
在一实施例中,远程核心306连接到一个或多个不同类型的现场设备,并且每个现场设备类型需要不同的驱动器,该驱动器是使得远程核心能够与现场设备通信的软件。远程核心根据需要维持多个驱动器,以便与每种类型的连接的现场设备通信。所安装的每个设备驱动器在远程核心程序中由驱动器块表示。驱动器块包含驱动器名称、驱动器版本标识符以及当驱动器被初始化时部署的其它依驱动器而定的配置参数。
远程核心306还包括用来控制连接到设备的特定总线上的状态信息的块。例如,存在包含以太网和串行连接信息的两种类型的主要块。主要块还包含诸如指派的IP地址等信息。这些地址以避免地址冲突并符合外部网络配置的方式被指派。串行主要块具有用于每个串行通道的附加信息(诸如协议和波特率)。
远程核心306程序包括用来报告被配置成附连到远程核心的每个设备的状态和配置信息的设备块。在一实施例中,远程核心306支持多达256个不同的设备块。
在一实施例中,本发明的各方面取决于远程设备的驱动器如何应用时间戳来实现对数据加时间戳的不同方法。在驱动器没有附加任何时间信息的情况下,将使用内部生成的时间,首先将数据装载到主核心侧的DCI块中。
如果驱动器实现其自己的时间戳方案,那么在从远程设备读取时应用时间戳。远程核心维持由主核心时间服务调整的时间。
第三时间戳方案包括通过驱动器传递来自设备的远程时间戳而不进行修改。
主核心304和远程核心306还被配置成当检测到它们发生故障时或者在它们不能执行的情况下向系统指示错误。例如,如果设备被调度以超过可能的速度进行扫描,那么会指示扫描超限(overrun)错误。如果核心上安装的设备多于核心可以处理的设备,那么指示缺少存储器错误。如果核心耗尽CPU资源,那么指示错误。
在一实施例中,eEDI设备102还包括第二冗余处理器模块或影子处理器模块308,其具有与第一处理器模块或主要处理器模块302相同数量的核心。主要模块302和影子模块308两者都接收时钟信号,该时钟信号例如指示存在。两者都由电源供电。影子模块308具有以与上述主要模块302相同的方式在核心之间拆分的通信和处理任务。一般而言,在主要模块302不再起作用的情况下,影子模块308接管主要模块302。以这种方式,即使主要模块302中断,处理控制系统也能够基于影子模块308的处理继续操作。
主要模块302和影子模块308上的每个主核心和远程核心经由冗余方案相关。冗余方案定义每个核心相对于其冗余伙伴核心的操作。它还定义主要核心和影子核心通信并保持同步的方法。在一实施例中,主要主核心和影子主核心之间的冗余方案与主要远程核心和影子远程核心之间的冗余方案不同。例如,主要主核心和影子主核心实现紧密耦合的冗余方案,而主要远程核心和影子远程核心实现热备份、单侧扫描或其它已知的冗余方案。
在一实施例中,执行在不显著地中断主要模块的情况下将新的影子模块308“结合”(“marry”)到单独运行的主要模块302的处理。在一实施例中,结合处理花费少于或等于1秒的时间。主要模块302检测到新模块可用于接入并充当影子模块308。主要模块302和新影子模块308上的软件图像被比较,并且如果需要,那么更改新的影子模块软件图像以匹配主要模块的软件图像。来自主要模块302的主要主核心304的、冗余操作所需的所有数据通过模块之间的高速互连被复制到影子模块308的影子主核心310。复制的数据包括控制主要模块302的运行的所有变量数据(诸如分配的存储器、保存所有所需CPU寄存器状态的任务堆栈、以及保存转变中的数据流量的通信缓冲器)。
主要主核心304和影子主核心310在高速接口上完全同步。主核心的同步使得能够实现无扰(bumpless)控制故障切换,并维持完全连接的通信。在一实施例中,COMEX和TCP/IP堆栈消息两者通过故障切换情况被完全维持。故障切换转变是在无控制参数改变或控制状态改变的情况下完成的,只是控制工件在去往或来自外部设备的控制数据流中暂停少于1秒。
主核心304、310的冗余系统包括来自远程设备(连接到远程核心)的数据。数据由主要远程核心306扫描并写入共享的设备I/O表。主要主核心304读取设备I/O表上的数据,然后立即将数据复制到影子主核心310。然后主要主核心304和影子主核心310两者都使用该数据来执行控制处理,从而维持I/O值的同步。
从主要主核心和影子主核心的控制块到设备I/O表的所有写入由主要主核心304和影子主核心310两者执行并进行比较,从而允许两个核心在故障切换的情况下在每个设备表中维持所有输出数据的同步的副本。
在一实施例中,远程核心306、312的冗余系统不同于在锁步中操作的主核心304、310的冗余系统。例如,与主核心304、310相比,远程核心306、312能够执行不同的动作并运行不同类型的操作。虽然不同,但这些操作由主核心协调,这使得设备输入数据立即可用。主要远程核心306扫描来自连接的远程设备316和318的所有I/O数据。影子远程核心312仅形成到远程设备316和318的连接,但不扫描设备。这使得影子远程核心312能够在必要时快速地从主要远程核心306接管,但是I/O设备不会有双倍扫描消息的负担。
当检测到与主要远程核心306相比影子远程核心312具有到更多设备的连接时,用信号向远程核心306通知故障切换条件。如果是这种情况,那么影子远程核心312接管主要远程核心306的职责。
在一替代实施例中,主要远程核心306和影子远程核心312协同工作,其中如果存在到主要远程核心306的连接,那么每个设备将由主要远程核心306扫描,但是如果设备仅连接到影子远程核心312,那么影子远程核心312将执行对那个设备的扫描。
在一实施例中,每个远程核心维持到远程设备的独立以太网连接。
在一实施例中,通过要求在移动到其它任务之前由两个模块执行某些重要任务来实现主要模块和影子模块的同步。同步代码被放在每个模块的软件中,从而保护代码的重要部分,诸如数据库中的变化值或来自其它存储器的读取值。当一个模块到达同步点时,它等待一段时间,以便另一个模块也到达这一点。通常,同步发生得非常快,因为模块是紧密同步的。但是,如果两个模块未能在时间限制内在同步点相遇,那么模块尝试解决硬件问题或根据上述结合处理执行“热重新结合”处理。在一实施例中,同步时间限制是8毫秒。
为了说明的目的,参考主要模块302,在操作期间,主核心304和远程核心306连接并彼此通信。远程核心协议在输入扫描或“入扫描”、输出写入或“出扫描”、以及控制周期的维持时段期间与主核心304交互。“入扫描”是控制块运行之前的阶段,其中来自现场设备的数据值被收集到主核心块中以在控制块运行期间使用。“出扫描”是控制块运行之后的阶段,其中通过控制块运行计算出的数据值被发送到现场设备以维持处理的操作。以这种方式,处理控制系统形成反馈回路,从而使得控制系统能够对事件作出反应,并采取行动来纠正处理的问题。在一实施例中,主核心304和远程核心306之间的交互使用共享存储器中的三个数据存储。数据存储是设备I/O数据、设备配置数据以及驱动器状态数据。主核心304和远程核心306还使用与共享存储器数据存储分开的消息传送服务进行通信。在一实施例中,主要主核心304和影子主核心310还作为I/O扫描(或入扫描)处理的一部分共享数据,其中I/O扫描处理是主核心的周期处理的一部分。
图4示出根据本发明一实施例的用于数据入扫描和出扫描的主核心处理402和远程核心处理404之间的数据交互。如图所示,主核心处理402和远程核心处理404交互以将设备数据和状态链接到主核心处理402中的块和驱动器功能。在复合处理器入扫描406的开始,主核心交互处理408向远程核心404发送消息,从而指示其暂停设备输入表412的扫描更新。远程核心从驱动器输入扫描任务410暂停扫描更新,并向主核心交互处理408回复它准备好进行扫描。主核心交互处理408读取设备输入表412数据,将数据复制到其伙伴处理414,并将设备数据装载到块中。然后主核心处理向远程核心发送消息以继续扫描更新。远程核心继续更新设备表。
当主核心402执行出扫描416时,处理器将设备输出值传递到与远程核心404交互的主核心交互处理418。主核心交互处理418向远程核心404发送消息以暂停通过驱动器输出发送任务420向设备的写入。远程核心暂停设备写入任务并且向主核心处理响应其准备好进行出扫描。主核心交互处理418将输出值写入到共享设备输出表422。远程核心404将输出值从设备输出表422读取到驱动器输出发送任务420,然后继续设备写入。
在一实施例中,主核心与远程核心交互以执行维持任务(诸如安装设备)。在图5中,描述了安装设备的示例性处理。主核心502执行维持处理508,维持处理508从设备主机506取得设备数据。维持处理508向远程核心504发送消息,从而指示其通过驱动器控制任务510安装设备。远程核心任务510进行响应,从而确认安装指令。维持处理508将设备数据写入到共享的设备配置数据表512。远程核心任务510从设备配置数据表512读取设备数据并完成设备安装。
所示实施例中的设备配置表包含用于每个已安装设备的配置信息。当新的设备和关联的块被添加到系统中时,块包含用于该设备的文件信息,并且文件信息在DCI块中被加载到系统。
现在参考图6,主核心处理602监视连接到远程核心处理604的设备的状态。在所示实施例中,主核心602执行与远程核心处理604交互的维持处理606。维持处理606向远程核心604发送消息,从而指示其读取设备状态。远程核心604读取状态并响应状态就绪。远程核心604还将设备状态数据写入到共享的操作数据表610。然后,维持处理606从操作数据表610读取设备状态。在从操作数据表610成功读取设备状态数据后,维持处理606向远程核心604发送状态读取完成的消息。
设备I/O数据表610是主核心602和远程核心604之间的共享存储器空间。它包含去往和来自远程设备的I/O数据的点。设备输入数据由用于输入数据的主要远程核心扫描应用更新,并且刚好在控制块运行周期之前由主核心602读取。
在从表610读取设备I/O数据之后,将其从主要模块(例如,主要模块302)交换到影子模块(例如,影子模块308),然后将数据复制到DCI控制块。在运行控制块之后,将新计算出的值写入设备I/O表610,然后由远程核心604读取以将其分发到所连接的设备。
图7-12示出连接到各种现场设备的嵌入式外部设备集成器(eEDI)的示例性体系架构。
图7示出经由以太网网络704连接到若干现场设备的单个eEDI设备702。eEDI设备702包括连接到以太网网络704的以太网端口。现场设备706经由以太网端口直接连接到以太网网络704。网关设备708也连接到以太网网络704,并用于从以太网协议向串行协议进行翻译。现场设备710经由串行端口连接到网关设备708。网关设备708使能eEDI 702以太网连接和通过串行端口连接的现场设备710之间的通信。
图8示出连接到两个分开的以太网网络804的冗余eEDI设备802。分开的物理网络具有防止关于一个网络的网络问题影响另一网络的优点。此外,如果设备在其两个端口上具有完全相同的IP地址或MAC地址,那么该设备无法将这两个端口连接在同一个网络上。
eEDI设备802可通信地彼此连接,并且各自连接到分开的以太网网络804。现场设备806各自具有两个具有完全相同IP地址的以太网端口,并且连接到两个以太网网络804。如在先前图中那样,存在连接到以太网网络804的网关设备808。每个网关设备808经由以太网端口连接到以太网网络804之一,并且它们共享完全相同的IP地址。网关对象808为现场设备810将以太网协议翻译成串行协议。现场设备810经由两个串行端口连接到两个网关对象808,并且可以通过网关对象808与eEDI设备802通信。这种体系架构无法维持连接的单端口现场设备的冗余性。
图9示出连接到单个以太网网络906的冗余eEDI设备902和904。在这个实施例中,每个eEDI 902、904具有唯一的IP地址以允许其连接到单个以太网网络906。类似于图8,存在连接到以太网网络906的现场设备908。现场设备908各自具有有着不同IP地址的两个以太网端口。一个以太网端口连接到主要eEDI 902,另一个端口连接到影子eEDI 904。还存在利用分开的IP地址连接到以太网网络904的网关设备910和912。网关设备910连接到主要eEDI 902,并且网关设备912连接到eEDI 904。网关设备910和912为现场设备914将以太网协议翻译成串行协议。每个现场设备914具有两个串行端口,一个连接到网关设备910,另一个连接到网关设备912。
除了现场设备908和914之外,现场设备916也连接到以太网网络906。现场设备916各自具有带有唯一IP地址的单个以太网端口。为了冗余目的,现场设备916维持经由以太网端口到eEDI 902和eEDI 904两者的组合连接。网关设备918也沿着单个组合的以太网连接而连接到eEDI 902和eEDI 904。网关设备918为两个现场设备920将以太网协翻译成的串行协议。现场设备920使用网关设备918通过单个串行端口与eEDI 902和eEDI 904两者通信。
在一实施例中,由于连接到eEDI系统的单端口现场设备可以处理多个同时的连接,因此主要模块(例如,主要模块302)和影子模块(例如,影子模块308)各自建立与现场设备的分开的连接。这个实施例中的主要模块执行扫描任务和写入任务,而影子模块通过最低限度的周期性通信维持联系以验证连接性。
可替代地,如果单端口现场设备不能处理多个同时的连接,那么影子模块将仅执行简单的ping以验证连接性而不维持连接。
在一实施例中,连接到共用网络的双端口现场设备维持一个端口与主要模块(例如,主要模块302)以及另一个端口与影子模块(例如,影子模块308)的连接,如图9中所示。这使得影子模块能够在现场设备发生端口故障的情况下接管。但是,如果在这种配置中连接了多个现场设备并且一些现场设备的主要端口出现故障而其它设备的影子端口出现故障,那么系统必须确定哪个模块作为主要模块运行并由此确定要维持哪些现场设备。
可替代地,共用网络允许设备端口切换,其中主要模块在端口上检测到端口故障时切换其连接到的端口。
在一实施例中,现场设备包括内部冗余性。如果现场设备的主要模块发生故障,那么现场设备的影子模块接管主要模块的IP地址并承担控制。现场设备实际上是单端口现场设备。
图10示出通过串行端口终端组件(TA)设备1004连接到现场设备1006和1008的单个eEDI设备1002的图。eEDI 1002经由串行TA连接器连接到TA 1004。TA 1004包括四个串行端口,但替代实施例可以包括不同数量的串行端口。现场设备1006共享TA 1004的单个串行端口并使用使能共享端口使用的协议进行通信。现场设备1008连接到TA 1004的分开的串行端口。
现在参考图11,示出通过串行TA连接器1106和1108经由串行端口连接到双端口现场设备1110和1112的冗余eEDI设备1102和1104的图。主要eEDI 1102经由串行端口连接到TA 1106以与现场设备1110和1112通信。影子或备用eEDI 1104经由第二串行端口连接到TA1108以与现场设备1110和1112通信。现场设备1110在每个TA 1106和1108上共享单个串行端口连接,并使用使能共享串行端口的协议。现场设备1112在每个TA1106和1108上连接到分开的串行端口。主要eEDI 1102负责针对现场设备的扫描和写入任务,但是在系统故障的情况下,影子eEDI 1104接管该责任并变成主要eEDI。
图12示出连接到串行TA连接器1206和1208的冗余eEDI设备1202和1204的图。现场设备1210是连接到TA设备1206和1208两者上的串行端口的单端口现场设备。通过使用防止冲突的协议,串行连接在主要eEDI 1202和影子eEDI 1204之间共享。在一实施例中,主要eEDI 1202在共享的总线上通信,而主要eEDI1202和影子eEDI 1204都监听该总线。现场设备1212通过开关设备1214连接到TA设备1206和1208。TA设备1206和1208与开关设备1214之间的连接使用不防止冲突的不同协议,如到现场设备1210的连接那样。开关设备1214对于让单端口现场设备1212连接到eEDI设备1202和1204两者是必需的。
提供摘要和发明内容是为了帮助读者快速确定技术公开的实质。它们被提交,但应当理解的是,它们将不用来解释或限制权利要求的范围或含义。发明内容的提供是为了以简化的形式介绍在具体实施方式中进一步描述的概念的选择。发明内容不意在标识所要求保护的主题的关键特征或必要特征,也不意在用于帮助确定所要求保护的主题。
为了说明的目的,程序和其它可执行程序部件(诸如操作系统)在本文中被示为离散的块。但是,应当认识到的是,这种程序和部件在不同时间驻留在计算设备的不同存储部件中,并且由设备的(一个或多个)数据处理器执行。
虽然结合示例性计算系统环境进行了描述,但是本发明的软件方面的实施例与许多其它通用或专用计算系统环境或配置一起操作。计算系统环境并不意在对本发明的任何方面的使用范围或功能性提出任何限制。而且,计算系统环境不应当被解释为具有与示例性操作环境中所示的部件中的任何一个或部件组合相关的任何依赖性或要求。可以适用于本发明的众所周知的计算系统、环境和/或配置的示例包括但不限于个人计算机、服务器计算机、手持式或膝上型设备、多处理器系统、基于微处理器的系统、机顶盒、可编程消费电子产品、移动电话、网络PC、小型计算机、大型计算机、包括上述系统或设备中的任何一种的分布式计算环境等等。
可以在数据和/或处理器可执行指令(诸如程序模块)的一般上下文中描述本发明的各方面的实施例,其中指令存储在一个或多个有形的、非暂态存储介质中并由一个或多个处理器或其它设备执行。一般而言,程序模块包括但不限于执行特定任务或实现特定抽象数据类型的例程、程序、对象、部件和数据结构。本发明的各方面还可以在分布式计算环境中实践,其中任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于包括存储器存储设备的本地和远程存储介质中。
在操作中,处理器、计算机和/或服务器可以执行处理器可执行指令(例如,软件、固件和/或硬件),诸如本文所示实现本发明的各方面的那些指令。
本发明的软件方面的实施例可以用处理器可执行指令来实现。处理器可执行指令可以被组织成有形处理器可读存储介质上的一个或多个处理器可执行部件或模块。本发明的各方面可以用这种部件或模块的任何数量和组织来实现。例如,本发明的各方面不限于特殊的处理器可执行指令或图中所示并在本文描述的特殊部件或模块。本发明的各方面的其它实施例可以包括具有比本文所示和描述的更多或更少功能的不同的处理器可执行指令。
除非另有说明,否则本文示出和描述的本发明的各方面的实施例中的操作的执行次序不是必须的。即,除非另有说明,否则操作可以以任何次序执行,并且本发明的各方面的实施例可以包括比本文公开的更多或更少的操作。例如,可以预期在另一个操作之前、同时或之后执行特定操作在本发明的各方面的范围内。
当介绍本发明的各方面或其实施例的元素时,冠词“一个”、“该”和“所述”意味着存在一个或多个元素。术语“包括”、“包含”和“具有”意在是包容性的并且意味着除了所列出的元素之外可以存在附加元素。
鉴于以上所述,将看出的是,实现了本发明的各方面的若干优点并取得了其它有利的结果。
不是所示出或描述的所有绘出的部件都是需要的。此外,一些实现和实施例可以包括附加部件。在不背离如本文所阐述的权利要求的精神或范围的情况下,可以进行部件的布置和类型的变化。此外,可以提供不同或更少的部件,并且可以组合部件。可替代地或此外,部件可以由若干部件来实现。
上面的描述通过示例而非限制说明了本发明的各方面。这种描述使得本领域技术人员能够实现和使用本发明的各方面,并且描述了本发明的各方面的若干实施例、适应、变化、替代方案和使用,包括目前认为是执行本发明的各方面的最佳模式的内容。此外,应当理解的是,本发明的各方面在其应用上不限于在以下描述中阐述或在附图中示出的部件的构造和布置的细节。本发明的各方面能够具有其它实施例并且以各种方式被实践或执行。而且,应当理解的是,本文使用的措辞和术语是为了描述的目的,不应当被视为限制。
已经详细描述了本发明的各方面,清楚的是,在不背离如所附权利要求定义的本发明的各方面的范围的情况下,修改和变化是可能的。预期在不背离本发明的各方面的范围的情况下,可以在上述构造、产品和处理中进行各种改变。在前面的说明书中,已经参考附图描述了各种优选实施例。但是,清楚的是,在不背离如下面权利要求中所阐述的本发明的各个方面的更广泛范围的情况下,可以对本发明进行各种修改和改变,并且可以实现附加的实施例。因而,说明书和附图应当被认为是说明性而不是限制性的。
Claims (20)
1.一种用于实现对处理控制系统中的设备的控制的多核心系统,包括:
主要控制处理设备,耦合到第一多个设备的第一网络和第二多个设备的第二网络,用于处理设备之间的通信,所述主要控制处理设备包括:
主要主核心,被配置用于控制第一多个设备之间的在第一网络上的通信;以及
主要远程核心,被配置用于控制第二多个设备之间的在第二网络上的通信,其中主要远程核心与主要主核心共享处理;以及
影子控制处理设备,耦合到第一网络和第二网络,用于处理设备之间的冗余通信,所述影子控制处理设备包括:
影子主核心,被配置用于控制第一多个设备之间的在第一网络上的通信;以及
影子远程核心,被配置用于控制第二多个设备之间的在第二网络上的通信。
2.如权利要求1所述的系统,其中,主要主核心和影子主核心被同步,以使得由主要主核心接收的数据被与影子主核心共享并且主要主核心和影子主核心两者同时地处理数据。
3.如权利要求1所述的系统,其中,主要远程核心连接到第二多个设备并处理从第二多个设备接收的全部的数据,影子远程核心连接到第二多个设备但是除非主要远程核心发生故障否则影子远程核心不处理来自第二多个设备的数据。
4.如权利要求1所述的系统,其中,主要主核心和影子主核心被同步,以使得由主要主核心接收的数据被与影子主核心共享并且主要主核心和影子主核心两者同时地处理数据;并且
其中,主要远程核心连接到第二多个设备并处理从第二多个设备接收的数据,影子远程核心连接到第二多个设备但是除非主要远程核心发生故障否则影子远程核心不处理来自第二多个设备的数据。
5.如权利要求1所述的系统,其中,第一网络是网状网络。
6.如权利要求1所述的系统,其中,第二网络使用以下协议中的至少一个:MODBUS TCP/IP协议;以太网协议;以及串行协议。
7.如权利要求1所述的系统,还包括:耦合到主核心和远程核心两者的共享存储器。
8.如权利要求7所述的系统,其中,主核心和远程核心通过对共享存储器进行写入和从共享存储器进行读取来进行通信。
9.如权利要求1所述的系统,其中,主要主核心和影子主核心紧密地耦合以经由远程核心中的一个或两者向第一多个设备和第二多个设备提供容错控制。
10.如权利要求1所述的系统,其中,远程核心支持用于与第二网络上的第二多个设备进行通信的多个通信驱动器。
11.一种用于使用多核心处理设备来实现对处理控制系统中的设备的控制的方法,包括:
由主要控制处理设备控制第一网络上的第一多个设备和第二网络上的第二多个设备之间的通信,该主要控制处理设备包括主要主核心和主要远程核心并且耦合到第一网络和第二网络,所述控制包括:
由主要主核心接收来自第一网络上的第一多个设备的数据;
由主要远程核心接收来自第二网络上的第二多个设备的数据;
由主要主核心经由主要远程核心接收来自第二网络上的第二多个设备的数据;
由主要主核心与影子主核心共享接收到的数据;
由主要主核心将接收到的数据处理成处理后的控制数据;
由主要主核心将处理后的控制数据发送给第一多个设备和主要远程核心;以及
由主要远程核心将处理后的控制数据发送给第二多个设备;以及
由影子控制处理设备控制第一多个设备和第二多个设备之间的冗余通信,该影子控制处理设备包括影子主核心和影子远程核心并且耦合到第一网络和第二网络,所述控制包括:
由影子主核心接收来自主要主核心的数据;
由影子主核心将从主要主核心接收的数据处理成冗余的处理后的控制数据;以及
由影子远程核心维持与第二网络上的第二多个设备的连接。
12.如权利要求11所述的方法,还包括:对主要主核心和影子主核心进行同步,以使得由主要主核心接收的数据被与影子主核心共享并且主要主核心和影子主核心两者同时地处理数据。
13.如权利要求11所述的方法,其中,主要远程核心连接到第二多个设备并处理从第二多个设备接收的数据,影子远程核心连接到第二多个设备但是除非主要远程核心发生故障否则影子远程核心不处理来自第二多个设备的数据。
14.如权利要求11所述的方法,还包括:对主要主核心和影子主核心进行同步,以使得由主要主核心接收的数据被与影子主核心共享并且主要主核心和影子主核心两者同时地处理数据;并且
其中,主要远程核心连接到第二多个设备并处理从第二多个设备接收的数据,影子远程核心连接到第二多个设备但是除非主要远程核心发生故障否则影子远程核心不处理来自第二多个设备的数据。
15.如权利要求11所述的方法,还包括:将第二网络配置成根据以下协议中的至少一个进行通信:MODBUS TCP/IP协议;以太网协议;以及串行协议。
16.如权利要求11所述的方法,其中,主核心和远程核心通过对共享存储器进行写入和从共享存储器进行读取来进行通信。
17.如权利要求11所述的方法,其中,主要主核心和影子主核心紧密地耦合以经由远程核心中的一个或两者向第一多个设备和第二多个设备提供容错控制。
18.如权利要求11所述的方法,其中,远程核心支持用于与第二网络上的第二多个设备进行通信的多个通信驱动器。
19.一种处理控制系统,包括:
第一网络,连接第一多个现场设备;
第二网络,连接第二多个现场设备;
嵌入式外部设备集成器,包括:
主要控制处理设备,耦合到第一多个设备的第一网络和第二多个设备的第二网络,用于处理设备之间的通信,该主要控制处理设备包括:
主要主核心,被配置用于控制第一多个设备之间的在第一网络上的通信;以及
主要远程核心,被配置用于控制第二多个设备之间的在第二网络上的通信,其中主要远程核心与主要主核心共享处理;以及
影子控制处理设备,耦合到第一网络和第二网络,用于处理设备之间的冗余通信,该影子控制处理设备包括:
影子主核心,被配置用于控制第一多个设备之间的在第一网络上的通信;以及
影子远程核心,被配置用于控制第二多个设备之间的在第二网络上的通信。
20.如权利要求19所述的处理控制系统,其中,主要主核心和影子主核心被同步,以使得由主要主核心接收的数据被与影子主核心共享并且主要主核心和影子主核心两者同时地处理数据;并且
其中,主要远程核心连接到第二多个设备并处理从第二多个设备接收的数据,影子远程核心连接到第二多个设备但是除非主要远程核心发生故障否则影子远程核心不处理来自第二多个设备的数据。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2016/059636 WO2018080528A1 (en) | 2016-10-31 | 2016-10-31 | Multi-core device with separate redundancy schemes in a process control system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109906440A true CN109906440A (zh) | 2019-06-18 |
CN109906440B CN109906440B (zh) | 2023-04-18 |
Family
ID=62025328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201680090574.XA Active CN109906440B (zh) | 2016-10-31 | 2016-10-31 | 处理控制系统中的具有分开的冗余方案的多核心设备 |
Country Status (7)
Country | Link |
---|---|
EP (1) | EP3532931B1 (zh) |
CN (1) | CN109906440B (zh) |
ES (1) | ES2915554T3 (zh) |
HU (1) | HUE059426T2 (zh) |
PL (1) | PL3532931T3 (zh) |
PT (1) | PT3532931T (zh) |
WO (1) | WO2018080528A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114115140A (zh) * | 2021-10-28 | 2022-03-01 | 南京国电南自维美德自动化有限公司 | 多核主控制器、主辅多核控制器间数据同步系统和方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113254070B (zh) | 2020-02-07 | 2024-01-02 | 阿里巴巴集团控股有限公司 | 加速单元、片上系统、服务器、数据中心和相关方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070136047A1 (en) * | 2005-12-12 | 2007-06-14 | Texas Instruments Incorporated | Preserving emulation capability in a multi-core system-on-chip device |
US20090132059A1 (en) * | 2007-11-13 | 2009-05-21 | Schultz Ronald E | Industrial controller using shared memory multicore architecture |
US20100325485A1 (en) * | 2009-06-22 | 2010-12-23 | Sandeep Kamath | Systems and methods for stateful session failover between multi-core appliances |
CN103493037A (zh) * | 2011-03-16 | 2014-01-01 | 迈思肯系统公司 | 用于机器视觉应用的多核心分布式处理 |
CN104462004A (zh) * | 2013-08-28 | 2015-03-25 | 威盛电子股份有限公司 | 微处理器及其处理核间同步运作的方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU4669397A (en) * | 1996-10-04 | 1998-04-24 | Fisher Controls International Inc. | Process control network with redundant field devices and busses |
US8359112B2 (en) * | 2006-01-13 | 2013-01-22 | Emerson Process Management Power & Water Solutions, Inc. | Method for redundant controller synchronization for bump-less failover during normal and program mismatch conditions |
US8856522B2 (en) * | 2007-02-27 | 2014-10-07 | Rockwell Automation Technologies | Security, safety, and redundancy employing controller engine instances |
US7870299B1 (en) * | 2008-02-06 | 2011-01-11 | Westinghouse Electric Co Llc | Advanced logic system |
US8503459B2 (en) * | 2009-05-05 | 2013-08-06 | Citrix Systems, Inc | Systems and methods for providing a multi-core architecture for an acceleration appliance |
US8327181B2 (en) * | 2009-06-22 | 2012-12-04 | Citrix Systems, Inc. | Systems and methods for failover between multi-core appliances |
US8516355B2 (en) * | 2011-02-16 | 2013-08-20 | Invensys Systems, Inc. | System and method for fault tolerant computing using generic hardware |
-
2016
- 2016-10-31 PL PL16920014.4T patent/PL3532931T3/pl unknown
- 2016-10-31 HU HUE16920014A patent/HUE059426T2/hu unknown
- 2016-10-31 ES ES16920014T patent/ES2915554T3/es active Active
- 2016-10-31 WO PCT/US2016/059636 patent/WO2018080528A1/en unknown
- 2016-10-31 CN CN201680090574.XA patent/CN109906440B/zh active Active
- 2016-10-31 EP EP16920014.4A patent/EP3532931B1/en active Active
- 2016-10-31 PT PT169200144T patent/PT3532931T/pt unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070136047A1 (en) * | 2005-12-12 | 2007-06-14 | Texas Instruments Incorporated | Preserving emulation capability in a multi-core system-on-chip device |
US20090132059A1 (en) * | 2007-11-13 | 2009-05-21 | Schultz Ronald E | Industrial controller using shared memory multicore architecture |
US20100325485A1 (en) * | 2009-06-22 | 2010-12-23 | Sandeep Kamath | Systems and methods for stateful session failover between multi-core appliances |
CN103493037A (zh) * | 2011-03-16 | 2014-01-01 | 迈思肯系统公司 | 用于机器视觉应用的多核心分布式处理 |
CN104462004A (zh) * | 2013-08-28 | 2015-03-25 | 威盛电子股份有限公司 | 微处理器及其处理核间同步运作的方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114115140A (zh) * | 2021-10-28 | 2022-03-01 | 南京国电南自维美德自动化有限公司 | 多核主控制器、主辅多核控制器间数据同步系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
ES2915554T3 (es) | 2022-06-23 |
PL3532931T3 (pl) | 2022-08-22 |
HUE059426T2 (hu) | 2022-11-28 |
PT3532931T (pt) | 2022-06-20 |
CN109906440B (zh) | 2023-04-18 |
EP3532931A1 (en) | 2019-09-04 |
EP3532931A4 (en) | 2020-06-24 |
WO2018080528A1 (en) | 2018-05-03 |
EP3532931B1 (en) | 2022-04-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7257329B2 (ja) | オープンアーキテクチャ産業制御システム | |
CN108023809A (zh) | 在过程控制系统中具有控制件的多协议网关 | |
US10165043B2 (en) | Multi-core device with separate redundancy schemes in a process control system | |
US20160149861A1 (en) | Firewall with Application Packet Classifier | |
CN103532753B (zh) | 一种基于内存换页同步的双机热备方法 | |
CN101401070B (zh) | 用于管理不同版本应用程序的方法以及自动化系统 | |
GB2623439A (en) | Industrial control system architecture for real-time simulation and process control | |
CN110320793A (zh) | 用于构建冗余通信连接的方法和故障安全的控制单元 | |
CN109656210A (zh) | 工业数据采集方法、系统及主系统 | |
CN105323330A (zh) | 采用网络环拓扑的工业控制装置的互联网协议寻址 | |
GB2619801A (en) | Publish/subscribe protocol for real-time process control | |
CN109906440A (zh) | 处理控制系统中的具有分开的冗余方案的多核心设备 | |
CN104126287B (zh) | 更新网络中的参数 | |
US20150088281A1 (en) | Systems and methods to overlay behaviors on foundation fieldbus alerts | |
CN109884971A (zh) | 远程控制方法、装置及系统 | |
US20140310435A1 (en) | Relay interface module for a distributed control system | |
US8937555B2 (en) | Systems and methods to overlay behaviors on foundation fieldbus alerts | |
CN105353751B (zh) | Hmi控制器冗余切换控制方法 | |
JP2016015065A (ja) | プロセス監視制御システム | |
EP3719646B1 (en) | Method for communicating in a network-distributed process control system and network-distributed process control system | |
CN113497795A (zh) | 生产设备的访问控制方法、设备控制器及云服务系统 | |
EP3029536A1 (en) | Systems and methods to overlay behaviors on foundation fieldbus alerts | |
EP4102365A1 (en) | Coordinating a single program running on multiple host controllers | |
CN203522780U (zh) | 一种控制通讯补偿结构 | |
GB2621485A (en) | Ease of node switchovers in process control systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |