电池管理及监控设计
werStatusEx函数调用关系图:
图3 BatteryAPIGetSystemPowerStatusEx函数调用关系图
5. CalcMainBatteryVoltage获取电池电压值
Bq26220通过BAT端口检测电池电源,并且通过寄存器BATH-BATL传递给上层。这个BATH(地址=0x72--从第0比特到第2比特)和BATL低比特寄存器(地址=0x71--从第0比特到第7比特)包含电池电压经过ADC转换后的结果。这个电压以11比特、2.44mV为步长、并带有LSB的二进制形式表达出来。BATH寄存器的第3比特代表MSB,BATL的第0比特代表LSB。最大电压测量范围为5V。
BATH寄存器的第3比特到第7比特存储电压ADC后的偏移量信息,这个最重要的信息比特是在4比特(第3比特到第7比特)偏移数据后的标记比特。
LSB获取修正因子,以μV为单位,主控制器负责通LSB 获取修正因子和偏移量来测量ADC后的电压值。下面是计算公式:
正确的=VBAT×(2.44+LSB修正因子)-偏移量
计算举例如下:
例如:如果真实的LSB=+2.45mV,偏移量=+80mV
计算正确的VBAT:
LSB修正因子=+10μV=0.001 mV
偏移量=+10 ×8mV=80 mV
正确的=VBAT×(2.44+0.01)-80
程序具体实现流程如下图4:
图4 CalcMainBatteryVoltage函数流程图
6. 电池电量计算方法
原来电池电量百分比显示的其实是电压百分比。可是硬件方面测试发现,电池电量和电池电压并非成简单的线性关系,因此需要分区间进行百分比的转换校正。常温下,我们设备获得的电池电压和电量曲线大致如下(图5):
图5 电池电压和电量的关系图
在驱动程序中创建了一个为16个字长度的环形缓冲区,采样点数增加为16个,这样可以增加对采样结果的可靠性。电池电压采样值even_samp为16个采样值的和去掉一个最大值和一个最小值后再取平均值。
在我们的移动终端设备中,电池的最大电压为559(4.10V),最小电压为455(3.30V),以图5中的两条虚线作为区间的分界线,可分为4.10V~3.80V,3.80V~3.60V,3.60V~3.30V这三个区间,对电池电压值进行分区间的处理,三个区间上的曲线斜率近似为:
4.1V~3.80V:Kl=(100-70)/(4.10-3.80)
3.80V~3.60V:K2=(70-20)/(3.80-3.60)
3.60V~3.30V:K3=20/(3.60-3.30)
4.10V~3.30V:K=100/(4.10-3.30)
在进行电池电量百分比的转换时,当我们获得在559~455区间内的采样值后,首先获得原来的百分比值voltage_percent= (even_samp-455) * l00/(559-455)。然后针对不同的区间进行相应的调整,得到的电量百分比分别为:
4.10V~3.80V:voltage_ercent+=(4.10-even_samp * 7.5/1024)×(K-K1)
3.80V~3.60V:voltage_percent+=(3.80-even_samp * 7.5/1024)×(K-K2)
3.60V~3.30V:voltage_percent-=(even_samp-3.30V * 7.5/1024)×(K-K3)
通过对以上三个区间的分别处理,这样就获得了相对正确的电池电量[4]。
7. 小结
本文介绍了在Windows CE系统中,基于电池充电管理芯片bq24032A和电池监控芯片bq26220芯片的电池驱动的实现。主要介绍了电池电压的获取和电池电量的计算方法。对电池管理提供了很好的借鉴。
参考文献:
[1] TI公司关于电池管理芯片bq24032A的资料
[2] TI公司关于电池监控芯片bq26220的资料
[3] 傅曦.Windows CE 嵌入式开发入门--基于Xscale架构[M] 北京.人民邮电出版社,2006 :227-230.
[4] 杨明.军用手持仪器剩余电置的实时预测D].电子质量.2005.
作者介绍 :
杨涌(1979-),男(汉族),重庆人,硕士研究生,主要研究方向:嵌入式系统开发;
谢显中(1966-),男(汉族),四川人,博士,现为重庆邮电大学教授,移动通信学术带头人,信息产业部/重庆市移动通信重点实验室主任,目前主要从事移动通信技术方面的科研与教学工作。
联系地址:重庆邮电大学77号信箱34栋310室
邮编:400065
联系电话:13609402769
Email:yangyong102812@163.com (end)
- USB电池充电电路(01-01)
- 利用单晶体管构建智能的电池充电器电路(03-05)
- 电池的充电方法(03-10)
- μP控制的Si9731型电池充电器的原理应用(06-02)
- 对线性、单芯锂离子电池充电器做功能测试的简单装置(09-08)
- 新型镍氢电池充电器(11-25)