萬(wàn) 航,許 睿,黃小雪,李 林,謝志文
(1.桂林電子科技大學(xué),廣西桂林 541004;2.桂林市環(huán)保科研所,廣西桂林 541002)
隨著移動(dòng)設(shè)備的不斷發(fā)展,智能移動(dòng)終端應(yīng)用程序的開(kāi)發(fā)也呈現(xiàn)了很大的發(fā)展空間。針對(duì)無(wú)線通信系統(tǒng)中無(wú)線信號(hào)傳輸過(guò)程的衰減問(wèn)題,提出了一種基于GIS和Android的便攜式無(wú)線信號(hào)場(chǎng)強(qiáng)采集儀設(shè)計(jì),該設(shè)計(jì)結(jié)合GPS與基站定位技術(shù)能夠準(zhǔn)確地給出用戶當(dāng)前的地理位置,同時(shí)能夠?qū)崟r(shí)地對(duì)當(dāng)前位置的電波信號(hào)強(qiáng)度進(jìn)行檢測(cè)提取,為以后的基站優(yōu)化工作提供數(shù)據(jù)支持[1]。
結(jié)合地理信息系統(tǒng)(GIS)的空間數(shù)據(jù)管理、數(shù)字地形分析技術(shù),根據(jù)實(shí)地區(qū)域信號(hào)傳播路徑,選取合理的區(qū)域電波采集點(diǎn),以實(shí)現(xiàn)對(duì)空間位置和空間電波強(qiáng)度的精確采集[2]。
基于GIS和Android的便攜式無(wú)線信號(hào)場(chǎng)強(qiáng)采集儀設(shè)計(jì),結(jié)合Android軟件開(kāi)發(fā)原理,通過(guò)電波信號(hào)強(qiáng)度與空間距離的轉(zhuǎn)換關(guān)系,對(duì)空間中的無(wú)線電波進(jìn)行精確的采集,為以后的基站優(yōu)化工作提供數(shù)據(jù)支持[3]。具體研究步驟如圖1所示。
圖1 研究步驟
Android系統(tǒng)是一種以Linux為基礎(chǔ)的開(kāi)源操作系統(tǒng),主要用于便攜設(shè)備。它采用軟件堆層(software stack)(又名軟件疊層)的架構(gòu)[4-6]。Android操作系統(tǒng)自底向上分為4層,依次為L(zhǎng)inux內(nèi)核層、運(yùn)行庫(kù)層、應(yīng)用程序框架層和應(yīng)用程序?qū)印1鞠到y(tǒng)架構(gòu)基于運(yùn)行庫(kù)層、應(yīng)用層和應(yīng)用程序?qū)舆M(jìn)行設(shè)計(jì),軟件采用C/S架構(gòu),主要由客戶端和服務(wù)器端組成,系統(tǒng)架構(gòu)如圖2所示。
本系統(tǒng)所涉及到的關(guān)鍵技術(shù)主要體現(xiàn)在3個(gè)方面:基站信號(hào)強(qiáng)度的獲取、用戶當(dāng)前所在空間位置的獲取以及信號(hào)采集路徑的最佳匹配方案。
1)基站信號(hào)強(qiáng)度的獲取
圖2 系統(tǒng)架構(gòu)
Android系統(tǒng)下的軟件開(kāi)發(fā)首先需要為應(yīng)用程序申請(qǐng)足夠的權(quán)限,以便程序執(zhí)行時(shí)能夠無(wú)礙地訪問(wèn)系統(tǒng)資源。因?yàn)榭臻g電波信號(hào)強(qiáng)度的變化,屬于網(wǎng)絡(luò)狀態(tài)的變化,需要向系統(tǒng)申請(qǐng)網(wǎng)絡(luò)狀態(tài)變化監(jiān)聽(tīng)權(quán)限,因此需要在AndroidManifest.xml文件中為軟件申請(qǐng)網(wǎng)絡(luò)狀態(tài)改變時(shí)的使用權(quán)限,然后實(shí)現(xiàn)用于監(jiān)聽(tīng)信號(hào)強(qiáng)度變化事件的監(jiān)聽(tīng)器。使用TelephonyManager訪問(wèn)設(shè)備的通話通信服務(wù)相關(guān)信息,最后在應(yīng)用程序中使用TelephonyManager類提供的listen方法來(lái)獲取通話通信服務(wù)信息以及狀態(tài)信息,通過(guò)MyPhoneStateListener類監(jiān)聽(tīng)空間電波信號(hào)強(qiáng)度的變化信息,最后通過(guò)重寫(xiě)onSignalStrengthsChanged()方法來(lái)實(shí)現(xiàn)自己的監(jiān)聽(tīng)器。在實(shí)現(xiàn)MyPhoneStateListener之后,需要在Activity的onCreate()方法中實(shí)例化該listener并注冊(cè)系統(tǒng)以實(shí)現(xiàn)信號(hào)強(qiáng)度的數(shù)值顯示。
在移動(dòng)通信網(wǎng)中,電波信號(hào)強(qiáng)度會(huì)隨傳播距離的增加而變化,這種變化在自由空間中的傳播模型為
式中:k為路徑衰減因子,在2~5之間;d為距離信源的距離,單位為km;f為頻率,單位為MHz。根據(jù)式(1),模擬計(jì)算采集點(diǎn)信號(hào)衰減值與實(shí)測(cè)值對(duì)應(yīng)記錄,為后續(xù)衰減修正提供數(shù)據(jù)支持。
2)空間位置的獲取
用戶當(dāng)前所在空間位置的獲取采用混合無(wú)線輔助GPS定位技術(shù),該技術(shù)結(jié)合了基于GPS的精確定位技術(shù)和基于基站的網(wǎng)絡(luò)定位技術(shù)的優(yōu)點(diǎn)。在室外無(wú)遮蓋地區(qū),可以利用GPS定位來(lái)獲得精確的地理空間位置。在城市地形復(fù)雜區(qū)域可以利用基站密集的優(yōu)勢(shì),利用智能化算法,實(shí)現(xiàn)在復(fù)雜環(huán)境下的精確定位[7]。
基于基站信號(hào)的網(wǎng)絡(luò)定位,首先,需要調(diào)用手機(jī)協(xié)議棧函數(shù),獲取當(dāng)前服務(wù)小區(qū)和鄰近小區(qū)的CellID;移動(dòng)號(hào)碼MNC;移動(dòng)國(guó)家號(hào)碼MCC;位置區(qū)碼LAC;接收信號(hào)強(qiáng)度指示RSSI,至少其中的三組數(shù)據(jù);其次,通過(guò)HTTP協(xié)議,將上述的小區(qū)信息轉(zhuǎn)換成小區(qū)經(jīng)緯度;然后,通過(guò)無(wú)線電波路徑損耗理論公式,將RSSI值轉(zhuǎn)換成相應(yīng)的距離;最后,運(yùn)用三角定位算法,選取三組小區(qū)的坐標(biāo)信息和距離[8],算出手機(jī)當(dāng)前位置。
Android系統(tǒng)下,基于地圖的應(yīng)用開(kāi)發(fā),可以通過(guò)My-LocationOverlay類來(lái)獲取并顯示當(dāng)前的位置和方向。My-LocationOverlay類是一個(gè)專門設(shè)計(jì)用來(lái)在MapView中顯示當(dāng)前位置和方向的類。使用MyLocationOverlay類時(shí)需要在AndroidManifest.xml中添加允許獲取粗略位置,以及允許獲取精確位置的權(quán)限。代碼首先需要構(gòu)造MyLocationOverlay對(duì)象,通過(guò)調(diào)用enableCompass()方法打開(kāi)指南針進(jìn)行位置方向的顯示,調(diào)用enableMyLocation()方法顯示當(dāng)前位置信息。接著調(diào)用runOnFirstFix()方法并另起一線程用于后臺(tái)獲取當(dāng)前位置信息,當(dāng)位置確定后調(diào)用MapController對(duì)象的animateTo()方法移動(dòng)到當(dāng)前位置。最后通過(guò)將構(gòu)造好的MyLocationOverlay對(duì)象添加到Map-View上,以實(shí)現(xiàn)最終的顯示工作。
3)信號(hào)采集路徑的最佳匹配
信號(hào)采集路徑的最佳匹配方案實(shí)際上就是根據(jù)城市道路環(huán)境和自身最優(yōu)化目標(biāo)采取合適的算法,在一個(gè)仿真步長(zhǎng)里完成最佳路徑的尋找問(wèn)題。在城市道路環(huán)境中,采取Floyd算法實(shí)現(xiàn)最佳路徑的搜索[9],在野外通過(guò)改進(jìn)Floyd算法,以高程變化值作為可達(dá)性判斷依據(jù),實(shí)現(xiàn)野外最短可達(dá)路徑的判斷。
算法實(shí)現(xiàn),首先初始化起點(diǎn)—終點(diǎn)“距離”矩陣D,矩陣中的值dij表示節(jié)點(diǎn)i到j(luò)的“距離”,若i到j(luò)無(wú)路可走,dij就為無(wú)窮大,此時(shí)dii為0。然后固定節(jié)點(diǎn)k,把所有i到j(luò)且經(jīng)過(guò)k的“距離”找出來(lái),當(dāng)dik+dkj較小時(shí),dik+dkj就是最短距離。用最佳路徑矩陣P(初始值pij=i)接收k值,pij=k表示從i到j(luò)的最佳路徑中,離j點(diǎn)最近的上一個(gè)點(diǎn)為k。最后從矩陣P中得出最佳路徑上的節(jié)點(diǎn),在PC機(jī)上滿足城市道路交通網(wǎng)的情況下,建立模型實(shí)現(xiàn)最佳路徑的求解,仿真得到各節(jié)點(diǎn)的地理空間位置,實(shí)現(xiàn)信號(hào)采集路徑的最佳匹配。
本文人機(jī)交互界面的設(shè)計(jì)采用Android SDK提供的布局控件,以及Google提供的高級(jí)應(yīng)用控件,來(lái)實(shí)現(xiàn)系統(tǒng)應(yīng)用程序的設(shè)計(jì)。軟件客戶端主要實(shí)現(xiàn)4個(gè)功能:1)采樣點(diǎn)當(dāng)前位置經(jīng)緯度的定位;2)采樣點(diǎn)位置的空間與外界環(huán)境數(shù)據(jù)獲取;3)當(dāng)前位置信號(hào)強(qiáng)度的檢測(cè);4)從服務(wù)器獲取采樣點(diǎn)路徑預(yù)判。軟件服務(wù)器端,提供采集點(diǎn)地理環(huán)境數(shù)據(jù),實(shí)現(xiàn)目標(biāo)基站的信號(hào)衰減模擬計(jì)算,同時(shí)能夠收集并記錄上傳采集點(diǎn)信號(hào)強(qiáng)度數(shù)據(jù)與環(huán)境數(shù)據(jù),統(tǒng)計(jì)各基站信號(hào)衰減情況,為基站覆蓋優(yōu)化提供決策支持依據(jù)。
利用手機(jī)終端,數(shù)據(jù)采集人員對(duì)小區(qū)中基站信號(hào)覆蓋范圍內(nèi)的信號(hào)強(qiáng)度信息與空間環(huán)境信息進(jìn)行了多點(diǎn)實(shí)時(shí)采集與匯總,部分測(cè)試結(jié)果如圖3所示。
圖3 電波場(chǎng)強(qiáng)與空間環(huán)境監(jiān)測(cè)(截圖)
其中,Map部分中的當(dāng)前位置顯示能夠根據(jù)用戶的實(shí)際測(cè)量位置,進(jìn)行實(shí)時(shí)的跟蹤定位,當(dāng)點(diǎn)擊Map中的“我”當(dāng)前位置按鈕時(shí),系統(tǒng)能夠根據(jù)要求進(jìn)行位置圖層的切換,以實(shí)現(xiàn)地理空間環(huán)境的直觀顯示。當(dāng)點(diǎn)擊軟件中的Map&Signal按鈕時(shí),系統(tǒng)能夠?qū)Ξ?dāng)前空間中的空間電波信號(hào)強(qiáng)度和空間位置經(jīng)緯度信息進(jìn)行一次實(shí)時(shí)記錄,以滿足后續(xù)基站優(yōu)化工作的數(shù)據(jù)查找與計(jì)算要求。
根據(jù)需求用戶可以通過(guò)3G網(wǎng)絡(luò)實(shí)時(shí)地把系統(tǒng)采集到的數(shù)據(jù)上傳到網(wǎng)絡(luò)終端的服務(wù)器上,實(shí)現(xiàn)多地點(diǎn)實(shí)時(shí)數(shù)據(jù)匯總。同時(shí)根據(jù)用戶上傳的實(shí)時(shí)多點(diǎn)數(shù)據(jù),基站優(yōu)化人員可以在任何一臺(tái)具有網(wǎng)絡(luò)的計(jì)算機(jī)終端上,下載系統(tǒng)實(shí)時(shí)數(shù)據(jù),結(jié)合GIS的空間數(shù)據(jù)管理、數(shù)字地形分析技術(shù)實(shí)現(xiàn)數(shù)據(jù)的分析提取,最終結(jié)合適當(dāng)?shù)男盘?hào)衰減與信號(hào)傳播模型,通過(guò)仿真建立基站信號(hào)覆蓋范圍分布圖[10-11]。當(dāng)前基站所發(fā)射信號(hào)的覆蓋范圍如圖4所示?;靖采w范圍內(nèi)的區(qū)域直線高程地貌如圖5所示。
由實(shí)測(cè)結(jié)果可以看出,受地形因素的影響,所測(cè)基站未能實(shí)現(xiàn)區(qū)域范圍內(nèi)電波信號(hào)的完全覆蓋。為實(shí)現(xiàn)區(qū)域范圍內(nèi)電波信號(hào)的覆蓋,可以根據(jù)實(shí)際需求,抬高基站的坐地位置,實(shí)現(xiàn)高空電波信號(hào)的傳輸;同時(shí)可以在信號(hào)無(wú)覆蓋區(qū)域,建立分布式小功率基站,實(shí)現(xiàn)小范圍的信號(hào)傳播覆蓋。
測(cè)試和初步應(yīng)用效果表明:該系統(tǒng)設(shè)計(jì)合理、便攜、界面操作簡(jiǎn)單,且不受有線網(wǎng)絡(luò)的限制,初步應(yīng)用中的穩(wěn)定性和準(zhǔn)確性較好,較為適合在基站建設(shè)過(guò)程中獲取數(shù)據(jù)信息。
圖4 信號(hào)覆蓋范圍
圖5 直線高程地貌(截圖)
本文所述的基于GIS和Android的便攜式信號(hào)場(chǎng)強(qiáng)采集儀,實(shí)現(xiàn)了信號(hào)強(qiáng)度采集、城市環(huán)境空間信息采集和數(shù)據(jù)匯總等功能,具有便攜、數(shù)據(jù)傳輸速度快、操作簡(jiǎn)單和信息采集多樣化等特點(diǎn)。用戶能夠?qū)臻g地理信息和空間電波信息進(jìn)行實(shí)時(shí)多地的采集、上報(bào)和匯總,同時(shí),基站優(yōu)化人員能夠結(jié)合適當(dāng)?shù)碾姴ㄋp傳播模型,對(duì)基站電波信號(hào)的覆蓋范圍進(jìn)行實(shí)時(shí)仿真。方案中采用了Android智能手機(jī)操作系統(tǒng),具有較好的開(kāi)放性和兼容性。
作為一個(gè)典型案例,該系統(tǒng)已經(jīng)在“基于GIS技術(shù)的無(wú)線電信號(hào)覆蓋優(yōu)化系統(tǒng)”項(xiàng)目中得到了初步的應(yīng)用。在實(shí)際應(yīng)用過(guò)程中,系統(tǒng)能夠?qū)z測(cè)點(diǎn)的空間地理信息和空間電波信息進(jìn)行準(zhǔn)確實(shí)時(shí)的提取,能夠?yàn)榛緝?yōu)化人員提供準(zhǔn)確的數(shù)據(jù)信息,有著良好的開(kāi)發(fā)和應(yīng)用價(jià)值。當(dāng)然作為仍處于開(kāi)發(fā)測(cè)試階段的應(yīng)用系統(tǒng),其本身還存在一些問(wèn)題,需要進(jìn)一步的改進(jìn)和完善才能更好地滿足用戶的實(shí)際需求。
目前,本系統(tǒng)僅對(duì)單一的3G網(wǎng)絡(luò)中的電波信號(hào)進(jìn)行檢測(cè)提取,對(duì)于國(guó)內(nèi)不同的3G網(wǎng)絡(luò),仍需對(duì)系統(tǒng)進(jìn)行進(jìn)一步的優(yōu)化完善,來(lái)擴(kuò)大測(cè)試范圍。同時(shí)對(duì)于電池續(xù)航以及Android系統(tǒng)穩(wěn)定性等問(wèn)題,需研究提出相應(yīng)的解決方案,以便提高測(cè)試系統(tǒng)自身的適應(yīng)性和穩(wěn)定性。
:
[1]劉帥奇,胡紹海,肖揚(yáng).基于Android平臺(tái)的匯集團(tuán)購(gòu)信息業(yè)務(wù)描述[J].電視技術(shù),2013,37(5):96-98.
[2]嚴(yán)寒冰,劉迎春.基于GIS的城市道路網(wǎng)最短路徑算法探討[J].計(jì)算機(jī)學(xué)報(bào),2000,23(2):210-215.
[3]韓立森,王翠茹,袁和金.Web服務(wù)在GIS中的研究與應(yīng)用[J].華北電力大學(xué)學(xué)報(bào),2004,31(2):69-72.
[4]黃志勇,趙霽.基于Android平臺(tái)的移動(dòng)位置信息服務(wù)開(kāi)發(fā)研究[J].自動(dòng)化技術(shù)與應(yīng)用,2011,30(12):22-26.
[5]何永琪.嵌入式 Linux系統(tǒng)實(shí)用開(kāi)發(fā)[M].北京:電子工業(yè)出版社,2010.
[6]于智鵬,林彥君.突破關(guān)鍵:Android核心技術(shù)102問(wèn)[M].北京:電子工業(yè)出版社,2011.
[7]范秋明,何兆成.基于手機(jī)基站定位數(shù)據(jù)的地圖匹配研究[J].交通信息與安全,2011,29(4):52-57.
[8]陳鯉文,鄒復(fù)民,張方舟.校正數(shù)據(jù)庫(kù)模式在手機(jī)定位系統(tǒng)中的實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2012,38(9):85-88.
[9]曹強(qiáng),張明智,李志強(qiáng),等.CTI中車輛實(shí)時(shí)最佳路徑搜索算法設(shè)計(jì)與實(shí)現(xiàn)[J].系統(tǒng)仿真學(xué)報(bào),2009,21(21):6777-6780.
[10]郭彤城,慕春棣.并行遺傳算法在無(wú)線通訊網(wǎng)基站優(yōu)化選址中的應(yīng)用[J].系統(tǒng)工程理論與實(shí)踐,2003,2(2):57-61.
[11]朱思峰,劉芳,柴爭(zhēng)義.基于免疫計(jì)算的 TD-SCDMA網(wǎng)絡(luò)基站選址優(yōu)化[J].通信學(xué)報(bào),2011,32(1):106-120.