电源管理之——battery选型

来源:互联网 发布:望远镜淘宝网 编辑:程序博客网 时间:2024/06/05 16:10

电源管理不管是在系统软件,还是硬件电路,都是嵌入式系统里面的重头戏。一个稳定的嵌入式系统,跟好的电源管理有着不可划分的联系。如果电源管理设计得不好,电路会有很多毛病,如上电时序不正确,开不了机等等。所以,在我们进行项目评估,或者项目规划的前期,对电源管理的考量是我们工作的重点。

对于电源管理,我这里把它细分成几部分:

1、  上电时序

2、  关机流程

3、  充放电管理

这里,简略说一下为什么把上电跟关机分成两部分。这是因为,虽然说关机流程一般是上电流程的逆过程,但两者直接还是有区别的,如,有一些系统里面需要保持数据参数,那么关机的时候就会对这里做特殊的处理。

这篇文章主要讲第三点:充放电管理。

这部分,相信有接触过平板,手机的人都会接触到。因为会设计到调试电池曲线的工作。一般我们在平板或者手机的方案中调试新电池是这样的:

1、  捕捉电池曲线

2、  把捕捉到的数据填入driver里面的batterydata 的数组

3、  重新烧录内核,查看具体的充放电效果

4、  如果电池比较劣质,还需要人为地细调一下参数

以下是锂电池充放电的曲线图,有关曲线图这里不做分析,还有电池的几个重要参数:电池容量,标称电压,充电终止电压,放电终止电压,电池内阻,自放电率。也可以在网上找到相应的介绍。


接下来,我们分析一下其工作流程,对于锂电池跟SMART BATTERY,这里有不同的处理方式。至于锂电池跟SMART BATTERY ,下文的内容会分析到。

 

锂电池

首先driver加载起来后,会把填写好的“battery data”数组参数通过i2c传送到PMU(power manage union),PMU通过对数据进行解析后,往充电电路IC的寄存器写相关的参数。进而控制充电电路,电量的参数。不过市面上有一些比较强大的PMU,把充电电路也包含了,那么就是直接CPU通过i2c跟PMU进行通信,PMU控制电池的充放电。过程如下:


接下来是从网上截图下来的一家平板方案商的充放电部分的框图:


很明显看出是对锂电池充放电的管理,跟我们上面分析的一样。不过值得一提的是,一般市面上的锂电池里面也做有相关的充电保护等功能。

 

SMART BATTERY                                                                            

对于SMART BATTERY而言,跟锂电池的区别主要在于SMART BATTERY把充电电路那一部分合并了,不需要外接充电电路,接上电就能自个完成充电功能。不过在外电路方面,还是需要PMU来设定相关的参数。对于PMU而言,还有一个任务,就是读取SMART BATTERY的IC寄存器的值(电流,电压等),并换算成电路,通过i2c上传到CPU。


如下图,是一SMART BATTERY 内部原理图:


其中1—9分别对应的是:

1、  Battery 2+

2、  Battery 2- / Battery 1+

3、  Battery 1-

4、  Cellular phone + / Charger +

5、  Cellular phone - / Charger –

6、  Temperature detect NTC10KΩ±1%

7、  Resistor 1K ±1%

8、  SDA

9、  SCL

具体作用不进行分析,也顺便提一下,如果看SMART BATTERY的规格书,你还会发现有很多的参数设置,这部分一般由PMU来完成。但是,我们看到上面的款图里面,CPU跟PMU连接是使用i2c,PMU跟充电电路连接也是使用i2c。于是这样想:可否把PMU去掉,cpu直接连接充电电路?其实这样做是可以的,只要把PMU里面对参数的设置部分,跟电源参数的换算部分往driver里面去移植,即用driver来处理PMU firewear的功能,这样做的话,就可以再PCB里面省去一个PMU了。但是这样做有一个弊端:万一内核崩溃,或者休眠怎么办?谁来监控电池的状态?这样做,电池的过冲也不能得到保障。毕竟PMU这方面的处理是要比CPU做的可靠。



0 0