• Home
  • -
  • 神秘事件——充电问题

神秘事件——充电问题

回顾N月前发生的事故,充电问题悬而未决,究其缘由,还待确定

回顾上篇,我介绍了Li离子电池的一些特性,对其充放电也进行了一番描述,也许这样子就可以做出一个稳定的可充放电的产品了。其实却不然。

首先容许我说明下我们目前的一些解决方法:

  1. 更换MCP73831为MCP73832
    其实都可以充电,只不过程序上不会因为上拉的电阻误判。更换后,充电IC的stat端没有上拉电阻形成的Vdd通路,那么在stat外部加上拉电阻后,不会有电压加到充电IC的输入端,这样就解除了USB上电检测的隐患。

  2. 减小PROG的电阻
    根据Icharge = 1000/Rprog (电阻kΩ)可知,充电电流增大。这样电池放电截止(电池电压低于2.75V左右)后,充电时的涓流充电(也称预充电)电流0.1C也跟着增大,在电池不带载的情况下,电池激活时间缩短,过渡到CC/CV模式的时间变少。特别是在电池低电量后,由于充电电流极小,要恢复到“正常”情况的时间很长,从主观上给人的感觉就是充不进去,而其实是充的很慢。

  3. 程序上在电池低于3.7V左右时进入低功耗模式
    这个阈值还可以减小,只要保证电池不要过度使用。设置阈值后,系统会提前进入低功耗模式,这个是相对于没有设置过的,虽然从主观上给人的感觉是电池用不了那么久,但为了保护电池不过放,设置阈值能让电池保存时间更长,寿命更长。

  4. 程序上系统启动时进入低功耗。
    如果系统启动时负载过大,造成冲进去的电立马就消耗掉,会造成不停地充电放电,导致电池很难充满电。Li电池放电截止保护电压为2.75V,但是此时还有微弱的电压在放电,如果放置时间很久(2~3个月)不充电,电池有的会降到2.3V左右,也就是电池保护电路上DW01的过放保护电压。此时电池才真正的停止放电,而从2.3V或者更低的电压通过充电IC充电时,涓流充电的电流很小,会低于0.1C,充电IC输出给电池的电压会慢慢爬升到2.9V左右。

假设电池电压为1.7V,该电压下很多芯片都无法正常工作,或者根本就不能工作,当充电IC上电时,电池电压慢慢爬升,此时输出电压会升到1.8V、2V等,芯片开始初始化工作,程序上肯定希望上电就亮灯、震动、亮屏等提高体验,但是这就忽略了上电启动的负载。由于这些动作在涓流充电下负载较大,消耗的电流较大,导致电池充了一部分马上就放干净了,或者直接导致充电IC输出电压降低,引起了系统复位。在这种情况下电池根本充不进电,拔掉USB后,系统马上就掉电了,造成了不可挽回的后果。

通过上4点,我以为充电问题就解决了。但是问题又来了,还是有充不进去的。这些充不进去的有一个普遍的现象,就是电池电压很低,低到了过放保护电压以下。而充电IC给予的涓流充电电流很小,有的uA级别,有的只有1~4mA,在长时间充电后,部分恢复正常,部分卡在某个电压值下一动不动。这些个电池都是在没电了也没充,一直放着不动,过了好久,再拿回来用的时候发现充不了了。而这种,我找到的唯一办法就是直接用5V电源短路电池两端,强制充电几秒钟,然后再正常充电。但是生产出的产品是封闭的,肯定不能这样子做。

联系电池厂家,也没有好的方法。只能期待在调整程序,修改充电电流后,电池能从过放模式激活。

Reference

1.DW01-G-DS-10_EN


CC BY-SA 3.0
------------------------------------Writen by yokay------------------------------------