CN113741248B - 一种边缘计算控制器和控制系统 - Google Patents
一种边缘计算控制器和控制系统 Download PDFInfo
- Publication number
- CN113741248B CN113741248B CN202110931002.2A CN202110931002A CN113741248B CN 113741248 B CN113741248 B CN 113741248B CN 202110931002 A CN202110931002 A CN 202110931002A CN 113741248 B CN113741248 B CN 113741248B
- Authority
- CN
- China
- Prior art keywords
- state
- virtual controller
- controller
- slave
- host
- 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.)
- Active
Links
- 238000004364 calculation method Methods 0.000 title description 2
- 238000003860 storage Methods 0.000 claims abstract description 45
- 238000004891 communication Methods 0.000 claims description 16
- 238000012544 monitoring process Methods 0.000 claims description 16
- 238000000034 method Methods 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 11
- 230000002159 abnormal effect Effects 0.000 claims description 9
- 230000003993 interaction Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 9
- 238000011112 process operation Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000003745 diagnosis Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000009977 dual effect Effects 0.000 description 3
- 238000012840 feeding operation Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- 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
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24182—Redundancy
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Hardware Redundancy (AREA)
Abstract
本文公开一种边缘计算控制器和控制系统,包括:相互隔离的两个虚拟控制器,其中一虚拟控制器处于主机状态,另一虚拟控制器处于从机状态;其中,处于主机状态的虚拟控制器设置为:对被管控设备进行运行控制处理;向处于从机状态的虚拟控制器发送第一运行信号;处于从机状态的虚拟控制器设置为:上传接收到的第一运行信号的第一数据到预设的共享存储区;读取共享存储区中的第一数据,并根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态;其中,第一运行信号包括:处于主机状态的虚拟控制器的第一心跳信号。本发明实施例在单物理控制器的硬件架构基础上实现了主从冗余,避免了由冗余网链路造成的主从切换延时。
Description
技术领域
本文涉及但不限于自动化技术,尤指一种边缘计算控制器和控制系统。
背景技术
控制器在工业现场以现场设备为被控对象完成指定控制逻辑运算与运转过程监控功能。主要功能包括:现场模块数据采集、控制算法执行、现场模块数据输出、以及网络通信功能。控制器设备是整个控制系统控制回路的核心设备,因此该设备的可靠性是整个工业现场安全的关键,直接关系到工厂的生产过程安全。
当前在工业控制领域,大部分厂家提升控制器设备可靠性方法主要是采用双控制器硬件冗余架构,一个控制器作为物理主机,另一个作为物理从机;物理主机工作,完成运算、控制和通信,并定期通过冗余网链路向从机发送逻辑运算结果(也称为运算过程数据);主机发生故障时,从机升为主机,继续完成运算、控制和通信,从而确保对现场设备的控制。图1为相关技术中的双控制器硬件冗余架构示意图,如图1所示;双控制器分别为物理主机和物理从机,为两台控制器物理机,通过冗余网链路进行数据通信。物理主机和物理从机内部运行操作系统软件以及工业控制软件,一般默认设置物理主机处于主机状态,物理从机处于从机状态。主机状态是指该控制器物理机为工作机,完成对现场设备的数据采集、运算和控制等运行控制处理;从机状态是指该控制器物理机为备份机,正常情况下不对现场设备进行控制,仅对接收的物理主机发送的逻辑运算结果进行数据备份;物理从机通过冗余网链路周期监测物理主机的工作状态,当监测到物理主机发生故障时,物理从机通过冗余网命令方式进行主从切换处理,即将物理主机的主机状态设置为从机状态,将自身由从机状态设置为主机状态,从而对现场设备继续进行运行控制处理,从而保证现场设备控制连续。
上述双控制器硬件冗余架构,物理主机和物理从机之间通过以太网作为通信介质传输备份数据;由于以太网传输链路的限制,在指定的时间内可完成的备份数据量较小,导致数据备份不全,物理主机和物理从机切换后,无法保证对现场设备控制的连续性;另外,因为备份数据在网络传输时间不确定性,物理主机和物理从机切换存在切换延时问题。如何实现对现场设备进行实时连续控制,成为一个有待解决的问题。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本发明实施例提供一种边缘计算控制器和控制系统,能够降低主从切换延时,实现对被管控设备进行实时连续控制。
本发明实施例提供了一种边缘计算控制器,包括:相互隔离的两个虚拟控制器,其中一个虚拟控制器处于主机状态,另一个虚拟控制器处于从机状态;其中,
处于主机状态的虚拟控制器设置为:对被管控设备进行运行控制处理;向处于从机状态的虚拟控制器发送第一运行信号;
处于从机状态的虚拟控制器设置为:上传接收到的第一运行信号的第一数据到预设的共享存储区;读取共享存储区中的第一数据,并根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态;
其中,所述第一运行信号包括:处于主机状态的虚拟控制器的第一心跳信号。
另一方面,本发明实施例还提供一种控制系统,包括:第一边缘计算控制器和第二边缘计算控制器,第一边缘计算控制器处于主机状态,第二边缘计算控制器处于从机状态;第一边缘计算控制器包含相互隔离的两个虚拟控制器,其中一个虚拟控制器处于主机状态,另一个虚拟控制器处于从机状态;其中,
处于主机状态的虚拟控制器设置为:对被管控设备进行运行控制处理;向处于从机状态的虚拟控制器发送第一运行信号;
处于从机状态的虚拟控制器设置为:上传接收到的第一运行信号的第一数据到预设的共享存储区;读取共享存储区中的第一数据,并根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态;根据第一数据确定将处于主机状态的虚拟控制器切换至从机状态,且确定自身发生故障时,将自身所在的第一边缘计算控制器切换至从机状态;触发第二边缘计算控制器切换至主机状态;
其中,所述第一运行信号包括:处于主机状态的虚拟控制器的第一心跳信号。
本申请技术方案包括:相互隔离的两个虚拟控制器,其中一虚拟控制器处于主机状态,另一虚拟控制器处于从机状态;其中,处于主机状态的虚拟控制器设置为:对被管控设备进行运行控制处理;向处于从机状态的虚拟控制器发送第一运行信号;处于从机状态的虚拟控制器设置为:上传接收到的第一运行信号的第一数据到预设的共享存储区;读取共享存储区中的第一数据,并根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态;其中,第一运行信号包括:处于主机状态的虚拟控制器的第一心跳信号。本发明实施例在单物理控制器的硬件架构基础上实现了主从冗余,避免了由冗余网链路造成的主从切换延时。进一步的,在共享存储区保存过程运算数据,主从切换时从共享存储区直接读取过程运算数据,避免了延时对被管控设备的控制造成影响,降低了现场扰动。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
图1为相关技术中的双控制器硬件冗余架构示意图;
图2为本发明实施例边缘计算控制器的结构框图;
图3为本发明实施例控制系统的组成框图;
图4为本发明应用示例边缘计算控制器的组成框图;
图5为本应用示例共享内存区存储的数据示意图;
图6为本发明应用示例处于主机状态的虚拟控制器的工作流程图;
图7为本发明应用示例处于从机状态的虚拟控制器的工作流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图2为本发明实施例边缘计算控制器的结构框图,如图2所示,包括:相互隔离的两个虚拟控制器,其中一个虚拟控制器处于主机状态,另一个虚拟控制器处于从机状态;其中,
处于主机状态的虚拟控制器设置为:对被管控设备进行运行控制处理;向处于从机状态的虚拟控制器发送第一运行信号;
处于从机状态的虚拟控制器设置为:上传接收到的第一运行信号的第一数据到预设的共享存储区;读取共享存储区中的第一数据,并根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态;
其中,第一运行信号包括:处于主机状态的虚拟控制器的第一心跳信号。
在一种示例性实例中,本发明实施例两个虚拟控制器分别部署实时操作系统与业务应用软件。
本发明实施例在单物理控制器的硬件架构基础上实现了主从冗余,避免了由冗余网链路造成的主从切换延时;利用虚拟机独立隔离运行技术,在边缘计算控制器内部建立两个彼此无故障耦合的虚拟控制器,能够有效提高控制器系统运行的可靠性。
在一种示例性实例中,本发明实施例共享存储区可以包括共享内存区。
在一种示例性实例中,本发明实施例被管控设备包括:
在一种示例性实例中,本发明实施例处于从机状态的虚拟控制器设置为根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态,包括:
根据第一数据确定第一心跳信号更新正常,且确定处于主机状态的虚拟控制器未发生故障时,保持处于主机状态的虚拟控制器为主机状态;
根据第一数据确定第一心跳信号停止更新、或根据第一心跳信号确定处于主机状态的虚拟控制器发生故障时,将处于主机状态的虚拟控制器由主机状态切换至从机状态。
在一种示例性实例中,本发明实施例处于从机状态的虚拟控制器还设置为进行以下一项或任意组合的业务应用处理:
采集被管控设备的运行数据;
根据运行数据,获得对被管控设备进行控制的逻辑运算结果;
输出逻辑运算结果到被管控设备,以控制被管控设备;
与上位机软件进行业务应用数据的通信交互;
其中,业务应用数据包括以下一项或任意组合:运行数据、逻辑运算结果和逻辑运算结果输出到的被管控设备。
在一种示例性实例中,本发明实施例:
处于主机状态的虚拟控制器还设置为:监测到业务应用处理发生异常时,确定处于主机状态的虚拟控制器自身发生故障,并上传自身发生故障的第一监测数据至共享存储区;
处于从机状态的虚拟控制器还设置为:读取共享存储区中的第一监测数据,并根据第一监测数据将处于主机状态的虚拟控制器切换至从机状态。
在一种示例性实例中,本发明实施例:
处于从机状态的虚拟控制器还设置为:向处于主机状态的虚拟控制器发送第二运行信号;将处于主机状态的虚拟控制器由主机状态切换至从机状态之后,读取共享存储区中的第二数据,并根据第二数据确定是否将自身由从机状态切换至主机状态;
处于主机状态的虚拟控制器设置为:上传接收到的第二运行信号的第二数据到预设的共享存储区;
其中,第一运行信号包括:处于主机状态的虚拟控制器的第一心跳信号。
在一种示例性实例中,本发明实施例处于从机状态的虚拟控制器设置为根据第二数据确定是否将自身由从机状态切换至主机状态,包括:
根据第二心跳信号确定处于从机状态的虚拟控制器自身未发生故障时,将处于从机状态的虚拟控制器自身由从机状态切换至主机状态;
根据第二心跳信号确定处于从机状态的虚拟控制器自身发生故障时,保持处于从机状态的虚拟控制器为从机状态。
在一种示例性实例中,本发明实施例处于从机状态的虚拟控制器还设置为:
将处于从机状态的虚拟控制器自身由从机状态切换至主机状态之前,确定处于从机状态的虚拟控制器的自身的硬件组成是否正常;确定处于从机状态的虚拟控制器的自身的硬件组成正常时,继续执行将处于从机状态的虚拟控制器自身由从机状态切换至主机状态的处理;确定处于从机状态的虚拟控制器的自身的硬件组成异常时,停止执行将处于从机状态的虚拟控制器自身由从机状态切换至主机状态的处理;
其中,硬件组成包括以下一项或任意组合:中央处理器、网络连接和存储介质。
在一种示例性实例中,本发明实施例:
处于主机状态的虚拟控制器还设置为:上传对被管控设备进行控制的逻辑运算结果至共享存储区;
处于从机状态的虚拟控制器还设置为:切换至主机状态后,读取逻辑运算结果,以根据读取的逻辑运算结果对被管控设备进行控制。
本发明实施例,在共享存储区保存过程运算数据,主从切换时从共享存储区直接读取过程运算数据,避免了延时对被管控设备的控制造成影响,降低了现场扰动。通过共享存储区提高冗余数据量,缩短了故障时主从切换的时间。
在一种示例性实例中,本发明实施例处于从机状态的虚拟控制器还设置为:保持处于从机状态的虚拟控制器自身为从机状态之后,将被管控设备设置为安全状态,并进行报警。
在一种示例性实例中,本发明实施例共享存储区可以包含以下三个部分:用于存储虚拟控制器的主机状态和从机状态的第一区域;用于存储第一数据和第二数据、第一监测数据、和根据第一数据和第二数据确定两个虚拟控制器是否发生故障的诊断数据的第二区域;以及用于存储处于主机状态的虚拟控制器对被管控设备进行控制的逻辑运算结果的第三区域;
在一种示例性实例中,本发明实施例边缘计算控制器还设置有:对第一区域中包含的数据进行数据结构设置的接口;对第二区域中包含的数据进行数据结构设置的接口;
在一种示例性实例中,本发明实施例设置处于主机状态的虚拟控制器对第三区域中的逻辑运算结果具有读写权限,处于从机状态的虚拟控制器对第三区域中的逻辑运算结果仅具有读权限。
图3为本发明实施例控制系统的组成框图,如图3所示,包括:第一边缘计算控制器和第二边缘计算控制器,第一边缘计算控制器处于主机状态,第二边缘计算控制器处于从机状态;第一边缘计算控制器包含相互隔离的两个虚拟控制器,其中一个虚拟控制器处于主机状态,另一个虚拟控制器处于从机状态;其中,
处于主机状态的虚拟控制器设置为:对被管控设备进行运行控制处理;向处于从机状态的虚拟控制器发送第一运行信号;
处于从机状态的虚拟控制器设置为:上传接收到的第一运行信号的第一数据到预设的共享存储区;读取共享存储区中的第一数据,并根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态;根据第一数据确定将处于主机状态的虚拟控制器切换至从机状态,且确定自身发生故障时,将自身所在的第一边缘计算控制器切换至从机状态;触发第二边缘计算控制器切换至主机状态;
其中,第一运行信号包括:处于主机状态的虚拟控制器的第一心跳信号。
本发明实施例第一边缘计算控制器和第二边缘计算控制器只是相对而言,当第二边缘计算控制器切换至主机状态时,其中包含第一边缘计算控制器的组成及功能,可以进行被管控设备的运行控制。第一边缘计算控制器和第二边缘计算控制器之间的切换,可以参照双控制器硬件冗余架构的相关原理执行,在此不做赘述。为区分第二边缘计算控制器中包含的虚拟控制器,图3将第一边缘计算控制器中的虚拟控制器分别定义为第一虚拟控制器和第二虚拟控制器,将第二边缘计算控制器中的虚拟控制器分别定义为第三虚拟控制器和第四虚拟控制器,第二边缘计算控制器切换至主机状态时,按照预设策略,将第三虚拟控制器和第四虚拟控制器的中其中一个设置为主机状态,另外一个设置为从机状态。
本发明实施例在单物理控制器的硬件架构基础上实现了主从冗余,避免了由冗余网链路造成主从切换延时;采用双控制器物理硬件架构,提升了控制系统的安全性,实现了基于边缘计算控制器与虚拟控制器的双重冗余机制,更好的提高了现场控制器系统的健壮性与容错性。
在一种示例性实例中,本发明实施例两个虚拟控制器分别部署实时操作系统与业务应用软件。
在一种示例性实例中,本发明实施例共享存储区可以包括共享内存区。
在一种示例性实例中,本发明实施例处于从机状态的虚拟控制器设置为根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态,包括:
根据第一数据确定第一心跳信号更新正常,且确定处于主机状态的虚拟控制器未发生故障时,保持处于主机状态的虚拟控制器为主机状态;
根据第一数据确定第一心跳信号停止更新、或根据第一心跳信号确定处于主机状态的虚拟控制器发生故障时,将处于主机状态的虚拟控制器由主机状态切换至从机状态。
在一种示例性实例中,本发明实施例处于从机状态的虚拟控制器还设置为进行以下一项或任意组合的业务应用处理:
采集被管控设备的运行数据;
根据运行数据,获得对被管控设备进行控制的逻辑运算结果;
输出逻辑运算结果到被管控设备,以控制被管控设备;
与上位机软件进行业务应用数据的通信交互;
其中,业务应用数据包括以下一项或任意组合:运行数据、逻辑运算结果和逻辑运算结果输出到的被管控设备。
在一种示例性实例中,本发明实施例:
处于主机状态的虚拟控制器还设置为:监测到业务应用处理发生异常时,确定处于主机状态的虚拟控制器自身发生故障,并上传自身发生故障的第一监测数据至共享存储区;
处于从机状态的虚拟控制器还设置为:读取共享存储区中的第一监测数据,并根据第一监测数据将处于主机状态的虚拟控制器切换至从机状态。
在一种示例性实例中,本发明实施例:
处于从机状态的虚拟控制器还设置为:向处于主机状态的虚拟控制器发送第二运行信号;将处于主机状态的虚拟控制器由主机状态切换至从机状态之后,读取共享存储区中的第二数据,并根据第二数据确定是否将自身由从机状态切换至主机状态;
处于主机状态的虚拟控制器设置为:上传接收到的第二运行信号的第二数据到预设的共享存储区;
其中,第一运行信号包括:处于主机状态的虚拟控制器的第一心跳信号。
在一种示例性实例中,本发明实施例处于从机状态的虚拟控制器设置为根据第二数据确定是否将自身由从机状态切换至主机状态,包括:
根据第二心跳信号确定处于从机状态的虚拟控制器自身未发生故障时,将处于从机状态的虚拟控制器自身由从机状态切换至主机状态;
根据第二心跳信号确定处于从机状态的虚拟控制器自身发生故障时,保持处于从机状态的虚拟控制器为从机状态。
在一种示例性实例中,本发明实施例处于从机状态的虚拟控制器还设置为:将处于从机状态的虚拟控制器自身由从机状态切换至主机状态之前,确定处于从机状态的虚拟控制器的自身的硬件组成是否正常;确定处于从机状态的虚拟控制器的自身的硬件组成正常时,继续执行将处于从机状态的虚拟控制器自身由从机状态切换至主机状态的处理;确定处于从机状态的虚拟控制器的自身的硬件组成异常时,停止执行将处于从机状态的虚拟控制器自身由从机状态切换至主机状态的处理;其中,硬件组成包括以下一项或任意组合:中央处理器、网络连接和存储介质。
在一种示例性实例中,本发明实施例:
处于主机状态的虚拟控制器还设置为:上传对被管控设备进行控制的逻辑运算结果至共享存储区;
处于从机状态的虚拟控制器还设置为:切换至主机状态后,读取逻辑运算结果,以根据读取的逻辑运算结果对被管控设备进行控制。
本发明实施例,在共享存储区保存过程运算数据,主从切换时从共享存储区直接读取过程运算数据,避免了延时对被管控设备的控制造成影响,降低了现场扰动。通过共享存储区提高冗余数据量,缩短了故障时主从切换的时间。
在一种示例性实例中,本发明实施例处于从机状态的虚拟控制器还设置为:保持处于从机状态的虚拟控制器自身为从机状态之后,将被管控设备设置为安全状态,并进行报警。
以下通过应用示例对本发明实施例进行简要说明,应用示例仅用于陈述本发明实施例,并不用于限定本发明的保护范围。
应用示例
本应用示例在单控制器物理机内部,通过虚拟化技术,启动引导两个虚拟机运行。这两个虚拟机在同一物理机设备上彼此隔离,在每个虚拟机上部署实时操作系统与工业应用软件后,分别设置为处于主机状态和从机状态。图4为本发明应用示例边缘计算控制器的组成框图,如图4所示,本应用示例将两个虚拟控制器的业务应用功能模块化后,分别包括:数据采集模块、运算引擎模块、数据输出模块、通信模块、诊断模块、冗余处理模块;其中,
数据采集模块采集被管控设备的运行数据;
运算引擎模块根据运行数据,获得对被管控设备进行控制的逻辑运算结果;
数据输出模块输出逻辑运算结果到被管控设备,以控制被管控设备;
通信模块与上位机软件进行业务应用数据的通信交互;
诊断模块监测业务应用处理是否发生异常,监测到业务应用处理发生异常时,确定处于主机状态的虚拟控制器自身发生故障,并上传自身发生故障的第一监测数据至共享存储区;
冗余处理模块用于确定是否将处于主机状态的虚拟控制器切换至从机状态,是否将处于从机状态的虚拟控制器切换为主机状态。
本应用示例设置一虚拟控制器处于主机状态,另一虚拟控制器处于从机状态;处于主机状态的虚拟控制器也称为工作机,用于对被管控设备进行控制。处于从机状态的虚拟控制器也称为备份机,正常情况下不进行运算,不对被管控设备进行控制。当处于主机状态的虚拟控制器发生故障时,处于从机状态的虚拟控制器切换至主机状态,执行工作机的工作。本应用示例边缘计算控制器内部通过虚拟化软件运行两个虚拟控制器,在虚拟控制器之间配置有共享存储区,两个虚拟控制器通过共享存储区进行数据交互通信;共享存储区可以是一片共享内存区,图5为本应用示例共享内存区存储的数据示意图,如图5所示,共享存储区可以包含以下三个部分:用于存储虚拟控制器的主机状态和从机状态的第一区域;用于存储第一数据和第二数据、第一监测数据、和根据第一数据和第二数据确定两个虚拟控制器是否发生故障的诊断数据的第二区域;以及用于存储处于主机状态的虚拟控制器对被管控设备进行控制的逻辑运算结果的第三区域;在一种示例性实例中,本应用示例边缘计算控制器还设置有:对第一区域中包含的数据进行数据结构设置的接口;对第二区域中包含的数据进行数据结构设置的接口;在一种示例性实例中,本应用示例设置处于主机状态的虚拟控制器对第三区域中的逻辑运算结果具有读写权限,处于从机状态的虚拟控制器对第三区域中的逻辑运算结果仅具有读权限。
默认初始上电情况下,本应用示例处于主机状态的虚拟控制器可以通过以下逻辑代码实现,图6为本发明应用示例处于主机状态的虚拟控制器的工作流程图,如图6所示,包括:
步骤601、确定自身处于主机状态;
步骤602、执行业务应用处理;本应用示例业务应用处理包括:采集运行、对运算数据进行逻辑运算、输出逻辑运算结果、人机界面(HMI)通信(与上位机软件进行业务应用数据的通信交互);
步骤603、记录第一心跳信号的第一数据,并记录到第一区域。
步骤604、诊断各个模块是否发生故障,并将诊断结果作为第一监测数据记录到第二区域。
步骤605、根据第一数据和第一监测数据,确定是否切换至从机状态;
本应用示例确定是否切换至从机状态,包括:根据第一数据和诊断结果,确定处于主机状态的虚拟控制器发生故障时,切换至从机状态,确定处于主机状态的虚拟控制器未发生故障时,保持主机状态;本发明实施例步骤605可以由处于主机状态的虚拟控制器执行,也可以通过处于从机状态的虚拟控制器实施;
本应用示例处于主机状态的虚拟控制器定期完成逻辑运算,逻辑运算结果被保存至共享存储区,定期完成心跳信号的更新。
图7为本发明应用示例处于从机状态的虚拟控制器的工作流程图,如图7所示,包括:
步骤701、确定自身处于从机状态;
步骤702、判断处于主机状态的虚拟控制器是否发生故障;本应用示例判断处于主机状态的虚拟控制器是否发生故障是否发生故障,包括:根据第一数据判断处于主机状态的虚拟控制器是否发生心跳故障;根据第一监测数据确定处于主机状态的虚拟控制器是否存在模块发生故障;
判断处于主机状态的虚拟控制器发生故障时,执行步骤7030;确定处于主机状态的虚拟控制器未生故障时,执行步骤7040;
步骤7030、确定自身是否发生故障;本应用示例确定自身是否发生故障,包括:根据第二心跳信号的第二数据确定自身是否发生故障;
在一种示例性实例中,本发明实施例确定自身是否发生故障,包括:确定自身的硬件组成是否正常;其中,硬件组成包括以下一项或任意组合:中央处理器、网络连接和存储介质。
确定自身未发生故障时,执行步骤70310;确定自身发生故障时,执行步骤70320;
步骤70310、将处于主机状态的虚拟控制器由主机状态切换至从机状态,将自身由从机状态切换至主机状态;
步骤70320、将被管控设备设置为安全状态,并进行报警处理;
在一种示例性实例中,本应用示例报警处理可以通过硬件看门狗实现,例如:在虚拟控制器内部,初始化过程中会使能硬件看门狗,并注册喂狗超时中断回调函数;控制器主机会进行定周期(毫秒级)喂狗操作,当虚拟控制器发生故障时,则无法进行喂狗操作,触发看门狗超时中断事件发生,中断回调函数中,完成对管控设备安全状态的设置。
步骤7040、保持自身处于从机状态;需要说明的是,处于从机状态的虚拟控制器处于从机状态时,按照设定的周期上传第二数据到共享存储区。
本应用示例提供了基于虚拟控制器的冗余机制,无需依赖两个或多个控制器硬件,即使现场只有一个控制器硬件,依然可以通过虚拟控制器冗余机制提升现场控制系统的可靠性。通过虚拟控制器冗余,可以实现更大的冗余数据量。可以提升控制器冗余机制的有效性。假设相关技术中基于多个边缘计算控制器的冗余方案中,主机与从机通信主要通过冗余网链路传输逻辑运算结果,而冗余网链路速度通常为100兆比特/秒(Mbit/s),假设预留给边缘计算控制器10ms冗余周期,理论上冗余数据量极限为1Mbit,此外,为了保证从机运算数据的一致性,那么切换时间必须是10ms的整数倍,而且因为网络传输的不确定性,可能造成延时。本应用示例两个虚拟控制器间可以通过内存管理单元(MMU)映射至同一共享存储区(共享内存区),用来存储过程运算数据,共享内存区中数据的一致性可以由内存DDR控制器硬件保证,因此该方案冗余数据量大小不受限制。本应用示例故障发生时,虚拟控制器的主从切换更快;在主机发生故障时,虚拟控制器从机能够更快接管工作,对现场扰动更小。
“本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。”
Claims (9)
1.一种边缘计算控制器,包括:相互隔离的两个虚拟控制器,其中一个虚拟控制器处于主机状态,另一个虚拟控制器处于从机状态;其中,
处于主机状态的虚拟控制器设置为:对被管控设备进行运行控制处理;向处于从机状态的虚拟控制器发送第一运行信号;
处于从机状态的虚拟控制器设置为:上传接收到的第一运行信号的第一数据到预设的共享存储区;读取共享存储区中的第一数据,并根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态;
其中,所述第一运行信号包括:处于主机状态的虚拟控制器的第一心跳信号,
所述处于从机状态的虚拟控制器还设置为:向处于主机状态的虚拟控制器发送第二运行信号;将所述处于主机状态的虚拟控制器由所述主机状态切换至所述从机状态之后,读取所述共享存储区中的第二数据,并根据第二数据确定是否将自身由所述从机状态切换至所述主机状态;
处于主机状态的虚拟控制器设置为:上传接收到的第二运行信号的第二数据到预设的共享存储区;
所述处于从机状态的虚拟控制器还设置为:
将所述处于从机状态的虚拟控制器自身由所述从机状态切换至所述主机状态之前,确定处于从机状态的虚拟控制器的自身的硬件组成是否正常;确定处于从机状态的虚拟控制器的自身的硬件组成正常时,继续执行将所述处于从机状态的虚拟控制器自身由所述从机状态切换至所述主机状态的处理;确定处于从机状态的虚拟控制器的自身的硬件组成异常时,停止执行将所述处于从机状态的虚拟控制器自身由所述从机状态切换至所述主机状态的处理。
2.根据权利要求1所述的边缘计算控制器,其特征在于,所述处于从机状态的虚拟控制器设置为根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态,包括:
根据所述第一数据确定所述第一心跳信号更新正常,且确定所述处于主机状态的虚拟控制器未发生故障时,保持所述处于主机状态的虚拟控制器为所述主机状态;
根据所述第一数据确定所述第一心跳信号停止更新、或根据所述第一心跳信号确定所述处于主机状态的虚拟控制器发生故障时,将所述处于主机状态的虚拟控制器由所述主机状态切换至所述从机状态。
3.根据权利要求2所述的边缘计算控制器,其特征在于,所述处于从机状态的虚拟控制器还设置为进行以下一项或任意组合的业务应用处理:
采集所述被管控设备的运行数据;
根据所述运行数据,获得对所述被管控设备进行控制的逻辑运算结果;
输出所述逻辑运算结果到所述被管控设备,以控制所述被管控设备;
与上位机软件进行业务应用数据的通信交互;
其中,所述业务应用数据包括以下一项或任意组合:所述运行数据、所述逻辑运算结果和所述逻辑运算结果输出到的被管控设备。
4.根据权利要求3所述的边缘计算控制器,其特征在于:
所述处于主机状态的虚拟控制器还设置为:监测到所述业务应用处理发生异常时,确定所述处于主机状态的虚拟控制器自身发生故障,并上传自身发生故障的第一监测数据至所述共享存储区;
所述处于从机状态的虚拟控制器还设置为:读取所述共享存储区中的所述第一监测数据,并根据所述第一监测数据将所述处于主机状态的虚拟控制器切换至所述从机状态。
5.根据权利要求1所述的边缘计算控制器,其特征在于,所述处于从机状态的虚拟控制器设置为根据第二数据确定是否将自身由所述从机状态切换至所述主机状态,包括:
根据第二心跳信号确定所述处于从机状态的虚拟控制器自身未发生故障时,将所述处于从机状态的虚拟控制器自身由所述从机状态切换至所述主机状态;
根据所述第二心跳信号确定所述处于从机状态的虚拟控制器自身发生故障时,保持所述处于从机状态的虚拟控制器为所述从机状态。
6.根据权利要求5所述的边缘计算控制器,
其中,所述硬件组成包括以下一项或任意组合:中央处理器、网络连接和存储介质。
7.根据权利要求5所述的边缘计算控制器,其特征在于:
所述处于主机状态的虚拟控制器还设置为:上传对所述被管控设备进行控制的逻辑运算结果至所述共享存储区;
所述处于从机状态的虚拟控制器还设置为:切换至所述主机状态后,读取所述逻辑运算结果,以根据读取的所述逻辑运算结果对所述被管控设备进行控制。
8.根据权利要求7所述的边缘计算控制器,其特征在于,所述处于从机状态的虚拟控制器还设置为:
保持所述处于从机状态的虚拟控制器自身为从机状态之后,将所述被管控设备设置为安全状态,并进行报警。
9.一种控制系统,包括:第一边缘计算控制器和第二边缘计算控制器,第一边缘计算控制器处于主机状态,第二边缘计算控制器处于从机状态;第一边缘计算控制器包含相互隔离的两个虚拟控制器,其中一个虚拟控制器处于主机状态,另一个虚拟控制器处于从机状态;其中,
处于主机状态的虚拟控制器设置为:对被管控设备进行运行控制处理;向处于从机状态的虚拟控制器发送第一运行信号;
处于从机状态的虚拟控制器设置为:上传接收到的第一运行信号的第一数据到预设的共享存储区;读取共享存储区中的第一数据,并根据第一数据确定是否将处于主机状态的虚拟控制器切换至从机状态;根据第一数据确定将处于主机状态的虚拟控制器切换至从机状态,且确定自身发生故障时,将自身所在的第一边缘计算控制器切换至从机状态;触发第二边缘计算控制器切换至主机状态;
其中,所述第一运行信号包括:处于主机状态的虚拟控制器的第一心跳信号,
所述处于从机状态的虚拟控制器还设置为:向处于主机状态的虚拟控制器发送第二运行信号;将所述处于主机状态的虚拟控制器由所述主机状态切换至所述从机状态之后,读取所述共享存储区中的第二数据,并根据第二数据确定是否将自身由所述从机状态切换至所述主机状态;
处于主机状态的虚拟控制器设置为:上传接收到的第二运行信号的第二数据到预设的共享存储区;
所述处于从机状态的虚拟控制器还设置为:
将所述处于从机状态的虚拟控制器自身由所述从机状态切换至所述主机状态之前,确定处于从机状态的虚拟控制器的自身的硬件组成是否正常;确定处于从机状态的虚拟控制器的自身的硬件组成正常时,继续执行将所述处于从机状态的虚拟控制器自身由所述从机状态切换至所述主机状态的处理;确定处于从机状态的虚拟控制器的自身的硬件组成异常时,停止执行将所述处于从机状态的虚拟控制器自身由所述从机状态切换至所述主机状态的处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110931002.2A CN113741248B (zh) | 2021-08-13 | 2021-08-13 | 一种边缘计算控制器和控制系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110931002.2A CN113741248B (zh) | 2021-08-13 | 2021-08-13 | 一种边缘计算控制器和控制系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113741248A CN113741248A (zh) | 2021-12-03 |
CN113741248B true CN113741248B (zh) | 2023-07-14 |
Family
ID=78731078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110931002.2A Active CN113741248B (zh) | 2021-08-13 | 2021-08-13 | 一种边缘计算控制器和控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113741248B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559108A (zh) * | 2013-11-11 | 2014-02-05 | 中国科学院信息工程研究所 | 一种基于虚拟化实现主备故障自动恢复的方法及系统 |
CN105335254A (zh) * | 2015-11-03 | 2016-02-17 | 烽火通信科技股份有限公司 | 虚拟化备份容错系统及方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7383405B2 (en) * | 2004-06-30 | 2008-06-03 | Microsoft Corporation | Systems and methods for voluntary migration of a virtual machine between hosts with common storage connectivity |
CN102662751B (zh) * | 2012-03-30 | 2016-05-11 | 浪潮电子信息产业股份有限公司 | 一种提高基于热迁移虚拟机系统可用性的方法 |
US9268642B2 (en) * | 2012-08-24 | 2016-02-23 | Vmware, Inc. | Protecting paired virtual machines |
CN104391764B (zh) * | 2014-10-22 | 2018-02-16 | 上海海得控制系统股份有限公司 | 一种计算机容错方法及系统 |
US10282261B2 (en) * | 2016-06-20 | 2019-05-07 | Vmware, Inc. | Pooled memory heartbeat in shared memory architecture |
CN106484495A (zh) * | 2016-10-14 | 2017-03-08 | 上海泓戟信息科技有限公司 | 一种虚拟机磁盘数据块同步方法 |
WO2019227401A1 (zh) * | 2018-05-31 | 2019-12-05 | 西门子股份公司 | 冗余热备控制系统、方法、控制设备及计算机可读存储介质 |
CN112639640B (zh) * | 2018-09-05 | 2024-07-05 | 西门子股份公司 | 冗余热备控制系统、控制设备、冗余热备方法及计算机可读存储介质 |
CN111092770B (zh) * | 2019-12-23 | 2021-09-14 | 联想(北京)有限公司 | 一种虚拟网络管理方法及电子设备 |
CN111400086B (zh) * | 2020-02-18 | 2022-05-06 | 上海交通大学 | 虚拟机容错的实现方法和系统 |
CN111651526B (zh) * | 2020-08-04 | 2020-11-13 | 北京和利时系统工程有限公司 | 冗余前端处理器的数据同步方法、前端处理器和处理系统 |
CN112187533B (zh) * | 2020-09-18 | 2023-04-18 | 北京浪潮数据技术有限公司 | 一种虚拟网络设备防御方法、装置、电子设备和介质 |
-
2021
- 2021-08-13 CN CN202110931002.2A patent/CN113741248B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103559108A (zh) * | 2013-11-11 | 2014-02-05 | 中国科学院信息工程研究所 | 一种基于虚拟化实现主备故障自动恢复的方法及系统 |
CN105335254A (zh) * | 2015-11-03 | 2016-02-17 | 烽火通信科技股份有限公司 | 虚拟化备份容错系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113741248A (zh) | 2021-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7510503B2 (ja) | 自動運転制御システム、制御方法及び装置 | |
CN103955188A (zh) | 支持冗余切换功能的控制系统及方法 | |
US20240289243A1 (en) | Server and control method therefor | |
TW454128B (en) | Shared disk type multiple system | |
CN114355760A (zh) | 一种主控制站及其热备冗余控制方法 | |
CN111737037A (zh) | 基板管理控制方法、主从异构bmc控制系统及存储介质 | |
CN114348027A (zh) | 车辆控制方法、装置、平台及存储介质 | |
CN112650620B (zh) | 一种存在主从关系的双机冷备份自主冗余方法 | |
CN113741248B (zh) | 一种边缘计算控制器和控制系统 | |
US11874786B2 (en) | Automatic switching system and method for front end processor | |
CN112034774A (zh) | 一种热冗余控制方法 | |
CN116494893A (zh) | 基于功能安全机制和中央计算架构的车辆控制方法及装置 | |
JP2006114064A (ja) | 記憶サブシステム | |
WO2023007209A1 (en) | Fault-tolerant distributed computing for vehicular systems | |
JP2000020336A (ja) | 二重化通信システム | |
JPH0534877B2 (zh) | ||
CN114520811B (zh) | 一种生产中心数据恢复方法、系统、终端设备及存储介质 | |
US20220308563A1 (en) | Controller and control method | |
CN116055249B (zh) | 一种总线通信系统及其控制方法、装置、介质 | |
JP7211173B2 (ja) | 通信制御装置、電子機器装置、通信制御方法、及び通信制御プログラム | |
JP4348485B2 (ja) | プロセス制御装置 | |
US7016995B1 (en) | Systems and methods for preventing disruption of one or more system buses | |
JPS603225B2 (ja) | 主記憶装置情報修復方式 | |
CN115686892A (zh) | 一种基于多监控通道的集成控制器 | |
CN112230598A (zh) | 一种应用于plc组态的数据存储监测的实现方法及系统 |
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 |