第七章 软件冗余的原理和配置
IEC_LEN 7 DB111 DB117 定时器、计数器的背景数据去
7
DB_NO 整型 冗余的起始数据块 8
DB_NO_LEN 整型 冗余的数据块个数,如DB_NO为8,DB_NO_LEN为2,
则DB8-DB9为冗余的数据块
2
SLAVE_NO 整型 ET200从站的最低站地址 3
SLAVE_LEN 整型 ET200从站的个数,如SLAVE_NO为3,SLAVE_LEN 为2,则该软冗余系统连接了站号为3,4的两个ET200 从站,站号必须连续。
SLAVE_DISTA NCE
整型 确定所链接ET200从站上IM153-2模块的PROFIBUS DP站地址:
1. 2块IM153-2模块的DP口使用相同的站地址;
2. 2块IM153-2模块的DP口的站地址为n和n+1;
1
WORD A站到B站,非冗余数据块中交换的Word字数,如 DB_A_B_NO 设 为 DB11 , DB_A_B_NO_LEN 设 为 .
WORD B站到A站,非冗余数据块中交换的Word字数,如 DB_B_A_NO 设 为 DB12 , DB_B_A_NO_LEN 设 为 .
W#1 6#64
长沙工控帮教育科技有限公司整理
复 制 到A 站 的 DB12.DBW0-DB12.DBW198 , 因 为 W#16#64代表16进制64,即一共复制100个数据字。
RETURN_VAL WORD 调用FC100的返回值,为0代表正常,其他返回值您可 以在错误代码表中找到对应的错误原因。
MW2
EXT_INFO WORD FC100中内部调用的一些功能块所返回的错误代码 MW4
(7) 一般建议将非冗余程序段编写在 OB1 当中,而将冗余程序段编写在 OB35 当中,这 里使用的是 OB35 的默认属性,即每 100ms 中断触发一次,可以根据实际的需要在 CPU 属性中修改中断的时间间隔。在 OB35 里调用 FB 101 ‘SWR_ZYK’ 功能块,FB101 块中 封装了冗余功能的程序段,实现冗余功能。调用 FB101 时,你可以在线地读出 RETURN_VAL 参数的数值,如果为 0,说明冗余链接正常。如果为 8015 说明数据同步的连接不成功,
第二步(B)根据状态字判断是否为主系统,为主系统时才执行第三步,否则跳到 第四步Æ
第三步(C)为冗余的程序段 Æ
第四步(D)停止系统的冗余数据同步。
通过对 OB35 中的程序在线监控,得知当前冗余功能成功与否,如图 7-9 所示:
图7-9 FB101 状态值
图 7-9 显示,FB101 的返回值 Return_VAL 和 Ext_INFO 为 0,说明冗余功能正常。
通过 FB101 的背景数据块中的状态字和控制字,可以知道系统的运行的情况和当前哪个 系统为主系统,哪个为备用系统,状态字的定义如图 7-10 所示:
长沙工控帮教育科技有限公司整理
Bit No.
= Bit is not relevant
Data word
1: Station is master 3
1: Station is reserve 1: ID A, station is subunit A 1: ID B, station is subunit B 0: Redundant backup is activated 1: Redundant backup is de-activated 0: Redundant-backup link present 1: Redundant-backup link has failed 1: Startup phase
1: Master-reserve change-over in progress 1: Communication peer still busy with change-over 1: Communication not possible with any DP slaves 1: Communication not possible with some DP slaves 1: Communication possible with all DP slaves
DBB 8 DBB 9
图7-10 软件冗余状态字
可以通过写控制字中对应的位,起停备用系统与主系统之间的冗余通讯,也可以实现主
系统与备用系统之间的手动切换,如图7-11所示:
Bit No.
= Bit is not relevant
Data w ord
1: Master-reserve change-over disabled
3
1: Master-reserve change-over enabled
Bit is reserved, may not be changed 1: Activate master-reserve change-over
DBB 10 DBB 11
图7-11软件冗余控制字
通过设定 DB5.DBX10.0 为 1,实现主系统与备用系统的手动切换。
长沙工控帮教育科技有限公司整理
(8)在 OB86 中调用诊断功能块 FC 102 ‘SWR_DIAG’,当系统出现 PROFIBUS 总线错误时,
该功能块返回诊断信息,供 FB101 使用。
(9)插入 FB101 内部调用的 FB104,FC5、FC6 等功能块,将所有的程序块下载到 PLC 当 中。
(10)在组态软件 WinCC 中创建两个 MPI 链接,分别与主系统和备用系统进行链接,并生成
对 应 的 Tag 变 量 , 如 图 7 - 12 所 示 :
图7-12 WINCC中创建连接
利用 WINCC 的向导功能可以创建冗余的连接,通常的情况下, A、B 站冗余的数据连接 WINCC 建立的冗余连接,A 站数据连接 WINCC 专一与 A 站建立的连接,B 站数据连接 WINCC 专一与 B 站建立的连接。