董海洋,楊玉新,羅羽,李立偉
(1. 青島大學 a. 電氣工程學院; b. 圖書館,山東 青島 266071; 2. 濰坊市產品質量檢驗所,山東 濰坊 261000)
電池管理系統(BMS)作為電動汽車的關鍵組成部分,主要作用是對電池組的狀態進行實時監控[1],保證電池組的安全穩定運行。傳統的電池管理系統的絕緣檢測模塊只能完成絕緣電阻值檢測,無法對系統的絕緣狀態進行實時監測[2]。本文設計的BMS主控單元,在完成主控基本功能的同時,針對傳統絕緣檢測系統存在的問題,對絕緣檢測法進行了改進,使其在完成絕緣電阻值檢測的同時能夠實時監測系統的絕緣狀態,對絕緣故障進行預警,并針對傳統安時積分法的缺點,使用EKF算法提高了SOC估算的精度,進一步提高了該設計的實用性。
硬件電路主要包括:單片機及其外圍電路、通訊模塊、電源模塊、電流采集模塊、絕緣檢測模塊、存儲模塊、繼電器控制等。主控單元負責電池組電流的采集和電池組絕緣性能的實時監控,匯總從控模塊采集的數據并進行分析和存儲,同時進行SOC估算且將以上所有實時數據經串口發送給上位機顯示。在整個監控過程中,若有狀態信息超出預設閾值,則通過程序控制相應保護電路動作[3-4]。系統結構圖如圖1所示。

圖1 主控單元系統結構圖
本文選用擁有ARM內核的S32K144汽車級單片機作為控制芯片。與其他單片機相比,它擁有更為豐富的外設、更強大的性能、更寬的工作溫度范圍。其內部集成3路CAN控制器,擁有更強的通信能力。其外圍電路主要包括:實時時鐘、FLASH和EEPROM、電壓監測與電平復位電路等[5]。
電源模塊主要由保護電路、電壓轉換電路構成。BMS由車載輔助電源供電,輔助電源的24 V電壓首先經過濾波,保證輸入電壓的質量。濾除干擾后經保護電路,再進行電壓轉換供BMS使用。傳統的保護電路依靠笨重的電感器、電容器、保險絲和瞬態電壓抑制器,而LT4363通過控制一個N通道MOSFET,實現了可靠、自適應的電壓調節,并具有浪涌電流保護以及防反接功能,可有效地保護電路[6]。電源從LT4363輸出后,進行電壓等級的轉換。本文選用LMZ14201H芯片,用于將輔助電源24 V電壓降至5 V,供單片機以及數字芯片使用。最后,使用TLV1117LV穩壓芯片,將5 V電壓降至3.3 V,供FLASH使用。電路原理圖如圖2所示。

圖2 電壓轉換電路
本文采用的分流器檢測法如圖3所示[7]。將分流器串入待測回路中,得到一個差分電壓信號,通過采集差分電壓信號進行計算而得到待測電流。圖3中Shunt-P和Shunt-N為分流器的差分電壓信號,它們都以電池組的電壓為基準,不能直接采集測量。本文采用隔離差分放大器AMC1200,它輸出的差分電壓ADC-P和ADC-N都是以輔助電源的電壓為基準,且電壓范圍是0~+3.3 V,可以直接輸入單片機的ADC,單片機將得到的差分電壓信號轉換后即得到相應的電流值。

圖3 AMC1200電流采樣電路
本文對傳統絕緣檢測系統進行了改進。絕緣監測系統由絕緣狀態監控系統和絕緣檢測裝置組成,兩者相互配合以實現絕緣電阻的檢測以及絕緣狀態的監控[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]。
目前工程上常用的安時積分法累計誤差較大,因此本文使用擴展卡爾曼濾波算法,將開路電壓法和安時積分法結合,并用開路電壓法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為測量噪聲矩陣。
實驗室中搭建硬件電路驗證設計的可行性,采用12節單節標稱電壓3.7 V的18650鋰電池作為實驗對象,用以模擬動力電池。系統主要由電池組、S32K主控板以及故障電阻模擬裝置組成。故障電阻模擬是人為通過開關切換母線的接地電阻以模擬系統的絕緣故障。
用鉗型電流表測量實際工作電流值,并與主控的測量值相比較。電流的測量結果與實際值如表1所示。通過表1可以發現,工作電流的測量精度在2%以內,符合設計要求。EKF算法通過在Simlink中搭建仿真模型驗證可行性。仿真結果與誤差分析如圖7、圖8所示。通過分析發現:安時積分法的累積誤差隨著時間的推移會越來越大,不能實時反映電池工作狀態,而擴展卡爾曼濾波算法有迭代更新的特點且具有很好的收斂性,基本不受初值的影響,能迅速追蹤到電池的工作狀態,保證了SOC的估算精度。

表1 電流采集數據

圖7 初值為90% SOC估算
在測試過程中,本文所設計的BMS主控單元能夠完成對電池電壓、電流以及絕緣狀態的實時監測。在此基礎上,單片機能夠根據采集的電流實時、準確地完成SOC的估算。當出現絕緣故障時,系統能夠及時上報故障信息并驅動相應的繼電器動作,保證了電池組的安全穩定使用。
本文基于S32K單片機,設計了一種電池管理系統主控單元,并對絕緣檢測系統和SOC估算方法進行了改進。實驗結果表明:主控單元運行穩定,測量精度符合設計要求,有一定的應用價值。但本文采用的絕緣檢測方法在檢測過程中會對系統的絕緣性能產生不利影響,仍需進一步研究解決。