智能电池是众多锂充电电池中的一种,它自带 SMBus(System Management Bus)。SMBus 是一种 I2C 总线,遵从 I2C 总线协议和电气特性。智能电池可通过 SMBus 在系统主机、智能电池、智能电池充电器和其它智能设备之间传递命令和数据信息。

 

如下图所示即为使用智能电池的一个应用系统组成。

 

图 1 智能电池框图

 

智能电池通常还自带热敏电阻,用来实时监控电池温度,提高电池的安全性,温度信号可输出。

 

常用的智能电池接口一般有 5 个信号,分别为:

 

1.Vbat

 

2.Temperature

 

3.SMBus-SCL

 

4.SMBus-SDA

 

5.GND

 

由于智能电池带有 I2C 通信接口,因此它可以作为一个 I2C 设备接入整个系统的 I2C 总线,和总线的上的其他设备进行信息的交换。

 

不同的智能电池规格略有不同,本参考设计方案使用的智能电池规格如下:

 

两芯可充电锂电池

  • 空电池电压为 6V

 

  • 充满后电压最大为 8.4V

 

  • 最大可充电电流 2A

 

  • 5 个输出接口(Vbat, Temperature, SCL, SDA, GND)

 

  • 控制芯片为 BQ40Z50, 可接收 ChargingCurrent(),ChargingVoltage() 等命令查询,其它命令可参照芯片技术手册

 

  • 内置 PTC (正温度系数) 热敏电阻,常温下 10K,60 度为 70K

 

实际使用的智能电池如下图所示:

 

图 2 本方案中使用的电池

 

智能电池充电器基本原理

智能电池充电器简称为 SBC(Smart Battery Charger)。SBC 和传统的充电器相比更为智能化。它可以通过 SMBus 和系统内的主机、智能电池以及其它设备进行实时通信,交换信息。一个完整的智能电池充电器应用系统如下图所示。

 

图 3 智能电池充电器应用系统

 

主机可以通过 SMBus 对整个系统,包括系统电源,电池以及充电器进行管理。也可以脱离主机,只由电池和充电器组成相对简单的智能电池充电器系统。本参考设计即为后者。

 

基于 LPC845 的智能电池

充电器参考设计方案

参考设计方案使用 LPC845 作为控制芯片,利用芯片的 GPIO, PWM, ADC 和 I2C 功能,可实现最基本的充电管理,电池 SMBus 通信和 LED 显示功能。利用芯片的 SPI 通信功能可实现 LCD 显示功能。利用芯片串口通信功能,可扩展开发在 PC 机上进行串口信息打印。利用芯片的其他未用的 GPIO 和通信模块可扩展开发应用系统通信和管理的功能。

 

1 功能框图

本设计的功能模块主要由以下部分组成:

 

电源部分:12V DC 输入。一路提供给降压变换器(Buck converter),输出充电电压。一路提供给 LDO,输出 3.3v 和 5v。

 

降压变换器:可根据输入 PWM 波的占空比来调节输出电压,提供智能电池充电电压。

 

控制芯片 LPC845,54 个 GPIO 管脚,可满足基本功能和扩充功能的开发。

 

智能电池接口。

 

输出显示:三色 LED,2.8 吋 LCD

 

如图所示为本参考设计方案的功能框图,图中蓝线所示为 SMBus,控制器 LPC845 通过它和智能电池交换实时充电信息。

 

图 4 智能电池充电器功能框图

 

2 硬件描述

如图所示为本参考设计方案的硬件组成,图中右边绿色电路板为 LPC845 智能充电控制板,由 12 伏直流电源供电,上部为 5 芯智能电池接口,和智能电池连接。左边为 LCD 显示板。

 

图 5 智能电池充电器硬件组成

 

3 主要功能

智能电池充电器主要功能如下:

 

  • 提供完整的 3 个充电阶段:包括预充、恒流充和恒压充。

 

LPC845 通过 SMBus 查询智能电池的 ChargingVoltage() 和 ChargingCurrent()信息来判断目前所处的充电状态,动态调整充电电压。

 

  • 通过 SMBus 查询智能电池的 BatteryStatus()信息,若有告警则停止充电。

 

  • 实时监控热敏电阻 Rss 阻值,判断电池是否处于过热状态。

 

  • 3 色 LED 指示灯,用来指示充电状态。

 

  • LCD 显示,用来提供更详细更精确的实时充电状态

 

4 具体规格和充电阶段

智能电池充电器具体规格:

 

输入规格

  • 输入电压         直流 +12V

 

  • 输入电压范围  最小: 9V  最大: 15V

 

  • 输入电流         500mA

 

  • 输入电流范围  最小: 400 mA  最大: 600mA

 

输出规格

  • 输出电压          ( 结束充电)直流 8.15V

 

  • 输出电压范围  最小: 6V  最大: 8.4V

 

  • 输出电流         ( 恒流充电)350 mA

 

  • 输出电流范围  最小: 0mA  最大: 385 mA

 

智能电池充电器在不同充电阶段的具体操作如下:

 

若电池电压<=6.3v,则认为电池为空电池,先以小电流(65mA)进行预充,同时监测电池(充电)电压;

 

当电池电压>6.3v 时,进入恒流充阶段,使用 350mA 进行快充,调节 PWM 占空比来稳定电流,同时监测电池(充电)电压;

 

当电池电压>8.15v 时,已达到满充电压,进入恒压充阶段,使用 8.15V 进行快充, 同时监控充电电流;

 

当充电电流<40mA 时,认为电池充满,结束充电。

 

如图所示为智能电池充电器充电阶段示意图,横轴为充电时间,纵轴为电池(充电)电压及电流。红线为充电电流,蓝线为电池(充电)电压。

 

图 6 充电阶段示意图

 

如果对一个空电量或电量很低的的智能电池进行充电,则充电过程将会是一个完整的充电过程,包括充电中的所有阶段。而如果智能电池有残余电量,则充电阶段往往会跳过预充阶段,充电时间也会随着残余电量的不同而有所不同。

 

5 信息输出

智能电池充电器的信息输出方式有两种,一种利用 3 色 LED 灯指示基本的充电状态,在没有 LCD 显示的情况下,也能让用户了解当前的充电情况。

 

蓝灯点亮表示正处于正常的充电状态中,

 

绿灯点亮表示充电正常结束,

 

红灯闪烁则表示电池状态错误,比如电池不在位,电池过期,或者充电错误,比如充电过流,过充,过热等情况。

 

下图为 3 色 LED 灯指示状态:

 

图 7 3 色 LED 灯指示状态

 

另一种是在有 LCD 显示屏的情况下,可输出更为详细的充电信息。

 

  • 在预充阶段(Pre-charging):可显示温度、电池电压、充电电流和电池电量;

 

  • 在恒流充阶段(CC Charging):可显示温度、电池电压、充电电流、电池电量和剩余充电时间;

 

  • 在恒压充阶段(CV Charging):可显示温度、电池电压、充电电流、电池电量和剩余充电时间;

 

  • 电池充满时(Charge Full):可显示温度、电池电压、充电电流和电池电量

 

下图为 LCD 显示输出:

 

图 8 LCD 显示输出

 

总结

通过以上对智能电池以及智能电池充电器参考设计方案的介绍,使用新型的智能电池充电器,可以更方便地获取智能电池的实时数据,更准确地了解智能电池的实时状态,以最大程度地延长电池的使用寿命,确保每块电池都能保持良好状态,更快速精确地给电池充满电量。

 

而使用 LPC845 来完成这个参考设计,不但可以利用 LPC800 系列的低成本优势,完成智能电池充电器的基本充电管理功能,还可以在此基础上实现诸如信息显示,系统通信和系统管理的扩展功能,使得该参考设计具有很强的针对性和灵活性。

 

更多有关本次参考设计的具体设计细节可参考即将在 NXP 官网上发布的相关应用笔记。