电池管理系统的低功耗、多路温度测量

Abstract

锂离子电池包需要一个良好的电池管理系统,用于监测电池电压和电池温度。如果没有这个监控功能,系统可能发生温度失控,导致电池爆炸。本文介绍了一个低功耗电路,可以测量多达12个热敏电阻的温度。它对复用器供电并进行配置,没有温度测量的情况下,复用器进入关断模式以节省功耗。

类似文章于2011年10月6日发表在Electronic Design

高压、多节电池串联组成的电池包主要用于电动汽车、混合动力车、电动自行车、电动工具等设备。由于它们的高能量密度,锂离子电池得到了广泛应用。这些高能量电池组需要一个良好的电池管理系统,用于检测多节电池的电压以及电池温度。如果没有这个监控功能,系统可能发生温度失控,导致电池爆炸。

电池包的数据采集IC用于测量多节电池的电压(通常为12节),但它们最多扫描、测量两个温度点。本文介绍了一种低功耗电路,可测量最多达12个热敏电阻的温度。它对复用器供电并进行配置,没有温度测量的情况下,复用器进入关断模式以节省功耗。

图1所示低功耗电路对电池包内部的每节电池进行扫描和测量,两片MAX382复用器将12个热敏电阻切换到数据采集芯片的输入端(如MAX11068MAX17830),每次采集2个热敏电阻的数值,共6组。数据采集IC提供热敏电阻偏压,并对复用器供电且控制它们的开关和使能/禁止。

图1. 利用两片MAX382复用器,数据采集IC可监测多点温度。图中,100pF电容与热敏电阻并联,滤除噪声。

图1. 利用两片MAX382复用器,数据采集IC可监测多点温度。图中,100pF电容与热敏电阻并联,滤除噪声。

热敏电阻的偏压由数据采集IC的‘热电源’输出(THRM)提供,这种配置有助于节省功耗,因为禁止辅助输入终止扫描时,内部开关禁止THRM。注意,无需测量外部温度传感器时,应该禁用/关断(不扫描)外部输入。将THRM连接到复用器的使能输入,无需温度测量时,将复用器置于关断模式以节省功耗。不对辅助输入扫描时,两个复用器仅从VAA消耗0.56µA电流。THRM仅在辅助输入扫描时在非常短的时间内使能复用器(即当需要温度测量时)。数据采集芯片的GPIO (通用输入/输出)口在12个热敏电阻间切换辅助输入。

THRM、AUXIN1和AUXIN2波形图(图2)给出了只有THRM使能条件下的最大采集时间(大约700µs),最大时间仅用于说明。实际采集的建立时间由软件编程设定,应使AUXIN_端的电容有足够的建立时间。

图2. 图中波形显示只有当系统启动一次输入通道扫描时,THRM、AUXIN1和AUXIN2才使能。

图2. 图中波形显示只有当系统启动一次输入通道扫描时,THRM、AUXIN1和AUXIN2才使能。

利用图1电路和伪码(表2),读取不同温度下的ADC输出。表1给出了数据采集IC在带有/不带复用器时的输出对比,并列示了百分比误差。

误差(%) = [(带有复用器时的ADC输出) - (不带复用器时的ADC输出)]/4096 × 100 (其中4096是十进制满量程ADC值)。复用器导通电阻引入误差,为保持最小的导通电阻,一般使用阻值相对较高(高温下)的热敏电阻(村田热敏电阻100kΩ,NXFT15WF104FA2B050)。

表1. ADC输出随温度的变化(带/不带复用器)
Temperature Data-Acquisition IC Output with Multiplexer (HEX) Data-Acquisition IC Output Without Multiplexer (HEX) Error (%)
-30 F27 F27 0
-20 EA1 E9E 0.07
0 C65 C70 -0.27
10 AD0 AD5 -0.12
25 7F6 7F4 0.05
40 560 55A 0.15
60 2EB 2E3 0.19
80 18C 18D -0.02
100 0D6 0D0 0.15
125 06A 065 0.122
表2. 伪代码
Command Purpose Read/Write
HELLOALL Initialization. This command sets the device address of the first part in the chain. All other parts in the chain are then assigned an automatically incremented address. Write
ROLLCALL Initialization. Used to determine the number of devices in the stack. Read
SETLASTADDRESS Initialization. This command tells each MAX11068 in an SMBUS ladder which device address is the last one. Write
Set AIN1EN & AIN2EN in ADCCFG register Enables AIN1 and AIN2 channels for scanning. Write
Set AINCFG_ bits in ACQCFG register Sets the acquisition settling time (from 5.3µs to 339.2µs) for the auxiliary analog channels. Write
Set GPIO as output, and set the GPIO output values by writing to GPIO register The GPIO output values decide which thermistor is selected for scanning, as the GPIO is tied to the select pins of the multiplexer. Write
Set the SCAN bit in the SCANCTRL register (0x0D) This command starts the conversion process of the inputs. Write
Read AIN1 (0x40) and AIN2 (0x41) registers Used to read conversion results from the temperature-sensing device selected by GPIO. Read