亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

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

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

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

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

        ?

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

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

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

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

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

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

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

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

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

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

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

        1.1 工程項(xiàng)目背景

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

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

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

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

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

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

        此系統(tǒng)可將數(shù)據(jù)及時(shí)上傳至監(jiān)控室服務(wù)器,但不能及時(shí)反映到監(jiān)控者隨身攜帶的手機(jī)上,且沒有相關(guān)軟件?;诖耍疚难芯康膯栴}才有實(shí)際意義,但研究需以此系統(tǒng)為平臺(tái)。

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

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

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

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

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

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

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

        2.2 無線通信技術(shù)

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

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

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

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

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

        3.1 軟件需求分析

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

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

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

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

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

        3.3 Android智能終端與TM30測(cè)量機(jī)器人通信

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        3.5 變形時(shí)程曲線的繪制

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

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

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

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

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

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

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

        試驗(yàn)中,BLE應(yīng)用程序優(yōu)化主要針對(duì)開機(jī)自啟動(dòng)功能和后臺(tái)運(yùn)行功能兩方面。

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

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

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

        在軟件開發(fā)過程中,開發(fā)者雖然使用了許多能夠保證軟件質(zhì)量的方法來分析、設(shè)計(jì)和實(shí)現(xiàn)軟件,但軟件產(chǎn)品中仍可能存在隱藏錯(cuò)誤和缺陷。測(cè)試中選用小米4智能手機(jī)作為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智能終端為載體的地鐵自動(dòng)化監(jiān)測(cè)軟件開發(fā)后需進(jìn)行測(cè)試,主要包括系統(tǒng)功能測(cè)試、穩(wěn)定性測(cè)試和BLE應(yīng)用程序性能測(cè)試3部分[23]。

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

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

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

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

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

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

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

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

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

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

        5 結(jié) 語

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

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

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

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

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

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

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

        [5] 王彥恩.2014—2015中國(guó)Android手機(jī)市場(chǎng)研究報(bào)告[EB/OL].[2016-06-24].http:∥zdc.zol.com.cn/505/5056019.html.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        [23] 張新華,何永前.軟件測(cè)試方法概述[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智能終端的實(shí)時(shí)地鐵變形監(jiān)測(cè)系統(tǒng)軟件設(shè)計(jì)[J].測(cè)繪通報(bào),2017(6):98-104.

        10.13474/j.cnki.11-2246.2017.0199.

        2016-08-18

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

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

        P258

        A

        0494-0911(2017)06-0098-07

        猜你喜歡
        藍(lán)牙數(shù)據(jù)包應(yīng)用程序
        藍(lán)牙音箱的直線之美
        刪除Win10中自帶的應(yīng)用程序
        SmartSniff
        簡(jiǎn)單、易用,可玩性強(qiáng)Q AcousticsBT3藍(lán)牙音箱
        適合自己的才是最好的 德生(TECSUN) BT-50藍(lán)牙耳機(jī)放大器
        緊急:藍(lán)牙指尖陀螺自燃!安全隱患頻出
        玩具世界(2017年8期)2017-02-06 03:01:38
        基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計(jì)與實(shí)現(xiàn)
        視覺注意的數(shù)據(jù)包優(yōu)先級(jí)排序策略研究
        關(guān)閉應(yīng)用程序更新提醒
        電腦迷(2012年15期)2012-04-29 17:09:47
        移動(dòng)IPV6在改進(jìn)數(shù)據(jù)包發(fā)送路徑模型下性能分析
        无码福利写真片视频在线播放| 一本久久伊人热热精品中文| 中文字幕亚洲精品高清| 国产一区二区三区十八区| 久久免费看黄a级毛片| 久久亚洲精精品中文字幕早川悠里 | 亚洲精品在线视频一区二区| 99国产精品99久久久久久 | 一区二区三区少妇熟女高潮| 亚洲女人的天堂网av| 亚洲天堂精品成人影院| 亚洲精品~无码抽插| 国模无码一区二区三区| 日韩乱码人妻无码中文字幕视频 | 亚洲狠狠久久五月婷婷| 亚洲av日韩av卡二| 国产中文三级全黄| 国产麻豆成人精品av| 精品一精品国产一级毛片| 一区二区三区免费观看在线视频| 蜜桃久久综合一区二区| 久久婷婷五月综合97色直播| 东北妇女肥胖bbwbbwbbw| 久久频这里精品99香蕉| 五月停停开心中文字幕| 久久99免费精品国产| 国产成人久久精品一区二区三区| 国产午夜精品一区二区 | 国产人成亚洲第一网站在线播放 | 不打码在线观看一区二区三区视频| 午夜黄色一区二区不卡| 国产91色综合久久免费| 亚洲va国产va天堂va久久| 欧美午夜精品久久久久久浪潮| 无码流畅无码福利午夜| 好看的国内自拍三级网站| 日本午夜理论片在线观看| 婷婷色婷婷开心五月四房播播| 丁香花在线影院观看在线播放| 久久久久久久久国内精品影视| 九色精品国产亚洲av麻豆一|