• 
    

    
    

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

      基于Android智能終端的實時地鐵變形監(jiān)測系統(tǒng)軟件設(shè)計

      2017-07-05 15:23:16胡伍生焦明連孫小榮
      測繪通報 2017年6期
      關(guān)鍵詞:藍牙數(shù)據(jù)包應(yīng)用程序

      余 騰,胡伍生,焦明連,孫小榮

      (1. 宿遷學(xué)院建筑工程學(xué)院,江蘇 宿遷 223800; 2. 東南大學(xué)交通學(xué)院,江蘇 南京 210096; 3. 淮海工學(xué)院測繪與海洋信息學(xué)院,江蘇 連云港 222001)

      ?

      基于Android智能終端的實時地鐵變形監(jiān)測系統(tǒng)軟件設(shè)計

      余 騰1,胡伍生2,焦明連3,孫小榮1

      (1. 宿遷學(xué)院建筑工程學(xué)院,江蘇 宿遷 223800; 2. 東南大學(xué)交通學(xué)院,江蘇 南京 210096; 3. 淮海工學(xué)院測繪與海洋信息學(xué)院,江蘇 連云港 222001)

      以運營期內(nèi)南京地鐵二號線某區(qū)間的連續(xù)監(jiān)測數(shù)據(jù)為例,在以TM30測量機器人和RTU數(shù)據(jù)傳輸集成單元為主體的自動化監(jiān)測系統(tǒng)硬件基礎(chǔ)上,詳細論述了基于Android智能終端的實時地鐵變形監(jiān)測系統(tǒng)的軟件需求分析、架構(gòu)設(shè)計和功能模塊劃分,分析了BLE應(yīng)用程序開發(fā)過程中所使用的關(guān)鍵技術(shù)和解決的重難點問題,開發(fā)了一款方便實用的Android應(yīng)用程序軟件,使得Android智能終端與自動化監(jiān)測系統(tǒng)能夠協(xié)同工作。實踐證明變形信息傳輸時效性大為增強,以期在類似工程中推廣應(yīng)用。

      地鐵變形;監(jiān)測;BLE;Android;系統(tǒng)

      近年來,隨著我國經(jīng)濟的快速發(fā)展,地鐵已成為一種便捷、主流的交通出行方式。地鐵交通運載力大,準時準點,速度快,不占用地上空間,我國已建和規(guī)劃建設(shè)地鐵的城市已達100余個[1]。鑒于地鐵在城市建設(shè)和人民生活中的重要地位,且一般位于鬧市區(qū),一旦發(fā)生事故會產(chǎn)生重大后果,地鐵結(jié)構(gòu)安全已成為社會重要問題。

      運營期地鐵結(jié)構(gòu)安全監(jiān)測是地鐵安全的重中之重,目前總體而言,地鐵變形實時監(jiān)測已基本實現(xiàn)自動化,上海、深圳和南京等地地鐵均采用測量機器人系統(tǒng)實時采集變形值[2],海量監(jiān)測數(shù)據(jù)得以實時采集,而數(shù)據(jù)往往不能及時上傳到監(jiān)控端,甚至依賴于有線傳輸[3],如果數(shù)據(jù)傳輸花費大量時間則極大影響地鐵安全情況掌握的現(xiàn)勢性,實測變形值等安全信息如何及時準確傳達給監(jiān)管部門已成為一個急需研究的課題。

      隨著智能通信設(shè)備普及和信號無線傳輸技術(shù)的發(fā)展,包括目前物聯(lián)網(wǎng)和云計算技術(shù)的革新,人們生活方式和資訊瀏覽習(xí)慣已發(fā)生變化,監(jiān)控者不僅局限于在監(jiān)控室觀察,也希望在手機等移動終端上能方便及時查看地鐵結(jié)構(gòu)安全信息。目前,Android智能終端發(fā)展十分迅猛,因其開放性好、硬件支持豐富和應(yīng)用程序開發(fā)方便而被廣泛應(yīng)用[4],據(jù)2015年度資料,Android系統(tǒng)在移動終端操作軟件系統(tǒng)占有率已達到80%[5]。

      傳統(tǒng)WinCE系統(tǒng)的性能和通信均受限制,基于通信技術(shù)的變革,而國內(nèi)尚未見到已開發(fā)的基于Android智能終端的實時地鐵變形監(jiān)測系統(tǒng),同時藍牙4.0(bluetooth 4.0)標準推出并迅速成為Android智能終端的標配[6],而低功耗藍牙技術(shù)(BLE)原理上可實現(xiàn)Android智能終端與TM30測量機器人系統(tǒng)之間的通信[7]。因此,本文關(guān)注并解決軟件系統(tǒng)的設(shè)計難點,開發(fā)的地鐵變形監(jiān)測Android智能終端通過3G/4G/WiFi方式實現(xiàn)了Android智能終端與后臺服務(wù)器的通信,能夠?qū)⒈O(jiān)測數(shù)據(jù)實時上傳至后臺服務(wù)器,及時接收地鐵主體結(jié)構(gòu)監(jiān)測數(shù)據(jù)并繪制實時變形時程曲線,實現(xiàn)遠程監(jiān)控。

      1 運營期地鐵結(jié)構(gòu)自動化監(jiān)測系統(tǒng)結(jié)構(gòu)簡述

      地鐵車輛高強度運行和管壁周圍荷載環(huán)境變化都會造成地鐵結(jié)構(gòu)變形,地鐵結(jié)構(gòu)一旦發(fā)生較大整體性或局部不均勻變形,會連帶造成列車軌道變形、維護管片錯位開裂甚至滲漏、供水排水管道損壞、電力系統(tǒng)損壞等嚴重后果[8]。且人工監(jiān)測因采集、處理、上報效率低下和人身安全等因素已逐漸淘汰,因此現(xiàn)階段地鐵結(jié)構(gòu)變形監(jiān)測必須做到實時性和自動化。

      1.1 工程項目背景

      本文選取的工程實例來自南京地鐵二號線,數(shù)據(jù)采樣于圓通站到雨潤大街站區(qū)間,監(jiān)測數(shù)據(jù)為20 000組連續(xù)觀測值,時間跨度從2011年至2014年。運營期地鐵結(jié)構(gòu)變形自動監(jiān)測需融合計算機技術(shù)、網(wǎng)絡(luò)技術(shù)、電子測量設(shè)備技術(shù)、數(shù)據(jù)處理模型理論等各方面的研究成果,經(jīng)過調(diào)研、方案設(shè)計、試驗、改進到運用,開發(fā)了一套自動化監(jiān)測預(yù)報系統(tǒng)并已工作[9]。

      1.2 自動化監(jiān)測系統(tǒng)的結(jié)構(gòu)

      本文示例工程中地鐵自動化監(jiān)測系統(tǒng)流程如圖1所示。

      圖1 運營期地鐵結(jié)構(gòu)自動化監(jiān)測系統(tǒng)流程

      1.3 采集數(shù)據(jù)的傳輸

      地鐵隧道結(jié)構(gòu)變形監(jiān)測使用Leica TM30測量機器人自動采集變形數(shù)據(jù),并采用GeoMos軟件進行數(shù)據(jù)自動解算分析,RTU為數(shù)據(jù)采集單元。系統(tǒng)由通信、供電和控制模塊組成,測量機器人等傳感器將采集的監(jiān)測原始數(shù)據(jù)以RS232信號輸出,通過RS232轉(zhuǎn)RS485模塊轉(zhuǎn)換為RS485信號,有線連接到RTU串口服務(wù)器,串口服務(wù)器將RS485信號轉(zhuǎn)換為RJ45信號,通過RJ45網(wǎng)線與3G/4G無線模塊相連,傳感器與RTU之間用8芯網(wǎng)線連接,用于供電及數(shù)據(jù)通信[10]。數(shù)據(jù)傳輸流程如圖2所示。

      此系統(tǒng)可將數(shù)據(jù)及時上傳至監(jiān)控室服務(wù)器,但不能及時反映到監(jiān)控者隨身攜帶的手機上,且沒有相關(guān)軟件。基于此,本文研究的問題才有實際意義,但研究需以此系統(tǒng)為平臺。

      圖2 自動化監(jiān)測系統(tǒng)的數(shù)據(jù)傳輸流程

      2 Android系統(tǒng)與相關(guān)無線通信技術(shù)

      2.1 Android系統(tǒng)與開發(fā)平臺

      監(jiān)測軟件需在Android智能終端上開發(fā)相應(yīng)的BLE應(yīng)用程序,并與監(jiān)測系統(tǒng)協(xié)同工作。

      Android是一種基于Linux的自由及開放源代碼的操作系統(tǒng),主要應(yīng)用于智能手機和平板電腦等移動設(shè)備[11]。Android操作系統(tǒng)的底層建立在Linux系統(tǒng)之上,主要由應(yīng)用程序?qū)?、?yīng)用程序框架層、函數(shù)庫、Android運行時和Linux內(nèi)核四層組成。系統(tǒng)結(jié)構(gòu)使得層與層之間相互分離,明確各層的分工,這種分工保證了層與層之間的低耦合,當(dāng)下層的層內(nèi)或?qū)酉掳l(fā)生改變時,上層應(yīng)用程序無須任何改變[12]。具體的體系結(jié)構(gòu)如圖3所示。

      圖3 Android系統(tǒng)的體系結(jié)構(gòu)

      試驗選用Windows 7操作系統(tǒng)作為開發(fā)平臺,在Windows 7操作系統(tǒng)上搭建Android開發(fā)平臺需要使用到JDK 1.7、Android SDK、Eclipse和ADT(Android development tools)等工具包。在安裝和配置好開發(fā)環(huán)境后,在Eclipse下使用Java語言編寫代碼開發(fā)Android應(yīng)用程序。Android應(yīng)用程序編譯和打包后會生成APK安裝文件,既可以在Android模擬器上運行,也可以下載到Android設(shè)備上進行測試[13]。

      2.2 無線通信技術(shù)

      試驗采用Android智能終端作為監(jiān)測系統(tǒng)瀏覽終端,TM30測量機器人通過短距離無線通信技術(shù)建立無線體域網(wǎng)(wireless body area network,WBAN),將監(jiān)測數(shù)據(jù)實時傳輸至智能終端進行顯示、分析和上傳。采用無線通信技術(shù),整套設(shè)備輕巧便攜,無需線纜介質(zhì),不受卡口和線路的約束,以及地鐵運行對纜線的影響。

      常用的短距離無線通信技術(shù)有IEEE 802.11、ZigBee、藍牙(bluetooth)、紅外、RF射頻等[14],其參數(shù)對比見表1。

      表1 無線通信技術(shù)參數(shù)對比

      考慮到藍牙比IEEE 802.11的功耗更低[15],同時Android操作系統(tǒng)也在其4.3版本中加入了對藍牙4.0技術(shù)的支持,因此測量機器人與Android智能終端之間選用低功耗的藍牙4.0通信方式進行通信。

      3 終端程序的設(shè)計與實現(xiàn)

      3.1 軟件需求分析

      BLE應(yīng)用程序軟件需要實現(xiàn)與TM30測量機器人通信、與后臺服務(wù)器通信、變形時程曲線繪制、開機重啟和后臺運行功能。

      3.2 軟件架構(gòu)設(shè)計

      在軟件需求分析的基礎(chǔ)上,需根據(jù)BLE應(yīng)用程序的功能設(shè)定,選取合適的軟件架構(gòu)將應(yīng)用程序劃分為不同的功能模塊。軟件框架應(yīng)該能將整個軟件劃分為若干層或若干模塊,并表現(xiàn)出清晰的層次化和模塊化特點;同時使各層次內(nèi)和各模塊內(nèi)部高內(nèi)聚,層次之間、模塊之間低耦合[16]。MVC(model view controller)框架模式是一種軟件設(shè)計典范,其通過將界面顯示、業(yè)務(wù)邏輯、數(shù)據(jù)處理分離的方法來組織代碼,具有耦合性低、可擴展性好和模塊職責(zé)劃分明確的特點[17],因此試驗采用MVC框架模式。

      根據(jù)軟件需求分析和MVC框架模式,可以將BLE應(yīng)用程序分為藍牙4.0通信單元、服務(wù)器通信單元、變形時程曲線繪制單元和變形預(yù)警單元4個部分,程序的框架結(jié)構(gòu)如圖4所示。

      圖4 BLE應(yīng)用程序的框架結(jié)構(gòu)

      3.3 Android智能終端與TM30測量機器人通信

      Android平臺上藍牙4.0開發(fā)流程為藍牙搜索、連接、數(shù)據(jù)傳輸和數(shù)據(jù)解析存儲。

      (1) Android智能終端上BLE搜索和連接首先需要獲取Android設(shè)備的藍牙設(shè)備管理器,再通過已經(jīng)獲取到的藍牙設(shè)備管理器進一步獲取藍牙設(shè)備適配器,調(diào)用Adapter.startLeScan()函數(shù)來搜索有效范圍內(nèi)的所有BLE設(shè)備,調(diào)用Gatt gatt=device.connectGatt()函數(shù)進行BLE連接,連接成功后返回一個BluetoothGatt對象gatt,通過gatt和gattCallback對象就可以和已經(jīng)連接上的TM30測量機器人進行交互。

      (2) 在完成Android智能終端與測量機器人之間的BLE連接后,還需作進一步的設(shè)置。BLE通信分為Service、Characteristic、Descriptor 3個部分,每個部分都有UUID作為唯一標示符。一個藍牙4.0設(shè)備可以包含多個Service,一個Service可以含有多個Characteristic,一個Characteristic包含有一個Value和多個Descriptor,一個Descriptor包含有一個Value。Characteristic是Android智能終端與測量機器人之間交換數(shù)據(jù)的關(guān)鍵,通信設(shè)置過程如圖5所示。

      圖5 Android藍牙4.0通信設(shè)置過程

      (3) Android智能終端與TM30測量機器人中的藍牙4.0模塊建立連接并完成相關(guān)設(shè)置后,即可以實現(xiàn)兩者之間的數(shù)據(jù)交換。由于需要交換多種類型的數(shù)據(jù),為了確保數(shù)據(jù)傳輸和接收的完整性,試驗采用數(shù)據(jù)包的形式來完成數(shù)據(jù)通信。測量機器人完成一段時間的采樣后,將數(shù)據(jù)按照指定的格式打包后通過藍牙4.0模塊發(fā)送至Android智能終端。由于藍牙4.0模塊為短包傳輸模式,測量機器人通過藍牙4.0模塊向Android智能終端發(fā)送數(shù)據(jù)包時,藍牙4.0模塊會將監(jiān)測數(shù)據(jù)包轉(zhuǎn)換為短數(shù)據(jù)包,每個短數(shù)據(jù)包中有效數(shù)據(jù)長度不超過30 byte。Android智能終端接收到一個短數(shù)據(jù)包后,Android系統(tǒng)會回調(diào)onCharacteristicChanged()函數(shù),短數(shù)據(jù)包中的有效數(shù)據(jù)即為characteristic.getValue()。由于數(shù)據(jù)之間的短間隔,為了避免監(jiān)測數(shù)據(jù)丟失,必須盡快執(zhí)行完onCharacteristicChanged()函數(shù),并取出和保存好每一個短數(shù)據(jù)包中的監(jiān)測數(shù)據(jù)。

      為了確保BLE通信正常,藍牙4.0模塊內(nèi)部分別用兩個整型的credits記錄藍牙模塊可發(fā)送的數(shù)據(jù)包個數(shù)和可接收的數(shù)據(jù)包個數(shù),藍牙模塊每發(fā)送一個數(shù)據(jù)包至Android智能終端上,其內(nèi)部記錄發(fā)送的credits就會減1[18]。當(dāng)記錄發(fā)送的credits減為0時,藍牙模塊就不能繼續(xù)向Android智能終端發(fā)送數(shù)據(jù),直到Android智能終端向其寫入新的記錄發(fā)送的credits,其才能繼續(xù)向Android智能終端發(fā)送數(shù)據(jù)。

      (4) 利用管道流來暫時存儲和傳輸接收到的實時監(jiān)測數(shù)據(jù),是出于對藍牙4.0傳輸特性和穩(wěn)定性的考慮,而且管道流存儲容量有限,并不適合直接對其中存儲的監(jiān)測數(shù)據(jù)進行其他操作。因而需要取出管道流中的監(jiān)測數(shù)據(jù)并保存至其他存儲方式中,并同時開啟新線程來對接收到的監(jiān)測數(shù)據(jù)進行解析和存儲。具體數(shù)據(jù)解析流程如圖6所示。

      3.4 Android智能終端與服務(wù)器通信

      Android智能終端作為與測量機器人相連的數(shù)據(jù)接收前端,在完成監(jiān)測數(shù)據(jù)的收集后,需要通過3G/4G/WiFi無線網(wǎng)絡(luò)實時和完整地將監(jiān)測數(shù)據(jù)發(fā)送到后臺服務(wù)器,以供遠程監(jiān)測。

      良好的網(wǎng)絡(luò)環(huán)境下,使用TCP通信協(xié)議可以在兩個設(shè)備之間進行網(wǎng)絡(luò)通信,但是在移動網(wǎng)絡(luò)中,由于無線信號的不穩(wěn)定性等原因,很容易造成數(shù)據(jù)丟包和觸發(fā)不必要的擁塞控制,不能確保Android智能終端將需要上傳至后臺服務(wù)器的數(shù)據(jù)快速地完成傳輸,從而導(dǎo)致TCP協(xié)議性能下降[19]。因而需要設(shè)計一個合適的數(shù)據(jù)上傳緩沖池,從而確保Android智能終端需要上傳的數(shù)據(jù)能夠在網(wǎng)絡(luò)環(huán)境可用的情況下都成功上傳。

      圖6 數(shù)據(jù)解析流程

      數(shù)據(jù)上傳緩沖池有用ConcurrentHashMap來管理需要上傳的數(shù)據(jù)包和直接使用雙重循環(huán)隊列來管理需要上傳的數(shù)據(jù)包兩種方案。雙重循環(huán)隊列結(jié)構(gòu)如圖7所示。

      圖7 雙重循環(huán)隊列結(jié)構(gòu)

      經(jīng)過試驗對比,第一種方案采用動態(tài)開辟內(nèi)存的方式來存儲數(shù)據(jù)包,開辟的內(nèi)存大小不確定,隨著未能成功上傳的數(shù)據(jù)包的增多而增大,動態(tài)內(nèi)存開辟過程中增加了性能消耗,且無法實現(xiàn)數(shù)據(jù)包的重新傳輸;第二種方案采用開辟固定大小內(nèi)存的方式存儲數(shù)據(jù)包,開辟的內(nèi)存大小可控,且能夠?qū)崿F(xiàn)數(shù)據(jù)包的重新傳輸。綜合考慮App應(yīng)用程序的性能,本文選用第二種方案設(shè)計數(shù)據(jù)上傳緩沖池。

      3.5 變形時程曲線的繪制

      Android智能終端在解析出測量機器人傳輸?shù)谋O(jiān)測數(shù)據(jù)后,即可根據(jù)監(jiān)測數(shù)據(jù)繪制出實時變形曲線圖,供監(jiān)控者查看。Android系統(tǒng)提供的繪圖機制分為2D繪圖和3D繪圖[20],2D繪圖通過Skia來實現(xiàn),變形時程曲線圖的實時繪制是2D繪圖。

      (1) 直接在View視圖上顯示圖片簡單方便,但同時也只能繪制靜態(tài)或極簡單的2D圖像,無法實現(xiàn)高品質(zhì)繪圖。Canvas是由Android系統(tǒng)中Skia模塊定義的一個2D概念,其擁有一套完整的繪圖API函數(shù),通過調(diào)用這些API函數(shù)能夠繪制出所需要顯示的圖形和動畫。Canvas繪圖方式可分為調(diào)用普通或?qū)S玫腟urfaceView控件進行繪圖。

      調(diào)用專用SurfaceView控件的Canvas繪圖方式中會定義一個單端的線程來實現(xiàn)繪圖工作,App應(yīng)用程序不需要在主線程中去實現(xiàn)繪圖,也不需要等待View繪圖的刷圖,且刷新區(qū)域可選,不需對整個控件都刷新,能夠達到較高的刷新幀率。要對變形曲線的實時繪制需要達到30幀以上的幀率,因此選擇調(diào)用專用SurfaceView控件的Canvas進行變形圖繪制。

      (2) TM30測量機器人的采樣頻率為100 Hz,并傳輸為X、Y、H三維的監(jiān)測數(shù)據(jù),即對應(yīng)于Android智能終端每秒鐘會解析出300個監(jiān)測信號點。為了能夠在Android智能終端屏幕上動態(tài)地顯示地鐵隧道某一監(jiān)測點形變位移走勢,可以先在Android智能終端屏幕上繪制網(wǎng)格形狀的坐標系,將Android智能終端的屏幕寬度從左至右方向映射為時間軸,長度從下至上方向映射為變形幅度。

      變形時程曲線圖繪制線程開啟后,Android智能終端接收到測量機器人采集數(shù)據(jù)后,將監(jiān)測數(shù)據(jù)寫入繪圖緩沖區(qū)中。每次進行屏幕繪制操作,都根據(jù)當(dāng)前時間與上次進行屏幕繪制時間之間的間隔,從繪圖緩沖區(qū)中取出對應(yīng)長度的監(jiān)測數(shù)據(jù),將監(jiān)測數(shù)據(jù)點通過SurfaceView實時繪制在Android智能終端屏幕上。如果剩余屏幕寬度不足以繪制,則清空屏幕,從頭進行繪制,從而實現(xiàn)變形時程曲線圖的動態(tài)實時繪制。

      4 BLE應(yīng)用程序優(yōu)化和軟件系統(tǒng)測試

      4.1 BLE應(yīng)用程序性能優(yōu)化

      試驗中,BLE應(yīng)用程序優(yōu)化主要針對開機自啟動功能和后臺運行功能兩方面。

      (1) 由于Android智能終端存在電池電量耗盡等因素造成設(shè)備關(guān)機或重新啟動現(xiàn)象,從而導(dǎo)致應(yīng)用程序在使用過程中非正常關(guān)閉,故需要在應(yīng)用程序中加入開機自啟動功能。

      (2) Android智能終端作為測量機器人與后臺服務(wù)器之間的連接器,測量機器人的測量有時是長期連續(xù)的,因此需要長時間運行BLE應(yīng)用程序??紤]到Android智能終端的屏幕耗電量大,同時使用者一般也不會長時間通過Android智能終端來實時觀察,故應(yīng)該將BLE應(yīng)用程序設(shè)置為后臺運行模式。在Activity中啟動Service有兩種方式:①調(diào)用bindService()函數(shù)來綁定和啟動Service,當(dāng)Activity退出時,Service也會退出,Activity和Service之間可以進行通信;②調(diào)用startService()函數(shù)來啟動Service,當(dāng)Activity退出時,Service不會退出,Activity和Service之間不可以進行通信[21]。根據(jù)BLE應(yīng)用程序需求分析,本文采用將兩種啟動方式相結(jié)合的方法在Activity中啟動Service,這樣既可以實現(xiàn)Activity與Service之間的通信,也能實現(xiàn)當(dāng)Activity退出時Service繼續(xù)運行,從而實現(xiàn)BLE應(yīng)用程序在鎖頻狀態(tài)下的后臺運行。

      4.2 軟件系統(tǒng)測試

      在軟件開發(fā)過程中,開發(fā)者雖然使用了許多能夠保證軟件質(zhì)量的方法來分析、設(shè)計和實現(xiàn)軟件,但軟件產(chǎn)品中仍可能存在隱藏錯誤和缺陷。測試中選用小米4智能手機作為Android智能終端,其主要相關(guān)參數(shù)為:1920×1080(FHD)分辨率、Android OS 4.4系統(tǒng)、3 GB RAM、四核驍龍CPU、CPU主頻2.5 GHz、3080 mAh電池[22]。

      以Android智能終端為載體的地鐵自動化監(jiān)測軟件開發(fā)后需進行測試,主要包括系統(tǒng)功能測試、穩(wěn)定性測試和BLE應(yīng)用程序性能測試3部分[23]。

      (1) 將安裝有BLETest應(yīng)用程序的小米4智能手機放置在距離測量機器人10 m的地方,啟動BLETest應(yīng)用程序,搜尋BLE設(shè)備并建立連接,發(fā)送“請求數(shù)據(jù)”指令,進行實時監(jiān)測數(shù)據(jù)的接收和解析。測試界面及結(jié)果如圖8所示。

      圖8 BLETest程序測試界面及結(jié)果

      測試結(jié)果表明,小米4智能終端與測量機器人之間可通過藍牙4.0連接,能夠根據(jù)預(yù)定協(xié)議發(fā)送和接收數(shù)據(jù),Android智能終端能夠根據(jù)協(xié)議成功解析出各種信息,通信功能正常。

      此外,還要進行Android智能終端繪制地鐵某監(jiān)測點變形曲線圖功能、智能終端與后臺服務(wù)器通信功能、BLE應(yīng)用程序優(yōu)化功能、系統(tǒng)整體功能的測試,試驗結(jié)果達到預(yù)定目標。

      (2) 在完成系統(tǒng)各個模塊的功能測試后,還需對相關(guān)模塊進行穩(wěn)定性測試,才能確保系統(tǒng)能夠長期穩(wěn)定工作。穩(wěn)定性主要體現(xiàn)在Android智能終端與測量機器人之間藍牙4.0通信的穩(wěn)定性。具體測試包括藍牙4.0單次連接穩(wěn)定通信時間和藍牙4.0斷線重連性能,試驗顯示穩(wěn)定通信時間可達4 h以上,斷線重連的次數(shù)可達7次。

      (3) 通過系統(tǒng)的功能和穩(wěn)定性測試后,已經(jīng)能夠確定BLE應(yīng)用程序能夠良好地驅(qū)動Android智能終端使得軟件系統(tǒng)正常穩(wěn)定工作。同時BLE應(yīng)用程序的性能直接關(guān)系實時系統(tǒng)的整體性能,影響整個產(chǎn)品的用戶體驗,因而還需要對BLE應(yīng)用程序的性能作相應(yīng)的測試和分析。本項目試驗從BLE應(yīng)用程序的CPU占用率、內(nèi)存消耗和耗電量3個方面來測試分析。

      CPU占用率是指應(yīng)用程序運行時占用CPU時間片的比例,CPU占用率越高,應(yīng)用程序運行時消耗的CPU資源越多。單個應(yīng)用程序的CPU占用率過高會導(dǎo)致Android系統(tǒng)卡頓,應(yīng)用程序運行不流暢,甚至使得應(yīng)用程序或系統(tǒng)崩潰。一個良好的應(yīng)用程序在運行時應(yīng)該占用較少的CPU資源,擁有較低的CPU占用率。使用DDMS工具對BLE應(yīng)用程序前臺運行和后臺運行兩種情況下的CPU占用率進行測試截圖,餅狀圖中com.nl.holter(user)部分即為BLE應(yīng)用程序的CPU占用率。

      測試結(jié)果顯示,應(yīng)用程序前臺運行和后臺運行的CPU占用率分別為20%和9%,并且在測試過程中其CPU占用率沒有明顯的波動,這說明軟件對CPU資源的利用是比較合理的。

      內(nèi)存消耗測試結(jié)果顯示BLE應(yīng)用程序前臺運行時Android系統(tǒng)為其分配了33.698 MB的堆內(nèi)存,已被使用的內(nèi)存大小為25.867 MB;BLE應(yīng)用程序后臺運行時Android系統(tǒng)為其分配了29.367 MB的堆內(nèi)存,已被使用的內(nèi)存大小為22.546 MB。

      耗電量的測試結(jié)果顯示BLE應(yīng)用程序前臺運行時由于手機屏幕耗電過大,僅能維持4 h的正常使用;在鎖屏情況下使應(yīng)用程序后臺運行時,能夠維持21 h的正常使用。在實際使用中,BLE應(yīng)用程序多在后臺運行,故能夠?qū)崿F(xiàn)實時軟件系統(tǒng)的長時間運行。

      5 結(jié) 語

      本文總結(jié)了運營期地鐵自動化監(jiān)測流程方法,針對Android智能終端迅速發(fā)展普及的現(xiàn)狀,分析了基于Android智能終端設(shè)計實時地鐵監(jiān)測軟件系統(tǒng)的實際意義和可行性,探討了BLE應(yīng)用程序的功能需求、軟件系統(tǒng)框架、通信連接方法并完成程序設(shè)計,最后通過試驗成功實現(xiàn)了Android智能終端與TM30測量機器人和后臺服務(wù)器的連接。

      通過小米4手機對基于Android智能終端的實時監(jiān)測軟件系統(tǒng)從功能性及穩(wěn)定性兩方面進行測試,并對BLE應(yīng)用程序從不同方面進行了性能分析,驗證了基于Android智能終端的實時地鐵監(jiān)測系統(tǒng)的可行性和實用性。

      隨著科技的發(fā)展,相對于傳統(tǒng)WinCE系統(tǒng),Android系統(tǒng)開源、免費、執(zhí)行效率更高、開發(fā)體驗更好,筆者認為越來越多的工程實時監(jiān)測嵌入式裝置將采用Android系統(tǒng)作為其平臺,智能終端作為載體。

      [1] 高峰.城市地鐵與輕軌工程[M].北京:人民交通出版社,2012.

      [2] 胡伍生,鐘金寧, 段偉,等.自動化三維高精度智能監(jiān)測系統(tǒng)在地鐵變形監(jiān)測中的應(yīng)用[J].東南大學(xué)學(xué)報(自然科學(xué)版), 2013, 43(S1): 225-229.

      [3] 楊國東,詹福雷.城市地鐵變形監(jiān)測數(shù)據(jù)處理[J]. 測繪與空間地理信息, 2014, 37(2): 6-8.

      [4] 施懿民. Android應(yīng)用測試與調(diào)試實戰(zhàn)[M]. 北京: 機械工業(yè)出版社, 2014:91-109.

      [5] 王彥恩.2014—2015中國Android手機市場研究報告[EB/OL].[2016-06-24].http:∥zdc.zol.com.cn/505/5056019.html.

      [6] 百度百科.藍牙4.0[EB/OL]. [2016-06-24].http:∥baike.baidu.com/view/3254844.htm.

      [7] 鐘金寧,段偉,田有良.應(yīng)用TM30進行地鐵隧道變形自動監(jiān)測的研究[J].測繪通報,2011(7):85-88.

      [8] 馬振海,于春華.地鐵主體結(jié)構(gòu)變形監(jiān)測的必要性分析[J].鐵道工程學(xué)報,2008(8):95-97.

      [9] 段偉,王敏,鐘金寧.地鐵隧道結(jié)構(gòu)穩(wěn)定性自動化監(jiān)測系統(tǒng)的研究與應(yīng)用[J].測繪通報,2015(9):91-94.

      [10] 趙磊,鐘金寧,胡伍生,等.南京地鐵隧道自動化變形監(jiān)測系統(tǒng)研究[C]∥2011年交通工程測量技術(shù)研討交流會論文集.廈門:中國測繪學(xué)會,2011:92-96.

      [11] 百度百科.Android[EB/OL].[2016-06-24]. http:∥baike.baidu.com/subview/1241829/9322617.htm.

      [12] 彭保基. 基于藍牙及Android的便攜式心電儀的設(shè)計與實現(xiàn)[D]. 長春:吉林大學(xué), 2014.

      [13] 江燕良.基于Android智能終端的遠程控制系統(tǒng)[J].電子技術(shù)應(yīng)用,2012,38(8):129-132.

      [14] 呂松棟,黎卓芳.藍牙4.0低功耗技術(shù)及其認證要求[J].現(xiàn)代電信科技,2011,41(10):17-20.

      [15] 徐金茍.低能耗藍牙4.0協(xié)議原理與實現(xiàn)方法[J].微型電腦應(yīng)用,2012,28(10):16-19.

      [16] 詹成國,朱偉,徐敏.基于Android的測控裝置人機界面的設(shè)計與開發(fā)[J].電力自動化設(shè)備,2012, 32(1):119-122.

      [17] 百度百科.MVC框架[EB/OL].[2016-06-24].http:∥baike.baidu.com/view/5432454.htm.

      [18] 劉懷愚,朱昌杰,李璟.時間復(fù)雜度的幾種計算方法[J].電腦知識與技術(shù),2011,7(9):4636-4638.

      [19] 史夢安,王志勃.基于Android系統(tǒng)的TCP/IP客戶端異步通信模塊研究[J].軟件導(dǎo)刊,2014,13(10):115-118.

      [20] 耿祥義,張躍平.Android手機程序設(shè)計實用教程[M].北京:清華大學(xué)出版社,2013.

      [21] 金純,李婭萍,曾偉,等.BLE低功耗藍牙技術(shù)開發(fā)指南[M].北京:國防工業(yè)出版社,2016.

      [22] 百度百科.小米4[EB/OL]. [2016-06-24].http:∥baike.baidu.com/view/29386745/9665478.htm.

      [23] 張新華,何永前.軟件測試方法概述[J].科技視界,2012(4):35-37.

      Software Design of Real Time Subway Deformation Monitoring System Based on Android Smart Terminal

      YU Teng1,HU Wusheng2,JIAO Minglian3,SUN Xiaorong1

      (1. Department of Civil Engineering, Suqian College, Suqian 223800, China; 2. Transportation School of Southeast University, Nanjing 210096, China; 3. School of Surveying and Marine Information, Huaihai Institute of Technology, Lianyungang 222001, China)

      Taking a section of operation in Nanjing No. 2 subway line continuous monitoring data as an example, based on the hardware of the automatic monitoring system which is based on the TM30 measuring robot and the RTU data transmission as the main body, this paper mainly discusses the requirement analysis,architecture design and function module partition of subway deformation monitoring system based on Android smart terminal,analyzes the key technologies used in the realization of the BLE application and the main methods to solve the key and difficult problems. It develops a convenient and practical application of Android,making Android intelligent terminal and automatic monitoring system can work together. Practice has proved that the timeliness of deformation information transmission is greatly enhanced, and has been expected to be applied in similar projects.

      subway deformation; monitoring; BLE; Android; system

      余騰,胡伍生,焦明連,等.基于Android智能終端的實時地鐵變形監(jiān)測系統(tǒng)軟件設(shè)計[J].測繪通報,2017(6):98-104.

      10.13474/j.cnki.11-2246.2017.0199.

      2016-08-18

      國家自然科學(xué)基金(41574022);江蘇省科技支撐(工業(yè))項目 (BE2014026);江蘇省高校自然科學(xué)研究項目(13KJB420004)

      余 騰(1985—),男,碩士,實驗師,研究方向為測量儀器集成開發(fā)應(yīng)用和精密工程測量與數(shù)據(jù)處理。E-mail:164002786@qq.com

      P258

      A

      0494-0911(2017)06-0098-07

      猜你喜歡
      藍牙數(shù)據(jù)包應(yīng)用程序
      藍牙音箱的直線之美
      刪除Win10中自帶的應(yīng)用程序
      電腦報(2019年12期)2019-09-10 05:08:20
      SmartSniff
      簡單、易用,可玩性強Q AcousticsBT3藍牙音箱
      適合自己的才是最好的 德生(TECSUN) BT-50藍牙耳機放大器
      緊急:藍牙指尖陀螺自燃!安全隱患頻出
      玩具世界(2017年8期)2017-02-06 03:01:38
      基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計與實現(xiàn)
      視覺注意的數(shù)據(jù)包優(yōu)先級排序策略研究
      關(guān)閉應(yīng)用程序更新提醒
      電腦迷(2012年15期)2012-04-29 17:09:47
      移動IPV6在改進數(shù)據(jù)包發(fā)送路徑模型下性能分析
      松阳县| 荆门市| 连江县| 宝应县| 九龙坡区| 尚义县| 平昌县| 宿迁市| 治县。| 屏南县| 金溪县| 福鼎市| 合水县| 滨州市| 古丈县| 郎溪县| 宝应县| 定襄县| 阿巴嘎旗| 彩票| 英山县| 犍为县| 阿拉善右旗| 思茅市| 溧水县| 扶绥县| 通江县| 忻城县| 长治市| 靖江市| 灯塔市| 额济纳旗| 柯坪县| 库车县| 克拉玛依市| 凌海市| 肃北| 祥云县| 平顶山市| 新和县| 铁岭县|