本文作者: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 即可获得电压、电流参数,
电流参数对时间进行积分,即可获得电池容量参数。

【硬件】

硬件的主要功能包括:电压电流滤波采样、编程电阻 Rprog 的动态切换。

Rprog 采用 8-4-2-1 比例方式由 Arduino 切换,调整 IO 通断即可设定 60mA-950mA 充电电流,步进值 60mA.

硬件做成了 Arduino 扩展板的形式,由于 TP4056 需要有些散热设计,因而再搭棚一层 TP4056 最小系统。
Vprog 由 ADC 直接采样,Vbat 经过 47k-10k 分压网络后采样,最后焊接扩展板:

安装上 Arduino UNO 的组合样子:

【软件】

由于没有复杂的控制逻辑,整套代码使用 ICCAVR 编写:

运行过程中使用串口助手接收电压、电流数据,供后期计算使用:

附上运行固件及源码,供参考或直接烧录:公众号后台回复关键词:008,或者 可编程充电。

【效果】

堆叠板上保留了 TP4056 经典的红/绿充电状态指示,效果如下:

串口收到的数据统一替换下格式粘贴进 EXCEL,顺手处理电压电流换算:

最终 EXCEL 绘制电池充电电压(蓝)、电流(红)曲线,含时间标签:

电流曲线(红)下方的面积即为电池容量,实际用 EXCEL 做个累加直接就有了。
我这个二手软包电池测得大约 160mAh 的容量。

从电流曲线上可以明显看出 TP4056 工作流程:恒流到4.2v,再恒压到1/10电流,最终停止充电。

电压曲线则可以看出 3.9-4.2v 区间段容量较大,恒流持续时间较长;而 <3.7v 区间几乎没什么容量。

以上,使用 TP4056 搭接了一套可编程锂电充电系统,支持电压电流采样,可用于估算电池容量。

恒流充电电流 60mA-950mA 可调,可以适配各路中小容量的三元锂电池充电。

最后祝大家 DIY 愉快!


推荐阅读:

专辑|Linux文章汇总

专辑|程序人生

专辑|C语言

我的知识小密圈

关注公众号,后台回复「1024」获取学习资料网盘链接。

欢迎点赞,关注,转发,在看,您的每一次鼓励,我都将铭记于心~

TP4056 实现可编程锂电充电器+电量计相关推荐

  1. 自制廉价难度低性能较好的锂电充电器(转)

    转载自:http://www.geek-workshop.com/thread-53-1-1.html 自制廉价难度低性能较好的锂电充电器 附电压平衡器第一张, 电路全图.  这张有点模糊, 别急, ...

  2. SM5202高性能版TP4056,SOP8/EMSOP8线性1A单节锂电充电管理芯片SM5202性能浅析

    SM5202高性能版TP4056,SOP8/EMSOP8线性1A单节锂电充电管理芯片SM5202性能浅析 市面上锂电充电管理芯片种类繁多,良莠不齐,泉州海川半导体在今年上半年推出了一款性价比极优的1A ...

  3. 台铃48V锂电电动车充电器维修一例

    台铃48V锂电电动车充电器维修一例 台铃48V锂电电动车,采用南京西普尔科技有限科技实业有限公司制造的充电器. 故障描述: 故障检测: 故障维修: 台铃48V锂电电动车,采用南京西普尔科技有限科技实业 ...

  4. 没有2S/3S/4S锂电专用充电器,只有可调电源如给2S/3S/4S锂电临时充电

    2S/3S/4S锂电,标称电压为7.4V 11.1V 14.8V 这3个电压是基于3.7V乘以锂电个数得出的.有些锂电会保守一点会按3.6V作为基数.会得到 7.2V 10.8V 14.4V的标称电压 ...

  5. TP4054/TP4056/TP4057锂电充电芯片之灯不灭处理方法

    最近在使用TP4054锂电充电芯片时遇到一个奇怪的问题,充满电后指赤灯有时会灭有时不会灭只是亮度降低,让我很迷惑,后面经过分析与测量最终解决此问题.造面此问题的原因是此芯片的CHRG(引脚1)脚在充满 ...

  6. 线性单节锂电充电IC

    线性单节锂电充电IC 产品型号 输出 电压 输入电压 最大充 电电流 充电类型 充电 截止 电压 精度 涓流 充电 截止 电压 功耗 封装 替代型号 HM4054B 4.2V 4.25-6.5V 80 ...

  7. 锂电充电芯片_两节锂电充电IC_防反接充电芯片

    SUN5502 SUN5502是一款USB 5V输入升压充两节串联磷酸铁锂电池的升压充电管理应用,电池充饱电压7.2V左右,输出电压可调充电IC,采用ESOP8封装. SUN5152 SUN5152 ...

  8. 5V升8.4V升12.6V两串三串锂电充电芯片选型

    5V升8.4V升12.6V两串三串锂电充电芯片选型如下: 第一款AH3300 AH3300是一款135>38.06<75.73>xv同号工作于4V到28V的PFM升压型充电控制集成电 ...

  9. getprofile()获取不到路径_钰泰推出ETA4098,充电+路径管理+锂电保护三合一,超小封装...

    ETA4098是钰泰最新推出的小封装超强功能充电IC!不仅带有输入路径管理功能,还集成了锂电保护功能.其特色如下: 1.集成了锂电保护功能,可以省锂电保护芯片: 2.带输入路径管理,合理的管理电池和系 ...

最新文章

  1. matplotlib 中将图直接从buffer中变为PIL 再到numpy
  2. lisp直线连接圆象限电_用小学数学知识解释,为什么井盖是圆的?
  3. Mac下使用ABTestingGateway快速搭建灰度网关
  4. 在android上面让TextView 过多的文字实现有滚动条 scrollview
  5. 浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
  6. 求从 1 到 100 之间所有奇数的平方和
  7. 浅谈自学方法论- 不断更新-记录思路
  8. python 定义函数为什么有个长线_关于格式化:如何在Python中打破这条长线?
  9. wincc与第三方软件opc通讯_OPC 通讯不得不说的强大软件
  10. [BZOJ5329][Sdoi2018]战略游戏 圆方树+虚树
  11. 如何查找cvpr类的论文_美国凯泽大学工商管理硕士:MBA论文案例编写类如何写?...
  12. Hirens Boot DVD 15.2 功能恢复版 v1.1 -- 制作U盘启动盘
  13. 十天冲刺---Day5
  14. 2022年2月份谷哥学术资源分下下载列表:19/20
  15. AD9361开发:接收与发送滤波器配置
  16. java学术论文_java毕业设计论文-学术参考网
  17. 重庆钢铁泛微oa系统服务器更新时间,泛微全新OA系统-协同办公系统
  18. 在中国mapinfo电子地图中添加投影教程
  19. 通过Gazebo仿真学TurtleBot3(四)——简单的/cmd_vel控制
  20. 【转】CAN总线与CANOPEN协议入门

热门文章

  1. 网络爬虫--11.XPath和lxml
  2. curl post https_Linux命令cURL详解,并实现文件定时上传到ftp服务器的程序
  3. 机器学习算法之 KNN
  4. Flask werkzeug 源码解析
  5. python join函数_Python join()函数
  6. nonlocal和global关键字
  7. python注释及语句分类
  8. Redis数据库学习笔记
  9. python按身高体重排队_LeetCode-python 406.根据身高重建队列
  10. php年月转换为年月日,php 将秒数转换为年、月、日、小时等时间格式