第七章 软件冗余的原理和配置
7.2.1 不同系统结构方式下的功能块:
7.2 软件冗余系统的调试过程
在计算机上首先安装STEP7 5.x 软件和软冗余软件包,软冗余软件光盘包括了冗余功 能程序块库、不同系统结构的例子程序和软冗余使用手册。
7.2.1 不同系统结构方式下的功能块:
在安装完软冗余的软件后,可以在STEP7 当中找到例子程序和功能程序块库,如 图7-4 所示:
图7-4 软件冗余的例子程序
以上图 7-4 显示的是在 STEP7 中使用 OPEN 菜单打开软冗余的例子程序,例子程序 中采用 MPI 链路实现数据的同步。在 Libraries 找到不同 CPU 以及不同链接方式下可以 使用的功能块,如图 7-5 所示:
长沙工控帮教育科技有限公司整理
图7-5 软件冗余功能块
下面的两个表格分别说明了采用S7-300,S7-400 进行软件冗余时,可采用的不同网络 连接以及所需调用的程序功能块包,参考表7-3 和 7-4。
表 7-3 S7-300 进行数据同步使用的程序库
Select this package For this network And this connection type Remarks
XSEND_300 MPI Permanently configured
connection
Network connected to MPI interface of CPU
AG_SEND_300 PROFIBUS FDL connection Network connected via
CP342-5
Industrial Ethernet ISO connection Network connected via CP345-1
表 7-4 S7-400 进行数据同步使用的程序库
Select this package For this network And this connection type Remarks
XSEND_400 MPI Permanently configured
connection
Network connected to MPI interface of CPU
长沙工控帮教育科技有限公司整理
AG_SEND_400 PROFIBUS FDL connection Network connected via CP443-5
Industrial Ethernet ISO connection Network connected via CP443-1
BSEND_400 MPI S7 connection Network connected to MPI
interface of CPU
PROFIBUS Network connected via
CP 443-5
Industrial Ethernet Network connected via
CP 443-1
从以上的表格中可以看到,软冗余系统当中可以采用 MPI、PROFIBUS、Ethernet 三种网 络实现主系统和备用系统之间的数据同步(Redundant-backup link)。
采用 BSEND_400 包中的功能块进行数据同步时,无论数据同步的连接是什么方式,都需 要在 STEP7 的 NETPRO 窗口中组态一个 S7 Connection。除了 BSEND_400 中之外,使用 其他功能块:
z 采用 MPI 网络时,直接使用 PLC 的编程口进行数据同步,不需要进行连接
(Connection)的组态,但 MPI 数据同步的效率低。
z 采用 PROFIBUS 网络时,需要使用一对 CP 通讯卡(CP342-5 或 CP443-5),在 STEP7
FC 102 ‘SWR_DIAG’ 诊断功能块,在OB86中调用,将得到的诊断数据提供给FB101使用。
FB 103
在该块内部调用SFB 12 ‘BSEND’ and SFB 13 ‘BRCV’功能块,实现 MPI或PROFIBUS或Ethernet网络的数据同步,只能在S7-400 中调用。
DB_WORK_NO 冗余软件块使用的数据区,用户不需要生成该数据块,也不使用该数 据块中的数据;
DB_SEND_NO 用于主系统发送同步数据到备用系统的发送数据区(包括了主系统的 M、T、C、DB等区域的数据),用户不需要生成该数据块,也不使用 该数据块中的数据;
长沙工控帮教育科技有限公司整理
生成该数据块,也不使用该数据块中的数据;
DB_A_B_NO 从A站到B站,非冗余同步的数据的收发区;
DB_B_A_NO 从B站到A站,非冗余同步的数据的收发区;
DB_COM_NO FB101的背景数据块,包括了数据同步链路的状态,控制等信息,用 户需要生成该数据块,DBW8为状态字,DBW10为控制字,;
FC 5 ‘AG_SEND’ PROFIBUS网络中,实现FDL链接,在FB104内部调用的发送块,用 户需要生成该程序块,并下载到PLC当中。
FC 6 ‘AG_RCV’ PROFIBUS网络中,实现FDL链接,在FB104内部调用的接收块,用 户需要生成该程序块,并下载到PLC当中。
注:
1) 用 PROFIBUS 或 Ethernet 方式进行数据同步时,需要在 OB100 当中调用 FB101,而 FB101 内部调用了 FB104、FC5、FC6,所以您必须手动地将 FB104、FC5、FC6 插入到项 目当中,插入的方法是:在程序中调用一次,再将这条语句删掉。
Station A (S7-300)
CPUCP PS
Station B (S7-300)
CPU CP
PROFIBUS (redundant-backup link)
DP Master System 1 (Station A)
OP7 operator panel
IM 153-2
PS DE DA DE DA Peripheral s for fans Peripherals
for lighting Peripherals
for traffic counter
图7-6 系统配置
长沙工控帮教育科技有限公司整理
除了实现冗余功能的 3 条 PROFIBUS 网络外,还有一条 MPI 网络用于上位机监视和 控制程序的调试。
以下是生成该例子程序的步骤,可以根据系统的配置情况进行参照:
(1)插入两个 S7-300 的站,A 和 B ,在 A 站和 B 站的硬件组态窗口中,插入 315-2DP 时,要分别创建相互独立的 PROFIBUS 网络(如 A 站为 Master_Line、B 站为
Reserve_Line),使用网络的默认参数,速率为 1.5M,并都将站地址设定为 2,A 站和 B 站的 PROFIBUS DP 集成通讯口设定为主站模式(Master Mode)。
(2)分别在 A、B 站中插入 CP342-5 模块,连接到同一个 PROFIBUS 网络上
(Sychronization_Line),地址分别为 4、5,将 CP342-5 设定为 No DP 方式,并记录 CP342-5 的硬件地址 256。
(3)分别在 A、B 站的硬件组态窗口中插入一个 ET200 从站(一个 IM153-2 模块和一个 16 入/16 出的数字量模板),DP 的地址为 3。
(4) 进入 STEP7 的网络组态窗口 NETPRO 中,选中 A 站的 CPU 点击鼠标右键,插入一 个新的链接,选择 FDL Connection,点击 Apply,弹出链接属性窗口,记录链接的 ID,
设定 LSAP 为 17,18,存盘编译网络组态。系统的网络结构如图 7-7 所示:
图7-7 系统的网络结构
以上网络结构中包括了 4 条链路:
z 用于上位机编程和监控的 MPI 链路;
z A 站与 ET200 从站 Master Line PROFIBUS 链路;
z B 站与 ET200 从站 Reserve Line PROFIBUS 链路;
长沙工控帮教育科技有限公司整理
可以通过点击图中的状态读取按钮,获取当前 FDL 链接的状态,上图的左下角显示 当前在线读取 FDL 的状态为 OK。
(5)在 A 站的 Block 中插入 OB1(主循环程序块)、OB35(定时中断组织块)、OB100
(暖启动调用程序块)、OB80(在主系统与备用系统切换时间超时时,调用该块)、OB82 (DP-Slave ET200 站上的 IM153-2 模块出错报警,调用该功能块)、OB83 (DP 从站的接 口模块与主站链接断开或链接重新建立时调用该块)、OB85(程序运行出错或 DP 从站 连接失败调用该块)、OB86(主从站通讯出错调用该块)、OB87(通讯失败调用该块)、
OB122(外围设备访问出错调用该块)、OB121 等组织块,并对其中的 OB100、OB35、OB86 进行编程。
(6)在 OB100 中我们调用 FC 100 ‘SWR_START’进行软冗余的初始化,有几个参数需 要特别注意,LADDR 应当和 CP342-5 的硬件地址相一致,例子程序为 256,VERB_ID 必须 和在 NETPRO 中创建的 FDL 链路的 ID 号一致,例子程序为 1,DB_COM_NO 建议仍采用 DB5。
LADDR 整型 CP通讯处理器组态的硬件地址,采用PROFIBUS或 Ethernet网络进行数据同步时才有意义
256
VERB_ID 整型 网络链接的ID号,在NETPRO窗口中组态的链接的ID 值 , 如FDL Connection 、 ISO Connection 或 S7 Connection。
1
DP_MASTER_
SYS_ID
整型 DP主站网络的ID号,你可以在NETPRO窗口中双击链 接ET200M从站紫色的PROFIBUS主从网络,获取该
1. 使用CPU上集成DP通讯口链接ET200从站;
2. 使用CP通讯卡上的DP通讯口链接ET200从 站;
1
长沙工控帮教育科技有限公司整理
ADR_MODUS 整型 CPU分配I/O地址的矩阵的增量,不同CPU的地址矩阵
IEC_LEN 7 DB111 DB117