• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于北斗衛(wèi)星的手機(jī)定位跟蹤系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

      2017-07-12 08:19董露石磊胡德正
      軟件導(dǎo)刊 2017年6期
      關(guān)鍵詞:安卓

      董露+石磊+胡德正

      摘要:針對日益突出的老人兒童監(jiān)護(hù)需求,基于北斗衛(wèi)星導(dǎo)航系統(tǒng),將采集到的地理位置信息依據(jù)互聯(lián)網(wǎng)協(xié)議傳輸至網(wǎng)絡(luò)。在用戶終端利用安卓系統(tǒng)豐富的APIs,調(diào)用百度地圖,設(shè)計(jì)并實(shí)現(xiàn)具有跟蹤功能的手機(jī)終端定位系統(tǒng)。測試結(jié)果表明,系統(tǒng)能準(zhǔn)確定位手機(jī)和監(jiān)控位置,靈活拖拽、縮放地圖,提供便捷的定位服務(wù),為關(guān)愛老人兒童工作提供了很好的服務(wù)。

      關(guān)鍵詞:北斗衛(wèi)星導(dǎo)航系統(tǒng);安卓;百度地圖;老人兒童關(guān)愛;定位跟蹤

      DOIDOI:10.11907/rjdk.171339

      中圖分類號:TP319

      文獻(xiàn)標(biāo)識碼:A 文章編號:1672-7800(2017)006-0110-03

      0 引言

      北斗衛(wèi)星導(dǎo)航系統(tǒng)(BDS)是我國自主研制的全球衛(wèi)星定位與通信系統(tǒng)[1],通信信號可覆蓋我國全境及周邊地區(qū)[2],BDS對亞太地區(qū)定位較GPS更加精準(zhǔn),對復(fù)雜地形定位準(zhǔn)確度高。2015年我國衛(wèi)星導(dǎo)航與位置服務(wù)產(chǎn)業(yè)總體產(chǎn)值達(dá)1735億元,同比增長29.2%。北斗應(yīng)用占比進(jìn)一步提高,市場貢獻(xiàn)率接近20%,北斗兼容應(yīng)用已經(jīng)成為國內(nèi)行業(yè)市場的主流方案[3],其應(yīng)用除了車載外,對老人兒童等特殊群體的關(guān)愛也有幫助。

      預(yù)計(jì)到本世紀(jì)中葉我國老年人口將達(dá)到4.86億[4]。老人兒童在外出時(shí)易發(fā)生走失,由于他們?nèi)狈潇o的應(yīng)對和呼救能力,導(dǎo)致尋人十分困難,能跟蹤老人兒童位置的設(shè)備作用凸顯。

      目前,老人跟蹤定位系統(tǒng)很多,大多基于GPS系統(tǒng),未能充分發(fā)揮北斗系統(tǒng)的優(yōu)勢。

      本文基于北斗系統(tǒng),采用Eclipse、百度地圖Android SDK、JDK、ADT等開發(fā)工具和包,實(shí)現(xiàn)手機(jī)定位跟蹤系統(tǒng)開發(fā)。軟件設(shè)計(jì)一個(gè)定位主界面和跟蹤按鈕,實(shí)現(xiàn)手機(jī)實(shí)時(shí)定位跟蹤老人小孩位置,并在地圖上顯示。

      1 系統(tǒng)構(gòu)架

      北斗數(shù)據(jù)接收模塊接收天線發(fā)出的地理位置信息,通過串口連接到PC機(jī),將數(shù)據(jù)上傳至服務(wù)器,用戶客戶端軟件通過Socket獲取位置信息并在安卓手機(jī)上通過百度地圖顯示,系統(tǒng)流程如圖1所示。

      北斗數(shù)據(jù)接收模塊采用和芯星通UM220-III N 雙系統(tǒng)高性能GNSS模塊[5]。隨著北斗二代導(dǎo)航定位系統(tǒng)區(qū)域?qū)Ш蕉ㄎ坏膶?shí)現(xiàn),使用多系統(tǒng)兼容的接收機(jī)提供導(dǎo)航定位信息,可以提高接收機(jī)的可用性并充分利用在軌衛(wèi)星提高定位精度[6]。UM220安裝方法如圖2所示。

      數(shù)據(jù)傳輸裝置采用RS232串行接口[7]傳輸線,一端連接UM220,另一端連接服務(wù)器,數(shù)據(jù)傳輸是異步進(jìn)行的,發(fā)送的內(nèi)容和接收到的內(nèi)容互不影響,能保證數(shù)據(jù)傳輸出錯(cuò)率較低。

      軟件部分采用Eclipse編程軟件用Java語言編寫,應(yīng)用百度地圖API實(shí)現(xiàn)手機(jī)位置實(shí)時(shí)顯示以及跟蹤老人小孩位置功能。

      2 開發(fā)語言及平臺

      系統(tǒng)使用Java語言進(jìn)行編碼開發(fā)。Java 技術(shù)因其固有的網(wǎng)絡(luò)移動、面向?qū)ο?、平臺無關(guān)、安全等諸多特征,迅速成為企業(yè)級應(yīng)用開發(fā)的首選技術(shù)[8],是安卓[9]智能終端應(yīng)用開發(fā)最常用的編程語言。

      Android開發(fā)平臺主要由JDK、Eclipse、Android SDK、ADT四部分組成。首先配置Java開發(fā)環(huán)境,下載JDK并安裝;接下來下載eclipse,雙擊文件夾中的eclipse.exe即可直接啟動;然后下載ADT的壓縮包,并在eclipse中離線安裝此插件;再配置Android SDK,點(diǎn)擊菜單window→preferences,點(diǎn)擊Browse選擇Android SDK解壓目錄[10];最后配置ADV安卓虛擬機(jī),完成開發(fā)平臺搭建[11]。

      3 系統(tǒng)實(shí)現(xiàn)

      安卓客戶端軟件通過申請百度地圖API key實(shí)時(shí)調(diào)用百度地圖,完成主界面實(shí)時(shí)定位功能和跟蹤模塊的設(shè)計(jì)開發(fā)。用戶按下跟蹤按鈕后,客戶端通過Socket獲取北斗地理位置數(shù)據(jù),并用地圖清晰地顯示出來。

      3.1 申請百度地圖API key

      百度地圖 Android SDK是一套基于Android 2.1及以上版本設(shè)備的應(yīng)用程序接口,通過該接口可實(shí)現(xiàn)豐富的LBS功能[12-13]。

      在使用百度地圖SDK前,必須通過百度賬戶申請百度地圖移動版開發(fā)密鑰。申請流程:登陸API控制臺→創(chuàng)建應(yīng)用→配置應(yīng)用→獲取安全碼→成功創(chuàng)建KEY。安全碼的組成規(guī)則:Android簽名證書的sha1值+packagename[14]。

      例如:SHA1:BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75

      包名:com.baidumap.demo

      使用eclipse開發(fā)時(shí),應(yīng)用獲取包名packagename是Android應(yīng)用程序本身在AndroidManifest.xml中定義的名稱。

      3.2 主界面設(shè)計(jì)

      3.2.1 主界面布局

      主界面總體布局為垂直線性布局,在其左上方加入一個(gè)名為“北斗跟蹤”的按鈕Button,具體操作方法為:

      在布局文件activity_main.xml里設(shè)置button代碼,或者在Graphical Layout里拖拽button至屏幕并按需求修改大小和位置,此時(shí)activity_main代碼區(qū)會直接顯示出對應(yīng)的Button代碼,代碼如下:

      3.3 跟蹤模塊設(shè)計(jì)與實(shí)現(xiàn)

      當(dāng)用戶點(diǎn)擊“北斗跟蹤”按鈕后,安卓客戶端通過Socket接口與已經(jīng)獲取的北斗地理數(shù)據(jù)服務(wù)端進(jìn)行通信,獲取老人小孩所在地理位置數(shù)據(jù),并刷新地圖顯示。

      3.3.1 Socket通信

      在網(wǎng)絡(luò)通信中常常把Socket稱作“套接字”,它主要用來描述網(wǎng)絡(luò)上一端的IP 地址和端口號,可以理解為是一個(gè)數(shù)據(jù)在網(wǎng)絡(luò)上交換的句柄,這個(gè)句柄用來實(shí)現(xiàn)主機(jī)和主機(jī)的通信連接[16]。在Java中,基于TCP協(xié)議實(shí)現(xiàn)網(wǎng)絡(luò)通信的類有兩個(gè):客戶端的Socket類和在服務(wù)器端的ServerSocket類。ServerSocket類的功能是建立一個(gè)Server,并通過accept()方法隨時(shí)監(jiān)聽客戶端的連接請求。使用Socket進(jìn)行通信過程如下:①在服務(wù)器端指定一個(gè)等待連接的端口號,在客戶端規(guī)定一個(gè)主機(jī)和端口號,從而在客戶端和服務(wù)器端創(chuàng)建Socket/ServerSocket實(shí)例[17];②打開連接到Socket的輸入輸出流;③利用輸入輸出流,按照協(xié)議對Socket進(jìn)行讀寫操作;④關(guān)閉輸入輸出流和Socket。

      3.3.2 跟蹤功能實(shí)現(xiàn)

      在main activity.java中mainactivity類聲明按鈕變量Button mButton,然后在OnCreat函數(shù)中聲明mButton,寫按鈕的點(diǎn)擊函數(shù)mButton.setOnClickListener(),按下按鈕后地圖跳轉(zhuǎn)至北斗模塊所處位置點(diǎn)point處,更新地圖,以圖標(biāo)形式覆蓋在點(diǎn)上用以指示其位置,可用map.addOverlay方法向地圖添加覆蓋物,具體代碼如下:

      4 測試結(jié)果

      運(yùn)行手機(jī)軟件,定位到當(dāng)前位置如圖3所示,將UM220模塊放置在武漢大學(xué)操場內(nèi),獲取到的位置為:latitude=30.534511,longitude = 114.367977,傳入服務(wù)器IP為192.168.0.102,在手機(jī)上點(diǎn)擊“北斗跟蹤”按鈕,界面切換至模塊所在位置,在地圖上觀察到的位置與初始放置位置相同,完成準(zhǔn)確的定位和跟蹤功能,如圖4所示。同時(shí)在地圖顯示時(shí)可以靈活拖拽并將地圖放大或縮小。

      5 結(jié)語

      本文描述了基于北斗衛(wèi)星的手機(jī)定位跟蹤系統(tǒng)總體構(gòu)架、開發(fā)語言和平臺,介紹了百度地圖API key的申請,根據(jù)Android和Baidu Map提供的應(yīng)用程序編程接口以及Java中的Socket接口,設(shè)計(jì)并實(shí)現(xiàn)了基于北斗衛(wèi)星的互聯(lián)網(wǎng)定位跟蹤系統(tǒng)。以北斗衛(wèi)星為基礎(chǔ),借助百度地圖提供的數(shù)據(jù)地圖服務(wù),為用戶外出時(shí)提供定位顯示,跟蹤老人兒童位置,以免發(fā)生走失現(xiàn)象,具有較高的實(shí)用價(jià)值。

      參考文獻(xiàn):

      [1]朱建偉,袁國輝.基于北斗衛(wèi)星導(dǎo)航系統(tǒng)的新一代廣州市空間測繪基準(zhǔn)框架構(gòu)建[J].工程勘察,2017,45(1):59-63.

      [2]王春芳,陳永濤,李春來,等.基于北斗衛(wèi)星的預(yù)警信息發(fā)布技術(shù)研究及實(shí)現(xiàn)[J].應(yīng)用氣象學(xué)報(bào),2014,25(3):

      375-384.

      [3]劉重才.北斗全球組網(wǎng)提速[N].上海證券報(bào),2017-1-10(16).

      [4]張向南,汪傳建,蘭貞益.基于Android的老人關(guān)愛系統(tǒng)[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2016,25(6):100-105.

      [5]和芯星通公司.UM220用戶手冊[EB/OL]. http://www.docin.com/p-557798299.html.

      [6]懷洋,邵瓊玲,陸振民.北斗/GPS混合定位模塊UM220應(yīng)用研究[J].國外電子測量技術(shù),2014,33(3):254-257.

      [7]NAYDEN C. Intelligent modular service mobile robot controllable via Internet[J].IFAC Proceedings Volumes,2012,45(10):49-153.

      [8]歐鋒.Java技術(shù)方案概述[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2012,21(8):236-239.

      [9]諸姣.安卓應(yīng)用系統(tǒng)的功能與權(quán)限相關(guān)性研究[J].計(jì)算機(jī)應(yīng)用與軟件,2014, 31(10):27-33.

      [10]馮玉平,王曙光.基于Android 的手機(jī)定位軟件[J].計(jì)算機(jī)與現(xiàn)代化,2015,33(2):11-13.

      [11]周麗,黃素珍.神經(jīng)網(wǎng)絡(luò)在洪水預(yù)測中的應(yīng)用研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2007,28(17):4312-4314.

      [12]李剛.瘋狂Android講義[M].北京:電子工業(yè)出版社,2011.

      [13]杜傳明.百度地圖 API 在小型地理信息系統(tǒng)中的應(yīng)用[J].測繪與空間地理信息,2011,34(2):152-156.

      [14]李驍.百度地圖API在Android中的配置和應(yīng)用[J].計(jì)算機(jī)光盤軟件與應(yīng)用,2015,18(2):37-38.

      [15]張波,趙雙明.基于安卓平臺的百度地圖開發(fā)研究[J].軟件導(dǎo)刊,2015,14(7): 96-98.

      [16]王新忠,楊波. 基于SOCKET 的數(shù)據(jù)傳輸安全技術(shù)研究[J].科技廣場,2016, 1(7):72-77.

      [17]文顯瓊,張繼榮.基于Socket的網(wǎng)絡(luò)編程及其實(shí)現(xiàn)[J].軟件導(dǎo)刊,2012,11(2):97-98.

      (責(zé)任編輯:杜能鋼)

      猜你喜歡
      安卓
      MIPS安卓平臺上ARM二進(jìn)制翻譯系統(tǒng)
      讓iPhone變安卓,這是真的野
      文物表情包
      基于安卓手機(jī)用戶行為的人口學(xué)信息預(yù)測
      安卓系統(tǒng)或成智能汽車標(biāo)配
      一種基于安卓系統(tǒng)的手機(jī)側(cè)抓包分析方法
      學(xué)習(xí)安卓應(yīng)用開發(fā)
      功能不輸iOS8!全新安卓Messenger發(fā)布
      安卓L未至安卓M來了!安卓首泄漏M系統(tǒng)
      江川县| 鸡泽县| 莎车县| 滕州市| 泾源县| 铁岭县| 铜山县| 永兴县| 游戏| 鄂伦春自治旗| 巫溪县| 达日县| 临猗县| 东莞市| 青河县| 隆尧县| 邳州市| 镇沅| 慈溪市| 漳平市| 永顺县| 灌阳县| 类乌齐县| 安龙县| 安宁市| 江油市| 南丰县| 贵溪市| 咸宁市| 佛冈县| 航空| 江川县| 辽宁省| 曲沃县| 时尚| 德钦县| 宝鸡市| 萝北县| 巩留县| 鹤山市| 密山市|