摘 要: 針對航空電源電池管理系統可靠性的需要,研究了現有的電池管理系統的特點,設計了一種基于飛思卡爾MC9S12XET256和Linear 6804-2的電池管理系統。該系統硬件包括電池組電池電壓測量電路、溫度測量電路、電池充放電電壓電流測量電路以及基于Linear 6820的isoSPI和SPI轉換電路;軟件設計包括電池電量數據讀取、溫度數據讀取、充放電電流計算、均衡控制、電池荷電狀態(SOC)與健康狀況(SOH)的計算以及主控芯片的任務管理與通信。試驗測試表明,該系統運行穩定,測試精度高,可在電池管理實際工程中使用。
關鍵詞: 電池管理系統;MC9S12XET256;Linear 6804-2;SOC;SOH
0 引言
隨著航天事業的不斷發展,其機載用電設備日益增多,航空電源電池管理系統的設計成為了關鍵。航空電源電池管理系統不僅是功能系統,也是重要的安全保障系統。由于全電飛機的不斷發展,航空電源電池系統的重要性也將提升到一個新的高度。一個好的電源電池管理系統不僅要對電池組的電壓電流進行檢測,電池荷電狀態及健康狀態的估計,電池的充放電均衡問題也成為研究的重點與難點。本文設計的BMS系統可準確測量各單體電池電壓以及總電壓、總電流、溫度及氣壓等信息,同時具有均衡單體電池電壓,控制電池充放電等功能。并且采用基于擴展卡爾曼濾波(EKF)的鋰電池荷電狀態(SOC)和健康狀態(SOH)估計方法,可使系統準確掌握鋰電池組的工作狀態。
1 硬件設計
本次電源管理系統的總體設計思路如圖1所示。該系統通過各電池狀態監控子板完成對電池電壓的測量與采集,由isoSPI隔離式串行接口通信傳送給主控板,主板通過CAN總線傳輸給上位機進行界面顯示。
1.1主板部分
1.1.1 CPU的選型
本文介紹的電池管理系統主要功能是完成電池電壓、電流和溫度的采集與調節,電池電壓、剩余電量及電池健康狀態的顯示,并且具有與其他控制器的通信等功能,需要通過采集電壓和電流的數據來計算出電池組的荷電狀態(SOC)。所以本次設計采用飛思卡爾推出的16位MC9S12XET256作為本電池管理系統的主控芯片,該芯片速度快,可靠,抗干擾能力強,可實現本系統的全部功能。具有SPI串行外圍接口模塊,通過Linear 6820實現isoSPI與四線制SPI的轉換,CPU由isoSPI通信接口與各電池狀態監控子板進行通信,讀取監控子板采集的單體電池電壓,控制監控子板進行電池能量均衡操作。
1.1.2充/放電電壓電流測量
采用外圍芯片ADS1115對電池的充放電電壓電流進行測試,充放電電流通過霍爾電流傳感器傳送至A/D轉換芯片。ADS1115為超小型、低功耗、16位高精度A/D轉換芯片,執行轉換速率高達每秒860個樣本。如圖2所示,ADS1115具有一個片上可編程增益放大器(PGA),能夠以高分辨率來測量大信號和小信號,還具有一個輸入多路復用器(MUX),可提供2個差分輸入或4個單端輸入。本次設計采用單端輸入方式分四路分別測量充放電電壓與電流,電壓與電流測量的準確性為后續SOC的估算提供了精度保證。經過實驗測量,充/放電電流的測量誤差<3%,電池組總電壓的測量誤差<2%。
1.1.3氣壓值的采集
采用BMP085氣壓傳感器進行氣壓值的采集,BMP085精度高,耗能低,通過I2C總線直接與處理器相連,將采集的氣壓值直接傳送給處理器進行處理。
1.1.4 LTC6820 isoSPI收發器
LTC6820將LTC6804-2監控子板與CPU相連,實現串行外圍接口(SPI)總線的雙向傳輸,LTC6820在使用時,SPI數據被編碼成差分信號,然后通過雙絞線和一個簡單低成本的以太網變壓器發送。CPU由isoSPI通信接口讀取監控子板采集的單體電池電壓,控制監控子板進行電池能量均衡操作。
1.2子板部分
監測子板是基于Linear公司的LTC6804-2多節電池的電池組監視器。LTC6804-2可測量多達12個串接電池的電壓并具有低于1.2 mV的總測量誤差,可在290 μs之內完成系統中所有電池的測量。通過isoSPI串口與單片機相連,可實現高速、抗RF干擾的局域通信。如圖3所示,本次設計采用一種多地址配置的方式將主板與8塊監測子板相連。經實驗測得,子板測量單體電池電壓精準,其測量誤差<0.05%。同時,子板還可實現電芯溫度的測量,其內部具有5個通用的I/O口,外接熱敏電阻,通過I/O口的A/D測量間接反映溫度的值,經實驗,溫度的測量誤差<1℃。
2 SOC和SOH算法
本設計采用擴展卡爾曼濾波算法估算電池的SOC和SOH。對于SOC的估計,目前有放電實驗法、電阻法、安時積分法、開路電壓法、模型法和卡爾曼濾波法,通過對各種方法的優缺點及實際應用的考慮,認為擴展卡爾曼濾波(EKF)是一個優秀的狀態估計策略。本次設計采用精度較高的Randles模型,并在擬合電池的OCV(開路電壓)-SOC曲線時通過引入自然指數函數并增加多項式階數等方法提高擬合精度。
2.1鋰電池系統建模
目前常用的鋰電池系統模型有RC模型、Thevenin模型和Randles模型,其中Randles模型使用兩個RC環節模擬電池的極化效應,精度最高。本次設計采用Randles模型,其結構如圖4所示。
上圖中,Uocv(SOC)為鋰電池的開路電壓,R0為電池內阻,R1C1、R2C2兩個RC環節用來描述電池極化效應,其電壓分別為U1、U2,干路電流為I,定義時間常數τ1=R1C1,τ2=R2C2,則有:
在式(1)中,U1(0)、U2(0)分別為電容C1、C2的初值,UOCV(SOC)為SOC的函數。OCV-SOC擬合時引入自然指數函數并用6項多項式擬合,即:
其中,a0,a1…a6,b0,b1為與電池本身特性相關的參數,設計實驗時,首先將電池涓流充滿,斷電;然后,充分靜置約3 h,記錄SOC=100%時對應的開路電壓;而后,使用小電流階段放電的方法,步進式地將電池的SOC調整至90%、80%、70%…20%等,并在每一次調整完畢后充分靜置以獲取準確的開路電壓,從而得到電池的OCV-SOC曲線,然后用最小二乘法擬合即可估計出這些參數。忽略溫度、循環次數等因素的影響,進行混合脈沖功率試驗(HPPC),即對電池以恒流I0放電10 s,靜置40 s,恒流I0充電10 s,靜置40 s,記錄電池電流和端電壓,根據參考文獻[1]中的參數辨識計算得到電池模型中的各個參數。
2.2 鋰電池組SOC和SOH估算
2.2.1 EKF算法
EKF[2]是標準Kalman濾波在非線性系統中的一種擴展,是一種針對系統狀態變量的最優估計,且由于算法具有遞推特性,非常容易實現在線估計。設系統狀態方程為:
X(k)=AX(k-1)+BU(k-1)+W(k)Z(k)=g(X(k),U(k))+V(k)(3)
其中,X為系統狀態變量,U為輸入信號,Z為量測輸出,W與V為驅動噪聲和量測噪聲,為不相關的白噪聲,且其方差陣分別為Q和R,則其遞推算法為:
(1)k時刻系統狀態的預測:
X(k|k-1)=AX(k-1|k-1)+BU(k-1)
(2)k時刻系統預測狀態誤差協方差陣的預測:
P(k|k-1)=AP(k-1)AT+Q
(3)系統量測-狀態轉換矩陣的計算:
(4)計算增益矩陣Kg:
Kg(k)=P(k|k-1)C(k)[C(k)P(k|k-1)C(k)T+R]-1
(5)計算k時刻系統狀態的最優估計值:
X(k|k)=X(k|k-1)+Kg(k)[Z(k)-g(X(k),U(k))]
(6)更新k時刻系統狀態誤差協方差陣:
P(k|k)=[1-Kg(k)C(k)T]P(k|k-1)
2.2.2 SOC估算
設系統采樣時間為Δt,電池總電量為Q0,則SOC與電流、電量之間的關系為:
其中,k為采樣序列的序號。結合式(1)建立系統狀態方程:
其中系統狀態變量為X(k)=[SOC(k),U1(k),U2(k)]T,輸入信號U(k)=I(k),量測輸出為Z(k)=UL(k),矩陣。根據式(5)可知矩陣C(k)的計算方法為:
按照EKF的遞推公式進行迭代,即可對電池的SOC進行估算。
2.2.3 SOH估算
本文通過電池內阻來表征電池的健康狀態,將電池歐姆內阻R0作為系統狀態,并認為它是緩慢變化的,得到如下的離散狀態空間系統方程和輸出觀測方程:
式(8)描述電池歐姆內阻的變化,以一個小的擾動r來表示歐姆內阻變化緩慢。式(9)是輸出觀測方程,n(k)表示估計誤差。
其中系統變量按照EKF的遞推公式進行迭代,即可對電池的SOH進行估算。
3 軟件設計
根據系統所要實現的功能將軟件設計分成部分模塊,對各個模塊單獨編碼調試,最后將各個模塊集成起來,從而實現系統的全部功能。
3.1 軟件設計的功能模塊
根據鋰電池管理系統實時監測的設計需求,軟件設計的各功能模塊主要包括監控子板對單體電池電壓值的采集模塊、電芯溫度的采集模塊、電池能量均衡控制模塊、充/放電控制及電壓電流采集模塊、氣壓采集模塊、SOC和SOH估算模塊、通信和時鐘模塊。圖5所示為各模塊關系結構圖。
3.2 軟件設計的流程圖
根據電源管理系統功能的總體要求,對各模塊的設計完成后進行編碼調試,軟件設計的總體流程如圖6所示。
4 結論
本文對電源管理系統的設計,經過實驗測量,系統運行穩定,數據的采集采用抗擾性能極強的隔離采集技術,精度高,速度快;在通信上,采用isoSPI隔離式串口通信與CAN總線通信;采用擴展卡爾曼濾波法進行SOC與SOH的估算,較其他算法精度高,通用性好。總體上可以實現對電池系統的實時監測與調控。
參考文獻
[1] 薛輝.動力鋰離子電池組S0H估計方法研究[D].長春:吉林大學,2013.
[2] 方明杰,王群京.基于擴展卡爾曼濾波算法的鋰離子電池的SOC估算[J].電工電能新技術,2013,32(2):39-42.