楊麗君,劉 博,王 軍,陳天群,雷俊杰
(1.南京理工大學(xué)自動(dòng)化學(xué)院,江蘇 南京 210094;2.上海機(jī)電研究所,上海 201109)
脫靶量是始點(diǎn)在目標(biāo)上,終點(diǎn)在彈頭上的一個(gè)矢量。脫靶量的精確預(yù)測(cè)是實(shí)現(xiàn)后續(xù)閉環(huán)校射的基礎(chǔ)。所以,為完成真正意義上的火控系統(tǒng)閉環(huán)控制,需要提高脫靶量預(yù)測(cè)的精度。
建立脫靶量預(yù)測(cè)模型,首先需要對(duì)射擊誤差的特性規(guī)律進(jìn)行分類與分析。查閱國(guó)內(nèi)外學(xué)者關(guān)于誤差源的分析研究可知,脫靶量可以分為確定性誤差分量和隨機(jī)誤差分量。確定性誤差通常也稱為系統(tǒng)誤差,在工程應(yīng)用中一般以常量代替;隨機(jī)誤差分量可依據(jù)時(shí)間相關(guān)性將其分為可修正誤差和不可修正誤差。綜合考慮誤差源特性后,疊加生成誤差序列。
預(yù)測(cè)彈丸與已發(fā)彈丸之間的相關(guān)性是建立各階次預(yù)測(cè)模型的基礎(chǔ)。目前,廣泛使用的脫靶量預(yù)測(cè)模型大多僅考慮只有前后兩發(fā)彈之間存在相關(guān)性的一階模型[1-3],但是,隨著火炮射速的不斷提高,尤其是在射頻很高的情況下,一階誤差模型的假定誤差較大,與實(shí)際不符。因此,本文對(duì)高階模型進(jìn)行相關(guān)研究。
傳統(tǒng)卡爾曼濾波算法是基于最小方差估計(jì)的遞推式濾波方法,在動(dòng)態(tài)系統(tǒng)的估計(jì)、預(yù)測(cè)和控制中使用廣泛[4]。在系統(tǒng)狀態(tài)已知,過(guò)程噪聲和測(cè)量噪聲的統(tǒng)計(jì)特性精確的情況下,傳統(tǒng)卡爾曼濾波算法能夠?qū)崿F(xiàn)最優(yōu)估計(jì)。但是,實(shí)際應(yīng)用中的系統(tǒng)狀態(tài)大都是先驗(yàn)未知,而且預(yù)測(cè)模型單一造成預(yù)測(cè)的精度較低、穩(wěn)定性較差,甚至造成濾波發(fā)散。目前,國(guó)內(nèi)外學(xué)者提出了一系列基于傳統(tǒng)卡爾曼濾波的改進(jìn)算法來(lái)解決這些問(wèn)題,從而提高卡爾曼濾波的精度和普適性。
文獻(xiàn)[5]提出了一種Sage-Husa 自適應(yīng)濾波算法,該算法通過(guò)協(xié)方差匹配技術(shù)實(shí)現(xiàn)在線估計(jì)噪聲統(tǒng)計(jì)特性;文獻(xiàn)[6]提出了一種通過(guò)任意時(shí)刻施行 2 次傳統(tǒng)卡爾曼濾波算法的方法,來(lái)自適應(yīng)調(diào)整測(cè)量噪聲協(xié)方差,以提高濾波精度;文獻(xiàn)[7]利用新息自適應(yīng)估計(jì)過(guò)程噪聲和測(cè)量噪聲的協(xié)方差矩陣,以達(dá)到提高濾波性能、防止濾波發(fā)散的目的。綜上可知,改進(jìn)卡爾曼濾波算法的關(guān)鍵在于如何最優(yōu)估計(jì)噪聲統(tǒng)計(jì)特性,以此來(lái)提高卡爾曼濾波精度和防止濾波發(fā)散。但對(duì)于實(shí)際的非線性系統(tǒng),很難獲得精確的噪聲統(tǒng)計(jì)特性來(lái)建立系統(tǒng)模型,這就需要綜合考慮系統(tǒng)模型和噪聲統(tǒng)計(jì)特性,來(lái)提高卡爾曼濾波的普適性和濾波精度[8-9]。因此,本文從系統(tǒng)建模的角度,提出一種基于新息的自適應(yīng) Kalman 濾波算法。
脫靶量在嚴(yán)格意義上表征為射彈與目標(biāo)之間的最小矢量距離。但是在實(shí)際應(yīng)用中,通常分為二維脫靶量和三維脫靶量,二維脫靶量主要包含高低角誤差和方位角誤差,三維脫靶量主要包含方位角誤差、高低角誤差和距離誤差[10]。為便于后續(xù)需要實(shí)現(xiàn)閉環(huán)控制,本文采用的是二維脫靶量,即研究方位角誤差和高低角誤差。因?yàn)橥桓吲谖淦飨到y(tǒng)設(shè)備引起的射擊誤差分量的相關(guān)系數(shù)和均方差屬性相同,所以本文以某一方向的脫靶量(高低脫靶量)進(jìn)行研究,同樣的研究方法適用于另一方向的脫靶量(方位脫靶量)。
假設(shè)彈目矢量距離最小時(shí)的彈丸坐標(biāo)和目標(biāo)坐標(biāo)分別為(x,y,z)和(xe,ye,ze),則脫靶量高低角φe和脫靶量方位角αe的計(jì)算公式如下:
(1)
(2)
脫靶量偏差是彈丸位置的實(shí)際值與理想值之差,射擊誤差是彈丸位置的理想值與實(shí)際值之差,故將脫靶量的始點(diǎn)與終點(diǎn)對(duì)調(diào)后的矢量稱為射擊誤差。射擊誤差的分解也就是脫靶量的分解。
脫靶量是各類誤差的綜合反應(yīng)結(jié)果,為了更好地校正誤差,需要對(duì)產(chǎn)生脫靶量的誤差進(jìn)行分解,依據(jù)武器系統(tǒng)各階子系統(tǒng)的階序,逐步找出導(dǎo)致脫靶量的所有原始誤差(誤差源)所在的部位與產(chǎn)生的原因,為建立誤差源與脫靶量間的數(shù)學(xué)模型,進(jìn)一步論證、設(shè)計(jì)、檢測(cè)武器系統(tǒng)的脫靶量及其各個(gè)分系統(tǒng)的誤差指標(biāo)奠定技術(shù)基礎(chǔ)[11]。
本節(jié)從產(chǎn)生原因和統(tǒng)計(jì)特性兩個(gè)方面對(duì)誤差源進(jìn)行分析,根據(jù)分析結(jié)果進(jìn)行分解與建模。
1)按產(chǎn)生原因分解誤差源
依照武器系統(tǒng)各階子系統(tǒng)的階序,找出導(dǎo)致產(chǎn)生脫靶量的所有原始誤差所在部位與產(chǎn)生原因,將其分解為以下四部分,圖1所示為脫靶量傳遞過(guò)程。
圖1 脫靶量傳遞過(guò)程
①火控解算誤差
其主要包括氣象條件誤差、彈道條件誤差、基線修正誤差、目標(biāo)運(yùn)動(dòng)假定誤差、射表處理誤差。
②隨動(dòng)誤差
其包括:對(duì)于人工操炮的武器系統(tǒng),由于操炮手不能實(shí)時(shí)準(zhǔn)確地跟蹤火控系統(tǒng)解算出的射擊諸元而導(dǎo)致的誤差;對(duì)于采用隨動(dòng)系統(tǒng)實(shí)現(xiàn)自動(dòng)跟蹤的武器系統(tǒng),由于在實(shí)現(xiàn)實(shí)時(shí)跟蹤時(shí),驅(qū)動(dòng)軸間存在間隙、摩擦等因素而導(dǎo)致的誤差。
③火炮誤差
其主要包括火炮靜態(tài)誤差和火炮動(dòng)態(tài)誤差?;鹋陟o態(tài)誤差,即火炮與目標(biāo)均靜止時(shí),火炮的調(diào)平、對(duì)正誤差;火炮動(dòng)態(tài)誤差,即火炮的運(yùn)動(dòng)未加檢測(cè)或雖加檢測(cè)、調(diào)平、對(duì)正,但未調(diào)整到位所導(dǎo)致的誤差。
④射彈散布誤差
在上述三種誤差為零的情況下仍出現(xiàn)的彈目偏差。
2)按統(tǒng)計(jì)特性分解誤差源
誤差源可以通過(guò)對(duì)射擊誤差的遞階分解得到,各種誤差源導(dǎo)致的射擊誤差所具有的隨機(jī)特性有明顯區(qū)別。如果依據(jù)統(tǒng)計(jì)特性將前述的誤差源進(jìn)行分類,可以分為不相關(guān)誤差、強(qiáng)相關(guān)誤差、弱相關(guān)誤差、系統(tǒng)誤差。
各誤差的狀態(tài)方程及組成情況如下:
(3)
構(gòu)成系統(tǒng)誤差的誤差源是射表處理誤差。
②強(qiáng)相關(guān)誤差xq狀態(tài)方程
(4)
構(gòu)成強(qiáng)相關(guān)誤差的誤差源是氣象條件誤差,彈道條件誤差,基線修正誤差。
③弱相關(guān)誤差xr狀態(tài)方程
(5)
構(gòu)成弱相關(guān)誤差的誤差源是觀瞄設(shè)備測(cè)量誤差,操炮誤差,目標(biāo)運(yùn)動(dòng)假定誤差。
④不相關(guān)誤差xb狀態(tài)方程
(6)
構(gòu)成不相關(guān)誤差的誤差源是射彈散布誤差。
基于前面誤差的分析與歸類,可將射擊誤差(脫靶量)序列的狀態(tài)方程與輸出方程歸納為:
(7)
其中:
xr(k)=(xr(k),xr(k-1),…,xr(k-N+1))T
(8)
N表示脫靶量模型的階數(shù),表示k時(shí)刻狀態(tài)只與前N個(gè)時(shí)刻相關(guān)。
對(duì)誤差源參數(shù)進(jìn)行設(shè)置,疊加生成脫靶量序列,射擊誤差分量的均方差及相關(guān)系數(shù)如表1所示。因?yàn)檎J(rèn)為同一高炮武器系統(tǒng)設(shè)備引起的射擊誤差分量的相關(guān)系數(shù)相等,且均方差也一樣,所以方位脫靶量與高低脫靶量特性一樣,本文針對(duì)某一方向的脫靶量(高低)進(jìn)行的研究。在Matlab中進(jìn)行仿真得到脫靶量序列,假設(shè)彈丸發(fā)射時(shí)間間隔為20 ms,脫靶量時(shí)間序列如圖2所示。假設(shè)火控系統(tǒng)的第k次射擊誤差滿足:
X(k)=a+xq(k)+xr(k)+xb(k)
(9)
不相關(guān)誤差、強(qiáng)相關(guān)誤差、弱相關(guān)誤差、系統(tǒng)誤差的射擊誤差分量均方差及其相關(guān)系數(shù)的設(shè)定如表1中數(shù)據(jù)所示。
表1 射擊誤差分量均方差與相關(guān)系數(shù)
根據(jù)前述的射擊誤差模型建立以及對(duì)誤差分量均方差值、相關(guān)系數(shù)的設(shè)定,在Matlab中生成射擊誤差序列如圖2所示。
圖2 射擊誤差序列圖
脫靶量預(yù)測(cè)模型的建立與階次狀態(tài)有關(guān)[11-16]。
1)脫靶量的一階預(yù)測(cè)模型,即表示k時(shí)刻脫靶量只與前一個(gè)時(shí)刻相關(guān)。
(10)
2)脫靶量的二階預(yù)測(cè)模型,表示k時(shí)刻脫靶量只與前兩個(gè)時(shí)刻相關(guān)。
(11)
3)脫靶量的三階預(yù)測(cè)模型,即表示k時(shí)刻脫靶量只與前三個(gè)時(shí)刻相關(guān)。
(12)
兩者之間的相關(guān)性會(huì)受到中間變量的影響。在考慮這些因素時(shí)即為自相關(guān),xt時(shí)刻與xt-q時(shí)刻的自相關(guān)系數(shù)表示為
(13)
離散卡爾曼濾波基本公式可參考文獻(xiàn)[8-9],本文不作詳細(xì)描述。
(14)
其中,Xk為被估計(jì)量,Φk|k-1為狀態(tài)轉(zhuǎn)移矩陣,Γ(k)為系統(tǒng)噪聲矩陣,ωk-1為k時(shí)刻系統(tǒng)噪聲矩陣,Vk為k時(shí)刻測(cè)量噪聲,Hk為觀測(cè)矩陣,Yk為k時(shí)刻量測(cè)向量。
離散型的傳統(tǒng)卡爾曼濾波算法具體步驟如下:
假設(shè)系統(tǒng)的過(guò)程噪聲和量測(cè)噪聲都是均值為零且互不相關(guān)的高斯白噪聲,其k時(shí)刻協(xié)方差矩陣分別為Q、R。
1)計(jì)算濾波狀態(tài)預(yù)測(cè)
(15)
2)計(jì)算其相應(yīng)的預(yù)測(cè)協(xié)方差
P(k|k-1)=Φ(k)P(k-1|k-1)Φ(k)T+
Γ(k)QΓ(k)T
(16)
隨后卡爾曼濾波結(jié)合了量測(cè)信息與預(yù)測(cè)信息再次更新了狀態(tài)信息,基于最小方差的原則實(shí)現(xiàn)狀態(tài)更新。
3)計(jì)算濾波增益矩陣
K(k)=P(k|k-1)H(k)T*
[H(k)P(k|k-1)H(k)T+R]-1
(17)
4)計(jì)算k時(shí)刻狀態(tài)估計(jì)
(18)
5)計(jì)算k時(shí)刻估計(jì)誤差方差
P(k|k)=[Ι-K(k)H(k)]P(k-1)
(19)
在卡爾曼濾波中是根據(jù)預(yù)測(cè)遞推方程來(lái)進(jìn)行迭代預(yù)測(cè),這將造成一定程度的延遲性??柭鼮V波中的噪聲協(xié)方差包括過(guò)程噪聲協(xié)方差矩陣Q和測(cè)量噪聲協(xié)方差矩陣R。實(shí)際應(yīng)用中的Q和R往往是不固定的,常采用默認(rèn)值和經(jīng)驗(yàn)值。Q和R的精確度會(huì)影響卡爾曼濾波的性能,本文采用新息來(lái)自適應(yīng)估計(jì)Q和R。
1)計(jì)算k時(shí)刻新息
(20)
2)計(jì)算k時(shí)刻新息協(xié)方差
C(k)=H(k)P(k|k-1)H(k)T+R(k)
(21)
3)更新計(jì)算新息的過(guò)程噪聲協(xié)方差矩陣
由式(17)和式(19)可推出Q(k-1)的表達(dá)式,穩(wěn)定濾波時(shí)均方誤差估計(jì)趨于0,所以,Q(k-1)≈K(k)H(k)P(k|k-1),將式(21)代入式(18),得基于新息的過(guò)程噪聲協(xié)方差矩陣Q的自適應(yīng)矩陣為
Q(k-1)=K(k)C(k)H(k)K(k)T
(22)
4)更新計(jì)算測(cè)量噪聲協(xié)方差矩陣
由式(22)變形可得基于新息的測(cè)量噪聲協(xié)方差矩陣R的自適應(yīng)矩陣為
R(k)=C(k)-H(k)P(k|k-1)H(k)T
(23)
5)迭代計(jì)算
將考慮新息得到的式(22)和式(23),代入式(16)至式(19)中進(jìn)行迭代計(jì)算,在一定程度上可以解決噪聲統(tǒng)計(jì)帶來(lái)的問(wèn)題,從而提高脫靶量預(yù)測(cè)的精度。
本文設(shè)計(jì)的自適應(yīng)新息卡爾曼濾波流程圖如圖3所示。
圖3 自適應(yīng)新息卡爾曼濾波流程圖
同一高炮武器系統(tǒng)設(shè)備引起的射擊誤差分量即方位脫靶量與高低脫靶量的相關(guān)系數(shù)、均方差相似,因此,這里著手于高低脫靶量的研究,同樣的研究方法適用于方位脫靶量。
本文采用的樣本數(shù)據(jù)經(jīng)驗(yàn)證均是符合脫靶量序列特性的平穩(wěn)序列。給定的脫靶量序列如圖4所示,隨機(jī)脫靶量序列則根據(jù)上述分析得到的各個(gè)誤差源特性疊加生成。隨機(jī)脫靶量序列在后續(xù)仿真中一一展示。
圖4 給定脫靶量序列圖(120發(fā)彈丸脫靶量)
根據(jù)給定的脫靶量序列,分別在傳統(tǒng)卡爾曼濾波算法和自適應(yīng)新息卡爾曼濾波算法中進(jìn)行仿真[17-18]。預(yù)測(cè)遞推步數(shù)的選取為2,預(yù)測(cè)模型分別為一階脫靶量預(yù)測(cè)模型、二階脫靶量預(yù)測(cè)模型和三階脫靶量預(yù)測(cè)模型。用已知的90個(gè)彈丸脫靶量預(yù)測(cè)后續(xù)30發(fā)彈丸脫靶量,預(yù)測(cè)結(jié)果分別如圖5~7所示。
圖5~7中,藍(lán)色星號(hào)折線代表給定脫靶量序列,紅色圓圈折線代表各階次多步傳統(tǒng)卡爾曼濾波算法的預(yù)測(cè)結(jié)果,黃色菱形折線代表各階次多步自適應(yīng)新息卡爾曼濾波算法的預(yù)測(cè)結(jié)果。
圖5 一階模型預(yù)測(cè)結(jié)果對(duì)比圖
圖6 二階模型預(yù)測(cè)結(jié)果對(duì)比圖
圖7 三階模型預(yù)測(cè)結(jié)果對(duì)比圖
表2、3、4中的數(shù)據(jù)為給定脫靶量序列時(shí)各階脫靶量遞推預(yù)測(cè)模型的統(tǒng)計(jì)特性。
表2 一階模型預(yù)測(cè)精度統(tǒng)計(jì)表
表3 二階模型預(yù)測(cè)精度統(tǒng)計(jì)表
表4 三階模型預(yù)測(cè)精度統(tǒng)計(jì)表
從上述的仿真結(jié)果對(duì)比圖以及特性統(tǒng)計(jì)表中,可以得出以下結(jié)論:
1)在一階預(yù)測(cè)模型、二階預(yù)測(cè)模型和三階預(yù)測(cè)模型中,自適應(yīng)新息卡爾曼濾波算法的精度一直高于傳統(tǒng)卡爾曼濾波算法。
2)在預(yù)測(cè)過(guò)程中,自適應(yīng)新息卡爾曼濾波算法的預(yù)測(cè)結(jié)果與給定脫靶量之間的誤差逐漸減小。因?yàn)?,在自適應(yīng)新息卡爾曼濾波過(guò)程中,過(guò)程噪聲矩陣和量測(cè)噪聲矩陣會(huì)根據(jù)之前的預(yù)測(cè)結(jié)果自適應(yīng)修正。
3)隨著脫靶量預(yù)測(cè)模型階次的增大,它的預(yù)測(cè)誤差的均值增大,但是變化的幅度不是很大,均方差的變化也不大,趨于平穩(wěn)。可以得出結(jié)論:k時(shí)刻脫靶量與k-1時(shí)刻脫靶量的相關(guān)性比較大,與k-2時(shí)刻乃至更早時(shí)刻的相關(guān)性有所減少(k≥3)。
在驗(yàn)證脫靶量模型隨機(jī)情況下的仿真結(jié)果時(shí),以一階狀態(tài)方程單步遞推預(yù)測(cè)為例,假設(shè)已知前90發(fā)彈丸的脫靶量,預(yù)測(cè)第91發(fā)到120發(fā)彈丸的脫靶量。采用多次試驗(yàn),隨機(jī)選取三次試驗(yàn)結(jié)果進(jìn)行分析。
圖8為試驗(yàn)一的隨機(jī)脫靶量序列示意圖,圖9為試驗(yàn)一的仿真結(jié)果圖;圖10為試驗(yàn)二的隨機(jī)脫靶量序列示意圖,圖11為試驗(yàn)二的仿真結(jié)果圖;圖12為試驗(yàn)三的隨機(jī)脫靶量序列示意圖,圖13為試驗(yàn)三的仿真結(jié)果圖。
圖8 試驗(yàn)一隨機(jī)脫靶量序列圖
圖9 試驗(yàn)一仿真結(jié)果對(duì)比圖
圖10 試驗(yàn)二隨機(jī)脫靶量序列圖
圖11 試驗(yàn)二仿真結(jié)果對(duì)比圖
圖12 試驗(yàn)三隨機(jī)脫靶量序列圖
圖13 試驗(yàn)三仿真結(jié)果對(duì)比圖
圖9、11、13中,藍(lán)色菱形折線代表由誤差源疊加生成的隨機(jī)脫靶量序列,紅色圓圈折線代表傳統(tǒng)卡爾曼濾波算法的預(yù)測(cè)結(jié)果,黑色星號(hào)折線代表自適應(yīng)新息卡爾曼濾波算法的預(yù)測(cè)結(jié)果。
隨機(jī)脫靶量序列時(shí)遞推預(yù)測(cè)的統(tǒng)計(jì)特性如表5、6、7所示。
表5 試驗(yàn)一預(yù)測(cè)精度統(tǒng)計(jì)表
表6 試驗(yàn)二預(yù)測(cè)精度統(tǒng)計(jì)表
表7 試驗(yàn)三預(yù)測(cè)精度統(tǒng)計(jì)表
從上述的仿真結(jié)果對(duì)比圖以及特性統(tǒng)計(jì)表中,除了可以得出和前節(jié)相同的結(jié)論之外,多次試驗(yàn)結(jié)果還表明:自適應(yīng)新息卡爾曼濾波在工程應(yīng)用中具有普適性且更加適用于低階模型。
本文從提高脫靶量精度著手,提出了自適應(yīng)新息卡爾曼濾波算法,建立了自適應(yīng)新息卡爾曼濾波脫靶量預(yù)測(cè)模型,并且進(jìn)行仿真驗(yàn)證。Matlab仿真結(jié)果表明,新息自適應(yīng)卡爾曼濾波算法,在進(jìn)行脫靶量預(yù)測(cè)時(shí),與傳統(tǒng)卡爾曼濾波算法相比,預(yù)測(cè)結(jié)果更加精確。同時(shí),仿真結(jié)果也表明,在隨機(jī)脫靶量模型中,自適應(yīng)新息卡爾曼濾波算法預(yù)測(cè)精度也高于傳統(tǒng)卡爾曼濾波算法,也證明了自適應(yīng)新息卡爾曼濾波算法在彈丸脫靶量預(yù)測(cè)方面的應(yīng)用普適性。