电机启动时单片机死机故障的分析

几天前,一个朋友碰到了一个棘手的技术问题,找到了我。

朋友应其客户要求找人设计了一款用于控制显示屏上下位置的装置,功能比较简单:

根据按键操作或者是蓝牙命令调节电脑显示屏的上下位置;

这样做好了,客户不远万里来到工厂一起调试样机。

在关键节骨眼上,样品掉了链子:只要一启动电机,单片机就死机重启。

反复测试和调整,始终无法解决问题。

无奈之下,找到了我这个有几十年工作经验的工程师。

我让朋友把电路图和PCB发给了我,如下图:


电机启动时单片机死机故障的分析

电路原理图


电机启动时单片机死机故障的分析

PCB

线性变压器将220VAC转为12VAC之后,经过桥式整流由电容滤成脉动直流由稳压成直流5.0V给控制电路供电;

12VAC还给电机供电。

单片机通过继电器控制电机运行;

该电路图和PCB有以下几点值得重点关注;

1) 桥式整流后级的储能电容是1个100uF/50V的电解电容;

2) RS485的A+,B-输出没有任何保护;

3) 给电机供电的导线,从top layer到bottom layer的连接,仅用两个0.3mm/0.8mm的过孔;

单片机死机重启,比较有可能有以下两个原因:

1) 电源跌落,电机运行瞬间,电机的磁场还没有建立,电机的阻抗为导线的直流等效电阻,此时的电流非常大,高达正常工作电流的近十倍。

由线性变压器供电的储能电容仅为100uF,是远远不够的,根据本人多年的经验,线性变压器共电的储能电容至少应该为几千uF。一般多用4700uF或者6800uF。

由二极管整流桥整成的直流为频率为50Hz的脉动直流,而不是一条恒定的直线。

根据I=Cdu/dt,我们可以根据负载电流大概估算出所需储能电容的大小。

电机启动瞬间的瞬态过程中,启动电流非常大,线性变压的输出可能被拉低,没有办法给+5V的稳压电路供电;

此时,由储能电容向控制电路供电,两个继电器线圈电流为100mA,启动时间如果为100ms,如果此时允许2v的电压跌落;

电容C=100mA*100ms/2=10000uF。

2) 干扰信号耦合到复位脚导致复位,电机启动瞬间,电流变化非常大。

其产生的变化磁场也非常大,如果复位脚的导线因为这个变化的磁场感应出干扰电压,也有可能导致复位。

从PCB板上来看,电机控制线离单片机还有几十cm的距离,而且PCB的走线也没有看出形成环路。

应该不至于有那么大的干扰导致复位。

综合以上两点考虑,我立即让朋友找客户做了以下事情:

1) 用示波器测试桥式整流之后的电压波形,其不是一条恒定直流,而是一条波动的线,在的果然在电机启动时,电压发生了跌落;

2)将100uF/50V的电容改成4700uF/50V的电容,故障消失,电机启动时,单片机不再死机;

至此,问题顺利解决,最后我让朋友对该电路图以及PCB进一步做了下述改进:

1)大电流的导线不能只用两个过孔来做层间连接,过孔的载流能力很差,印象中过孔的铜箔厚度仅为0.5OZ, 仅为17um,大电流时,直接就烧毁断路了。

2)RS485的输出脚A+, B-需要加TVS进行保护;

3)为了降低干扰,可以在电机控制输出端加上TVS吸引高压的反向电动势。

4)可以考虑在电机控制输出端加上自恢复保险丝PTC,做输出短路保护,避免输出短路时烧断铜箔。


电机启动时单片机死机故障的分析


分享到:


相關文章: