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