plc能够对有诊断能力的设备进行错误检测和报告。这些错误称之为诊断错误。系统能够检测以下诊断错误:    无用户电源(信号模块/信号模板)    超过高限位(模拟量输入或输出)    超过低限位(模拟量输入或输出)    断线(电流输出)    短路(电压输出)    所有诊断错误将会触发"diagnosticerrorinterrupt"(ob82)。"diagnosticerrorinterrupt"(ob82)包含启动信息,可帮助用户定义错误发生的情况:    哪个设备与通道发生错误    当前事件是到来事件还是离去事件    用户可以在ob82中编写指令用于确定这些信息并可采取相应的措施。    使用"diagnosticerrorinterrupt"组织块(ob82)评估诊断错误事件    当下列条件满足时,几个不同诊断错误中的任何一个产生或离去都将触发诊断错误事件:    ob82已被添加到s7-1200plc中。    模块已使能诊断错误事件。    假如ob82不存在,cpu将忽略错误。    假如有诊断能力的模块发现错误时,"diagnosticerrorinterrupt"ob82将会中断循环程序的正常执行。    当创建一个新的项目时将不会自动添加"diagnosticerrorinterrupt"(ob82)。使能并理解不同的诊断错误事件    操作系统会监视带有诊断能力的模板是否发生上面提及的诊断错误。诊断错误事件将会被闪烁的红色led灯指示。下面的地表格中列出了不同诊断错误事件的额外信息,如何使能它们,已经led灯是如何指示的。使用step7basic在线诊断。    当使用step7basic在线连接s7-1200plc时,可以使用"online&diagnostics"功能:    在线连接s7-1200plc。    浏览"项目树"找到"在线和诊断"。    浏览"在线访问"窗口的导航区域找到"诊断缓冲区"。    从"事件"列表中选择一个诊断错误事件。    在"事件"列表下面,显示有所选事件的详细信息,在这里可以看到硬件标识(hw-id),通道号和事件类型。    说明    "incomingevent"表明一个事件的开始。
    "outgoingevent"表明一个事件的结束。
es400-25
lauer pcs 802-eeprom
smpi25imprdm128ptso
schneider tsxeef16d2 
cna14bts v2 fs 200822d
montalvo mpc-5-ce 
dnd8000
hydac db12120a-011-ce0036 
saia pcd2.e616 
telemecanique lc1 d40 lc1d40 lp1 d4011 lp1d4011 
lenze e94azhx0051 
lenze deto ir-rc irrc 104522 
4a455 control board for atv462075 
abb drives cdcmek 3 61061126
sew mfz 21d 
fmc420
euchner nz2rs-511l060c1631 
siemens 6es7193-0cb20-0xa0 
kfd2duex1d
kp 668-rc kp668rc 20926 kp 668 40400a kp66840400a
savio power control systems 107a94v-0 
sae fs-10-mod12/1 
sae it-systems fw-16 fw16 oe-5 
a0j2pw