周明,胡士強(qiáng),張軍
(上海交通大學(xué) 航空航天學(xué)院,上海 200240)
當(dāng)前,我國(guó)民用航空業(yè)正以迅猛勢(shì)頭發(fā)展,在帶來(lái)巨大經(jīng)濟(jì)和社會(huì)效益的同時(shí),也對(duì)航空安全提出了越來(lái)越高的要求。根據(jù)國(guó)際民航事故報(bào)告顯示,在世界航空業(yè)務(wù)中,死亡人數(shù)事故率總的趨勢(shì)在減少,但因氣象原因造成的飛行事故已經(jīng)上升到總事故的三分之一[1]。大型民用客機(jī)需要安裝具有氣象、湍流、低空風(fēng)切變探測(cè)等功能的機(jī)載氣象雷達(dá)。雷達(dá)仿真系統(tǒng)具有經(jīng)濟(jì),靈活等特點(diǎn),可以解決外場(chǎng)試驗(yàn)成本高,受天氣影響等問(wèn)題,滿足雷達(dá)系統(tǒng)研發(fā)的需要,因此開(kāi)發(fā)一套機(jī)載氣象雷達(dá)仿真系統(tǒng)對(duì)于雷達(dá)研制,生產(chǎn)都具有非常重要的意義。
目前國(guó)外雷達(dá)模擬技術(shù)已較為成熟,功能全面而深入。如美國(guó)Camber公司的Radar Toolkit雷達(dá)模擬器,它提供了陸地環(huán)境、氣象環(huán)境、敵我識(shí)別等多種模塊??梢阅M雷達(dá)高度/姿態(tài)、折射與地球球面影響、表面反射/折射等多種雷達(dá)效果。國(guó)內(nèi)關(guān)于雷達(dá)仿真系統(tǒng)的公開(kāi)研究報(bào)道相對(duì)較少。文獻(xiàn)[2]設(shè)計(jì)了一款機(jī)載雷達(dá)探測(cè)及其資料處理仿真軟件,通過(guò)輸入雷達(dá)探測(cè)頻率,大氣狀態(tài)參數(shù)以及水成物相態(tài)、分布、含量或混合比,便可以模擬出水成物的雷達(dá)回波,并且可以對(duì)回波進(jìn)行衰減訂正。文獻(xiàn)[3]設(shè)計(jì)了一個(gè)機(jī)載氣象雷達(dá)回波信號(hào)仿真系統(tǒng),可用于高保真雷達(dá)回波信號(hào)的生成與演示。
由于現(xiàn)有機(jī)載氣象雷達(dá)仿真系統(tǒng)存在計(jì)算強(qiáng)度大、非實(shí)時(shí)性仿真和飛行范圍小等局限性,且過(guò)于依賴工作站級(jí)的高性能計(jì)算機(jī)作為硬件設(shè)備,本文提出了一種機(jī)載氣象雷達(dá)回波仿真系統(tǒng)的總體框架和實(shí)現(xiàn)方法,詳細(xì)介紹了各個(gè)模塊的算法與工作流程,并針對(duì)雷達(dá)仿真系統(tǒng)數(shù)據(jù)處理量大,以及雷達(dá)掃描過(guò)程中并行化特點(diǎn)提出了CPU+GPU異構(gòu)并行的解決方案,仿真結(jié)果表明,該方法在仿真系統(tǒng)系統(tǒng)的實(shí)時(shí)性等方面取得了良好的效果。
圖1 機(jī)載氣象雷達(dá)仿真系統(tǒng)流程圖
機(jī)載氣象雷達(dá)仿真系統(tǒng)流程如圖1所示。
具體工作流程如下:
(1)讀取環(huán)境激勵(lì)模塊生成的氣象數(shù)據(jù)。
(2)對(duì)雷達(dá)參數(shù)、載機(jī)參數(shù),波束參數(shù)等進(jìn)行初始化,同時(shí)加載飛行航跡。
(3)判斷每個(gè)天線波束有效照射體內(nèi)的散射點(diǎn)數(shù),計(jì)算每個(gè)點(diǎn)的回波強(qiáng)度并累加得到該天線波束的雷達(dá)回波強(qiáng)度。
(4)更新載機(jī)位置,氣象數(shù)據(jù)和天線掃描角度。
(5)判斷掃描是否完成,若完成,繪制雷達(dá)回波;若未完成,返回步驟(3),繼續(xù)進(jìn)行。
氣象雷達(dá)通過(guò)探測(cè)載機(jī)前方氣象目標(biāo)的回波強(qiáng)度來(lái)判斷前方的氣象情況,由于真實(shí)的氣象數(shù)據(jù)難以獲取,因此本文采用基于衛(wèi)星圖像的三維云重建的方法來(lái)構(gòu)建氣象雷達(dá)環(huán)境激勵(lì)模塊。如圖2所示的衛(wèi)星云圖中,大地、海洋和云層分別呈現(xiàn)綠色、藍(lán)色和白色,通過(guò)顏色差法[4]即可提取出其中的云層區(qū)域,圖3為通過(guò)該算法提取出的云層區(qū)域,從圖中可以看出,云層區(qū)域被很好的提取出來(lái)了。由于得到的云層數(shù)據(jù)是二維的,而我們需要三維的云場(chǎng)體數(shù)據(jù),所以還需要二維到三維的重建過(guò)程,本文采用馬爾科夫鏈隨機(jī)場(chǎng)算法。
圖2 原始衛(wèi)星圖像
圖3 提取的云層區(qū)域
馬爾科夫鏈?zhǔn)窃跀?shù)學(xué)領(lǐng)域中具有馬爾科夫性質(zhì)的離散時(shí)間隨機(jī)過(guò)程,常用在基于觀察數(shù)據(jù)的二維到三維離散變量的隨機(jī)模擬。利用馬爾科夫鏈思想,認(rèn)為云層中任何一點(diǎn)的數(shù)據(jù)都是它周圍27個(gè)點(diǎn)(包括自身)強(qiáng)度的平均值,通過(guò)N次逐層遍歷計(jì)算每個(gè)點(diǎn),我們可以得到重建后的三維云場(chǎng)體數(shù)據(jù),如圖4所示。
圖4 三維云場(chǎng)體數(shù)據(jù)
氣象雷達(dá)探測(cè)云和降水等氣象目標(biāo)時(shí),回波強(qiáng)度是云和降水粒子群散射的總和。由于雷達(dá)發(fā)出的探測(cè)脈沖具有一定的持續(xù)時(shí)間,即脈沖寬度τ,所以在空間的電磁波列就有一定的長(zhǎng)度,即脈沖長(zhǎng)度h=τc,如圖5所示,其中c為電磁波在真空中的傳播速度。位于雷達(dá)波束和探測(cè)脈沖長(zhǎng)度范圍內(nèi)的所有大氣粒子都可以同時(shí)被雷達(dá)波所照射。如果雷達(dá)發(fā)射的圓錐形波束,其水平波瓣寬度θ和垂直波瓣寬度φ近似相等,則距離雷達(dá)天線R處波束的橫截面積近似為π(R(θ/2))2,于是雷達(dá)有效照射體積可以近似地表示為式(1)[5]:
氣象目標(biāo)屬于體分布彌散目標(biāo),在整個(gè)云場(chǎng)范圍內(nèi)由大量微粒子組成。每個(gè)散射點(diǎn)的雷達(dá)回波由幅度和相位組成,由雷達(dá)知識(shí)[6]可知,對(duì)于云場(chǎng)中處于雷達(dá)照射范圍內(nèi)的第k個(gè)粒子,雷達(dá)回波可表示為式(2):
圖5 天線波束有效照射體積示意圖
其中Ak(t)表示該微粒回波的幅度,φk(t)表示該微粒回波的相位。將有效照射體積內(nèi)所有散射粒子的回波強(qiáng)度累加,即可得到該有效照射體的雷達(dá)回波數(shù)據(jù),如式(3)所示:
雷達(dá)仿真系統(tǒng)在計(jì)算回波強(qiáng)度數(shù)據(jù)時(shí),需要大規(guī)模的數(shù)據(jù)計(jì)算。在當(dāng)前主要以PC機(jī)為主要仿真平臺(tái)的情況下,當(dāng)云場(chǎng)數(shù)據(jù)增大以及掃描精度提高時(shí),系統(tǒng)很難滿足實(shí)時(shí)性要求。依靠圖形處理器靈活的可編程特性以及強(qiáng)大的并行化處理能力,可以擺脫單靠提高CPU性能來(lái)提升系統(tǒng)性能的方式,極大的降低了系統(tǒng)的負(fù)擔(dān)和成本。
NVIDIA公司于2007年正式發(fā)布的CUDA(Compute Unified Device Architecture,計(jì)算統(tǒng)一架構(gòu)設(shè)備)是一種全新的基于GPU流處理器的通用并行計(jì)算編程模型[7],通過(guò)采用 CPU+GPU異構(gòu)并行模式,即由CPU負(fù)責(zé)執(zhí)行復(fù)雜的邏輯處理和事務(wù)管理等不適合數(shù)據(jù)并行的計(jì)算,由GPU負(fù)責(zé)大規(guī)模密集型的數(shù)據(jù)并行計(jì)算,來(lái)發(fā)掘計(jì)算機(jī)潛在的性能,在成本和性價(jià)比方面都有顯著的優(yōu)勢(shì)。
如圖6所示,為CPU+GPU并行化解決方案的流程圖。
圖6 CPU+GPU異構(gòu)并行解決方案流程圖
首先,在CPU端加載云場(chǎng)數(shù)據(jù),并將其拷貝到GPU的紋理存儲(chǔ)器中。紋理存儲(chǔ)器是一種只讀存儲(chǔ)器,位 于GPU顯存中,可以通過(guò)紋理緩存加速讀取。其次,設(shè)置雷達(dá)參數(shù)并更新雷達(dá)掃描面,將更新的載機(jī)位置數(shù)據(jù)拷貝到GPU的共享存儲(chǔ)器中,GPU中的每一個(gè)線程根據(jù)不同的位置數(shù)據(jù)來(lái)計(jì)算當(dāng)前有效照射體積內(nèi)的雷達(dá)回波強(qiáng)度,并將計(jì)算得到的回波強(qiáng)度數(shù)據(jù)傳回CPU端。最后,系統(tǒng)判斷掃描是否完成,若完成,則顯示雷達(dá)回波。
仿真在 Intel Core2 E7400 2.8 GHz CPU,4G 內(nèi)存,GeForce GTX 550Ti顯卡,Visual Studio 2008平臺(tái)上進(jìn)行,設(shè)置雷達(dá)天線的掃描方位角范圍為-90 deg~90 deg,俯仰角掃描范圍為0 deg~4 deg。
圖7中實(shí)線表示飛機(jī)的飛行路徑,此時(shí)飛機(jī)正要穿越密集的云層區(qū)域,圖8顯示的是雷達(dá)探測(cè)到前方航路的回波圖,通過(guò)不同的顏色表示回波強(qiáng)度的大小。
在仿真中,通過(guò)設(shè)置不同大小的雷達(dá)掃描網(wǎng)格,并分別采用CPU和CPU+GPU異構(gòu)并行的方式運(yùn)行系統(tǒng),可以得到如表1所示的結(jié)果。
圖7 載機(jī)飛行軌跡
由表1數(shù)據(jù)可以看出,并行算法明顯優(yōu)于串行算法。并且隨著掃描網(wǎng)格大小的不斷增大,加速比也不斷增加,這充分說(shuō)明了基于CUDA的并行計(jì)算在處理大規(guī)模并行化數(shù)據(jù)的優(yōu)勢(shì)?;贑PU+GPU異構(gòu)并行的雷達(dá)仿真系統(tǒng)在實(shí)時(shí)性方面取得了良好的效果。
圖8 雷達(dá)回波顯示
表1 仿真結(jié)果對(duì)比
本文詳細(xì)介紹了一款機(jī)載氣象雷達(dá)仿真系統(tǒng)的設(shè)計(jì)過(guò)程,針對(duì)系統(tǒng)實(shí)時(shí)性差的特點(diǎn),提出了GPU加速處理的解決方案,取得了良好的效果。由于雷達(dá)系統(tǒng)仿真與建模是一項(xiàng)復(fù)雜的研究,本文所做的工作只是初步的試探,還需要進(jìn)一步的完善。
[1]胡家美,李萍.國(guó)際航空氣象預(yù)報(bào)的發(fā)展趨勢(shì)[J].廣東氣象,2009,36(8):11-13.
[2]紀(jì)雷,王振會(huì),滕煦,等.機(jī)載雷達(dá)探測(cè)及其資料處理仿真軟件平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)[C].第27屆中國(guó)氣象學(xué)會(huì)年會(huì)雷達(dá)技術(shù)開(kāi)發(fā)與應(yīng)用分會(huì)場(chǎng)論文集,2010.
[3]吳仁彪,胡鵬舉,盧曉光.機(jī)載氣象雷達(dá)回波信號(hào)仿真系統(tǒng)[J].中國(guó)民航大學(xué)學(xué)報(bào),2012,30(2):1 -5.
[4]Somporn Chuai-Aree,Willi Jager,Hans Georg Bock.3D Cloud and Storm Reconstruction from Satellite Image[C].Modeling,Simulation and Optimization of Complex Processes,2008:187 -206.
[5]胡明寶.天氣雷達(dá)探測(cè)與應(yīng)用[M].北京:氣象出版社,2007.
[6]Cheong B L,Palmer R D,Xue M.A Time Series Weather Radar Simulator Based on High - Resolution Atmospheric Models[J].Journal of Atmospheric and Oceanic Technology,2008,25(2):230 -243.
[7]NICKOLLS J.Scalable Parallel Programming with CUDA [J].ACM Queue.2008,6(2):40-53.