System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及通信,尤其涉及一种设备冗余方法、装置、设备及计算机可读存储介质。
技术介绍
1、在工业控制过程行业的plc(programmable logic controller,可编程逻辑控制器)及io(input/output,输入输出)系统出现故障时,是不能停机更换的,因为停机意味着材料的浪费,那就要求在plc或者io系统出现故障时,有备份的plc或者io能按照出现故障时的状态继续运行,传统的plc冗余主要关注点在io输出(即外部的设备控制),只能保证外部设备不会乱动作,很难做到无缝。
技术实现思路
1、本申请提供了一种设备冗余方法、装置、设备及计算机可读存储介质,至少能够解决相关技术中传统的plc冗余方案存在较大延时的问题。
2、本申请实施例第一方面提供了一种设备冗余方法,应用于主cpu,包括:
3、检测主plc程序的运行状态;
4、当所述主plc程序出现运行故障时,获取所述主plc程序的运行内存;
5、将所述运行内存发送至从cpu,并根据所述运行内存对所述从cpu的从plc程序进行plc冗余;
6、向主耦合器发送冗余指令。
7、通过采用上述方案,当主cpu的主plc程序出现故障时,将主plc程序的运行内存同步到从cpu的从plc程序中,并控制主耦合器将io系统的数据同步到从cpu对应的从耦合器上,使从cpu接管io系统,在操作系统层面进行plc冗余,提高冗余效率。
8、可选的,所述根据所述冗
9、根据所述冗余指令控制所述主耦合器将io系统的输入输出数据发送至与所述从cpu对应的从耦合器进行io冗余;
10、检测所述从cpu与所述io系统之间的数据传输是否正常;
11、当所述所述从cpu与所述io系统之间的数据传输存在异常时,获取所述运行内存与所述输入输出数据对应的备份数据;
12、根据所述备份数据判断冗余后的运行内存或冗余后的输入输出数据是否存在数据异常;
13、当所述冗余后的运行内存或所述冗余后的输入输出数据存在数据异常时,根据所述备份数据对所述冗余后的运行内存或所述冗余后的输入输出数据进行修复。
14、通过采用上述方案,对冗余后的数据传输进行检测,当输出传输出现异常时,通过备份数据对异常数据进行修复,保证冗余后系统能够正常运行。
15、可选的,所述将所述运行内存发送至从cpu,并根据所述运行内存对所述从cpu的从plc程序进行plc冗余的步骤之前,还包括:
16、接收所述主耦合器发送的故障信息;
17、根据所述故障信息获取所述主plc程序的运行内存,并执行所述将所述运行内存发送至从cpu,并根据所述运行内存对所述从cpu的从plc程序进行plc冗余的步骤。
18、可选的,所述方法还包括:
19、接收所述主耦合器的输出信号;
20、检测所述输出信号是否存在信号异常;
21、当所述输出信号存在信号异常时,控制所述主耦合器将所述输入输出数据发送至所述从耦合器。
22、通过采用上述方案,对主耦合器进行检测,当主耦合器出现异常时,控制主耦合器进行冗余,防止主耦合器突然损坏导致系统的资源消耗。
23、本申请实施例第二方面提供了一种设备冗余方法,应用于主耦合器,包括:
24、接收主cpu发送的冗余指令;
25、根据所述冗余指令确定所述主cpu冗余的从cpu;
26、将io系统的输入输出数据发送至与所述从cpu对应的从耦合器进行冗余。
27、通过采用上述方案,根据主cpu的冗余指令将io系统的输入输出数据同步到从耦合器上,保证系统数据的完全一致性。
28、可选的,所述将io系统的输入输出数据发送至与所述从cpu对应的从耦合器进行冗余的步骤之前,还包括:
29、实时检测所述主cpu发送的传输信号;
30、当在预设时长内未接收到所述传输信号时,执行所述将io系统的输入输出数据发送至与所述从cpu对应的从耦合器进行冗余的步骤。
31、可选的,所述将io系统的输入输出数据发送至与所述从cpu对应的从耦合器进行冗余的步骤之前,还包括:
32、检测所述io系统的传输状态;
33、当所述io系统的传输状态存在异常时,向所述主cpu发送故障信息,并执行所述将io系统的输入输出数据发送至与所述从cpu对应的从耦合器进行冗余的步骤。
34、本申请实施例第三方面提供了一种设备冗余装置,应用于主cpu,包括:
35、检测模块,用于检测主plc程序的运行状态;
36、获取模块,用于当所述主plc程序出现运行故障时,获取所述主plc程序的运行内存;
37、第一冗余模块,用于将所述运行内存发送至从cpu,并根据所述运行内存对所述从cpu的从plc程序进行plc冗余;
38、发送模块,用于向主耦合器发送冗余指令,根据所述冗余指令控制所述主耦合器将io系统的输入输出数据发送至与所述从cpu对应的从耦合器进行io冗余。
39、可选的,所述设备冗余装置还包括:
40、第一接收模块,用于接收所述主耦合器发送的故障信息;
41、获取模块,还用于根据所述故障信息获取所述主plc程序的运行内存;
42、第一冗余模块,还用于将所述运行内存发送至从cpu,并根据所述运行内存对所述从cpu的从plc程序进行plc冗余。
43、本申请实施例第四方面提供了一种设备冗余装置,应用于主耦合器,包括:
44、第二接收模块,用于接收主cpu发送的冗余指令;
45、确定模块,用于根据所述冗余指令确定所述主cpu冗余的从cpu;
46、第二冗余模块,用于将io系统的输入输出数据发送至与所述从cpu对应的从耦合器进行冗余。
47、综上所述,本申请的有益效果为:
48、1.当主cpu的主plc程序出现故障时,将主plc程序的运行内存同步到从cpu的从plc程序中,使从cpu接管io系统,在操作系统层面进行plc冗余,提高冗余效率。
49、2.对冗余后的数据传输进行检测,当输出传输出现异常时,通过备份数据对异常数据进行修复,保证冗余后系统能够正常运行。
本文档来自技高网...【技术保护点】
1.一种设备冗余方法,应用于主CPU,其特征在于,包括:
2.根据权利要求1所述的设备冗余方法,其特征在于,所述向主耦合器发送冗余指令的步骤之后,还包括:
3.根据权利要求1所述的设备冗余方法,其特征在于,所述将所述运行内存发送至从CPU,并根据所述运行内存对所述从CPU的从PLC程序进行PLC冗余的步骤之前,还包括:
4.根据权利要求1所述的设备冗余方法,其特征在于,所述方法还包括:
5.一种设备冗余方法,应用于主耦合器,其特征在于,包括:
6.根据权利要求5所述的设备冗余方法,其特征在于,所述将IO系统的输入输出数据发送至与所述从CPU对应的从耦合器进行冗余的步骤之前,还包括:
7.根据权利要求5所述的设备冗余方法,其特征在于,所述将IO系统的输入输出数据发送至与所述从CPU对应的从耦合器进行冗余的步骤之前,还包括:
8.一种设备冗余装置,其特征在于,应用于主CPU,包括:
9.根据权利要求5所述的设备冗余装置,其特征在于,还包括:
10.一种设备冗余装置,其特征在于,
...【技术特征摘要】
1.一种设备冗余方法,应用于主cpu,其特征在于,包括:
2.根据权利要求1所述的设备冗余方法,其特征在于,所述向主耦合器发送冗余指令的步骤之后,还包括:
3.根据权利要求1所述的设备冗余方法,其特征在于,所述将所述运行内存发送至从cpu,并根据所述运行内存对所述从cpu的从plc程序进行plc冗余的步骤之前,还包括:
4.根据权利要求1所述的设备冗余方法,其特征在于,所述方法还包括:
5.一种设备冗余方法,应用于主耦合器,其特征在于,包括:
...
【专利技术属性】
技术研发人员:罗宏,
申请(专利权)人:深圳市华茂欧特科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。