吳免利,李劼,肖昕,鄒忠
(1. 中南大學(xué) 冶金科學(xué)與工程學(xué)院,湖南 長沙,410083;2. 中南大學(xué) 信息科學(xué)與工程學(xué)院,湖南 長沙,410083)
在電池化成過程中,對充放電電壓和電流的要求都非常嚴(yán)格,過充電會造成鋰離子在負(fù)極堆積形成枝晶,刺穿隔膜,形成內(nèi)部短路,對電池的內(nèi)部材料造成不可逆影響,降低電池使用壽命,嚴(yán)重時會造成電池?zé)崾Э囟ǎ瑢ιa(chǎn)造成很大的損害[1?5]。不準(zhǔn)確的電流和電壓不利于鋰離子動力電池的分選和配組,使得配組后的單體電池差異性較大,嚴(yán)重縮短電池組的使用壽命[6]。湖南中大業(yè)翔公司自行研制的YX-20A型鋰離子動力電池化成檢測設(shè)備,由于使用較多的非線性元件使得采樣信號和實際的測量值之間存在較大誤差。如果單從硬件上改進(jìn),會增加硬件成本,因此,研究一種合適的方法對數(shù)據(jù)進(jìn)行修正,來提高系統(tǒng)采樣精度是非常必需的。經(jīng)實驗證實,用普通的線性回歸模型校正采樣數(shù)據(jù),對提高電壓采樣精度有較好的效果,但對提高電流精度效果不佳。人工神經(jīng)網(wǎng)絡(luò)(Artificial neural network, ANN)算法可以在對被測對象不完整或不確定認(rèn)識的基礎(chǔ)上表示任意非線性關(guān)系,因此,為解決上述采樣數(shù)據(jù)失真問題提供了一種思路。目前神經(jīng)網(wǎng)絡(luò)模型多達(dá)幾十種,其中,最典型的就是 BP神經(jīng)網(wǎng)絡(luò)。此網(wǎng)絡(luò)具有結(jié)構(gòu)簡單、訓(xùn)練算法理論依據(jù)可靠、推導(dǎo)嚴(yán)謹(jǐn)且易于實現(xiàn)、預(yù)測能力強等特點[7?10]。為了提高系統(tǒng)充放電控制和采樣精度,本文作者利用 BP神經(jīng)網(wǎng)絡(luò)對非線性系統(tǒng)的學(xué)習(xí)能力校正系統(tǒng)誤差,并提高控制精度。
YX-20A型鋰離子動力電池化成系統(tǒng)的電源控制采用脈沖寬度調(diào)制(PWM)的調(diào)制方式,在主控器向電源控制板傳輸電壓電流基準(zhǔn)后,控制板上的PWM控制芯片TL494將根據(jù)采樣的電池電壓或電流控制功率板上 MOS管的開關(guān),從而調(diào)節(jié)充放電電流。功率板的電路圖如圖1所示,包括MOS管控制電路和檢測回路。
圖1中的MOS管、電感、電容和TL494一起組成PWM電源調(diào)節(jié)電路,通過調(diào)節(jié)TL494的占空比調(diào)節(jié)回路中的電壓和電流。但這些器件都屬于非線性元件,經(jīng)調(diào)節(jié)后回路中電池的電壓和電流與設(shè)定基準(zhǔn)存在一定的偏差,同時,由于化成柜在充放電階段會將大量電能以電阻發(fā)熱形式釋放,因此,作為電流檢測的康銅絲電阻,在較高的溫度下也存在一定的非線性特征,造成采集數(shù)據(jù)失真。PWM 調(diào)節(jié)電路工作時產(chǎn)生的高頻脈沖也對系統(tǒng)的精度產(chǎn)生較大的影響。
在數(shù)據(jù)采樣上,電壓誤差都在1.5%左右波動,用普通的線性回歸模型校正采樣電壓可以取得理想的效果。而電流的誤差大于 5%,且波動較大,用同樣的線性方法對采樣電流進(jìn)行校正,效果并不佳。電流采樣誤差過大會降低 TL494芯片調(diào)節(jié)的精度,在 10~40 ℃的測試結(jié)果表明:PWM轉(zhuǎn)換過程中電流最大相對誤差為 24%,平均相對誤差約為6.4%。
BP網(wǎng)絡(luò)是通過將網(wǎng)絡(luò)輸出誤差反饋回傳對網(wǎng)絡(luò)參數(shù)進(jìn)行修正,從而實現(xiàn)網(wǎng)絡(luò)的映射。具有1個隱含層的三層 BP網(wǎng)絡(luò)可以有效地逼近任意連續(xù)函數(shù)。考慮到實際應(yīng)用的要求,網(wǎng)絡(luò)設(shè)計時盡可能地減小系統(tǒng)的規(guī)模和復(fù)雜性,同時考慮到設(shè)備周圍環(huán)境溫度對硬件性能的影響,本文作者采用2-q-1 型三層BP網(wǎng)絡(luò),即具有2個節(jié)點的輸入層、具有q個節(jié)點的隱含層和具有1個節(jié)點的輸出層。輸入層分別輸入A/D轉(zhuǎn)換后的電流和環(huán)境溫度;輸出層為校正后的電流,隱含層的節(jié)點個數(shù)q通過實驗的方法確定。
傳統(tǒng)的 BP神經(jīng)網(wǎng)絡(luò)是一種簡單的最速下降靜態(tài)尋優(yōu)方法,在修正權(quán)值和閾值時,只按照當(dāng)前的負(fù)梯度方向進(jìn)行修正,而沒有考慮到以前積累的經(jīng)驗,即以前時刻的梯度方向,從而使學(xué)習(xí)過程發(fā)生振蕩,收斂緩慢。因此,采用常用的改進(jìn)算法——動量梯度下降法和L-M(Levenberg-Marquardt)算法對BP神經(jīng)網(wǎng)絡(luò)進(jìn)行對比訓(xùn)練。
圖1 功率板電路圖Fig.1 Circuit diagram of power board
動量梯度下降法的具體做法是:將上一次權(quán)值和閾值調(diào)整量的一部分迭加到按本次誤差計算所得的權(quán)值和閾值調(diào)整量上,作為本次的實際權(quán)值和閾值調(diào)整量,即
其中:α為動量系數(shù);η為學(xué)習(xí)率。
對于第p個樣本,在本模型中L-M算法的權(quán)值和閾值調(diào)整量為:
其中:J為網(wǎng)絡(luò)誤差對權(quán)值和閾值導(dǎo)數(shù)的Jacobian矩陣;μ為比例系數(shù),tp為期望輸出;yp為輸出向量。
隱含層中的激勵函數(shù)取Sigmoid函數(shù),即
輸出層中的激勵函數(shù)取線性函數(shù),即
對于隱含層節(jié)點的選取,有如下經(jīng)驗公式:
其中:nI為輸入層節(jié)點數(shù);nO為輸出層節(jié)點數(shù);q為隱含層節(jié)點數(shù)。
根據(jù)這2個經(jīng)驗公式確定q的取值范圍,然后,通過實驗對比確定合適的q。選取q為3~11范圍內(nèi)的9個節(jié)點進(jìn)行對比實驗來確實理想的q。訓(xùn)練時設(shè)定最大訓(xùn)練步數(shù)為10萬步,誤差精度為0.000 1。
在不同的環(huán)境溫度下,上位機對設(shè)備設(shè)定由低到高的不同電流基準(zhǔn),當(dāng)系統(tǒng)運行時,在回路上測量通過電池的實際電流,同時記錄當(dāng)前的A/D轉(zhuǎn)換值。將環(huán)境溫度和不同設(shè)定基準(zhǔn)測得的A/D轉(zhuǎn)換值作為神經(jīng)網(wǎng)絡(luò)的輸入;將回路上實際測量得到的電流轉(zhuǎn)換到與A/D采樣值相同的度量模式下,作為神經(jīng)網(wǎng)絡(luò)系統(tǒng)的輸出對神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。
化成柜的工作狀態(tài)有恒流充電、恒流放電、恒壓充電、擱置和循環(huán)5類,其中:循環(huán)是前4種工步的組合;在擱置狀態(tài)下,充放回路是斷開的,電路中只有細(xì)小的電流。對恒流充電、恒流放電、恒壓充電分開進(jìn)行訓(xùn)練。本文僅以恒流充電為例進(jìn)行說明。電池化成車間的工作溫度一般為10~40 ℃,鋰離子動力電池的恒流充電階段電流一般為1~10 A。所以,在10~40 ℃(溫度誤差為±1 ℃)選取1~10 A的點進(jìn)行訓(xùn)練,積累典型樣本,表1所示為1個典型樣本在不同溫度下的電流。
訓(xùn)練數(shù)據(jù)的相對誤差如圖2所示。由圖2可以看出:在不同溫度下,電流的A/D轉(zhuǎn)換值與真實值的誤差波動都較大,最大波動幅度可達(dá) 5%,并且規(guī)律性不確定,表明訓(xùn)練數(shù)據(jù)的非線性特征明顯。
表1 恒流充電過程中典型樣本的電流Table 1 Current of typical sample during constant-current charging process 電流/A
圖2 電流相對誤差Fig.2 Relative errors of electric current
訓(xùn)練之前,為了保證訓(xùn)練的準(zhǔn)確性,消除其他因素的影響,需對數(shù)據(jù)進(jìn)行歸一化。歸一化公式為:
其中:xmax和 xmin分別為每個輸入向量的最大值和最小值。
加入修正數(shù)值0.95和0.05的目的是使樣本電流落在[0.05, 0.95]這個區(qū)間,避免數(shù)據(jù)中出現(xiàn)0和1,使網(wǎng)絡(luò)具有較好的性能。
用不同隱含層節(jié)點數(shù)及算法對積累的典型樣本進(jìn)行訓(xùn)練,并將訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)對電路中的電流測量值進(jìn)行預(yù)測,并與實際電流進(jìn)行比對,得到電流最大相對誤差及平均相對誤差,結(jié)果如表2所示。表2中電流均為每項實驗過程中偏差的最大電流。
從表2可知:當(dāng)采用動量梯度下降法時,網(wǎng)絡(luò)不能收斂到設(shè)定誤差精度的隱含層節(jié)點數(shù)分別為 3,4和11;當(dāng)節(jié)點數(shù)不為3,4和11時,都可以收斂到設(shè)定誤差精度,但是訓(xùn)練步數(shù)全部在1萬步以上,在此優(yōu)化算法下,隱含層節(jié)點的個數(shù)為6時效果最好,最大誤差為 2.53%,平均誤差為 0.92%,訓(xùn)練步數(shù)為106 822;而采用L-M算法,網(wǎng)絡(luò)不能收斂于設(shè)定誤差精度的隱含層節(jié)點數(shù)都不大于 5,當(dāng)節(jié)點數(shù)大于 5時,都可以很快收斂到設(shè)定誤差精度,并且訓(xùn)練步數(shù)全部在400以下,當(dāng)隱含層節(jié)點數(shù)為9時,最大誤差為0.90%,平均誤差為0.33%,訓(xùn)練步數(shù)為18。通過上述對比可知,采用隱含層節(jié)點數(shù)為9的L-M算法,其訓(xùn)練的收斂速度比采用動量梯度下降法要快很多,并且校正的精度比采用動量梯度下降法的收斂速度校正的精度高。
表2 電流的預(yù)測結(jié)果Table 2 Prediction results of electric current
采用上述恒流充電過程中得到的L-M BP神經(jīng)網(wǎng)絡(luò),對采樣電流進(jìn)行校正,然后,根據(jù)校正后的A/D轉(zhuǎn)換值,通過TL494芯片調(diào)節(jié)系統(tǒng)回路中的電流,使之接近電流的設(shè)定基準(zhǔn)。測得基準(zhǔn)電流和實測值之間的相對誤差曲線如圖3所示。
圖3 基準(zhǔn)電流和實測值之間的相對誤差Fig.3 Relative errors between measured currents and basic set-point currents
由圖3可知:在恒流充電過程中,校正前基準(zhǔn)電流和實測值之間的相對誤差隨著電流的增大而減小,校正后基準(zhǔn)電流和實測值之間的相對誤差波動較為平緩;基準(zhǔn)電流和實測值之間的最大相對誤差由校正前的24%左右下降為校正后的3.5%左右;平均相對誤差由校正前的 6.4%左右減小到校正后的 1.2%左右??梢钥闯觯夯鶞?zhǔn)電流和實測值之間的最大相對誤差比校正前明顯下降;平均相對誤差的下降也很顯著。
采用相同的網(wǎng)絡(luò)模型,在恒壓充電、恒流放電過程中,得到電流基準(zhǔn)值與實測值間的最大相對誤差小于 1.1%,平均誤差為 0.5%左右。表明校正后設(shè)定基準(zhǔn)和實測值的誤差也得到了較好控制。
(1) 隱含層節(jié)點數(shù)為9的L-M BP神經(jīng)網(wǎng)絡(luò)算法對工業(yè)采樣的樣本能較快收斂,并且校正效果明顯比采用動量梯度下降法的BP神經(jīng)網(wǎng)絡(luò)的校正效果好。
(2) 在恒流充電過程中,用L-M BP神經(jīng)網(wǎng)絡(luò)算法能將電流的誤差控制在 0.9%以內(nèi);采用通過校正的A/D轉(zhuǎn)換值調(diào)整實際電流,校正后基準(zhǔn)和實測值最大誤差在3.5%左右,表明此方法能在一定程度上提高系統(tǒng)精度。
(3) 對于神經(jīng)網(wǎng)絡(luò)算法,訓(xùn)練樣本的選擇對降低訓(xùn)練成本和提高網(wǎng)絡(luò)泛化能力有較大的影響。訓(xùn)練樣本除了數(shù)量要足夠多外,還應(yīng)涵蓋各種可能出現(xiàn)的樣本類型,以滿足各種樣本組合和擬合精度要求。本文沒有考慮樣本的選擇對網(wǎng)絡(luò)泛化能力的影響,同時也沒有考慮設(shè)備的老化等可能導(dǎo)致影響精度的問題,所以,神經(jīng)網(wǎng)絡(luò)算法能否真正可靠地應(yīng)用在對穩(wěn)定性要求很高的工業(yè)生產(chǎn)設(shè)備上還有待進(jìn)一步驗證。
[1]ZENG Yu-qun, WU Kai, WANG De-yu, et al. Overcharge investigation of lithium ion polymer batteries[J]. Journal of Power Sources, 2006, 160(2): 1302?1307.
[2]龐靜, 盧世剛, 劉莎. 鋰離子電池過充特性的研究[J]. 電化學(xué),2005, 11(4): 398?401.PANG Jing, LU Shi-gang, LIU Sha. A study of overcharge characteristic of lithium-ion cells[J]. Electrochemistry, 2005,11(4): 398?401.
[3]周震濤,覃迎峰. 鋰離子電池過充電行為研究[J]. 電池, 2004,34(5): 326?327.ZHOU Zhen-tao, QIN Ying-feng. A study of the overcharge behavior of Li-ion batteries[J]. Battery, 2004, 34(5): 326?327.
[4]王震坡, 孫逢春, 林程. 不一致性對動力電池組使用壽命影響的分析[J]. 北京理工大學(xué)報, 2006, 26(7): 578?580.WANG Zhen-po, SUN Feng-chun, LIN Chen. An analysis on the influence of inconsistencies upon the service life of power battery packs[J]. Transactions of Beijing Institute of Technology,2006, 26(7): 578?580
[5]陳松林, 李革臣, 武云麗. BP神經(jīng)網(wǎng)絡(luò)在電池分選中的應(yīng)用[J]. 哈爾濱理工大學(xué)學(xué)報, 2001,6(5): 10?13.CHEN Song-lin, LI Ge-chen, WU Yun-li. The application of BP neural network in battery-sorting[J]. Journal of Harbin University of Science and Technology, 2001, 6(5): 10?13.
[6]凌國維, 唐致遠(yuǎn), 王琪. 人工神經(jīng)網(wǎng)絡(luò)在鋰離子動力電池管理中的應(yīng)用[J]. 電源技術(shù), 2006, 130(10): 849?851.LING Guo-wei, TANG Zhi-yuan, WANG Qi. Utilization of artificial neural networks in Li-ion power batteries management[J]. Chinese Journal of Power Source, 2006, 130(10):849?851.
[7]周繼成, 周青山, 韓飄揚. 人工神經(jīng)網(wǎng)絡(luò)[M]. 北京: 科學(xué)普及出版社, 1992: 47?56.ZHOU Jin-cheng, ZHOU Qing-shan, HAN Piao-yang. Artificial neural network[M]. Beijing: Popular Science Press, 1992:47?56.
[8]史春朝. BP神經(jīng)網(wǎng)絡(luò)算法的改進(jìn)及其在PID控制中的應(yīng)用研究[D]. 天津: 天津大學(xué)電氣與自動化工程學(xué)院, 2006: 41?54.SHI Chun-zhao. Study on algorithm improvement of BP neural networks and its application in PID control[D]. Tianjin: School of Electrical and Automation Engineering, Tianjin University,2006: 41?54.
[9]An G. The effect of adding noise during back-propagation training on a generalization performance[J]. Neural Computation,1996, 8(3): 643?671.
[10]何發(fā)祥, 黃英. 用BP網(wǎng)絡(luò)求解土體的導(dǎo)熱系數(shù)[J]. 巖土力學(xué),2000, 21(1): 84?87.HE Fa-xiang, HUANG Ying. Solution of thermal conduction coefficient from BP network[J]. Rock and Soil Mechanics, 2000,21(1): 84?87.