具体实施方式
在具体讨论多个实施例之前,在此所使用的术语与相关缩写定义如下。
充电截止电压(Vcc):一个电压值,相关电池充电至高于该电压值时会损坏电池。因此,在达到该电压值时可以终止充电。
放电截止电压(Vdc):一个电压值,相关电池放电至低于该电压值时会损坏电池。因此,在达到该电压值时可以终止放电。
总容量(Cft):总的安培小时数,它可以由一个完全充电的电池在某个时刻t得到。Cf0是电池刚生产出时的总容量。Cft随着单电池的老化会与Cf0有所不同:Cft可能(也可能不)在开始的几个充电/放电周期内有所增大,但是之后它通常会随着单电池的老化而减小。
剩余容量(Ct):(剩余)总的安培小时数,它可以由一个部分充电的单电池得到。术语Ct和Cft均指低放电率的(总的,真实的)单电池容量,而不是诸如典型的电池电量监测器所报告的“可用的”容量。当一个单电池在典型的放电工作电流下达到Vdc时,单电池中仍会有一些残余的容量(Crt)。由于最好在Vdc强制终止放电的确切时刻报告零剩余容量,所以通常报告可用容量(ACt)=Ct-Crt。
相对荷电状态(RSOC):单电池中剩余容量的相对值。RSOC可以用剩余容量占总容量的百分比来表示,即RSOC=100*Ct/Cft。
单电池瞬时开路电压(Voct):单电池脱离电路(既不充电,也不放电)时,其两端的电压。Voct可以通过令放电或充电电流为零而测得。这在放电时候不太可行,但是当电池空闲(既不充电,也不放电)的时候或在充电周期的短暂中断期间比较可行。Voct会因为不同的因素而改变。例如:当放电终止后,Voct可能增大(有时称作反弹);在充电中断期间,Voct可能减小(有时称作下跌)。
理论单电池电压或真实开路电压(Vcpt):单电池脱离电路(既不充电,也不放电)时,其两端的真实电压值。若在充电中断期间(数小时或数天),充电电流置零的时间足够长,Voct将接近Vcpt。Vcpt的值为正极电压与负极电压之差,其中正极与负极电压值随RSOCt(在充电和放电期间改变)、单电池化学设计(在生产时已确定)和其它(但愿是次级的)诸如温度因素等变化,并且是他们的函数。RSOCt可由Vcpt推出。Vcpt不能直接测得。
单电池两端电压(Vt):Vt是单电池两端的电压。当电池以相关的充电率/放电率充电或放电时,可以测量出Vt值。
估计值(Ecpt):Ecpt是Vcpt的估计值,而Vcpt可以在充电周期的短暂中断期间对Voct的测量值得出。
图1所示为一个电子装置100的简单框图,其中电池组102经过路径119向该装置供电或者直流电源104经过路径117向该装置供电。电子装置100可以是任何类型的电子装置,例如:笔记本电脑、手机、个人数字助理、电源工具等等。电池组102可以包括数节单电池102-1,102-2,102-n。这些单电池可以是本领域所熟知的各种类型的充电电池,例如:锂离子电池、镍镉电池或镍金属氢电池等等。
为给电池组102再充电和/或对系统112供电,可以将一个直流电源104与装置100相连。直流电源104可以是一个交流/直流适配器,该适配器接收来自壁装插座的220伏标准交流电压,并把它转换成一个直流输出电压。直流电源104也可以是一个直流/直流适配器,例如一个可插入该类型插座的“打火机”型适配器。图1中所示的直流电源104与装置100分离,但是它可以集成到其它装置中。电子装置100也可以包括一个供电模块110。通常,供电模块110可以包括各种元件,用于在不同情况下监测、控制,和引导电源102、104之间的功率流动,及引导各个电源102,104的功率流向装置100的系统112。用户接口系统126可以包括一个或更多的装置,用于用户输入命令和/或数据,和/或监测系统112,例如:键盘、指示装置和/或视频显示。
图2所示为图1中的电池电量监测器(GG)电路130的框图。图1中的电池组102可以包括电池电量监测器电路130,而该电池电量监测器电路130也可以安置在电子装置100中的任何地方。电池电量监测器电路130通常可以包括一个开关网络250,一个模数转换器(ADC)220,一个处理器222,与一个机器可读介质230。
开关网络250可以包括数个开关,将102-1、102-2...102-n中的任何一个单电池与模数转换器220相连。模数转换器220可以是任何一种能够将模拟信号转换为相应的数字信号的模数转换器(例如:单斜率积分型模数转换器、双斜率积分型模数转换器、或σ-δ(sigma-delta)型模数转换器,在此仅举例一二)。处理器222可以是任何类型的用于执行指令以完成各项操作的处理器或控制器。机器可读介质230可以是各种类型的介质,例如:电可擦可编程只读存储器(EEPROM)或随机存取存储器(RAM),仅举例一二。在一些例子中,也可以是32字节通用随机存取存储器。
通常,处理器222可以命令开关网络250断开或闭合开关网络中的各个开关使各个单电池的终端与模数转换器220相连。接着,模数转换器220可以将开关网络提供的模拟输入信号转换成相应的数字信号,并向处理器222提供该数字信号。之后,处理器222执行存储在机器可读介质230中的指令来完成各项操作。
电池电量监测器电路130根据监测到的参数(例如各电压值)得到任何数量的测量值,包括电池剩余容量的测定值和总电池容量的测定值。电池电量监测器电路130将其各个测量结果通过路径125与电子装置100进行通信。电池容量的测量结果可以通过电子装置100的用户接口系统126,以多种格式告知电子装置100的使用者。例如:剩余容量(Ct)和/或相对荷电状态和/或可用操作时间估计值可以以任意类型的格式显示在用户接口系统126的视频显示器上。用户接口系统126也可以包括音频装置,该音频装置在某些情况下提供一个音频指示,例如:若电池电量监测器130检测到一个电池低电量的情况,则该音频装置可以提供一个音频警报。
图3所示为图1中电池组102的一个单电池102-1的简化等效电路图。该单电池等效电路图通常包括一个在t时刻测得的电压值(Vt),该电压值是以当前充电率/放电率在单电池等效电路中的两端测得的。该单电池等效电路图还可以包括电阻302。电阻302表示t时刻的电阻(Rt)或单电池在t时刻的有效内部(串联)电阻。该电池等效电路图还包括一个t时刻的开路电压(Voct)。串联电路中t时刻的充电/放电电流可以由It来表示。Voct和Rt可以以一种动态方式而改变。例如:对于锂离子单电池,当典型的放电工作电流被中断后,Voct会逐渐增大(“反弹”)直至Voct最终接近理论单电池电压Vcpt(有时叫做“真实开路电压”)。通过令It=0,可以测得Voct的值。Vcpt的直接测量值很难得到,在充电或放电之后,Voct通常需要等待数小时(或数天)才能达到稳定。
因为Rt大于零,所以在放电期间,Vt会比Voct小。因此,若当单电池两端电压接近放电截止电压Vdc时放电终止,则一些剩余容量估计值(Cer)在放电结束时会留在单电池内。通常,Rt随着充电/放电周期数的增加而增大。因此,可用电压(Vt)在某个特定的It和RSOC下通常会随着单电池的老化而减小。
图4所示为一个单电池经过不同周期数的Vt-RSOCt曲线图,其中RSOCt是用百分比表示的。曲线402表示一个新的单电池的Vt-RSOCt曲线图。曲线404表示经过n个充电/放电周期后的Vt-RSOCt曲线图。曲线406表示经过2n个充电/放电周期后的Vt-RSOCt曲线图。曲线408表示经过3n个充电/放电周期后的Vt-RSOCt曲线图。最后,曲线410表示经过4n个充电/放电周期后的Vt-RSOCt曲线图。曲线402的电压值通常比其它曲线的电压值高。
正如所述,由于随着单电池的老化,单电池内部电阻会增大,所以不同的RSOCt值对应的电压值通常随着充电/放电周期数的增加而减小。这个电压值的差异通常在相对低的荷电状态时达到最大,尤其是当RSOCt在5%和20%之间时。若放电电流减小,则各个曲线会变得更加相似,当放电电流减少为零时,各曲线基本相同。
至少在锂离子电池中,理论单电池电压(Vcpt)与相对荷电状态(RSOC)有直接的联系(即使是非线性关系),在这种情况下,该理论单电池电压对单电池的老化和温度变化都不敏感。若Vcpt已知,则RSOCt可以从一个查找表中确定。不幸的是,理论开路电压Vcpt不能直接测得。这是因为即使一个充电或放电的单电池脱离它所在的电路,该单电池的端电压Voct还是会继续改变,尽管它正缓慢接近Vcpt。然而,其它电压值和状态可以直接测得,它们采用一个估计值Ecpt与Vcpt建立联系。
图5所示为一个特定的单电池在充电模式下的Vt、Vcpt与Ct的曲线图。从图中可以看到,充电中断发生在第一时间段(t1和t2之间)、第二时间段(t3和t4之间)和第三时间段(t5和t6之间)。在每个充电中断时间段内,Voct(即在开路情况下,当充电电流为零时的Vt)可以测得。Voct的值与Ecpt估计值相关联,其中Ecpt表示每个中断时间段的理论开路电压值。接着可以确定与每个中断时间段对应的相对荷电状态RSOC的值。通过采用任意两个中断时间段,令每个中断时间段的容量值之差除以相同中断时间段的相对荷电状态值之差,可以计算出总容量值。
例如,在第一中断时间段(t1和t2之间),通过把单电池从其相关电路中移走可以中断充电(或放电)周期,从而形成开路。在一个实施例中(图2),这个过程可以由处理器222命令开关网络250使一个特定的单电池电路开路来实现,该电路包括单电池102-1,102-2...102-n中相关的一个。
在电路开路的时间段(t1和t2之间),电压值Voct(在这个时间段内,Voct等于Vt)可以测得。在一个例子中,充电/放电电流被中断后,在某个恒定时间段内,通过获得表示Voct的Ecpt值,可以建立Voct与Ecpt值之间的联系。在该例中,充电/放电电流被中断后,在该恒定时间段内,只需要测一次Voct即可。
另一种从Voct得到Ecpt的方法是,在数个采样时间间隔处对Voct进行多重采样。然后采用数学分析,Ecpt值可以是一个表示Voct测量值的预计终点的值。
图5所示,在第一中断时间段(t1与t2之间)内有上述的数个采样间隔(si)。Voct可以在第一个采样时间间隔测得V(t=t1+si),同样还可以在接下来的一个采样时间间隔处测得。总的测量次数取决于t1和t2之间的中断时间长度(dTOC)和采样间隔(si)。接着可利用Voct的采样值与其它相关信息(例如充电中断前的平均充电电流)建立这些采样值与Ecpt值之间的联系。
对于其它系统环境,根据上述任何技术所得到的Ecpt估计值可以进一步通过运用修正因子进行优化,这样使Ecpt对除了RSOC之外的任何其它系统环境均不太敏感。例如,在充电中断期间测得的Voct对充电电流的变化是非常敏感的。通过采用Ecpt=Voct-(C0+C1*Icharge)(其中C0和C1是根据经验得来的常数,Icharge是充电中断之前的平均充电电流),我们可以得到一个对充电电流相对不太敏感的估计值,这样,该估计值在一个较宽的工作状态范围内是很有用的。对于常数C0和C1,可以通过在不同的充电电流值处中断充电,并在那些充电中断期间测量Voct,由经验得到。根据在不同的充电电流观测到的数据,可以采用一种标准的线性拟合技术(例如“最小均方差”)。该技术不仅可用来获得C0和C1,而且测量得到的残差可表示线性修正的有效性。还可以加入一些其它的修正(例如:温度的修正等等),目的是得到一个只依赖于RSOCt,且受其它独立变量影响最小的Ecpt。
一旦用任何这些或其它不同的方法得到Ecpt后,就可以通过RSOCt和Ct计算Cft,其中RSOCt与Ct是从任何两个中断时间段的组合得到的。可以通过两个例子并参考图5来解释。
例1:Ct已知,且正确
充电中断1:Ct1=1000mah,RSOC1[Ecpt]=50%
充电中断2:Ct2=1200mah,RSOC2[Ecpt]=60%
充电中断3:Ct3=1400mah,RSOC3[Ecpt]=70%
Ct1与Ct2、RSOC1与RSOC2在第一中断时间段(t1与t2之间)和第二中断时间段之间(t3与t4之间)的差值分别产生一个200mah的Ct变化量与一个10%的RSOC变化量。因此,经计算,总容量Cft将为200mah/10%=2000mah。若分析Ct2与Ct3,RSOC2与RSOC3在第二中断时间段与第三中断时间段之间(t5与t6之间)的差值,会得到同样的结论,即总容量Cft为200mah/10%=2000mah。若分析Ct1与Ct3,RSOC1与RSOC3在第一中断时间段与第三中断时间段之间的差值,会得到同样的结论,即总容量Cft为400mah/20%=2000mah。在这个理想的例子中,对于任何中断组合(1,2)、(2,3)与(1,3),我们得到相同的Cft,从而我们可以自信地得出Cft是正确的(若查找表或测量是不正确的,则将得不到一致的结果)。
例2:同例1,但Ct是不正确的(小200mah)
充电中断1:Ct1=800mah,RSOC1[Ecpt]=50%(RSOC1[Ecpt]不依赖于Ct,且不变)
充电中断2:Ct2=1000mah,RSOC2[Ecpt]=60%
充电中断3:Ct3=1200mah,RSOC3[Ecpt]=70%
在例2中采用例1中相同的计算方法可得到相同的结果,即对于任何中断组合(1,2)、(2,3)与(1,3),Cft=2000mah。原因是该计算并不依赖Ct的初始状态(Ct的初始状态非常依赖于有可能不精确的Cer估计值)。相反,该计算依赖于每个中断组合的容量的变化量,该变化量由相对精确的电荷计数方法得到。与Cft=100*Ct/RSOC方法相比,这个方法有两个优势:
1.它不需要一个精确的Ct,只需要一个精确的Ct变化量(不需要Cer)。
2.由于充电周期可能会有三个或更多个的中断,所以可得到两个或更多独立的Cft估计值。这样,可通过比较不同的Cft来评估Cft测量值的可靠性。经相当长时间的开路延迟后,仅依赖Voct=Vcpt的测量方法没有这个优点。
相对容量表(Trc)的建立
以下是一个相对容量表的例子,它在一个假设的第一个(在工厂时被设置)充电周期开始阶段得出。
表1a
索引:1 |
目标RSOCt:Trc.RSOCi |
目标RSOCt对应的Ecpt:Trc.Ecpi |
目标RSOCt对应的容量:Trc.Ct |
1 |
0.20 |
? |
? |
2 |
0.40 |
? |
? |
3 |
0.60 |
? |
? |
4 |
0.80 |
? |
? |
单电池的规定/期望的总容量Cfs(例如2000mah)可以是已知的。对于指定的单电池,其Cft的精确值可能不是已知的,但是它可以从建表过程中确定。在充电过程中,Ct的值可通过采用电荷计数方法测得。众所周知,Ct的初始单电池容量非常接近单电池制造与测试过程中确定的一个典型值(例如零)。
对于该例的目标RSOCt,期望结果是得出一个Trc.RSOCi-Trc.Ecpi表。该表采用数个目标RSOCt。通常,在不造成有害的充电周期延长的情况下,有数量更多的目标RSOCt是较佳的。该表的索引‘i’不需要存储在该表中,在这里出现只是为了表意清晰。表1a中Trc.Ct列都是中间数据,并不需要存储在最终的表格中。
为了建立这个表,可以用一种受控方式(例如:一个与实际使用中相似的充电曲线图)对电池进行充电。充电模式可以有四次中断,Trc.Ecpi可以在每次中断的时候测得。充电模式可在Ct达到目标RSOCt时被中断:Ct[i]=Trc.RSOCi[i]*Cfs。例如:当i=1时,充电在Ct为400mah被中断(Ct=0.20*2000=400mah)。该充电模式在充电完成之前会有四次中断。如此,可以得到实际总电量,其结果如表1b所示。
Cft=2050mah
表1b
索引:i |
目标RSOCt:Trc.RSOCi |
中断处的Ecpt:Trc.Ecpi |
中断处的容量:Trc.Ct |
1 |
0.20 |
3.652 |
400 |
2 |
0.40 |
3.707 |
800 |
3 |
0.60 |
3.783 |
1200 |
4 |
0.80 |
3.914 |
1600 |
由于实际总容量Cft(2050mah)并没有与规定的总容量Cfs(2000mah)精确地吻合,所以实际Trc.RSOCi值不会精确地与表1b中的目标Trc.RSOCi值吻合。因为希望得到的是实际值,所以采用测量数据和关系式Trc.RSOCi[i]=Trc.Ct[i]/Cft,可以用实际值取代目标值。实际RSOCt与RSOCt对应的Ecpt可以详细地存储在表1c中,以备今后使用。例如:由于实际Cft值为2050mah,所以i=1时的实际RSOCt值为400mah/2050mah,即0.1951。
表1c
索引:1 |
实际RSOCt:Trc.RSOCi |
RSOCt对应的Ecpt:Trc.Ecpi |
1 |
0.1951 |
3.652 |
2 |
0.3902 |
3.707 |
3 |
0.5853 |
3.783 |
4 |
0.7805 |
3.914 |
表1c可以存储在诸如图2的电池电量监测器电路130的一个实施例中的机器可读介质230中。今后,充电可在上述的新的实际RSOCi点被中断,而并非在原目标RSOCt点被中断。若在原目标RSOCt点上进行测量,则可能会出现Trc.Ecpi内插误差(由于Vcpt内在的非线性和其它因素的原因而产生),然而若充电在上述的新的实际RSOCi点被中断,则可以使该Trc.Ecpi内插误差最小化。
对每个单电池,可以建立并存储表1c。另一种方法是,为几个密切相关的单电池的一个代表性单电池建立表1c,该表可以作为产生一批密切相关的单电池的Trc的初始值。该算法应该考虑到每个单电池在各种情况下因老化而引起的变化。因此,该算法应该能容纳在批量建立单电池的Trc中产生的细小差别,并/或在批量建立Trc时能够正确地把与其它单电池明显不同的单电池区分出来,并拒绝建立该单电池的Trc。
在实际充电周期中采用Trc估算Cft
为了从Trc中估算Cft,可以从充电中断点处采集Trc.Ct与Trc.Ecpt值,其中这些中断点接近前面所建立的存储在表(例如表1c)中的Trc.RSOCi/Trc.Ecpi值。系统状态(充电电流等)应尽量与建立初始表时的系统状态一致。实际上,这意味着初始表建立时所处的状态应该尽量与实际工作状态一致。
一种确定每个充电中断点的方法是每次Ct达到表中的RSOCi点(Ct/Cft=Trc.RSOCi)时,就中断充电。这样,仅需要每次达到Trc.RSOCi点时中断充电。
另一种方法是至少在第一次目标中断前增加至少一次充电中断,并确定一个或更多初始Ecpt值,然后外推一个期望的Ecpi值所对应的中断点。同样可在中断点精确度和所需时间方面作一些改进。
一个典型的充电周期可以不用(也没有必要)覆盖表1c中的所有Trc.RSOCi点。这是因为Cft的计算只需要两个数据点,且下述品质估计只需要3个数据点。
表2a示出了一种从采集到的数据里确定Cft与Ct的方法。该例中,实际Cft为2050mah,和表1b与表1c中相似。由于假设的Cer误差存在,被测Ct有+50mah的误差。Trc.Ecpt值稍有扰动,以模拟测量误差的影响。假设在充电开始时电池初始容量超过400mah,这样在第一次中断点(i=1)处采集不到任何数据。
表2a
索引:i |
实际RSOCt:Trc.RSOCi |
RSOCt对应的Ecpt:Trc.Ecpi |
中断处的容量:Trc.Ct |
中断处的Ecpt:Trc.Ecpt |
内插RSOCt:Trc.IRSOCi |
1 |
0.1951 |
3.652 |
--- |
--- |
--- |
2 |
0.3902 |
3.707 |
800测量值,750真实值 |
3.700 |
.3653 |
3 |
0.5853 |
3.783 |
1200测量值,1150真实值 |
3.773 |
.5600 |
4 |
0.7805 |
3.914 |
1600测量值,1550真实值 |
3.898 |
.7566 |
表2a中,每个Trc.Ecpt可以在充电中断点Trc.IRSOCi确定。这个充电中断点Trc.IRSOCi可以通过在表中的两个点之间采用线性内插计算而得,详见等式(1):
(1)Trc.IRSOCi[i]=Trc.RSOCi[a]+(Trc.RSOCi[a]-Trc.RSOCi[b])*
(Trc.Ecpt[i]-Trc.Ecpi[a])/(Trc.Ecpia]-Trc.Ecpi[b])
其中‘a’为最接近Trc.Ecpt[i]的Trc.Ec pi值的索引值,‘b’为次接近Trc.Ecpt[i]的Trc.Ecpi值的索引值。以类似的方式,采用线性外推可以计算略微在表格以外的那些点Trc.IRSOCi。同样,还可以采用其它内插或外推的形式。
Cft的估算应考虑任意两个充电中断的Trc.Ct之差与Trc.IRSOCt之差,详见等式(2):
(2)Cft=(ΔCt)/(ΔRSOC)(Δ表示变化量)表2a中的数据运用等式(2)计算得到的结果,详见表2b。
表2b
索引:i1,i2 |
ΔIRSOCi |
ΔCt |
Cft估计值 |
2,3 |
0.1947 |
400 |
2054 |
3,4 |
0.1966 |
400 |
2035 |
2,4 |
0.3913 |
800 |
2044 |
例如,中断点i=2与i=3的ΔIRSOCi为0.5600-0.3653,即0.1947。有利的是,Cft的计算并不依赖于Ct的初始状态,而Ct初始状态本身非常依赖于有可能不精确的Cer估计值。相反,Cft的计算依赖于容量的变化(ΔRSOC),而该变化量可以通过相对精确的电荷计算方法获得。
不同Cft估计值之间相对较好的一致性在结果中反映为一个高置信因子。有利的是,Cft的计算不需要参考先前的Cft值(2050mah)。以类似的方式,我们采用某个Cft中和估计值(例如:Cft=2045mah),通过关系式Cct=Trc.IRSOCi[i]*Cft,可以重新计算表2a中的Ct修正值(即Cct)。
表2c
索引:i |
实际RSOCt:Trc.RSOCi |
RSOCt对应的Ecpt:Trc.Ecpi |
中断处的容量:Trc.Ct |
内插RSOCt:Trc.IRSOCi |
Ct修正值:Trc.Cct |
1 |
0.1951 |
3.652 |
--- |
--- |
--- |
2 |
0.3902 |
3.707 |
800测量值,750真实值 |
.3653 |
747 |
3 |
0.5853 |
3.783 |
1200测量值,1150真实值 |
.5600 |
1145 |
4 |
0.7805 |
3.914 |
1600测量值,1550真实值 |
.7566 |
1547 |
Trc.Cct的修正提供了一个被中断的充电周期结束时的精确的Ct估计值,即Ct=最近一次充电中断对应的Trc.Cct+从那时刻起到充电结束的Ct变化量。例如:采用表2c的数据,假定用户在Trc.Ct=1700mah时终止一个充电周期。最近一次的充电中断对应的Trc.Cct=1547mah,然后我们再加上从那时刻算起的100mah增加量,因此改进后的Ct估计值为1547mah+100mah=1647mah,这个值接近“真实值”1650mah。
通过采用上述的方法,在充电结束时,我们可获得一个较佳的、独立的Ct和Cft估计值(iCft和iCt),无需求助于“合格放电周期”,也不会像原来的Ct估计值那样有较大误差(50mah)。
另外,Cft估计值的可靠性或品质可以通过比较每次充电中断索引的Cft估计值(例如:表2b中的2054mah,2035mah,2044mah)得到。若很多对都很一致,则Cft的品质QiCft比较高。若有几对并不吻合,则品质QiCft比较低。
基于Cft和Ct估计值品质的Cft及Ct的自适应增量变化
与这部分有关的增加的术语定义如下。
tCft:“真实”总容量,该容量是从一个完全充电的单电池获得的总的安培小时数。tCft可能会缓慢变化,且由于一些因素(例如充电/放电时间段、工作和存储电压,等等)的影响,Cft在某种程度上是很难测量的。
eCft:正使用的tCft的估计值。
edCft:一个从eCft中扣除的变化量(增量)。edCft接近已知的、随时间逐步损耗的容量:eCft1=eCft0+edCft0。通常用于总容量损耗的开环估计修正,并由一个含有电压、温度和时间的函数计算得出。
qCft:一个由“合格放电周期”(QDC)计算所得的Cft估计值,该估计值用来替代eCft:eCft1=qCft1。qCft通常由qCft=Cer(充电开始时的剩余容量估计值)+在充电期间增加的mah计算得出。qCft用于修正eCft的漂移,但是它受Cer的较大误差的影响,并且需要一个无意或有意的合格放电周期。
iCft:一个“独立”的Cft估计值,iCft的值是由两个不同开路时间段的相对容量值之差除以与那两个开路电路时间段相对应的相对荷电状态值而得到的。这个估计值可能会受一些由于测量引入的噪声的影响,然而,可以通过QiCft来很好地估计这些噪声。
每个估计值都有一个相应的品质(或权)。
QeCft:eCft估计值的品质。QeCft一开始很高,但逐步开始减小并漂移,直至减小到可能需要请求QDC的那个值。
QqCft:qCft估计值的品质。QqCft值为零,除非发生一个有意的或无意的QDC。由于Cer的估计有问题,该值在任何情况下均不会很高。
0iCft:采用上述新方法所得的独立iCft估计值的品质。其值在低到高之间是可变的。
有了上述的新术语,我们可以计算一个加权的(或经混合的)eCft,该加权的eCft结合了上述的每个估计值及品质,详见等式(3)与(4)。
(3)Qt=(QeCft+QqCft+QiCft)
(4)eCft1=QeCft/Qt*(eCft0+edCft0)+QqCft/Qt*qCft+QiCft/Qt*iCft
当Qt较低的时候,可能仍然需要请求增加一个QDC。然而,这样的QDC应越少用越好,因为在多数的充电周期中,QiCft应保持较高。
根据单电池随时间而发生的变化更新Trc
常规操作下,初始Trc必须对单电池的整个生命周期提供可靠的操作,只要初始RSOCt/Ecpt是真实的。然而,在常规操作下,根据一些不可预知的逐步的变化更新Trc是有可能的,也是很实际的。这些变化包括单电池的化学变化,测量电路的变化,或使用环境的变化,它们可能影响RSOCt/Ecpt关系。尤其是,若:
1.QqCft由于一个无意QDC而变得相对高,
2.且QiCft比较高,但比在先前的那些QDC期间低,
3.那么可以采用类似于加权eCft的计算方法更新Trc.RSOCi和Trc.Ecpti值,使它们与所采集的值更加一致。xWt=xQqCft+xQiCft(x表示这些权可能与上述的权不同,因为只有缓慢地改变Trc值才是较佳的做法。)(新的Trc.RSOCi[i])=xQiCft/xWt*(以前的Trc.RSOCi[i])+xQdCft/xWt*(Trc.Ct[i]/QCft),且(新的Trc.Ecpi[i])=xQiCft/xWt*(以前的Trc.Ecpi[i])+xQdCft/xWt*(Trc.Ecpi[i]/QCft)
操作
图6所示为一个实施例的操作流程图600。操作602包括在第一和第二时间段内将单电池电路开路。该单电池电路包括一个单电池。在一个例子中,在充电模式期间,这可能需要在t1和t2、t3和t4之间中断充电,如图5所示。操作604包括在第一时间段内测量单电池的第一瞬时开路电压值(例如Voct1),在第二时间段内测量单电池的第二瞬时开路电压值(例如Voct2)。操作606包括把第一瞬时开路电压值与第一估计值(例如Ecpt1)相联系,把第二瞬时开路电压值与第二估计值(例如Ecpt2)相联系。操作608包括把第一估计值与单电池的第一相对荷电状态相联系,把第二估计值与该单电池的第二相对荷电状态相联系。最后,操作610把第一单电池总容量与第一和第二相对荷电状态值之差相联系。
值得注意的是,这里所描述的所有实施例的功能可以通过硬件、固件、软件或三者的结合来实现。
总之,一个实施例可以包括一个电子装置。该电子装置可以包括一个存有指令的存储介质,当一个机器执行这些指令后,会产生如下结果:在第一和第二时间段内将一个单电池电路开路,该单电池电路包括一个单电池;在第一时间段内测量单电池的第一瞬时开路电压值,在第二时间段内测量单电池的第二瞬时开路电压值;把第一瞬时开路电压值与第一估计值相联系,把第二瞬时开路电压与第二估计值相联系;把第一估计值与单电池的第一相对荷电状态相联系,把第二估计值与该单电池的第二相对荷电状态相联系;根据第一和第二相对荷电状态值之差计算第一单电池总容量。
在进一步的实施例中,第一时间段可以与第一单电池容量相联系,第二时间段可以与第二单电池容量相联系。计算操作可以包括将第一与第二容量值之差除以所述第一与第二相对荷电状态值之差,得到第一总容量值。
另一个实施例可包括一个电池电量监测器电路。该电路可以包括:一个用于连接数个单电池的开关网络;一个与开关网络相连的模数转换器(ADC),该模数转换器通过开关网络接收来自每个单电池的模拟信号,并把每个模拟信号转换成相应的数字信号。该电路还包括一个能够执行存储在存储介质中的指令的处理器,指令执行的结果如下:命令开关网络在第一和第二时间段内将一个单电池电路开路,该单电池电路包括数个单电池中的一个;命令开关网络将上述数个单电池中的那个单电池与模数转换器相连,模数转换器在第一时间段内向处理器提供一个代表单电池第一瞬时开路电压的第一数字信号,在第二时间段内向处理器提供一个代表单电池第二瞬时开路电压的第二数字信号;把第一数字信号与第一估计值相联系,把第二数字信号与第二估计值相联系;把第一估计值与单电池的第一相对荷电状态值相联系,把第二估计值与单电池的第二相对荷电状态值相联系;和根据第一和第二相对荷电状态值之差,计算第一单电池总容量。
在这些实施例中,有利的是,第一和第二相对荷电状态值适用的是同一个特定的单电池,并不是对其它单电池普遍适用的。因此,由通用表与特定单电池之间的不同而引入的误差是可以避免的。另外,只要某个估计值能产生可重复的相对荷电状态值,第一与第二估计值不需要精确的电压读数。这样,潜在地减小了电压校准的微小误差的影响。
若第一和第二时间段相对较短,则第一和第二瞬时开路电压值(Voct)通常不会很接近相应的理论开路电压值(Vcpt)。然而,该Voct可以用来产生可重复的估计值(Ecpt)。因此,RSOC[Ecp]表的建立、使用及更新可以不需要参考外部提供的RSOC[Vcp]表。
另外,若可以独立地、可靠地测得/推出RSOC(通常经过任何完全的放电/充电周期之后),则也可以更新RSOC[Ecp]表以反映单电池的新状态,这样可以用来说明单电池的老化。
尽管在算法上Ecpt不需要和Vcpt有任何直接的关系,Vcpt的估计值仍然很有用,因为:
1.Vcpt对于充电电流,温度等等的变化并不敏感。在充电中断期间测得的Voct对诸如充电电流的变化非常敏感。通过采用例如:Ecpt=Voct-(C0+C1*Icharge)(其中C0与C1是常数,Icharge是充电中断之前的平均充电电流),我们可以得到一个对充电电流相对不太敏感的估计值,这样,该估计值在一个较宽的工作状态范围内是很有用的。还可以加入一些其它的修正,例如:温度的修正等等,目的是得到一个仅仅依赖于RSOCt,且受其它独立变量影响最小的Ecpt。
2.若Voct测量值被准确地校准,且Ecpt精确模拟Vcpt,则固定Vcpt表可以用来与Ecpt互换。若采用固定Vcpt表会产生一个高置信因子(如下所述),则我们对于RSOCt测量的所有组成部分都有一个高的置信度。可能会有不同的Ecpt估计值与表,每个采用的是不同的修正因子。我们可以采用产生最高置信因子的Ecpt值。
在这里使用的术语与措辞是具体描述的术语,但没有局限性。在采用这些术语和措辞时,不排除其它这里所展示的和描述的特征(或特征的一部分)相似的特征。并且应该意识到的是,在权利要求范围内,本实用新型可能有多种修改。本实用新型还可能存在其它一些修改、变动及其它。因此,权利要求旨在覆盖所有这些等价物。