
通过STEP7Basic的断线功能,您可以检测到模拟量电流输出的断线事件。您可以使用诊断中断组织块(OB82)评估断线事件。本说明中使用信号模块SM1234。您也可以使用其它模拟量输出信号模块或者信号......
通过STEP7Basic的断线功能,您可以检测到模拟量电流输出的断线事件。您可以使用诊断中断组织块(OB82)评估断线事件。
本说明中使用信号模块SM1234。您也可以使用其它模拟量输出信号模块或者信号板。
一.S7-1200PLC中添加模拟量电流输出的信号模块
1.S7-1200PLC添加信号模块,这里不过多说,大家可以看下系统手册

2.在设备组态中添加信号模块
浏览硬件目录。在硬件组态中拖拽并释放设备到S7-1200机架上。

3.配置模拟量输出通道,使能断线检测功能
在“项目树”中打开“设备组态”。
在“设备视图”中选择模拟量信号模块。
浏览模拟量信号模块的“属性”,“模拟量输出”“通道0”。
选择“电流”作为模拟量输出类型。

注意
替换值的范围是[032511]。对于20mA的电流输出,对应的值是27648。
二.使用“诊断中断”OB评估断线事件
当模块检测到错误时调用“诊断中断”OB。
如果有诊断功能的模块使能了诊断中断,当检测到错误时,“诊断中断”OB中断循环程序。
信号模块的诊断灯“DIAG”会闪烁,相关的通道将点亮。
1.增加“诊断中断”组织块OB82
浏览项目树的“添加新块”条目。
选择“诊断中断”OB。
注意
在程序中只可以使用一个诊断中断OB。

2.读取“诊断中断”OB启动信息
浏览指令窗格,选择“指令”“传送”。
拖拽传送指令到“诊断中断”OB网络中。
将“IOstate”标签移动到全局标签(例如“DB1:w_IOstate”)。
编写需要监控的其他标签,请参考图.05中的例子。

3.评估“诊断中断”OB启动信息
“诊断中断”OB有如下启动信息:
“IOstate”(WORD)
“IOstate”包含有诊断功能模块的I/O状态。
在表3中可以找到“IOstate”标签的详细信息。
“laddr”(HW-ANY)
这是硬件标识:
硬件标识(HW-ID)鉴别模块或者模块功能单元(例如输出和高速计数)。硬件标识由完整的数字组成并且由系统连同诊断报警一起报告,来定位故障模块或者功能单元。(更多细节请参考图.7)
通过浏览“项目树”中的“PLC变量”,您可以确定功能单元的硬件标识(HW-ID)。选择“PLC变量”窗口的“常量”标签。表格列“值”中列举了所有已使用的硬件标识(图.06)。
“Channel”(UINT)
“Channel”包含使用于信号模块的输出通道的数量。
“multierror”(BOOL)
“multierror”位表示超过一个错误发生。

三.STEP7Basic在线诊断
当使用STEP7Basic在线访问S7-1200PLC,可以使用诊断功能。
在线S7-1200PLC。PLC的弯曲信号表示诊断错误。(图.07,蓝色环)。
浏览“项目树”的“在线和诊断”。
浏览“在线访问”窗口的导航区域,进入“诊断缓冲区”。
在“事件”表里选择断线事件。
在“事件”表下,将显示选定事件的详细内容。您可以找到HW-ID,通道号,事件类型。
注意
“事件到来”表示事件的开始,在该例子中为断线。
“事件离开”表示事件的结束。
信号模块“DIAG”灯和相关通道的指示灯会闪烁。

“IOstate”标识
下面的表格显示“IOstate”标识可能的“I/O”状态。
