1 引言
雷達(dá)在現(xiàn)代戰(zhàn)爭(zhēng)中不可或缺。雷達(dá)系統(tǒng)的仿真是雷達(dá)系統(tǒng)分析設(shè)計(jì)、模擬訓(xùn)練的一種重要手段,受到人們?cè)絹?lái)越多的重視。而雷達(dá)顯示器作為整個(gè)雷達(dá)系統(tǒng)顯示終端和人機(jī)交互界面,其仿真實(shí)現(xiàn)水平直接影響整個(gè)系統(tǒng)的仿真效果。
常見(jiàn)的平面位置顯示器PPI(Plane Position Indicator)仿真和航跡顯示多是基于Visual C++和OpenGl或VB直接開(kāi)發(fā),工作量大,結(jié)果不直觀,開(kāi)發(fā)周期長(zhǎng)。而GL Studio是以其為底層,具有豐富的外部程序接口,且支持“照片級(jí)”的紋理,在此基礎(chǔ)上進(jìn)一步開(kāi)發(fā),可減少工作量,提高效率.所生成的代碼方便移植。
仿真實(shí)現(xiàn)的基本思想:在GL Studio開(kāi)發(fā)環(huán)境下,對(duì)雷達(dá)顯示器上所有要顯示的圖形、符號(hào)及數(shù)字進(jìn)行建模,融合頂點(diǎn)RGBA值模擬掃描的余輝及目標(biāo)回波。在此基礎(chǔ)上調(diào)用API函數(shù)實(shí)時(shí)顯示航跡點(diǎn)、繪制航跡線,最終實(shí)現(xiàn)常規(guī)和偏心PPI雷達(dá)顯示器的仿真。
2 GL Studio簡(jiǎn)介
GL Studio是DISTI公司開(kāi)發(fā)的用于建立實(shí)時(shí)、三維、照片級(jí)的交互圖形顯示界面。用戶(hù)可在圖形設(shè)計(jì)窗口以所見(jiàn)即所得的效果完成所需界面的設(shè)計(jì)制作。通過(guò)代碼編輯器完成課題所需的邏輯仿真。其代碼生成器能將用戶(hù)完成的設(shè)計(jì)自動(dòng)轉(zhuǎn)換為C++和OpenGL代碼,這些代碼既可單獨(dú)編譯,也可嵌入到其他程序中編譯,避免大量的底層程序開(kāi)發(fā)。圖1為其邏輯結(jié)構(gòu)。
3 雷達(dá)PPI顯示器及其仿真方法
3.1 雷達(dá)PPI顯示器
雷達(dá)顯示器用來(lái)直觀顯示雷達(dá)所截獲的目標(biāo)信息和情報(bào)。常見(jiàn)的雷達(dá)顯示器有:A型顯示器、PPI顯示器、B型顯示器和E型顯示器。其中,A型顯示器通常用在天線不掃描的測(cè)量雷達(dá)和數(shù)據(jù)收集雷達(dá)中;PPI顯示器在距離和方位角的極坐標(biāo)下示意出目標(biāo)的斜距和方位角;B型顯示器通常用于空對(duì)空?qǐng)龊希灾苯亲鴺?biāo)形式反映搜索或監(jiān)視區(qū)域;E型顯示器用于地形跟隨雷達(dá)系統(tǒng)中,其橫坐標(biāo)表示距離,而縱坐標(biāo)表示俯仰角。
雷達(dá)顯示器顯示的一次信息是雷達(dá)的原始圖像,包括掃描線和目標(biāo)回波,采用徑向圓掃描;顯示的二次信息是數(shù)據(jù)處理機(jī)對(duì)一次信息進(jìn)行數(shù)字處理后生成的,還包括目標(biāo)的批號(hào)、航跡、速度、航向等。
這里針對(duì)使用廣泛且仿真難度較大的PPI顯示器進(jìn)行了研究,其他類(lèi)型顯示器均可在GL Studio平臺(tái)上進(jìn)行開(kāi)發(fā),它們之間的切換是通過(guò)定義一個(gè)GL Studio的GlsPush-Button或InputDevice及其回調(diào)函數(shù)操作主界面上的按鍵來(lái)完成的。
PPI顯示器的顯示畫(huà)面主要由掃描基線、方位基線、距離基線和目標(biāo)點(diǎn)跡組成。在其他PPI仿真實(shí)現(xiàn)方法中,掃描線的實(shí)時(shí)繪制需采用顯示圖形重畫(huà)或“異或” 等方法擦除原來(lái)的掃描基線,這將造成畫(huà)面抖動(dòng)或畫(huà)面出現(xiàn)斑點(diǎn)等現(xiàn)象。而采用基于GL Studio的仿真實(shí)現(xiàn)距離基線、方位基線、掃描線及其余輝的顯示均可在圖形編輯界面根據(jù)雷達(dá)探測(cè)距離和預(yù)定顯示器的大小一次完成,而它們的平移、縮放、旋轉(zhuǎn)也可方便的在GL Studio中實(shí)現(xiàn)。設(shè)置雷達(dá)顯示器底色為黃綠色以增強(qiáng)真實(shí)感。
3.2 掃描線余輝及旋轉(zhuǎn)的實(shí)現(xiàn)
掃描線余輝是指雷達(dá)熒光屏上的熒光質(zhì)的發(fā)光在電子束停止轟擊后仍能持續(xù)一定時(shí)間才消失的現(xiàn)象。一般將電子束停止轟擊后熒光亮度由最大值下降到其2%~5%所需的時(shí)間定義為余輝時(shí)間。由于余輝特性是隨時(shí)間非線性變化的(指數(shù)或?qū)?shù)曲線1,這里采用熒光亮度的一次指數(shù)衰減模型:
I=I0exp(-t/k) (1)
式中,I為余輝亮度,I0為涂層亮度,k為時(shí)間衰減常數(shù),t為衰減時(shí)間。
對(duì)于每種熒光質(zhì),I0和k都是常數(shù),I0越大,熒光衰減曲線越平坦,k越大則衰減時(shí)間t越長(zhǎng)。
假設(shè)某型雷達(dá)余輝時(shí)間2 s,雷達(dá)天線轉(zhuǎn)速R(deg/s),軟件實(shí)現(xiàn)直接采用RGB值表示余輝亮度,則亮度由最大值255衰減到5需要2 s.2 s中天線轉(zhuǎn)過(guò)的角度可計(jì)算:
A=Rt(deg) (2)
式中,A位余輝扇形的角度。
在GL Studio中畫(huà)出一個(gè)A°的扇形,逐個(gè)設(shè)置其n個(gè)頂點(diǎn)顏色的RGBA值,利用GL Studio中的顏色融合技術(shù),得到仿真掃描線的掃描余輝。其中第i個(gè)頂點(diǎn)(圓點(diǎn)除外)的Al-pha值A(chǔ)l為:
Al=255exp(-i/k) (3)
式中,k=n/ln(255/5)
設(shè)置頂點(diǎn)透明度隨逆時(shí)針?lè)较?正掃)和順時(shí)針?lè)较?回掃)逐漸增大,可直觀看到模擬出的掃描線余輝效果。
GL Studio內(nèi)置有一個(gè)以程序運(yùn)行時(shí)間為參數(shù)的虛函數(shù),將控制掃描線轉(zhuǎn)動(dòng)的代碼放入該函數(shù)中,掃描線轉(zhuǎn)動(dòng)角度為程序運(yùn)行時(shí)間的函數(shù),這樣便可實(shí)現(xiàn)掃描基線的動(dòng)態(tài)掃描。以某一扇區(qū)內(nèi)正掃為例:
//正掃描和逆掃描的掃描線顯示切換控制
scanLine一>Visibility(bool b);
//掃描基線實(shí)時(shí)旋轉(zhuǎn)控制
scanLine一>DynamicRotate(angle,Z_AXIS);
這樣既減少實(shí)時(shí)計(jì)算掃描線外端點(diǎn)坐標(biāo)的工作量,又消除了畫(huà)面抖動(dòng)或斑點(diǎn)產(chǎn)生,如圖2所示。
3.3 偏心PPI顯示器
在前視雷達(dá)中,雷達(dá)限制在某一扇區(qū)內(nèi)掃描,以使在給定方向上達(dá)到最大限度的擴(kuò)展掃描,這時(shí)需將PPI顯示器的中心偏離陰極射線管的中心。再采用GL Studio實(shí)現(xiàn)的常規(guī)PPI顯示器仿真畫(huà)面,通過(guò)鼠標(biāo)點(diǎn)擊確定偏心PPI顯示器中心點(diǎn),調(diào)用鼠標(biāo)事件回調(diào)函數(shù)實(shí)現(xiàn)定位、縮放等功能,從而達(dá)到對(duì)某一假定方位扇形的擴(kuò)展掃描,同時(shí)可通過(guò)將minorDi-visions顯示屬性設(shè)置為真,得到更精確的目標(biāo)方位角和距離。在PPI偏心顯示時(shí)需對(duì)顯示器的刻度位置做相應(yīng)調(diào)整,以便得到目標(biāo)更準(zhǔn)確的方位角和距離(圖2b)。
3.4 目標(biāo)回波模擬顯示
利用顏色設(shè)置函數(shù)實(shí)時(shí)改變目標(biāo)顏色的RGBA值來(lái)顯示目標(biāo)回波。圖3為目標(biāo)點(diǎn)跡顯示原理流程。
設(shè)定目標(biāo)在x.y方向的運(yùn)動(dòng)方程分別為一同定時(shí)變函數(shù)以簡(jiǎn)化問(wèn)題。實(shí)際目標(biāo)位置由飛行模塊實(shí)時(shí)傳遞的飛行參數(shù)確定,最終顯示效果為:當(dāng)目標(biāo)首次處于雷達(dá)波束范圍內(nèi)時(shí),目標(biāo)回波以最亮的形式顯示,隨著雷達(dá)天線的轉(zhuǎn)動(dòng),目標(biāo)不在雷達(dá)波束范圍后,由于余輝效應(yīng),目標(biāo)回波逐漸變暗變淡;若目標(biāo)再次被雷達(dá)搜索到,目標(biāo)再次被點(diǎn)亮。如果由于目標(biāo)的運(yùn)動(dòng),其超出雷達(dá)的探測(cè)距離,目標(biāo)回波就不能顯示。目標(biāo)點(diǎn)跡顯示效果如圖4a,b所示。
3.5 航跡線的繪制
目標(biāo)航跡仿真的步驟:先計(jì)算并保存由航跡得到的目標(biāo)實(shí)時(shí)位置姿態(tài)數(shù)據(jù),然后通過(guò)這些航跡點(diǎn)繪制航跡線,最終將其顯示出來(lái)。在該假設(shè)條件下,目標(biāo)在系統(tǒng)運(yùn)行時(shí)間驅(qū)動(dòng)下運(yùn)動(dòng)。當(dāng)掃描基線旋轉(zhuǎn)的角度和目標(biāo)的方位角相等時(shí),將目標(biāo)的斜距、方位角坐標(biāo)保存到相應(yīng)數(shù)組中,由此顯示出航跡點(diǎn)的極坐標(biāo)并動(dòng)態(tài)繪制航跡線。假設(shè)雷達(dá)轉(zhuǎn)速為6 r/min,圖4為系統(tǒng)運(yùn)行時(shí)間t在不同時(shí)刻所對(duì)應(yīng)的目標(biāo)回波、航跡點(diǎn)和航跡線。圖4中用粗黑點(diǎn)表示航跡點(diǎn),航跡序列中最新的一個(gè)航跡點(diǎn)處的深灰色短線表示雷達(dá)“掃出”的目標(biāo)回波。在GL Studio中,雖然可在內(nèi)存棧上用new()分配內(nèi)存,動(dòng)態(tài)畫(huà)線卻不能回收分配的內(nèi)存。可通過(guò)動(dòng)態(tài)設(shè)置事先畫(huà)好的一條直線的位置、頂點(diǎn)個(gè)數(shù)及頂點(diǎn)參數(shù)來(lái)改變?cè)撝本€形狀。適當(dāng)調(diào)整實(shí)時(shí)得到一組航跡點(diǎn)數(shù)據(jù)后,將其作為函數(shù)VaSetVertices()的參數(shù)來(lái)改變事先畫(huà)好的航跡線形狀。
因?yàn)楹瘮?shù)VaSetVertices()中的頂點(diǎn)位置參數(shù)均為相對(duì)于航跡線中心點(diǎn)位置的相對(duì)數(shù)值。因此需轉(zhuǎn)換航跡點(diǎn)數(shù)據(jù)。關(guān)鍵代碼為:
3.6 數(shù)據(jù)顯示
在仿真雷達(dá)顯示器中,采用固定刻度。由于顯示器上只能目測(cè)獲得目標(biāo)粗略的斜距和方位角數(shù)據(jù),因此有必要提供其他的數(shù)據(jù)顯示作為補(bǔ)充。在仿真顯示器右側(cè)提供一個(gè)數(shù)據(jù)窗口,以顯示航跡點(diǎn)的極坐標(biāo)數(shù)據(jù)。在實(shí)際運(yùn)用中,雷達(dá)仿真系統(tǒng)中數(shù)據(jù)處理機(jī)等傳遞來(lái)的二次信息中,目標(biāo)的其他參數(shù)(如速度、姿態(tài)角)也可在此實(shí)時(shí)顯示。
3.7 仿真實(shí)現(xiàn)與結(jié)果分析
采用C語(yǔ)言對(duì)GL Studio進(jìn)行二次開(kāi)發(fā)。單獨(dú)編譯生成的源代碼,實(shí)現(xiàn)雷達(dá)顯示的仿真。圖4為不同仿真時(shí)間的仿真截圖,由圖4看出,掃描線掃描時(shí)有逼真的余輝效果,當(dāng)波束掃到目標(biāo)時(shí),目標(biāo)被“點(diǎn)亮”,隨后逐漸消失,直至再次被波束掃到。在動(dòng)態(tài)繪制目標(biāo)軌跡線過(guò)程中,當(dāng)航跡點(diǎn)數(shù)超過(guò)航跡序列中預(yù)設(shè)數(shù)(本仿真中預(yù)設(shè)為8個(gè)) 時(shí),序列中最早的航跡點(diǎn)數(shù)據(jù)自動(dòng)消失,最新的航跡點(diǎn)數(shù)據(jù)加人到序列最前面,參見(jiàn)圖2a和圖4。圖2a中有7個(gè)航跡點(diǎn),圖4a、4b、4c中分別有8、9、 10個(gè)航跡點(diǎn),但只顯示最新的8個(gè)。結(jié)果表明:首先對(duì)所需顯示的圖符進(jìn)行靜態(tài)建模。可對(duì)仿真結(jié)果有了直觀認(rèn)識(shí)。基于GL Studio的顯示器仿真開(kāi)發(fā),可減少用高級(jí)語(yǔ)言編程實(shí)現(xiàn)所需的工作量,且畫(huà)面清晰,運(yùn)動(dòng)目標(biāo)軌跡流暢。生成的代碼可封裝成一個(gè)類(lèi),應(yīng)用于其他仿真系統(tǒng)中。
4 結(jié)束語(yǔ)
研究雷達(dá)顯示器仿真實(shí)現(xiàn)有重要意義。采用具有應(yīng)用程序接口(API)的仿真軟件GL Studio實(shí)現(xiàn)雷達(dá)顯示器的仿真。在該軟件的基礎(chǔ)上二次開(kāi)發(fā)減少了工作量,且畫(huà)面美觀流暢,具有較高的真實(shí)感和實(shí)時(shí)性。可將生成的代碼添加到Vega Prime或其他基于OpenGL的環(huán)境下,加入到雷達(dá)仿真系統(tǒng)中以實(shí)時(shí)響應(yīng)其他仿真模塊傳輸來(lái)的一次、二次雷達(dá)數(shù)據(jù)。
-
顯示器
+關(guān)注
關(guān)注
21文章
4948瀏覽量
139822 -
仿真
+關(guān)注
關(guān)注
50文章
4043瀏覽量
133416 -
雷達(dá)
+關(guān)注
關(guān)注
50文章
2901瀏覽量
117316
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論