王 興 王 軍 劉鎮瑜 黃 飛
雷達探測目標可視化可以為戰場態勢推演、作戰評估等提供依據[1]。在雷達探測仿真試驗中,合理高效地直觀顯示雷達探測跟蹤效果需要切實可信性可視化方法。目前,越來越多的工程人員利用可視化工具完解決數據的顯示問題,例如文獻[2]實現了基于Unity3D的飛行可視化仿真系統,文獻[3]實現了基于三維分形地形生成理論,采用提取某一地形區域的Google Earth衛星遙感電子地圖高程數據來生成數字高程模型的方法。目前主要的可視化工具包括:Matlab、Vega、0penGL+VC等。其中Matlab具有快捷的數據處理以及強大的分析能力,但是Matlab的圖文效果比較差,可視化效果不理想;Vega可以很好地實現三維可視化,但是開發過程較為復雜,開發周期比較長。基于0penGL+Vc構建可視化環境需要深厚編程能力,開發難度是最大的。美國 AGI(Analytical Graphics,Inc.)公司開發的STK(Systems Toolkit)軟件是先進的商業化仿真軟件,廣泛應用于航空航天、衛星、導航、雷達、通信、電子戰等領域的仿真、設計和分析應用[4],并能展示豐富的電子對抗效果。本文以雷達對空中飛行目標的跟蹤為例,研究分析了基于STK平臺的目標跟蹤態勢實現過程及效果。
本文設計的雷達探測目標可視化工具能夠實時性進行數據分析、三維探測跟蹤場景顯示等功能,具體功能包括:
1)實時性。可視化實時處理模塊在雷達探測到目標時,實現實時顯示目標的位置、速度、雷達波束變化等信息。
2)三維顯示。三維顯示主要完成被探測跟蹤目標飛行中的三維顯示跟蹤,三維顯示場景包括飛行目標的背景場景、雷達三維波束、被探測目標三維模型等信息。
3)數據存儲與回放。本文設計的可視化系統能夠全數據存儲三維可視化數據,并提供三維態勢回放功能。
利用跟蹤目標的軌跡數據以及雷達探測距離及波束數據對目標三維模型及雷達探測三維模型進行驅動,在STK中完成雷達探測跟蹤某目標的可視化。基于STK的雷達探測跟蹤目標可視化系統的結構圖如圖1所示。

圖1 可視化系統結構圖
圖1 給出了可視化系統結構圖,包括目標、雷達數據輸入模塊、目標三維模型及其控制模塊、雷達三維模型及控制模塊以及可視化模塊。
1)目標、雷達數據輸入模塊
STK采用WGS-84地球橢球模型,它集成了許多航空航天領域常用的坐標系,包括地心坐標系(對應于STK中的Earth Fixed坐標系)、地心慣性坐標系(對應于STK中的Earth Inertial或J2000坐標系)、彈體坐標系(對應于STK中的Body坐標系)等。本模塊可以將不同坐標系下的軌跡數據轉換為地心坐標系或者地心慣性坐標系等STK所需格式的軌跡數據。
2)目標、雷達三維模型及其控制模塊
STK三維模型文件以ASCII碼形式存儲在文件中。一個模型包括一個或者多個在模型文件中定義的組件。每個組件都描述模型的一個特殊部分,一些模型包括細節的程度能用于復雜或者簡單的演示模型。模型動作文件包含一個以時間為序的數據列表。
目標運動驅動數據及雷達波束控制數據保存在文件中,并通過一定的計算隨時間序列在地圖上驅動數據點的生成。
3)STK可視化模塊
該模塊由STK計算模塊讀取數據文件自動驅動三維軌跡仿真場景,演示飛行器的飛行過程,動態顯示飛行器任意時刻的速度、位置、姿態以及飛行軌跡,可視化仿真結束后可以生成軌跡數據報告、姿態數據報告以及各種數據曲線。
在不考慮雷達干擾情況下,雷達探測到的目標距離就是雷達最大探測距離,按照雷達方程[5]計算如下:

式中,Pt為發射功率,Gt為發射天線功率增益,Gr為接收天線功率增益,σ為雷達目標截面積,λ為波長,Ft為發射天線到目標的方向圖傳播因子,Fr為目標到接受天線的方向圖傳播因子,(S N)min為最小可檢測信噪比,k為波爾茲曼常數,Ts為接收系統噪聲溫度,Bn為接收機檢波前濾波器的噪聲帶寬,L為系統損耗因子。
式(1)給出的是基本的雷達探測距離模型,實際上雷達會收到各種干擾,其探測距離并不是理想的探測距離,而本文研究探測跟蹤可視化方法,并不是為了研究干擾情況下雷達探測距離建模問題,因此,我們采用式(1)作為探測模型,計算雷達探測距離,并作為驅動雷達探測波束可視化的依據。
三維模型格式眾多(例如:SRL,STEP,IGES,3DS,DAE,FBX,OBJ,MD2,MDL,X等),這些模型格式之間大多可以相互轉換。對于STK9.2,僅支持DAE和MDL兩種模型格式。基于這兩種模型格式,STK還支持一些輔助特性,比如關節、附著點等。通過這些輔助特性,STK能夠實現更精細的模型控制,比如警戒雷達對目標的跟蹤掃描等。下面對雷達三維模型創建,及雷達天線輔助特性的設置進行研究。
4.1.1 DAE模型
DAE(Digital Asset Exchange,數據資源交換),是COLLADA的模型文件。COLLADA最早是由索尼(Sony)提出的基于XML的一個開放的、免費的數據交換標準,通過XMLSchema的技術展現三維數字模型,有著十分優秀的可移植性[6~7]。利用3D Studio Max[8],Maya[9],Softimage[10],Blender[11],Google SketchUp[12]等建模工具可以直接創建DAE模型,也可以利用Core,Deep Exploration,olyTrans等轉換工具,將其它格式的模型文件轉換為DAE模型。一個DAE文件結構的實例如圖2所示。

圖2 DAE文件結構
STK基于DAE模型的開放性,添加了一些其特有的輔助特性,比如關節(Articulations,可用于設置模型中能做平移/縮放/旋轉動作的功能組件)、特效附著點(Effect Attach Points,可用于設置模型煙霧等特效的起始位置)、傳感器附著點(Sensor At?tach Points,可用于設置傳感器的起始位置)、指向元素(Pointable Elements,可用于設置模型關節組件的空間指向)、太陽面板組(Solar Panel Groups,可用于模型太陽面板的功率分析)、非遮蔽材料(Non-obscuring Material,可用于傳感器的遮蔽分析),這些輔助特性使用XML標記進行擴展。輔助特性可以直接寫入DAE文件內部,也可以寫入與DAE文件同目錄同名的ANC文件(Ancillary Fea?tures File)中,ANC文件是STK內部支持的一種文件格式。前者的不足是在模型格式轉換時,輔助特性可能會丟失。本文采用獨立構建ANC文件的方式來為模型添加輔助特性。一個完整的雷達DAE模型文件對應的ANC文件結構如下所示:
1<?xml version=“1.0”standalone=“yes”?>
2<ancillary_model_data version=“1.0”>
3 <articulations>
4 <articulation name=“azimuth1”type=“trans?form”>
5 <stage init="0"max="180"min="-180"name=“azimuthz"type="zRotate"/>
6 <assigned_nodes>
7 azimuth
8 </assigned_nodes>
9 </articulation>
10 <articulation name=“pitch1”type=“transform”>
11 <stage init=“0”max=“90”min=“0”name=“pitchx”type=“xRotate”/>
12 <assigned_nodes>
13 pitch
14 </assigned_nodes>
15 </articulation>
16 </articulations>
17 <pointing_data>
18 <pointing node=“azimuth”vector=“0 1 0”/>
19 <pointing node=“pitch”vector=“0 1 0”/>
20 </pointing_data>
21 <sensor_origins>
22 pitch
23 </sensor_origins>
24</ancillary_model_data>
其中:
1)第1、2、24行為基本的ANC文件結構;
2)第3~16行創建模型關節,第4、10行設置模型關節名稱,該名稱會出現在STK的模型關節的設置中;第5、11行設置關節的運動方式,分別為繞各自的z、x軸進行旋轉,同時還設置了運動的初始、最大、最小值;第7、13行是關節對應于DAE模型中三維節點的ID(azimuth、pitch);
3)第17~20行設置DAE模型中節點的指向向量,vector賦值的三個元素分別為x、y、z軸,如vec?tor=“0 1 0”為節點的y軸方向;
4)第21~23行設置傳感器的附著點,附著點為DAE節點(pitch)的坐標原點。
通過以上設置就可以實現雷達天線在水平和俯仰兩個維度跟隨目標轉動,同時也將雷達波束固連在雷達罩的中心。
模型創建完成后的文件目錄結構如圖3所示。
4.1.2 MDL模型
MDL是最早用于游戲Quake(雷神之錘)的三維模型,它不能直接創建。在STK官方說明中,需要將其它模型格式先轉成Lightwave(.lwo)格式,再用STK的轉換工具LwConvert將Lightwave格式轉換為MDL格式[13]。MDL模型,除了包含DAE模型可添加的輔助特性外,還包含透明、豐富的面繪制屬性等其他輔助特性[14],這些輔助特性只能寫入MDL文件內部。由于MDL模型的通用性較差、配置維護困難等不足,本文不做詳細闡述。

圖3 雷達模型文件目錄結構

圖4 目標跟蹤場景圖
本節構建了一個地面雷達車跟蹤飛機的三維場景,如圖4(a)所示。場景中,隨著飛機的運動,雷達天線會跟隨飛機在水平和俯仰兩個維度轉動,并始終保持天線指向飛機;同時,雷達的波束也會跟隨飛機運動,并且波束的起始位置固連于雷達天線中心。場景的具體配置如下:
1)飛機模型設置
(1)添加Aircraft節點并關聯一個三維飛機模型;
(2)為飛機模型設置飛行路線。
2)雷達模型設置
(1)創建雷達車DAE模型及ANC文件;
(2)創建一個Facility節點并關聯雷達車DAE模型;
(3)設 置 雷 達 屬 性 的 3D Graphics→Model Pointing的兩個Pointable Elements指向飛機目標,以實現雷達天線在水平和俯仰兩個維度跟隨目標轉動。
3)傳感器設置
(1)為雷達添加傳感器Sensor以表示雷達跟蹤波束;
(2)設置傳感器的Basic→Pointing的Pointing Type為Target,將飛機節點設置到Assigned Targets,以實現雷達波束對飛機的跟蹤掃描;
(3)設置傳感器的3D Graphics→Vertex Offset,選擇使用Attach Point,并選中相應的附著點(pitch),將傳感器起點定位到雷達天線中心位置。
場景運行效果如圖4(b)、4(c)、4(d)所示。
STK是一款性能成熟、功能強大的系統仿真工具,但是由于政治、技術等因素限制,國內相關研究資料比較稀缺,造成很多態勢表現效果不能被及時發現并應用到雷達探測跟蹤試驗過程中。另外,隨著其它系統仿真工具和可視化工具的開發,需要借鑒STK中的相關技術實現,到達快速固化需求、優化系統架構和加快開發進度的目的。本文研究為上述兩項工作開展做了前期準備,其可視化方法能夠很好地用于工程實踐中。
[1]韓曉寧,陳希,王嬌艷.三維海戰場雷達探測可視化研究與實現[J].計算機科學,2013,40(3):147-150.
[2]郭聰,王守尊.基于Unity3D的飛行可視化仿真系統設計[J].電子設計工程,2016,24(5):47-50.
[3]田明銀,蘭一麟濤,錢偉.基于分形算法的三維地形可視化應用[J].電子設計工程,2016,24(14):20-23.
[4]李志強,吳曦,榮明等.基于信息系統體系對抗STK基礎仿真應用[M].北京:軍事科學出版社,2014.
[5]SkolnikMI.雷達手冊[M].王軍,等譯.北京:電子工業出版社,2003
[6]collada標準[S].http://www.khronos.org/collada.
[7]徐俊杰,孫長嵩,張安真.基于XML的三維場景數據的組織與表示模型[C]//2006北京地區高校研究生學術交流會——通信與信息技術會議論文集(下).2006:1542-1547.
[8]余燁,劉曉平.面向VR系統的三維模型轉換工具[J].圖學學報,2008,29(5):72-78.
[9]徐國艷,蘇家有.淺析maya軟件建模的基本流程[J].軟件工程,2015(2):32-34.
[10]Avid|Softimage,陳劍芳,楊明惠.SOFTIMAGE|XSI 3.5標準教程[M].北京:北京希望電子出版社,2003.
[11]錢旭冉,朱明,蔡栩.基于Blender的天文數據三維可視化[J].天文研究與技術,2015,12(2):204-211.
[12]范葛芹,周榮生,盧其飛.基于Google SketchUp的數字化校園三維建模技術的研究[J].軟件,2017,38(1):53-57.
[13]姚宇婕,年福純,張娟等.STK三維模型制作與優化方法研究[J]. 飛行器測控學報,2013,(02):156-161.
[14]STK Suite.STK9.2用戶手冊.