首页 理论教育 SFC13简介-西门子工业通信网络组态编程与故障诊断

SFC13简介-西门子工业通信网络组态编程与故障诊断

时间:2023-11-16 理论教育 版权反馈
【摘要】:SFC 13可以读取的最大报文长度为240B。4号、5号和7号从站的诊断地址分别为1022、1021和1020,对应的十六进制数为16#3FE~3FC。

SFC13简介-西门子工业通信网络组态编程与故障诊断

1.项目的硬件结构

在SIMATIC管理器中创建一个名为SFC_13的项目(本章的项目在随书光盘的文件夹“\Project\Diag”中),其硬件结构与组态的方法与5.2.3节中的项目SFC_12的相同(见图5-35),其DP主站为CPU 313C-2DP,4号从站为ET 200B-16DO,5号从站为ET 200B-16DI,7号从站为ET 200M,它有一块8DO模块、一块16DI模块和一块2AO模块。2AO模块的0号通道被组态为4~20mA的电流输出,1号通道被组态为0~10V的电压输出,有自诊断功能(见图6-9),0号通信的输出电路断开时,将会产生诊断中断。

2.诊断数据的长度

通过调用系统功能SFC 13“DPNRM_DG”,可以查看遵循EN 50 170标准的DP从站的诊断信息。SFC 13可以读取的最大报文长度为240B。

SFC 13的参数RECORD用来定义存放诊断数据的目标地址区,只能使用BYTE数据类型,其字节数(6~240)与从站的型号有关。

由随书光盘中的文件《ET 200B Manual_e》可知,ET200B数字量模块的诊断数据有13B(13个字节)。由随书光盘中的文件《ET 200M操作说明》可知,ET200M的诊断数据与IM153的型号有关,实验所用的IM153-1的订货号为6ES7 153-1AA02-0XB0,其诊断数据的长度为29B。由IM153-1的模块信息对话框的“十六进制格式诊断”信息可知(见图7-5),实验所用的IM 153-1的诊断数据的长度为29B。

如果为RECORD指定的存放诊断数据的地址区长度,小于从站手册提供的诊断数据字节数,不能读取完整的诊断数据,甚至可能导致读不出诊断数据,此时RET_VAL提供相应的错误代码。反之,目标区域将接收诊断数据,RET_VAL中是接收的实际字节数。(www.xing528.com)

3.从站的诊断地址

OB86_RACKS_FLTD的高位字(LW8)是从站的诊断地址,用它作为SFC 13的输入参数LADDR的实参。根据它来判断是哪一个从站产生的中断。

4号、5号和7号从站的诊断地址分别为1022、1021和1020,对应的十六进制数为16#3FE~3FC。主站(2号站)的诊断地址为1023,对应的十六进制数为16#3FF。

4.诊断数据的读取过程

SFC 13是异步执行的,这就是说,从控制参数REQ的上升沿触发读请求,到读完DP从站的诊断数据的过程中,需要重复调用SFC 13。可以根据SFC13的输出参数BUSY判断是否读取完了DP从站的诊断数据,如果没有读完(BUSY=1),则返回去重新调用SFC13,只有这样才能确保诊断数据被完全读取。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈