鄭丹
(酒泉衛(wèi)星發(fā)射中心,甘肅 蘭州 732750)
?
外大氣層動(dòng)能攔截器仿真平臺(tái)設(shè)計(jì)和實(shí)現(xiàn)*
鄭丹
(酒泉衛(wèi)星發(fā)射中心,甘肅 蘭州732750)
摘要:針對(duì)外大氣層固體或液體動(dòng)能攔截器,使用VC++ 6.0開(kāi)發(fā)了仿真平臺(tái)。仿真模型的參數(shù)可以通過(guò)文件形式保存和讀取。仿真平臺(tái)能夠動(dòng)態(tài)演示飛行彈道和飛行參數(shù);能夠?qū)r截結(jié)果進(jìn)行脫靶量評(píng)估、初始條件評(píng)估、軌道修正能力評(píng)估和能量消耗評(píng)估;能夠進(jìn)行3種綜合測(cè)試;能夠?qū)﹃P(guān)鍵設(shè)計(jì)參數(shù)進(jìn)行尋優(yōu)計(jì)算;能夠封裝為動(dòng)能攔截器仿真模塊與運(yùn)載器仿真模塊整合。介紹了平臺(tái)的設(shè)計(jì)、實(shí)現(xiàn)、關(guān)鍵技術(shù)和應(yīng)用情況。
關(guān)鍵詞:動(dòng)能攔截器;C++;仿真模型;敏捷軟件開(kāi)發(fā)
0引言
針對(duì)彈道導(dǎo)彈中段進(jìn)行攔截多采用外大氣層動(dòng)能攔截器(kinetic kill vehicle,KKV),例如美國(guó)地基中段攔截彈的“大氣層外攔截器”、“標(biāo)準(zhǔn)-3”導(dǎo)彈的“大氣層外輕型射彈”等。
為了對(duì)各種外大氣層動(dòng)能攔截器進(jìn)行反設(shè)計(jì)和開(kāi)發(fā)仿真模型,開(kāi)發(fā)了動(dòng)能攔截器仿真平臺(tái)。該平臺(tái)(exe文件)可以獨(dú)立運(yùn)行于裝有Windows XP或者Win 7的個(gè)人微機(jī)上,使用簡(jiǎn)單方便。平臺(tái)的開(kāi)發(fā)使用了敏捷軟件開(kāi)發(fā)技術(shù)[1-3],開(kāi)發(fā)過(guò)程快速可靠。本文介紹了平臺(tái)的設(shè)計(jì)、功能、關(guān)鍵技術(shù)和應(yīng)用情況。
1動(dòng)能攔截器建模
1.1動(dòng)力學(xué)建模
質(zhì)心動(dòng)力學(xué)方程在發(fā)射坐標(biāo)系下為
dv/dt=g+Fc/m-ae-ak,
式中:v為動(dòng)能攔截器相對(duì)于發(fā)射坐標(biāo)系的速度矢量;Fc為控制力;ae為質(zhì)心的牽連加速度;ak為質(zhì)心的哥氏加速度。具體計(jì)算方法參見(jiàn)文獻(xiàn)[4]。
姿態(tài)動(dòng)力學(xué)方程在彈體坐標(biāo)系下為
I·dωI/dt+ωI×(I·ωI)=M,
式中:I為轉(zhuǎn)動(dòng)慣量并矢;ωI為動(dòng)能攔截器相對(duì)于發(fā)射慣性坐標(biāo)系的轉(zhuǎn)動(dòng)角速度;M為控制力矩。姿態(tài)運(yùn)動(dòng)用四元數(shù)表示,使用文獻(xiàn)[5]中的公式。
1.2發(fā)動(dòng)機(jī)仿真模型
平臺(tái)具有氣體、液體、固體3種發(fā)動(dòng)機(jī)仿真模型。氣體發(fā)動(dòng)機(jī)用于姿控,液體和固體發(fā)動(dòng)機(jī)用于軌控。
氣體發(fā)動(dòng)機(jī)和液體發(fā)動(dòng)機(jī)的推力假設(shè)為常值,脈沖推力模型為梯形和三角型。
固體發(fā)動(dòng)機(jī)的推力不能假設(shè)為常值,使用文獻(xiàn)[6]的零維內(nèi)彈道模型進(jìn)行計(jì)算。藥柱模型為管形。脈沖推力模型為梯形和三角型。
軌控發(fā)動(dòng)機(jī)噴管具有4個(gè),安裝位置位于質(zhì)心平面內(nèi)。姿控發(fā)動(dòng)機(jī)的噴管具有6個(gè),安裝位置可以通過(guò)平臺(tái)的對(duì)話(huà)框進(jìn)行設(shè)置。
1.3結(jié)構(gòu)仿真模型
動(dòng)能攔截器的結(jié)構(gòu)仿真模型包括:彈頭類(lèi)、導(dǎo)引頭類(lèi)、計(jì)算機(jī)類(lèi)、指令接收機(jī)類(lèi)、慣性導(dǎo)航設(shè)備類(lèi)、軌控發(fā)動(dòng)機(jī)類(lèi)、姿控發(fā)動(dòng)機(jī)類(lèi)、噴管類(lèi),如圖1所示。

圖1 動(dòng)能攔截器結(jié)構(gòu)的面向?qū)ο笤O(shè)計(jì)Fig.1 Object-oriented design of construction of KKV
圖1中的濾波類(lèi)、導(dǎo)引類(lèi)和脈沖類(lèi)并不是結(jié)構(gòu)仿真模型,因此用淺灰色表示。
在具體編程中,上述每個(gè)類(lèi)都是一個(gè)繼承體系,結(jié)構(gòu)類(lèi)之間的包含和通信關(guān)系完全模仿真實(shí)情況。例如,在一次軌控過(guò)程中,信息傳遞順序如圖1的粗箭頭和序號(hào)所示。
1.4制導(dǎo)控制建模
1.4.1姿控建模
姿控發(fā)動(dòng)機(jī)的布局如圖2所示。

圖2 姿控發(fā)動(dòng)機(jī)布局(后視)圖Fig.2 Arrangement of attitude control motors (rearview)
記ψ,?,γ分別為動(dòng)能攔截器的偏航角、俯仰角和滾轉(zhuǎn)角,ψ0,?0,γ0分別為指令偏航角、指令俯仰角和指令滾轉(zhuǎn)角,則Δψ=ψ-ψ0,Δ?=?-?0,Δγ=γ-γ0分別為姿態(tài)角偏差。姿控采用文獻(xiàn)[7]中的開(kāi)關(guān)控制規(guī)律,具體形式為:




其他情況,2#,5#發(fā)動(dòng)機(jī)均關(guān)閉。



1.4.2軌控建模
平臺(tái)實(shí)現(xiàn)了3種常見(jiàn)的導(dǎo)引律,可以在平臺(tái)的對(duì)話(huà)框中進(jìn)行選擇,分別為:
(1) 文獻(xiàn)[8]第3.1節(jié)的常值力工作階段設(shè)計(jì)的開(kāi)關(guān)規(guī)律,具體形式為




該導(dǎo)引律當(dāng)存在制導(dǎo)誤差延遲時(shí),存在失效時(shí)刻,失效后轉(zhuǎn)換為其他導(dǎo)引律。
(2) 文獻(xiàn)[9]的軌控規(guī)律。具體形式為
式中:ay,az為彈體坐標(biāo)系下發(fā)動(dòng)機(jī)指令;a為發(fā)動(dòng)機(jī)的可用過(guò)載;Nyc1和Nzc1為彈道需用過(guò)載在彈體坐標(biāo)系下的投影,計(jì)算公式詳見(jiàn)文獻(xiàn)[9]。Nzc0,Nyc0為常值過(guò)載門(mén)限。
(3) 文獻(xiàn)[10]的預(yù)測(cè)比例導(dǎo)引律。具體形式為
式中:ay,az為彈體坐標(biāo)系下發(fā)動(dòng)機(jī)指令;adiv為發(fā)動(dòng)機(jī)開(kāi)機(jī)提供的加速度;ZEMy和ZEMz分別對(duì)應(yīng)零控脫靶向量的2個(gè)垂直分量;ZEM0為零控脫靶量的開(kāi)機(jī)門(mén)限,計(jì)算公式為

當(dāng)發(fā)動(dòng)機(jī)開(kāi)機(jī)時(shí),需要的脈沖推力長(zhǎng)度為
(1)

當(dāng)τω≥一個(gè)軌控周期時(shí),脈沖長(zhǎng)度為一個(gè)軌控周期,下次制導(dǎo)重新計(jì)算脈沖長(zhǎng)度;當(dāng)τω<一個(gè)軌控周期時(shí),脈沖長(zhǎng)度由式(1)確定。
1.4.3制導(dǎo)誤差延遲建模
主要制導(dǎo)誤差如表1所示。

表1 誤差源項(xiàng)列表
表1中,導(dǎo)引頭測(cè)量誤差有2種建模方法:一種是測(cè)角誤差,另一種是測(cè)角速率誤差。當(dāng)選擇測(cè)角誤差時(shí),對(duì)視線(xiàn)角的濾波使用文獻(xiàn)[11]的方法。姿、軌控發(fā)動(dòng)機(jī)推力偏斜和推力值偏差模型采用文獻(xiàn)[12]的模型。
主要制導(dǎo)延遲包括:導(dǎo)引頭信息處理延遲,姿、軌控指令延遲,姿、軌控執(zhí)行機(jī)構(gòu)開(kāi)/關(guān)延遲。延遲模型采用文獻(xiàn)[9]的模型。
2平臺(tái)的設(shè)計(jì)
2.1總體需求分析
平臺(tái)具有2種功能:一是對(duì)動(dòng)能攔截器進(jìn)行參數(shù)設(shè)計(jì);二是把動(dòng)能攔截器仿真模型封裝為可執(zhí)行模塊,與運(yùn)載器仿真模塊整合。
2.2參數(shù)設(shè)計(jì)的需求分析
(1) 動(dòng)能攔截器的參數(shù)設(shè)計(jì)結(jié)果使用參數(shù)文件形式,與仿真平臺(tái)分離。
(2) 提供關(guān)鍵參數(shù)的尋優(yōu)計(jì)算功能。
(3) 能夠動(dòng)態(tài)演示動(dòng)能攔截器的飛行彈道、飛行參數(shù)和內(nèi)彈道參數(shù)。
(4) 能夠?qū)r截仿真結(jié)果進(jìn)行評(píng)估。
(5) 能夠進(jìn)行大量綜合測(cè)試,對(duì)參數(shù)設(shè)計(jì)結(jié)果進(jìn)行驗(yàn)證。
參數(shù)設(shè)計(jì)時(shí),平臺(tái)的UML(unified modeling language)活動(dòng)圖如圖3所示。
2.3模塊封裝的需求分析
(1) 在仿真飛行前,根據(jù)彈目發(fā)射坐標(biāo)系的參數(shù),進(jìn)行動(dòng)能攔截器仿真模塊的初始化工作。
(2) 在中末交班前2 s,根據(jù)中末交班條件,進(jìn)行中末交接班準(zhǔn)備。
(3) 根據(jù)仿真系統(tǒng)提供的目標(biāo)彈道數(shù)據(jù),實(shí)時(shí)計(jì)算動(dòng)能攔截器的位置、速度、姿態(tài)角和姿態(tài)角速度,并傳給仿真系統(tǒng)。
(4) 計(jì)算時(shí)間滿(mǎn)足實(shí)時(shí)要求。
3平臺(tái)的實(shí)現(xiàn)
3.1參數(shù)設(shè)置功能
平臺(tái)以對(duì)話(huà)框的形式,提供各種參數(shù)的設(shè)置功能,主要包括:
(1) 中末交班條件設(shè)置對(duì)話(huà)框
使用MFC的屬性對(duì)話(huà)框,具有2個(gè)屬性頁(yè),分別設(shè)置目標(biāo)彈頭和動(dòng)能攔截器的參數(shù),包括發(fā)射坐標(biāo)系參數(shù)、中末交接班時(shí)的位置、速度、四元數(shù)和姿態(tài)角速度。

圖3 參數(shù)設(shè)計(jì)時(shí)平臺(tái)的UML活動(dòng)圖Fig.3 UML activity diagram of the platform for parameter design
(2) 動(dòng)能攔截器參數(shù)設(shè)置對(duì)話(huà)框
使用MFC的屬性對(duì)話(huà)框,具有8個(gè)屬性頁(yè),分別設(shè)置以下參數(shù):結(jié)構(gòu)參數(shù)、液體發(fā)動(dòng)機(jī)參數(shù)、固體發(fā)動(dòng)機(jī)參數(shù)、姿控發(fā)動(dòng)機(jī)參數(shù)、控制參數(shù)、導(dǎo)引頭參數(shù)、導(dǎo)引律參數(shù)和濾波參數(shù)。
在控制參數(shù)屬性頁(yè)中,可以設(shè)置無(wú)控、僅軌控、僅姿控、姿軌控獨(dú)立和姿軌控耦合5種情況,如圖4所示。可以進(jìn)行不同層次的控制建模和仿真分析。

圖4 控制方式的設(shè)置界面Fig.4 Interface to set the control mode
(3) 制導(dǎo)誤差延遲設(shè)置對(duì)話(huà)框
制導(dǎo)誤差設(shè)置對(duì)話(huà)框如圖5所示,通過(guò)復(fù)選按鈕,可以任意組合誤差項(xiàng)和設(shè)置誤差值。

圖5 制導(dǎo)誤差設(shè)置對(duì)話(huà)框Fig.5 Dialog to set guidance and control errors
點(diǎn)擊圖5右側(cè)的“設(shè)置隨機(jī)數(shù)類(lèi)型”按扭,可以選擇隨機(jī)數(shù)的生成類(lèi)型:①無(wú)誤差;②可重復(fù)隨機(jī)數(shù);③不可重復(fù)隨機(jī)數(shù);④常值隨機(jī)數(shù)(調(diào)試使用)。點(diǎn)擊圖5右側(cè)的“設(shè)置延遲”按扭,可以設(shè)置延遲項(xiàng)的延遲時(shí)間。
3.2目標(biāo)彈道的設(shè)置功能
目標(biāo)彈道可以由平臺(tái)進(jìn)行計(jì)算(在中末交班條件設(shè)置對(duì)話(huà)框中設(shè)置初始值),或者讀入彈道數(shù)據(jù)文件 (.txt)。通過(guò)讀取彈道數(shù)據(jù)文件, 平臺(tái)可以考察動(dòng)能攔截器對(duì)真實(shí)目標(biāo)彈道或者機(jī)動(dòng)彈道的攔截結(jié)果。
3.3參數(shù)保存和讀取功能
參數(shù)設(shè)計(jì)結(jié)果以平臺(tái)文件的形式保存和讀取。參數(shù)包括:動(dòng)能攔截器的設(shè)計(jì)參數(shù)、中末交接班條件參數(shù)和綜合測(cè)試參數(shù)等。通過(guò)讀取和保存參數(shù)文件,平臺(tái)可以同時(shí)開(kāi)發(fā)和測(cè)試多個(gè)動(dòng)能攔截器仿真模型。
該功能的具體實(shí)現(xiàn)使用了MFC的Serialize()虛函數(shù)。
3.4動(dòng)態(tài)演示功能
在各種參數(shù)設(shè)置完成后,平臺(tái)可以動(dòng)態(tài)演示攔截飛行過(guò)程,運(yùn)行界面如圖6所示。
圖6上方的3個(gè)拆分窗口,分別以坐標(biāo)參數(shù)形式、立體彈道形式和平面地圖形式顯示攔截彈道。圖6下方的10個(gè)拆分窗口顯示飛行參數(shù)仿真結(jié)果,包括:彈體z軸和y軸上的過(guò)載和視線(xiàn)轉(zhuǎn)率曲線(xiàn)、姿態(tài)角曲線(xiàn)、推力和質(zhì)量曲線(xiàn)、零控脫靶量和軌道修正能力曲線(xiàn)、彈目距離和相對(duì)速度曲線(xiàn)、速率曲線(xiàn)、姿控推力曲線(xiàn)。通過(guò)拆分窗口同時(shí)顯示各種飛行參數(shù),有助于快速觀察各種飛行參數(shù)并進(jìn)行綜合判斷。所有拆分窗口,都可以通過(guò)“雙擊”界面的方式全屏放大。單擊圖6工具欄上的“姿態(tài)顯示”按鈕,平臺(tái)下方的10個(gè)拆分窗口全部換成了姿控的飛行參數(shù)界面,包括:3個(gè)姿態(tài)角及其指令角曲線(xiàn)、3個(gè)姿態(tài)角偏差曲線(xiàn)、四元數(shù)曲線(xiàn)、姿態(tài)角曲線(xiàn)、姿控推力曲線(xiàn)和姿控力矩曲線(xiàn)。
圖6的工具欄上具有“重放”、“暫停”、“開(kāi)始”和“單步”按鈕,可以反復(fù)運(yùn)行攔截過(guò)程;具有“定時(shí)器”按鈕,可以設(shè)置演示過(guò)程的快慢;具有“重置”按鈕,可以重新回到設(shè)置參數(shù)的狀態(tài)。
動(dòng)態(tài)演示后,通過(guò)平臺(tái)的“數(shù)據(jù)”菜單,可以輸出彈目彈道、姿軌控推力、視線(xiàn)角、姿態(tài)角和姿態(tài)角速度等數(shù)據(jù)文件(.txt)。
3.5評(píng)估功能
動(dòng)態(tài)演示后,平臺(tái)可以自動(dòng)進(jìn)行脫靶量評(píng)估、軌道修正能力評(píng)估、初始條件評(píng)估和能量消耗評(píng)估。點(diǎn)擊圖6工具欄上的“脫靶量”、“初始條件”、“軌修能力”和“能量消耗”按鈕,可以彈出評(píng)估結(jié)果對(duì)話(huà)框。

圖6 平臺(tái)的動(dòng)態(tài)演示界面Fig.6 Display interface of the platform
“能量消耗”評(píng)估結(jié)果對(duì)話(huà)框如圖7所示。對(duì)于液體軌控發(fā)動(dòng)機(jī)和氣體姿控發(fā)動(dòng)機(jī),單個(gè)脈沖推力消耗的質(zhì)量近似,因此可以用總的脈沖數(shù)乘以單個(gè)脈沖平均消耗質(zhì)量,得到圖7中能量消耗的“計(jì)算值”。但是推力存在誤差和延遲,因此又統(tǒng)計(jì)了發(fā)動(dòng)機(jī)推力值的仿真結(jié)果,利用發(fā)動(dòng)機(jī)的比沖計(jì)算出能量消耗量,得到圖7中能量消耗的“實(shí)際值”。如果二者近似相等,說(shuō)明發(fā)動(dòng)機(jī)仿真模型準(zhǔn)確地執(zhí)行了計(jì)算機(jī)仿真模型的制導(dǎo)指令,為了考察程序的正確性,在圖7的右側(cè)又給出了二者的“差距”。對(duì)于固體軌控發(fā)動(dòng)機(jī),僅“實(shí)際值”評(píng)估結(jié)果具有意義。為了考察飛行過(guò)程中存在軌控力和姿控力的時(shí)間,圖7給出了“工作時(shí)間”評(píng)估結(jié)果。同樣具有“計(jì)算值”和“實(shí)際值”2種形式。其中,“計(jì)算值”統(tǒng)計(jì)制導(dǎo)指令中存在控制力的時(shí)間,“實(shí)際值”統(tǒng)計(jì)發(fā)動(dòng)機(jī)存在控制力的時(shí)間。二者近似相等。

圖7 能量消耗評(píng)估結(jié)果Fig.7 Evaluation of propellant exhausted
3.6綜合測(cè)試功能
平臺(tái)具有3種綜合測(cè)試功能,可以對(duì)參數(shù)設(shè)計(jì)結(jié)果進(jìn)行大量攔截測(cè)試。
(1) 各種誤差組合下的脫靶量Monte Carlo測(cè)試。
使用平臺(tái)的誤差設(shè)置對(duì)話(huà)框設(shè)置各種誤差后,測(cè)試設(shè)置對(duì)話(huà)框中設(shè)定 Monte Carlo次數(shù),進(jìn)行測(cè)試,測(cè)試完成后,輸出測(cè)試結(jié)果對(duì)話(huà)框,給出攔截概率、脫靶量的均方差、燃料和氣體消耗的均方差和均值等結(jié)果。
測(cè)試完成后輸出的測(cè)試結(jié)果文件(.txt)包括:動(dòng)能攔截器參數(shù)文件、制導(dǎo)誤差取值文件、制導(dǎo)誤差均值文件、制導(dǎo)誤差均方差文件、制導(dǎo)延遲文件、脫靶量文件、脫靶量均值文件、脫靶量均方差文件、燃料消耗文件和氣體消耗文件。
(2) 單項(xiàng)誤差對(duì)脫靶量的影響測(cè)試
在測(cè)試設(shè)置對(duì)話(huà)框中選定一種誤差,設(shè)置誤差均方差的變化范圍,可以令其他誤差全部為0或者保持原來(lái)的誤差值,然后對(duì)每一種情況進(jìn)行Monte Carlo測(cè)試。
測(cè)試后輸出的文件類(lèi)型與第1種綜合測(cè)試相同。
(3) 變初始位置和速度綜合測(cè)試
保持目標(biāo)位置和速度不變,動(dòng)能攔截器在各種相對(duì)距離、相對(duì)速率、視線(xiàn)方位角、視線(xiàn)高低角、零控脫靶分量的情況下,測(cè)試攔截結(jié)果。測(cè)試設(shè)置對(duì)話(huà)框如圖8所示。根據(jù)上述循環(huán)條件,平臺(tái)求出動(dòng)能攔截器的初始位置、速度和姿態(tài)角,進(jìn)行攔截測(cè)試。

圖8 變初始位置和速度測(cè)試設(shè)置界面Fig.8 Test miss distances by varying initial positions and velocities
在圖8的測(cè)試設(shè)置下,測(cè)試情況共有30×30=900種,為了直接運(yùn)行其中的一種攔截情況,圖8的下方具有2種單例測(cè)試功能:第1種,根據(jù)仿真循環(huán)的次序定位到具體的攔截情況;第2種,根據(jù)初始零控脫靶分量的值,定位到具體的攔截情況。
測(cè)試后輸出的文件包含了第1種綜合測(cè)試輸出的文件,同時(shí)還包括:循環(huán)測(cè)試條件文件、初始零控脫靶分量文件、初始軌道修正能力文件和初始視線(xiàn)轉(zhuǎn)率文件。
在圖8的測(cè)試設(shè)置下,根據(jù)測(cè)試后的脫靶量文件和初始零控脫靶分量文件,使用Matlab軟件的等高線(xiàn)函數(shù),作圖結(jié)果如圖9所示。

圖9 動(dòng)能攔截器的“攔截域”Fig.9 ‘Intercept field’ of KKV
圖9中的點(diǎn)陣表示循環(huán)過(guò)程中的取值點(diǎn)。可以把脫靶量小于0.5 m的區(qū)域作為“攔截域”,即圖9中脫靶量為0.5 m的等高線(xiàn)所包圍的區(qū)域。圖9中的“攔截域”概念把攔截結(jié)果和初始零控脫靶向量聯(lián)系起來(lái),可以直觀看出動(dòng)能攔截器在一定場(chǎng)景下的軌道修正能力。
3.7關(guān)鍵參數(shù)的尋優(yōu)功能
平臺(tái)能夠?qū)﹃P(guān)鍵參數(shù)進(jìn)行尋優(yōu)計(jì)算,點(diǎn)擊平臺(tái)的“參數(shù)尋優(yōu)計(jì)算”菜單項(xiàng)后,根據(jù)平臺(tái)設(shè)置的軌控發(fā)動(dòng)機(jī)類(lèi)型,自動(dòng)彈出相應(yīng)的參數(shù)尋優(yōu)設(shè)置界面。其中,固體軌控發(fā)動(dòng)機(jī)對(duì)應(yīng)的參數(shù)尋優(yōu)設(shè)置界面如圖10所示。通過(guò)計(jì)算不同參數(shù)設(shè)置情況對(duì)脫靶量的影響,尋找參數(shù)組合的最優(yōu)值。測(cè)試結(jié)束后輸出的文件類(lèi)型與第1種綜合測(cè)試相同。圖10中的“軌控視線(xiàn)轉(zhuǎn)率門(mén)限”,僅當(dāng)平臺(tái)設(shè)置的導(dǎo)引律類(lèi)型具有常值門(mén)限時(shí)有效。液體軌控發(fā)動(dòng)機(jī)對(duì)應(yīng)的設(shè)置界面類(lèi)似。

圖10 參數(shù)尋優(yōu)計(jì)算對(duì)話(huà)框(固體軌控發(fā)動(dòng)機(jī)情形)Fig.10 Dialog to find optimal parameters (solid divert engine)
通過(guò)輸出的能量消耗文件(包括燃料消耗和氣體消耗),可以分析各種參數(shù)組合對(duì)能量消耗的影響。
3.8封裝功能
由于仿真平臺(tái)包含的C++類(lèi)超過(guò)300個(gè),并且是基于單線(xiàn)程的,把動(dòng)能攔截器的仿真代碼從平臺(tái)框架中分離,既困難又不是多線(xiàn)程安全的。因此把仿真平臺(tái)作為一個(gè)獨(dú)立的動(dòng)能攔截器進(jìn)程,與運(yùn)載器仿真模型所在的進(jìn)程進(jìn)行通信。進(jìn)程間的通信方式有很多,由于需要傳輸?shù)臄?shù)據(jù)量較小,因此采用Windows操作系統(tǒng)的WM_COPYDATA消息機(jī)制進(jìn)行通信。
為了實(shí)現(xiàn)仿真平臺(tái)進(jìn)程與運(yùn)載器所在進(jìn)程的通信功能,開(kāi)發(fā)了動(dòng)能攔截器的接口類(lèi),用來(lái)生成仿真平臺(tái)的進(jìn)程,并完成各階段的通信任務(wù)。
4平臺(tái)的關(guān)鍵技術(shù)
4.1導(dǎo)引律的面向?qū)ο笤O(shè)計(jì)
平臺(tái)實(shí)現(xiàn)了3種導(dǎo)引律,為了使它們?cè)谄脚_(tái)中任意切換,使用設(shè)計(jì)模式的策略模式(STRATEGY)[1],對(duì)導(dǎo)引律進(jìn)行了面向?qū)ο笤O(shè)計(jì),如圖11所示。首先定義“導(dǎo)引類(lèi)”基類(lèi),在基類(lèi)中定義接口,然后在其派生類(lèi)中實(shí)現(xiàn)接口的功能。當(dāng)平臺(tái)更換導(dǎo)引律時(shí),只需對(duì)導(dǎo)引律指針進(jìn)行更換,而不需要更改調(diào)用導(dǎo)引律的代碼。當(dāng)添加新的導(dǎo)引律類(lèi)型時(shí),從適當(dāng)?shù)膶?dǎo)引律基類(lèi)派生出新的導(dǎo)引類(lèi),并實(shí)現(xiàn)接口功能。

圖11 導(dǎo)引律的面向?qū)ο笤O(shè)計(jì)Fig.11 Object-oriented design of guidance law
4.2制導(dǎo)誤差延遲的面向?qū)ο笤O(shè)計(jì)和實(shí)時(shí)掃描技術(shù)
使用了設(shè)計(jì)模式中代理模式(PROXY)[1]對(duì)隨機(jī)數(shù)和制導(dǎo)誤差進(jìn)行面向?qū)ο笤O(shè)計(jì),如圖12所示。隨機(jī)數(shù)和制導(dǎo)誤差的代理類(lèi)用于與外界溝通,其派生類(lèi)則實(shí)現(xiàn)具體的功能。

圖12 制導(dǎo)誤差的面向?qū)ο笤O(shè)計(jì)Fig.12 Object-oriented design of guidance error
由于制導(dǎo)誤差是由動(dòng)能攔截器的各種制導(dǎo)設(shè)備產(chǎn)生的,因此誤差類(lèi)分散在各個(gè)制導(dǎo)設(shè)備類(lèi)中,為了便于對(duì)所有的誤差項(xiàng)進(jìn)行統(tǒng)一管理,建立了誤差表類(lèi),即圖12中的CErrorTable類(lèi)。誤差表類(lèi)存放所有誤差類(lèi)的指針,可以集中管理所有的誤差項(xiàng)。在攔截仿真時(shí),誤差表定期獲取所有誤差項(xiàng)的取值情況,并輸出到“制導(dǎo)誤差取值文件”中。在綜合測(cè)試時(shí),誤差表負(fù)責(zé)輸出“制導(dǎo)誤差均值文件”和“制導(dǎo)誤差均方差文件”。通過(guò)這3種文件,可以考察制導(dǎo)誤差的實(shí)際加入情況。
制導(dǎo)延遲的面向?qū)ο笤O(shè)計(jì)與制導(dǎo)誤差基本相同。在編程實(shí)現(xiàn)時(shí),導(dǎo)引頭信息處理延遲和制導(dǎo)指令延遲分別建立延遲類(lèi),由延遲表類(lèi)統(tǒng)一管理,并在攔截仿真時(shí),輸出“制導(dǎo)延遲取值文件”,以考察制導(dǎo)延遲的實(shí)際加入情況。執(zhí)行機(jī)構(gòu)的開(kāi)/關(guān)延遲時(shí)間通過(guò)脈沖推力類(lèi)的上升時(shí)間和下降時(shí)間來(lái)表示,不再建立延遲類(lèi)。
5平臺(tái)的應(yīng)用
5.1開(kāi)發(fā)動(dòng)能攔截器的仿真模型
平臺(tái)可以對(duì)動(dòng)能攔截器進(jìn)行初步參數(shù)設(shè)計(jì),通過(guò)動(dòng)態(tài)演示功能、各種評(píng)估功能和綜合測(cè)試功能,對(duì)參數(shù)設(shè)計(jì)結(jié)果進(jìn)行評(píng)估和測(cè)試。并且可以封裝為仿真模塊與運(yùn)載器模塊整合。例如,使用平臺(tái)的固體軌控發(fā)動(dòng)機(jī)仿真模型,開(kāi)發(fā)了國(guó)外某型攔截器的六自由度仿真模型。
5.2開(kāi)展基礎(chǔ)理論研究工作
利用仿真平臺(tái)的綜合測(cè)試功能,可以方便開(kāi)展若干種基礎(chǔ)理論研究工作。例如,研究單項(xiàng)制導(dǎo)誤差對(duì)脫靶量的影響;研究不同導(dǎo)引律對(duì)脫靶量、能量消耗和軌道修正能力的影響;制導(dǎo)參數(shù)的最優(yōu)化設(shè)計(jì)等。
6結(jié)束語(yǔ)
平臺(tái)使用了敏捷軟件開(kāi)發(fā)技術(shù),具有良好的擴(kuò)展功能,在使用的過(guò)程中不斷完善。平臺(tái)還存在很多不足之處,后續(xù)需要改進(jìn)的方面包括:
(1) 增加新的視線(xiàn)角濾波方法。
(2) 增加新的導(dǎo)引律類(lèi)型。
(3) 為導(dǎo)引律的添加提供動(dòng)態(tài)鏈接接口。
(4) 增加新的姿控開(kāi)關(guān)規(guī)律模型。
(5) 增加新的綜合測(cè)試功能。
參考文獻(xiàn):
[1]Erich Gamma,Richard Helm,Ralph Johnson,et al.設(shè)計(jì)模式:可復(fù)用面向?qū)ο筌浖幕A(chǔ)[M].李英軍,馬曉星,蔡敏,等譯.北京:機(jī)械工業(yè)出版,2000:137-144,208-214.
Erich Gamma,Richard Helm,Ralph Johnson,et al.Design Patterns:Elements of Reusable Object-Oriented Software[M].LI Ying-jun,MA Xiao-xing,CAI Min,et al.Translated.Beijing:China Machine Press,2000:137-144,208-214.
[2]MARTIN R C.敏捷軟件開(kāi)發(fā):原則、模式與實(shí)踐[M].鄧輝,譯.北京:清華大學(xué)出版社,2003.
MARTIN R C. Agile Software Development: Principles, Patterns,and Practices[M].DENG Hui,Translated.Beijing:Tsinghua University Press, 2002.
[3]FOWLER M.重構(gòu):改善既有代碼的設(shè)計(jì)[M] .熊節(jié),譯.北京:人民郵電出版社,2010.
FOWLER M. Refactoring : Improving the Design of Existing Code[M].XIONG Jie,Translated.Beijing:People′s Posts and Telecommunications Press, 1999.
[4]張金槐.遠(yuǎn)程火箭精度分析與評(píng)估[M].長(zhǎng)沙:國(guó)防科技大學(xué)出版社,1995:8,9,20,29-34.
ZHANG Jin-huai.Evaluation and Analysis of Precision for Long Range Rocket[M].Changsha:National University of Defense Technology Press,1995:8,9,20,29-34.
[5]袁子懷,錢(qián)杏芳.有控飛行力學(xué)與計(jì)算機(jī)仿真[M].北京:國(guó)防工業(yè)出版社,2001:38-60.
YUAN Zi-huai,QIAN Xing-fang.Control Flight Mechanics and Computer Simulation[M]. Beijing: National Defense Industry Press,2001:38-60.
[6]邢耀國(guó),董可海,沈偉,等.固體火箭發(fā)動(dòng)機(jī)使用工程[M].北京:國(guó)防工業(yè)出版社,2010:19.
XING Yao-guo,DONG Ke-hai,SHEN Wei,et al. Engineering Usage of Solid Rocket Motor[M]. Beijing:National Defense Industry Press,2010:19.
[7]劉慶鴻,陳德源,王子才.動(dòng)能攔截器攔截戰(zhàn)術(shù)彈道導(dǎo)彈的脫靶量仿真[J].系統(tǒng)仿真,2002,14(2):200-203.
LIU Qing-hong,CHEN De-yuan,WANG Zi-cai. Miss Distance Simulation for Kinetic Kill Vehicle Intercepting Tactical Ballistic Missile[J].Journal of System Simulation,2002,14(2):200-203.
[8]田源,任章.大氣層外動(dòng)能攔截器末段導(dǎo)引規(guī)律設(shè)計(jì)[J].宇航學(xué)報(bào),2009,30(2):474-480.
TIAN Yuan,REN Zhang.Design of Guidance Law for Exoatmospheric Interceptor During Its Terminal Course[J].Journal of Astronautics, 2009,30(2):474-480.
[9]劉慶鴻,陳德源,王子才.延遲對(duì)攔截彈制導(dǎo)精度的影響[J].宇航學(xué)報(bào),2003,24(6):642-645.
LIU Qing-hong,CHEN De-yuan,WANG Zi-cai. Effect of System Delay on Guidance Accuracy of Interceptor[J]. Journal of Astronautics,2003,24(6):642-645.
[10]Hari B Hablani.Endgame Guidance and Relative Navigation of Strategic Interceptors with Delays[J]. Journal of Guidance,Control,and Dynamics,2006, 29(1):82-94.
[11]王男,張奕群.提高視線(xiàn)轉(zhuǎn)率精度的一種改進(jìn)方法[J].現(xiàn)代防御技術(shù),2007, 35(4):64-68.
WANG Nan,ZHANG Yi-qun.An Improved Method for Enhancing Accuracy of LOS Rate[J].Modern Defence Technology,2007,35(4): 64-68.
[12]郭慶,楊明,王子才.攔截器末制導(dǎo)段誤差模型的建立與仿真[J].計(jì)算機(jī)仿真,2007,24(3):58-61,78.
GUO Qing, YANG Ming,WANG Zi-cai.Establishment and Simulation of Error Model for Interceptor’s Terminal Guidance Phase[J].Computer Simulation, 2007, 24(3): 58-61,78.
Design and Realization of Simulation Platform for Exoatmospheric Kinetic Kill Vehicles
ZHENG Dan
(Jiuquan Satellite Launching Center,Gansu Lanzhou 732750,China)
Abstract:A simulation platform is developed in VC++6.0 for solid or liquid exoatmospheric kinetic kill vehicle(KKV). The platform can save and read all the parameters designed for KKV, display dynamically trajectories and flight parameters of KKV, evaluate the miss distances, the initial fighting conditions, the fuel exhausted and the divert ability and test the simulation model in three ways. The platform provides a method to find optimal parameters of KKV and can be integrated with the simulation model of a launch vehicle. The design, realization,key technologies and application of the platform are presented.
Key words:kinetic kill vehicle (KKV); C++; simulation model; agile software development
中圖分類(lèi)號(hào):V448.2;TP391.9
文獻(xiàn)標(biāo)志碼:A
文章編號(hào):1009-086X(2015)-01-0151-09
doi:10.3969/j.issn.1009-086x.2015.01.026
通信地址:732750甘肅省蘭州市蘭州27支局15信箱6號(hào)E-mail:zhengdandanzheng@126.com
作者簡(jiǎn)介:鄭丹(1979-),女,吉林吉林人。高工,博士,研究方向?yàn)橹茖?dǎo)控制仿真。
收稿日期:2014-07-03;
修回日期:2014-09-24