锂离子电池充电的系统抖动问题解决方案

前言

在设计锂离子电池充电器时,会因为充电电流波动导致电压波动,系统异常。

所以分析了锂离子电池的特性,给出了几种解决方法。

有纰漏请指出,转载请说明。

学习交流请发邮件 1280253714@qq.com

理论

锂电池简单地可看做一个理想电压源和电阻串联的模型,充电或放电过程中,电池内阻会分压,电流越大,分压越大,电压离真实电压越远。

电池包空载且不处于充电状态下,电流几乎为0,此时测到的电压最接近真实电压。

充电器给电池包充电,电流越大,电池包电压抬升越多。

电池包给负载放电,电流越大,电池包电压下降越多。

充电策略

之前做过的项目,控制策略比较简单,即涓充(13-15)、恒压(15-20.7)、恒流(20.7-21),涓充和恒压均输出0.5A,恒流输出4A。

实际测试

实际测试中,5S电池(5节串联)无输入输出时为18.5V,4A充电为18.9V,4A放电为17.9V,可估算出内阻大约为0.1Ω。

理论上,在充电过程中,恒流4A充到20.7V时,软件判断进入恒流充阶段,此时充电电路副边输出电流变为0.5A,即可进入恒压阶段。

但是,但是,20.7V4A变为0.5A,电压会跌落,变成20.35,此时软件判断为恒流充,又把输出电流变为4A,电压又升上去了。系统抖动很严重(反复横跳,电压螺旋式上升)。

解决方法

法1:做重复判断,即电压到达20.7V之后,需要持续一段时间,才能进入恒压阶段。这样做,系统抖动就不会那么严重。

法2. 如果可以通过软件控制输出电流,那么输出可以是连续性的,即到达20.7V之后,随着电压的升高,电流慢慢减小。这样的话,充电器就不会监测到电池包电压掉落。

法3:因为充电过程中,只会是从预充到恒流再到恒压,所以做一个状态转换。例如,只能从预充到恒流,恒流到恒压,恒压到充满。所以当恒流到恒压时,电池包电压虽然降低了,但是系统状态只能是恒压充。只有当空载或异常,才能重置系统状态。就跟爬楼梯一样,只能一步一步往上爬,除非摔倒或楼梯崩了。

参考

【精选】大电流对电池电压的影响_大电流充电对电池影响-CSDN博客

锂电池特性总结-充放电,新旧识别,常规用法_铅酸 锂电池 自动识别-CSDN博客

相关推荐
阿拉斯攀登4 分钟前
三极管:电子信息时代的核心“控制单元”,藏于设备中的关键器件
单片机·嵌入式硬件·三极管
「QT(C++)开发工程师」21 分钟前
Atollic TrueSTUDIO for STM32 9.3.0 是一款专为 STM32 微控制器 设计的集成开发环境(IDE)
ide·stm32·嵌入式硬件
Darken0323 分钟前
为什么舵机的0度在单片机中代表500?180度代表2500?
单片机·嵌入式硬件·舵机
阿拉斯攀登29 分钟前
51单片机:了解最小核心系统
单片机·嵌入式硬件·51单片机
DIY机器人工房10 小时前
(十三)嵌入式面试题收集:6道
单片机·嵌入式硬件·diy机器人工房
国科安芯10 小时前
国产RISC-V架构MCU在工控系统中的节能性分析
网络·单片机·嵌入式硬件·fpga开发·性能优化·架构·risc-v
夜月yeyue11 小时前
Linux内高端内存
linux·运维·单片机·嵌入式硬件·ci/cd·硬件架构
沉在嵌入式的鱼15 小时前
linux串口对0X0D、0X0A等特殊字符的处理
linux·stm32·单片机·特殊字符·串口配置
学习路上_write15 小时前
AD5293驱动学习
c语言·单片机·嵌入式硬件·学习
影阴16 小时前
存储器和寄存器
stm32·单片机·嵌入式硬件