徐向毅,張宏亮
(駐航天科工集團(tuán)210所軍事代表室,西安 710065)
高技術(shù)武器的廣泛使用,使得戰(zhàn)爭由傳統(tǒng)二維平面的角逐向陸、海、空、天、電、網(wǎng)等多維領(lǐng)域的較量迅速蛻變。為應(yīng)對敵方實(shí)施準(zhǔn)確的偵查和強(qiáng)烈的電磁干擾后進(jìn)行的多方位、多批次、高密度的飽和攻擊,末端防御武器系統(tǒng)應(yīng)運(yùn)而生。車載通用末端防御武器系統(tǒng)是專門用于近距離導(dǎo)彈防御的武器系統(tǒng)[1],是地面防空反導(dǎo)體系的重要組成部分。
車載末端防御武器系統(tǒng)組成結(jié)構(gòu)復(fù)雜、數(shù)據(jù)傳輸量大、實(shí)時(shí)性要求高、系統(tǒng)的調(diào)試和試驗(yàn)難度大,為便于系統(tǒng)調(diào)試和測試,發(fā)生故障時(shí)的故障定位,武器系統(tǒng)威力與精度的評估,文中以車載末端防御武器系統(tǒng)的高炮車為例,設(shè)計(jì)實(shí)現(xiàn)了一種專用通訊數(shù)據(jù)錄取與評估設(shè)備。
車載末端防御武器系統(tǒng)的重要組成——高炮車主要由炮瞄雷達(dá)、光電跟蹤設(shè)備、火控設(shè)備、高速火炮、導(dǎo)航設(shè)備、通信設(shè)備等單機(jī)設(shè)備組成。各單機(jī)設(shè)備間通過以太網(wǎng)進(jìn)行數(shù)據(jù)交換,使用雙絞線連入以太網(wǎng)交換機(jī)。通信協(xié)議采用UDP無連接的用戶數(shù)據(jù)報(bào)協(xié)議。
單機(jī)設(shè)備發(fā)送的以太網(wǎng)報(bào)文都通過交換機(jī),若交換機(jī)采用具有端口鏡像功能的二層或三層交換機(jī),同時(shí)錄取評估設(shè)備連接交換機(jī),理論上錄取評估設(shè)備可以獲取到所有通過交換機(jī)的網(wǎng)絡(luò)報(bào)文。因此,通用末端武器防御系統(tǒng)錄取評估設(shè)備與武器系統(tǒng)中高炮車的連接示意圖如圖1所示。
根據(jù)需求,末端防御武器系統(tǒng)錄取評估設(shè)備應(yīng)具有以下主要功能:
1)系統(tǒng)中各單機(jī)設(shè)備發(fā)送報(bào)文的捕獲、實(shí)時(shí)解析、錄取存放,以及解析得到的數(shù)據(jù)、狀態(tài)、故障信息的顯示;
2)錄取報(bào)文的回放功能,支持報(bào)文自動(dòng)回放和按幀回放;
3)十進(jìn)制與十六進(jìn)制查詢功能,支持?jǐn)?shù)據(jù)范圍設(shè)置與超差標(biāo)識(shí);
4)報(bào)文導(dǎo)出功能,支持任意報(bào)文以文本文件格式導(dǎo)出;
5)搜索指揮車的模擬功能,向戰(zhàn)斗車發(fā)送目標(biāo)指示等報(bào)文。
6)炮瞄雷達(dá)、光電跟蹤設(shè)備的威力評估,武器系統(tǒng)精度評估,以及評估結(jié)果的顯示與導(dǎo)出功能。
為便于用戶的操作,末端防御武器系統(tǒng)錄取評估軟件運(yùn)行于Windows平臺(tái),開發(fā)工具采用Visual C++ 6.0,用戶界面基于對話框設(shè)計(jì),并采用多線程設(shè)計(jì),界面顯示刷新與數(shù)據(jù)處理分屬不同的線程,保證了用戶操作與界面顯示的互不影響。
因武器系統(tǒng)包含多個(gè)單機(jī)設(shè)備,每個(gè)單機(jī)設(shè)備發(fā)送多種網(wǎng)絡(luò)報(bào)文,每個(gè)網(wǎng)絡(luò)報(bào)文包含設(shè)備工作狀態(tài)、故障信息、運(yùn)行數(shù)據(jù)等大量信息,為便于用戶的瀏覽及查看,軟件左側(cè)區(qū)域采用多標(biāo)簽頁設(shè)計(jì),首標(biāo)簽頁以圖形及數(shù)據(jù)的方式顯示跟蹤目標(biāo)信息及系統(tǒng)各個(gè)設(shè)備運(yùn)行狀態(tài),其中雷達(dá)態(tài)勢圖動(dòng)態(tài)顯示目標(biāo)進(jìn)入過程,火炮三維模型實(shí)時(shí)顯示火炮運(yùn)轉(zhuǎn)方式,其余每個(gè)標(biāo)簽頁分別顯示各單機(jī)設(shè)備發(fā)送網(wǎng)絡(luò)報(bào)文及解析出的詳細(xì)信息(參見數(shù)據(jù)回放);軟件右側(cè)區(qū)域顯示系統(tǒng)內(nèi)各單機(jī)設(shè)備的網(wǎng)絡(luò)連接狀態(tài)、系統(tǒng)火力資源及故障狀態(tài)等。數(shù)據(jù)錄取界面如圖2所示。
為方便用戶對系統(tǒng)試驗(yàn)過程的跟蹤和故障復(fù)現(xiàn),錄取評估設(shè)備提供數(shù)據(jù)回放功能,數(shù)據(jù)回放除可按0.5倍、1倍和2倍速率回放,還提供單幀回放和數(shù)據(jù)幀跳轉(zhuǎn)功能,回放過程中用戶可通過設(shè)備標(biāo)簽和報(bào)文標(biāo)簽選擇相應(yīng)報(bào)文進(jìn)行查看,極大的方便了用戶對試驗(yàn)過程的數(shù)據(jù)分析和故障定位。數(shù)據(jù)回放界面如圖3所示。
在數(shù)據(jù)查詢界面中,用戶可以選擇以十進(jìn)制或十六進(jìn)制的方式顯示系統(tǒng)網(wǎng)絡(luò)報(bào)文,支持跳轉(zhuǎn)至指定幀,以及瀏覽當(dāng)前幀上一幀數(shù)據(jù),下一幀數(shù)據(jù)。為方便用戶快速發(fā)現(xiàn)故障并定位,軟件支持用戶對指定數(shù)據(jù)設(shè)置正常數(shù)值范圍,對于超過正常范圍的數(shù)據(jù),以紅色字體高亮顯示,從而方便用戶在大量數(shù)據(jù)中快速定位異常數(shù)據(jù)。數(shù)據(jù)查詢界面如圖4所示。
在以太網(wǎng)中,幀(數(shù)據(jù)包)作為組成數(shù)據(jù)的基本單位來進(jìn)行數(shù)據(jù)交換,它采用的是帶碰撞檢測的載波偵聽多址進(jìn)行訪問,以CSMA/CD(載波監(jiān)聽多點(diǎn)介入/碰撞檢測)的方式進(jìn)行發(fā)送。由于CSMA/CD的特點(diǎn),使得該網(wǎng)絡(luò)的用戶可以通過網(wǎng)卡的設(shè)置,獲得發(fā)往其他用戶地址的數(shù)據(jù),并根據(jù)數(shù)據(jù)中的內(nèi)容對網(wǎng)絡(luò)的狀態(tài)進(jìn)行監(jiān)控。數(shù)據(jù)包捕獲機(jī)制主要由最底層數(shù)據(jù)包捕獲機(jī)制、數(shù)據(jù)包過濾機(jī)制和針對用戶程序的最高層接口組成。如果用戶想得到需要的數(shù)據(jù)包,可以通過數(shù)據(jù)包捕獲機(jī)制提供的數(shù)據(jù)接口調(diào)用庫中的相關(guān)函數(shù),根據(jù)預(yù)定義的過濾規(guī)則,數(shù)據(jù)包過濾機(jī)制對數(shù)據(jù)包進(jìn)行檢索,把需要的數(shù)據(jù)包傳遞給應(yīng)用程序。
Windows平臺(tái)下,數(shù)據(jù)包的捕獲可以通過調(diào)用NDIS(網(wǎng)絡(luò)驅(qū)動(dòng)程序接口規(guī)范)庫函數(shù)來實(shí)現(xiàn),使用此方法功能性強(qiáng),但可能導(dǎo)致系統(tǒng)崩潰;也可以通過原始套接字(Raw Socket)實(shí)現(xiàn),方法簡單但功能有限,只能捕獲高層的網(wǎng)絡(luò)數(shù)據(jù)包;也可以使用第三方開發(fā)的庫,例如WinPcap[2]。
末端防御武器系統(tǒng)的通信網(wǎng)絡(luò)是以交換機(jī)為連接節(jié)點(diǎn)的局域網(wǎng)。系統(tǒng)用于數(shù)據(jù)交換的信息經(jīng)過應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、鏈路層等層層封裝后,通過網(wǎng)卡傳輸出去,到達(dá)目的主機(jī)后每層協(xié)議再剝掉相應(yīng)的首部,最后將應(yīng)用層數(shù)據(jù)交給應(yīng)用程序處理。以太網(wǎng)幀格式如圖5所示。
因武器系統(tǒng)通信局域網(wǎng)中充斥著ARP協(xié)議等廣播數(shù)據(jù)包,需對捕獲到的數(shù)據(jù)包設(shè)置過濾規(guī)則,剔除無用數(shù)據(jù)包,提高系統(tǒng)數(shù)據(jù)處理效率。根據(jù)對武器系統(tǒng)內(nèi)各單機(jī)設(shè)備的通信設(shè)置及以太網(wǎng)幀格式的分析,按照以太網(wǎng)幀中類型字段為IP數(shù)據(jù)報(bào)(0x0800),IP數(shù)據(jù)報(bào)中源IP地址與目的IP地址字段為系統(tǒng)內(nèi)單機(jī)設(shè)備IP,IP數(shù)據(jù)報(bào)協(xié)議字段為UDP(0x17),UDP段中源端口號與目的端口號為系統(tǒng)內(nèi)單機(jī)設(shè)備設(shè)置的發(fā)送、接收端口,UDP段數(shù)據(jù)字段前8位為系統(tǒng)自定義通信報(bào)文的報(bào)頭符等限定條件設(shè)置過濾規(guī)則,過濾后得到的數(shù)據(jù)包即為武器系統(tǒng)通信報(bào)文。
武器系統(tǒng)通信自定義報(bào)文的報(bào)文信息標(biāo)示字段由發(fā)方設(shè)備與收方設(shè)備唯一的8位設(shè)備標(biāo)示組成,且每個(gè)單機(jī)設(shè)備發(fā)送至其他單機(jī)設(shè)備的UDP報(bào)文的報(bào)文長度各不相同,因此過濾后的UDP數(shù)據(jù)包根據(jù)報(bào)文信息標(biāo)示與報(bào)文長度可以確定何種設(shè)備發(fā)送的何種報(bào)文,即完成了報(bào)文的識(shí)別。然后調(diào)用相應(yīng)的報(bào)文解析函數(shù),解析得到傳輸報(bào)文中包含的數(shù)據(jù)、設(shè)備狀態(tài)等信息,在錄取評估設(shè)備界面上顯示。
系統(tǒng)中各單機(jī)設(shè)備通訊速率不同,一個(gè)周期內(nèi)各單機(jī)發(fā)送的報(bào)文數(shù)目不同,有的單機(jī)還以不同的速率向多個(gè)相關(guān)單機(jī)發(fā)送不同類型報(bào)文,如果按照即發(fā)即存的處理機(jī)制會(huì)造成數(shù)據(jù)混亂。由于網(wǎng)絡(luò)協(xié)議中要求各單機(jī)報(bào)文中都要包括系統(tǒng)時(shí)標(biāo),因而可以利用系統(tǒng)時(shí)標(biāo)進(jìn)行報(bào)文分組。
現(xiàn)定義某單機(jī)(如火控設(shè)備)相鄰報(bào)文時(shí)間段之內(nèi)的所有單機(jī)報(bào)文為一幀記錄,由于每幀記錄中包含多條各單機(jī)報(bào)文,為方便查詢和維護(hù),文件開始位置定義了數(shù)據(jù)幀總數(shù)、文件保存時(shí)間等信息。為縮短響應(yīng)時(shí)間,錄取的數(shù)據(jù)包文件采用雙向鏈表的數(shù)據(jù)結(jié)構(gòu)進(jìn)行存放,通過前一幀偏移地址、后一幀偏移地址,以及當(dāng)前幀長度可以快速定位到指定幀的起始位置,雙向鏈表結(jié)構(gòu)可大大減少遍歷整個(gè)數(shù)據(jù)包文件的時(shí)間復(fù)雜度。文件存儲(chǔ)格式見圖6。
數(shù)據(jù)錄取評估設(shè)備除實(shí)現(xiàn)數(shù)據(jù)錄取功能外,還可完成系統(tǒng)網(wǎng)絡(luò)通信狀態(tài)統(tǒng)計(jì)和設(shè)備精度評估,網(wǎng)絡(luò)通信狀態(tài)統(tǒng)計(jì)各個(gè)設(shè)備網(wǎng)絡(luò)報(bào)文丟包率,根據(jù)數(shù)據(jù)報(bào)文中的時(shí)標(biāo)數(shù)據(jù),完成數(shù)據(jù)發(fā)送延時(shí)的數(shù)據(jù)統(tǒng)計(jì),為系統(tǒng)分析提供輔助手段。
每次試驗(yàn)后,軟件可以利用保存的報(bào)文數(shù)據(jù)和試驗(yàn)基地提供的目標(biāo)真值數(shù)據(jù)進(jìn)行數(shù)據(jù)分析和精度統(tǒng)計(jì)。目標(biāo)真實(shí)位置由靶機(jī)或靶彈掛載的GPS記錄儀提供,其數(shù)據(jù)為GPS格式的經(jīng)緯度數(shù)據(jù),計(jì)算時(shí)需將其數(shù)據(jù)轉(zhuǎn)換為以地面載車為中心的坐標(biāo)空間下[3],以目標(biāo)真實(shí)位置為基準(zhǔn),按照距離、方位和高低數(shù)據(jù)進(jìn)行分段,分別統(tǒng)計(jì)各數(shù)據(jù)段的測量精度,再將本航次及多航次的精度數(shù)據(jù)進(jìn)行綜合,得出系統(tǒng)的精度數(shù)據(jù)。
精度統(tǒng)計(jì)流程圖如圖7所示。
2.3.1 目標(biāo)真實(shí)位置預(yù)處理
由于GPS記錄儀數(shù)據(jù)頻率與各分系統(tǒng)的數(shù)據(jù)記錄頻率不一致,造成真值數(shù)據(jù)與測量數(shù)據(jù)無法對齊,一般而言GPS記錄儀數(shù)據(jù)頻率較慢,一個(gè)記錄周期內(nèi)各分系統(tǒng)有多個(gè)記錄數(shù)據(jù),因而需要對GPS記錄數(shù)據(jù)進(jìn)行線性插值,或采用最小二乘法等數(shù)學(xué)方法,將目標(biāo)真實(shí)位置插值成與測量數(shù)據(jù)相同時(shí)間間隔的位置數(shù)據(jù),便于進(jìn)行數(shù)據(jù)計(jì)算和分析[4]。
2.3.2 跟蹤精度統(tǒng)計(jì)
本系統(tǒng)中需要統(tǒng)計(jì)系統(tǒng)的距離、方位和高低誤差[5]。根據(jù)精度統(tǒng)計(jì)要求,首先需要對數(shù)據(jù)進(jìn)行預(yù)處理,采用3σ準(zhǔn)則將異常值剔掉,然后計(jì)算系統(tǒng)精度均值,標(biāo)準(zhǔn)差和均方根值。設(shè)Δijk為同一航次中第k次進(jìn)入第j航段的第i個(gè)誤差,則此航段的系統(tǒng)誤差為:
(1)
則同一航次進(jìn)入相同航段的系統(tǒng)誤差的平均值和離散值計(jì)算公式為:
(2)
(3)
同一航次進(jìn)入相同航段的總系統(tǒng)誤差計(jì)算公式為:
(4)
由式(1)~式(4)可以計(jì)算得到系統(tǒng)某一航段的總誤差數(shù)據(jù),軟件在計(jì)算出所有航段的精度數(shù)據(jù)后,在界面統(tǒng)一顯示,為系統(tǒng)分析和優(yōu)化提供數(shù)據(jù)支持。
2.3.3 火控解算精度統(tǒng)計(jì)
對火控系統(tǒng)的解算精度進(jìn)行分析,需要在獲得目標(biāo)真實(shí)位置的基礎(chǔ)上,根據(jù)試驗(yàn)氣象條件,進(jìn)行偏流解算,利用武器系統(tǒng)的彈道方程計(jì)算理論射擊諸元[6]。如圖8所示,橫軸為目標(biāo)運(yùn)動(dòng)時(shí)間,縱軸為斜距離。D(t)為目標(biāo)斜距離曲線。設(shè)當(dāng)前時(shí)刻為ti(A點(diǎn)),由于目標(biāo)的當(dāng)前位置可看做彈丸飛行時(shí)間τi時(shí)刻前即(ti-τi)時(shí)目標(biāo)(C點(diǎn))的未來點(diǎn),因而對當(dāng)前時(shí)刻位置進(jìn)行解算可看作是對(ti-τi)時(shí)刻目標(biāo)未來點(diǎn)的解算,得到的射擊諸元即可以看做在(ti-τi)時(shí)刻進(jìn)行射擊,經(jīng)過彈丸飛行時(shí)間τi,命中ti時(shí)刻目標(biāo)位置的理論諸元。B點(diǎn)為A點(diǎn)平移τi時(shí)刻所對應(yīng)的曲線Dy(t)中對應(yīng)點(diǎn)。
由于彈丸飛行時(shí)間由彈道方程和氣象條件解算[7],因而該時(shí)時(shí)間為非線性分布,D(t)與Dy(t)非線性平移,求解理想諸元時(shí)還需要進(jìn)行插值才能與火控的周期數(shù)據(jù)對齊。
解算精度的求解過程如圖9所示。
在設(shè)備設(shè)計(jì)整體上采用層次化、模塊化的設(shè)計(jì)思想,將整個(gè)系統(tǒng)劃分為幾個(gè)不同的子模塊,這種設(shè)計(jì)有利于軟件的后期維護(hù)和擴(kuò)展;多線程的設(shè)計(jì)使得用戶的操作和界面顯示不會(huì)影響到數(shù)據(jù)包的識(shí)別、抓取以及存放等,保證了用戶的可操作性和數(shù)據(jù)錄取的實(shí)時(shí)性需求;雙向鏈表的數(shù)據(jù)結(jié)構(gòu)存放錄取到的數(shù)據(jù)包,以及自定義的幀結(jié)構(gòu)使得數(shù)據(jù)包清晰有序,便于回放、查詢;操作人員可根據(jù)報(bào)文分析功能進(jìn)行系統(tǒng)故障的快速定位及故障原因的排查;軟件界面設(shè)計(jì)使得用戶操作方便快捷;跟蹤精度和火控解算精度統(tǒng)計(jì)功能為武器系統(tǒng)功能提供驗(yàn)證手段,該設(shè)備在系統(tǒng)聯(lián)調(diào)試驗(yàn)中取得了很好的應(yīng)用效果,可大幅提高武器系統(tǒng)科研生產(chǎn)效率。