一种基于扩展卡尔曼粒子滤波的SOC估计方法及系统与流程

文档序号:11132163阅读:809来源:国知局
一种基于扩展卡尔曼粒子滤波的SOC估计方法及系统与制造工艺
本发明涉及电动汽车动力电池管理系统领域,尤其是一种基于扩展卡尔曼粒子滤波的SOC估计方法及系统。
背景技术
:当石油危机爆发以后,能源问题和环境问题逐步被人们重视起来,人们迫切的需要新能源汽车来解决这些问题,电动汽车因此而获得关注。动力电池作为电动汽车的动力源,承担电动汽车全部或者部分动力输出。电动汽车电池组在工作过程中常因充放电时间过长而产生过充电、过放电现象,不仅影响了电池的使用性能,而且缩短了电池的使用寿命,降低了整车性价比。动力电池的荷电状态SOC(StateOfCharge)即动力电池剩余电量,是描述电池状态的重要参数之一。电池的SOC无法使用传感器直接测得,它必须通过对一些其他物理量的测量并采用一定的数学模型和算法来估计得到。电池SOC受环境温度、工作电流以及循环次数等多种因素的影响,具有很强的非线性特性,使得准确估计SOC难度很大,SOC的估计也成为了国内外学者研究的热点。目前国内外主要的SOC估计方法分为离线估计和在线估计两大类。SOC的离线估计具有估计精度高的有点,常用于确定SOC的初始值,主要有开路电压法和内阻法等。在实际工程应用中SOC在线估计方法更为实用,目前主要包括安时积分法、神经网络法以及卡尔曼滤波法等。安时积分法理论简单且计算量小,但是不具有反馈修正的效果,会有累积误差产生;神经网络法适用于对高度非线性的系统进行模拟,但是需要建立准确的神经网络模型并且需要大量数据训练;卡尔曼滤波法可以减少数据量的存储,但是对模型精度的要求很高。以上除去安时积分法,其他方法都需要根据模型反馈来对SOC值进行修正,对于模型精度的要求高,而动力电池通常具有高度非线性的特点,固定参数的模型显然不能满足精度高的要求。技术实现要素:本发明的目的在于:提供一种基于扩展卡尔曼粒子滤波的SOC估计方法及系统,以提高电池模型的精度以及SOC估计的精度。本发明解决其技术问题所采取的技术方案是:一种基于扩展卡尔曼粒子滤波的SOC估计方法,包括步骤:步骤1,对电池进行测试,通过单体电池测试系统对电池进行放电-静置实验,获得荷电状态和开路电压(Opencircuitvoltage,OCV)的对应数据,拟合出SOC-OCV的关系函数表达式;步骤2,建立动力电池的等效电路模型,并得到离散状态空间模型;步骤3,根据初始概率分布,产生初始SOC粒子集并设置权值;步骤4,根据当前的数据,对模型参数进行在线辨识,更新模型;步骤5,使用扩展卡尔曼粒子滤波,得到粒子的预测值;步骤6,更新粒子权值并进行归一化处理,计算有效粒子数。如果有效粒子数小于给定阈值,在进行重采样后输出SOC估计值;如果大于给定阈值,则直接输出SOC估计值;步骤7,重复步骤4到步骤6。其中,步骤4中对模型参数进行辨识,具体方法如下:对于模型为数据向量,θ为待估参数向量,y(k)为输出向量,ε(k)为系统噪声,可采用遗忘因子最小二乘法对θ进行参数辨识,其公式为:最小二乘法增益计算:最小二乘法协方差矩阵计算:最小二乘法参数最优估计:其中为k时刻待估参数的估计值;K(k)为k时刻的增益矩阵;P(k)为k时刻的协方差矩阵,通常其初始值P(0)取足够大的单位矩阵,这里取值为105×I,其中I为单位矩阵;λ为加权因子(0<λ≤1),一般取值在0.9~1.0之间,这里取值为0.98。其中,步骤5中,使用扩展卡尔曼粒子滤波,得到粒子的预测值,具体方法如下:对于系统状态方程为xk+1=Akxk+Bkuk+wk,系统观测方程为yk=Ckxk+Dkuk+vk的系统,可采用扩展卡尔曼滤波方法对每个粒子进行预测修正,递推公式如下:状态变量先验估计值计算:预测误差的协方差矩阵计算:卡尔曼增益矩阵计算:状态变量最优估计值计算:更新误差协方差矩阵:其中,‘-’代表先验值,‘+’代表后验值,‘︿’代表估计值。其中xk为状态向量;uk为输入激励;yk为观测向量;Ak为状态转移矩阵;Bk为输入激励矩阵;Ck为状态向量观测矩阵;Dk为输入激励观测矩阵;wk为过程噪声;vk为观测噪声;I为单位矩阵;Q为过程噪声协方差矩阵;R为观测噪声协方差矩阵;Kgk为卡尔曼增益矩阵;Pk为预测误差的协方差矩阵。其中,所述步骤6中具体是采用公式来更新粒子权值,采用公式计算有效粒子数,对比有效粒子数与预先设定的粒子阈值,根据结果判断是否需要进行重采样。其中parWagei为第i个粒子的权值;yk为粒子的观测向量;为第i个粒子的预测值;R为观测噪声协方差矩阵;Neff为有效粒子个数。一种基于扩展卡尔曼粒子滤波的系统,包括动力电池、单体电池测试系统、计算机等三大部分。其中,单体电池测试系统,由四个部分构成,分别是电流控制模块、恒温箱、数据采集设备和直流稳压电源。电流控制模块与恒温箱中的单体电池的输入端相连,电流控制模块根据外界指令实现对单体电池充放电电流大小的控制,可以模拟不同的电池测试工况,恒温箱根据外界指令控制单体电池的工作环境温度。恒温箱中的单体电池与数据采集设备的输入端相连,数据采集设备根据外界指令对单体电池的电压和电流数据进行采集,并且对采集到的数据进行简单的模数转换处理然后输出数据。直流稳压电源分别与电流控制模块、恒温箱和数据采集设备相连,为整个测试系统提供能源。电流控制模块由光电耦合器、数模转换器、集成运算放大器、MOSFET场效应管和康铜丝电阻构成。数据采集设备包括电流采集模块和电压采集模块以及模数转换模块。本发明一种基于扩展卡尔曼粒子滤波的SOC估计方法及系统,具有以下有益效果:采用遗忘因子最小二乘法计算模型参数,并且实时更新电池模型数据,得到了高精度的电池模型,满足了传统SOC估计方法对模型精度的要求。将扩展卡尔曼滤波与粒子滤波进行结合,提高了对荷电状态(SOC)的估计精度,采用重采样的方法,解决了粒子滤波存在的粒子退化问题。总结以上,本发明提高了电池模型的精度以及SOC估计的精度。附图说明图1为本发明一种基于扩展卡尔曼粒子滤波的SOC估计方法及系统的整体流程图。图2为本发明基于扩展卡尔曼粒子滤波的系统的结构框图。图3为本发明采用的单体电池测试系统的结构框图。图4为本发明采用的单体电池测试系统中电流采集模块的原理结构图。图5为本发明采用的单体电池测试系统中电压采集模块的原理结构图。图6为本发明通过放电-静置实验得到的SOC-OCV曲线图以及曲线拟合结果。图7为本发明采用的动力电池二阶RC等效电路模型示意图。图8为本发明用于验证SOC估计精度的测试工况电流曲线。图9为本发明用于验证SOC估计精度的测试工况电压曲线以及电池模型拟合曲线。图10为本发明的SOC估计结果与其他方法估计结果的对比图。图11为本发明的SOC估计误差与其他方法估计误差的对比图。具体实施方式下面结合附图对本发明的技术方案进行详细说明:根据图1,一种基于扩展卡尔曼粒子滤波的SOC估计方法包括以下步骤:步骤1,对电池进行测试,通过单体电池测试系统对电池进行放电-静置实验,获得荷电状态和开路电压的对应数据,拟合出SOC-OCV的关系函数表达式;如图2所示为基于扩展卡尔曼粒子滤波的系统的整体框图,包括动力电池、单体电池测试系统、计算机等三大部分。步骤1中需要使用其中的单体电池测试系统,进行对锂离子的放电-静置实验,进而获得SOC-OCV关系函数。单体电池测试系统,可以实现对锂离子电池充放电测试,并把采集到的电压数据、电流数据、温度数据和其他数据上传到计算机,为后续各种算法提供数据源。如图3所示为单体电池测试系统的详细结构图,整个系统由四个部分构成,分别是电流控制模块、恒温箱、数据采集设备和直流稳压电源。电流控制模块根据外界发送的指令实现对单体电池充放电电流大小的控制,可以模拟不同的电池测试工况。恒温箱用于控制单体电池的工作环境温度。数据采集设备根据外界发送的指令对单体电池的电压和电流数据进行采集,并且对采集到的数据进行简单的模数转换处理然后输出数据。直流稳压电源为整个测试系统提供能源。如图3所示,计算机发送指令到电流控制模块,来设置当前测试单体电池的工况,单体电池根据电流控制模块设定的电流充电或者放电,同时数据采集模块采集电池的端电压以及流经电池的电流,采集得到的模拟信号,经过模数转换器,转换成为数字信号传送到计算机,计算机再将数据以二进制的形式存储,用于之后的SOC滤波计算。其中电流控制模块的原理框图如图4所示,电流控制模块由光电耦合器、数模转换器、集成运算放大器、MOSFET场效应管和康铜丝电阻构成。光电耦合器HCPL0631,用于数模转换数字隔离,避免信号之间的干扰。数模转换器MAX531,数字量输入范围[0,4096],转变成电压为[0,2.048V],经过电压电流变换电路转变成[0A,20A]电流。MOSFET场效应管IRF540N,开启电压2.0~4.0V,漏源极导通电阻44mΩ,最大功率50W。康铜丝电阻阻值为0.1Ω,用于将电压转换为电流。数据采集设备包括电流采集模块和电压采集模块以及模数转换模块。电流采集模块的原理框图如图5所示,这里采用了具有闭环补偿作用的电流型霍尔传感器CSM015NPT,在室温情况下(25度),传感器精度为±0.5%。CSM015NPT的原边线圈电阻是0.18mΩ,若在信号通路中流过10A电流时,压降是1.8mv,满足测试要求。当CSM015NPT原边线圈通过与参考方向同向电流15A时,其副边线圈输出电压3.125v;原边线圈流过与参考方向反向15A电流时,其副边线圈输出电压1.875v;原边线圈无电流流过时,其副边线圈输出电压2.5v。为了匹配模数转换器的动态范围,故在其后加入信号调理电路,使电压幅度衰减一半。在这种情况下,当被采集电流范围[-15A,15A]时,经信号调理电路输出电压为[0.9375v,1.5625v]。放电-静置实验中,通过电流控制模块将放电电流设置为0.2C,对电池进行放电,每间隔5%的SOC停止放电并对电池进行静置,静置10分钟后通过电压采集模块采集到电池的开路电压值OCV。通过以上方法,可以获得开路电压与SOC的关系数据表,采用曲线拟合的方法,对得到的数据进行拟合,从而获得SOC-OCV函数关系表达式,本发明采用9阶多项式对曲线进行拟合,所得到的SOC-OCV关系曲线和拟合曲线如图6所示,得到的函数关系式如下:OCV=4.6985e3*SOC9-2.2229e4*SOC8+4.4403e4*SOC7-4.8684e4*SOC6+3.1913e4*SOC5-1.2773e4*SOC4+3.061e3*SOC3-413.4218*SOC2+28.2351*SOC-2.9493;步骤2,建立动力电池的等效电路模型,并得到离散状态空间模型;本发明采用等效电路模型对动力电池进行建模,其中二阶等效电路模型相较于一阶等效电路模型,可以更好的模拟电池的非线性部分,因此本发明采用了二阶等效电路模型对电池进行建模,图7为二阶等效电路模型示意图,由图可以得到模型端电压输出方程为:其中V代表电池的端电压,VOC代表电池的开路电压,I代表从电池上流过的电流,Re为电池的欧姆内阻,Rs和Rl分别为电池的极化内阻,Cs和Cl分别为电池的极化电容,τs=RsCs,τl=RlCl分别为两个RC回路的时间常数。列写电池模型的离散状态空间模型,令状态向量x=[SOC;Vs;Vl],其中Vs和Vl为两个RC并联网络上的电压;令电流I为输入激励;端电压V为输出量,可以得到模型的状态方程为:输出方程为:V(k)=VOC(SOC,k)-Vs(k)-Vl(k)-ReI(k)(3)其中η为库伦系数,这里取值为1;C为电池的标称容量;T为采样时间间隔。步骤3,根据初始概率分布,产生初始SOC粒子集并设置权值;设粒子个数为N,根据动力电池离线测试得到的OCV-SOC数据表,通过开路电压法查表得到SOC的初始值SOCInit,计算查表法的最大误差SOCError,根据“3σ法则”,令SOC的初始粒子集服从N~(SOCInit,(SOCError/3)2)的正态分布,根据该正态分布产生粒子,并令每个粒子的初始权值为1/N;步骤4,根据当前的数据,对模型参数进行在线辨识,更新模型;本发明采用遗忘因子最小二乘法进行模型的参数识别,因此需要求得模型的差分方程。对公式(1)进行Laplace变换,得到:整理公式(4)得到:τsτlVOCs2+(τs+τl)VOCs+VOC=τsτlReIs2+[(τs+τl)Re+Rsτl+Rlτs]Is+I(Re+Rs+Rl)+τsτlVs2+(τs+τl)Vs+V(5)令:a=τsτlb=τs+τlc=Re+Rs+Rld=(τs+τl)Re+Rsτl+Rlτs整理公式(5)得到:aVOCs2+bVOCs+VOC=aReIs2+dIs+cI+aVs2+bVs+V(6)令s=[x(k)-x(k-1)]/T、s2=[x2(k)+x2(k-1)-2x(k)x(k-1)]/T整理公式(6),可以得到:则有:待估参数矩阵数据向量输出向量y(k)=VOC(k)-V(k)。其中VOC(k)可以根据步骤1中求得的OCV-SOC函数关系式求得。通过遗忘因子最小二乘法求得待估参数向量θ后,可求得:Re=k5/k2Rl=(cτl-Reτl-d-bRe)/(τl-τs)Rs=c-Re-Rl步骤5,使用扩展卡尔曼滤波,得到粒子的预测值;要进行扩展卡尔曼滤波,需要得到系统的离散状态空间方程。步骤2中已经求得二阶RC等效电路模型的状态空间模型,如公式(2)、(3)所示。将该非线性模型在(xk,ik)附近进行一阶泰勒展开,得到根据步骤4中得到的Re、Rs、Rl、Cs、Cl的值,即可进一步求得Ak、Bk、Ck的具体值,扩展卡尔曼滤波分为预测和修正两个过程:扩展卡尔曼滤波预测过程:状态变量先验估计值计算:预测误差的协方差矩阵计算:扩展卡尔曼滤波修正过程:卡尔曼增益矩阵计算:状态变量最优估计值计算:更新误差协方差矩阵:根据公式可以求得SOC粒子的最优估计值。步骤6,更新粒子权值并进行归一化处理,计算有效粒子数。如果有效粒子数小于给定阈值,在进行重采样后输出SOC估计值;如果大于给定阈值,则直接输出SOC估计值;首先根据公式计算粒子权重,其中R为观测噪声的协方差矩阵,yk为观测值,为粒子的预测值;得到粒子权重后,根据公式计算有效粒子的个数。预先设定有效粒子阈值Nthreshold,当Neff≥Nthreshold时,说明粒子退化现象不明显,可以直接进行下一步操作,当Neff<Nthreshold时,说明有效粒子数较少,需要进行重采样,重采样后,每个粒子的权值设为1/N。以上步骤结束后,输出SOC的估计值步骤7,重复步骤4到步骤6。令k=k+1,进行下一时刻的循环计算。为了验证二阶RC模型的准确性和扩展卡尔曼粒子滤波的精度,对5000mAh的锂离子电池进行充电实验。将电池中的电量放完,在室温条件下,每间隔15分钟以1A的电流对电池进行充电,充电电流波形如图8所示。整个测试过程时长为2.7609×104s,采样间隔为7.92s。本实验中,设定粒子个数N=50,有效粒子阈值Nthreshold=30。如图9所示,为端电压的测量值与在线参数辨识估计得到的模型电压值对比图,可以发现在线参数辨识得到的电池模型具有很高的精度,可以很好的跟踪端电压值,为SOC的精确估算建立了基础。本实验采用了EKF和EKPF方法分别对SOC进行预测对比,如图10所示,为两种方法的估算结果和实际SOC的对比图。其中实际SOC是在采样间隔为1s的情况下,根据SOC的定义计算得到,因为间隔时间短,因此与真实SOC值较为接近。通过图10可以发现,EKPF预测得到的值更接近于实际值,尤其是在充电后期,相比较于EKF能更好的跟随实际值。图11为EKF和EKPF两种方法预测得到的SOC的误差值对比图,可以发现,EKPF得到的SOC值误差波动较小,且整体误差小于EKF方法。通过计算可以得到EKF和EKPF的均方根误差以及最大误差,如表1所示:算法均方根误差最大误差EKF0.00540.0304EKPF0.00280.0183表1通过两种算法的对比图和误差分析,不难发现,EKPF算法对噪声的抑制效果更好,并且对SOC的估计精度更高,说明了EKPF算法在SOC估计上优于EKF。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1