电池组的电池单元的容量的自动估计方法与流程

文档序号:11634528阅读:432来源:国知局
电池组的电池单元的容量的自动估计方法与流程

本发明涉及电池组的电池单元的容量的自动估计方法和该电池单元的充电状态的自动估计方法。本发明还涉及数据记录介质和用于实施这些方法的电池组管理系统。本发明还涉及包括该电池组管理系统的机动车辆。

已知的用于估计电池组电池单元的容量的方法包括:

a)在时刻k获取所测量的该电池单元的充电或放电电流强度ik,

b)通过使用卡尔曼滤波器估计电池组在时刻k3的容量cn,k3,该估计包括:

●借助于状态模型计算对容量cn,k3的预测值,该状态模型将容量cn,k3关联到该同一电池组在前一时刻k3-1的容量cn,k3-1,然后

●在时刻k3获取由以下关系式限定的可测量物理量zk3:

其中,k是最接近时刻k3的时刻,n是大于或等于1的整数,zk3在n等于1时等于ik-1,

●借助于观测模型计算可测量物理量zk3的预测值以及

●根据所获取的物理量zk3与借助于观测模型计算的预测值之间的差值来修正容量cn,k3的预测值。

这样的方法尤其在以下文献的第3部分的第4.2.2章描述:l.plett,etal.:extendedkalmanfilteringforbatterymanagementsystemsoflipb-basedhevbatterypacks,journalofpowersources,2004,page252-292。在下文中该文献用缩写“plett2004”指代。

还由us2006/111854a1和us2014/058595a1已知现有技术。

在plett2004中,用于估计容量的状态模型为cn,k3-1=cn,k3+wk3,其中wk3是中心的高斯白噪声。

在plett2004中描述的方法正确地运行。然而,期望的是进一步改善电池组电池单元容量的估计的精度。

本发明旨在通过提出如权利要求1所述的电池单元容量的自动估计方法来满足该期望。

根据学习数据库学习gsvm函数的事实允许获得更精确的用于估计容量的状态模型。用该所学习的状态模型估计的容量由此更加精确。

该容量的自动估计方法的实施例可包括一个或多个从属权利要求的特征。

该容量的自动估计方法的这些实施例还具有以下优点:

-指定学习呈gsvm(cn,k3,cc1,k3)=cn,k3+fsvm(cc1,k3)形式的函数允许获得线性的状态模型。这增大容量估计精度,这是因为在这种情况下,状态模型关于容量cn,k3的线性化没有引入误差。

-在数据库上触发执行监督式学习算法允许更新状态模型并因此允许自动地按电池单元中发生的改变调整该模型,其中所述数据库包含前述的由卡尔曼滤波器估计的容量。

-响应于超过阈值而触发监督式学习算法的新的执行允许限制执行该方法所需要的计算功率,同时对于容量估计保持几乎不变的精度,其中所述阈值由容量估计的误差的协方差预先确定。实际上,在这种情况下,监督式学习算法仅在必要时才被执行。

-在权利要求所要求保护的方法中,用于计算预测值的观测模型是容量cn,k3的线性函数。因此,预测值的计算不具有与观测模型关于数值cn,k3的线性化相关的误差。另一方面,在plett2004的第4.2.2章所述的观测模型是非线性的,因此一定必须关于容量cn,k3被线性化。这样的线性化必定造成经修正的容量cn,k3的估计误差。而且,观测模型的该线性化操作耗尽计算功率。

本发明还包括如权利要求8所述的电池组的电池单元的充电状态的自动估计方法。

该充电状态的自动估计方法的实施例可包括一个或多个从属权利要求的特征。

该充电状态的自动估计方法的这些实施例还具有以下优点:

-对无限脉冲响应滤波器的系数的估计和将该滤波器用在用于估计容量的状态模型中允许改善电池单元的充电状态估计的精度。

本发明还涉及一种数据记录介质,其包括指令,当这些指令被电子计算机执行时执行上述自动估计方法中的任一个。

本发明还涉及一种配备有至少一个电池单元的电池组管理系统,该系统包括被编程为实施权利要求所要求保护的方法的电子计算机。

最后,本发明还涉及一种机动车辆,其包括权利要求所要求保护的电池组管理系统。

阅读以下仅作为非限制性例子提供的并参照附图做出的说明,将更好地理解本发明,在附图中:

图1是配备有电气电池组的机动车辆的局部示意图;

图2是图1的车辆的电池组的电池单元的电气模型的示意图;

图3是被用于估计图1的车辆的电池组的电池单元的充电状态的估计器布置的示意图;

图4至7示出图3的估计器使用的不同状态模型和观测模型的方程;

图8是用于借助于图3的估计器估计电池单元的充电状态的估计方法的流程图;

图9和10分别示出图8的方法中使用的状态模型和观测模型。

在这些图中,相同的附图标记被用于表示相同的元件。在本说明书的其余部分中,本领域的技术人员所熟知的特征和功能不详细地描述。

在本说明书中,“计算功率”指由电子计算机执行的操作数量。由此,降低计算功率意味着减少要执行的操作数量,以便获得相同的结果或等同的结果。图1示出电气牵引式机动车辆2,更好地称为“电动车辆”。电动车辆是为人所熟知的,仅说明理解本说明书的其余内容所必需的结构性元件。车辆2包括:

-电动机4,其能够驱动驱动轮6旋转以使得车辆2在道路8上行驶,以及

-电池组10,其给电动机4供给电能。

电池组10包括两个电连接端子12、14和在这些端子12和14之间电连接的多个电气电池单元。端子12和14被连接到待供电的电负载。在此,这些端子因此尤其被连接到电动机4。

为了简化图1,仅示出四个电池单元18至21。通常,这些电池单元被分组成几个级,并且这些级串联地连接在端子12和14之间。在此,仅示出两个级。第一级包括电池单元18和19,第二级包括电池单元20和21。每个级包括并联连接的多个分支。级的每个分支包括一个电池单元或串联的多个电池单元。在此,第一级包括两个分支,每个分支包括单个电池单元。在图1中示出的例子中,第二级与第一级在结构上是相同的。

在此,电池组10的所有电池单元除制造公差以外在结构上是相同的。因此,现在仅更详细地描述电池单元18。

电池单元18包括将该电池单元电连接到其它电池单元和电池组10的端子12和14的两个电连接端子30、32。电池单元18还被机械地固定在电池组10的其它电池单元上而没有自由度,以形成经常所谓的电池单元“包”。电池单元18能够在其不被使用时存储电能。该存储的电能然后被用于给电动机4供电,这使得电池单元18放电。替代地,电池单元18还能够接收电能,从而对其充电。电池单元在其完全重新充电之后的完全放电构成所谓的充电/放电循环,其在下文中被简单地称作“电池单元循环”。

电池单元18是已知类型的电池单元,例如是lipb(锂离子聚合物电池组)或其它电池单元。

电池单元18由初始标称容量cnini、初始内电阻roini、电流强度imax、最大电压umax、最小电压umin和函数ocv(sock)表征。容量cnini是电池单元18的初始容量。电池单元的容量代表能够被存储在该电池单元中的最大电能量。该容量用ah表达。随着电池单元18老化,即随着充电和放电循环的次数增加,电池单元的容量减小。电池单元18在时刻k的标称容量在下文中为记为cn,k。

初始内电阻roini是电池单元18在其开始老化之前的内电阻数值。电池单元的内电阻是大部分电池单元的电气模型中所具有的物理量。当电池单元老化时,内电阻通常增大。电池单元18在时刻k的内电阻被记为rok。

imax是电池单元18所能够输出的而不损坏该电池单元的最大电流强度。

umax是可持续存在于端子30和32之间而不损坏该电池单元的最大电压。

电压umin是电池单元18完全放电时端子30和32之间的最小电压。

ocv(sock)是根据电池单元18的充电状态sock返回电池单元18空载电压的预定函数。空载电压是在电池单元18已经与任何电负载电隔离两个小时之后在端子30和32之间能够测量的电压。

电池单元18在时刻k的充电状态被记为sock。充电状态代表电池单元18的填充率。当存储在电池单元18中的电能量等于其容量cn,k时,填充率等于100%。当存储在电池单元18中的电能量为零、即不能从电池单元18提取电能以给电负载供电时,填充率等于0%。

参数cnini、roini、imax、umax、umin和函数ocv(sock)是电池单元的已知参数。例如,这些参数由电池单元的制造商提供,或根据在该电池单元上实施的测量实验地确定。

对于每个电池单元,电池组10同样包括:

-测量该电池单元的端子之间的电压的电压计,以及

-测量该电池单元的充电和放电电流强度的电流计。

为了简化图1,仅示出电池单元18的电压计34和电流计36。

与电池单元18的前述各个参数不同,电池单元18的充电状态sock不可测量的。该充电状态因此必须被估计。为此,车辆2包括电池组10管理系统40,其以缩写bms(电池组管理系统)更为已知。该系统40的功能尤其在于确定电池组10的充电状态以及该电池组的健康状态。为了确定该充电状态和该健康状态,系统40能够估计电池组10的每个电池单元的充电状态和健康状态。电池单元的健康状态代表该电池单元的老化进程状态。在此,电池单元在时刻k的健康状态被记为sohk。在下文中,该健康状态由比值cn,k/cnini测量。为了计算电池单元的健康状态,系统40因此也能够估计该电池单元在当前时刻k的容量cn,k。

为了实现这些各个估计,系统40电连接到电池组10的每个电压计和每个电流计,以获取每个电池单元的端子之间的电压和电流强度的测量值。

在此,系统40包括存储器42和能够执行保存在存储器42中的指令的可编程电子计算机44。为此,存储器42包括执行图8的方法所必需的指令。该存储器42还包括执行该方法所必需的各个参数的初始数值。系统40的结构因此与已知电池组管理系统的结构相同或相似,不再详细地说明。

图2示出电池单元18的电气模型50。该模型从端子32开始直至端子30相继地包括串联地连接的:

-空载电压ocv(sock)生成器52,以及

-阻抗54。

阻抗54包括串联地连接的电阻56和nc个并联rc电路54l,其中索引l是从1到nc的索引,其相对于模型50的其它rc电路标识rc电路。电阻56对应于电池组18的内电阻。每个电路54l都包括电容为cdl的电容器,其与电阻为rdl的电阻器并联连接。电阻56和每个rc电路的两个参数cdl和rdl是未知的,因此是待确定的。在下文中,在时刻k,阻抗54的端子处的电压记为vd,k。电池单元18的端子30和32之间在时刻k的电压值记为yk,电池单元18在相同时刻的充电或放电电流强度记为ik。

图3示出在系统40中实施的用于估计电池单元18的容量及其充电状态的估计器布置的第一实施例。每个估计器以由计算机44执行的估计算法的形式被实施。由此,下文既说“执行估计器”也说“执行估计算法”。在该第一实施例中,系统40包括根据所测量的电压值yk和测量强度ik估计充电状态sock的估计器60。估计器60在此以卡尔曼滤波器的形式被实施。该估计器因此使用状态模型62(图4)和观测模型64(图5)。在这些图4和5中,这些模型的方程通过使用此前定义的标记来表示。标记ht,k2和cn,k3分别代表分别在时刻k2和k3的滤波器和电池单元18的容量。通常,时刻k2和k3各自属于时刻k集合的子集。在模型62和64中,时刻k2和k3是这些子集的最接近时刻k的时刻。在模型62中,sock是状态变量。

在下文中,我们将假设起始时间对应于时刻k的零值。在这些条件下,当前时刻k等于kte,其中te是电池组10的电流计和电压计的测量的采样周期。由此,te是分隔由系统40获取电压和电流强度的任意两个连续时刻k和k-1的时间周期。周期te通常是从0.1s到10s的常数。在此,周期te等于1s,误差为正负20%。例如,te等于1秒。

在模型62中,wk是状态噪声。在此,噪声wk是中心的高斯白噪声。该噪声代表所用模型的不确定性。噪声wk在时刻k的协方差矩阵记为qk。该协方差矩阵用以下关系式确定:qk=e(wk*wkt),其中e(…)是数学期望函数。模型62也以以下形式写出:xk+1=fkxk+bkik+wk,其中:

-fk是时刻k的状态转换矩阵,

-bk是时刻k的控制向量。

模型62尤其允许根据之前的充电状态sock预测时刻k+1的充电状态sock+1。

模型64允许根据充电状态sock和向量xk预测时刻k的电压的数值yk。在模型64中,xk是以下向量:[ik,ik-1,…,ik-nh,vd,k-1,vd,k-2,…,vd,k-mh]t。在本说明书中,符号“t”指示数学转置运算。乘法运算用运算符“.”或“*”代表。nh和mh是预定的正整数。在此,nh和mh每个都大于或等于2。优选地,nh和mh属于[3;10]的集合。在此,nh和mh两者都等于4。

乘积ht,k2*xk代表对阻抗54的端子处的电压vd,k的预测值在该实施例中,通过用无限脉冲响应滤波器ht,k2来模拟阻抗54。滤波器ht,k2由以下关系式确定:

其中,bi,k2和ai,k2是滤波器ht,k2在最接近时刻k的时刻k2更新的系数。

在模型64中,vk是中心的高斯测量白噪声。时刻k的噪声vk的协方差矩阵在下文中记为rk。在这里描述的特定情况下,该矩阵rk是单行和单列的矩阵。该矩阵由关系式限定:rk=e(vk*vkt)。该噪声vk独立于噪声wk和初始充电状态soc0。

将注意到,模型64是非线性的,这是因为函数ocv(sock)一般是非线性的。因此,估计器60实施sigma点版本的卡尔曼滤波器,其以缩写spk(sigmapointkalmanfilter)更为已知。sigma点卡尔曼滤波器的实施在以下文献中详细地被说明:

-julierj.simonetal:anewextensionofthekalmanfiltertononlinearsystems,proc.spie3068,signalprocessing,sensorfusion,andtargetrecognitionvi,182(28/07/1997),以及

-gregoryl.plett:sigma-pointkalmanfilteringforbatterymanagementsystemsoflipb-basedhevbatterypacks,journalofpowersources161(2006)1356-1368。

上述文献没有描述使用与模型62、64的完全一样的状态模型和观测模型的sigma点卡尔曼滤波器的实现。然而,根据在此提供的信息和这些文献的教导,本领域的技术人员能够无过大难度地编程使用模型62和64的sigma点卡尔曼滤波器。

为了能够估计充电状态sock+1,估计器60需要获悉容量cn,k3和滤波器ht,k2的系数。电池单元的容量和滤波器ht,k2的系数随着电池单元18老化而变化。为了考虑到该老化,分别在时刻k3和k2估计电池单元的容量和滤波器ht,k2的系数。在此,估计器66尤其根据测量的数值yk2、测量的电流强度ik2和充电状态sock2估计滤波器ht,k2的系数。另一估计器68基于电流强度ik3和充电状态sock3估计容量cn,k3。

电池单元18的滤波器ht,k2的系数和容量比其充电状态更慢地变化。由此,为了限制估计电池单元的充电状态所需要的计算能力而不会降低该估计的精度,估计器66和68比估计器60执行的频率更低。在此,估计器66和68的执行时刻被分别记为k2和k3,以与时刻k区分。时刻k2的集合和时刻k3的集合是时刻k的集合的子集。因此,在两个连续时刻k2和k2-1之间和两个连续时刻k3和k3-1之间,经过多个周期te和多个时刻k。

估计器66实施递归最小二乘算法,其更熟知的英文缩写为rls。rls算法是众所周知的,并且在图8的方法中仅提及其功能原理。

估计器68以卡尔曼滤波器的形式被实施。该估计器使用状态模型74(图6)和观测模型76(图7)。在模型74和76中,噪声w3,k3和v3,k3是中心的高斯白噪声。噪声w3,k3和v3,k3的协方差在下文中分别记为q3,k3和r3,k3。

在模型74中,函数gsvm是根据容量cn,k3-1和在时刻k3在电池单元18或车辆2上测量或估计的物理特征ccj,k3的集合ec返回容量cn,k3的函数。集合ec的特征的共同之处在于其影响电池单元的容量随时间的变化。这些特征因此与电池单元18的容量随时间的变化相关联。集合ec包括至少一个物理特征cc1,k3,优选地包括一个或多个额外的物理特征ccj+1,k3,其中索引j是大于或等于1、例如小于5或3的常整数。通常,集合ec的特征中至少一个在由电流强度ik3和数值yk3构成的集合中选择。优选地,特征cc1,k3是电流强度ik3。实际上,电池单元18的充电或放电电流强度已知为与容量随时间的变化相关联的特征。还优选的是,第二特征cc2,k3是测量的数值yk3。实际上,电流强度,已知的是,端子30、32之间的电压是与电池单元的容量变化相关联的特征。然后,额外特征中的一个是电池单元18的在时刻k3测量的温度tk3(如果可获得该测量温度的话)或者电池单元18的放电深度dodk3。深度dodk3是以缩写dod已知。在此,该深度借助于以下关系式获得:dodk3=1–sock3。最后,与电池单元的容量的变化相关联的任何其它特征都可以包含在集合ec中。这样的其它特征的一个例子是车辆2的加速度或其速度。在该实施例中,集合ec仅包括分别等于电流强度ik3和测量的数值yk3的两个特征cc1,k3和cc2,k3。

优选地,函数gsvm由以下关系式限定:gsvm(cn,k3-1;ec)=cn,k3-1+fsvm(ec),其中fsvm(ec)是习得函数,其根据集合ec的物理特征返回容量cn,k3和cn,k3-1之间的差值。以这种形式写出,模型74是容量cn,k3的线性函数。模型76也是线性函数。因此不需要借用使这些模型关于容量cn,k3线性化的卡尔曼滤波器的实现。由此,用这些模型74、76,电池单元18的容量的估计的精度被提高,这是因为避免了因对这些模型的线性化而不可避免地引入的近似误差。在此,简单的卡尔曼滤波器而不是扩展卡尔曼滤波器被用于实现估计器68。

观测模型76允许估计可直接测量的物理量zk3。物理量zk3在此是最后n个测量的电流强度ik之和。该物理量由以下关系式限定:

在上述关系式和模型76中,时刻k等于时刻k3。该物理量zk3不仅考虑到在时刻k3之前的时刻k-1测量的电流强度ik-1,还考虑到时刻k3与k3-1之间测量的前n个电流强度。在此,n是严格大于一的整数,其按照以下将说明的方式被计数。考虑到时刻k3与k3-1之间的中间测量值允许提高容量cn,k3的估计精度。

在该实施例中,模型74的函数fsvm初始地根据实验数据库学得,然后在车辆2中系统40使用过程中再学习。为此,系统40因此还实施监督式学习机器70,并包含数据库71(图1),该数据库包含学习必需的数据。机器70交替地或同时地在两个不同的模式中运行,这两个模式在此分别称作“学习模式”和“使用模式”。在学习模式中,机器70构建数据库,该数据库包含在非常大量的时刻k3下,在同一时刻测量或估计的容量cn,k3和集合ec的特征。在该实施例中,为此,该机器接收电流强度ik3、测量的数值yk3,和由估计器68估计的容量cn,k3。为了构建所述数据库而考虑的时刻k3的数量例如大于50或100。仍是在学习模式中,一旦数据库71包含足够的数据,机器70就执行监督式学习算法,以学习函数fsvm(ec)。该学习是在比时刻k3频率更低的时刻k4执行的。例如,时刻k4通常比时刻k3的数量少至少5或10或100倍。在此,监督式学习算法是支持向量机(svm)。支持向量机是众所周知的。机器70因此在此不详细说明。简单地提醒,这样的机器自动地构建允许将集合ec的物理特征分为不同类别的超平面,每个类别都与容量cn,k3与cn,k3-1之间的差值的一个具体数值相关联。为了将集合ec的物理特征分为不同的类别,机器70尤其能够实现非线性轴系的改变。非共线轴系的这种变化称为“核技巧”(kerneltrick)。

传统地,在发起函数fsvm的学习之前,需要调节机器70的参数c、ε和γ。参数c是误差的惩罚参数。鉴于分类错误或多或少受到严格的惩罚,它是涉及要寻找的超平面复杂度的参数。参数ε是处理所允许的余量范围的参数。其相对良好地表征将会在回归上具有的精度。参数γ代表高斯核的参数,使得在核技巧的上下文中获得更大或更小的操纵余量。在此,这些参数通过应用在以下文献中描述的方法来调节:v.cherkassky:yunqianmavladimircherkassky:practicalselectionofsvmparametersandnoiseestimationforsvmregression,elsevier,neuralnetworks,2003。

机器70例如根据libsvm工具箱来实现,该工具箱能够从例如http://www.csie.ntu.edu.tw/~cjlin/libsvm/的多个因特网网站下载。该工具箱的优点在于容易地与例如的大量软件交互。

一旦学习了函数fsvm,机器70就能够在使用模式中运行。在使用模制中,在每个时刻k3,机器70接收集合ec的特征的数值,并作为响应,向估计器68返回函数fsvm(ec)在时刻k3的数值。

现在将借助于图8的方法在估计电池单元18的充电状态的具体情况中描述系统40的运行。

该方法从系统40的初始化阶段100开始。在步骤102期间,机器70实现对函数fsvm的初始学习。为此,在操作104期间,大量的不同时刻的电池单元18的电流强度ik、测量的数值yk和容量被保存在数据库中。通常,操作104在实验室中在与电池单元18相同但不一定是电池单元18本身的电池单元上实现。在实验室中,可以在每个时刻k测量容量cn,k。例如,容量cn,k通过阻抗谱或电化学阻抗谱被测量。

在操作106期间,由此构建的数据库被机器70获取。例如,该数据库被保存在存储器42中,作为学习数据库71。

最后,在操作108期间,机器70执行监督式学习算法,以通过使用保存在库71中的数据学习初始函数fsvm。

步骤102在函数fsvm的学习实现时完成。初始地习得的该函数fsvm则被保存在存储器42中。

在步骤110期间,估计器60的协方差矩阵q0和r0被调节。在此,这些矩阵q0和r0通过实施常规方法被调节。例如,使用由传感器制造商提供的数据或在这些传感器上执行的测试来调节矩阵r0。矩阵q0通过连续测试被调节。作为示例,矩阵q0被取值为等于10-3

在步骤110期间,估计器68的协方差q3,0和r3,0被调节。例如,协方差q3,0被取值为等于[γc*cnini/(3*nceol*ns)]2,其中被表示为除以100的百分比的γc代表电池单元18的容量cnini和寿命结束时的容量之间的差值。γc由使用者从0.05到0.8、优选地从0.05到0.3中选择。在此,γ=0.2。

协方差r3,0例如被选择为等于[2*εim*imax/300]2,其中εim是按百分比表示的电流计36的最大误差。

在下文中,为了简化说明,协方差q3,k3和r3,k3被视为常数,并被取值为分别等于q3,0和r3,0。然而,作为变型,还可以在每个时刻k3根据更新量并通过应用已知方法更新协方差q3,k3和r3,k3。

一旦初始化阶段100已经完成,就能够开始对电池单元18的充电状态的估计。

在阶段112期间,在每个时刻k,电压计34和电流计36分别测量的数值yk和电流强度ik,并且这些测量值被系统40立即获取并保存在存储器42中。阶段112在每个时刻k被重复。

在该实施例中,如果滤波器ht,k2的系数是未知的,那么估计器60就不能被执行。在这种情况下,与阶段112并行地,计算机44开始借助于不使用滤波器ht,k2的另一估计算法执行估计电池单元18的放电状态sock的阶段114,该另一算法是使用状态模型116(图9)和观测模型118(图10)的扩展卡尔曼滤波器。模型116根据电池单元18的简化电气模型获得,在该模型中,阻抗54仅包括一个并联rc电路。该并联rc电路的电阻rd和电容cd还被视为预定常数。电压vdiff,k是该rc电路端子处在时刻k的电压。该电压vdiff,k不能够被直接测量。由此,在模型116中,该电压被视为待估计的额外状态变量。在模型116中,假设电池单元18的容量恒定,等于其初始数值cnini。该假设是合理的,并且仅引入非常小的误差,这是因为阶段114就在系统40开始使用之后被执行。在该阶段,电池单元18没来不及老化。

模型118除以下不同之处外与模型64相同:乘积ht,k2*xk被和vdiff,k+roini*ik代替。roini是电池单元18的内电阻的初始数值。在该模型118中,数值roini是常数。该假设也引入非常小的误差,这是因为阶段114在电池单元18还来不及老化的阶段被执行。

模型116和118独立于滤波器ht,k2的系数。因此,可以不等待滤波器ht,k2的系数被确定就用这些模型开始估计充电状态sock。

在阶段114期间,模型116和118的中心高斯白噪声wk和vk的协方差矩阵以类似于对于步骤110所述的方式被调节。而且,为了简化,这些协方差矩阵被视为恒定的。由此,在阶段114期间,无论时刻k是多少,时刻k的协方差矩阵rk和qk都分别等于矩阵r0和q0。

然后,在步骤120期间,计算机44分别计算时刻k的电池单元18的充电状态的预测值和rc电路端子处的电压vdiff,k的预测值vdiff,k/k-1。在此使用的标记中,索引k/k-1指示该预测值是通过仅考虑从时刻0到k-1执行的测量做出的。由此说的是先验预测。索引k/k指示时刻k的预测值考虑到从时刻0到k执行的测量集合。由此说的是后验预测。预测值和vdiff,k/k-1借助于模型116、测量的电流强度ik-1和容量cnini被计算。

在步骤122期间,计算机44还计算状态向量xk的估计误差的协方差矩阵的预测值pk/k-1。状态向量xk在此是向量[sock;vdiff,k]t。通常,该计算借助于以下关系式实现:

pk/k-1=fk-1pk-1/k-1fk-1t+qk-1

fk-1是时刻k-1的状态转变矩阵。在模型116中,状态转变矩阵是恒定的。上面已经定义了矩阵pk-1/k-1和qk-1。

然后,在步骤124期间,计算机通过使得模型118关于预测值和vdiff,k/k-1线性化而构建矩阵hk。实际上,模型118是非线性的,这是因为函数ocv(sock)一般是非线性的。因此,计算机执行卡尔曼滤波器的扩展版本。在该扩展版本中,通过使模型118在向量xk附近线性化得到形式为yk=hkxk+roini*ik+vk的线性观测模型。通常,模型118在向量xk附近按泰勒级数展开。然后,忽略自第二阶起的微分的贡献。在此,矩阵hk因此等于函数ocv在充电状态sock附近的一阶微分。通常对充电状态sock的每个新值进行模型118的这种线性化。

在此之后,在步骤126期间,计算器根据测量的数值yk与借助于模型118预测的数值之间的差值来修正预测值和vdiff,k/k-1。该差值被称为“更新量”。该步骤126通常包括:

-计算预测值的操作128,然后

-修正和vd,k/k-1和矩阵pk/k-1以获得经修正的预测值vdiff,k/k和pk/k的操作130。

在操作128期间,借助于模型118计算预测值在该模型中,充电状态的数值被取值为等于并且电压vdiff,k的数值取值为等于vd,k/k-1。测量的数值yk和其预测值之间的差值在下文中被记为ek。

存在众多用于基于更新量ek修正先验预测值和vdiff,k/k-1的方法。例如,在操作130期间,这些预测值借助于卡尔曼增益kk被修正。增益kk由以下关系式给出kk=pk/k-1htk(hkpk/k-1htk+rk)-1。然后,先验预测值借助以下关系式被修正:xk/k=xk/k-1+kkek。

借助于以下关系式修正矩阵pk/k-1:pk/k=pk/k-1-kkhkpk/k-1。

最后,在步骤132期间,预测并修正的估计sock、测量的电流强度ik和测量的数值yk被保存在数据库71的具体表格中。

步骤120至132被重复k114次,优选地在每个连续时刻k被重复。k114优选地严格大于nh+mh+1,通常大于五十。一般,k114小于1000,以免使得阶段114持续过长时间。在此,k114取值为等于100。由此,阶段114被执行大约1min40s直到数据库71包含足够的数据以确定滤波器ht,k2的系数。在步骤120至132的每次新的重复期间,状态向量xk-1被初始化为在电池单元18的阶段114的前一次重复期间获得的数值。

一旦存储在数据库71中的数据数量被判断为是足够的,计算机44就在时刻k2触发估计器66的执行。自此,在阶段140期间,计算机44更新滤波器ht,k2的系数。

在步骤142期间,如果这是阶段140的第一次执行,计算机44将在时刻k2-1估计的滤波器ht,k2-1的系数ai,k2-1和bi,k2-1的数值初始化为预定数值。如果阶段140已经被执行过,那么系数ai,k2-1和bi,k2-1就用其在阶段140在时刻k2-1执行结束时获得的数值来初始化。

在步骤142期间,计算机44同样初始化协方差矩阵prls,k2-1。在阶段140的第一次执行期间,该矩阵prsl,0的系数被取值为等于预先保存在存储器42中的数值。例如,该矩阵的系数数值被取值为等于106,以指示系数ai,k2-1和bi,k2-1的初始数值的不确定性是最大的。在阶段140的随后的重复期间,矩阵prls,k2-1的系数被取值为等于该矩阵在时刻k2-1获得的系数。

在步骤144期间,在时刻k2,估计器66获取向量xk2。在该向量xk2中,利用最接近时刻k2的时间k,从保存在数据库存71的数据获得电流强度ik至ik-nh和电压vd,k-1至vd,k-mh。例如,在步骤144,k的取值等于k2。更确切地说,电压vd,k-i是根据测量的数值yk-i和空载电压ocv(sock-i)之间的差值获得的,其中测量的数值yk-i和充电状态sock-i是在时刻k-i时保存在数据库71中的数据。在该步骤期间,估计器66同样获取测量的电流强度ik和测量的数值yk。

在步骤146期间,估计器66计算增益krls,k2。例如,该增益借助于以下关系式计算:krls,k2=(xk2t*prls,k2-1)/(λrls+xk2t*prls,k2-1),其中系数λrls是称为“遗漏系数”的预定常数。该常数为从0到1。在此,λrls被选择为大于或等于0.9。例如,λrls等于0.99。

在步骤148期间,估计器66借助于以下关系式计算预测值和电压vd,k2:

然后,在步骤150期间,估计器66计算测量的电压vd,k2和其预测数值之间的差值erls,k2。所测量的电压vd,k2是根据差值yk2-ocv(sock2)获得的,其中测量的数值yk2是在步骤144期间获得的数值。

在步骤152期间,估计器66修正旧系数ai,k2-1和bi,k2-1的数值,以获得新的系数ai,k2和bi,k2,这些新的系数进一步最小化差值erls,k2。具有系数ai,k2和bi,k2的滤波器被记为ht,k2。例如,新的系数ai,k2和bi,k2借助于以下关系式被确定:ht,k2=ht,k2-1+krls,k2*erls,k2。

最后,在步骤154期间,协方差矩阵prls,k2-1被更新,以获得新的矩阵prls,k2。例如,该更新借助于以下关系式实现:prls,k2=(prls,k2-1–krls,k2*xk2t*prls,k2-1)/λrls。

步骤142至154被重复k140次,以获得对滤波器ht,k2的系数良好的估计。例如,这些步骤在从时刻k到时刻k+k140的每个时刻k被重复。在此,k140大于50,一般小于1000。例如,k140等于100。通常,步骤142至154的重复在满足以下条件之一时停止:

-k140≥50并且prls,k≤sprls,或者

-k140=100。

阈值sprls是系数ai,k2和bi,k2的估计误差的协方差的预定阈值。

当步骤142至154的重复停止时,触发估计器60的执行,这触发估计充电状态sock的阶段160的执行。并行地,阶段114停止。实际上,估计器60提供比在阶段114期间执行的估计算法获得的充电状态sock的更精确的估计。

为了估计充电状态sock,估计器60系统地使用滤波器ht,k2的系数和容量cn,k3最后已知的数值。由此,只要估计器68还没有估计任何容量cn,k3,使用的就是容量cnini。阶段160的功能可以从以上教导中推导出来并且包含在涉及sigma点卡尔曼滤波器的前述文献中。因此,该阶段160不详细说明。阶段160尤其包括:

-借助于模型62计算电池单元18的充电状态的预测值的步

骤162,然后,

-借助于模型64计算测量的数值yk的预测值的步骤164,然后

-在步骤166期间,根据预测的数值与测量的数值yk之间的差值来

修正预测值以获得预测和修正的充电状态例如,从

估计器60的执行被触发的时刻起,阶段160在每个时刻k被执行。

同样与阶段112、114、140和160并行地,所述方法包括步骤180,在该步骤期间,在每个时刻k,充电状态sock与预定上阈值shsoc比较。如果充电状态sock下降到该阈值shsoc之下,那么所述方法立即继续步骤182和184。否则,在下一时刻k重复步骤180。通常,阈值shsoc为从90%到100%。

在步骤182期间,计算机44首先将计数器初始化为零,然后从该步骤开始起在每次新的电流强度ik测量时递增1。而且,在每个时刻k,在数据库71中记录与该时刻k相关联的测量的电流强度ik和在同时生成的充电状态sock。

与步骤182并行地,在步骤184期间,计算机44将每个新的充电状态sock与预定阈值slsoc比较。阈值slsoc例如为从0%到10%。只要充电状态sock保持高于该阈值slsoc,就在下一时刻k重复步骤182。否则,一旦电池单元18的充电状态sock下降到该阈值slsoc以下,那么计算机44就立即触发估计器68的执行,并停止增大计数器。由此,只要不超过该阈值slsoc,估计器68的执行就被禁止。

在阶段188期间,估计器68估计时刻k3的容量cn,k3。时刻k3因此等于估计器68的执行被触发的时刻k。

对于阶段140,由于估计器68不在每个时刻k被执行,时刻k3-1不对应于时刻k-1。相反地,时刻k3和k3-1被大于或等于nte的时间间隔分开,其中n是在步骤182期间计数的数量。

估计器68的卡尔曼滤波器的参数被初始化为在阶段188的时刻k3-1的前一重复结束时获得的这些参数的前一数值。

阶段188包括:

-在步骤190期间,借助于模型74计算预测值cn,k3/k3-1,

-在步骤192期间,计算容量估计误差的协方差矩阵的预测值p3,k3/k3-1,以及

-在步骤194期间,修正预测值cn,k3/k3-1和p3,k3/k3-1。

在步骤190期间,估计器68使用最后学习的函数fsvm。首先,该函数因此为在步骤102期间学习的函数fsvm。另一方面,如果机器70已经执行了新的学习周期,那么这是估计器68使用的最后的函数。例如,为了获悉函数fsvm(ec)在时刻k3的数值,在时刻k3测量的集合ec的参数被发送给机器70,该机器作为响应向估计器68发送函数fsvm(ec)在时刻k3的数值。在该实施例中,机器70获取测量的数值yk3和测量的电流强度ik3。在步骤190期间,机器70在其使用模式中运行。

在步骤192和194期间,观测矩阵h3,k3等于[(sock-sock-n)]*3600/(nte)。n在此是从估计的充电状态下降到阈值shsoc之下的时刻到估计的充电状态下降到阈值slsoc之下的时刻经过的时刻k的数量。数值n等于在步骤182期间计数的数值。

步骤194包括获取测量物理量zk3和计算物理量zk3的预测值的操作196。物理量zk3的获取在此包括计算在时刻k-1与k-n之间测量的最后n个电流强度之和。预测值基于模型76获得。

然后,在操作198期间,估计器68根据测量的量zk3与预测的量之间的差值来修正预测值cn,k3/k3-1,以获得容量cn,k3/k3的先验估计值。该修正例如像在操作130期间描述地那样实现。

然后,容量cn,k3/k3被发送给估计器60,该估计器将其用于估计电池单元18在随后的时刻的充电状态。同时,电流强度ik3、测量的数值yk3和容量cn,k3/k3被保存在数据库71中。

仅在电池单元18大部分放电之后才触发估计器68的执行允许提高估计精度,同时减小实施该方法所必需的计算功率。

在阶段188结束时,在步骤120期间,计算机借助于以下公式计算时刻k3的健康状态sohk3:sohk3=cn,k3/cnini

所述方法还包括步骤210,在该步骤期间,计算机44验证是否满足用于自动触发函数fsvm的新学习阶段212的至少一个条件。例如,一旦容量cn,k3的估计误差的协方差超过预定阈值spc,就自动触发新的阶段212的执行。阶段212在时刻k4被触发。阶段212被触发的时刻k4的集合是时刻k3的子集。在阶段212期间,机器70在学习模式中运行。更确切地说,考虑到估计器68在之前的时刻k3预测和修正的电流强度ik3、测量的数值yk3和容量cn,k3,机器70再次执行监督式学习算法。例如,机器70仅考虑自阶段212的前一执行时刻k4-1起保存在数据库71中的数据。一旦新的函数fsvm的学习终止,被估计器68使用的就是该新的函数。

并行地,在步骤220期间,计算机44将电流强度ik的新的测量值与预定电流阈值shi比较。只要测量电流强度不超过该阈值shi,估计器66的执行就被禁止。另一方面,一旦测量电流强度ik超过该阈值shi,那么估计器66就立即被执行。阈值shi一般大于imax/2,并有利地大于0.8*imax或0.9*imax。

估计器66则再次执行估计时刻k2的滤波器ht,k2的系数的阶段140。在此,时刻k2等于电流强度ik超过阈值shi的时刻k。

仅在测量电流强度ik提高的时候才触发估计器66的执行允许提高滤波器ht,k2的系数的估计精度,同时减小实施该方法所必需的计算功率。实际上,电流计的测量精度在电流强度ik更高时更高。

所述电池单元充电状态估计方法的众多其它实施例是可能的。例如,其它电气模型、因此其它状态模型能够被用于估计电池单元18的充电状态。例如,在一个简化变型中,借助于有限脉冲响应滤波器模拟阻抗54。在先前的描述中,这相当于将mh取值为等于零。在这种情况下,一般地,nh选择为大于或等于10。例如,nh选择为等于15。在专利申请wo2006057468中描述了其它可能的状态模型。特别地,状态向量xk也能够被电池单元18的温度补充,以在估计该电池单元的充电状态的同时估计该温度。

对于估计器60,其它观测模型同样是可能的。例如,电池单元18配备有诸如温度传感器的额外传感器。在这种情况下,观测模型被改进以考虑这些额外的测量的物理量。读者就改进的观测模型例子可参考专利申请wo2006057468。如果所用观测模型不使用滤波器ht,k2,则省去估计器66。

用于模拟电池单元18的其它可能电气模型同样在plett2004第2部分的第3.3章中说明。

估计器60也可实施以缩写ekf(extendedkalmanfilter)更为已知的卡尔曼滤波器的扩展版本而不是sigma点版本。估计器60也可以以卡尔曼滤波器以外的形式被实施。例如,通过以iir(无限脉冲响应)滤波器的形式模拟充电状态随时间上的变化而估计充电状态,其中所述滤波器的系数通过rls(recursiveleastsquare,递归最小二乘法)方法估计。

在估计器60的一个变型中,协方差矩阵rk和qk以连续的方式自动调节。为此,例如,应用在以下文献中描述的所谓的“协方差匹配”的方法:mehra,r.k:ontheidentificationofvariancesandadaptativekalmanfiltering,automaticcontrol,ieeetransactionon,volume15,n.2,pages175-184,avril1970。例如像在步骤110期间描述地那样,该方法在矩阵r0和q0的初始设置之后应用。

同样地,预测值修正步骤能够不同的进行。例如,充电状态sock或容量cn,k3预测值修正通过最小化包括以下两项的二次成本函数j来实现:

-与测量的数值的预测误差相关的一项,和

-与状态向量的估计误差相关的另一项。

该方法在以下书籍的第10.5.2章中详细地说明:y.bar-shalom,etal.:estimationwithapplicationstotrackingandnavigation,theoryalgorithmsandsoftware,wileyinter-science,2001。

作为变型,估计器60不一定在每个时刻k被执行。在这种情况下,估计器60基于在其前一执行结束时获得的值重新得到该执行必需的信息。这尤其是例如状态向量的情况。然而,要指出的是,前一执行时刻则不一定是时刻k-1,而是可以是时刻k-3或k-10。

估计器66能够使用其它算法来确定滤波器ht,k2的系数。由此,作为变型,估计器实施以缩写rls-gsw(recursiveleastsquare–globalslidingwinddow)已知的递归最小二乘法算法的另一变型。该估计器也可以实施在以下文献中用于估计电池组的电池单元的容量的递归算法:gregoryl.plett,recursiveapproximateweightedtotalleastsquaresestimationofbatterycelltotalcapacity,journalofpowersource196(2011)2319-2331。也可以将滤波器ht,k2的系数并入状态模型的状态向量,然后使用卡尔曼滤波器在估计充电状态的同时估计这些系数。在该后一情况中,状态模块62被以下状态模型代替:

其中:b0至bn和a1至am是滤波器ht,k2的系数,并分别对应于前述的系数b0,k2至bnh,k2和a1,k2至amh,k2。在后一情况中,观测模型不变。因此是模型64。在该变型中,系数b0至bn和a1至am在每个时刻k被估计。然而,模型62也可仅在时刻k2被上述状态模型代替,在两个连续时刻k2之间,使用的是模型64。

滤波器ht,0的初始系数ai,0和bi,0可以在实验室中通过对例如与电池单元18相同的电池单元的反复试验来确定。然后,在初始化阶段100期间,在第一次激活系统40之前,在实验室中所确定的系数ai,0和bi,0被保存在存储器42中。由此,自第一次执行图8的方法起,估计器60就能够通过使用这些预先保存的系数ai,0和bi,0被执行。在该情况中,阶段114被省去。

估计器66的执行可以以不同的方式被触发。例如,周期性地触发估计器66的执行。在这种情况下,阶段220被省去。

根据估计器68所用的观测模型,可以以不同的方式计算物理量zk3。例如,物理量zk3等于在时刻k与k-n+1之间测量的最后n个电流强度之和。在这种情况下,当n等于1时,zk3=ik3。

作为变型,函数gsvm(cn,k3-1;ec)不以形式cn,k3-1+fsvm(ec)写出。在这种情况下,函数gsvm(cn,k3-1;ec)一般不是容量cn,k3的线性函数。估计器68则例如以扩展卡尔曼滤波器或sigma点卡尔曼滤波器的形式被实施。

估计器68的触发可以通过将n取值为等于预定常数而被简化。在这种情况下,n不被计数,步骤180和182被省去。例如,另一方面,n被选择为等于1或严格大于1或5或10。在一个进一步更为简化的变型中,估计器68响应于超过阈值的触发被省去。例如,估计器68被周期性地触发。在这种情况下,步骤180、182和184被省去。

作为变型,估计器68的协方差q3,0和r3,0根据由机器70构建的、在步骤102结束时获得的函数fsvm的不确定性来调节。

在学习阶段212期间,集合ec的物理特征不一定与在初始学习步骤102期间使用的物理特征相同。

在另一变型中,函数fsvm由与车辆2和电池单元18机械地独立的学习机器学习。例如,该另一学习机器在实验室中执行。然后,由该另一机器学习的函数fsvm被保存在存储器42中,然后被机器70作为初始函数fsvm使用,即使该函数不是由机器70学习的。该另一学习机器例如与机器70相同。在这种情况下,机器70不被用于学习初始函数fsvm,并且初始学习步骤102被省去。

在一个简化的变型中,学习阶段212被省去。由此,在该实施例中,函数fsvm从不在使用系统40的过程中被重新学习。机器70因此在初始学习步骤102之后就仅在使用模式中运行。在进一步更简化的变型中,除了省去阶段212外,初始学习的函数fsvm不借助于机器70而是借助于独立于车辆2的另一监督式学习机器学习。步骤102由此仅包括将由另一机器学习的该函数fsvm保存在存储器42中。在这种情况下,机器70被大大简化,这是因为该机器不需要实施监督式学习算法。该机器仅在使用模式中运行。

在另一实施例中,初始学习步骤102被省去。由此,只要函数fsvm不被机器70学习,估计器68就使用另一容量估计算法。例如,该估计器可使用诸如在以下文献中描述的rls算法:gregoryl.plett,recursiveapproximateweightedtotalleastsquaresestimationofbatterycelltotalcapacity,journalofpowersource,196(2011),2319-2331。该估计器也可以使用其中的状态模型不涉及函数fsvm的其它卡尔曼滤波器。例如,在该后一情况中,状态模型可以是如下的:cn,k3+1=cn,k3+w3,k3。

电池组10可以被任何类型的电池组(例如:铅电池组、超大容量电池组或燃料电池)代替。在这种情况下,估计器60的状态模型和/或观测模型能够被随意地调整以考虑电池组技术。

以上描述的内容也适用于混合动力车辆,即其驱动轮的驱动同时或交替地由电动机和热内燃机来提供的车辆。车辆2也可以是卡车、摩托车或三轮车,并一般性地为能够通过借助于由电池组供电的电动机来驱动驱动轮而移动的任何车辆。例如,其可是升降机。

能够借助于电连接到配电网的电源插座给电池组10充电。电池组10也能够由热内燃机来充电。

最后,上述的滤波器ht,k2的系数的估计方法能够独立于学习机器70被实施。例如,从状态模型74中省去函数fsvm。在这种情况下,估计器68仅使用以下状态模型cn,k3+1=cn,k3+w3,k3,并且机器70被省去。估计器68不再一定要以卡尔曼滤波器的形式被实施。例如,容量是通过以iir(无限脉冲响应)滤波器的形式模拟其随时间的变化而被估计的,该滤波器的系数由rls(递归最小二乘法)方法来估计。在进一步更简化的变型中,不估计容量cn,k3。例如,该容量被取值为是恒定的,等于容量cnini

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1