【正文】
The Design and Implementation of Mobile GPS Navigation SystemBased on J2MEABSTRACTWith the development of mobile munication technology, mobile phone has bee a set of munications, handheld mobile puting tools in one, it is conferred on the cell phone functionality has been extended to distributed puting, spatial orientation and other more advanced (Global Position System) and GIS (Geographic Information System) technology integration, mobile users can locate and navigate, and many other features, the application prospect is very broad.Mobile SVG is to fit the screen is small, less powerful mobile devices and the system shows twodimensional vector graphics set of development standards, it uses descriptive language text format to describe the graphical content, can be used for map data organization and storage. In reference to the Mobile SVG normative standards, the establishment of a document using SVG for map data organization and storage of the application model?;谀壳坝脩羰褂檬謾C中有60%以上是具有藍牙功能的Java手機的現(xiàn)狀,提出了一種基于J2ME平臺的移動GIS解決方案。Mobile SVG是為適應(yīng)屏幕小、性能較低的移動設(shè)備上顯示二維矢量圖形而制定的開發(fā)標準,它用文本格式的描述性語言來描述圖形內(nèi)容,可以用來進行地圖數(shù)據(jù)的組織和存儲。 論文題目: 基于J2ME的手機GPS導(dǎo)航系統(tǒng)的設(shè)計與實現(xiàn) 學位類別: 工 學 學 士 學科專業(yè): 通 信 工 程 作者姓名: 導(dǎo)師姓名: 完成時間: 2011515 65基于J2ME的手機GPS導(dǎo)航系統(tǒng)的設(shè)計與實現(xiàn)中文摘要隨著移動通信技術(shù)的發(fā)展,手機已成為集通信、掌上電腦于一體的移動計算工具,人們對手機所賦予的功能也已經(jīng)擴展到分布式計算、空間定位等更高端的領(lǐng)域。GPS(Global Position System)與GIS(Geographic Information System)技術(shù)的融合,可為手機用戶提供定位和導(dǎo)航等諸多功能,應(yīng)用前景十分廣闊。本文參照Mobile SVG規(guī)范標準,建立了利用SVG文檔進行地圖數(shù)據(jù)組織和存儲的應(yīng)用模型;在此基礎(chǔ)上,利用J2ME軟件開發(fā)技術(shù),在J2ME的相關(guān)開發(fā)包,主要是在JSR226對SVG文檔解析、操作的支持下,對手機上實現(xiàn)移動GIS服務(wù)的各項功能的關(guān)鍵技術(shù)進行了理論探討和開發(fā)實踐。該方案通過增加一個外置藍牙GPS信號接收器獲取手機的經(jīng)緯度,并將該數(shù)據(jù)發(fā)送到服務(wù)器端,服務(wù)器依據(jù)該經(jīng)緯度將相應(yīng)的地圖數(shù)據(jù)發(fā)送給客戶端,從而解決手機的定位和導(dǎo)航問題。 On this basis, the use of J2ME software development technology, J2ME related development packages, mainly in the JSR226 SVG document parsing, operations support, on the phone to achieve the various functions of mobile GIS services, the key technology of the theory and development practice.Based on the current mobile phone users in more than 60% of Bluetoothenabled Java phones status quo, to mention out of the mobile platform based on J2ME GIS solution. The program by adding an external Bluetooth GPS get the phone signal receiver latitude and longitude, and the data sent to the server, the server based on the latitude and longitude degree of the map data is sent to the client, so as to solve the positioning of mobile phones and navigation problems.KEY WORD:J2ME。GPS。Bluetooth目 錄第一章 引言 1 課題背景及研究意義 1 課題主要內(nèi)容 1 論文結(jié)構(gòu)安排 2第二章 關(guān)鍵技術(shù)介紹 3 J2ME技術(shù) 3 簡介 3 J2ME平臺體系結(jié)構(gòu) 3 J2ME流行原因 3 定位技術(shù) 4 基于網(wǎng)絡(luò)的定位技術(shù) 4 基于移動終端的定位技術(shù) 5 移動GIS技術(shù) 5 移動GIS的概念 5 移動GIS的組成結(jié)構(gòu) 5 移動GIS的特點 6 移動GIS的關(guān)鍵技術(shù) 6 藍牙通信技術(shù) 7 藍牙通信概述 7 J2ME平臺對藍牙技術(shù)的支持 7 J2ME平臺下藍牙通信的實現(xiàn) 8 網(wǎng)絡(luò)通信技術(shù) 9 J2ME網(wǎng)絡(luò)通信概述 9 網(wǎng)絡(luò)通信的要點 9 HTTP通信 9 數(shù)據(jù)存儲技術(shù) 10 RMS 10 文件系統(tǒng) 10 XML技術(shù) 10 DOM解析技術(shù) 11 SAX解析技術(shù) 11 多線程技術(shù) 11 多線程概念 11 線程狀態(tài)和生命周期 12 Java中多線程的兩種實現(xiàn)方式 12 線程的安全問題——同步與協(xié)作 12 Servlet技術(shù) 13 Servlet基本概念 13 Servlet的生命周期 13 Java Servlet API 14 SVG地圖圖片的渲染及制作技術(shù) 14 SVG地圖圖片渲染技術(shù) 14 地圖制作軟件——Adobe Illustrator 14第三章 GPS導(dǎo)航模型需求分析 15第四章 GPS導(dǎo)航模型概要設(shè)計 16 功能模塊劃分 16 客戶端功能描述 16 服務(wù)端功能描述 17第五章 GPS導(dǎo)航模型詳細設(shè)計 18 系統(tǒng)設(shè)計思想 18 Java設(shè)計模式 18 本系統(tǒng)采用的設(shè)計模式——狀態(tài)設(shè)計模式 18 客戶端設(shè)計 18 用戶界面設(shè)計 18 多線程設(shè)計 19 GPS數(shù)據(jù)接收及解析設(shè)計 19 XML包生成、接收及解析功能設(shè)計 19 藍牙設(shè)備發(fā)現(xiàn)、連接及數(shù)據(jù)傳送功能設(shè)計 19 文件系統(tǒng)訪問設(shè)計 20 服務(wù)端Servlet設(shè)計 20 XML包生成、接收及解析功能設(shè)計 20 Web路由設(shè)計 20 地圖文件數(shù)據(jù)發(fā)送功能設(shè)計 20 客戶端與服務(wù)端通信設(shè)計 20 通信協(xié)議 20 采用XML描述傳輸數(shù)據(jù)包 21 通信流程 22 地圖服務(wù)設(shè)計 22 設(shè)計原則 22 圖片傳輸格式 23 定位服務(wù)設(shè)計 23 查詢服務(wù)設(shè)計 23第六章 GPS導(dǎo)航模型實現(xiàn) 24 服務(wù)端應(yīng)用程序?qū)崿F(xiàn) 24 設(shè)計思路 24 核心代碼 25 客戶端應(yīng)用程序?qū)崿F(xiàn) 26 狀態(tài)設(shè)計思想的實現(xiàn) 26 客戶端各狀態(tài)具體實現(xiàn) 32 客戶端接收和發(fā)送數(shù)據(jù)實現(xiàn) 40 地圖服務(wù)實現(xiàn) 41 定位服務(wù)實現(xiàn) 44 查詢服務(wù)實現(xiàn) 46 系統(tǒng)通信實現(xiàn) 47 地圖制作實現(xiàn) 49 軟件在WTK模擬器上模擬實現(xiàn) 49 軟件在NOKIA C5真機上進行測試 50第七章 總結(jié)與展望 57 總結(jié) 57 展望 57參考文獻 58致謝 59附錄一 J2ME平臺下GPS定位使用JSR 179獲取經(jīng)緯度代碼 60附錄二 SVG格式地圖制作過程 61附錄三 手機測試J2ME平臺系統(tǒng)屬性及對可選API是否支持的屬性相關(guān)代碼 65第一章 引言 課題背景及研究意義當前,隨著計算機技術(shù)、移動通信技術(shù)等的發(fā)展,移動GIS已成為GIS發(fā)展的重要方向之一。目前移動GIS 應(yīng)用模式主要有WAP 模式、C/S 模式和單機模式3 種:WAP 模式采用B/S 結(jié)構(gòu),服務(wù)器端基于WAP 協(xié)議開發(fā)地圖服務(wù)器,用戶通過手機內(nèi)置的WAP瀏覽器訪問并顯示地圖服務(wù)器提供的柵格地圖,以這種方式呈現(xiàn)在用戶手機上的電子地圖為靜態(tài)的柵格圖像,不具備無級縮放等矢量地圖所具備的特性,也不能與GPS 定位或其它的定位技術(shù)結(jié)合實現(xiàn)定位功能,用途十分有限;單機模式是將地圖數(shù)據(jù)和軟件完整預(yù)裝到移動終端,所有操作都在移動終端完成,無需聯(lián)網(wǎng)。如果手機是帶有GPS功能的高端手機,后兩種模式可以方便的將GPS和GIS功能融合實現(xiàn)定位、導(dǎo)航等功能。本文針對目前使用的手機中60%以上是具有藍牙功能的Java 手機,提出了一種基于藍牙GPS 的、具有GPS 定位功能的移動GIS 解決方案。該方案通過移動終端與藍牙GPS信號接收器進行通訊獲取衛(wèi)星導(dǎo)航數(shù)據(jù),并對導(dǎo)航數(shù)據(jù)進行解析轉(zhuǎn)換從而獲得當前位置經(jīng)緯度,然后將該經(jīng)緯度數(shù)據(jù)傳至服務(wù)端,經(jīng)計算后返回明確標識當前位置的柵格圖像,從而實現(xiàn)定位功能。本論文根據(jù)該方案設(shè)計實現(xiàn)了一個實用性強、可靠性高且使用方便的移動GIS系統(tǒng),其主要功能包括地圖服務(wù)、定位服務(wù)及查詢服務(wù)。手機等移動終端設(shè)備由于受CPU、內(nèi)存和存儲空間等的局限性,其資源的使用受到嚴格的限制,如何解決大資源消耗運算同移動終端計算能力差的矛盾是一個關(guān)鍵問題,論文中通過使用將大數(shù)據(jù)量圖形計算等資源消耗高的處理由部署在服務(wù)器端的組件完成的方式來解決上述問題。系統(tǒng)設(shè)計過程中客戶端設(shè)計包括用戶界面設(shè)計、多線程設(shè)計、GPS數(shù)據(jù)接收設(shè)計、XML包生成接收及解析功能設(shè)計、藍牙設(shè)備發(fā)現(xiàn)連接及數(shù)據(jù)傳送功能設(shè)計、文件系統(tǒng)訪問設(shè)計、客戶端與服務(wù)端HTTP連接設(shè)計,服務(wù)器端設(shè)計包括服務(wù)端XML包生成接收及解析功能設(shè)計、Web路由設(shè)計、地圖文件及屬性信息數(shù)據(jù)發(fā)送功能設(shè)計。第二章 關(guān)鍵技術(shù)介紹 J2ME技術(shù)論文中客戶端軟件是基于J2ME平臺開發(fā)的,在此對J2ME平臺作簡要介紹。 根據(jù)Sun的定義:Java ME是一種高度優(yōu)化的Java運行環(huán)境,主要針對消費類電子設(shè)備的,例如蜂窩電話和可視電話、數(shù)字機頂盒、汽車導(dǎo)航系統(tǒng)等等。 J2ME平臺體系結(jié)構(gòu)J2ME平臺是由配置(Configuration)和簡表(Profile)構(gòu)成的。簡表是針對一系列設(shè)備提供的開發(fā)包集合。目前,J2ME中有兩個最主要的配置,分別是Connected Limited Devices Configuration(CLDC)和Connected Devices Configuration(CDC)。由于這個標準是在2001年的時候指定的,而現(xiàn)在移動終端的處理能力和內(nèi)存容量發(fā)展很快,如果還按照這個標準來評判可能就不準確了。本教程將主要講解基于 CLDC的J2ME平臺的相關(guān)內(nèi)容。 J2ME流行原因J2ME最吸引人的地方,就在于其針對的平臺計算能力有限,這并不是受虐,運算速度、可用內(nèi)存、以及最終生成字節(jié)碼尺寸的限制使得J2ME應(yīng)用通常比較小巧玲瓏。這樣可以有效避免協(xié)作、過程等等令人不勝其煩的軟件工程概念的引入,從而使開發(fā)人員重新回歸到編寫代碼的樂趣中去。這種技術(shù)主要有CELLIDTA、ULTOA、TDOA和AOA等幾種[5]?;赥DD的系統(tǒng)中可以用做定位的參數(shù)還有一個是時間提前量TA。TA是以比特為單位的,1b相當于550m的距離。由于網(wǎng)絡(luò)中已保存了這些數(shù)據(jù),因此,把CELLID和TA結(jié)合在一起定位移動用戶是一種簡單而且經(jīng)濟的定位方法,可以實現(xiàn)一些位置查詢業(yè)務(wù),如顯示移動用戶所在區(qū)域內(nèi)的餐館、旅館等信息。定位精度取決于小區(qū)的大小和周圍的環(huán)境。該方法要求至少有三個基站參與測量,如圖112所示,每個基站增加一個位置測量單元LMU,LMU測量終端發(fā)送的接入突發(fā)脈沖或常規(guī)突發(fā)脈沖的到達時刻,LMU可以和基站結(jié)合在一起,也可分開放置。TDOA測量的是移動用戶發(fā)射信號到達不同基站之間的傳輸時間差,