真实案例!接触器居然能引发PLC这样的故障
大家好,本周又为大家带来了西门子杨工在工作现场处理的真实案例了,这次杨工带杨工来到了一个客户的现场,客户所在的行业是机电行业。
该现场使用的是西门子的S7-300的PLC,该项目运行了一年多,一直有问题,但近出现问题比较频繁,现象是每天从CPU次上电运行,大概30分钟后,开始出现停机的情况,停机时SF、STOP灯亮。此时只能通过手动复位,CPU才能恢复运行。而之后,该现象将随时出现,并且越来越频繁,甚至有时几乎每个程序周期都会停机,严重影响了用户的生产。
根据故障情况,杨工初步怀疑是现场存在电磁干扰。杨工决定奔赴现场对问题进行定性并决定终处理方案。到现场后,杨工观察PLC运行的情况。杨工发现,现场采用的是西门子S7-314C-2PN/DP的CPU,在运行过程中会出现系统故障,但能够自动消失(图1)。
图1:PLC报系统故障
之后,杨工观察了故障出现的情况,发现该故障的出现是有规律的:当Q5.4动作时,该SF灯会亮,当Q3.4动作时,该SF灯消失。杨工怀疑是程序出现问题。通过读取在线诊断信息,发现CPU报BCD码转换故障(图2)。
图2:CPU在线诊断信息报BCD码转换故障
经过与编程人员的交流,发现是上位机的某时间参数设定超限。该参数设计设定值范围应为0~99,但现场设定为100,程序每次运行至此都会报BCD码转换故障,并导致SF灯亮,而当该部分程序运行结束后,故障就会消失。
将该值改为0~99之间的任意值后,SF灯不再点亮,该系统故障不再出现。这是杨工在现场发现的个故障,但这个故障并没有导致现场设备停机。
之后随着杨工继续观察,大概经过了1个小时后,突然出现了一次停机故障。现象就是CPU停机时,SF灯和STOP灯亮,5V灯亮(图3)。
图3:CPU停机
此时,只能将CPU上的拨码开关拨至STOP位置再重新拨回RUN位置,CPU才可以正常重启。杨工在线检查CPU的诊断信息后发现,此时CPU报的是IO模板丢失的故障(图4)。
图4:在线诊断信息
从诊断信息情况看,应该是CPU在瞬间无法识别其模板,导致CPU进入停机状态。由于现场的电气柜内有较多的继电器和接触器(图5),杨工怀疑是由于这些感性负载动作时产生的干扰导致了CPU从而导致了停机,杨工对CPU的电源进行了检测。
图5:柜内安装了继电器和接触器
通过波形,可以看到在CPU的24V电源线上,随着设备的动作,能够检测到有高频干扰的存在,其中有的信号较强(图6)。
图6:在24V电源线上检测到的共模干扰
在柜内,杨工发现了一块镀锌板(图7)。杨工估计该镀锌板是用于系统接地的,但实际情况是,并没有任何的PLC系统接地线连到该镀锌板上,也没有发现该镀锌板接到外部的“地”(图7)。
为了减小感性负载对PLC的冲击,杨工将PLC的安装底板与该镀锌板相连接,将该镀锌板连接到外部的金属结构上(图7)。
图7:PLC 做了接地处理
为此,现场进行了一系列的改动和布线、接线工作。但随后杨工发现,系统接了“地”之后,CPU运行一段时间,依然出现停机现象。杨工又检测了PLC系统220V电源线上的干扰情况,果然发现干扰信号依然存在(图8)。
图8:PLC220V电源线上的干扰
由于杨工已经将系统进行了接地处理,那么该干扰信号是怎么进入到电源的呢?杨工检测了CPU的M端与PE之间的电阻,发现该CPU的M端与PE之间存在电阻值(图9)。并且该值在0~6M欧之间跳变。
图9:检测CPU的M与PE之间存在电阻
但314C系列的CPU的24V电源M端与PE端在内部应该是短接的,该电阻值是不应该存在的。现场刚好还有一个同样类型的CPU,杨工对一块CPU进行了检测了,发现该CPU的电源M端对PE之间的电阻值为0欧姆。这就意味着,出现停机现象的CPU本身也已经存在一些问题。
由于现场出现跳停大概要30分钟左右,杨工每次需要观察到底是什么情况下该CPU会停机都得将近1个小时,每次停机的情况都不同,很难发现规律。但通过一段时间的观察,杨工发现:当设备的某个关料阀动作的时候,PLC比较容易停机,几乎每次停机都是发生在该关料阀到位的时刻。而该阀对应了一个接触器,当阀体关到位时,该接触器会断开(图10)。
图10:控制关料阀的接触器
由于关料阀动作的其液压系统电机会启动,杨工怀疑是电机电缆布线不规范导致其对系统的220V电源电缆产生了干扰,杨工将该电机电缆从线缆沟里找出来,单独进行了布线,远离了供电电源电缆,从而避免了电缆之间的干扰,但随后杨工发现,CPU依然会停机!!!该干扰不是来自于电机电缆的,应该还有别的原因。
为此,杨工对柜内的接触器动作的时刻的波形进行了检测。由于该接触器并没有配备浪涌吸收回路,在接触器动作的时刻,都会出现脉冲干扰,有时干扰脉冲的幅值还非常的高(>20V),但每次的干扰脉冲大小并不相同。是否是这些干扰导致CPU的停机呢?于是杨工对该干扰脉冲进行了检测。
通过一段时间的观察,杨工发现:由于柜内安装了较多的接触器和继电器,从示波器上可以看到很多干扰脉冲,并且幅值也并不相同。由于杨工此刻重点关注的是连接关断阀的接触器,杨工在每次该接触器断开时都会格外注意示波器的屏幕,但杨工发现,该接触器的负载大,但并不是每次的干扰幅值都是高的,而有时屏幕上也会出现一些幅值很高的干扰脉冲,但此时大的接触器却并没有动作。并且系统停机时,屏幕上并没有出现很高的干扰脉冲。这就意味着--柜内每个接触器或者继电器动作时,都有可能导致CPU停机。
但这与杨工观察到的情况似乎有有些矛盾,因为杨工逐渐发现,系统确实是在关断阀体的时候容易停机,不是每次动作都停机,但每次停机几乎都是系统的关料阀动作到位时发生的。但为什么停机时没有看到大的干扰脉冲出现呢?带着疑问,杨工进行了多次的测试,直到有一次,杨工看到CPU停机的时刻,刚好是接触器断开的瞬间,在示波器上发现杨工也发现了一个非常大的干扰脉冲(图11)。
图11:CPU停机的瞬间检测到该脉冲
至此,杨工终于看到了该断路器断开的瞬间,出现了较大的干扰脉冲,导致CPU停机。原来,终还真是这一个接触器引起了系统停机等等一系列的故障。当然,根据杨工建议,现场将该接触器外面增加吸收回路后,问题得到彻底的解决。
但这里有个问题,就是为何停机时示波器并不是每次都能抓到大的干扰脉冲?杨工的分析,认为应该是由于设备动作时,并不见得每次都能产生大的干扰;系统干扰可能是一个累积的过程,由于之前感性设备断开时产生的干扰没有能及时的释放掉,甚至随后的一个很小的干扰也会终导致系统出现问题。
通过这个现场出现的问题,杨工帮我们工友出以下两点,是现场检测环节中比较关键的要素:
1.自动化现场的接触器、继电器等带感性负载线圈的设备必须增加浪涌吸收回路。
2.现场电气系统必须接地。