新聞中心

EEPW首頁 > 設(shè)計(jì)應(yīng)用 > 嵌入式系統(tǒng)運(yùn)用于雷達(dá)航跡仿真

嵌入式系統(tǒng)運(yùn)用于雷達(dá)航跡仿真

作者: 時(shí)間:2010-12-29 來源:網(wǎng)絡(luò) 收藏

O 引言

本文引用地址:http://m.butianyuan.cn/article/260579.htm

在各種雷達(dá)訓(xùn)練和信號模擬器中,都需要進(jìn)行航跡模擬及航跡顯示,以便于為仿真平臺提供信號源。對于便攜式雷達(dá)模擬器來說,無法使用PC,需用嵌入式 系統(tǒng)來實(shí)現(xiàn)人機(jī)交互及信號處理。但當(dāng)前絕大部分的航跡模擬均建立在PC機(jī)上,雖然功能強(qiáng)大,但航跡模型較為復(fù)雜,計(jì)算量較大,不易于在嵌入式設(shè)備設(shè)備上實(shí) 現(xiàn)。針對上述問題,在內(nèi),采用雙緩沖技術(shù),并通過“背景復(fù)制”的方法對3種典型雷達(dá)航跡模型進(jìn)行了模擬仿真,解決了在進(jìn)行仿真時(shí)內(nèi)存 處理速度與繪圖資源消耗較大的矛盾,實(shí)現(xiàn)了對典型雷達(dá)航跡的圖形化顯示和航跡點(diǎn)坐標(biāo)的實(shí)時(shí)。

1 典型航跡模型

所謂航跡是指飛行物的雷達(dá)測量時(shí)間序列,它是反映目標(biāo)飛行航線、航速,乃至飛行目的的重要參數(shù)。直線型航跡、水平圓周型航跡和垂直圓周型航跡是3種典型的空中航跡模型,對3種典型航跡進(jìn)行組合,可有效地模擬出空中各種復(fù)雜航跡。

1.1 坐標(biāo)系的建立

雷達(dá)系統(tǒng)常用坐標(biāo)系有直角坐標(biāo)系和極坐標(biāo)系。二者均以雷達(dá)作為坐標(biāo)系的原點(diǎn)且原點(diǎn)重合。在直角坐標(biāo)系內(nèi),以y軸正方向?yàn)檎狈剑龞|為x軸的正方向,與水平垂直且向上的方向?yàn)閔軸正方向;極坐標(biāo)系內(nèi),從觀測點(diǎn)到目標(biāo)點(diǎn)連線的延長線方向?yàn)槟繕?biāo)的斜距離D的正方向。

1.2 航跡模型的建立

1. 2.1 直線型航跡

空間直線型航跡較為簡單,是最常用到的一種航跡模型。在直角坐標(biāo)系內(nèi)其運(yùn)動(dòng)學(xué)方程可以由其初始速度v0,加速度a,飛行俯仰角θ,航向角φ以及航跡時(shí)間t來表示,△t內(nèi)有如下關(guān)系成立:

1.2.2 水平圓周型航跡

水平圓周型航跡主要分為左轉(zhuǎn)和右轉(zhuǎn)2種類型。在直角坐標(biāo)系內(nèi),單位時(shí)間增量△t內(nèi)其如下:

式中:s=2Rsin(△φ/2),用來表示圓周運(yùn)動(dòng)起始點(diǎn)到終止點(diǎn)的直線距離;R為半徑;φ為初始航向角,△φ=(v△t)/R為航向角增量(方位角變化量)。當(dāng)目標(biāo)左轉(zhuǎn)時(shí),F(xiàn)=1,右轉(zhuǎn)時(shí),F(xiàn)=-1。

1.2.3 垂直圓周型航跡

垂直圓周段航跡指的是目標(biāo)在與水平面垂直的平面里做恒向心加速度圓周運(yùn)動(dòng),其特點(diǎn)是飛行方位角保持不變。假設(shè)單位時(shí)間增量△t內(nèi),由目標(biāo)運(yùn)動(dòng)起始點(diǎn)到終止點(diǎn)的直線距離為s,則s在x軸上的投影為△z,在xoy平面上的投影為△L,可以得到如下關(guān)系:

式中:R為半徑;θ為初始飛行俯仰角;φ為初始航向角。俯仰角增量△θ=(v△t)/R。如圖1所示,若目標(biāo)由A點(diǎn)運(yùn)動(dòng)到C點(diǎn),則當(dāng)目標(biāo)從A點(diǎn)運(yùn)動(dòng)到B點(diǎn)時(shí),F(xiàn)=1,而當(dāng)目標(biāo)在BC段運(yùn)動(dòng)時(shí),F(xiàn)=-1。

1.3 目標(biāo)飛行的雷達(dá)坐標(biāo)

在雷達(dá)應(yīng)用中,測定目標(biāo)坐標(biāo)常用極(球)坐標(biāo)系統(tǒng),空間任一目標(biāo)的位置可用斜距D,方位角β,高低角θ來表示。在1.2節(jié)中為了簡化,算出的都是單 位時(shí)間增量△t內(nèi)的坐標(biāo)增量,但是在實(shí)際運(yùn)算中,應(yīng)該使用實(shí)時(shí)坐標(biāo)值。假設(shè)目標(biāo)在直角坐標(biāo)系中的位置為(xt,yt,zt),則有:

2 仿真流程

航跡仿真流程如圖2所示。

3 仿真實(shí)現(xiàn)

是指根據(jù)特定的應(yīng)用及要求,采用特定的開發(fā)板和特定的操作系統(tǒng)運(yùn)行應(yīng)用程序的系統(tǒng)。一般來說,嵌入式系統(tǒng)具有軟件代碼小,高度自動(dòng)化,響應(yīng)速度快等特點(diǎn),與一般的PC系統(tǒng)相比,特別適合于要求實(shí)時(shí)和多任務(wù)的體系。

在對航跡進(jìn)行可視化仿真時(shí),選擇Win CE嵌入式操作系統(tǒng),在Visual Studio 2005開發(fā)平臺上,采用Visual C#語言進(jìn)行程序編寫。

3.1 GDI+技術(shù)

GDI+技術(shù)指的是在.NET Framework 2.0中提供的二維圖形、圖像處理等功能,主要用于繪制各種圖像圖像,可以用于繪制各種數(shù)據(jù)圖形、數(shù)學(xué)仿真等。目前,GDI+技術(shù)是在Windows窗體應(yīng)用程序中以編程方式呈現(xiàn)圖形的基本方法。

GDI+使用Graphies類來描述一個(gè)繪圖表面,并提供該表面可以進(jìn)行的所有繪圖工作。當(dāng)所需圖像包含大量基本圖形時(shí),在內(nèi)存中的Bitm- ap上繪圖比直接在屏幕上繪圖要快的多。所以應(yīng)用GDI+技術(shù)繪圖時(shí),為了消除在畫圖時(shí)引起的屏幕抖動(dòng),常常采用雙緩沖技術(shù)。其實(shí)質(zhì)即在內(nèi)存中事先開辟出 一塊空間作為緩沖區(qū),繪制圖片,再將緩沖區(qū)里的圖片繪制到用戶界面或輸出終端。具體步驟為:

(1)創(chuàng)建一個(gè)指定大小的空位圖Bitmap;
  (2)調(diào)用Graphics類的FromImage靜態(tài)方法,從該位圖創(chuàng)建一個(gè)Graphics對象;
  (3)利用創(chuàng)建的Graphics對象進(jìn)行繪圖;
  (4)釋放繪圖資源;
  (5)調(diào)用窗體的Paint事件,刷新窗體。

3.2 航跡坐標(biāo)點(diǎn)的定位

GDI+中的作圖函數(shù)建立在一個(gè)以像素為單位的邏輯坐標(biāo)系中。該邏輯坐標(biāo)系的原點(diǎn)是顯示屏幕的左上角,并且y軸向下為正方向,x軸向右為正方向,如 圖3所示。在對航跡進(jìn)行的可視化仿真,建立在對雷達(dá)PPI顯示器進(jìn)行模擬的基礎(chǔ)上。因此,在做圖中,需要將PPI顯示的參數(shù)換算為以像素為單位的值。

這里需要定義一個(gè)意義為實(shí)際距離對應(yīng)屏幕距離的全局比例尺m_Globalscale,單位:像素/m。假設(shè)系統(tǒng)所要模擬的PPI顯示界面分辨率為240×240(像素),且雷達(dá)最大作用范圍為m_Range(m),則有如下關(guān)系成立:

將圓心與屏幕PPI顯示區(qū)中心點(diǎn)的偏移量,定義為x_set和y_set,以航跡上的A點(diǎn)為例,假設(shè)在t時(shí)刻,目標(biāo)到達(dá)A點(diǎn)。其斜距離為D,單位 m;方位角為β,單位為(°)。A點(diǎn)對應(yīng)在屏幕上的斜距離為D1,單位像素;方位角β1,單位弧度;坐標(biāo)為x_cur,y_cur,單位像素。根據(jù)上述分 析可以得出:

3.3 航跡坐標(biāo)點(diǎn)的動(dòng)態(tài)顯示

航跡的顯示可以在模擬PPI顯示器的繪圖面上,調(diào)用drawlines()方法對所有的航跡點(diǎn)進(jìn)行連線即可。但是為了實(shí)時(shí)地了解仿真目標(biāo)的空中運(yùn)動(dòng) 情況,往往還要同時(shí)實(shí)現(xiàn)航跡坐標(biāo)點(diǎn)動(dòng)態(tài)顯示。重繪是一種經(jīng)常被采用的方法,其思想是對PPI顯示模擬界面上的靜態(tài)顯示部分進(jìn)行重繪,將已經(jīng)畫好的航跡坐標(biāo) 點(diǎn)覆蓋掉,再在新的界面背景上繪制新的航跡坐標(biāo)點(diǎn)。

但是考慮到嵌入式系統(tǒng)在內(nèi)存及處理速度方面的不足,每次重繪所調(diào)用大量的資源,勢必會造成CPU資源的浪費(fèi),同時(shí)影響到整個(gè)系統(tǒng)的時(shí)效性。為了克服 上述問題,保證整個(gè)系統(tǒng)運(yùn)行的實(shí)時(shí)性,本文采取“背景復(fù)制”的方法來解決??傮w來講,實(shí)現(xiàn)的思想是:創(chuàng)建2個(gè)繪圖面,在一個(gè)繪圖面(g1)上繪制軌跡后再 “貼在”另個(gè)繪圖面(g2)上,并在g2上繪制更新的點(diǎn)跡坐標(biāo),當(dāng)進(jìn)入下個(gè)循環(huán)時(shí)新的軌跡圖又再次貼在g2上,然后再在g2繪制新的點(diǎn)跡坐標(biāo),這樣顯示在 窗體上始終只有運(yùn)動(dòng)的軌跡和隨軌跡運(yùn)動(dòng)的圖標(biāo),即可較為豐富地實(shí)現(xiàn)軌跡動(dòng)態(tài)顯示。

具體步驟為:

(1)定義2個(gè)位圖Bitmap1和Bitmap2,并設(shè)定其大小

(2)定義兩個(gè)Graphics繪圖面(以下簡稱g1,g2),并把Bitmapl填充到g1中去,以便于接下來進(jìn)行繪圖操作。

(3)進(jìn)行航跡模型運(yùn)算,循環(huán)算出各航跡坐標(biāo)點(diǎn)的坐標(biāo)值(x,y),將所有的航跡坐標(biāo)點(diǎn)存入ListPoint>中(List為一個(gè) 泛型,而Point表示在二維平面里定義點(diǎn)的有序坐標(biāo)對)。使用g1.DrawLines()方法對數(shù)組ListPoint>中的所有坐標(biāo) 點(diǎn)進(jìn)行連線,并在pictureBox1控件中顯示,雷達(dá)典型目標(biāo)航跡的模擬即可實(shí)現(xiàn)。

(4)將整個(gè)已經(jīng)畫有航跡的Bitmapl保存下來。

(5)利用C#中的計(jì)時(shí)器控件,以ts為時(shí)間間隔,循環(huán)從ListPoint>中取出航跡點(diǎn)坐標(biāo),并調(diào)用DrawImage()函數(shù)把已經(jīng)畫有航跡的Bitm-apl填充入g2繪圖面。即:

然后在g2繪圖面上調(diào)用DrawEllipse()函數(shù),以繪點(diǎn)的方式畫出模擬目標(biāo)的實(shí)時(shí)航跡點(diǎn)坐標(biāo)。重復(fù)步驟(5)的操作即可實(shí)現(xiàn)航跡坐標(biāo)點(diǎn)的動(dòng)態(tài)顯示。

圖4為采用這里所述方法在一嵌入式系統(tǒng)內(nèi)實(shí)現(xiàn)的某雷達(dá)模擬器顯控終端截圖,圖4中所繪航跡為一段直線型航跡。

4 結(jié)語

建立對典型雷達(dá)航跡模型,并成功在仿真平臺上實(shí)現(xiàn)模擬,是實(shí)現(xiàn)復(fù)雜航跡仿真的前提。在此旨在通過對典型雷達(dá)航跡的仿真,驗(yàn)證軟件運(yùn)行環(huán)境,優(yōu)化程序 結(jié)構(gòu),并解決航跡在圖形化顯示上所面對的一些問題。目前,該方法已經(jīng)被應(yīng)用到某雷達(dá)模擬器的顯控終端上,經(jīng)外場調(diào)試,性能較好,實(shí)時(shí)性強(qiáng),可以滿足雷達(dá)模 擬器訓(xùn)練要求。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉