S7-400CPU故障停机的原因及解决方法

2021-11-09 15:12:53 浏览数 (1)

JZGKCHINA

工控技术分享平台

正常运行中的S7-400CPU故障停机的原因有很多种,根据具体情况主要体现在以下方面:

当CPU在其运行周期内识别到同步或异步错误(例如:DP从站或者PROFINET I/O设备的诊断报警,站故障等),将会调用相应的组织块(OB),用户因此可以对该事件作出响应。如果程序中没有事先下载相应的组织块OB,CPU会自动进入停机状态。

常用的OB组织块有以下几种

OB82 诊断报警 具有诊断功能的模块,使能了诊断报警,当检测到错误或错误消失时调用,属于异步错误,事件进入和事件离开时都调用。

OB83 插/拔报警 中央机架或扩展设备上的模块移走或插回时调用,属于异步错误,事件进入和事件离开时都调用。

OB85 程序循环错误 出现尚未加载到CPU中的报警OB块的调用事件 访问系统功能块SFB的背景数据块时出现错误 ,更新过程印象区时出现错误(模板不存在或失效)

OB86 模块机架错误 DP主站系统中的DP从站或PROFINET IO系统中的IO设备出现故障 属于异步错误,事件进入和离开时都调用

OB121 程序错误 发生程序错误时调用(如:调用的块没有下载)同步错误,事件进入时调用,事件离开时不调用。

OB122 IO访问错误 访问不存在的信号模块 属于同步错误,事件进入时调用,事件离开时不调用。

当使用故障OB时,应当编程进行故障处理或者至少应当在出错时产生一条提示信息,以便安全和正确地操作设备。

需要注意的是,此时CPU可能不再进入到stop状态,因此这些危险状态可能会被忽视。如果程序中调用了相应组织块,CPU诊断缓冲区内会有相应的事件诊断信息,如图所示,IO访问错误引起的故障报警。诊断信息中还会包含相应的故障站地址,站地址所对应的通道号。

除去以上情况,还经常出现在诊断信息中得不到任何有用提示,这种故障即使调用了多个OB块也会停机,系统无法判断故障原因,遇到这种情况多数是背板总线出现问题,背板总线的DC5V电源短路或者背板总线受到干扰。

常用处理办法:

1.检查PLC接地系统,确保接地良好,保证不被其他外界因素影响,如变频器,高次谐波等。

2.检查各模块是否正常,是否因单个模块损坏造成背板总线短路故障。若挂接从站较多,则逐步拆除从站通信电缆进行分段试验。此种情况是在保证程序模块中已具备相应的停机检测OB组织块的前提下进行。

3.外部通信故障或通信电缆短路造成的CPU停机。例CPU硬件组态如下

全系统由三个控制机架组成:(0)UR1,(1)UR2,(2)UR1。各机架之间采用的是IM460-0(发送接口模块)和IM461-0(接收接口模块),IM460-3(发送接口模块)和IM461-3(接收接口模块)进行通信,CPU采用CPU414-2DP。

检查CPU诊断缓冲区内容如下:

  • 事件 16 / 120: 事件 ID 16# 494D
  • 由 I/O 错误引起的 STOP 模式
  • 无用户相关信息(Z1):9401
  • 无用户相关信息(Z2):0000 (Z3):8000
  • 先前的工作模式:RUN
  • 要求的工作模式:STOP (内部)
  • 外部错误, 进入的事件

当发送接口模块和接收接口模块之间的通信电缆短路也同样会造成各模块之间的背板总线故障,导致CPU停机。

0 人点赞