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

前言

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

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

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

学习交流请发邮件 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博客

相关推荐
三月七(爱看动漫的程序员)33 分钟前
HiQA: A Hierarchical Contextual Augmentation RAG for Multi-Documents QA---附录
人工智能·单片机·嵌入式硬件·物联网·机器学习·语言模型·自然语言处理
新晨单片机设计1 小时前
【087】基于51单片机智能宠物喂食器【Proteus仿真+Keil程序+报告+原理图】
嵌入式硬件·51单片机·proteus·宠物·ad原理图
大风起兮122 小时前
STM32HAL库中RTC闹钟设置时分秒,年月日
stm32·嵌入式硬件
超能力MAX3 小时前
IIC驱动EEPROM
单片机·嵌入式硬件·fpga开发
QQ5471760523 小时前
stm32实现回调功能
stm32·单片机·嵌入式硬件
wenchm4 小时前
细说STM32F407单片机轮询方式读写SPI FLASH W25Q16BV
stm32·单片机·嵌入式硬件
委员4 小时前
基于NodeMCU的物联网电灯控制系统设计
单片机·物联网·嵌入式·nodemcu··lu_asr01·gy-302
北国无红豆4 小时前
【CAN总线】STM32的CAN外设
c语言·stm32·嵌入式硬件
单片机学习之路5 小时前
【C语言】结构
c语言·开发语言·stm32·单片机·51单片机
m0_748254096 小时前
STM32--超声波模块(HC—SR04)(标准库+HAL库)
stm32·单片机·嵌入式硬件