欢迎来到天天文库
浏览记录
ID:40069281
大小:2.92 MB
页数:12页
时间:2019-07-19
《S7-300软冗余系统调试心得》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、S7-300软冗余系统调试心得S7-300软冗余系统调试心得集成工程部张宏伟1基本结构及工作原理1.1基本结构硬件结构包括一对S7-300控制器及I/O、ET200从站(每个从站必须包括2个IM153-2和对应的I/O模块,必须采用有源端子板)及3个通讯(A站对分布式IOPROFIBUS-A、B站对分布式IOPROFIBUS-B、A站对B站数据同步(MPIPROFIBUSEthernet))。软件需要STEP7V5.x及软冗余软件包V1.x基本结构如下图所示:图1.1S7-300软冗余基本结构由上图可以看出,软冗余可以实现的冗余有ü主机架电源及总线冗余ü控制器冗余ü现场总线冗余
2、第12页共12页S7-300软冗余系统调试心得1.2工作原理在软冗余系统进行工作时,A、B控制系统(CPU、通讯、I/O)独立运行,有主系统的PLC掌握对ET200从站的I/O控制权。A、B系统中的PLC程序有非冗余用户程序段和冗余用户程序段组成,CPU在执行冗余程序段之前会读取系统的冗余状况,若为主系统则PLC执行全部程序,若为备用系统则跳过冗余程序段只执行非冗余用户程序。图1.2软冗余工作流程1.3程序结构对于硬件组态,可采用西门子提供的冗余模板,修改CPU信号并添加ET200从站,比较简单,没有什么特别的地方,这里就不再赘述。S7-300软冗余系统的用户程序包括非冗余程序段、
3、用户程序段、系统诊断功能块、站间冗余数据备份等组成,一般建议将非冗余程序段写到OB1中,而冗余程序段写在OB35中。非冗余程序段和冗余程序段与普通系统的写法一样,区别只是放置的位置不同。在编制冗余程序的时候需要先调用FB101功能块,用来判断整个系统的冗余状况,在FB101的背景DB块中可以读取到冗余连接状况和标志位。利用冗余标志位来选择执行或者不执行冗余程序段。因此编制冗余程序可分为4部分,如下图所示:第12页共12页S7-300软冗余系统调试心得图1.3软冗余程序结构首先启动系统冗余数据同步功能,根据状态字判断是否为主控制器,是否需要执行冗余程序段,若为主控制器执行冗余程序段,
4、否则停止系统冗余程序段。在线监控中,FB101的RETURN_VAL若为0,则说明系统冗余正常,若为8015则说明数据同步不成功。冗余系统控制字和状态字如下图所示图1.4软冗余状态字第12页共12页S7-300软冗余系统调试心得图1.5软冗余控制字表1软冗余系统用到的一些功能块注意1:冗余程序段中不能使用S7的定时器和计数器,只能使用IEC定时器,原因是在冗余数据同步的时候无法对S7的定时器和计数器进行同步,从而导致系统执行时存在问题。注意2:可以通过写控制字的对应位,对冗余系统进行手动切换,方便调试。第12页共12页S7-300软冗余系统调试心得注意3:由于S7-300软冗余系统
5、控制器切换时间远小于操作站通讯卡的切换时间,导致现场会发生控制器切换但通讯未切换的问题,用户将只能看到而无法操作数据,在发生紧急状况时造成不良后果,因此可以提取状态字并在画面中显示提示用户做通讯卡切换。2调试心得及注意事项软冗余的调试中有很多陷阱,容易误导、犯错,,导致系统无法运行,下面将结合西山煤电项目调试过程中出现的一些调试问题,一一列举。3.1冗余数据定义在FC100“SWR_START”功能块中定义了冗余同步数据区包括:过程映像输出区/DB/IEC/M;非冗余数据区包括:DB。冗余数据区,主站的数据会通过冗余链路覆盖到备用站,保证主备之间数据同步;非冗余DB区,不要手动创建
6、,程序自动生成;无论主备,数据按照定义的A-BB-A方向传递。注意1:无论冗余数据区还是非冗余数据区,A、B站点的长度必须一致。如果不需要使用,长度定义为0。注意2:冗余数据区DB块定义可以不连续,但是只要定义了,单个数据区的长度必须大于2(默认空DB块长度为1个INT=2)注意3:非冗余数据区A-BB-A的DB必须同时使用,不能只有一个方向的(A-B0BYTE,B-A100BYTE-----BSTOP;B-A0BYTE,A-B100BYTE-----ASTOP)。否则,CPU停机。注意4:非冗余数据区创建的长度必须是偶数字节,不能是奇数字节,A、B站点长度一致。否则,CPU停机。
7、图2.1数据冗余设置第12页共12页S7-300软冗余系统调试心得3.2数据同步用的特殊DB块软冗余工作DB(DB1、DB2、DB3),程序会自动生成,不要在项目中手动添加。FB101“SWR_ZYK”的背景数据块DB5,注意生成DB5的长度。正常MPI同步-194字节;以太网/PROFIBUS同步-358字节。由于冗余系统一旦启动就会自动生成工作DB块(DB1、DB2、DB3、DB5),DB5存储在EPROM中,因此在之后的运行中这些信息将不会被改变(包括程序下载后
此文档下载收益归作者所有