本发明涉及电池能源管理领域,尤其涉及一种电池soc估算方法。
背景技术:
电池的荷电状态(soc)估算是电池管理系统中的关键技术之一,它不仅关系到汽车行驶里程的估算,而且关系到动力电池的安全。对电池soc的准确估算有利于准确预测电池的剩余电量,进而确定有效的电池管理策略,避免过度充电或放电对电池造成损害,延长电池的使用寿命
目前常见的估算方法是通过研究电池的开路电压(opencircuitvoltage,ocv)、恒流放电时电压的变化规律、电池内阻等特性来获得soc,由此产生了一些soc的基本计算方法,如恒定电流电压法、开路电压法、安时积分法、内阻法、比重法等等。其中,安时积分法因简单、易实现、可靠等优点而被广泛应用于soc估算中,但其长时间运行后会产生较大的累积误差。递推最小二乘法能够有效修正安时积分估算的荷电状态,但递推最小二乘法在应用过程中存在两个问题:1、递推最小二乘法容易出现数据饱和;2、带遗忘因子的递推最小二乘法中的遗忘因子无法随工况实时优化,从而导致估算误差波动较大。
因此设计一种简单易行、估算精度较高且能有效减少安时积分累积误差的soc估计方法成为本领域技术人员亟待解决的技术问题。
技术实现要素:
本发明的目的之一是提供一种电池soc估算方法,根据工况实时优化递推最小二乘法的退出条件,避免出现数据饱和,减少安时积分算法的累积误差,提高电池soc的估算精度。
为实现上述目的,本发明的技术方案如下:
本发明提供一种电池soc估算方法,包括如下步骤:
a、通过电池管理系统获取电池当前的soc值socbms,根据socbms确定递推最小二乘法的退出条件;利用电池管理系统提供的实时soc值来设定递推最小二乘法的退出条件,实现了递推最小二乘法随工况实时改变递推次数,有效避免递推数据饱和的情况。
b、利用安时积分算法实时估算电池的soc值,安时积分算法从估算程序开始实时计算电池的soc值直至程序结束为止。步骤a和步骤b的执行顺序不分先后。
c、利用递推最小二乘法估算电池在ta时刻的soc值并在符合所述退出条件时停止递推,得到电池在ta时刻的soc值soca;
d、利用安时积分算法记录ta时刻之后电池soc的变化量,当电池soc的变化量大于预设值时,再次利用递推最小二乘法估算电池此时tb时刻的soc值并在符合所述退出条件时停止递推,得到电池在tb时刻的soc值socb;
e、利用安时积分算法判断socb的有效性,若有效,则将socb值输出;若无效,则将安时积分算法估算的tb时刻的soc值socah输出。
安时积分算法在较长时间运行后,易产生较大的soc估算误差,利用递推最小二乘法进行soc估算能有效降低这种估算误差,同时利用安时积分算法验证递推最小二乘法较短时间区间内soc变化量估算的准确性,结合两种算法不同的估算优势,有效提高soc实时估算精度。
所述退出条件为:递推最小二乘法在递推过程中,安时积分算法记录的soc累积变化量≥δ且递推次数n>lo,或递推次数n>hi,其中,δ=δerr*dsocbms/docvbms,lo和hi均为递推次数的预设阈值,lo<hi;δerr为电池管理系统对单体电池电压采样的误差精度。递推最小二乘法在等效电路模型的待标定参数不变时执行递推动作才具有效性,退出条件的设定能够有效保证递推最小二乘法在单体电池电压足以辨认等效电路模型中待标定参数是否变化时便退出,避免数据的饱和,提高算法的精度。
当所述单体电池电压的采样周期为0.5-1.5s时,lo的取值范围是[60,120],hi的取值范围是[300,360]。
所述利用递推最小二乘法估算电池在ta时刻的soc值具体包括:利用递推最小二乘法辨识ta时刻电池等效电路模型的参数直至满足所述退出条件,获得电池在ta时刻的开路电压值ocva,根据ocva查询ocv-soc表获得所述soca。
所述利用递推最小二乘法估算电池在tb时刻的soc值具体包括:利用递推最小二乘法辨识tb时刻电池等效电路模型的参数直至满足所述退出条件,获得电池在tb时刻的开路电压值ocvb,根据ocvb查询ocv-soc表获得所述socb。
所述等效电路模型采用一阶等效电路模型或二阶等效电路模型。
所述预设值的范围为[5%-80%]。这一设定区间内,安时积分算法对soc变化量的估算具有较高的准确度,进而保证安时积分算法验证最小二乘法的有效性。
所述判断socb的有效性包括:根据socb-soca与δsoc的相对关系以及在所述socb处的ocv值与soc值的变化相关性dsocb/docvb判断socb的有效性,δsoc表示用安时积分算法记录的ta至tb之间电池soc的变化量。安时积分算法对于短时间内soc变化量的估算具有较高的准确度,能够有效验证递推最小二乘法soc估算的准确性。
所述判断socb的有效性具体包括:当socb符合dsocb/docvb<η且abs|socb-soca-δsoc|≤ε时,则判定socb有效;当dsocb/docvb≥η且abs|socb-soca-δsoc|≤ε时,则判定socb无效;η与ε均为预设阈值。将socb处的soc值与ocv值的变化相关性作为有效性判定条件能够进一步保证具有较高准确度以及稳定性的soc值作为tb时刻的最优电池soc值输出。
所述ε的取值范围为[0.5%,1.5%],所述η的取值范围为[0.05%/mv,0.15%/mv]。这一取值范围能够进一步保证最终输出的socb值具有较高稳定性和准确度。
本发明提供的一种电池soc估算方法。与现有技术相比,利用电池管理系统提供实时soc值来设定递推最小二乘法的退出条件,实现了递推最小二乘法随工况实时改变递推次数,有效避免递推数据饱和的情况;利用递推最小二乘法修正安时积分算法的长时间估算误差,同时利用安时积分算法验证递推最小二乘法在短时间内soc变化量估算的准确性,结合两种算法的不同计算优势,有效提高soc实时估算精度。
附图说明
图1是本发明具体实施例一中电池soc估算方法流程图;
图2是本发明具体实施例一中常温dst工况示意图;
图3是本发明具体实施例一中在常温dst工况下利用本发明提供的方法获得的电池soc估算值与利用基于遗忘因子的递推最小二乘法获得的soc估算值对比图;
图4是本发明具体实施例一中在常温dst工况下利用本发明提供的方法产生的电池soc估算误差与利用基于遗忘因子的递推最小二乘法产生的soc估算误差对比图;
图5是本发明具体实施例二中在常温dst工况下利用本发明提供的方法产生的电池soc估算误差与利用基于遗忘因子的递推最小二乘法产生的soc估算误差对比图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。需说明的是,本发明附图均采用简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
实施例一
如图1所示,本实施例提供一种电池soc估算方法,将本方法应用在某三元电池的soc估算中,包括如下步骤:
a.通过电池管理系统(bms)获取电池当前的soc值socbms,根据socbms确定递推最小二乘法的退出条件。电池管理系统实时更新电池soc值,在利用本方法估算soc时,首先获取由电池管理系统估算的soc值socbms,并根据socbms来确定本方法中递推最小二乘法的退出条件;
b.利用安时积分算法从估算程序开始持续估算电池的实时soc值;
所述退出条件为:在递推最小二乘法的递推过程中,安时积分算法记录的soc累积变化量≥δ且递推次数n>lo,或递推次数n>hi,其中,δ=δerr*dsocbms/docvbms,lo和hi均为递推次数的预设阈值,lo<hi;δerr为电池管理系统对单体电池电压采样的误差精度。当所述单体电池电压的采样周期为0.5s-1.5s时,lo的取值范围是[60,120],hi的取值范围是[300,360],本实施例单体电池电压的采样周期为1s,lo的取值是90,hi取值330。也就是说,当soc累积变化量≥δerr*dsocbms/docvbms且递推次数n多于90次时,或者递推次数n已经多于330次时,则停止递推。
c.利用递推最小二乘法估算电池在ta时刻的soc值并在符合所述退出条件时停止递推,得到电池在ta时刻的soc值soca。
具体地,本实施例中,等效电路模型采用一阶等效电路模型,模型方程如下:
其中,
本实施例中递推最小二乘法的递推算式如下:
其中,kk为k时刻的增益矩阵,pk为k时刻的估计误差的协方差矩阵,在初始化过程中,
利用递推最小二乘法不断递推辨识ta时刻一阶等效电路模型中的参数,在此过程中,安时积分算法持续记录电池soc的变化量,当累积变化量≥δerr*dsocbms/docvbms且递推次数n多于90次时,或者递推次数n已经多于330次时,停止本次递推,获得电池在ta时刻的开路电压值ocva,并根据ocva查询ocv-soc表获得ta时刻的电池soc值soca。建立ocv-soc表为本领域常规技术,这里不做进一步详述。
d.利用安时积分算法记录ta时刻之后电池的soc变化量,当电池的soc变化量大于预设值时,再次利用递推最小二乘法不断递推辨识在tb时刻等效电路模型中的参数,在此过程中,安时积分算法持续记录电池soc的变化量,当记录的累积变化量≥δerr*dsocbms/docvbms且递推次数n多于90次时,或者递推次数n已经多于330次时,停止本次递推,得到电池在tb时刻的soc值socb;所述预设值的范围为[5%-80%],本实施例的预设值选为15%。
e.利用安时积分算法判断socb的有效性,若有效,则将socb值输出;若无效,则将安时积分算法估算的tb时刻的soc值socah输出。具体地,当socb符合在所述socb处的ocv值与soc值的变化相关性dsocb/docvb<η且abs|socb-soca-δsoc|≤ε这一条件时,则判定socb有效;当abs|socb-soca-δsoc|≤ε且dsocb/docvb≥η时,则判定socb无效;当出现abs|socb-soca-δsoc|>ε时,则继续重复上述a-d步骤。其中δsoc表示用安时积分算法记录的ta至tb之间电池soc的变化量。所述ε的取值范围为[0.5%,1.5%],本实施例中ε的值选为1.0%;所述η的取值范围为[0.05%/mv,0.15%/mv],本实施例中η的值选为0.1%/mv。
为验证本方法的估算效果,如图2所示,本实施例在常温的dst(动态应力测试)工况下,对某种三元电池进行soc估算,如图3-4所示,将本实施例提供的估算方法得到的soc估算结果与利用基于遗忘因子的递推最小二乘法的soc估算结果进行比较,并将两者的估算误差结果进行对比;两者的估算误差统计如表1所示:
表1
可以看出,在相同工况下,利用本实施例提供的soc估算方法产生的估算误差明显小于利用基于遗忘因子的递推最小二乘法的soc估算,说明本方法能有效校准安时积分算法的累积误差,提高电池soc估算精度。
实施例二
本实施例与实施例一的区别在于:
递推最小二乘法的退出条件是:安时积分算法记录的soc累积变化量≥δerr*dsocbms/docvbms且递推次数n多于60次时,或者递推次数已经多于300次时,则停止递推;
在执行步骤d时,当电池的soc变化量大于5%时,再利用递推最小二乘法计算电池在tb时刻的soc值socb;
在判定socb的有效性时,当socb符合在所述socb处的ocv值与soc值的变化相关性dsocb/docvb<0.05%/mv且abs|socb-soca-δsoc|≤0.5%这一条件时,则判定socb有效;当abs|socb-soca-δsoc|≤0.5%且dsocb/docvb≥0.05%/mv时,则判定socb无效;当出现abs|socb-soca-δsoc|>0.5%时,则继续重复a-d步骤。
本实施例在常温的dst工况下,对某钛酸锂电池进行soc估算,如图5所示,将本方法产生的soc估算误差与利用基于遗忘因子的递推最小二乘法的soc估算误差结果进行对比;两者的估算误差统计如表2所示:
表2
可以看出,在相同工况下,利用本发明提供的soc估算方法产生的估算误差明显小于利用基于遗忘因子的递推最小二乘法产生的soc估算误差。
显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。