李妍文+霍帥珂+陳偉楨+朱秋明+李浩+蔣志成
摘 要: 建立了一個(gè)無(wú)人機(jī)作為中繼的通信網(wǎng)絡(luò)系統(tǒng),并通過(guò)對(duì)中繼鏈路和高空中繼覆蓋區(qū)域進(jìn)行幾何建模,推導(dǎo)獲得了無(wú)人機(jī)在一定飛行高度的信號(hào)覆蓋區(qū)域。在此基礎(chǔ)上,基于Google Earth和Visual C++ 6.0軟件平臺(tái),開(kāi)發(fā)了一套無(wú)人機(jī)中繼系統(tǒng)可視化網(wǎng)絡(luò)優(yōu)化軟件。測(cè)試結(jié)果表明,該軟件操作簡(jiǎn)便且運(yùn)行穩(wěn)定,能夠?qū)崿F(xiàn)無(wú)人機(jī)的靜態(tài)最優(yōu)布置與動(dòng)態(tài)飛行路徑規(guī)劃,對(duì)于解決網(wǎng)絡(luò)節(jié)點(diǎn)高速和大范圍移動(dòng)導(dǎo)致的網(wǎng)絡(luò)中斷問(wèn)題,具有重要的工程應(yīng)用價(jià)值。
關(guān)鍵詞: 谷歌地球; 無(wú)人機(jī); 移動(dòng)自組網(wǎng); 中繼平臺(tái); 網(wǎng)絡(luò)優(yōu)化
中圖分類(lèi)號(hào): TN911?34 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2014)04?0060?04
Software of UAV relay layout optimization based on Google Earth
LI Yan?wen, HUO Shuai?ke, CHEN Wei?zhen, ZHU Qui?ming, LI Hao, JIANG Zhi?cheng
(College of Electronic and Information Engineering, Nanjing University of Aeronautics and Astronautics, Nanjing 210016, China)
Abstract: A communication network system which is relayed by UAV was established. A geometric modeling for the trunk links and aerological relay coverage areas was made. The signal coverage areas where the UAV flies at a certain height were obtained. Furthermore, a visual network optimization software for the UAV relay system was developed based on Google Earth and Visual C++ 6.0. The testing results indicate that the software has the advantages of easy operating and stable running, and can realize statically optimal placement and dynamic flying path planning of UAV. Therefore, it is of great project application value in solving the problem of network interruption caused by the high?speed and large?scale moving of network nodes.
Keywords: Google Earth; UAV; mobile Ad?hoc network; relay platform; network optimization
0 引 言
無(wú)線移動(dòng)自組織網(wǎng)絡(luò)具有組網(wǎng)快速靈活、可靠性高、抗毀性強(qiáng)等優(yōu)點(diǎn),特別適用于戰(zhàn)場(chǎng)的惡劣通信環(huán)境。但網(wǎng)絡(luò)中結(jié)點(diǎn)的移動(dòng)及其活動(dòng)范圍擴(kuò)大等因素導(dǎo)致的網(wǎng)絡(luò)連通性變化使其應(yīng)用范圍嚴(yán)重受限。針對(duì)該問(wèn)題最有效的一個(gè)解決方法是引入無(wú)人機(jī)作為中繼節(jié)點(diǎn),為移動(dòng)中的網(wǎng)絡(luò)節(jié)點(diǎn)提供中繼通信,以提升網(wǎng)絡(luò)的連通性和可靠性。
文獻(xiàn)[1?3]研究了靜態(tài)場(chǎng)景下具有無(wú)線通信組網(wǎng)能力的無(wú)人機(jī)中繼平臺(tái)布置問(wèn)題,但未考慮中繼通信的動(dòng)態(tài)維持問(wèn)題,也沒(méi)有討論無(wú)人機(jī)中繼和地面節(jié)點(diǎn)移動(dòng)對(duì)網(wǎng)絡(luò)連通性的影響。近期動(dòng)態(tài)場(chǎng)景下無(wú)人機(jī)中繼的飛行路徑和網(wǎng)絡(luò)性能優(yōu)化等問(wèn)題的相關(guān)研究受到越來(lái)越多關(guān)注[4?6]。其中,文獻(xiàn)[4]定義了四種連通性準(zhǔn)則并給出對(duì)應(yīng)無(wú)人機(jī)中繼平臺(tái)的最優(yōu)布置和飛行路徑,指出單無(wú)人機(jī)中繼系統(tǒng)可顯著提高網(wǎng)絡(luò)連通性,文獻(xiàn)[5]則進(jìn)一步研究了多無(wú)人機(jī)中繼的最優(yōu)飛行路徑問(wèn)題。
本文基于上述理論基礎(chǔ)針對(duì)無(wú)人機(jī)中繼自組織網(wǎng)絡(luò)中的中繼布局和飛行軌跡優(yōu)化問(wèn)題,設(shè)計(jì)開(kāi)發(fā)了一款基于Google Earth的可視化網(wǎng)絡(luò)優(yōu)化軟件,該軟件可實(shí)現(xiàn)無(wú)人機(jī)中繼數(shù)目估計(jì)、最優(yōu)位置布局和飛行軌跡規(guī)劃等功能,同時(shí)利用Google Earth電子地圖模擬真實(shí)地球場(chǎng)景,實(shí)現(xiàn)人機(jī)交互可視化演示。
1 無(wú)人機(jī)中繼高度和覆蓋區(qū)域
無(wú)人機(jī)中繼平臺(tái)的信號(hào)覆蓋區(qū)域與飛行高度和挾帶的通信設(shè)備功率有關(guān)。當(dāng)中繼系統(tǒng)的性能指標(biāo)如誤比特率預(yù)先指定,則地面節(jié)點(diǎn)的最低信噪比門(mén)限也隨之確定,進(jìn)而可求出中繼信號(hào)的最大傳播距離[6?7]。
地面節(jié)點(diǎn)接收信號(hào)平均功率可表示為:
[Pr=PtGtGrLfΔL] (1)
式中:[Pt]表示無(wú)人機(jī)發(fā)射功率;[Gr,Gt]分別為收發(fā)天線增益;[ΔL]則表示環(huán)境以及極化、饋線損耗等因素對(duì)接收功率的額外損耗;[Lf=(4πdλ)2]表示信號(hào)空間傳播衰減,其中[λ]為波長(zhǎng)。
接收機(jī)噪聲因素一般采用等效噪聲溫度[N0=KT,][T]表示接收端等效噪聲溫度,K為波爾茲曼常數(shù)。當(dāng)系統(tǒng)誤比特率確定時(shí),接收端最低信噪比門(mén)限記為[γ0],則中繼鏈路傳播衰減應(yīng)滿足如下條件:
[LfPtGtGrKTΔLRb·1γ0] (2)
式中[Rb]表示信息傳輸速率。
假設(shè)不考慮信道隨機(jī)衰落,可得對(duì)應(yīng)中繼信號(hào)的最大傳播距離為:
[dPtGtGrΔLKRbTγ0(λ4π)2] (3)
為求得高空無(wú)人機(jī)中繼平臺(tái)覆蓋區(qū)域,構(gòu)建幾何模型如圖1所示,地球半徑[R≈6 370 km],無(wú)人機(jī)高度記為[H],則有效覆蓋區(qū)域面積為:
[S=2πRh] (4)
在直角三角形[ADF]和[DFO]中分別運(yùn)用勾股定理可解得:
[h=d2-H22R+2H] (5)
圖1 無(wú)人機(jī)中繼覆蓋區(qū)域示意圖
無(wú)人機(jī)飛行高度[H]一般為數(shù)百至數(shù)千米,遠(yuǎn)小于地球半徑[R],因此,圓弧[BPC]與直線[BC]長(zhǎng)度基本一致,球冠[DPE]面積也可近似為[P]為中心的平面圓面積,根據(jù)式(4)可得覆蓋半徑[r]的表達(dá)式:
[r=R(d2-H2)R+H] (6)
最后,將式(3)代入式(6)可得無(wú)人機(jī)中繼平臺(tái)的平均覆蓋半徑:
[rR(PtGtGrλ216π2ΔLKRbTγ0-H2)R+H] (7)
2 無(wú)人機(jī)中繼網(wǎng)絡(luò)優(yōu)化軟件設(shè)計(jì)
2.1 軟件開(kāi)發(fā)平臺(tái)及流程圖
本軟件采用VC++ 6.0軟件開(kāi)發(fā)平臺(tái),結(jié)合Google Earth 二次開(kāi)發(fā)技術(shù),利用Google Earth電子地圖將空間特征信息進(jìn)行可視化表達(dá),從而快速獲得無(wú)人機(jī)中繼網(wǎng)絡(luò)環(huán)境的基本特征,將無(wú)人機(jī)中繼及地面結(jié)點(diǎn)的布局情況以三維形式清晰直觀地顯示在界面上。
本系統(tǒng)軟件設(shè)計(jì)流程如圖2所示,軟件包括兩部分功能:“靜態(tài)最優(yōu)布置”和“動(dòng)態(tài)飛行路徑規(guī)劃”。其中,“靜態(tài)最優(yōu)布置”由用戶輸入無(wú)人機(jī)數(shù)量以及地面結(jié)點(diǎn)的位置,軟件計(jì)算單架或多架無(wú)人機(jī)的中繼覆蓋范圍及無(wú)人機(jī)的最優(yōu)布置,進(jìn)行可視化演示并可導(dǎo)出到外部文檔;“動(dòng)態(tài)飛行路徑規(guī)劃”由用戶選擇輸入無(wú)人機(jī)數(shù)量以及地面結(jié)點(diǎn)的移動(dòng)路徑,軟件規(guī)劃單無(wú)人機(jī)或多無(wú)人機(jī)的最優(yōu)飛行路徑,進(jìn)行可視化演示并可導(dǎo)出到外部文檔。
圖2 軟件流程圖
兩種模式下都支持自動(dòng)載入數(shù)據(jù)文件及保存數(shù)據(jù)文件等功能?!拜d入上次數(shù)據(jù)”可以載入上次保存的無(wú)人機(jī)及地面結(jié)點(diǎn)相關(guān)數(shù)據(jù)并進(jìn)行可視化演示;“載入本次數(shù)據(jù)”可以清除上次數(shù)據(jù)的視圖,并從txt文本文檔中載入本次的地面節(jié)點(diǎn)坐標(biāo)或移動(dòng)路徑等數(shù)據(jù),計(jì)算出無(wú)人機(jī)及其中繼覆蓋范圍相關(guān)數(shù)據(jù)并進(jìn)行可視化演示,地面節(jié)點(diǎn)示例數(shù)據(jù)如圖3所示;“保存本次數(shù)據(jù)”可以保存本次數(shù)據(jù)到本地硬盤(pán)中,并可供用戶下一次載入。
圖3 地面節(jié)點(diǎn)文件
除了上述功能,該軟件還提供了地圖定位、地圖平移和地圖截圖等輔助功能?!暗貓D定位”可實(shí)現(xiàn)由用戶輸入經(jīng)緯度,地圖定位到用戶輸入的地理坐標(biāo);“地圖平移”可實(shí)現(xiàn)在當(dāng)前界面選擇想要平移的方向(可自動(dòng)、勻速地向該方向平移)進(jìn)行平移,方便觀察周邊地形,并做到精確定位;“地圖截圖”可實(shí)現(xiàn)截取當(dāng)前Google Earth界面的圖像,保存在硬盤(pán)默認(rèn)位置中。
2.2 中繼節(jié)點(diǎn)優(yōu)化算法實(shí)現(xiàn)
當(dāng)用戶輸入地面節(jié)點(diǎn)地理坐標(biāo)或移動(dòng)路徑后,軟件自動(dòng)處理流程如圖4所示。因?yàn)镚oogle Earth只能對(duì)經(jīng)緯度坐標(biāo)進(jìn)行處理,而直角坐標(biāo)系具有計(jì)算方便的特點(diǎn),本文地面節(jié)點(diǎn)的坐標(biāo)處理均在直角坐標(biāo)系中進(jìn)行。故需要先將經(jīng)緯度坐標(biāo)通過(guò)坐標(biāo)轉(zhuǎn)換變換為空間直角坐標(biāo)系中的對(duì)應(yīng)坐標(biāo),并根據(jù)用戶選擇的無(wú)人機(jī)數(shù)量通過(guò)聚類(lèi)算法對(duì)地面節(jié)點(diǎn)劃分子網(wǎng)。對(duì)于每一個(gè)子網(wǎng),使用加權(quán)質(zhì)心算法即可獲得靜態(tài)場(chǎng)景下無(wú)人機(jī)最優(yōu)位置及無(wú)人機(jī)覆蓋區(qū)域。通過(guò)無(wú)人機(jī)覆蓋范圍并使用第一部分所述算法,便可求得無(wú)人機(jī)高度,從而計(jì)算獲得動(dòng)態(tài)場(chǎng)景下無(wú)人機(jī)的最優(yōu)飛行路徑,并將數(shù)據(jù)送入Google Earth實(shí)現(xiàn)三維可視化顯示。
2.3 基于Google Earth的可視化實(shí)現(xiàn)
Google Earth可以將各架無(wú)人機(jī)顯示在三維地球模型中,它提供了兩種擴(kuò)展接口:基于組件技術(shù)的COM API形式和KML文件形式。基于COM API的開(kāi)發(fā)方式用來(lái)控制 Google Earth的視角和動(dòng)畫(huà)效果,而基于 KML的開(kāi)發(fā)方式可用來(lái)生成地理要素,實(shí)現(xiàn)數(shù)據(jù)的動(dòng)態(tài)更新等。本文結(jié)合了這兩種開(kāi)發(fā)方式,得到了比較理想的效果。
圖4 中繼平臺(tái)優(yōu)化算法流程
Google Earth COM API是組件的公共接口,在用戶調(diào)用組件的過(guò)程中,首先調(diào)用Colnitialize函數(shù),初始化COM庫(kù);然后根據(jù)獲得的CLSID庫(kù)函數(shù)CoGetClassObject創(chuàng)建類(lèi);最后根據(jù)類(lèi)創(chuàng)建的對(duì)象提供給用戶調(diào)用,釋放資源時(shí)調(diào)用CoUninitialize函數(shù)。
調(diào)用IAppIicationGE主入口類(lèi)中IsInitialized()、IsOnline()與Login()函數(shù),判斷Google Earth客戶端是否正常初始化,以確保Google Earth客戶端的正常開(kāi)啟。在實(shí)現(xiàn)地圖定位功能中,調(diào)用IAppIicationGE主入口類(lèi)的SetCameraParams()函數(shù),對(duì)用戶窗口視圖的經(jīng)緯度、高度、傾斜度等參數(shù)進(jìn)行設(shè)定,從而使用戶能獲得最好的視覺(jué)效果。通過(guò)調(diào)用IViewExtentsGE視口類(lèi)的GetNorth(),GetSouth(),GetEast()和GetWest()等函數(shù)來(lái)獲取當(dāng)前視點(diǎn)的位置,對(duì)經(jīng)緯度進(jìn)行微調(diào)從而控制當(dāng)前視口的平滑移動(dòng),實(shí)現(xiàn)了地圖平移功能。
KML是一種基于XML語(yǔ)法與格式的、用于描述和保存地理信息(如點(diǎn)、線、圖像、多邊形和模型等)的編碼規(guī)范,可以被Google Earth識(shí)別并顯示。KML使用包含名稱(chēng)、屬性的標(biāo)簽(tag)來(lái)確定顯示方式。按照規(guī)定的格式和使用正確的tag即可滿足無(wú)人機(jī)組成的大規(guī)模移動(dòng)自組織網(wǎng)絡(luò)在GE用戶界面中的演示。這里使用C++語(yǔ)言將需要進(jìn)行可視化演示的數(shù)據(jù)寫(xiě)入KML文檔中,供GE調(diào)用。
在進(jìn)行無(wú)人機(jī)中繼平臺(tái)優(yōu)化軟件開(kāi)發(fā)時(shí)不能僅在Google Earth的原生界面上進(jìn)行控制,而是要將Google Earth的地球主界面截取到所開(kāi)發(fā)的軟件中,這里通過(guò)Hook技術(shù)實(shí)現(xiàn)了這一需求。以下為主要實(shí)現(xiàn)代碼:
OLE_HANDLE m_hMainWnd;
m_hMainWnd= m_geApplication.GetMainHwnd();
//獲取客戶端框架窗口句柄
CRect rect;
//設(shè)置Google Earth窗口的位置和大小
rect.left=10;
rect.right=1010;
rect.top=10;
rect.bottom=720;
//利用該矩形區(qū)域設(shè)置框架窗口的大小
:: SetWindowPos((HWND)m_hMainWnd, HWND_BOTTOM,0,0,0,0, SWP_NOSIZE+SWP_HIDEWINDOW);
OLE_HANDLE renderhwnd= m_geApplication.GetRenderHwnd();
HWNDGE ParentHrender= :: GetParent((HWND)renderhwnd);
::ShowWindow(GEParentHrender, SW_HIDE);
::SetParent((HWND)renderhwnd, m_static_googleearth.GetSafeHwnd());
//把HWND和窗口上的一個(gè)靜態(tài)文本控件綁定
3 軟件運(yùn)行與測(cè)試
本文軟件界面如圖5所示,包括主要功能區(qū)和輔助功能區(qū)兩個(gè)部分。軟件主要功能為實(shí)現(xiàn)無(wú)人機(jī)靜態(tài)最優(yōu)布置、動(dòng)態(tài)飛行路徑規(guī)劃及可視化顯示。
圖5 軟件主界面
針對(duì)靜態(tài)場(chǎng)景下已知地面網(wǎng)絡(luò)節(jié)點(diǎn)地理位置信息的無(wú)人機(jī)中繼系統(tǒng),計(jì)算無(wú)人機(jī)最優(yōu)位置,根據(jù)通信鏈路狀態(tài)求得無(wú)人機(jī)在不同高度下的無(wú)線信號(hào)有效覆蓋區(qū)域,并基于Google Earth完成無(wú)人機(jī)最優(yōu)位置與覆蓋區(qū)域的可視化,運(yùn)行結(jié)果如圖6所示;針對(duì)動(dòng)態(tài)場(chǎng)景下已知地面網(wǎng)絡(luò)節(jié)點(diǎn)移動(dòng)路徑的無(wú)人機(jī)中繼系統(tǒng),通過(guò)聚類(lèi)找到與每架無(wú)人機(jī)組成子網(wǎng)的地面節(jié)點(diǎn),使每架無(wú)人機(jī)覆蓋其所在子網(wǎng)內(nèi)所有地面節(jié)點(diǎn),計(jì)算使無(wú)人機(jī)覆蓋所在子網(wǎng)節(jié)點(diǎn)的最優(yōu)布置,在地面節(jié)點(diǎn)進(jìn)行無(wú)規(guī)則運(yùn)動(dòng)時(shí),規(guī)劃各無(wú)人機(jī)的飛行路徑,并基于Google Earth完成無(wú)人機(jī)飛行路徑規(guī)劃的可視化,運(yùn)行結(jié)果如圖7所示。
圖6 無(wú)人機(jī)靜態(tài)最優(yōu)布置運(yùn)行結(jié)果
圖7 無(wú)人機(jī)動(dòng)態(tài)最優(yōu)布置運(yùn)行結(jié)果
4 結(jié) 論
本文在VC++ 6.0軟件平臺(tái)上,開(kāi)發(fā)了一款基于Google Earth的無(wú)人機(jī)中繼平臺(tái)優(yōu)化軟件,并通過(guò)應(yīng)用Google Earth模擬出真實(shí)網(wǎng)絡(luò)通信場(chǎng)景。該軟件具有友好的用戶界面,能夠?qū)崿F(xiàn)無(wú)人機(jī)數(shù)量估計(jì)、布置優(yōu)化與動(dòng)態(tài)飛行路徑規(guī)劃,對(duì)于解決大規(guī)模移動(dòng)網(wǎng)絡(luò)節(jié)點(diǎn)高速和大范圍移動(dòng)導(dǎo)致的網(wǎng)絡(luò)中斷問(wèn)題,具有重要的理論意義和工程應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] CHADRASHEKAR K, RAISSI?DEHKORDI M, BARAS J S. Providing full connectivity in large Ad?Hoc networks by dynamic placement of aerial platforms [C]// Proceedings of IEEE 2004 Military Communications Conference. Maryland, USA: IEEE, 2004, 3: 1429?1436.
[2] RAISSI?DEHKORDI M, CHANDRASHEKAR K, BARAS J S. UAV placement for enhanced connectivity in wireless Ad?hoc networks [EB/OL]. [2011?07?19]. http://www. wenku.baidu.com/view.
[3] PERUMAL S, BARAS J S , GRAFF C J , et al. Aerial platform placement algorithms to satisfy connectivity, capacity and survivability constraints in wireless ad?hoc networks [C]// Proceedings of Military Communications Conference. San Diego, USA: MCC, 2008: 1?7.
[4] ZHU H, SWINDLEHURST A, LIU K J. Optimization of MANET connectivity via smart deployment/movement of unmanned air vehicles [J]. IEEE Transactions on Vehicular Technology, 2009, 58(7): 3533?3546.
[5] 徐贊新,袁堅(jiān),王鉞,等.一種支持移動(dòng)自組網(wǎng)通信的多無(wú)人機(jī)中繼網(wǎng)絡(luò)[J].清華大學(xué)學(xué)報(bào):自然科學(xué)版,2011,51(2):150?155.
[6] ZHAN P, YU K, SWINDLEHURST A L. Wireless relay communications with unmanned aerial vehicles: performance and optimization [J]. IEEE Transactions on Aerospace and Electronic Systems, 2011, 47(3): 2068?2085.
[7] EL?JABU B, STEELE R. Cellular communications using aerial platforms [J]. IEEE Transactions on Vehicular Technology, 2001, 50(3): 686?700.
[8] 馬俊,楊忠,楊成順,等.基于 Google Earth 的人機(jī)交互平臺(tái)設(shè)計(jì)[J].應(yīng)用科技,2010,37(7):6?10.
[9] 張春波,陳琰,李燦,等.基于Google Earth的電網(wǎng)GIS應(yīng)用研究[J].機(jī)電工程,2009,26(11):34?37.
[10] 江寬,龔小鵬.Google API 開(kāi)發(fā)詳解:Google Maps與Google Earth雙劍合璧[M].北京:電子工業(yè)出版社,2008.
在進(jìn)行無(wú)人機(jī)中繼平臺(tái)優(yōu)化軟件開(kāi)發(fā)時(shí)不能僅在Google Earth的原生界面上進(jìn)行控制,而是要將Google Earth的地球主界面截取到所開(kāi)發(fā)的軟件中,這里通過(guò)Hook技術(shù)實(shí)現(xiàn)了這一需求。以下為主要實(shí)現(xiàn)代碼:
OLE_HANDLE m_hMainWnd;
m_hMainWnd= m_geApplication.GetMainHwnd();
//獲取客戶端框架窗口句柄
CRect rect;
//設(shè)置Google Earth窗口的位置和大小
rect.left=10;
rect.right=1010;
rect.top=10;
rect.bottom=720;
//利用該矩形區(qū)域設(shè)置框架窗口的大小
:: SetWindowPos((HWND)m_hMainWnd, HWND_BOTTOM,0,0,0,0, SWP_NOSIZE+SWP_HIDEWINDOW);
OLE_HANDLE renderhwnd= m_geApplication.GetRenderHwnd();
HWNDGE ParentHrender= :: GetParent((HWND)renderhwnd);
::ShowWindow(GEParentHrender, SW_HIDE);
::SetParent((HWND)renderhwnd, m_static_googleearth.GetSafeHwnd());
//把HWND和窗口上的一個(gè)靜態(tài)文本控件綁定
3 軟件運(yùn)行與測(cè)試
本文軟件界面如圖5所示,包括主要功能區(qū)和輔助功能區(qū)兩個(gè)部分。軟件主要功能為實(shí)現(xiàn)無(wú)人機(jī)靜態(tài)最優(yōu)布置、動(dòng)態(tài)飛行路徑規(guī)劃及可視化顯示。
圖5 軟件主界面
針對(duì)靜態(tài)場(chǎng)景下已知地面網(wǎng)絡(luò)節(jié)點(diǎn)地理位置信息的無(wú)人機(jī)中繼系統(tǒng),計(jì)算無(wú)人機(jī)最優(yōu)位置,根據(jù)通信鏈路狀態(tài)求得無(wú)人機(jī)在不同高度下的無(wú)線信號(hào)有效覆蓋區(qū)域,并基于Google Earth完成無(wú)人機(jī)最優(yōu)位置與覆蓋區(qū)域的可視化,運(yùn)行結(jié)果如圖6所示;針對(duì)動(dòng)態(tài)場(chǎng)景下已知地面網(wǎng)絡(luò)節(jié)點(diǎn)移動(dòng)路徑的無(wú)人機(jī)中繼系統(tǒng),通過(guò)聚類(lèi)找到與每架無(wú)人機(jī)組成子網(wǎng)的地面節(jié)點(diǎn),使每架無(wú)人機(jī)覆蓋其所在子網(wǎng)內(nèi)所有地面節(jié)點(diǎn),計(jì)算使無(wú)人機(jī)覆蓋所在子網(wǎng)節(jié)點(diǎn)的最優(yōu)布置,在地面節(jié)點(diǎn)進(jìn)行無(wú)規(guī)則運(yùn)動(dòng)時(shí),規(guī)劃各無(wú)人機(jī)的飛行路徑,并基于Google Earth完成無(wú)人機(jī)飛行路徑規(guī)劃的可視化,運(yùn)行結(jié)果如圖7所示。
圖6 無(wú)人機(jī)靜態(tài)最優(yōu)布置運(yùn)行結(jié)果
圖7 無(wú)人機(jī)動(dòng)態(tài)最優(yōu)布置運(yùn)行結(jié)果
4 結(jié) 論
本文在VC++ 6.0軟件平臺(tái)上,開(kāi)發(fā)了一款基于Google Earth的無(wú)人機(jī)中繼平臺(tái)優(yōu)化軟件,并通過(guò)應(yīng)用Google Earth模擬出真實(shí)網(wǎng)絡(luò)通信場(chǎng)景。該軟件具有友好的用戶界面,能夠?qū)崿F(xiàn)無(wú)人機(jī)數(shù)量估計(jì)、布置優(yōu)化與動(dòng)態(tài)飛行路徑規(guī)劃,對(duì)于解決大規(guī)模移動(dòng)網(wǎng)絡(luò)節(jié)點(diǎn)高速和大范圍移動(dòng)導(dǎo)致的網(wǎng)絡(luò)中斷問(wèn)題,具有重要的理論意義和工程應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] CHADRASHEKAR K, RAISSI?DEHKORDI M, BARAS J S. Providing full connectivity in large Ad?Hoc networks by dynamic placement of aerial platforms [C]// Proceedings of IEEE 2004 Military Communications Conference. Maryland, USA: IEEE, 2004, 3: 1429?1436.
[2] RAISSI?DEHKORDI M, CHANDRASHEKAR K, BARAS J S. UAV placement for enhanced connectivity in wireless Ad?hoc networks [EB/OL]. [2011?07?19]. http://www. wenku.baidu.com/view.
[3] PERUMAL S, BARAS J S , GRAFF C J , et al. Aerial platform placement algorithms to satisfy connectivity, capacity and survivability constraints in wireless ad?hoc networks [C]// Proceedings of Military Communications Conference. San Diego, USA: MCC, 2008: 1?7.
[4] ZHU H, SWINDLEHURST A, LIU K J. Optimization of MANET connectivity via smart deployment/movement of unmanned air vehicles [J]. IEEE Transactions on Vehicular Technology, 2009, 58(7): 3533?3546.
[5] 徐贊新,袁堅(jiān),王鉞,等.一種支持移動(dòng)自組網(wǎng)通信的多無(wú)人機(jī)中繼網(wǎng)絡(luò)[J].清華大學(xué)學(xué)報(bào):自然科學(xué)版,2011,51(2):150?155.
[6] ZHAN P, YU K, SWINDLEHURST A L. Wireless relay communications with unmanned aerial vehicles: performance and optimization [J]. IEEE Transactions on Aerospace and Electronic Systems, 2011, 47(3): 2068?2085.
[7] EL?JABU B, STEELE R. Cellular communications using aerial platforms [J]. IEEE Transactions on Vehicular Technology, 2001, 50(3): 686?700.
[8] 馬俊,楊忠,楊成順,等.基于 Google Earth 的人機(jī)交互平臺(tái)設(shè)計(jì)[J].應(yīng)用科技,2010,37(7):6?10.
[9] 張春波,陳琰,李燦,等.基于Google Earth的電網(wǎng)GIS應(yīng)用研究[J].機(jī)電工程,2009,26(11):34?37.
[10] 江寬,龔小鵬.Google API 開(kāi)發(fā)詳解:Google Maps與Google Earth雙劍合璧[M].北京:電子工業(yè)出版社,2008.
在進(jìn)行無(wú)人機(jī)中繼平臺(tái)優(yōu)化軟件開(kāi)發(fā)時(shí)不能僅在Google Earth的原生界面上進(jìn)行控制,而是要將Google Earth的地球主界面截取到所開(kāi)發(fā)的軟件中,這里通過(guò)Hook技術(shù)實(shí)現(xiàn)了這一需求。以下為主要實(shí)現(xiàn)代碼:
OLE_HANDLE m_hMainWnd;
m_hMainWnd= m_geApplication.GetMainHwnd();
//獲取客戶端框架窗口句柄
CRect rect;
//設(shè)置Google Earth窗口的位置和大小
rect.left=10;
rect.right=1010;
rect.top=10;
rect.bottom=720;
//利用該矩形區(qū)域設(shè)置框架窗口的大小
:: SetWindowPos((HWND)m_hMainWnd, HWND_BOTTOM,0,0,0,0, SWP_NOSIZE+SWP_HIDEWINDOW);
OLE_HANDLE renderhwnd= m_geApplication.GetRenderHwnd();
HWNDGE ParentHrender= :: GetParent((HWND)renderhwnd);
::ShowWindow(GEParentHrender, SW_HIDE);
::SetParent((HWND)renderhwnd, m_static_googleearth.GetSafeHwnd());
//把HWND和窗口上的一個(gè)靜態(tài)文本控件綁定
3 軟件運(yùn)行與測(cè)試
本文軟件界面如圖5所示,包括主要功能區(qū)和輔助功能區(qū)兩個(gè)部分。軟件主要功能為實(shí)現(xiàn)無(wú)人機(jī)靜態(tài)最優(yōu)布置、動(dòng)態(tài)飛行路徑規(guī)劃及可視化顯示。
圖5 軟件主界面
針對(duì)靜態(tài)場(chǎng)景下已知地面網(wǎng)絡(luò)節(jié)點(diǎn)地理位置信息的無(wú)人機(jī)中繼系統(tǒng),計(jì)算無(wú)人機(jī)最優(yōu)位置,根據(jù)通信鏈路狀態(tài)求得無(wú)人機(jī)在不同高度下的無(wú)線信號(hào)有效覆蓋區(qū)域,并基于Google Earth完成無(wú)人機(jī)最優(yōu)位置與覆蓋區(qū)域的可視化,運(yùn)行結(jié)果如圖6所示;針對(duì)動(dòng)態(tài)場(chǎng)景下已知地面網(wǎng)絡(luò)節(jié)點(diǎn)移動(dòng)路徑的無(wú)人機(jī)中繼系統(tǒng),通過(guò)聚類(lèi)找到與每架無(wú)人機(jī)組成子網(wǎng)的地面節(jié)點(diǎn),使每架無(wú)人機(jī)覆蓋其所在子網(wǎng)內(nèi)所有地面節(jié)點(diǎn),計(jì)算使無(wú)人機(jī)覆蓋所在子網(wǎng)節(jié)點(diǎn)的最優(yōu)布置,在地面節(jié)點(diǎn)進(jìn)行無(wú)規(guī)則運(yùn)動(dòng)時(shí),規(guī)劃各無(wú)人機(jī)的飛行路徑,并基于Google Earth完成無(wú)人機(jī)飛行路徑規(guī)劃的可視化,運(yùn)行結(jié)果如圖7所示。
圖6 無(wú)人機(jī)靜態(tài)最優(yōu)布置運(yùn)行結(jié)果
圖7 無(wú)人機(jī)動(dòng)態(tài)最優(yōu)布置運(yùn)行結(jié)果
4 結(jié) 論
本文在VC++ 6.0軟件平臺(tái)上,開(kāi)發(fā)了一款基于Google Earth的無(wú)人機(jī)中繼平臺(tái)優(yōu)化軟件,并通過(guò)應(yīng)用Google Earth模擬出真實(shí)網(wǎng)絡(luò)通信場(chǎng)景。該軟件具有友好的用戶界面,能夠?qū)崿F(xiàn)無(wú)人機(jī)數(shù)量估計(jì)、布置優(yōu)化與動(dòng)態(tài)飛行路徑規(guī)劃,對(duì)于解決大規(guī)模移動(dòng)網(wǎng)絡(luò)節(jié)點(diǎn)高速和大范圍移動(dòng)導(dǎo)致的網(wǎng)絡(luò)中斷問(wèn)題,具有重要的理論意義和工程應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] CHADRASHEKAR K, RAISSI?DEHKORDI M, BARAS J S. Providing full connectivity in large Ad?Hoc networks by dynamic placement of aerial platforms [C]// Proceedings of IEEE 2004 Military Communications Conference. Maryland, USA: IEEE, 2004, 3: 1429?1436.
[2] RAISSI?DEHKORDI M, CHANDRASHEKAR K, BARAS J S. UAV placement for enhanced connectivity in wireless Ad?hoc networks [EB/OL]. [2011?07?19]. http://www. wenku.baidu.com/view.
[3] PERUMAL S, BARAS J S , GRAFF C J , et al. Aerial platform placement algorithms to satisfy connectivity, capacity and survivability constraints in wireless ad?hoc networks [C]// Proceedings of Military Communications Conference. San Diego, USA: MCC, 2008: 1?7.
[4] ZHU H, SWINDLEHURST A, LIU K J. Optimization of MANET connectivity via smart deployment/movement of unmanned air vehicles [J]. IEEE Transactions on Vehicular Technology, 2009, 58(7): 3533?3546.
[5] 徐贊新,袁堅(jiān),王鉞,等.一種支持移動(dòng)自組網(wǎng)通信的多無(wú)人機(jī)中繼網(wǎng)絡(luò)[J].清華大學(xué)學(xué)報(bào):自然科學(xué)版,2011,51(2):150?155.
[6] ZHAN P, YU K, SWINDLEHURST A L. Wireless relay communications with unmanned aerial vehicles: performance and optimization [J]. IEEE Transactions on Aerospace and Electronic Systems, 2011, 47(3): 2068?2085.
[7] EL?JABU B, STEELE R. Cellular communications using aerial platforms [J]. IEEE Transactions on Vehicular Technology, 2001, 50(3): 686?700.
[8] 馬俊,楊忠,楊成順,等.基于 Google Earth 的人機(jī)交互平臺(tái)設(shè)計(jì)[J].應(yīng)用科技,2010,37(7):6?10.
[9] 張春波,陳琰,李燦,等.基于Google Earth的電網(wǎng)GIS應(yīng)用研究[J].機(jī)電工程,2009,26(11):34?37.
[10] 江寬,龔小鵬.Google API 開(kāi)發(fā)詳解:Google Maps與Google Earth雙劍合璧[M].北京:電子工業(yè)出版社,2008.