本發(fā)明屬于電池狀態(tài)估計領域,涉及一種基于粒子群優(yōu)化的電池狀態(tài)估計方法。
背景技術:
在二次電池的應用中,需要對soc等電池狀態(tài)進行估計?,F(xiàn)有的技術包括安時積分法、電壓法、狀態(tài)濾波法。在這些方法中,狀態(tài)濾波法的長期精確度最佳。狀態(tài)濾波法中較為常用的一種方法是卡爾曼濾波。
通過卡爾曼濾波進行電池狀態(tài)估計時,需要獲得準確的電池模型,然而目前的技術常使用固定的電池模型參數(shù),難以適應電池使用時電池模型參數(shù)的變化。也有方法通過卡爾曼濾波同時對電池狀態(tài)和電池參數(shù)進行估計,這種方法的缺陷在于,卡爾曼濾波的理論基礎是線性模型,而電池系統(tǒng)呈現(xiàn)很強的非線性特性,因此卡爾曼濾波在對電池系統(tǒng)進行估計時精度下降。同時,如果電池模型存在多個局部最優(yōu)點,卡爾曼濾波容易陷入局部最優(yōu)點,因此對全局最優(yōu)點的搜索能力不強。
為了對非線性的電池系統(tǒng)進行估計,可以采用非線性估計方法對電池參數(shù)進行估計。對于參數(shù)為連續(xù)量的電池系統(tǒng),可以采用粒子群優(yōu)化對電池參數(shù)進行估計。粒子群優(yōu)化是模擬現(xiàn)實世界中鳥群覓食的一種算法,該算法對于非線性系統(tǒng)的估計能力較強,且有一定的全局最優(yōu)點搜索能力。
技術實現(xiàn)要素:
針對上述存在問題或不足,本發(fā)明提供了一種基于粒子群優(yōu)化的電池狀態(tài)估計方法,克服現(xiàn)有技術的局限性。以使得在對電池狀態(tài)進行在線估計時,能夠適應電池模型參數(shù)的變化,從而獲得更精確的電池模型參數(shù)估計,使得電池狀態(tài)的估計更加精確。
一種基于粒子群優(yōu)化的電池狀態(tài)估計方法,其具體步驟如下:
步驟s1、初始化粒子群,初始化狀態(tài)估計器;
首先,根據(jù)模型復雜度和估計精度要求,確定粒子數(shù)量,并根據(jù)電池參數(shù)的取值范圍,初始化粒子群;
然后,根據(jù)電池特性和電池初始狀態(tài),對粒子群中的每個粒子初始化一個狀態(tài)估計器,每個狀態(tài)估計器對應粒子群中的一個粒子;
步驟s2、對于粒子群中的每個粒子,獲得狀態(tài)后驗估計,并比較狀態(tài)后驗估計的精度獲得狀態(tài)估計,再通過狀態(tài)后驗估計得到下一采樣點的狀態(tài)先驗估計;
首先,對于粒子群中的每個粒子,根據(jù)粒子坐標獲得電池參數(shù),并根據(jù)狀態(tài)先驗估計,通過對應的狀態(tài)估計器獲得狀態(tài)后驗估計;
然后,計算粒子適應度,比較粒子適應度獲得狀態(tài)估計;
最后,根據(jù)狀態(tài)后驗估計,通過電池模型獲得下一采樣點的狀態(tài)先驗估計;
步驟s3、根據(jù)狀態(tài)后驗估計的精度,對粒子群進行演化,獲得新的粒子群;
首先,根據(jù)步驟s2所得粒子適應度,更新粒子群中粒子的歷史最優(yōu)值;
然后,根據(jù)電池參數(shù)估計全局性的要求,選取粒子群中領袖數(shù)量,并根據(jù)粒子適應度選取粒子作為領袖;
最后,通過更新公式得到新的子種群后,合并所有子種群得到新的粒子群。
進一步的,所述步驟s3中,更新公式包括速度更新公式和坐標更新公式;
速度更新公式
坐標更新公式
其中,pi,k是粒子坐標,vi,k是粒子速度,δtk是采樣點時間間隔,ppbest,i是粒子的歷史最優(yōu)值,plbest是領袖的歷史最優(yōu)值。γv是慣性系數(shù),α、β是加速常數(shù),這三個系數(shù)用于控制粒子群的搜索特性,其中γv在0至1之間,γv越大,全局搜索能力越強,γv越小,局部搜索能力越強,α、β越大,則粒子對應地更多地向粒子歷史最優(yōu)值或領袖歷史最優(yōu)值搜索。這三個系數(shù)根據(jù)實際需求適當取值。u1、u2是服從n(0,1)的正態(tài)分布的隨機值,u3是服從u(0,1)的均勻分布的隨機值,其作用是加大坐標更新的時間間隔,減弱粒子坐標變化對粒子適應度計算的影響。
進一步的,所述步驟s2中,粒子適應度的計算公式為
其中
進一步的,還包括一個步驟s4:重復步驟s2、s3,以持續(xù)對電池狀態(tài)作出估計。
本發(fā)明在對電池進行狀態(tài)估計時,通過粒子群優(yōu)化,得到電池參數(shù)的估計,且當電池模型有多個局部最優(yōu)點時,相比于局部優(yōu)化方法更容易得到電池模型的全局最優(yōu)估計,從而使得狀態(tài)濾波得到的電池狀態(tài)估計更加精確。
綜上所述,本發(fā)明在對電池狀態(tài)進行在線估計時,能夠適應電池模型參數(shù)的變化,從而獲得更精確的電池模型參數(shù)估計,使得電池狀態(tài)的估計更加精確。
附圖說明
圖1為本發(fā)明的整體流程圖;
圖2為本發(fā)明步驟s1的細節(jié)流程圖;
圖3為本發(fā)明步驟s2的細節(jié)流程圖;
圖4為本發(fā)明步驟s3的細節(jié)流程圖;
圖5為實施例獲得的狀態(tài)估計曲線,其中,soc估計95%置信上限、soc估計95%置信下限根據(jù)狀態(tài)誤差協(xié)方差矩陣估計計算獲得;
圖6為實施例獲得的電壓預測值曲線與電池電壓曲線。
具體實施方式
下面結合附圖及實施例,對本發(fā)明進行進一步詳細說明。
參閱圖1,一種基于粒子群優(yōu)化的電池狀態(tài)估計方法可分為以下步驟:
步驟s1:初始化粒子群,根據(jù)模型復雜度和估計精度要求,確定粒子數(shù)量,并對于粒子群中每個粒子初始化一個狀態(tài)估計器,每個狀態(tài)估計器對應一個粒子群中的粒子。
參閱圖2,步驟s1具體包括步驟s11~s12。
步驟s11:根據(jù)模型復雜度和估計精度要求,確定粒子數(shù)量,并根據(jù)電池參數(shù)的取值范圍,初始化粒子群。
本發(fā)明方法可用于不同電池模型的估計。實際應用時,粒子群的粒子數(shù)量應根據(jù)模型復雜性及所需的估計精度進行確定。粒子數(shù)量越高,估計精度越好,但計算量也越高。本實施例中,使用一階滯變rc模型,一共初始化100個粒子構成粒子群。電池參數(shù)包括放電內(nèi)阻r+、充電內(nèi)阻r-、滯變常數(shù)γ、濾波器常數(shù)α1、α2、g1、g2。其中,γ大于0,α1、α2在0到1之間。根據(jù)經(jīng)驗或歷史數(shù)據(jù),獲得關于電池參數(shù)的取值范圍的估計,根據(jù)電池參數(shù)的取值范圍初始化粒子群。單個粒子的初始坐標為
其中,k為采樣點編號,下標min、max表示各參數(shù)的取值范圍的最小值和最大值,γ0是與γ相關的值,|γ0|=γ,用于限制粒子群中γ為非負值,ζ1,min、ζ1,max、ζ2,min、ζ2,max是與α1、α2的最小、最大值相關的值,|ζi,minormax|=-logai,maxormin,i=1,2,用于限制粒子群中α1、α2值的范圍至(0,1],u是與粒子坐標維數(shù)相同的隨機向量,其各元素服從相互獨立的u(0,1)的均勻分布。符號
單個粒子的初始速度通過隨機分布進行初始化,
其中r是與粒子坐標維數(shù)相同的隨機向量,各元素期望為0。單個粒子初始速度也可以設為0。本發(fā)明實施例中,單個粒子的初始速度vi,k設為0。
步驟s12:根據(jù)電池特性和電池初始狀態(tài),對粒子群中的每個粒子初始化一個狀態(tài)估計器,每個狀態(tài)估計器對應一個粒子群中的粒子。
本實施例中,采用卡爾曼濾波器作為狀態(tài)濾波器。對于任意一個卡爾曼濾波器,初始化其狀態(tài)先驗估計
其中,k是采樣點編號,
步驟s2:對于粒子群中的每個粒子,根據(jù)粒子坐標獲得電池參數(shù),并通過對應的狀態(tài)估計器獲得狀態(tài)后驗估計,計算粒子適應度,比較粒子適應度獲得狀態(tài)估計,最后通過狀態(tài)后驗估計得到下一采樣點的狀態(tài)先驗估計。
參閱圖3,步驟s2具體包括步驟s21~s23。
步驟s21:對于粒子群中的每個粒子,根據(jù)粒子坐標獲得電池參數(shù),并根據(jù)狀態(tài)先驗估計,通過對應的狀態(tài)估計器獲得狀態(tài)后驗估計。
本實施例中,對于粒子pi,k,有
pi,k=[r+r-γ0ζ1ζ2g1g2]
根據(jù)粒子pi,k得到電池參數(shù),即放電內(nèi)阻r+、充電內(nèi)阻r-、滯變常數(shù)γ=|γ0|、濾波器常數(shù)α1=exp(-|ζ1|)、α2=exp(-|ζ2|)、g1、g2。
由電池參數(shù)得到卡爾曼濾波的狀態(tài)方程
輸出方程
狀態(tài)矩陣
輸出矩陣
ck=[ocv′(zk)1g1g2]
其中,ik是電池電流,通過測量獲得,
得到卡爾曼增益
其中,ev為輸出噪聲協(xié)方差,根據(jù)測量儀器的精確度、輸出方程的精確度以及輸出噪聲的大小綜合確定。
根據(jù)輸出方程得到電壓預測值
從而得到狀態(tài)后驗估計
以及狀態(tài)誤差協(xié)方差矩陣后驗估計
步驟s22:計算粒子適應度,比較粒子適應度獲得狀態(tài)估計。
本實施例中,對于任一粒子,其粒子適應度為
其中
步驟s23:根據(jù)狀態(tài)后驗估計,通過電池模型獲得下一采樣點的狀態(tài)先驗估計。
本實施例中,根據(jù)狀態(tài)方程得到下一采樣點的狀態(tài)先驗估計為
其中
又根據(jù)狀態(tài)矩陣得到下一采樣點的狀態(tài)誤差協(xié)方差矩陣先驗估計為
其中,ew為狀態(tài)噪聲協(xié)方差矩陣,其各分量值根據(jù)狀態(tài)方程的精確度及誤差相關性綜合確定。
步驟s3:根據(jù)步驟s2所得粒子適應度,對粒子群進行演化,獲得新的粒子群。
參閱圖4,步驟s3具體包括步驟s31~s33。
步驟s31:根據(jù)粒子適應度,更新粒子群中粒子的歷史最優(yōu)值。
本實施例中,根據(jù)狀態(tài)后驗估計的精度,即粒子適應度
步驟s32:根據(jù)電池參數(shù)估計全局性的要求,選取粒子群中領袖數(shù)量,并根據(jù)粒子適應度選取粒子作為領袖。
領袖粒子數(shù)量的選取根據(jù)系統(tǒng)的局部最優(yōu)點數(shù)量確定,局部最優(yōu)點越多,對全局搜索性能要求越大,則領袖粒子數(shù)量越大。
本實施例中,將100個粒子分為10個子種群,其方法為,選取粒子適應度最高的10個粒子作為子種群的領袖,依次選取剩余粒子中粒子適應度最低的9個粒子與粒子適應度最高的一個領袖一同構成一個子種群。
步驟s33:通過更新公式得到新的粒子群。
本發(fā)明實施例中,對于每個子種群,各粒子為pi,k,各粒子速度為vi,k,各粒子歷史最優(yōu)值為ppbest,i領袖歷史最優(yōu)值為plbest,則更新公式包括速度更新公式
以及坐標更新公式
其中,γv是慣性系數(shù),α、β是加速常數(shù),這三個系數(shù)用于控制粒子群的搜索特性,其中γv在0至1之間,γv越大,全局搜索能力越強,γv越小,局部搜索能力越強,α、β越大,則粒子對應地更多地向粒子歷史最優(yōu)值或領袖歷史最優(yōu)值搜索。這三個系數(shù)根據(jù)實際需求適當取值。u1、u2是服從n(0,1)的正態(tài)分布的隨機值,u3是服從u(0,1)的均勻分布的隨機值,其作用是加大坐標更新的時間間隔,減弱粒子坐標變化對粒子適應度計算的影響。
通過更新公式得到新的子種群后,合并所有子種群得到新的粒子群。
完成上述步驟后,重復步驟s2、s3,以獲得電池狀態(tài)的實時估計。
圖5為實施例獲得的狀態(tài)估計曲線,其中,soc估計95%置信上限、soc估計95%置信下限根據(jù)狀態(tài)誤差協(xié)方差矩陣估計計算獲得;圖6為實施例獲得的電壓預測值曲線與電池電壓曲線。
通過圖5、圖6可以看出本發(fā)明所述方法能較好地對電池狀態(tài)進行估計。