当自己设计完的电路板通过了功能测试、性能测试、环境实验后,以为这样就万事大吉了?但是你永远也想象不到用户会把产品用在什么地方,本文介绍高温环境影响三极管性能,进而导致产品失灵的案例。
案例始末
发现问题
具体是这样的一个很简单的串口RS485电路,具体电路如下图所示,用了这个电路后就不要单独信号去管理485芯片的收发分时了,是不是很方便。
问题就是出现这这个电路上。
开发完电路之后,测试时做环境实验在55度做的,一点点问题都木有,该收收该发发。
但是一到了用户哪里工作一小会就挂了。
现场排查,发现用户把产品放在一个发热量巨大的发动机旁边。实际测了一下周围环境温度都48度以上。
为了防尘,我的板卡和一个发热巨大的主控放在一个盒子里面,而且还没有风扇,这就导致盒子里面的温度到了70多度,你们是要搞烧烤吗?
暂时我也不知道问题所在,就灵机一动就对身后的嵌入式软件小哥说,是不是你软件配置有问题,人家ARM高温了会降频,你是不是没有配置好,导致收发有问题的。小哥委屈说“没有啥特殊的啊,我都快把手册翻烂了也没有看到啊”。我首先表达对其深深的同情,然后说“哥回去帮你好好想哪里出问题了”。
回到公司后,我就用热风枪使劲对着ARM芯片吹,结果毛事没有,好家伙,锅是甩不掉了,剩下的电路一步一步的吹把,当吹到三极管时(上面电路图中的Q4),没得数据了,看来是三极管的事情,可是祸不单行啊,不吹后当温度降下来了也没得数据了,难道吹坏了?仔细一瞅,原来把电阻给吹掉了。
焊上电阻后调小风量,加大热度继续吹,又没数据了,那就把目标锁定在三极管。
分析原因
接下来,测波形吧。
分别测量上图中所标识的1、2、3点,其中电路设计中用的限流电阻为1K,三级管为9013。首先测量在常温下三个测试点的波形吧,第一点波形为隔离芯片ADuM1201输出引脚,其波形如下图所示,输出电压幅值为5V。
第二点波形为9013三级管基极控制电压,其波形如下图所示,输出电压峰值约为700mV,波动范围约为200mV,即当电平为0.7V时三极管导通,当电平为0.5V时三级管关断。
第三点波形为9013三级管集电极极电压,其波形如下图所示,输出电压幅值约为5V。
然后本人吹风小能手上线,对着就是一顿蒙吹,另一个手还要测波形,幸好没有烫出泡(不然就算工伤)从新测量了上述三个测量点,第一点的波形如下图所示,波形和加热前波形基本一致,所以即加热并不会改变ADuM1201隔离芯片的输出电压特性。
那么继续测量第二点吧,当继续加热到温度约为55度时第二点波形如下图所示,其电压的波动范围变小约为100mV即高电平减小到0.6V,但是低电平还是约为0.5V,随着温度的继续升高当温度到65度时第二点电压基本保持在0.5V,且三极管保持导通状态,因此RS485无法实现数据的发送。
好了,第三点上线,当加热到温度约为55度时第三点波形如下图所示,随着温度的升高第三点出电压保持为低电平,RS485电路为接受状态。
我K这不是坑我吗,让我来瞅瞅这三极管的特性吧(谁让我上学的时候没有好好学习呢),三级管的物理结构为两个PN结,其Ube电压特性如下图所示,其开启电压约为0.7V,而且基极与发射电压特性与二极管特性相同。右下图可以知道随着温度的升高,Ube的特性曲线整体右移,因此三级管的导通压降降低,使得控制MAX485芯片的RE引脚一直处于低电平,所以无法发送数据。
既然知道温度对三极管的影响了,那我改呗,由上面的分析可以知道,最终三极管基极钳位到0.5V是因为5V上拉10K电阻与1K限流电阻分压后将三极管基极钳位到0.5V。将限流电阻R65改为0R后波形如下图所示,可以看出电压波形在0V到0.7V之间波动。
改为0R限流电阻后,继续加热RS485电路,波形如下图所示,可以看出波形无明显变化,且串口可以正常发送数据。但由于三极管的基极将ADuM1201发送引脚强制拉倒0.7V,增大了ADuM1201的输出电流,长期运行时会对器件寿命有严重影响,不改彻底了不是我的性格。
解决问题
根据三级管的温度特性,导致了在高温运行下基极门限电压降低,若只是将ADuM1201输出限流电阻减小会造成器件寿命减少影响产品质量,因此现将三极管9013改为MOS管GMS2302,由于MOS管为压控型器件其本身不会消耗太多功耗。
MOS管GMS2302常温下栅极电压波形如下图所示,可以看出波形范围为0V到5V。
MOS管GMS2302温度约为80下栅极电压波形如下图所示,其电压波形无变化且串口可以正常发送数据。
所以呢,在设计中我要有刨根问底(躲坑)的精神,把问题彻底解决了,这个案例是我亲生经历的一个案件,虽然不大但是很够借鉴意义------得出的结论就就是:可以指导我们在以后硬件设计过程中若作为开关使用最好选择MOS管,且合理选择限流电阻。
其他解决方式
温度对PN结有影响,实际上案例如果驱动是推挽输出,电路图中的R56去掉应该也行,这样就不必换成MOS管了。
另外还可以把这电阻改用作下拉呢。
再者,还可以把R56改成驱动输出的上拉,也可以试试。
审核编辑:汤梓红
-
三极管
+关注
关注
142文章
3603浏览量
121696 -
电路板
+关注
关注
140文章
4915浏览量
97482 -
RS485
+关注
关注
39文章
1151浏览量
82158
原文标题:三极管的锅,温度过高导致产品崩了
文章出处:【微信号:单片机与嵌入式,微信公众号:单片机与嵌入式】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论