SIEMENS PLC 系统软件冗余调试的常见问题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
问题1:硬件组态需要注意什么?
回答:软冗余系统的冗余控制只能通过ET 200M实现,按照图1进行组态。A、B站的组态必须确保一致,可以拷贝ET200M的组态,在另一站点组态中使用图2所示菜单操作。
图1
图2
问题2:哪些模块可以支持软冗余?
回答:可以通过软冗余手册查询,或参考以下链接的FAQ。
42614519
问题3:FC100“SWR_START”中定义的数据区,哪些是冗余数据区?哪些是非冗余数据区?有什么区别?
回答:如图3红色区域,冗余同步数据区包括:过程映像输出区/DB/IEC/M;如图3绿色区域,非冗余数据区包括:DB。冗余数据区,主站的数据会通过冗余链路覆盖到备用站,保证主备之间数据同步;非冗余DB区,无论主备,数据按照定义的A-B B-A方向传递。注意!无论冗余数据区还是非冗余数据区,A、B站点的长度必须一致。如果不需要使用,长度定义为0。
图3
问题4:软冗余中DB块的影响。
回答:软冗余系统中会使用一些特殊功能的DB块,在FC100“SWR_START”中定义,如图4:
图4
A:软冗余工作DB,程序会自动生成,不要在项目中手动添加;“DB_SEND_NO”、“DB_RCV_NO”定义的DB,在冗余站两侧一致。
B: FB101“SWR_ZYK”的背景数据块,注意生成DB5的长度。如果创建出错,CPU能够正
常运行但是SF灯报错,诊断缓冲区如图5:
图5
查看DB5的长度如图6,只有100字节,此时双击打开DB5看不到内部参数,如图7。可以删除DB5,重新生成FB101“SWR_ZYK”背景数据块。正常MPI同步-194字节;以太网
/PROFIBUS同步-358字节。
图6
图7
C:冗余DB区,主站的数据随时同步备用站。需要手动创建,IEC定时器的背景数据块也需要生成,A、B站点长度一致;生成的DB块的长度需要大于2个字(新生成的DB块,内部只有一个INT变量,长度2字节)。否则,CPU会停机,诊断缓冲区报如图8错误:
图8
D:非冗余DB块
不要手动创建,程序自动生成。
A-B B-A的DB必须同时使用,不能只有一个方向的(A-B 0 BYTE ,B-A 100BYTE -----B STOP;B-A 0 BYTE ,A-B 100BYTE -----A STOP)。否则,CPU停机,诊断缓冲区如图9:
图9
创建的长度必须是偶数字节,不能是奇数字节,如图10;A、B站点长度一致。否则,CPU停机,诊断缓冲区如图11:
图10
图11
问题5:其他冗余同步数据区的影响。
回答:其他冗余同步数据区如下,包括过程映像输出区和M区,如图12。主站数据随时同步到备用站。过程映像输出区不要大于CPU允许范围,而且每个ET 200M从站允许最大32字节;M区大于1个字节,小于CPU允许最大M区范围。否则,CPU停机,诊断缓冲区如图13。
如果不需要使用,长度定义为0。
图12
图13
问题6:修改完FC100“SWR_START”的参数,重新下载后为何会导致CPU报错?
回答:FC100“SWR_START”在CPU启动会生成相关的DB块,修改参数后必须删除已生成旧的DB块,否则会导致CPU故障。手册描述如图14:
图14
所以,修改完FC100“SWR_START”参数后,建议使用下面方法重新下载。
方法1:
1.打开项目在线窗口,如图15。
2.删除所有程序块,如图15。
3.重新下载块,如图16。
4.对CPU进行存储器复位操作。
图15
图16
方法2:选中“Blocks”,按照图17所示菜单进行下载(删除MMC卡中所有的块,并把新的程序写到卡中,同时对CPU RAM进行一次复位)。
图17
问题7:同步失败的原因?
回答:当同步失败时,FB101“SWR_ZYK”的返回值会报16#8015的错误,如图18,同时状态字DB5.DBX9.5置1,如图19。在确保物理连接正常情况下,检查下面的参数设置。
图18
图19
根据不同的同步方式,注意FC100 “SWR_START”的参数,如图20。“MPI_ADR”表示对方的MPI地址,对于MPI同步有效;“LADDR”“VERB_ID”对于
PROFIBUS/ETHERENT同步有效,分别代表同步CP的硬件地址和连接号,如图21。
图20
图21
选择MPI同步,冗余程序块会调用SFC65“X_SEND”和SFC66“X_REV”进行数据同步,占用S7-300 CPU的2个“S7 basic communication”连接资源,如图22。注意,要确保在组态中预留足够的资源,如图23,否则会因为连接资源不够影响同步链路的通讯。
图22
图23
问题8:FC102 “SWR_DIAG”作用。
回答:FC102 “SWR_DIAG”必须在OB86中调用,软冗余系统才会对DP总线错误做出判断,从而控制主备切换。注意!如果不调用,此时状态字不会报任何错误,也不会影响CPU故障导致主备切换。但是对于此时出现的总线故障软冗余系统不会切换,但是外部IM153模块会执行切换。注意!FC102 “SWR_DIAG”一定不能修改块编号。
问题9:为什么状态字不稳定,DB5.DBX9.5 0-1闪烁?
回答:如图24,DB5.DBX9.5 0-1闪烁表示同步有时成功有时失败。首先,要保证两个CPU 之间冗余数据和非冗余数据区大小一致。其次,冗余主备CPU之间同步过程如图25所示,数据的同步是随着FB101“SWR_ZYK”的执行实现的,所以要确保同步成功,需要两个CPU 对FB101“SWR_ZYK”的调用周期一致,建议在OB35中调用(如果在OB1中调用,确保OB1循环扫描周期相差不多)。