摘 要: 基于機(jī)載武器管理系統(tǒng)的基本工作原理和應(yīng)用軟件工程中面向?qū)ο?/a>的思想方法、模塊化建模理論,對(duì)機(jī)載武器管理系統(tǒng)仿真技術(shù)進(jìn)行了深入研究。設(shè)計(jì)了機(jī)載武器管理系統(tǒng)仿真實(shí)現(xiàn)總體方案,提出了仿真軟件開發(fā)的主要技術(shù)途徑和工程實(shí)現(xiàn)手段。結(jié)果表明,仿真系統(tǒng)不僅能很好地管理和控制各型武器,而且還具有開放性、融合性、可持續(xù)性。
關(guān)鍵詞: 機(jī)載武器管理系統(tǒng);面向?qū)ο?;仿?/p>
0 引 言
機(jī)載武器管理系統(tǒng)作為瞄準(zhǔn)系統(tǒng)和機(jī)載武器的連接橋梁,其發(fā)展經(jīng)歷了從無到有,從簡(jiǎn)單到復(fù)雜,從模擬式到數(shù)字式的發(fā)展過程。在現(xiàn)代作戰(zhàn)環(huán)境下,為了執(zhí)行多種作戰(zhàn)任務(wù),飛機(jī)必須能攜帶多種類型的作戰(zhàn)武器及其他外掛物,各種新的懸掛物也不斷涌現(xiàn),如保形油箱、保形吊艙、高密度內(nèi)掛武器等[1]。懸掛物數(shù)量的增多和性能的提高曾被視為增強(qiáng)飛機(jī)戰(zhàn)斗力的一個(gè)重要途徑。如何管理和控制眾多的外掛物,始終是機(jī)載武器管理系統(tǒng)面臨的重要問題。利用現(xiàn)代仿真技術(shù)進(jìn)行機(jī)載武器管理系統(tǒng)控制機(jī)理、邏輯控制算法、架構(gòu)設(shè)計(jì)、性能評(píng)估及信號(hào)檢測(cè)機(jī)理等方面研究,不僅能節(jié)省巨大的財(cái)力、物力,而且可追蹤機(jī)載武器管理系統(tǒng)的發(fā)展,進(jìn)行先進(jìn)機(jī)載武器管理系統(tǒng)概念化研究。為了適應(yīng)新時(shí)期裝備發(fā)展和人才培養(yǎng)的需要,本文對(duì)機(jī)載武器管理系統(tǒng)的仿真技術(shù)和實(shí)現(xiàn)方法等有關(guān)問題進(jìn)行了較為系統(tǒng)深入的研究,取得了一定的進(jìn)展,并為后續(xù)工作打下了一定的基礎(chǔ)。
1 機(jī)載武器管理系統(tǒng)仿真實(shí)現(xiàn)總體方案
根據(jù)AWCS的功能需求,機(jī)載武器管理系統(tǒng)仿真系統(tǒng)硬件平臺(tái)的總體架構(gòu)主要由外掛物管理處理機(jī)仿真器、掛架接口單元仿真器、懸掛物掛點(diǎn)仿真器(兼航炮仿真器)、航電系統(tǒng)仿真器、局域網(wǎng)等組成。各仿真節(jié)點(diǎn)在統(tǒng)一的仿真時(shí)鐘控制下協(xié)調(diào)工作。外掛物管理處理機(jī)仿真器是整個(gè)仿真系統(tǒng)的管理中心,一方面控制仿真的啟動(dòng)、暫停、復(fù)位與時(shí)間協(xié)調(diào),完成仿真關(guān)鍵數(shù)據(jù)的記錄,同時(shí)作為外掛物管理處理機(jī)功能仿真結(jié)點(diǎn),負(fù)責(zé)監(jiān)控網(wǎng)絡(luò)的其他仿真結(jié)點(diǎn)的數(shù)據(jù)傳輸、轉(zhuǎn)發(fā)和自身的模型解算等工作。掛架接口單元仿真器用于模擬產(chǎn)生各類懸掛裝置和相關(guān)接口信號(hào)。懸掛物掛點(diǎn)仿真器用于模擬產(chǎn)生懸掛物的相關(guān)接口信號(hào)。航電系統(tǒng)仿真器用于模擬產(chǎn)生其他航電系統(tǒng)的相關(guān)接口信號(hào)。
機(jī)載武器管理仿真系統(tǒng)是一個(gè)比較復(fù)雜的系統(tǒng)。對(duì)于這樣復(fù)雜系統(tǒng)的開發(fā),應(yīng)該按照軟件工程的方法,采用自頂向下(top-down)和自底向上(bottom-up)相結(jié)合的技術(shù)路線:一方面,在已經(jīng)明確研究對(duì)象和研究目標(biāo)、自頂向下地分析機(jī)載武器管理仿真系統(tǒng)的結(jié)構(gòu)層次和概念模型的前提下,進(jìn)一步細(xì)化系統(tǒng)各個(gè)模塊間的功能關(guān)系。另一方面,立足當(dāng)前,講究實(shí)效,從基本算法和模型開始,首先實(shí)現(xiàn)基本仿真對(duì)象以組成最低限度仿真模型,讓機(jī)載武器管理系統(tǒng)“動(dòng)”起來;然后,開發(fā)功能模型相關(guān)的其他對(duì)象,根據(jù)各分系統(tǒng)的功能關(guān)系進(jìn)行集成以構(gòu)建出完整的機(jī)載武器管理仿真系統(tǒng);最后,對(duì)軟件進(jìn)行嚴(yán)格測(cè)試以提高其可靠性。根據(jù)系統(tǒng)特點(diǎn),在軟件開發(fā)的過程中,應(yīng)著重利用面向?qū)ο筌浖O(shè)計(jì)方法的重要特性——封裝性、繼承性和多態(tài)性,來提高軟件的模塊化程度、可重用性、可擴(kuò)充性、可理解性[2]。
圖1是仿真系統(tǒng)軟件總體邏輯結(jié)構(gòu)。它由仿真管理程序模塊、初始參數(shù)設(shè)置模塊、懸掛物管理處理機(jī)(SMP)仿真模塊、懸掛物掛點(diǎn)仿真模塊、掛架接口單元仿真模塊、航電系統(tǒng)仿真模塊、網(wǎng)絡(luò)通信模塊等組成。
2 機(jī)載武器管理系統(tǒng)仿真軟件的開發(fā)和設(shè)計(jì)
2.1 仿真系統(tǒng)的面向?qū)ο蠓治雠c設(shè)計(jì)
2.1.1 對(duì)象的劃分原則
從面向?qū)ο蠼5慕嵌葋碚f,對(duì)機(jī)載武器管理系統(tǒng)仿真建模的實(shí)質(zhì)是對(duì)象的選取及對(duì)象間的消息傳遞。對(duì)象的選取不是唯一的,從模型抽象為對(duì)象,應(yīng)基于3個(gè)原則:一是用人的認(rèn)識(shí)思維方式確定對(duì)象,分離整個(gè)系統(tǒng)的概念或組成;二是對(duì)象間的信息傳遞應(yīng)該容易被認(rèn)識(shí)和描述;三是對(duì)象群體對(duì)整個(gè)仿真目標(biāo)的可構(gòu)建能力要強(qiáng)。機(jī)載武器管理系統(tǒng)仿真軟件將由眾多對(duì)象構(gòu)成,對(duì)象與對(duì)象之間的關(guān)系也不相同[3-4]。
2.1.2 仿真系統(tǒng)對(duì)象的劃分
根據(jù)對(duì)象的抽象原則和系統(tǒng)的結(jié)構(gòu),將仿真系統(tǒng)劃分為以下對(duì)象:懸掛物管理處理機(jī)對(duì)象、發(fā)動(dòng)機(jī)油門桿對(duì)象、飛機(jī)駕駛桿對(duì)象、起落架對(duì)象、武器操縱板對(duì)象、其他航電系統(tǒng)對(duì)象、外掛武器接口對(duì)象、掛架接口對(duì)象、平顯對(duì)象、開關(guān)量對(duì)象、節(jié)點(diǎn)數(shù)據(jù)交換對(duì)象等。
2.1.3 仿真系統(tǒng)的類層次設(shè)計(jì)
傳統(tǒng)的仿真軟件通過功能模塊的組合實(shí)現(xiàn)仿真功能。各模塊間按過程來進(jìn)行信息交換,在多數(shù)的高級(jí)語(yǔ)言中是通過函數(shù)調(diào)用的方式來實(shí)現(xiàn)的。
面向?qū)ο蟮臋C(jī)載武器管理系統(tǒng)仿真軟件不能完全脫離傳統(tǒng)仿真中的物理概念,即由功能模塊構(gòu)成。但在封裝上與傳統(tǒng)的軟件設(shè)計(jì)方法不同,面向?qū)ο蟮臋C(jī)載武器管理系統(tǒng)仿真軟件通過多層次封裝來完成一定的仿真任務(wù)。因此,機(jī)載武器管理系統(tǒng)仿真軟件程序設(shè)計(jì)的關(guān)鍵是如何進(jìn)行類層次設(shè)計(jì)[5-7]。
?、?類層次設(shè)計(jì)
在不同層次上對(duì)仿真軟件進(jìn)行類封裝,一種是基于仿真平臺(tái)的各功能模塊進(jìn)行封裝構(gòu)成仿真層(模塊層),另一種是把平臺(tái)看成物理系統(tǒng)對(duì)象(系統(tǒng)層),平臺(tái)由各種實(shí)際物理系統(tǒng)構(gòu)成,各系統(tǒng)在物理上存在著明確而且直觀的信息交換。在該層次上進(jìn)行類封裝的優(yōu)點(diǎn)不僅是與人們認(rèn)知真實(shí)系統(tǒng)的認(rèn)識(shí)相同,使人容易認(rèn)識(shí),而且按照物理系統(tǒng)進(jìn)行類封裝時(shí),一個(gè)物理系統(tǒng)可由其他對(duì)象構(gòu)成,是可分的,不必是唯一的一個(gè)類。
⑵ 仿真系統(tǒng)的類層次設(shè)計(jì)
對(duì)于仿真系統(tǒng)的類層次設(shè)計(jì),首先在功能模塊層上建立封閉的模塊類,如開關(guān)量類、顯示類、外掛武器接口類、起落架類、武器控制板類、其他航電系統(tǒng)類、節(jié)點(diǎn)數(shù)據(jù)交換類等;然后建立仿真系統(tǒng)層類。雖然仿真中只是模擬了上述各系統(tǒng)的功能,但在物理上是單獨(dú)的實(shí)際物理系統(tǒng)。總之,在進(jìn)行仿真系統(tǒng)的開發(fā)時(shí),不是按單一的類層次進(jìn)行設(shè)計(jì),而是使用了3種類層次。這樣做的好處是,對(duì)于操作人員使用實(shí)際物理系統(tǒng)對(duì)象層很方便,而當(dāng)仿真任務(wù)需求發(fā)生改變時(shí),可以把仿真系統(tǒng)對(duì)象層拆散再組合,又具有很強(qiáng)的靈活性。仿真系統(tǒng)的類層次樹狀結(jié)構(gòu)如圖2所示。
2.2 仿真系統(tǒng)軟件程序開發(fā)
對(duì)所建立的各模塊的模型,分別封裝成相對(duì)獨(dú)立的類,在這些類群的基礎(chǔ)上,根據(jù)它們?cè)谙到y(tǒng)中的作用,在求解模型過程中調(diào)用這些類。程序開發(fā)過程中充分利用面向?qū)ο蠹夹g(shù)的封裝特性[8-10]。
2.2.1 類的建立
結(jié)合C++語(yǔ)言中類的聲明特點(diǎn),設(shè)定飛機(jī)的機(jī)型為Plane,根據(jù)前面劃分的對(duì)象,建立相應(yīng)的類如下:CInitSelWCS、CPlaneWCS、CPlaneWeapon、CPlaneLauncher、CPlaneUndercarriage、CPlaneDisplay、CPlaneControlPanel、CPlaneCommu等。
把用于信息傳遞的對(duì)象聲明為如下相應(yīng)結(jié)構(gòu):DoubleTable、SingleTable、WCSState、WeaponState、WCSControl、InitDataWCS等。
2.2.2 程序框架設(shè)計(jì)
使用Visual C++6.0作為開發(fā)工具,充分利用C++語(yǔ)言的面向?qū)ο蟮奶匦?,建立一個(gè)工程名為WCS的基于MFC的單文檔/視窗程序。
?、?流程圖
程序開發(fā)的流程圖如圖3所示。
?、?主要的類
?、貱WCSView
該視圖類由CFormView類派生而來,主要完成人機(jī)交互的工作,包括機(jī)型選擇、初始化機(jī)載武器管理系統(tǒng)狀態(tài)控制量,以及輸出機(jī)載武器管理系統(tǒng)狀態(tài)。比如,使用WcsPanel=new CPlaneControlPanel來初始化控制量。
機(jī)載武器管理系統(tǒng)狀態(tài)的初始化是通過接受來自對(duì)話框CInitSelWCS的數(shù)據(jù)來實(shí)現(xiàn)的。
②CInitSelWCS
該類由話框類CDialog派生而來,用于初始化狀態(tài),包括外掛配置和機(jī)載武器管理系統(tǒng)各操縱機(jī)構(gòu)狀態(tài)設(shè)置。
?、跜WCSDoc
該文檔類主要完成原始數(shù)據(jù)的存取。由于數(shù)據(jù)比較多,故數(shù)據(jù)的管理使用結(jié)構(gòu)WCSInitData,語(yǔ)句如下:
WCSInitData=new InitDataWCS;
在InitDataWCS類的構(gòu)造函數(shù)里把所有數(shù)據(jù)一次性讀入內(nèi)存中,保證實(shí)時(shí)性;同時(shí)動(dòng)態(tài)生成數(shù)據(jù),內(nèi)存中只有飛機(jī)機(jī)載武器管理系統(tǒng)的原始數(shù)據(jù),節(jié)約計(jì)算機(jī)資源。
3 仿真結(jié)果
采用該仿真系統(tǒng)進(jìn)行一系列的武器管理和控制實(shí)驗(yàn),結(jié)果表明,該仿真系統(tǒng)不僅能很好地管理和控制各型武器,而且還具有開放性、融合性、可持續(xù)性。
4 結(jié)論
本文應(yīng)用軟件工程中面向?qū)ο蟮乃枷敕椒?、模塊化建模的理論,以及機(jī)載武器管理系統(tǒng)的工作原理,對(duì)機(jī)載武器管理系統(tǒng)仿真系統(tǒng)的設(shè)計(jì)、實(shí)現(xiàn)、編程、集成和測(cè)試進(jìn)行了較深入的研究。主要進(jìn)行了以下幾個(gè)方面的研究:
?、?通過分析得出機(jī)載武器管理系統(tǒng)的控制機(jī)理,建立了相應(yīng)的仿真模型;
?、?根據(jù)系統(tǒng)的功能需求,研究了機(jī)載武器管理系統(tǒng)仿真實(shí)現(xiàn)的總體方案,對(duì)系統(tǒng)進(jìn)行了模塊劃分,闡述了各主要模塊的功能,分析了仿真軟件開發(fā)的主要技術(shù)途徑和實(shí)現(xiàn)手段;
⑶ 使用面向?qū)ο蟮姆椒ň幹屏朔抡孳浖?,分析了仿真軟件開發(fā)過程中的關(guān)鍵技術(shù),如在不同操作層上建立仿真對(duì)象,并對(duì)相關(guān)技術(shù)進(jìn)行了理論上的分析和探討。
參考文獻(xiàn)
[1] 孫隆和,等. 外掛管理系統(tǒng)譯文集[M]. 洛陽(yáng):中航總613所, 1991.
[2] 王紅衛(wèi). 建模與仿真[M]. 北京 :科學(xué)出版社, 2002.
[3] 劉興堂,吳曉燕. 現(xiàn)代系統(tǒng)建模與仿真技術(shù)[M]. 西安:西北工業(yè)大學(xué)出版社, 2001.
[4] 周彥,戴劍偉. HLA仿真程序設(shè)計(jì)[M]. 北京:電子工業(yè)出版社, 2002.
[5] 張毅坤,左詠露,姚全珠. 面向?qū)ο筌浖y(cè)試的特點(diǎn)及方法[J].西安理工大學(xué)學(xué)報(bào), 2002,18(4):361-365.
[6] 王行仁. 飛行實(shí)時(shí)仿真系統(tǒng)及技術(shù)[M]. 北京:北京航空航天大學(xué)出版社, 1998.
[7] 康鳳舉. 現(xiàn)代仿真技術(shù)與應(yīng)用[M]. 北京:國(guó)防工業(yè)出版社, 2001.
[8] 錢能. C++程序設(shè)計(jì)教程[M]. 北京:清華大學(xué)出版社,1999.
[9] 普悠瑪數(shù)位科技. Visual C++游戲設(shè)計(jì)入門[M]. 北京:機(jī)械工業(yè)出版社, 2002.
[10] 張海藩. 軟件工程導(dǎo)論[M]. 北京:清華大學(xué)出版社, 1998.