问题:
当带诊断能力的S7-300模块检测到一个错误时,会发送一个诊断报警要求CPU工作。CPU将调用外设故障诊断任务并提供任务开始起动信息。然而,TSI#详细资料仅提供最前面4个字节的诊断信息。那么如何读出所有的诊断信息?
解答:
这需要读取模块,使用_ReadRecord功能来完成读取。如下所示程序的例子中,展示了外设故障诊断任务的任务起动信息的测定。如果选中的模块已发出一个过程或诊断报警,则在MotionTask_1中读出诊断数据。
模块的逻辑地址在变量Log_Address_Diag_Data中定义,从该地址可读出诊断信息。
结果可对如下变量进行操作:
Read_dataLength:模块返回的诊断数据长度。
Read_Data:模块诊断数据/DS1的结构在模块手册中有描述。
RV_ReadRecord:_ReadRecord功能的返回值/ -见_ReadRecord在线帮助功能。
程序不依赖于使用的SIMOTION平台。
见条目ID:11886029.
“关于SIMOTION的外围装备的兼容性列表”ST程序
参阅附件
D_BG.st ( 2 KB )
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc339733.html