嵌入设备电池电量

2009-09-20

其实在公司,星期五就开始记录每天的工作了。感觉自己是在一个学习和上升的阶段,所有的进步都应该记录下来。等能够上网了,把自己学习的成果,发布一下,或许会有好的机会。

 

周五的时候写的嵌入式上的电源管理,基本上能够涵盖可以应用的部分。后来 L又过来重新讨论了方案的选择和可行性。但这些并没有与我概括的相冲突,只是在应用上的不同选择会导致系统的复杂度和开发成本的问题。

 

在他的邮件中,提及了hald中关于电池电量百分比计算,发现好像其中的数值或者从apm获得,或者从底层接口获得(usb或者ups的ioctl)。那么,这意味着,用户层并不能通过什么未知的算法通过软件获得电池剩余电量,而是完全依赖于硬件的支持。

 

在周五的时候,也在网上搜索了关于电池剩余电量的测量方法。一些是说明了怎么测电池剩余电量,但这种测量时基于放电的,就是让电池用尽,才能得出当时的电量,显然不能符合要求。目标是,在嵌入式的设备上,安装某块电池,在设备检测到电池后,自动报告电池电量。这种报告是实时的动态的,而不是静态的,但是精度不会要求很高。我想对于普通的电池和设备来说,10%的电量变化精度就可以满足要求了。

在以前,我曾经接触过一款芯片,这款芯片可以实时测量电池的电压,电流,和电量。但是这儿的电量不是剩余电量,而是电池在开机过程中所消耗的电量。其中测电量的原理是,芯片内部有一个定时器,会每隔一个固定时间将电流值累加,实际上就是对电流进行了积分,这是一个准确的计算方法。

在网上另外一种说法是,对电压进行查表的比较,从而获得大概的电池余量。而这个表,多是由电池厂方直接提供。

当然如果没有厂方提供的表,我们可以自己标定。我想这可能是为什么笔记本以及手机等电池设备多要求第一次使用时,让电池自己耗尽的原因吧。这个过程就是一个符合标定的过程。在电池第一次使用时,每隔10s钟,读一次电压值,然后记录。这样从电池满额的状态到空的状态就有一个可供查表的折线曲线图。根据电池的特性,电池在使用过程中,电压是一个递减的过程,所以一个电压值,只会对应一个剩余电量值。

如果电池是具有标号的,或者具有系列号的,那么如果主机检测到以后更换的电池是同一个型号的,那么就可以直接使用已经保存的电压-电量对应表。如果检测到其他类型的电池,可以提示,让用户等待电池重新标定(电池自己耗尽)。

 

我想如果按照电压预测电量的方法,在辅助以电量消耗的校正,就可以检测出电池的状态是否损坏。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/faithsws/archive/2010/03/14/5378225.aspx

你可能感兴趣的:(linux,开发日记)