基于 51 单片机的锂离子电池智能快速充电器设计
【摘要】
随着物联网的快速发展,各种终端设备被使用,大多终端的供电
采用轻便的锂离子电池进行供电,该设计针对锂离子电池,利用单片
机对充电全过程进行控制、监控,本文基于 C8051F000 单片机(silicon
labs 公司生产的 51 单片机)设计,其他类型的单片机设计与此类似。
本设计使用单片机片上高速 ADC 监测充电电压、最大限度地提高充
电效率和电池寿命。利用单片机片内比较器和 PWM 输出来实现高速
变压。
【关键字】
单片机 C8051F、电压转换、智能、PWM、充电器、原理图、源
程序
1 / 12
目录
一、设计分析............................................................................................................................ 3
二、硬件设计............................................................................................................................ 4
1、充电曲线...........................................................................................................................4
2、变压器设计.......................................................................................................................5
3、BUCK 变压器.....................................................................................................................5
4、BUCK 变压器电感选择.....................................................................................................6
5、快速充电器设计...............................................................................................................7
三、软件设计............................................................................................................................ 8
1、算法说明...........................................................................................................................8
2、温度监控...........................................................................................................................9
3、电流监控...........................................................................................................................9
4、电压检测.........................................................................................................................10
四、设计参数说明.................................................................................................................. 11
2 / 12
一、设计分析
电池的最佳充电方法取决于电池本身的化学性质(锂离子、镍铬、
镍氢等),但是大多数智能充电平台都采用三段充电模式:
电流调节阶段
恒流阶段
恒压阶段/终止充电
V Pos (+)
8k FLASH, PWM,
温度传感器,
LED
V Neg (-)
LDO
逆变器
PWM Out
8051F300
单片机
AIN1 - Voltage
电 阻 分
压
锂离子电池
AIN2 - Current
Amplifier
采样电阻
图 1. 锂离子充电器模块图
所有的电池都是通过转移电能来充电的,电池的最大充电电流取
决于电池的额定电容(C),例如,电池容量为 1000mAh 的电池,如果
充电电流为 1000mA,则称为以 1C(电池容量的 1 倍)充电,电池可以
在 1/50C(20 毫安)或更低充电,但这是一种常见的滴速充电率,在需
要短充电时间的快速充电方案中并不实用。
大多数现代充电器在给电池充电时同时使用滴充电和额定充电
(大容量充电),滴充电电流通常用于充电的初始阶段,以尽量减少
早期的自热导致充电终止;大容量充电通常用于电池能量恢复最多的
中间阶段。
3 / 12
在电池充电的最后阶段(通常占充电时间的大部分),要监测电流
或电压,或两者的结合,以确定何时充电完成。同样,终止的方式取
决于电池的化学性质。大多数锂离子电池充电器保持电池电压不变,
监测最小电流;镍镉电池使用电压或温度的变化率来决定何时终止。
充电时,部分电能转化为热能,电池充满电时,所有电能都转化
为热能。此时如果不停止充电,电池就会受损或彻底坏掉;快速充电
器(能在不到两小时内给电池充满电的充电器)加剧了这一问题,因为
这些充电器使用高充电电流来最小化充电时间。因此,监测电池的温
度是至关重要的,特别是对于锂离子电池,如果充电过量可能会爆炸。
在所有充电阶段都要监控温度,如果温度超过预设的最大限度,就要
立即停止充电。
二、硬件设计
1、充电曲线
锂离子电池具有较高的能量重量比、能量体积比,与其他化学材
料相比,锂离子电池目前是大多数应用场合最多的电池。大多数现代
线性锂离子充电器使用锥形充电 (见图 2),以确保电池得到充分充电。
充电电压
充电电流
视情调节阶
段
Phase
4 / 12
电流调节阶段
电压调节阶段
时间
图2 锂离子电池充电图
2、变压器设计
变压器最经济的方法是采用 BUCK 变压器,BUCK 变压器是一种
开关调节器,它使用电感器作为能量存储元件,将能量以离散包的形
式从输入端传输到输出端。反馈电路通过晶体管来调节能量传输,在
电路的负载范围内保持恒定电压或恒流。
图3 BUCK 变压器
3、BUCK 变压器
变压器通过控制晶体管开关的占空比来实现变压,充电占空比增
加,分配的充电电流增加。如图 3a 所示,比较器在 VBATT < VREF 时
闭合开关,电流流入电池和电容 C,同时也存储在电感器 L 中,VBATT
上升,直到超过 VREF,这时比较器打开开关(图 3b),存储在电感器
中的电流迅速减小,直到二极管 D 正向偏置,导致电感器电流以减小
的速度流入电池,电容 C 在电感电流衰减后开始放电,最终 VBATT
开始下降。当 VBATT 低于 VREF 时,比较器再次打开开关,开始另一
个循环。在更大的范围内,如果占空比降低(更短的“接通”时间),
平均电压就会降低,反之亦然。因此,通过控制占空比可使电压或电
5 / 12
流恢复到所需的范围内。
4、BUCK 变压器电感选择
要确定变换器中电感的大小,首先要假设占空比为 50%,因为这
是变换器工作效率最高的地方。
占空比=on ,T 为 PWM 的周期,本文 T 设置为 10.5 S
在此基础上,选择 PWM 开关频率,如下面公式所示,PWM 开
关频率越大,电感器越小(且性价比更高)。后面的程序代码是使用
C8051F000 产生 510KHz 的开关频率。
L=(Vi−Vsat−Vo)ton
2max
按照公式来计算电感的大小,假设充电电压 Vi 为 15V,饱和电压
Vsat 为 0.5V,设计输出电压 Vo 为 4.2V,最大输出电流 Iomax 为 1500
mA,则电感 L 的值至少为 4 H。
这个电路中的电容只是一个滤波电容,可以选择大一点,因为纹
波与电容的大小成反比。
5、快速充电器设计
C8051F000 有 8 位的 PWM,可以产生 96KHz 的 PWM,该 PWM
输出可用于驱动变压器的开关通断,并给电池充电。96KHz 的频率需
要 BUCK 变压器接一个 18H 的大电感,为了降低电感的尺寸和成本,
就得增加 PWM 的频率。利用 C8051F300 的 PCA 功能,使用 PCA 的两
个模块,外加两个外置单级低通滤波器,以及片内比较器来生成 8 位
510kHz PWM(详见图 4)。通过将频率设置为 510KHz,电感可以减少到
4 H。
6 / 12
VBAT
IBAT
TBAT
CMP0
C8051F300
Module1
Module0
Comparator
CEX1
CEX0
CMP+
CMP-
High Speed PWM
图 4 高速充电器
直流控
制 l
伪 三 角
波
Buck
Converter
为了产生一个 510kHz PWM,模块 0 的 PCA 配置为提供一个
510kHz 方波通过频率输出模式。然后这个方波通过一个低通滤波器
提供 500kHz 角频率,以提供约 2 伏峰峰值的伪三角波输入到单片机
内部比较器的正输入。对于比较器的负输入,模块 1 以 96kHz 的开关
速率配置为 8 位 PWM。这种 PWM 输出然后通过低通填充角频率约
为 15Hz,以创建一个简单的直流数模转换器。通过将伪三角波与直
流输入进行比较,比较器的输出变为 510kHz PWM。
通过改变 8 位 96kHz PWM 的占空比,比较器的负输入可以从 0
伏特到电源电压,通常是 3.3V。直流控制路径的精度受外部 RC 滤波
器的稳定时间的限制。
比较器输出的 510kHz PWM 的总体精度主要受到比较器伪三角
形路径的限制。假设直流路径是无误差的,要从比较器创建一个真正
的 8 位 510kHz PWM 输出,需要一个完美的线性全尺寸三角形波输入
到比较器的正输入。一个真正的全尺度三角形波是指一个三角形波从
7 / 12
0 伏线性下降到正电源,然后以类似的方式返回负电源。然而,电容
器在低通态下的充放电曲线在时间常数之后不是线性的。此外,最好
不要让这个电容完全充电,因为伪三角波变得更加非线性。限制总的
充电时间/电压限制了 510kHz PWM 的总体精度,例如,如果我们将
一个峰值到峰值电压为直流控制路径电压的1/4 的三角形波进行比较,
我们可以产生一个 2 位 510kHz PWM 输出,在实际应用中,2 位 510kHz
的使用非常有限。要提高准确度,需要以下两项改变之一:
1)增加伪三角波电压
2)提高直流路径 PWM 控制的分辨率。
如前所述,通过调整伪三角波的低通滤波器分量,可以很容易地
提高伪三角波的峰值电压。本文是提供一个约 2 伏特峰至峰伪三角波。
与 8 位 PWM 直流控制路径相比,我们在 510kHz 开关速率下实现了
大约 7.5 位的性能。
通过将模块 1 配置为 16 位 PWM,可以很容易地提高高速 PWM
输出的整体分辨率。
三、软件设计
1、算法说明
下面后面软件是基于 C8051F300 的锂离子电池充电器,使用 C
语言编写。
为了保证精确的电压和电流测量,该算法采用两点系统校准方案。
在这种方案中,需要施加两个已知电压和两个已知电流,一个点接近
地,另一个点接近全量程。然后该算法利用这两个点,计算电流和电
8 / 12