文獻標識碼: A
文章編號: 0258-7998(2014)11-0029-03
0 引言
LFMCW(線性調(diào)頻連續(xù)波)雷達是一種通過對連續(xù)波進行頻率調(diào)制來獲得距離與速度信息的雷達。因其具有發(fā)射功率低,距離分辨力高、不存在距離盲區(qū)等優(yōu)點越來越多地應用于船舶導航中。顯示系統(tǒng)作為雷達直接面對操作者的部分,其成像的好壞直接影響到操作的判斷。同時對于集成度越來越高的綜合船舶電子系統(tǒng),單一傳感器的數(shù)據(jù)內(nèi)容往往要提供給多個顯示單元,以便利用冗余信息進行數(shù)據(jù)融合提高判斷的可靠性。為此,本文提出了一種三維優(yōu)化查找表算法,很好地解決了雷達成像中的重點和漏點問題,同時利用組播機制完成了多屏顯示以及在綜合船橋系統(tǒng)中的拓展。
1 系統(tǒng)的網(wǎng)絡結(jié)構
本系統(tǒng)并沒有采用如SPI等傳統(tǒng)的總線傳輸作為雷達掃描單元和顯示單元之間的通信機制,而是利用了標準的以太網(wǎng)傳輸通信。考慮到相關的拓展,沒有選擇簡單的單播機制而選擇了組播。
1.1 組播
組播是一種一點到多點(或多點到多點)的通信方式,即多個接收者同時接受一個數(shù)據(jù)源發(fā)送的相同信息。組播通信中使用的是D類IP地址,其范圍在224.0.0.1~239.255.255.255 之間。由于傳輸層上的TCP協(xié)議不支持組播,所以下面設定的顯控報文都采用了UDP協(xié)議。
1.2 系統(tǒng)的結(jié)構及實現(xiàn)
顯示系統(tǒng)網(wǎng)絡結(jié)構如圖1所示,236.6.7.8、236.6.7.9、236.6.7.10等就是組播地址,它們可以看成雷達掃描單元和顯示單元之間的通道,每個組播組都有其專屬的功能[1]。系統(tǒng)一上電,各單元都會根據(jù)IGMPV3協(xié)議發(fā)出加入相應組播組的通知,其部分代碼如下:
#define MCAST_REC_ADDR"236.6.7.8"
#define MCAST_FD_ADDR"236.6.7.9"
struct ip_mreq mreq;
mreq.imr_multiaddr.s_addr = inet_addr(MCAST_REC _ADDR);
mreq.imr_multiaddr.s_addr = inet_addr(MCAST_FD _ADDR);
……
系統(tǒng)通過這些通道以UDP數(shù)據(jù)包作為載體傳遞信息。236.6.7.10為控制信息通道,傳遞開關、掃描速度、增益、雨雪雜波抑制等控制信息;236.6.7.9是反饋信息通道,主要是顯示單元接收確認信息;236.6.7.8是數(shù)據(jù)內(nèi)容通道,傳輸大量的雷達圖像信息。
1.3 報文格式
系統(tǒng)自定義了相關報文格式,其內(nèi)容如表1所示。
以海雜波為例,控制報文中C1是控制命令字,06是內(nèi)部配置寄存器的編號,19 是狀態(tài)值(19在界面的顯示值是19/256×100);考慮到單向通信機制的不可靠本文引入了反饋機制,控制報文發(fā)出時系統(tǒng)參數(shù)不會立刻改變,而是等待接收到反饋報文,C4 是反饋命令字,19是當前海雜波抑制值;數(shù)據(jù)報文中0100000000200002是數(shù)據(jù)的幀頭,其中20(32d)是含有掃描線的數(shù)量,例子里73 0B是掃描線的編號,1D07是掃描線的角度信息。
2 數(shù)據(jù)處理
從組播地址236.6.7.8接收到的雷達圖像數(shù)據(jù)是極坐標形式,由表1可以看到其表示的是掃描線上每個點的灰度值,角度值由1D07(1821d)/2 048×360算得,但是極坐標數(shù)據(jù)無法直接顯示還必須經(jīng)過坐標轉(zhuǎn)換,這就是圖1中的中間件部分所完成的工作,也是整個顯示系統(tǒng)的關鍵組成部分。
2.1 基本坐標轉(zhuǎn)換方式比較
直接轉(zhuǎn)換方法如下:
式中,?茲為極坐標角度,r為半徑,x為直角坐標中的橫坐標,y為縱坐標。直接運用公式計算看似簡單但不可避免地帶來重點和漏點等問題,這是因為直角坐標和極坐標之間的映射不是一一對應的。由于極坐標在直角坐標系中呈放射狀分布,導致近端多個極坐標映射到一個直角坐標點的情況,這就是重點;而在圓心遠端的直角坐標點會出現(xiàn)沒有極坐標映射的情況,這是漏點[2]。重點會造成數(shù)據(jù)冗余,漏點會影響成像。
計數(shù)法是根據(jù)直角坐標都是整數(shù),且相鄰點的變化量只有0、1,可以進行進位信息存儲,此法同樣只能減少存儲空間,無法解決漏點問題[3]。查找表法預先存儲了每一個極坐標對應的直角坐標,直接尋址操作,此法使轉(zhuǎn)換效率大大提升,但所需存儲空間大且不能避免漏點[4]。
2.2 三維優(yōu)化查找表算法
比較了上述算法并綜合考慮了硬件資源開銷,提出一種以極坐標為地址,直角坐標為數(shù)據(jù)的三維優(yōu)化查找表算法,既解決了坐標轉(zhuǎn)換開銷大,顯示卡頓問題,也對重點和漏點問題進行了有效解決,最后利用對稱性減少了預先存儲的數(shù)據(jù)量[5]。
根據(jù)查找表的定義,重點在表中的反映形式為不同的地址擁有同樣的內(nèi)容。如有N個地址對應數(shù)據(jù)相同,為了消除重點可將其中N-1個地址的數(shù)據(jù)編輯為0,保留唯一的一個地址的數(shù)據(jù)。實際采用的消除方式是保留其中地址最小的內(nèi)容,其余地址內(nèi)容設為0。這樣就確保了表中所存直角坐標的唯一性。
補漏的思路是利用其鄰近非漏點的灰度值。采用三維查找表的目的也就是希望將轉(zhuǎn)換坐標點附近的漏點位置標記出來,利用已知的灰度值對其進行插值。而建立這種查找表的第一步就是找出漏點。由式(1)建立起一個所有轉(zhuǎn)換直角坐標的數(shù)組{(x,y)},通過下面公式:
將結(jié)果數(shù)組與上面得到的結(jié)果數(shù)組相比較就得到了漏點數(shù)組{(x′,y′)}。
第二步是給這些漏點去找到其附近的非漏點,好進行補漏的過程。本系統(tǒng)在極坐標直接轉(zhuǎn)換得到的直角坐標數(shù)組{(xi,yi)}中任選一點再遍歷漏點數(shù)組{(x′,y′)}由式(3):
得數(shù)組{(xij′,yij′)},并用(xi,yi)橫坐標和縱坐標分別減去數(shù)組{(xij′,yij′)}中對應的元素得到差值(xi-xi1′,yi-yi1′)(xi-xi2′,yi-yi2′)…(xi-xij′,yi-yij′),再用一個2j×k bit的數(shù)add的每k bit分別表示差值,遍歷直角坐標數(shù)組將所有得到的(x,y,add)i保存為查找表文件。考慮到角度量化值N為2 048,掃描半徑M為384,實際系統(tǒng)在數(shù)據(jù)之后另外加上2位的補漏標志位。00表示該坐標附近無漏點,01表示坐標(x,y+1)為漏點(當前坐標為(x,y)),10表示(x+1,y)為漏點,基本完成成像要求。
優(yōu)化后的查找表算法解決了重點、漏點等問題但需耗費16 MB的存儲空間,而實際上通過對稱性優(yōu)化只需在查找表中存儲0°~45°的數(shù)值就可以完成數(shù)據(jù)的轉(zhuǎn)換。系統(tǒng)在處理數(shù)據(jù)過程中進行兩次轉(zhuǎn)換,由表1知每根線都有各自的編號n,收到數(shù)據(jù)包時先提取出編號進行判斷,然后用下面公式進行轉(zhuǎn)換,將其區(qū)域的掃描數(shù)據(jù)映射到0°~45°區(qū)域:
當最終輸出到顯存時,還需要再次轉(zhuǎn)換成掃描線上
像素點對應屏幕上的真實坐標,其轉(zhuǎn)換公式如下:
系統(tǒng)的算法流程如圖2所示。
3 組播的優(yōu)勢及系統(tǒng)擴展
隨著現(xiàn)代船只電子系統(tǒng)的集成化越來越高,多傳感器復合顯示的需求也越來越大,雷達數(shù)據(jù)往往也要提供給多個顯示單元??紤]到雷達掃描一周產(chǎn)生大約1 MB的數(shù)據(jù)量以及24 r/min或者36 r/min的掃描速度,系統(tǒng)如果自己先進行數(shù)據(jù)復制再傳輸顯然是困難的,而組播的特點剛好是加入同一組播組的成員都可以接收到發(fā)向這個組播地址的數(shù)據(jù),例如多個顯示單元只要都加入了系統(tǒng)中236.6.7.8組播組都可以接收并顯示雷達圖像數(shù)據(jù),輕松實現(xiàn)多屏顯示。
而對于最近興起的綜合船橋系統(tǒng),其顯示系統(tǒng)結(jié)構如圖3所示,顯示單元可以分別作為ECDIS、Radar(有兩部S-Band 和 X-Band)以及Conning(船舶綜合數(shù)據(jù)顯示系統(tǒng))進行工作,又可以切換S-Band雷達和X-Band雷達信息進行交換顯示,同時當單一顯示器出現(xiàn)故障時可以利用其他顯示單元備用顯示。其復合顯示的基礎就是組播機制,顯示系統(tǒng)通過加入的組播組實現(xiàn)相關的顯示,對于GPS、AIS通過標準串口輸出的數(shù)據(jù)也可以通過轉(zhuǎn)換器封裝成UDP報文發(fā)送到組播地址。所以,基于組播的雷達可以很好地融入綜合船橋系統(tǒng)中,實現(xiàn)擴展。
4 實驗與測試
系統(tǒng)利用QT完成了界面設計并接收坐標轉(zhuǎn)換后的雷達圖像數(shù)據(jù)繪制出來[6],這里硬件采用了Xilinx公司推出的XC6SLX100T-2FG676C FPGA芯片以及TI公司的DAVINCI DM3730芯片,并外掛了DDR3芯片來存儲查找表,所用存儲空間為1.97 MB,其實驗效果如圖4所示。
圖4中,上兩幅圖分別是未對邊界進行設置,且沒有進行補點算法下漏點的顯示狀態(tài)以及加上邊界約束,注釋掉刻度層后的顯示效果圖,可以清楚地觀察到算法的效果;而下兩幅圖是兩臺顯示器和一個掃描單元同時連接到一臺路由器的LAN口,實現(xiàn)多屏顯示的效果圖,其中左下圖的顯示系統(tǒng)工作在Linux環(huán)境下,而右下圖的顯示系統(tǒng)工作在Windows環(huán)境下。
5 結(jié)論
系統(tǒng)基于組播機制實現(xiàn)了多屏顯示以及綜合船橋系統(tǒng)中的顯示切換,并優(yōu)化了一種三維查找表算法,很好地解決了雷達成像過程中的重點和漏點問題。同時也解決了在進行大量數(shù)據(jù)轉(zhuǎn)換的過程中,由于硬件資源的限制而造成的卡頓現(xiàn)象。在硬件平臺上的實際測試效果良好。
參考文獻
[1] 陳筱倩,周陬,王宏遠.基于IP組播的流媒體服務器軟件設計[J].微電子學與計算機,2004(12):76-80.
[2] 范多亮.雷達顯示終端中的死點分析[J].信息化研究,2010,36(3):13-15.
[3] 宋博文.基于FPGA實現(xiàn)雷達信號處理和圖像顯示的算法研究[D].大連:大連海事大學,2007.
[4] 李榮忠,畢德倉,尹祺巍,等.基于查表的激光雷達圖像快速繪制算法[J].地理空間信息,2009,7(5):54-56.
[5] 劉翠海,王文清,袁滿.一種支持雷達P顯仿真的實時坐標變換策略[J].系統(tǒng)仿真學報,2002,14(9):1136- 1138.
[6] 張凌燕.多媒體會議系統(tǒng)音、視頻傳輸組播題的研究[J].微電子學與計算機,2003(12):22-26.