一种双机冗余通讯方法及系统与流程
- 国知局
- 2024-08-01 00:16:21
本技术涉及工业控制,具体涉及一种双机冗余通讯方法及系统。
背景技术:
1、在工业控制领域,尤其是流程控制领域,现场对模拟量及数字量输入和输出模块(io模块)的可靠性要求极高,因为io模块的可靠性直接决定系统控制数据的准确性。
2、基于此,在sis(safety instrumented system,安全仪表系统)及大型dcs(分布式控制系统,distributed control system)场景下,模块采集在设计院设计初期都是冗余配置。然而,冗余设计根据机制和设计方案复杂度的不同,又分为热备冗余,同步冗余,以及冷备冗余。其中,热备冗余是主机和备机都进行数据运算,最终输出采用主机的;同步冗余是主机和备机进行数据同步运算,输出;而冷备冗余则指主备模块间仅主机运算,备机不运算。通常主控制器采用热备和同步冗余;而io模块由于设计相对简单,因此大部分io模块均采用冷备冗余。io模块在进行冷备冗余时一般主机和备机间采用简单的数据同步;此种数据同步一般有心跳信号、本机主备信号、本机是否故障信号。具体冗余机制如图2所示,因为实现和设计相对简单,在普通io模块中应用的极多,但是采用该种设计使得模块间无法同步多种故障状态,从而导致主备切换不可靠。
技术实现思路
1、有鉴于此,本发明提供一种双机冗余通讯方法及系统,通过在保留心跳信号的基础上,增加冗余通讯机制,有效提高了冗余通讯故障切换的可靠性。
2、第一方面,本发明提供一种双机冗余通讯方法,用于对控制系统的两个数据处理模块进行冗余控制,所述方法包括:
3、确定控制系统的模式状态;
4、在所述模式状态为双机模式且接收到对机的心跳信号时,确定本机与对机的通信连接是否正常;
5、其中,所述双机模式为所述控制系统的两个数据处理模块采用冗余备份的模式;所述本机为任意一个所述数据处理模块,所述对机为另一个所述数据处理模块;
6、在所述本机与所述对机的通讯连接正常,且所述对机满足第一预设条件时,确定所述本机是否满足第二预设条件;
7、在所述本机满足所述第二预设条件时,将所述本机作为所述两个数据处理模块中的主机;
8、其中,所述第一预设条件为:非主机和/或有故障;所述第二预设条件为:所述本机的身份信息与预设的默认主机的身份信息匹配。
9、在一种可能的实施方式中,所述方法还包括:
10、在所述本机与所述对机的通讯连接异常时,获取所述本机与所述对机间的硬件层状态信号;
11、基于所述硬件层状态信号,确定所述数据处理模块的主机和备机。
12、在一种可能的实施方式中,若所述本机为主机,所述方法还包括:
13、基于所述硬件层状态信号,确定是否满足第三预设条件;
14、其中,所述第三预设条件为:所述本机不存在故障,所述对机为备机;
15、在确定不满足所述第三预设条件,且接收到所述对机的心跳信号时,确定与所述对机的通信连接是否正常;
16、若与所述对机的通信连接正常,则获取所述本机和所述对机的状态信息,并基于所述本机和所述对机的状态信息,确定所述数据处理模块的主备机执行策略;
17、其中,所述主备机执行策略用于确定所述数据处理模块的主机和备机;
18、若与所述对机的通信连接异常,则保持所述本机处于主机状态。
19、在一种可能的实施方式中,所述基于所述本机和所述对机的状态信息,确定所述数据处理模块的主备机执行策略,包括:
20、在所述对机为备机且不存在故障,所述本机存在故障时,触发降备请求,以使所述本机降为备机,所述对机切换为主机;
21、在所述对机为备机且存在故障时,保持所述本机处于所述主机状态;
22、在所述对机为主机且所述对机和所述本机均不存在故障时,将所述本机切换为无资格状态;
23、其中,当所述本机处于所述无资格状态时,所述控制系统的所述模式状态为仅由所述对机进行数据运算的单机模式;
24、在所述对机为主机且所述对机和所述本机均不存在故障时,确定是否存在所述降备请求,并在确定存在所述降备请求,或不存在所述降备请求,且所述本机不满足所述第一预设条件时,将所述本机切换为备机,而在确定不存在所述降备请求,且所述本机满足所述第一预设条件时,保持所述本机处于所述主机状态。
25、在一种可能的实施方式中,该双机冗余通讯方法还包括:
26、在确定不满足所述第三预设条件,且未接收到所述对机的心跳信号时,保持所述本机处于所述主机状态。
27、在一种可能的实施方式中,该双机冗余通讯方法还包括:
28、在确定满足所述第三预设条件时,确定是否存在降备请求;
29、若存在,则确定所述本机处于所述主机状态的时长是否大于预设时长,并在确定所述时长大于或等于所述预设时长时,保持所述降备请求,直至所述对机满足第四预设条件时,将所述本机切换为备机,而在确定所述时长小于所述预设时长,或所述对机不满足所述第四预设条件时,保持所述本机处于所述主机状态;
30、其中,所述第四预设条件为:处于所述主机状态且不存在故障。
31、在一种可能的实施方式中,若所述本机为备机,所述方法还包括:
32、确定是否存在故障,并在确定存在故障时,将所述本机切换为无资格状态,而在确定不存在故障时,且接收到所述对机的心跳信号时,确定与所述对机的通信连接是否正常;
33、其中,当所述本机处于所述无资格状态时,所述控制系统的所述模式状态为仅由所述对机进行数据运算的单机模式;
34、若与所述对机的通信连接正常,则获取所述对机的状态信息,并基于所述对机的状态信息,确定所述数据处理模块的主机和备机;
35、若与所述对机的通信连接异常,则基于所述硬件层状态信号,确定所述数据处理模块的主机和备机。
36、在一种可能的实施方式中,所述基于所述对机的状态信息,确定所述数据处理模块的主机和备机,包括:
37、在所述对机满足第五预设条件时,将本机切换为所述数据处理模块的主机;
38、否则,保持所述本机处于备机状态;
39、其中,所述第五预设条件为:有故障或非主机。
40、在一种可能的实施方式中,所述基于所述硬件层状态信号,确定所述数据处理模块的主机和备机,包括:
41、在所述硬件层状态信号指示所述对机为备机时,使所述本机处于所述主机状态,否则,使所述本机处于所述备机状态。
42、在一种可能的实施方式中,所述确定与对机的通信连接是否正常,包括:
43、生成本机的状态数据,并向所述对机发送;
44、确定是否接收到反馈响应码和所述对机的状态数据;
45、其中,所述反馈响应码为所述对机接收到所述本机的状态数据后,生成的响应信号,所述反馈响应码由所述对机连同所述对机的状态数据一并发送至所述本机;
46、在确定接收到所述反馈响应码和所述对机的状态数据后,确定与对机的通信连接正常。
47、在一种可能的实施方式中,所述本机的状态数据和所述对机的状态数据,基于预设周期向对方发送。
48、在一种可能的实施方式中,所述获取控制系统的模式状态,包括:
49、在初始化后,确定配置是否正确;
50、若确定所述配置不正确,或在确定所述配置正确后,所述配置发生了变更,则重新进行初始化;
51、若确定所述配置正确,且所述配置未发生变更,则确定所述模式状态是否为单机模式;
52、若确定为单机模式,则使所述本机处于主机状态;
53、否则,确定所述模式状态为所述双机模式。
54、第二方面,本发明提供一种双机冗余通讯系统,用于对控制系统的两个数据处理模块进行冗余控制,所述系统包括:
55、采集单元,用于确定控制系统的模式状态;
56、连接检测单元,用于在所述模式状态为双机模式且接收到对机的心跳信号时,确定本机与对机的通信连接是否正常;
57、其中,所述双机模式为所述控制系统的两个数据处理模块采用冗余备份的模式;所述本机为任意一个所述数据处理模块,所述对机为另一个所述数据处理模块;
58、决策执行单元,用于在确定本机与对机的通信连接正常,且所述对机满足第一预设条件时,确定所述本机是否满足第二预设条件,并在所述本机满足所述第二预设条件时,将所述本机作为两个数据处理模块中的主机;
59、其中,所述第一预设条件为:非主机和/或有故障;所述第二预设条件为:所述本机的身份信息与预设的默认主机的身份信息匹配。
60、根据本发明提供的双机冗余通讯方法,在确定控制系统的模式状态,且在模式状态为双机模式,并接收到对机的心跳信号时,确定本机与对机的通信连接是否正常,以在确定本机与对机的通讯连接正常,且对机非主机和/或有故障时,通过进一步确定本机的身份信息与预设的默认主机的身份信息是否匹配,以在主机与默认主机的身份信息匹配时,将本机作为两个数据处理模块中的主机。本发明提供的双机冗余通讯方法,在确保本机与对机间通讯功能正常时,基于主机与对机间的通讯连接,使得两个数据处理模块间可基于通讯连接较为全面的同步故障状态,实现了数据处理模块的主机和备机的可靠确定,进而提高了冗余通讯故障切换的可靠性。
本文地址:https://www.jishuxx.com/zhuanli/20240730/200372.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。