基于S32K的电池管理系统主控单元设计

2020-08-12 12:00董海洋杨玉新罗羽李立伟
机械制造与自动化 2020年4期
关键词:卡尔曼滤波绝缘电阻

董海洋,杨玉新,罗羽,李立伟

(1. 青岛大学 a. 电气工程学院; b. 图书馆,山东 青岛 266071; 2. 潍坊市产品质量检验所,山东 潍坊 261000)

0 引言

电池管理系统(BMS)作为电动汽车的关键组成部分,主要作用是对电池组的状态进行实时监控[1],保证电池组的安全稳定运行。传统的电池管理系统的绝缘检测模块只能完成绝缘电阻值检测,无法对系统的绝缘状态进行实时监测[2]。本文设计的BMS主控单元,在完成主控基本功能的同时,针对传统绝缘检测系统存在的问题,对绝缘检测法进行了改进,使其在完成绝缘电阻值检测的同时能够实时监测系统的绝缘状态,对绝缘故障进行预警,并针对传统安时积分法的缺点,使用EKF算法提高了SOC估算的精度,进一步提高了该设计的实用性。

1 系统介绍

硬件电路主要包括:单片机及其外围电路、通讯模块、电源模块、电流采集模块、绝缘检测模块、存储模块、继电器控制等。主控单元负责电池组电流的采集和电池组绝缘性能的实时监控,汇总从控模块采集的数据并进行分析和存储,同时进行SOC估算且将以上所有实时数据经串口发送给上位机显示。在整个监控过程中,若有状态信息超出预设阈值,则通过程序控制相应保护电路动作[3-4]。系统结构图如图1所示。

图1 主控单元系统结构图

2 硬件设计

2.1 单片机及其外围电路

本文选用拥有ARM内核的S32K144汽车级单片机作为控制芯片。与其他单片机相比,它拥有更为丰富的外设、更强大的性能、更宽的工作温度范围。其内部集成3路CAN控制器,拥有更强的通信能力。其外围电路主要包括:实时时钟、FLASH和EEPROM、电压监测与电平复位电路等[5]。

2.2 电源模块

电源模块主要由保护电路、电压转换电路构成。BMS由车载辅助电源供电,辅助电源的24 V电压首先经过滤波,保证输入电压的质量。滤除干扰后经保护电路,再进行电压转换供BMS使用。传统的保护电路依靠笨重的电感器、电容器、保险丝和瞬态电压抑制器,而LT4363通过控制一个N通道MOSFET,实现了可靠、自适应的电压调节,并具有浪涌电流保护以及防反接功能,可有效地保护电路[6]。电源从LT4363输出后,进行电压等级的转换。本文选用LMZ14201H芯片,用于将辅助电源24 V电压降至5 V,供单片机以及数字芯片使用。最后,使用TLV1117LV稳压芯片,将5 V电压降至3.3 V,供FLASH使用。电路原理图如图2所示。

图2 电压转换电路

2.3 电流检测电路

本文采用的分流器检测法如图3所示[7]。将分流器串入待测回路中,得到一个差分电压信号,通过采集差分电压信号进行计算而得到待测电流。图3中Shunt-P和Shunt-N为分流器的差分电压信号,它们都以电池组的电压为基准,不能直接采集测量。本文采用隔离差分放大器AMC1200,它输出的差分电压ADC-P和ADC-N都是以辅助电源的电压为基准,且电压范围是0~+3.3 V,可以直接输入单片机的ADC,单片机将得到的差分电压信号转换后即得到相应的电流值。

图3 AMC1200电流采样电路

2.4 绝缘检测模块

本文对传统绝缘检测系统进行了改进。绝缘监测系统由绝缘状态监控系统和绝缘检测装置组成,两者相互配合以实现绝缘电阻的检测以及绝缘状态的监控[8-10]。

1) 绝缘电阻值检测系统

绝缘电阻检测采用工程上应用广泛的非平衡电桥法。原理如图4所示。

图4 绝缘电阻值检测原理图

Rp、Rn为需要检测的绝缘电阻,R1、R2为外接阻值已知的测量电阻。测量电阻不宜过小,否则会影响系统本身的绝缘性。其中外接的测量电阻R1=R2=Ra。以电池负极为参考地,首先,对电池总电压进行采样,得到V0,然后闭合S1,将R1与RP并联,此时采集结点1的电压数据,得到Vp。最后,断开S1,并闭合S2,将R2与Rn并联后,再次采集结点1的电压数据,得到Vn。其中,采集电压时不能直接采集结点1的电压,应首先经过电阻分压后输入外置ADC,然后经过数字隔离后才能输入单片机。根据测量的V0、Vp、Vn可列写如下方程:

(1)

(2)

由式(1)、式(2)以及R1=R2=Ra化简得:

(3)

2) 绝缘监控系统

绝缘监控系统通过接收绝缘电阻检测装置采集的绝缘电阻值,并与阈值进行比较,从而判断绝缘状态;而且监控系统可以根据存储的历史绝缘状态与绝缘电阻变化趋势进行比较,对绝缘故障进行预警,可以有效避免绝缘事故的发生。绝缘状态报警由R+i≤M(i=n,n+1, …,n+k)和R-i≤M(i=n,n+1, …,n+k)判断。R+i、R-i为绝缘电阻检测装置第i次检测到的绝缘电阻值,M为预设阈值。绝缘故障预警根据|R+(n+k)-R+n|≥ΔM或|R-(n+k)-R-n|≥ΔM确定,即通过判断检测到的绝缘电阻值在一定时间内的变化量是否超过预设变化阈值ΔM来判断绝缘状态的变化趋势[10-12]。

2.5 SOC估算

目前工程上常用的安时积分法累计误差较大,因此本文使用扩展卡尔曼滤波算法,将开路电压法和安时积分法结合,并用开路电压法SOC估算值修正安时积分法的SOC估算值,使其具有良好的鲁棒性和收敛性,提高了估算精度[12-13]。

1) 安时积分法和开路电压法

安时积分法通过对放电电流时间上的积分计算消耗量,进而获得电池当前的SOC值,但是因电流是突变量,随着运行时间的增加会有累计误差。如式(4)所示,安时积分法是将采样电流按时间积分得到实时消耗的电量,然后用上一时刻SOC减去消耗的电量,得到当前的SOC值。Cn为电池的额定容量;SOC0为上一时刻的荷电状态值;SOC1为电池当前荷电状态值;η为充放电效率;I为充放电电流(充电时为负,放电时为正)。

(4)

锂离子电池在长时间静置后,其开路电压与荷电状态在一定范围内存在对应关系。使用MATLAB进行充放电仿真实验,得到OCV-SOC曲线如图5所示。

图5 OCV-SOC曲线

2) 卡尔曼滤波

卡尔曼滤波算法用来估计一个由线性随机差分方程所描述的时间离散系统的状态量,从观测值中得到系统状态量在最小方差情况下的最佳逼近值。它是通过上一时刻估计值和现时刻的观测值来更新对状态变量的估计,其对初始值的不敏感性,非常适合应用在SOC估算中。其离散模型为状态方程:

xk+1=Akxk+Bkuk+vk

(5)

观测方程:yk=Ckxk+Dkuk+vk

(6)

其中:xk为状态矩阵;uk为控制矩阵;yk为观测矩阵;Ak为状态转移矩阵;Bk为状态控制矩阵;Ck为观测矩阵;Dk为观测控制矩阵;wk为k时刻的动态噪声;vk为k时刻的观测噪声。其过程如图6所示。

图6 卡尔曼滤波流程图

3) 扩展卡尔曼滤波

卡尔曼滤波固有的特性决定其只适用于线性系统,而通过实验分析可知,电池模型是非线性的,故分别对状态方程和测量方程进行泰勒级数展开并略去高阶无穷小项,在尽量简化计算的同时,降低SOC的估算误差。

(7)

(8)

(9)

(10)

由一阶Thevenin模型可得:

(11)

(12)

以电池余量SOCk和极化电容两端的端电压UC,k+1为状态矩阵,Ik为控制矩阵,端电压为测量矩阵可得:

(13)

构造观测方程:

(14)

代入扩展卡尔曼滤波方程可得:

Pk=(I-KkCk)Pk|k-1

其中:Kk为卡尔曼滤波增益系数;Rk为测量噪声矩阵。

3 实验结果与分析

实验室中搭建硬件电路验证设计的可行性,采用12节单节标称电压3.7 V的18650锂电池作为实验对象,用以模拟动力电池。系统主要由电池组、S32K主控板以及故障电阻模拟装置组成。故障电阻模拟是人为通过开关切换母线的接地电阻以模拟系统的绝缘故障。

用钳型电流表测量实际工作电流值,并与主控的测量值相比较。电流的测量结果与实际值如表1所示。通过表1可以发现,工作电流的测量精度在2%以内,符合设计要求。EKF算法通过在Simlink中搭建仿真模型验证可行性。仿真结果与误差分析如图7、图8所示。通过分析发现:安时积分法的累积误差随着时间的推移会越来越大,不能实时反映电池工作状态,而扩展卡尔曼滤波算法有迭代更新的特点且具有很好的收敛性,基本不受初值的影响,能迅速追踪到电池的工作状态,保证了SOC的估算精度。

表1 电流采集数据

图7 初值为90% SOC估算

在测试过程中,本文所设计的BMS主控单元能够完成对电池电压、电流以及绝缘状态的实时监测。在此基础上,单片机能够根据采集的电流实时、准确地完成SOC的估算。当出现绝缘故障时,系统能够及时上报故障信息并驱动相应的继电器动作,保证了电池组的安全稳定使用。

4 结语

本文基于S32K单片机,设计了一种电池管理系统主控单元,并对绝缘检测系统和SOC估算方法进行了改进。实验结果表明:主控单元运行稳定,测量精度符合设计要求,有一定的应用价值。但本文采用的绝缘检测方法在检测过程中会对系统的绝缘性能产生不利影响,仍需进一步研究解决。

猜你喜欢
卡尔曼滤波绝缘电阻
基于深度强化学习与扩展卡尔曼滤波相结合的交通信号灯配时方法
电阻大小谁做主
卡尔曼滤波在信号跟踪系统伺服控制中的应用设计
巧测电阻
让我家与雾霾绝缘
侵限绝缘处的站联设计
基于递推更新卡尔曼滤波的磁偶极子目标跟踪
电阻焊
基于有色噪声的改进卡尔曼滤波方法
低压成套开关设备绝缘配合问题分析