一种soc估值方法及其系统的制作方法
【技术领域】
[0001 ]本发明设及电池领域,尤其设及一种S0C估值方法及其系统。
【背景技术】
[0002] 电池的剩余电量(S化te of化a巧e,S0C)在某一层面直接反应电动汽车的续航里 程,是电池管理系统中比较重要的一个模块,因此对于电池 S0C的准确估计就显得很重要。
[0003] 目前,电池的剩余电量估计方法主要分为两大类:直接法与间接法。直接法是指通 过实验设备直接测量当前电池剩余容量;间接法主要通过电池内部的物化特性,在估计过 程中需要高精度的设备因此在实际中很难实现。安时积分法(Ah integration method,简 称Ah法)、开路电压法(Open-circuit voltage method,简称OCV法)、内阻法(Resistance method)等属于间接法。
[0004] 但是,安时积分法在计算过程中会产生累积误差,导致计算得到的S0C随充放电时 间增加误差增大,同时安时积分法计算S0C初始值的准确性很难确定;开路电压法需要长时 间的静置达到电池内部电压稳定,在实际汽车运行过程中难W实现;内阻法存在着估算内 阻的困难,在硬件上也难W实现。此外,还可通过人工神经网络算法(Adificial化ural 化twork Algorithm)、卡尔曼滤波算法化alman filter algorithm,简称KF)等间接法进行 估算电池 S0C,但神经网络算法由于其系统设置困难,且在电池管理系统中应用成本高,不 具备优势;而卡尔曼滤波算法在计算S0C的过程中会出现跳变现象并且不能保存,此算法不 能保证S0C的准确性和稳定性。
[0005] 因此,亟需设计一种S0C估值方法,W提高S0C的准确性和稳定性。
【发明内容】
[0006] 有鉴于此,本发明的目的在于提供一种S0C估值方法及其系统,旨在解决现有技术 中S0C的准确性不高和稳定性较低的问题。
[0007] 本发明提出一种S0C估值方法,包括:
[000引利用卡尔曼滤波算法计算S0C初始值;
[0009] 将所述S0C初始值赋值作为安时积分算法计算S0C值,并保存所述S0C值,同时利用 卡尔曼滤波算法计算S0C值;
[0010] 判断由上述两种算法计算得到的S0C值是否在预设误差值内;
[0011] 如果在预设误差值内,则输出由安时积分算法计算得到的S0C值。
[0012] 优选的,所述预设误差值为±2.5%,通过邸PROM保存在经过初始值赋值后由安时 积分算法计算得到的S0C值。
[0013] 优选的,所述方法还包括:
[0014] 如果不在预计误差值内,则继续将所述S0C初始值赋值作为安时积分算法计算S0C 值,并保存所述S0C值,同时利用卡尔曼滤波算法计算S0C值;
[0015] 继续判断由上述两种算法计算得到的S0C值是否在预设误差值内;
[0016] 如果在预设误差值内,则输出由安时积分算法计算得到的SOC值。
[0017] 另一方面,本发明还提供一种S0C估值系统,包括:
[0018] 初值模块,用于利用卡尔曼滤波算法计算S0C初始值;
[0019] 赋值模块,用于将所述S0C初始值赋值作为安时积分算法计算S0C值,并保存所述 S0C值,同时利用卡尔曼滤波算法计算S0C值;
[0020] 判断模块,用于判断由上述两种算法计算得到的S0C值是否在预设误差值内;
[0021] 输出模块,用于如果在预设误差值内,则输出由安时积分算法计算得到的S0C值。
[0022] 优选的,所述预设误差值为±2.5%,通过邸PROM保存在经过初始值赋值后由安时 积分算法计算得到的S0C值。
[0023] 优选的,所述S0C估值系统还包括:
[0024] 循环模块,用于如果不在预计误差值内,则继续将所述S0C初始值赋值作为安时积 分算法计算S0C值,并保存所述S0C值,同时利用卡尔曼滤波算法计算S0C值;继续判断由上 述两种算法计算得到的S0C值是否在预设误差值内;如果在预设误差值内,则输出由安时积 分算法计算得到的S0C值。
[0025] 本发明提供的技术方案采用安时积分法和卡尔曼滤波算法相结合对电池进行S0C 估算,既克服了安时积分法造成的累积误差,又克服了卡尔曼滤波算法出现跳变现象,并且 可通过EEPR0M对S0C值进行保存,能够稳定可靠的得到准确S0C值。安时积分法计算S0C不具 有历史继承性是无记忆的,S0C计算与电池电流及初始S0C息息相关;卡尔曼滤波算法计算 S0C具有历史继承性是W历史数据为支撑的,S0C计算与电池的电压息息相关,与初始值无 关可快速收敛到准确值。本发明结合运两种方法的优缺点并进行改善可W得到准确稳定的 电池 S0C值。该方法适用于各种动力电池的S0C估算,相比于其他方法本发明能够动态稳定 的跟踪S0C真实值,更适用于电动汽车的S0C准确稳定输出。
【附图说明】
[00%]图1为本发明一实施方式中S0C估值方法流程图;
[0027] 图2为本发明一实施方式中S0C估值系统结构示意图。
【具体实施方式】
[0028] 为了使本发明的目的、技术方案及优点更加清楚明白,W下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用W解释本发明,并 不用于限定本发明。
[0029] 本发明【具体实施方式】提供了一种S0C估值方法,主要包括如下步骤:
[0030] S11、利用卡尔曼滤波算法计算S0C初始值;
[0031 ] S12、将所述S0C初始值赋值作为安时积分算法计算S0C值,并保存所述S0C值,同时 利用卡尔曼滤波算法计算S0C值;
[0032] S13、判断由上述两种算法计算得到的S0C值是否在预设误差值内;
[0033] S14、如果在预设误差值内,则输出由安时积分算法计算得到的S0C值。
[0034] 本发明提供的一种S0C估值方法采用安时积分法(Ah integration method,简称 Ah法)和卡尔曼滤波算法化alman filter algorithm,简称KF)相结合对电池进行SOC估算, 既克服了安时积分法造成的累积误差,又克服了卡尔曼滤波算法出现跳变现象,并且可通 过邸PROM对SOC值进行保存,能够稳定可靠的得到准确SOC值。
[0035] W下将对本发明所提供的一种S0C估值方法进行详细说明。
[0036] 请参阅图1,为本发明一实施方式中S0C估值方法流程图。
[0037] 在步骤S11中,利用卡尔曼滤波算法计算S0C初始值。
[0038] 在本实施方式中,在工程应用中一般将卡尔曼滤波进行离散化之后再进行处理。 线性离散系统状态空间方程主要包括状态方程及输出方程,状态方程描述系统状态变量与 输入变量之间的关系,输出方程描述系统输出量与状态变量、输出量及输入量,方程如下式 所示:
[0039]
( 1 )
[0040] 其中,式中xk、Uk、yk分别为k时刻系统的状态变量、输入量与矩阵,Bk代表输入矩 阵、Ck表示输出矩阵、化表示前馈矩阵。
[0041] 在本实施方式中,卡尔曼滤波估计利用输出量yk与输入量址得到的信息通过计算 更新未知状态xk的最小均方差估计荀,荀为估计状态的预测值。化为卡尔曼滤波增益矩 阵,Pk为误差协方差矩阵,I为单位矩阵。具体卡尔曼滤波算法递推式如下:
[0042] 滤波方程初始条件:
[0043]
(2)
[0044] 其中E为状态变量的方差,var表示系统的协方差。
[0045] 状态估计时间更新:
[0054]误差协方差测量更新:
[005引 Pk+i/k+i=(I-Hk+iCk+i)Pk+i/k (8)
[0056] 在本实施方式中,通常情况W上变量不能精确获得,一般设置初值后根据系统测 试要求进行调试。卡尔曼滤波算法对于初值的不确定有较好的收敛性,能在很短的时间间 隔内逼近到实值附近。
[0057] 在步骤S12中,将所述S0C初始值赋值作为安时积分算法计算S0C值,并保存所述 S0C值,同时利用卡尔曼滤波算法计算S0C值。
[005引在本实施方式中,通过邸PROM保存在经过初始值赋值后由安时积分算法计算得到 的soc值。在本实施方式中,因安时积分法计算soc初值不能收敛,因此W卡尔曼滤波算法计 算的S0C作为安时积分S0C初始值,初始赋值之后,分别W卡尔曼滤波算法和安时积分法计 算 S0C。
[0059] 在本实施方式中,电动汽车上应用于电池管理系统中计算S0C普遍所用方法为安 时积分法。安时积分法是最常用的S0C估计方法。如果充放电起始状态能够确定且记为 S0C0,那么当前状态的S0C为:
[0060] (9)
[0061 ]其中Cn为电池额定容量,I为电池电流,η为充放电效率(也称库伦效率)充电机效 率有关。Ah积分法应用中若电流测量不准,将造成S0C计算误差,长期积累,误差越来越大。 计算过程中要考虑电池充放电效率,在高溫状态和电流波动剧烈的情况下,误差较大。Ah积 分法可用于所有电动汽车电池,若电流测量准确,有足够的估计起始状态的数据,它是一种 简单、可靠的S0C估计方法。相对于开路电压法的长期存放或静置来获取开路电压,安时积 分法更加可靠。
[0062] 在步骤S13中,判断由上述两种算法计算得到的S0C值是否在预设误差值内。
[0063] 在本实施方式中,所述预设误差值为±2.5%。本发明中卡尔曼滤波算法计算S0C 收敛性好,其计算的S0C值
对安时积分法计算的S0C进行修正,消除了安时积分法计算过程 中的累积误差、测量误差及噪声等,两种方法相结合得到准确稳定的电池 S0C值。本发明可 W准确的估计出电池 S0C,更有利于电动汽车对电池的管理,准确的S0C估计可W准确的计 算电动汽车的续航里程,便于驾驶者对于车辆的掌控,也适用于电流波动剧烈的电动汽车 应用环境。
[0064] 在步骤S14中,如果在预设误差值内,则输出由安时积分算法计算得到的S0C值。
[0065] 在本实施方式中,当其误差在±2.5%之内将卡尔曼滤波算法得到的S0C值赋给安 时积分法S0C值,赋值之后继续分开计算,在整个计算过程中不停判断对S0C值进行修正,输 出S0C W安时积分法得到的S0C为准,将其保存在EEPR0M中。
[0066] 在本实施方式中,本发明提供的一种S0C估值方法,还包括循环步骤(图中未示 出),即包括:如果不在预计误差值内,则继续将所述S0C初始值赋值作为安时积分算法计算 S0C值,并保存所述S0C值,同时利用卡尔曼滤波算法计算S0C值;继续判断由上述两种算法 计算得到的S0C值是否在预设误差值内;如果在预设误差值内,则输出由安时积分算法计算 得到的S0C值。
[0067] 本发明提供的技术方案采用安时积分法和卡尔曼滤波算法相结合对电池进行S0C 估算,既克服了安时积分法造成的累积误差,又克服了卡尔曼滤波算法出现跳变现象,并且 可通过EEPR0M对S0C值进行保存,能够稳定可靠的得到准确S0C值。安时积分法计算S0C不具 有历史继承性是无记忆的,S0C计算与电池电流及初始S0C息息相关;卡尔曼滤波算法计算 S0C具有历史继承性是W历史数据为支撑的,S0C计算与电池的电压息息相关,与初始值无 关可快速收敛到准确值。本发明结合运两种方法的优缺点并进行改善可W得到准确稳定的 电池 S0C值。该方法适用于各种动力电池的S0C估算,相比于其他方法本发明能够动态稳定 的跟踪S0C真实值,更适用于电动汽车的S0C准确稳定输出。
[0068] 本发明【具体实施方式】还提供一种S0C估值系统10,主要包括:
[0069] 初值模块11,用于利用卡尔曼滤波算法计算SOC初始值;
[0070] 赋值模块12,用于将所述S0C初始值赋值作为安时积分算法计算S0C值,并保存所 述S0C值,同时利用卡尔曼滤波算法计算S0C值;
[0071] 判断模块13,用于判断由上述两种算法计算得到的S0C值是否在预设误差值内;
[0072] 输出模块14,用于如果在预设误差值内,则输出由安时积分算法计算得到的S0C 值。
[0073] 本发明提供的一种S0C估值系统10,采用安时积分法和卡尔曼滤波算法相结合对 电池进行S0C估算,既克服了安时积分法造成的累积误差,又克服了卡尔曼滤波算法出现跳 变现象,并且可通过邸PROM对S0C值进行保存,能够稳定可靠的得到准确S0C值。
[0074] 请参阅图2,所示为本发明一实施方式中S0C估值系统10的结构示意图。在本实施 方式中,S0C估值系统10包括初值模块11、赋值模块12、判断模块13、输出模块14W及循环模 块15。
[0075] 初值模块11,用于利用卡尔曼滤波算法计算S0C初始值。
[0076] 赋值模块12,用于将所述S0C初始值赋值作为安时积分算法计算S0C值,并保存所 述S0C值,同时利用卡尔曼滤波算法计算S0C值。
[0077] 在本实施方式中,通过EEPR0M保存在经过初始值赋值后由安时积分算法计算得到 的S0C值。在本实施方式中,因安时积分法计算S0C初值不能收敛,因此W卡尔曼滤波算法计 算的S0C作为安时积分S0C初始值,初始赋值之后,分别W卡尔曼滤波算法和安时积分法计 算 S0C。
[0078] 判断模块13,用于判断由上述两种算法计算得到的S0C值是否在预设误差值内。
[0079] 在本实施方式中,所述预设误差值为±2.5%。本发明中卡尔曼滤波算法计算S0C 收敛性好,其计算的S0C值对安时积分法计算的S0C进行修正,消除了安时积分法计算过程 中的累积误差、测量误差及噪声等,两种方法相结合得到准确稳定的电池 S0C值。本发明可 W准确的估计出电池 S0C,更有利于电动汽车对电池的管理,准确的S0C估计可W准确的计 算电动汽车的续航里程,便于驾驶者对于车辆的掌控,也适用于电流波动剧烈的电动汽车 应用环境。
[0080] 输出模块14,用于如果在预设误差值内,则输出由安时积分算法计算得到的S0C 值。
[0081] 在本实施方式中,当其误差在±2.5%之内将卡尔曼滤波算法得到的S0C值赋给安 时积分法S0C值,赋值之后继续分开计算,在整个计算过程中不停判断对S0C值进行修正,输 出S0C W安时积分法得到的S0C为准,将其保存在EEPR0M中。
[0082] 循环模块15,用于如果不在预计误差值内,则继续将所述S0C初始值赋值作为安时 积分算法计算S0C值,并保存所述S0C值,同时利用卡尔曼滤波算法计算S0C值;继续判断由 上述两种算法计算得到的S0C值是否在预设误差值内;如果在预设误差值内,则输出由安时 积分算法计算得到的S0C值。
[0083] 本发明提供的技术方案采用安时积分法和卡尔曼滤波算法相结合对电池进行S0C 估算,既克服了安时积分法造成的累积误差,又克服了卡尔曼滤波算法出现跳变现象,并且 可通过EEPR0M对S0C值进行保存,能够稳定可靠的得到准确S0C值。安时积分法计算S0C不具 有历史继承性是无记忆的,S0C计算与电池电流及初始S0C息息相关;卡尔曼滤波算法计算 soc具有历史继承性是W历史数据为支撑的,soc计算与电池的电压息息相关,与初始值无 关可快速收敛到准确值。本发明结合运两种方法的优缺点并进行改善可W得到准确稳定的 电池 S0C值。该方法适用于各种动力电池的S0C估算,相比于其他方法本发明能够动态稳定 的跟踪S0C真实值,更适用于电动汽车的S0C准确稳定输出。
[0084] 值得注意的是,上述实施例中,所包括的各个单元只是按照功能逻辑进行划分的, 但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也 只是为了便于相互区分,并不用于限制本发明的保护范围。
[0085] 另外,本领域普通技术人员可W理解实现上述各实施例方法中的全部或部分步骤 是可W通过程序来指令相关的硬件来完成,相应的程序可W存储于一计算机可读取存储介 质中,所述的存储介质,如R0M/RAM、磁盘或光盘等。
[0086] W上所述仅为本发明的较佳实施例而已,并不用W限制本发明,凡在本发明的精 神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【主权项】
1. 一种SOC估值方法,其特征在于,所述方法包括: 利用卡尔曼滤波算法计算S0C初始值; 将所述S0C初始值赋值作为安时积分算法计算S0C值,并保存所述S0C值,同时利用卡尔 曼滤波算法计算S0C值; 判断由上述两种算法计算得到的S0C值是否在预设误差值内; 如果在预设误差值内,则输出由安时积分算法计算得到的S0C值。2. 如权利要求1所述的S0C估值方法,其特征在于,所述预设误差值为±2.5%,通过 EEPR0M保存在经过初始值赋值后由安时积分算法计算得到的S0C值。3. 如权利要求2所述的S0C估值方法,其特征在于,所述方法还包括: 如果不在预计误差值内,则继续将所述S0C初始值赋值作为安时积分算法计算S0C值, 并保存所述S0C值,同时利用卡尔曼滤波算法计算S0C值; 继续判断由上述两种算法计算得到的S0C值是否在预设误差值内; 如果在预设误差值内,则输出由安时积分算法计算得到的S0C值。4. 一种S0C估值系统,其特征在于,所述S0C估值系统包括: 初值模块,用于利用卡尔曼滤波算法计算S0C初始值; 赋值模块,用于将所述S0C初始值赋值作为安时积分算法计算S0C值,并保存所述S0C值,同时利用卡尔曼滤波算法计算S0C值; 判断模块,用于判断由上述两种算法计算得到的S0C值是否在预设误差值内; 输出模块,用于如果在预设误差值内,则输出由安时积分算法计算得到的S0C值。5. 如权利要求4所述的S0C估值系统,其特征在于,所述预设误差值为±2.5%,通过 EEPR0M保存在经过初始值赋值后由安时积分算法计算得到的S0C值。6. 如权利要求5所述的S0C估值系统,其特征在于,所述S0C估值系统还包括: 循环模块,用于如果不在预计误差值内,则继续将所述S0C初始值赋值作为安时积分算 法计算S0C值,并保存所述S0C值,同时利用卡尔曼滤波算法计算S0C值;继续判断由上述两 种算法计算得到的S0C值是否在预设误差值内;如果在预设误差值内,则输出由安时积分算 法计算得到的S0C值。
【专利摘要】本发明提供了一种SOC估值方法,包括:利用卡尔曼滤波算法计算SOC初始值;将所述SOC初始值赋值作为安时积分算法计算SOC值,并保存所述SOC值,同时利用卡尔曼滤波算法计算SOC值;判断由上述两种算法计算得到的SOC值是否在预设误差值内;如果在预设误差值内,则输出由安时积分算法计算得到的SOC值。本发明还提供了一种SOC估值系统。本发明采用安时积分法和卡尔曼滤波算法相结合对电池进行SOC估算,既克服了安时积分法造成的累积误差,又克服了卡尔曼滤波算法出现跳变现象,并且可通过EEPROM对SOC值进行保存,能够稳定可靠的得到准确SOC值。
【IPC分类】G01R31/36
【公开号】CN105487016
【申请号】CN201610042124
【发明人】关海盈, 孔满, 尹旭勇
【申请人】深圳市沃特玛电池有限公司
【公开日】2016年4月13日
【申请日】2016年1月21日