唐駿宇,馮長江
(軍械工程學院 車輛與電氣工程系,石家莊 050003)
基于模糊辨識算法的蓄電池荷電狀態測量方法與模塊設計
唐駿宇,馮長江
(軍械工程學院 車輛與電氣工程系,石家莊 050003)
針對蓄電池荷電狀態在線監測中對準確度和測量速度的要求,提出采用模糊辨識算法對蓄電池進行系統辨識;并通過對蓄電池的荷電狀態與內阻、端電壓數據的分析,建立了蓄電池荷電狀態的模糊規則模型,并以此進行蓄電池荷電狀態的測量,得到均方誤差為0.005 2;測量結果表明基于模糊辨識算法的蓄電池荷電狀態測量能夠滿足蓄電池在線監測的要求,且易于硬件實現;文章還使用DSP Builder設計了蓄電池荷電狀態測量模塊,其中內阻測量采用了特征分解譜估計的信號提取方法,荷電狀態測量則實現了模糊辨識算法所得出的模糊規則模型的運用。
系統辨識模糊辨識算法荷電狀態
蓄電池作為電源系統的備用電源,已廣泛應用于工業生產、交通、通信等行業。如果電池失效或容量不足,就有可能造成重大事故,所以,對蓄電池的運行參數進行全面地在線監測,對提高直流系統的安全運行、提高供電系統的可靠性和自動化程度都有著十分重要的意義。對蓄電池狀態的監測,主要包括對蓄電池的工作狀態(如端電壓、電流、荷電狀態)的監測,以及對其性能狀態(如容量、健康狀況、壽命)的監測。其中蓄電池的荷電狀態(state of charge,SOC)是蓄電池工作狀態監測的核心,對荷電狀態的準確測量是評估蓄電池剩余工作時間,制定蓄電池充放電控制策略,維持蓄電池正確使用模式的關鍵。
蓄電池的荷電狀態(state of charge,SOC)定義為電池的剩余容量與額定容量的比[1],即:
SOC=C剩/C額
當電池完全滿電時其SOC=1,而完全放電后其SOC=0。其中額定容量是指在標準測量環境下(25℃,1個標準大氣壓)通過10小時率恒流放電測試得到的蓄電池容量[1-2]。研究表明[3-4],VRLA蓄電池的SOC與其開路電壓存在明顯的相關性,利用此相關性可通過測量電池的開路電壓來確定其SOC。但采用開路電壓法需要測量蓄電池開路電壓,而且由于蓄電池內部的張弛過程的存在,負載的變化將使蓄電池的端電壓連續變化,至少在兩個小時后才能達到穩定值,導致并不能通過短時間內的電路開閉來確定蓄電池的開路電壓,并不適合在線的SOC測量;VRLA蓄電池的內阻已被證明與其SOC有密切的聯系,其相關系數可達0.8~0.98[3],因此通過測量內阻數據可以得到蓄電池的SOC。然而蓄電池內阻不僅與其SOC相關,還與蓄電池本身的結構、健康狀況、蓄電池工作的環境溫度、內阻測量方法相關。因此,傳統基于內阻的SOC測量方法需要對所測量的每個蓄電池進行建模,得出相應的SOC-內阻模型,才能實現SOC的測量。
蓄電池作為一個復雜的化學系統,很難用一個簡潔的、易于硬件實現的數學模型對其進行準確描述。所以對于這樣的復雜系統,可以采用系統辨識的方法對其進行建模。所謂系統辨識是在輸入輸出數據的基礎之上,從一類系統中確定一個與所測系統等價的系統,而模糊辨識算法是模糊推理系統在系統辨識中的應用,即通過對模糊推理系統進行參數辨識,來逼近所測的系統,從而建立與所測系統等價的模型。
美國學者L.A.Zadeh于1965年提出模糊集合理論,為大量的研究復雜的、不確定性問題的理論和技術提供了數學依據。基于模糊集理論的研究包括模糊推理系統、模糊控制理論等,它們被廣泛運用于諸如模式識別、故障診斷、醫療診療、人工智能等需要處理實際模糊性信息的場合,也同樣用于復雜系統的建模當中。其中運用于模糊辨識算法的模糊推理系統根據其結論命題的形式分為語言模糊模型、模糊關系模型、T-S模糊規則模型。T-S模糊規則模型由Takagi和Sugeno于1985年提出,兩人還證明了T-S模糊規則模型能夠高度逼近任意非線性系統。與其他模糊推理系統相比,T-S模糊規則模型所使用的模糊規則較少,而且被應用在模型中的規則相對簡單,因此在模糊辨識算法中通常采用T-S模糊規則模型作為待辨識的模糊推理系統[5]。
T-S模糊規則模型的模糊規則可以描述如下:
Ri: Ifx1isAi1andx2isAi2and…
andxpisAip
thenyi=fi(x);
i=1,2,…,K;x=(x1,x2,…,xp)T
其中:x∈Rp為輸入變量;yi∈R是輸出變量;Ri表示第i條規則;K為規則數;Ai為第i條規則的前提模糊集合,它通過隸屬函數來定義:
(1)
上述規則描述表示出了系統的輸入空間模糊劃分:假設第i個輸入變量xi的間隔區間被均分為Ni個模糊集合Ai1,Ai2,...,AiNi,i=1,2,···,p。這樣輸入空間被分成N1,N2,···,Np個模糊子空間(A1j1,A2j2,···,Apjp),其中:
j1=1,2,···,N1,
j2=1,2,···,N2,
?
jp=1,2,···,Np
對于每一個空間劃分,需將隸屬函數應用于前提模糊集合當中。在模糊辨識算法中,模糊推理系統隸屬函數的選擇會影響模糊辨識算法的性能。一般根據具體問題要求來確定隸屬度函數。常見的隸屬函數包括三角形、梯形、鐘形等。其中三角形隸屬函數形式簡單,易于實現,并且計算耗費時間少,實時性好,因此在對蓄電池在線監測系統中運用的模糊辨識算法里采用三角形隸屬函數,其表達形式如式(2)所示:
(2)

在模糊辨識算法中一般用參數化的形式來表示結論函數,在所有規則當中結論函數的結構保持一致,只有參數是變化的,模糊辨識算法的核心即是對這些參數進行辨識。通常情況下fi(x)以線性化表示,即:
(3)
在T-S模型中,其推理可以簡化成代數的形式(類似于模糊—平均去模糊形式):
(4)
其中對于每一條規則Ri,有:
(5)

(6)
其中:
p= (b10,b11,b12,…,b1p,b20,b2 1,b22,…,b2p,…,bKp)T
將N組輸入輸出代入上式可得到矩陣等式:
Z=Xp
(7)
對模糊參數向量p的辨識采用遞推最小二乘算法,令X的第i個行向量為xi,Z的第i個分量為zi,則遞推算法為:
(8)
(9)

其初始條件為:p0的分量為0或盡量小的隨機數,S0=αI,α一般取大于10 000的實數[5],I是6×6維單位矩陣。
模糊辨識算法可表述為如下步驟:
1)確定輸入變量,并對每一個輸入空間進行劃分(確定規則數);
2)選擇隸屬度函數,計算前提參數;
3)代入輸入輸出數據,形成矩陣等式;
4)對參數向量p進行辨識;
5)以均方誤差作為性能指標:
(10)
如果J小于事先設定的閾值或者相鄰兩次不變,則轉到6),否則轉到4)。
6)如果J滿足辨識精度,則辨識算法結束,否則增加規則數,轉到2)。
由于蓄電池的端電壓和內阻是與荷電狀態密切相關的兩個變量,而它們任何一個都無法單獨用于在線測量荷電狀態。所以考慮同時采用兩者作為運用模糊辨識算法測量荷電狀態時的輸入變量。為使輸入變量不受電池具體型號規格的影響,對電池的內阻及端電壓進行歸一化處理:
(11)
通過對由風帆公司生產的型號為6-QW-120b的蓄電池組進行放電實驗得到模糊辨識算法所需的輸入輸出數據。實驗采用ITECH公司生產的IT-B1004電池充放電測試系統同時采用日本HIOKI公司生產的BT3563蓄電池測試儀對充放電過程中電池的端電壓及內阻進行測量。實驗室環境溫度為20℃,實驗前電池預先充滿電后靜置1 h。放電時采用3 h率放電(電流I=0.25Cs=30 A),前30 min內每隔2 min測量并記錄電池的端電壓和內阻,而后每隔5 min記錄一次,當電壓下降至1.9 V/單體時每隔2 min記錄一次,至電壓下降至1.8 V/單體時放電完成。實驗得到輸入輸出數據共38組。選擇前25組數據作為參數辨識數據,后14組數據作為算法檢驗數據,對第1節所述模糊規則模型進行參數辨識以逼近蓄電池SOC。此時的模糊規則模型為雙輸入單輸出的T-S模糊規則模型。通過辨識最終得到的參數向量:
p=(-1007.9677, 148.4810,987.2122,
38.7863,-268.3349, 259.0657)
模型訓練及測試結果如圖1所示。

圖1 模型訓練及測試結果
計算得到性能指標J=0.052 2,此時模糊規則可以表述為:
R1: Ifx1isA11andx2isA12
theny1= -1 007.967 7+148.481 0x1+987.212 2x2;
R2: Ifx1isA21andx2isA22
theny2= 38.786 3-268.334 9x1+ 259.065 7x2。
蓄電池測量模塊總體設計如圖2所示。

圖2 蓄電池測量模塊總體設計
其中:FPGA內的測量模塊通過采用DSP Builder來實現。DSP Builder是Altra公司開發的用于利用FPGA實現DSP功能的系統級軟件。它提供了一個從MATLAB/Simulink直接到FPGA硬件實現的設計接口。DSP Builder極大地簡化了DSP功能的硬件實現流程,并提供了系統級仿真測試功能,設計者可以不了解硬件描述語言HDL的設計流程,不必懂硬件描述語言本身,也能進行DSP應用系統的FPGA開發[6]。在運用DSP Builder進行DSP應用系統的FPGA開發時,必須使用DSP Builder所提供的模塊來搭建系統,從而保證系統的可綜合性。
3.1 內阻測量
內阻采用基于特征分解譜估計的蓄電池內阻測量方法[7],而對于蓄電池內阻檢測中的信號提取,其響應信號為頻率已知的正弦信號,所以特征分解譜估計得出的頻率分量是指復頻率分量,因而一個實際的正弦信號分量對應的是正負兩個幅值為A/2的復頻率分量,即:
(12)
而事實上在蓄電池內阻測量過程中,我們所關心的只是信號的幅值。對于單一的正弦信號,其兩個復頻率分量功率是相等的,所以只需求得最大特征值所對應復頻率分量的功率。于是所取的信號自相關矩陣簡化為如式(13)所示只包含一個頻率分量的形式。此時特征值:
(13)
因此得到幅值:
(14)
特征分解譜估計方法中自相關函數估計通過采用delay模塊實現對待測隨機序列的移位,并通過延時累加的方式完成,如圖3所示。增益模塊Gain采用二進制移位運算的方式實現,If Statement模塊使N=1 024時輸出自相關函數的估計值。

圖3 自相關函數估計子模塊
通過改變圖中Delay1的延遲可以計算式2-19中m為不同值時的自相關函數值。這里取m=1~8,用8個自相關函數估計模塊同時計算得出。得到的自相關矩陣輸入至RAM中儲存,如圖4所示,Rm由8個自相關函數估計子模塊組成,通過多路選擇器依次輸出所得結果,最后得到M=8階自相關函數矩陣R。

圖4 自相關函數矩陣的建立
自相關矩陣的最大特征值和所對應特征向量通過冪法迭代求得,其算法步驟如下:
1)輸入矩陣A,初始特征向量x0,初始特征值λ=0,迭代次數N;

3)xk + 1= Ayk,λ=max(|xk+1|);
4)k=N-1時輸出xk+1,λ。
第(3)步中矩陣的乘法通過移位運算模塊實現,如圖5所示,其中R是自相關矩陣輸入,x0=(1,1,1,1,1,1,1,1)為初始特征向量。

圖5 矩陣相乘子模塊
完整的冪法求矩陣最大特征值和對應特征向量的模塊如圖6所示,圖中P為輸出最大特征值,P1~P8為特征向量的8個元素,經過1 376個時間單位后輸出結果。

圖6 冪法求矩陣最大特征值和對應特征向量


圖7 幅值檢測子模塊
最終的內阻檢測是蓄電池交流響應幅值與精密電阻交流相應幅值的比值再乘上精密電阻阻值的結果,如圖8所示,精密電阻阻值通過Gain模塊引入:

圖8 內阻測量模塊
3.2 SOC測量

則有:


圖計算子模塊
最后根據式(7)計算SOC值,SOC計算模塊如圖10所示。

圖10 SOC計算模塊
本文采用模糊辨識算法,通過對蓄電池的荷電狀態與內阻、端電壓數據的分析,建立了蓄電池荷電狀態的模糊規則模型,測量均方誤差為0.005 2。然后使用DSPBuilder設計了蓄電池荷電狀態測量模塊。模塊可下載至FPGA建立硬件系統,并進行進一步分析。
[1]鄒幽蘭.基于退役鋰動力電池容量、內阻和荷電狀態的建模與參數估計[D].長沙: 中南大學, 2014.
[2] 王斯成,陳子平,楊 軍,等.蓄電池剩余容量(SOC)數學模型探討和在線測試儀的開發[J].太陽能學報,2005, 26(1): 6-13.
[3] 王吉校,錢希森.閥控鉛酸蓄電池容量測試技術研究[J].蓄電池,2007,2: 57-63.
[4]GB/T19638.2.-2005.固定型閥控密封式鉛酸蓄電池標準的研究與制定[S] .
[5] 劉福才. 非線性系統的模糊模型辨識及其應用[M].北京:國防工業出版社,2006.
[6] 宋烈武.EDA技術與實踐教程[M]. 北京:電子工業出版社,2009.
[7] 唐駿宇, 馮長江. 基于特征分解譜估計的蓄電池內阻檢測方法[J]. 計算機測量與控制,2016,24(6):37-40.
Battery State of Charge Measurement Methods and Modular Design Based on Fuzzy Identification Algorithm
Tang Junyu, Feng Changjiang
(Department of Vehicle and Electrical Engineering, Ordnance Engineering College, Shijiazhuang 050003 China)
According to the accuracy and speed requirements of battery State of Charge measurement for online monitoring, this paper presents a battery system identification based on Fuzzy Identification Algorithm. And through the analysis of battery State of Charge and internal resistance, voltage-side data, the fuzzy rule model of battery State of Charge is built. The measuring mean square error of the model is 0.005 2. Measurement results show that method for the State of Charge of the battery measuring based on Fuzzy Identification Algorithmcan battery-line monitoring to meet the requirements, and easily implemented in hardware. The article also use the DSP Builder to design the battery State of Charge measurement module, where the resistance was measured using the signal feature extraction method based on Eigendecomposition Spectrum Estimation,and State of Charge measurement is to achieve the uses of the fuzzy rule model derived from Fuzzy Identification Algorithm.
system identification; fuzzy identification algorithm; state of charge
2016-04-07;
2016-06-21。
唐駿宇(1992-),男,湖南益陽人,在讀碩士研究生,主要從事蓄電池狀態監測技術方向的研究。
馮長江(1963-),男,河北石家莊人,教授,碩士生導師,主要從事裝備電氣性能檢測與智能系統方向的研究。
1671-4598(2017)02-0039-04
10.16526/j.cnki.11-4762/tp.2017.02.010
TP311
A