徐東輝,徐向陽
(1.南昌師范學(xué)院數(shù)學(xué)與計(jì)算機(jī)科學(xué)系,江西 南昌 330046;2.長(zhǎng)沙理工大學(xué)汽車與機(jī)械工程學(xué)院,湖南 長(zhǎng)沙 410076)
隨著傳統(tǒng)燃油車的廣泛使用,相應(yīng)的能源短缺及環(huán)境污染等問題隨之日益嚴(yán)峻,同時(shí)新能源汽車(尤其電動(dòng)汽車)再次引起世界各國的高度重視。動(dòng)力電池作為電動(dòng)汽車的主要?jiǎng)恿υ矗苯佑绊懼妱?dòng)汽車的行使里程、加速能力及最大爬坡速度等整車性能,因此開發(fā)較好的電池管理系統(tǒng)對(duì)于提高電動(dòng)汽車的整體性能具有重大作用。鋰離子動(dòng)力電池與鉛酸等電池相比較,具有能量密度高、自放電率低、無記憶效應(yīng)、使用壽命長(zhǎng)及安全性好等優(yōu)勢(shì),成為目前電動(dòng)汽車的首選動(dòng)力電池,與其相配套的電池管理系統(tǒng)也成為當(dāng)前研究熱門。
荷電狀態(tài)(SOC)描述電池剩余電量的數(shù)量,類似于傳統(tǒng)汽油車的油表。SOC估測(cè)是電池管理系統(tǒng)研究的核心之一,也是當(dāng)前面臨的世界性難題。準(zhǔn)確地估測(cè)SOC對(duì)于提高電動(dòng)汽車的能量效率,有效延長(zhǎng)電池循環(huán)使用壽命,防止電池過充及過放具有重要意義。目前針對(duì)SOC的估算方法開展了很多研究,如:文獻(xiàn)[1-2]采用Ah計(jì)量法對(duì)鋰離子動(dòng)力電池的SOC進(jìn)行估算;文獻(xiàn)[3]通過對(duì)開路電壓法進(jìn)行改進(jìn),實(shí)現(xiàn)了鋰離子電池SOC動(dòng)態(tài)估測(cè),估測(cè)精度達(dá)到了預(yù)期效果;劉樹林等[4]將分?jǐn)?shù)階理論應(yīng)用于鋰離子電池等效電路建模中,并且采用了分?jǐn)?shù)階卡爾曼濾波算法對(duì)SOC進(jìn)行了估計(jì),實(shí)驗(yàn)結(jié)果顯示SOC估計(jì)的最大誤差小于2%;B.S.Bhangu等[5]在鉛酸蓄電池等效電路的基礎(chǔ)上建立了狀態(tài)觀測(cè)器,并利用Kalman對(duì)其狀態(tài)進(jìn)行了估測(cè);孫逢春等[6]利用EKF建立了鋰電池模糊模型,分別在FUDS、DST等工況下進(jìn)行了驗(yàn)證,結(jié)果顯示SOC預(yù)測(cè)精度達(dá)到了較好的要求。以上SOC估測(cè)算法中,安時(shí)積分法存在庫侖效率難以準(zhǔn)確測(cè)量,SOC初始值難于確定,估測(cè)過存中易造成誤差累積等問題[7-8]。開路電壓法需要通過長(zhǎng)時(shí)間靜置消除極化作用對(duì)SOC估測(cè)的影響,因此該方法無法在線運(yùn)行。卡爾曼濾波法適用于電動(dòng)汽車惡劣環(huán)境下的噪聲過濾,但估測(cè)精度受等效電路模型準(zhǔn)確性的影響,且內(nèi)部參數(shù)難以在線實(shí)時(shí)確定[9-11]。上述算法都屬于開環(huán)控制模式,且未涉及鋰離子動(dòng)力電池系統(tǒng)非線性混沌特性方面的研究。因此本文針對(duì)鋰離子動(dòng)力電池系統(tǒng)高度復(fù)雜的非線性特性,提出了SOC時(shí)間序列的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型。在分析并判別鋰離子動(dòng)力電池系統(tǒng)混沌特性的基礎(chǔ)上,采用相空間重構(gòu)技術(shù)恢復(fù)鋰離子動(dòng)力電池系統(tǒng)固有的非線性特性,利用BP神經(jīng)網(wǎng)絡(luò)對(duì)SOC時(shí)間序列進(jìn)行預(yù)測(cè),獲得SOC預(yù)測(cè)值。并將SOC預(yù)測(cè)值代入二階RC網(wǎng)絡(luò)模型中計(jì)算出電池端電壓,將端電壓實(shí)際測(cè)量值與電池端電壓計(jì)算值作差值比較,利用該偏差對(duì)BP神經(jīng)網(wǎng)絡(luò)模型進(jìn)行參數(shù)修正,形成有效的閉環(huán)控制,達(dá)到提高SOC預(yù)測(cè)精度及實(shí)時(shí)性目的。
假設(shè){x(ti),i=1,2,…,N}為車用鋰離子電池動(dòng)力學(xué)系統(tǒng)的一維時(shí)間序列,相空間重構(gòu)技術(shù)[12-13]可得重構(gòu)后的相空間可以表示為:
其中:m為嵌入維數(shù),τ為時(shí)間延遲,M滿足下式條件:
由Packard及Takens定理[14-15]可知找到一合適的嵌入維數(shù)與時(shí)間延遲后可以從鋰離子電池動(dòng)力學(xué)系統(tǒng)的一維時(shí)間序列數(shù)據(jù)中提取和恢復(fù)出系統(tǒng)原來的非線性特性,重構(gòu)的空間與原動(dòng)力系統(tǒng)保持微分同胚,為鋰離子動(dòng)力電池S OC時(shí)間序列預(yù)測(cè)奠定了堅(jiān)實(shí)的理論基礎(chǔ)。
若要將上述的重構(gòu)相空間時(shí)間序列應(yīng)用于車用鋰離子電池的S OC預(yù)測(cè)中,則必須對(duì)鋰離子電池動(dòng)力學(xué)系統(tǒng)的時(shí)間序列進(jìn)行混沌判別[16-17],本文選擇小數(shù)據(jù)量方法對(duì)電池動(dòng)力學(xué)系統(tǒng)的時(shí)間序列進(jìn)行混沌判別,具體步驟如下:
(1)估算時(shí)間延遲τ和平均周期P,即利用FFT變換獲得τ和P;
(2)根據(jù)G-P算法估算關(guān)聯(lián)維d,再根據(jù)m≥2d+1確定嵌入維數(shù)m;
(3)根據(jù)τ、m重構(gòu){x(ti),i=1,2,…,N}時(shí)間序列,獲得式(1)相空間時(shí)間序列;
(4)找相空間中每個(gè)點(diǎn)Xi的最近鄰點(diǎn),并限制短暫分離,即;
(5)對(duì)每個(gè)點(diǎn)Xi,計(jì)算其鄰點(diǎn)的l個(gè)離散時(shí)間步后的距離為di(l),表達(dá)式如下
(6)對(duì)每個(gè)l,求出所有l(wèi)ndi(l)的平均y(l),其表達(dá)式即為(其中,q為非零di(l)的數(shù)目),利用最小二乘法對(duì)y(l)進(jìn)行擬合,得到回歸直線,則直線的斜率即為最大Lyapunov指數(shù)。
BP神經(jīng)網(wǎng)絡(luò)選擇2-6-1三層拓?fù)浣Y(jié)構(gòu),θl、θj分別為隱層節(jié)點(diǎn)l和輸出層節(jié)點(diǎn)j的閾值,Thl為輸入層節(jié)點(diǎn)h和隱層節(jié)點(diǎn)l之間的連接權(quán)值,Tlj為隱層節(jié)點(diǎn)l和輸出層節(jié)點(diǎn)j之間的連接權(quán)值,各節(jié)點(diǎn)的輸入為x,輸出為y。
步驟1 初始化。
設(shè)輸入、輸出樣本(已歸一化)為:
dk,j為第k時(shí)刻的實(shí)際值,N為樣本容量,給各連接 權(quán) {Thl},{Tlj}和 值 {θl},{θj}賦 予 區(qū) 間(-0.1,0.1)上的隨機(jī)值。
步驟2 置k=1,把樣本對(duì){xk,h,dk,j}提供給網(wǎng)絡(luò)。
步驟3 計(jì)算隱層各節(jié)點(diǎn)的輸入xl和輸出yl,其中l(wèi)=1,2,…,6。
步驟4 計(jì)算輸出層各節(jié)點(diǎn)的輸入xj和輸出yj。
步驟5 輸出層節(jié)點(diǎn)j所收到的總輸入變化時(shí)單樣本點(diǎn)誤差的變化率
步驟6 隱層節(jié)點(diǎn)l所收到的總輸入變化時(shí)單樣本點(diǎn)誤差的變化率
步驟7 修正各連接的權(quán)值和閥值
其中,η∈ (0,1)為學(xué)習(xí)速率。η較大,則算法收斂快,但不穩(wěn)定,可能出現(xiàn)震蕩,η較小則算法收斂緩慢,a的作用恰好與η相反。
步驟8 置k′=k+1,取學(xué)習(xí)模式對(duì){xk,h,dk,j}提供給網(wǎng)絡(luò),轉(zhuǎn)至步驟3,直至全部N(N為樣本容量)個(gè)模式對(duì)訓(xùn)練完畢,轉(zhuǎn)至步驟9。
步驟9 重復(fù)步驟2至步驟8,直至網(wǎng)絡(luò)全局誤差函數(shù)E小于預(yù)先設(shè)定的一個(gè)較小值或?qū)W習(xí)次數(shù)大于預(yù)先設(shè)定的值,則結(jié)束訓(xùn)練。
S OC時(shí)間序列的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型結(jié)構(gòu)如圖1所示,本預(yù)測(cè)模型主要包括相空間重構(gòu)模塊、BP神經(jīng)網(wǎng)絡(luò)模塊、二階RC等效電路模塊、帶遺忘因子的遞推最小二乘辨識(shí)模型等組成,主要預(yù)測(cè)步驟如下:
步驟1:利用溫度、電流及電壓等傳感器實(shí)時(shí)在線測(cè)取電池溫度T(k)、電流I(k)及端電壓U(k)等數(shù)據(jù);
步驟2:利用相空間重構(gòu)技術(shù)對(duì)采集到的溫度、電流及電壓等數(shù)據(jù)進(jìn)行重構(gòu),恢復(fù)鋰離子動(dòng)力電池系統(tǒng)固有的非線性特性;
步驟3:將重構(gòu)后得到的數(shù)據(jù)作為BP神經(jīng)網(wǎng)絡(luò)模塊的輸入量進(jìn)行預(yù)測(cè),得到鋰離子動(dòng)力電池系統(tǒng)S OC時(shí)間序列的預(yù)測(cè)值;
步驟4:將電流I(k)及S OC時(shí)間序列的預(yù)測(cè)值作為二階RC等效電路模型輸入變量,通過公式計(jì)算得到端電壓UL(k)的計(jì)算值;
步驟5:根據(jù)BP神經(jīng)網(wǎng)絡(luò)全局誤差函數(shù)式(15)判斷系統(tǒng)全局誤差,若大于預(yù)先設(shè)定的值或?qū)W習(xí)次數(shù)小于預(yù)先設(shè)定的值,則修正BP神經(jīng)網(wǎng)絡(luò)各連接的權(quán)值和閥值,并且重復(fù)執(zhí)行步驟3至步驟5,反之則結(jié)束學(xué)習(xí),得到S OC的最終預(yù)測(cè)值。
圖中,T(k)為電池溫度、I(k)為電流、U(k)為端電壓、S OC(k)為BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)值、UL(k)為端電壓的計(jì)算值、e(k)=U(k)-UL(k)為端電壓的測(cè)量值與計(jì)算值的差。
車用動(dòng)力電池等效電路模型主要有內(nèi)阻、Thevenin、PNGV、Massimo Ceraolo等模型[20-21]。本文采用基于RC電路與Thevenin模型的二階RC等效電路模型,二階RC等效電路模型充分考慮了電流、溫度、充放電等對(duì)電池內(nèi)阻的影響,能較準(zhǔn)確地模擬電池的動(dòng)、靜態(tài)特性,具有精度高,結(jié)構(gòu)簡(jiǎn)單,計(jì)算復(fù)雜度低,參數(shù)易辨識(shí)實(shí)現(xiàn)等優(yōu)點(diǎn)。目前該模型普遍應(yīng)用于動(dòng)力電池建模、仿真等領(lǐng)域,二階RC等效電路模型結(jié)構(gòu)如圖2所示。
二階RC等效電路模型表達(dá)式:
由上述式(16)及式(17)可知,若要準(zhǔn)確在線的計(jì)算出端電壓UL值,則必須對(duì)二階RC等效電路模型中 的R0、R1、C1、R2、C2等 值 進(jìn) 行 實(shí) 時(shí) 在 線 辨識(shí)。目前參數(shù)辨識(shí)領(lǐng)域的算法主要包括最小二乘法、預(yù)報(bào)誤差法、極大似然法等,但以上算法大都很難實(shí)現(xiàn)實(shí)時(shí)在線辨識(shí),為此本文選擇帶遺忘因子的遞推最小二乘法對(duì)二階RC等效電路模型參數(shù)實(shí)現(xiàn)實(shí)時(shí)在線辨識(shí)。
為了將帶遺忘因子的遞推最小二乘法成功應(yīng)用于二階RC等效電路模型參數(shù)辨識(shí)中,必須將二階RC等效電路模型轉(zhuǎn)化為最小二乘法基本結(jié)構(gòu)形式。
對(duì)式(16)進(jìn)行 Laplace變換,定義EL(s)=為電路阻抗,則可得:
式中:τ1=R1C1,τ2=R2C2。
根據(jù)雙線性變換原理對(duì)上式進(jìn)行離散化處理,可得離散傳遞函數(shù)為:
式中:α1,α2,β0,β1,β2為待定系數(shù)。
則由式(19)可得離散化后的差分方程為:
令:
則可得最小二乘法形式為:
其中T為采樣周期。
遞推最小二乘法是在最小二乘法基礎(chǔ)上發(fā)展起來的,它是在系統(tǒng)運(yùn)行過程中,每測(cè)量一組新數(shù)據(jù),通過遞推公式修正前一時(shí)刻的預(yù)測(cè)值來獲得當(dāng)前時(shí)刻的參數(shù)值估計(jì)值,直到參數(shù)估計(jì)值逐漸逼近滿意的精度為止。遞推最小二乘法易出現(xiàn)“數(shù)據(jù)飽和”現(xiàn)象,遺忘因子遞推最小二乘法是在遞推最小二乘法算法的基礎(chǔ)上進(jìn)行改進(jìn)而得到的,通過引入一個(gè)遺忘因子λ(λ的取值范圍為0.95~0.99)減弱舊數(shù)據(jù)的作用而增強(qiáng)新數(shù)據(jù)的作用,有效克服“數(shù)據(jù)飽和”現(xiàn)象。改進(jìn)后的評(píng)價(jià)函數(shù)為:
帶遺忘因子的遞推最小二乘法算法的遞推公式如下:
圖2中,UL為端電壓;UOC為開路電壓;R0為歐姆內(nèi)阻;R1、C1為電化學(xué)極化電阻和極化電容,R2、C2為濃度差極化電阻和極化電容。
本文研究對(duì)象選擇100Ah的磷酸鐵鋰離子動(dòng)力電池,試驗(yàn)工況選擇DST工況。上位機(jī)為PC機(jī),運(yùn)行BTS-600軟件及SQL Sever數(shù)據(jù)庫軟件。下位機(jī)選用美國Arbin公司生產(chǎn)的BT2000電池測(cè)試系統(tǒng),其電壓的測(cè)量精度為±0.01%,電流的測(cè)量精度為±0.02%。在部分實(shí)驗(yàn)中采用美國Agilent公司生產(chǎn)的34410A型6 1/2位數(shù)字萬用表作為電壓輔助測(cè)量工具,提高電壓測(cè)量精度。DS18B20傳感器為環(huán)境溫度采集設(shè)備,精度為±0.5°C。每次試驗(yàn)共采集電壓、電流及溫度等600組試驗(yàn)數(shù)據(jù),共進(jìn)行5次試驗(yàn),獲得5×600組試驗(yàn)數(shù)據(jù)。S OC與OCV的曲線關(guān)系由下式擬合出:
本文利用上述小數(shù)據(jù)量方法計(jì)算得最大Lyapunov指數(shù)為0.016 2,稍大于0,表明鋰離子電池動(dòng)力學(xué)系統(tǒng)的時(shí)間序列具有混沌特性,因此可對(duì)車用鋰離子電池S OC做短期預(yù)測(cè)。若要對(duì)上述試驗(yàn)采集到的一維數(shù)據(jù)進(jìn)行相空間重構(gòu)首先必須確定嵌入維數(shù)和時(shí)間延遲,為此本文采用C-C法確定嵌入維數(shù)和時(shí)間延遲,具體步驟如下:
(1)計(jì)算給定時(shí)間序列的標(biāo)準(zhǔn)差σ;
(2)通過matlab編程序計(jì)算
其 中: 時(shí) 間 變 量t≤ 200,S(m,rj,t)=max{S(m,rj,t)}-min{S(m,rj,t)}
(3)在 matlab 中 對(duì) 上 述 2)中ΔS(m,t)、(t)、Scor(t)進(jìn)行作圖,① 在ΔS(m,t)與t(0≤t≤200)曲線圖中ΔS(m,t)的第一個(gè)極小值處t對(duì)應(yīng)τd=tτs(τs為時(shí)間序列的采樣間隔);② 在與t(0≤t≤200)曲線圖中的第一個(gè)極小值處t對(duì)應(yīng)τd=tτs;③ 在Scor(t)與t(0≤t≤200)曲線圖中Scor(t)的最小值處t對(duì)應(yīng)τw=tτs。
根據(jù)上述步驟計(jì)算的τ=3,τw=21,通過τw=(m-1)τ計(jì)算的嵌入維數(shù)m=8,因此最后確定了鋰離子電池動(dòng)力學(xué)系統(tǒng)時(shí)間序列的τ=3、m=8,并利用此結(jié)果對(duì)車用鋰離子動(dòng)力電池S OC時(shí)間序列進(jìn)行相空間重構(gòu)。
BP神經(jīng)網(wǎng)絡(luò)[20]選擇8-6-1結(jié)構(gòu),學(xué)習(xí)步長(zhǎng)取1500,允許誤差為0.01,對(duì)采集的5×600組實(shí)驗(yàn)數(shù)據(jù)進(jìn)行重構(gòu),得到25×600組數(shù)據(jù),隨機(jī)選取20×600組為BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型的訓(xùn)練樣本,另5×600組數(shù)據(jù)為檢驗(yàn)樣本。RBF神經(jīng)網(wǎng)絡(luò)選擇8-6-1結(jié)構(gòu),學(xué)習(xí)步長(zhǎng)取1 500,允許誤差為0.01,隱含層選擇高斯函數(shù),為驗(yàn)證相空間重構(gòu)技術(shù)能提高BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)精度,本文從采集到的5×600組原始實(shí)驗(yàn)數(shù)據(jù)中隨機(jī)選取4×600組為RBF神經(jīng)網(wǎng)絡(luò)訓(xùn)練樣本,剩余的1×600組為檢驗(yàn)樣本。二階RC等效電路模型參數(shù)辨識(shí)結(jié)果如表1所示,SOC時(shí)間序列BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)值與標(biāo)定值的比較如圖3所示,BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)值與標(biāo)定值的比較如圖4所示,預(yù)測(cè)誤差比較如圖5所示。
表1 二階RC等效電路模型參數(shù)辨識(shí)結(jié)果
通過圖2~4及表1~2的誤差分析與比較表明相空間重構(gòu)技術(shù)能夠恢復(fù)鋰離子動(dòng)力電池原有的多維非線性特性,從多維狀態(tài)空間方面擴(kuò)大預(yù)測(cè)模型的訓(xùn)練樣本量,提高BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型的預(yù)測(cè)精確度。帶遺忘因子的遞推最小二乘法能有效在線辨識(shí)二階RC網(wǎng)絡(luò)模型的參數(shù),克服了遞推最小二乘法易出現(xiàn)“數(shù)據(jù)飽和”現(xiàn)象。同時(shí)表明由二階RC網(wǎng)絡(luò)模型、BP神經(jīng)網(wǎng)絡(luò)及帶遺忘因子的遞推最小二乘法構(gòu)成的閉環(huán)控制系可以實(shí)現(xiàn)SOC時(shí)間序列實(shí)時(shí)在線預(yù)測(cè),達(dá)到了較滿意的精度。
表2 誤差分析與比較
(1)針對(duì)車用鋰離子動(dòng)力電池系統(tǒng)高度復(fù)雜的非線性特性,SOC難于實(shí)時(shí)在線獲取的難題,提出了SOC時(shí)間序列的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型;利用二階RC網(wǎng)絡(luò)模型、帶遺忘因子的遞推最小二乘法與BP神經(jīng)網(wǎng)絡(luò)構(gòu)成閉環(huán)控制系統(tǒng),實(shí)現(xiàn)了SOC實(shí)時(shí)在線獲取。
(2)對(duì)鋰離子電池動(dòng)力學(xué)系統(tǒng)進(jìn)行了混沌特性判別,并利用相空間重構(gòu)技術(shù)恢復(fù)了鋰離子電池動(dòng)力系統(tǒng)原有的多維非線性特性,同時(shí)增加了BP神經(jīng)網(wǎng)絡(luò)訓(xùn)練樣本空間。
(3)仿真結(jié)果顯示本預(yù)測(cè)模型具有較高的精確度、較強(qiáng)的實(shí)時(shí)性,與RBF神經(jīng)網(wǎng)絡(luò)模型比較,平均相對(duì)誤差提高了近8個(gè)百分點(diǎn)。表明了相空間重構(gòu)技術(shù)可以有效地恢復(fù)系統(tǒng)原有的多維非線性特性,有利于提高BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)精度,由二階RC網(wǎng)絡(luò)模型與BP神經(jīng)網(wǎng)絡(luò)構(gòu)成的閉環(huán)控制系統(tǒng)具有較高的實(shí)時(shí)性,對(duì)于實(shí)際工程應(yīng)用具有較好的指導(dǎo)意義。