本发明涉及动力电池故障诊断技术领域,特别是涉及一种基于滑动窗口的动力电池故障诊断方法。
背景技术:
现有的动力电池故障诊断方法有很多,例如多层次3σ筛选法、熵权重方法、基于熵的故障诊断方法等,但是都存在计算量大,难以实时在线应用的问题。
技术实现要素:
本发明的目的是提供一种基于滑动窗口的动力电池故障诊断方法,能够对动力电池的单体进行实时诊断。
为实现上述目的,本发明提供了如下技术方案:
一种基于滑动窗口的动力电池故障诊断方法,包括:
多次获取动力电池的单体电压值;
根据所述单体电压值建立单体电压矩阵
设定滑动计算窗口大小,所述计算窗口包含预设采样次数的所有单体电压值;
利用所述计算窗口从单体电压矩阵第一行开始获取单体电压值;
获取所述计算窗中每一行单体电压值的中位数;
将每一行的各个单体电压值均与该行的中位数相减,得到第一结果;
计算所述第一结果中每一列的方差值,得到第二结果;
对所述第二结果采用拉依达准则进行异常方差值筛选;
将所述计算窗口向下移动一行,跳转至步骤获取所述计算窗中每一行单体电压值的中位数,直至单体电压矩阵遍历结束。
可选的,所述多次获取动力电池的单体电压值步骤之后,根据所述单体电压值建立单体电压矩阵步骤之前,还包括:
判断每次获取的单体电压值中是否含有位于预设范围之外的单体电压值;
若没有,则保留当前次采集的单体电压值;
若有,则剔除当前次采集的单体电压值。
可选的,所述对所述第二结果采用拉依达准则进行异常筛选,包括:
计算所述第二结果的平均数和标准差;
计算所述平均数减去三倍的标准差的值,为第三结果;
计算所述平均数加上三倍的标准差的值,为第四结果;
判断第二结果中的各个方差值是否位于所述第三结果和第四结果组成的区间内;
若是,则该方差值对应的电池单体为正常单体;
若否,则该方差值对应的电池单体为故障单体。
可选的,所述计算窗口包含50次采样的所有单体电压值。
可选的,所述预设范围为2v-5v。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明采用了滑动窗口机制,能够随时间不断更新数据,对动力电池进行实时诊断;而且异常诊断时采用的是计算中位数、方差等基本统计学指标,方法简单,计算效率高,可以实现在线诊断。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明基于滑动窗口的动力电池故障诊断方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于滑动窗口的动力电池故障诊断方法,能够对动力电池的单体进行实时诊断。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明基于滑动窗口的动力电池故障诊断方法流程图,如图1所示,一种基于滑动窗口的动力电池故障诊断方法,包括:
步骤101:多次获取动力电池的单体电压值;
步骤102:根据所述单体电压值建立单体电压矩阵
步骤103:设定滑动计算窗口大小,所述计算窗口包含预设采样次数的所有单体电压值;
步骤104:利用所述计算窗口从单体电压矩阵第一行开始获取单体电压值;
步骤105:获取所述计算窗中每一行单体电压值的中位数;
步骤106:将每一行的各个单体电压值均与该行的中位数相减,得到第一结果;
步骤107:计算所述第一结果中每一列的方差值,得到第二结果;
步骤108:对所述第二结果采用拉依达准则进行异常方差值筛选;
步骤109:将所述计算窗口向下移动一行,跳转至步骤获取所述计算窗中每一行单体电压值的中位数,直至单体电压矩阵遍历结束。
具体的,步骤101需要从bms获取动力电池的单体电压值。
在步骤101之后,步骤102之前,还包括步骤:对数据进行预处理,即若某次采样的单体电压值中含有位于2v-5v之外的单体电压值,就把这次采集的所有数据剔除。
步骤103中计算窗口包含50次采样的所有单体电压值。
步骤104中利用计算窗口从单体电压矩阵第一行开始获取单体电压值,即当计算窗口包含50次采样的所有单体电压值时,计算窗口开始获取的单体电压值包含第1行至第50行的所有单体电压值;
关于步骤105获取所述计算窗中每一行单体电压值的中位数,具体方法例如,矩阵中第一行数据为3.5、3.6、3.7,也就是第一次采样采集了3.5、3.6、3.7三个单体电压,此时中位数就是3.6;若单体电压的个数为偶数个,如3.5、3.5、3.6、3.7四个单体电压,此时中位数就是(3.5+3.6)/2=3.55;
关于步骤106将每一行的各个单体电压值均与该行的中位数相减,得到第一结果;还以上述三个单体电压为例,若第一次采样采集了3.5、3.6、3.7三个单体电压,中位数是3.6,此时结果就是-0.1、0、0.1,以此类推,可以得到第一结果,所以第一结果也是一个矩阵,-0.1、0、0.1就是这个矩阵的第一行;然后再进行步骤107,计算所述第一结果中每一列的方差值,得到第二结果,第二结果中的每一个方差值与单体电池是一一对应的。
步骤108对所述第二结果采用拉依达准则进行异常筛选,具体包括:
计算所述第二结果的平均数和标准差;
计算所述平均数减去三倍的标准差的值,为第三结果;
计算所述平均数加上三倍的标准差的值,为第四结果;
判断第二结果中的各个方差值是否位于所述第三结果和第四结果组成的区间内;
若是,则该方差值对应的电池单体为正常单体;
若否,则该方差值对应的电池单体为故障单体。
步骤109中将所述计算窗口向下移动一行,即步骤104中的计算窗口包含第1行至第50行的所有单体电压值,向下移动一行后,步骤109中计算窗口包含第2行至第51行的所有单体电压值,以此类推,直至单体电压矩阵遍历结束。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。