SM331 7KF02 诊断
刘玉蓉
发布于2014-10-15 17:05
555
0
标签:
SM331 7KF02 接三线制PT100,想做个诊断,比如如果断线或热电阻坏掉,计时诊断并反馈到触摸屏上!
诊断程序如何做呢?
佳答案
SM331 7KF02 4 个通道组中的 8 点输入可编程诊断和诊断中断可以在 STEP 7 中对通道组 0 和通道组 1 的硬件中断进行编程。 但是,仅为通道组的个通道(即通道 0 或通道 2)设置硬件中断。
可以结合模拟量输入模块的短线诊断设置和调用SFC51利用诊断中断组织块OB82中的内容,利用DB13块进行在线监视或把诊断信息发送到触摸屏上可以实时监控具体通道断线故障。下面简单进行说明:
,在SIMAITC管理器中打开你的项目的硬件组态界面,双击模块7KF02,选择“输入”(Inputs)选项,选择通道组如0-1(两个通道)为电阻测量,并注意模块量程卡要与设置一致。选中“启用”(Enable)框中的“诊断中断”(Diagnostic Interrupt),如选中“诊断”(Diagnostics)选项中的0-1通道组中的“组中断”(Group Diagnostics)和“检查线路断开”(with check for wire break),点击“确定”;然后双击CPU,选择“中断”(Interrupts)选项,可以看到CPU支持OB82(诊断中断处理组织块),硬件组态完成,保存编译,下载到CPU中;
第二,完成诊断程序。OB82程序当在硬件组态中设定的诊断发生后执行,但OB82执行时可以通过它的临时变量0B82_MDL_ADDR读出产生诊断中断的模块的逻辑地址。由于STEP7不能实时监控程序的执行。在SIMATIC管理器中S7 Program(1)下插入一个STL Source文件STL Source(1)。打开OB1,依次打开左边“库”(Libraries)/Standard Libraries“(标准库)/System Function Blocks”(系统功能块)下找到SFC51 “RDSYSST DIAGNSTC”,按F1键,出现SFC51在线帮助信息,在帮助信息的底部点击“Example for module diagnostics with the SFC51”,然后双击”STL Source File“,选中全部STL Source源程序复制到STL Sources(1)中,编译保存,这时在Blocks(块)中生成OB81、O882、DB13和SFC51;打开OB82,对其中的程序做简单的修改,将19和20行的程序复制到go:后面,再进行保存,下载到CPU中;打开数据块DB13,在线监控,由于通道断线是一到来事件,所以诊断信息存储在COME数组中,可以在触摸屏中设置调用DB13中COME数组的内容,就可以判断具体的通道电阻断线故障,如COME(9)=B#16#10,表示0通道断线。