董 勇(東海航海保障中心福州航標(biāo)處 福建福州 350005)
?
基于安卓系統(tǒng)航標(biāo)巡檢現(xiàn)場核查APP研究
董 勇
(東海航海保障中心福州航標(biāo)處 福建福州 350005)
摘要:針對航標(biāo)遙測終端生產(chǎn)廠家之間的設(shè)備通信方式不同,通信鏈路不同,數(shù)據(jù)格式以及傳輸協(xié)議不同等問題,通過運用數(shù)據(jù)庫技術(shù),融合網(wǎng)絡(luò)通信不同類型數(shù)據(jù),結(jié)合“互聯(lián)網(wǎng)+航標(biāo)”的方向,設(shè)計一套基于安卓操作系統(tǒng)的手機APP應(yīng)用,為基層一線航標(biāo)工作人員能夠及時查看當(dāng)前最新航標(biāo)遙測終端的運行狀況提供便捷,同時較大程度提高工作效率。
關(guān)鍵詞:航標(biāo) 巡檢 遙測 安卓 APP
近年來,隨著IALA標(biāo)準(zhǔn)的航標(biāo)AIS ATON設(shè)備、北斗航標(biāo)及GSM/GPRS遙測設(shè)備的安裝部署,給航標(biāo)遠(yuǎn)程監(jiān)管提供了極大便利。但由于不同航標(biāo)遙測終端生產(chǎn)廠商之間的設(shè)備通信方式不同、通信鏈路不同,數(shù)據(jù)格式以及傳輸協(xié)議不同等問題,特別是在海上現(xiàn)場巡檢受氣象條件、工作時間等因素制約的影響,給航標(biāo)遙測終端的現(xiàn)場巡檢核查帶來諸多不便。針對這些問題,從航標(biāo)巡檢一線人員實際需求出發(fā),結(jié)合當(dāng)前智能手機應(yīng)用普及和“互聯(lián)網(wǎng)+航標(biāo)”的理念,設(shè)計了一套基于安卓系統(tǒng)的航標(biāo)巡檢現(xiàn)場核查APP系統(tǒng),擬通過手機APP客戶端,對燈塔、燈樁、燈浮、燈器、蓄電池電流電壓、航標(biāo)遙測終端、航標(biāo)AIS終端等運行狀況進行現(xiàn)場核實和檢查,從而避免了現(xiàn)有航標(biāo)巡檢維護時,因更換或檢測每臺終端設(shè)備時都必須通過值班人員在系統(tǒng)平臺上核查確認(rèn)反饋信息的現(xiàn)狀,且大大縮短了現(xiàn)場等待時間,彌補了航標(biāo)巡檢現(xiàn)場沒有可驗證的工具和手段,減輕了一線航標(biāo)人員的工作量,有效提高了工作效率,有力推進了航標(biāo)信息化、科學(xué)化的進程,具有較高的現(xiàn)實性和應(yīng)用價值。
航標(biāo)是航行標(biāo)志的簡稱,指標(biāo)示航道方向、界限與礙航物的標(biāo)志,包括過河標(biāo)、沿岸標(biāo)、導(dǎo)標(biāo)、過渡導(dǎo)標(biāo)、首尾導(dǎo)標(biāo)、側(cè)面標(biāo)、左右通航標(biāo)、示位標(biāo)、泛濫標(biāo)和橋涵標(biāo)等,是幫助引導(dǎo)船舶航行、定位和標(biāo)示礙航物與表示警告的人工標(biāo)志。
航標(biāo)遠(yuǎn)程遙測設(shè)備主要包括了:AIS航標(biāo)、北斗航標(biāo)、公共網(wǎng)絡(luò)遙測航標(biāo)等所有具備發(fā)射功能的無線信號終端。其中AIS航標(biāo)的主要目的是促進和加強船舶航行的安全,它所能提供的助航服務(wù)主要有:標(biāo)示航道、障礙物和水中建筑物等,監(jiān)控航標(biāo)的實時位置和運行狀態(tài),為過往船舶提供氣象、潮汐和海洋狀況數(shù)據(jù)等;北斗航標(biāo)主要是通過北斗衛(wèi)星提供船舶在海洋上的定位信息;公共網(wǎng)絡(luò)遙測遙控航標(biāo)主要功能是通過國內(nèi)三大公眾網(wǎng)絡(luò)運營商提供的通信鏈路,將航標(biāo)采集數(shù)據(jù)匯總到航標(biāo)監(jiān)控指揮中心的數(shù)據(jù)庫中。
幾種遙測終端各有優(yōu)劣,AIS航標(biāo)采用廣播方式,在能見度較低的天氣條件下,可以為周圍船舶提供準(zhǔn)確的航標(biāo)信息,但AIS航標(biāo)受困于AIS基站覆蓋,通常通信距離較近,只適合安裝于港區(qū)范圍內(nèi)的航標(biāo)上;北斗航標(biāo)采用衛(wèi)星通信,信號覆蓋范圍廣,但只能尋址通信且功耗較大,僅適合安裝于供電穩(wěn)定的遠(yuǎn)海燈塔供指揮中心監(jiān)測使用;遙控遙測終端使用移動數(shù)據(jù)運營商網(wǎng)絡(luò),也僅為尋址通信,優(yōu)點為只要有手機信號的海域都可用于遙測使用且功耗很低,同時可以通過短信方式召測,設(shè)置設(shè)備通信參數(shù),應(yīng)用靈活方便。
多種通信模式終端的結(jié)合使用,使得航標(biāo)遠(yuǎn)程監(jiān)管達(dá)到各自發(fā)揮優(yōu)勢,互相彌補缺點的合理水平,方便航標(biāo)管理部門指揮中心遠(yuǎn)程監(jiān)管。
這款A(yù)PP的設(shè)計采用了當(dāng)前安卓智能手機主流的C/S模型架構(gòu),即客戶端(Client)和服務(wù)器端(Server)。本系統(tǒng)程序設(shè)計中,安卓手機APP為客戶端,航標(biāo)監(jiān)控指揮中心服務(wù)器上運行的后臺程序為服務(wù)器端。該系統(tǒng)主要運用的技術(shù)包括:采用TCP/IP Scoket協(xié)議結(jié)合、Webservice數(shù)據(jù)融合的通信方式,并對各種類型遙測航標(biāo)上傳的數(shù)據(jù)進行分類處理和數(shù)據(jù)解析,實現(xiàn)數(shù)據(jù)入庫,來實現(xiàn)手機客戶端和服務(wù)器之間的數(shù)據(jù)通信。
2.1系統(tǒng)架構(gòu)設(shè)計結(jié)構(gòu)
圖1 本程序架構(gòu)設(shè)計方式
本系統(tǒng)在架構(gòu)設(shè)計開發(fā)方式上采用的是MVC(Model View Controller)設(shè)計架構(gòu)來設(shè)計本款A(yù)PP。其中MVC分別是模型(model)-視圖(view)-控制器(controller)的縮寫。在本次設(shè)計中,數(shù)據(jù)庫為模型層,后臺的服務(wù)器程序為視圖層,安卓手機的客戶端程序為控制器。關(guān)于MVC的設(shè)計方式,大致描述如上圖1所示。
2.2系統(tǒng)技術(shù)特點
服務(wù)器多類型數(shù)據(jù)融合數(shù)據(jù)處理,AIS航標(biāo)、北斗航標(biāo)、遙測遙控航標(biāo)及AIS基站等所有遙測航標(biāo)數(shù)據(jù)的綜合數(shù)據(jù)處理、解碼及入庫;
具體涉及現(xiàn)實網(wǎng)絡(luò)機房部署中的系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)組成,如下圖2所示:
圖2 航標(biāo)巡檢現(xiàn)場核查系統(tǒng)服務(wù)器網(wǎng)絡(luò)結(jié)構(gòu)圖
服務(wù)器多種數(shù)據(jù)通信方式,采用TCP/IP協(xié)議、Webservice服務(wù)、Scoket、串口等多種數(shù)據(jù)通信接口,融合短信、套接字、xml語句等多種類型數(shù)據(jù)格式。
手機實時監(jiān)控及歷史數(shù)據(jù)分析,手機APP通過Webservice方式請求服務(wù)器推送所需要的實時及歷史數(shù)據(jù),在手機端進行分析,并用圖形直觀表示。
開發(fā)平臺: 服務(wù)器端開發(fā)平臺Visual Studio 2012、開發(fā)語言C++;手機APP端開發(fā)平臺Eclipse,開發(fā)語言java;采用TCP/IP Scoket協(xié)議結(jié)合Webservic數(shù)據(jù)融合的通信方式;AIS數(shù)據(jù)為國際電信聯(lián)盟ITU頒布的1371號協(xié)議,標(biāo)準(zhǔn)NMEA-0183語句,采用TCP/IP通信方式,需要專屬用戶名和密碼驗證;遙測數(shù)據(jù)服務(wù)器為自定義的協(xié)議語句,采用開放式TCP/IP通信方式和Webservice連接方式相結(jié)合。
2.3APP功能介紹
安卓手機APP端主要功能包括:基礎(chǔ)信息、新標(biāo)搜索、數(shù)據(jù)升級和實時查詢等四個功能模塊:
基礎(chǔ)信息功能模塊主要內(nèi)置了航標(biāo)基礎(chǔ)信息,包括航標(biāo)編號、航標(biāo)名稱、基礎(chǔ)位置、燈質(zhì)等,主要方便航標(biāo)管理部門對航標(biāo)基礎(chǔ)信息的快速查詢。
實時查詢模塊為該APP關(guān)鍵部分,主要是第一時間實時查詢到當(dāng)前航標(biāo)遙測終端上報的信息,核實上報時間、航標(biāo)位置、電流電壓的時效性和準(zhǔn)確性,并可以查詢近期歷史數(shù)據(jù)記錄,位置偏移情況和電流電壓變化曲線圖,功能示意如下圖3所示:
圖3 航標(biāo)巡檢現(xiàn)場核查實時查詢功能示意圖
新標(biāo)搜索模塊主要為基礎(chǔ)信息沒有更新的新設(shè)立航標(biāo)遙測終端提供快速查詢接口。
數(shù)據(jù)升級模塊會在APP啟動前檢查當(dāng)前APP程序版本號,提示用戶是否升級程序并更新航標(biāo)基礎(chǔ)信息。
3.1網(wǎng)絡(luò)通信技術(shù)
網(wǎng)絡(luò)通信部分,服務(wù)器端我們采用了TCP/IP協(xié)議、Webservice服務(wù)、Scoket、串口等多種數(shù)據(jù)通信接口,融合短信、套接字、xml語句等多種類型數(shù)據(jù)格式。為實現(xiàn)服務(wù)器端的正常工作和滿足設(shè)計的需求,開發(fā)者專門開發(fā)了一款使服務(wù)器端程序,能夠?qū)Ω鞣N類型遙測航標(biāo)上傳的數(shù)據(jù)進行分類處理和數(shù)據(jù)解析,并實現(xiàn)數(shù)據(jù)庫入庫。服務(wù)器端程序如下圖4所示:
圖4 航標(biāo)巡檢現(xiàn)場核查系統(tǒng)服務(wù)器端程序
此服務(wù)器端程序有專門的AIS通道、北斗通道、航標(biāo)遙測通道和短信通道。服務(wù)器端程序?qū)⒉煌ǖ乐械臄?shù)據(jù)進行如上所說的數(shù)據(jù)處理,解析和入庫操作。安卓手機APP端,通過WebService方式請求服務(wù)器推送所需的實時及歷史數(shù)據(jù),并在手機端進行分析和顯示的工作。
3.2數(shù)據(jù)庫操作技術(shù)
在數(shù)據(jù)庫技術(shù)中,主要是通過對數(shù)據(jù)庫進行查詢,分類搜索等數(shù)據(jù)庫的操作功能來得到歷史數(shù)據(jù),并運用安卓程序開發(fā)的技術(shù)將得到的數(shù)據(jù)進行圖形化的直觀顯示,在安卓客戶端中進行數(shù)據(jù)分析,解析和繪制,參見上圖4,App端的歷史數(shù)據(jù)查詢功能界面如下圖5所示:
基于安卓系統(tǒng)航標(biāo)巡檢現(xiàn)場核查App的設(shè)計中,多種數(shù)據(jù)的通信和融合是一個難點。其中,AIS數(shù)據(jù)協(xié)議為國際標(biāo)準(zhǔn)的NMEA-0183語句;航標(biāo)遙測終端大多數(shù)各廠商為自定義的協(xié)議語句,采用開放式TCP/IP通信方式或Webservice連接方式;同時該APP軟件兼容北斗航標(biāo)的通信接口,北斗數(shù)據(jù)需要接入總參北斗衛(wèi)星導(dǎo)航系統(tǒng)地面站的數(shù)據(jù)服務(wù)中心,使用北斗系統(tǒng)國家標(biāo)準(zhǔn)。
本系統(tǒng)服務(wù)器端程序預(yù)留多路接口,可以提供明碼格式語句供其它系統(tǒng)使用,同時本系統(tǒng)服務(wù)器端預(yù)留長期存儲的數(shù)據(jù)庫接口以及基于手機APP電子海圖接口,為后期的應(yīng)用擴展提供數(shù)據(jù)支持。
圖5 航標(biāo)巡檢現(xiàn)場核查APP部分功能圖
參考文獻
[1]許健,余琳.航標(biāo)遙測遙控系統(tǒng)在航道維護管理中的應(yīng)用[J].水運管理,2011,33( 9) :34-35.
[2]李子福,彭國均,黃鵬飛.航標(biāo)遙測遙控系統(tǒng)的優(yōu)化[J].集美大學(xué)學(xué)報: 自然科學(xué)版,2010,15(5):358-363.
[3]翟大昆.Android項目開發(fā)詳解[M].北京:機械工業(yè)出版社,2012.
[4]薩師煊,王珊.數(shù)據(jù)庫系統(tǒng)概論[M].北京:高等教育出版社,2006.
[5]柯元旦.Android內(nèi)部剖析[M].北京:電子工業(yè)出版社,2011.