收藏 分销(赏)

s7-300软冗余手册.doc

上传人:精**** 文档编号:2406059 上传时间:2024-05-29 格式:DOC 页数:12 大小:1.57MB
下载 相关 举报
s7-300软冗余手册.doc_第1页
第1页 / 共12页
s7-300软冗余手册.doc_第2页
第2页 / 共12页
点击查看更多>>
资源描述
S7-300的软冗余要求从站必须通过有源底板连接。从站的所有模块需要确保没有故障,即SF灯不亮尤其是通讯模块。 S7-300的软冗余分为三种方式:MPI ,DP ,以太网。三种冗余方式的通讯速度不同,以太网通讯速度最快,DP通讯速度次之,MPI通讯速度最慢。不同的通讯方式选择的功能块不相同,具体功能块的选择如图1所示: 图1 下面以以太网冗余为例,简述冗余过程: (一) 插入两个S7-300的站,SIMATIC 300(A) 和 SIMATIC 300(B)。 (二) 设置A站的IP地址为192.168.0.10 ,B站的地址为192.168.0.20 。 (三) 在A站的块中插入OB100、OB35、OB86组织块,并对其中的OB100、OB35、OB86进行编程。 (四) 在组态网络中新建ISO-ON-TCP链接。要求ID号要大于2且主从站的ID号一致。 上图为最终效果图,下图为过程 主站设置如左图所示步骤,从站不需要再次设定但需要在从站中给该从站的通讯ID号与主站相同且大于2。,图例设置为0007 (五) 在OB100中我们调用FC100’SWR_START’进行软冗余的初始化。 FC100’SWR_START的各个引脚的注释请参照最后的附录 调用FC100的位置如图 4 3 2 1 5 图中1表示为当前CPU的站号,A站写A,B站写B。 图中2填写对方的地址,MPI_ADR表示对方的MPI地址,LADDR表示CP通讯处理器组态的硬件地址,采用PROFIBUS或Ethernet网络进行数据同步时才有意义,默认值为256不需要更改。VERB_ID表示网络链接的ID号,在NETPRO窗口中组态的链接的ID值,如FDL Connection、ISO Connection或S7 Connection。数值要大于2。DP_MASTER_SYS_ID表示DP主站网络的ID号,你可以在硬件组态中双击链接ET200M从站紫色的PROFIBUS主从网络,获取该ID值。 双击 图中3填写输出模块(DO..AO)总的起始地址和最终地址。地址必须是连续的,中间不能含有没有定义的地址。 图中4填写冗余的M、计时器背景数据块、DB数据块的起始地址和长度。数据必须是连续的,且冗余的DB块的数据不得小于2个字节。 图中5填写ET200从站的起始地址和个数。 表中需要注意的事项; i. 冗余的DB块中数据必须大于2个字节,否则冗余会报错。 ii. 模块的输出DO,AO必须为连续的地址,冗余初始化中的输出中不能有无效地址。 iii. 上表中的DB1,DB2,DB3数据块不需要人工创建,下载程序时CPU会自动创建数据块。 iv. 更改OB100中的FC100程序时,需要清空CPU 内的所有程序。清空的方式为在线删除块内的所有数据。 v. 非冗余的DB块需要手动创建,数据必须大于2个字节。 (六) 一般我们建议您将您的非冗余程序段编写在OB1当中,而将冗余程序段编写在OB35当中,我们这里使用的是OB35的默认属性,即每100ms中断触发一次,您可以根据实际的需要在CPU属性中修改中断的时间间隔。 在OB35里调用FB 101 ‘SWR_ZYK’ 功能块,FB101块中封装了冗余功能的程序段,实现冗余功能。调用FB101时,你可以在线地读出RETURN_VAL参数的数值,如果为0,说明冗余链接正常。如果为8015说明数据同步的连接不成功,这是一个常见的错误,原因可能是CP342-5之间的FDL链接建立的不正确或物理链路不通,或者是FC100的VERB_ID参数与NETPRO中的链接ID号不一致。当执行”SWR_START”程序块时,系统分配这些数据区,不能用S7的定时器和计数器,只能使用IEC标准的定时器和计数器。你可以在软冗余手册的第三章第9节找到对应的诊断信息。OB35中的程序可以分为4个部分。 (七) 在OB86中调用诊断功能块FC 102 ‘SWR_DIAG’,当系统出现PROFIBUS总线错误时,该功能块返回诊断信息,供FB101使用。 (八) 插入FB101内部调用的FB104,FC5、FC6等功能块,将所有的程序块下载到PLC当中。 备注 A. 在使用MPI进行冗余通讯时不需要建立任何通讯连接,只需将通讯线接好即可。 B. 在使用以太网进行通讯时需要建立通讯连接。注意,图中的ID号不能小于2且主站和备站的ID号相同。通讯时选择的通讯方式如图中的Type。组态完成后需要将主动连接的CPU进行下载。 C. 在使用DP进行冗余通讯时需要建立通讯连接,连接类型选择FDL。通讯连接建立后需要将主动连接的站的CPU进行下载。 S7-300软冗余时的wincc连接设置(以太网通讯) 1. 建立变量,按照正常非冗余的方式建立。 2. 建立冗余连接。打开任意一个编辑画面,在动态向导中的系统函数中选择创建冗余连接如图 , 选择主用的连接如图,选择的是SXYC。 设置备用的连接如图 3. 在全局脚本中添加脚本 MSRTCreateMsg( ServiceID, &MsgCreate, &Error ); } } } if ( ServiceID != 0 ) { MSRTStopMsgService ( ServiceID, &Error ); } if ( GetTagDWordWait( "@SXYC@ConnectionState" ) == 0 ) { SetTagDWord( "@SXYC@ForceConnectionState", 1 ); } else { if ( GetTagBitWait( "SWR_wincc.Standby" ) == TRUE ) { SetTagDWord( "@SXYC@ForceConnectionState", 0 ); } } return 1; 只需要紫色的C语言这其中的几个变量"@SXYC@ConnectionState", "@SXYC@ForceConnectionState"这两个变量在前边说到的@SW变量组里边有。其中的SW是连接的名字,需要对应上自己前边建的连接的名字。"SWR_wincc.Standby"这个变量就是FB101冗余程序块的背景数据块中的变量DB***.DBX9.1,这个变量是手动建立的,名称也可以自己设定, ***是在PLC冗余程序中调用冗余程序时自己设定的背景数据块号,我用的是DB5,所以我这里变量就连接DB5.DBX9.1这个数据位。 附录 FC100各引脚的含义 参数名 数据类型 描述 例子 AG_KENNUNG 字符型 SIMATIC 300(A) 站应当填 ‘A’ SIMATIC 300(B) 站应当填 ‘B’ ‘A’ DB_WORK_NO 数据块名称 软冗余功能实现所需要使用的内部数据块,用户不用生成该块,也无需读写其中的数据 DB1 DB_SEND_NO 数据块名称 存放发送数据所使用的内部数据块,A→B或B→A,用户不用生成该块,也无需读写其中的数据 DB2 DB_RCV_NO 数据块名称 存放接收数据所使用的内部数据块,AßB或BßA,用户不用生成该块,也无需读写其中的数据 DB3 MPI_ADR 整型 对方站的MPI站地址,进行MPI网络数据同步时才有意义 4 LADDR 整型 CP通讯处理器组态的硬件地址,采用PROFIBUS或Ethernet网络进行数据同步时才有意义 256 VERB_ID 整型 网络链接的ID号,在NETPRO窗口中组态的链接的ID值,如FDL Connection、ISO Connection或S7 Connection。 7 DP_MASTER_SYS_ID 整型 DP主站网络的ID号,你可以在硬件组态中双击链接ET200M从站紫色的PROFIBUS主从网络,获取该ID值(Master System No)。 1 DB_COM_NO 数据块名称 FB101所用使用的背景数据块,需用户手动生成该块,并可以读取状态字DBW8和控制字DBW10,获取系统信息或手动切换主备系统 DB5 DP-KOMMUN 整型 确定链接ET200从站的DP通讯口类型: 1. 使用CPU上集成DP通讯口链接ET200从站; 2. 使用CP通讯卡上的DP通讯口链接ET200从站 1 ADR_MODUS 整型 CPU分配I/O地址的矩阵的增量,不同CPU的地址矩阵不同: 1, 对于基本地址 0, 1, 2, 3 ... 4, 对于基本地址 0, 4, 8, 12 ... 1 PAA_FIRST 整数 冗余的ET200M站第一个输出字节的地址 88 PAA_LAST 整型 ET200M站最后一个输出字节的地址,PAA_FIRST 到 PAA_LAST的字节范围必须是连续定义的。 107 MB_NO 整型 冗余的M数据区的起始字节地址 0 MB_LEN 整型 冗余的M数据区的字节个数,如MB_NO为20,MB_LEN为30,则MB20-MB49这个数据段为冗余数据区; 4 IEC_NO 整型 冗余的IEC定时器、IEC计数器所使用的起始背景数据块 111 IEC_LEN 整型 冗余的IEC定时器、IEC计数器所使用的背景数据块的个数,如IEC_NO设为111,IEC_LEN设为7,则DB111-DB117为存放冗余同步定时器、计数器的背景数据去 0 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从站,站号必须连续。 2 SLAVE_DISTANCE 整型 确定所链接ET200从站上IM153-2模块的PROFIBUS DP站地址: 1. 2块IM153-2模块的DP口使用相同的站地址; 2. 2块IM153-2模块的DP口的站地址为n和n+1; 1 DB_A_B_NO 数据块名称 通过数据同步链路(Redundency Link),A、B站之间还能进行一些非冗余数据通讯,即2个PLC之间的普通数据交换,该参数即定义从A站到B站,交换的非冗余数据块。 DB11 DB_A_B_NO_LEN WORD A站到B站,非冗余数据块中交换的字节数,如DB_A_B_NO设为DB11,DB_A_B_NO_LEN设为. W#16#64,则A站的DB11.DBB0-DB11.DBB99 被复制到B站的DB11.DBB0-DB11.DBB99,因为W#16#64代表16进制64,即一共复制100个字节数据。 W#16#64 DB_B_A_NO 数据块名称 该参数即定义从B站到A站,交换的非冗余数据块。 DB12 DB_B_A_NO_LEN WORD B站到A站,非冗余数据块中交换的字节数,如DB_B_A_NO设为DB12,DB_B_A_NO_LEN设为. W#16#64,则B站的DB12.DBB0-DB12.DBB99 被复制到A站的DB12.DBB0-DB12.DBB99,因为W#16#64代表16进制64,即一共复制100个字节数据。 W#16#64 RETURN_VAL WORD 调用FC100的返回值,为0代表正常,其他返回值您可以在错误代码表中找到对应的错误原因。 MW2 EXT_INFO WORD FC100中内部调用的一些功能块所返回的错误代码 MW4
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服