程序执行如下: 第一步(A)启动系统的冗余数据同步功能 ? 第二步(B)根据状态字判断是否为主系统,为主系统时才执行第三步,否则跳到第四步? 第三步(C)为冗余的程序段 ? 第四步(D)停止系统的冗余数据同步。 通过对OB35中的程序在线监控,得知当前冗余功能成功与否,如图9所示:
图9 FB101 状态值 图9显示,FB101的返回值Return_VAL和Ext_INFO为0,说明冗余功能正常。 通过FB101的背景数据块中的状态字和控制字,可以知道系统的运行的情况和当前哪个系统为主系统,哪个为备用系统,状态字的定义如图10所示:
图10 软件冗余状态字 可以通过写控制字中对应的位,起停备用系统与主系统之间的冗余通讯,也可以实现主系统与备用系统之间的手动切换,如图11所示:
图11软件冗余控制字 通过设定DB5.DBX10.0为1,实现主系统与备用系统的手动切换。 (8)在OB86中调用诊断功能块FC 102 ‘SWR_DIAG’,当系统出现PROFIBUS总线错误时,该功能块返回诊断信息,供FB101使用。 (9)插入FB101内部调用的FB104,FC5、FC6等功能块,将所有的程序块下载到PLC当中。 (10)在组态软件WinCC中创建两个MPI链接,分别与主系统和备用系统进行链接,并生成对应的Tag变量,如图12所示:
图12 WINCC中创建连接 利用WINCC的向导功能可以创建冗余的连接,通常的情况下, A、B站冗余的数据连接WINCC建立的冗余连接,A站数据连接WINCC专一与A站建立的连接,B站数据连接WINCC专一与B站建立的连接。 |