电机启动时单片机死机故障的分析
几天前,一个朋友碰到了一个棘手的技术问题,找到了我。
朋友应其客户要求找人设计了一款用于控制显示屏上下位置的装置,功能比较简单:
根据按键操作或者是蓝牙命令调节电脑显示屏的上下位置;
这样做好了,客户不远万里来到工厂一起调试样机。
在关键节骨眼上,样品掉了链子:只要一启动电机,单片机就死机重启。
反复测试和调整,始终无法解决问题。
无奈之下,找到了我这个有几十年工作经验的工程师。
我让朋友把电路图和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,做输出短路保护,避免输出短路时烧断铜箔。
MCU单片机死机或控制失效后,如何有效保护负载的电路
玩单片机的都可能遇到过因外部干扰或因软件BUG导致死机,这对于有功率负载的电路是极为不利的。现在MCU都有了WDT看门狗,当计数溢出就强制进行复位。但如果单片机因某种原因(如静电、浪涌等击穿)直接导致损坏,使其输入输出状态无法控制,且无法预料时,可能会造成不良后果甚至人身安全。如电机控制、逆变器等,当异常发生MCU输出端一直输出固定电平(这里假设高电平驱动)会导致线圈进入饱和,产生大电流发热烧毁线圈甚至是起火引发一系列不可预料后果。那如何去有效避免这类问题的发生呢?电机/逆变驱动,任一MOS持续导通都会导致线圈饱和大电流发热
首先,最大的问题是单片机失效后,IO端口状态无法预料,只能切断负载供电,所以只要能检测到MCU是否正常工作,然后去控制负载供电开关就可以避免上述问题了。顺着这个思路,我们可以让单片机一个IO口一直输出50%占空比PWM信号,用一个电容进行隔离,当正常工作时PWM信号可以通过电容,经过整流滤波驱动MOS管导通,当死机后就没有PWM信号输出了,此时不管IO口是持续的高还是低电平,经过电容后级都没有电压了,此时MOS管截止负载供电被关断,这样就有效保护了负载。 最后结合上图重新梳理一遍保护过程。当单片机正常运行时IO1持续输出PWM信号,整流滤波后推动后级MOS管导通,提供负载供电;当单片机死机或失效后,就没有PWM信号输出,无论输出是持续的高或低电平,都没有整流电压推动后级MOS开关管,此时MOS管 截止,负载断电!本电路重点运用了电容的隔直流特性,既能让连续变化的PWM耦合通过,又可以阻止直流电压通过,从而有效检测MCU是否异常,同时控制负载供电开关。希望可以抛砖引玉,欢迎大家举一反三,提供宝贵建议共同学习。专注原创技术干货分享,喜欢的话评论转发吧,加关注可享更多干货内容!
相关问答
单片机烧坏 了?单片机烧坏。有两个原因。一是:电压失控,超过五伏电压,过高的电压烧坏芯片。第二是:大片机受潮、进水导致芯片烧坏。单片机(Single-ChipMicrocomputer)是...
单片机烧坏 会发烫吗?单片机烧坏一般不会发烫。单片机是一种集成电路,它包含了计算机的基本电路和处理器,是许多电子设备中的核心部件。在单片机烧坏的情况下,它通常不会像电热丝...
单片机 忽然就烧录不进去了。。。-ZOL问答估计是驱动的事,或者是单片机烧坏了软件问题。用4.83,稳定好用看单片机的特性说明书PDF具体点,要是程序进不去,应该是你的USB线有问题,要是其他问题,应该是...
单片机 短路了会 烧坏 吗?肯定会烧灯。任何电器、电路都怕短路,因为这个短路电流就是电源直通放电的强度。单片机内的电子元件,在其电路上运行的电流都有额定电流标准,过载都有可能烧坏...
路过的大神,因为搞 单片机 芯片的正负极反接了电脑USB口坏掉了...这个要看是什么坏掉了,如果是主板上的保险之类的期间坏了,换一个就行,几毛钱的事,你会单片机的话这个工作可以自己完成。如果损坏比较严重,或者夹层线路烧坏了...
单片机 串行程序不工作?单片机不工作,稍微有点基础的人都会去查电源、晶振等硬件及源代码,关键是具体到一个特定项目(系统)怎么去查,就此做一些个人经验介绍。1.单片机本身就是集...
我在焊 单片机 最小系统 好像数据烧写不进去 是不是虚焊的起因...要么加强焊一次!一般第一次焊板很容易出一些问题,但是你要相信一定能成功,可能的失误有:1、烧写器驱动是否安装;2、单片机是否烧坏;3、电源是否...
如果给 单片机 IO口加5v电压,单片机会 烧坏 吗?〔5v电源供电的单片机〕?如果是输入端,应该没事。因为5V供电的单片机大都是采用TTL或TTL兼容的信号,而此时加5V,被认为是正常的1电位的范围。如果是输出端,就有问题了。假如输出端是...
单片机 直接驱动mos管会 烧坏 io口吗?单片机直接驱动MOS管会存在一定的风险,因为MOS管是电压驱动的原件,在工作时可能会产生较大的电压和电流。如果单片机的供电电压小于MOS管的工作电压,可能会导...
IGBT为什么老烧?原因一:0.3uf/1200v谐振电容,5uf/400v滤波损坏或容量不足。在电磁炉中,若0.3uf谐振电容,5uf滤波电容容量变小,失效或特性不良,将导致电磁炉LC振荡电路...原...