深圳鼎盛合科技系芯海一级代理商代理芯海,代理芯海高精度ADC芯片,SOC芯片,wifi及蓝牙模块
本文作者:t3486784401链接:https://www.mydigit.cn/forum.php?mod=viewthread&tid=250916&extra=手头有些容量非常小的软包锂电,直接使用市面上的代理芯海大功率充电板(500mA/1A)倍率太大,容易损坏电池。
索性拿 TP5046 搭一套充电系统,配合 Arduino 实现电压、电流采样,实现电池容量检测。
【原理】
TP4056 是 1A 锂电池线性充电器,适合 3.7v 三元锂代理芯海电池充电。芯片除了自带指示灯驱动(充电/满电),还支持单电阻 Rprog 设定、检测电流:
图中 Rprog 与恒流电流的关系:Icc= 1v/Rprog *1200实时充电电流与 Vprog 的关系:Ibat= Vprog/Rprog *1200恒流阶段 Vprog=1.0v,代理芯海充满以后 Vprog<0.1v.
使用 ADC 同步采样电池电压 Vbat、参考电压 Vprog 即可获得电压、电流参数,电流参数对时间进行积分,即可获得电池容量参数。
【硬件】
硬件的主要功能包括:电压电流滤波采样、编程电阻 Rp代理芯海rog 的动态切换Rprog 采用 8-4-2-1 比例方式由 Arduino 切换,调整 IO 通断即可设定 60mA-950mA 充电电流,步进值 60mA.。
硬件做成了 Arduino 扩展板的形式,由于 TP4056 需要有些散热设计,因而再搭棚一层 TP4056 最小系统代理芯海Vprog 由 ADC 直接采样,Vbat 经过 47k-10k 分压网络后采样,最后焊接扩展板:。
安装上 Arduino UNO 的组合样子:
深圳鼎盛合科技系芯海一级代理商,代理芯海高精度ADC芯片,SOC芯片,wifi及蓝牙模块
【软件】
由于没有复杂的控制逻辑,整套代码使用 ICCAVR 编写:
运代理芯海行过程中使用串口助手接收电压、电流数据,供后期计算使用:
附上运行固件及源码,供参考或直接烧录:公众号后台回复关键词:008,或者 可编程充电。
【效果】
堆叠板上保留了 TP4056 经典的红/绿充电状态指示,效果如下:
串口收到的数据统一替换下格式粘贴进 EXCEL,顺手处理电压电流换算:
最终 EXCE代理芯海L 绘制电池充电电压(蓝)、电流(红)曲线,含时间标签:
电流曲线(红)下方的面积即为电池容量,实际用 EXCEL 做个累加直接就有了我这个二手软包电池测得大约 160mAh 的容量从电流曲线上可以明显看出 TP4056 工作流程:恒流到4.2v,再恒压到1/10电流,最终停止充电。
电压曲线则可以看出代理芯海 3.9-4.2v 区间段容量较大,恒流持续时间较长;而 <3.7v 区间几乎没什么容量以上,使用 TP4056 搭接了一套可编程锂电充电系统,支持电压电流采样,可用于估算电池容量恒流充电电流 60mA-950mA 可调,可以适配各路中小容量的三元锂电池充电。
最后祝大家 DIY 愉快!
深圳鼎盛合科技代理芯海系芯海一级代理商,代理芯海高精度ADC芯片,SOC芯片,wifi及蓝牙模块