沈磊賢,龐佳逸,張卿云,徐 鶴
(南京郵電大學(xué) 計(jì)算機(jī)學(xué)院,江蘇 南京 210023)
北斗衛(wèi)星導(dǎo)航系統(tǒng)(Beidou navigation satellite system)是中國(guó)正在實(shí)施的自主研發(fā)、獨(dú)立運(yùn)行的全球衛(wèi)星導(dǎo)航系統(tǒng)。北斗導(dǎo)航系統(tǒng)是主動(dòng)式雙向測(cè)距二維導(dǎo)航。地面中心控制系統(tǒng)解算,供用戶三維定位數(shù)據(jù)。它除了具有GPS衛(wèi)星定位的功能以外,還增加了通訊功能,能夠在海洋監(jiān)測(cè)、軍事通信等一些領(lǐng)域發(fā)揮很大的作用。
目前GPS壟斷國(guó)內(nèi)導(dǎo)航產(chǎn)業(yè)95%以上,世界范圍內(nèi),手機(jī)GPS的集成率超過80%。北斗衛(wèi)星導(dǎo)航系統(tǒng)要擠入市場(chǎng),在精度沒有落后的情況下,降低部署成本是推動(dòng)企業(yè)使用北斗衛(wèi)星導(dǎo)航系統(tǒng)的最大動(dòng)力[1-3]。而硬件成本和平臺(tái)搭建維護(hù)成本是部署成本中的兩大組成部分,其中硬件成本是一次性投入,而平臺(tái)維護(hù)成本是長(zhǎng)期投入,尤其對(duì)于中小企業(yè)來說,維護(hù)一個(gè)平臺(tái)需要大量的人力物力。定位服務(wù)平臺(tái)的出現(xiàn)可以完美地解決這個(gè)問題。平臺(tái)為用戶提供各種需要的功能,包括位置查詢、軌跡查詢、地理圍欄、路線規(guī)劃等。用戶只需要使用硬件接入平臺(tái)即可。硬件的擁有者可以給用戶發(fā)放權(quán)限。任何用戶只要擁有相應(yīng)的權(quán)限就可以通過平臺(tái)了解并管理相應(yīng)的硬件或硬件組所在的位置。
使用定位服務(wù)平臺(tái)的優(yōu)勢(shì)巨大。對(duì)企業(yè)用戶而言,降低了定位系統(tǒng)平臺(tái)的研發(fā)和維護(hù)成本,更有利于中小企業(yè)在與定位相關(guān)領(lǐng)域的發(fā)展;此外,對(duì)個(gè)人用戶而言,可以以更低的成本和更便捷的方式實(shí)現(xiàn)一整套包括老人、兒童、車輛、電腦、手機(jī)等的監(jiān)控和尋找系統(tǒng)。定位服務(wù)平臺(tái)的應(yīng)用前景很廣,市面上已有的任何與定位相關(guān)的業(yè)務(wù),包括物流管理、共享單車、外賣、公交定位、網(wǎng)約車等,都可以直接接入平臺(tái)管理,降低企業(yè)維護(hù)負(fù)擔(dān),提高開發(fā)效率。還有自行車賽、馬拉松賽等長(zhǎng)途賽事情況監(jiān)控這樣的非持續(xù)性業(yè)務(wù)也可以輕松搞定,此外,敬老院、學(xué)校,尤其是幼兒園可以輕易地部署地理圍欄,減輕管理負(fù)擔(dān)。
從定位技術(shù)上來說,目前的定位服務(wù)平臺(tái)多使用GPS。相比于北斗衛(wèi)星導(dǎo)航系統(tǒng),GPS進(jìn)入市場(chǎng)較早,目前壟斷國(guó)內(nèi)導(dǎo)航產(chǎn)業(yè)95%以上。但是,國(guó)內(nèi)擁有自主產(chǎn)權(quán)的北斗衛(wèi)星導(dǎo)航系統(tǒng)在安全性上處于優(yōu)勢(shì),在定位精準(zhǔn)度上,中國(guó)的北斗衛(wèi)星導(dǎo)航由35顆衛(wèi)星組成,衛(wèi)星數(shù)目的提高,帶來的將是定位精度和服務(wù)范圍的提高。北斗是全球第一個(gè)提供三頻信號(hào)服務(wù)的衛(wèi)星導(dǎo)航系統(tǒng)。三頻信號(hào)可以更好地消除高階電離層延遲影響,提高定位可靠性,除此之外,北斗還擁有自身特有的短報(bào)文通信功能。
從服務(wù)定位上來說,目前的定位服務(wù)專注于實(shí)現(xiàn)單一功能,比如實(shí)現(xiàn)車輛位置可視化、老人兒童位置監(jiān)控、野生動(dòng)物跟蹤、物流服務(wù)等[4-7],針對(duì)性比較強(qiáng),自然也就導(dǎo)致普適性較弱,用戶無法在同一平臺(tái)上使用針對(duì)不同需求的定位服務(wù)。如今針對(duì)市場(chǎng)上個(gè)人和企業(yè)不同需求的定位服務(wù),傳統(tǒng)的基于行業(yè)用戶需求而建立的定位服務(wù)模式在可靠性、擴(kuò)展性和服務(wù)多樣性等方面已無法滿足大眾用戶的定位需求。此外,現(xiàn)有的很多移動(dòng)目標(biāo)定位平臺(tái)大都依賴于專用的GIS平臺(tái)和專用網(wǎng)絡(luò),普遍存在價(jià)格昂貴、維護(hù)困難的問題[8-9]。
國(guó)內(nèi)的百度地圖、高德地圖等的服務(wù)普適性雖好,但其一般只提供定位功能,其他部分功能只是提供了API接口,就專業(yè)人員來說開發(fā)和維護(hù)需要大量成本,而非專業(yè)人員就根本無法享用這類功能[10]。定位服務(wù)可以選擇在安卓平臺(tái)或Web平臺(tái)開發(fā)。通過安卓平臺(tái)開發(fā)的定位服務(wù)需要通過安卓智能終端使用相應(yīng)軟件才能夠進(jìn)行訪問,而Web端定位服務(wù)平臺(tái)只需要瀏覽器便可輕松訪問,避免了用戶不必要的軟件安裝。
文中提出的基于北斗衛(wèi)星導(dǎo)航系統(tǒng)的定位服務(wù)平臺(tái)安全性高,推廣了中國(guó)的專有技術(shù);通用性強(qiáng),能夠滿足不同用戶的不同需求;在保證基本定位功能的基礎(chǔ)上還提供了信息查詢、軌跡查詢、地理圍欄等功能模塊,實(shí)用且易操作。
定位原理:衛(wèi)星定位的基本原理是根據(jù)高速運(yùn)動(dòng)的衛(wèi)星瞬間位置作為已知的起算數(shù)據(jù),采用空間距離后方交會(huì)的方法,確定待測(cè)點(diǎn)的位置。如圖1所示,設(shè)時(shí)刻t在測(cè)站點(diǎn)P用接收機(jī)同時(shí)測(cè)得P點(diǎn)到四顆衛(wèi)星S1,S2,S3,S4的距離P1,P2,P3,P4,通過電文解譯出四顆GPS衛(wèi)星的三維坐標(biāo)(Xi,Yi,Zi),i=1,2,3,4,用距離交會(huì)的方法求解P點(diǎn)三維坐標(biāo)(X,Y,Z)的觀測(cè)方程如下:
(1)
(2)
(3)
(4)
其中,c為光速;δt為時(shí)鐘[11]。
圖1 衛(wèi)星定位原理
GPRS是通用分組無線服務(wù)技術(shù)的簡(jiǎn)稱,它是GSM移動(dòng)電話用戶可用的一種移動(dòng)數(shù)據(jù)業(yè)務(wù),GPRS和以往連續(xù)在頻道傳輸?shù)姆绞讲煌且苑獍絹韨鬏敚捎梅纸M交換技術(shù),能兼容GSM網(wǎng)絡(luò)并在網(wǎng)絡(luò)上更加有效地傳輸高速數(shù)據(jù)和信令,允許用戶在端到端分組轉(zhuǎn)移模式下發(fā)送和接收數(shù)據(jù),不需要電路交換模式的網(wǎng)絡(luò)資源。GPRS的傳輸速率可提升至56甚至114 kbps。GPRS技術(shù)可以在任何時(shí)間、任何地點(diǎn)快速方便地實(shí)現(xiàn)連接,其通信原理如圖2所示。
圖2 GPRS通信原理
GPRS終端的數(shù)據(jù)通過基站傳輸?shù)揭苿?dòng)公司服務(wù)器,移動(dòng)公司服務(wù)器再通過互聯(lián)網(wǎng)轉(zhuǎn)發(fā)到具有公網(wǎng)IP的服務(wù)器中,服務(wù)器返回的數(shù)據(jù)再通過互聯(lián)網(wǎng)發(fā)送給移動(dòng)公司服務(wù)器,移動(dòng)公司服務(wù)器再轉(zhuǎn)發(fā)給GPRS終端。與此同時(shí),客戶端可通過訪問公網(wǎng)IP服務(wù)來查看GPRS終端上傳的數(shù)據(jù)[12]。
AJAX即“Asynchronous Javascript And XML”(異步JavaScript和XML),是指一種創(chuàng)建交互式網(wǎng)頁應(yīng)用的網(wǎng)頁開發(fā)技術(shù)。通過在后臺(tái)與服務(wù)器進(jìn)行少量數(shù)據(jù)交換,AJAX可以使網(wǎng)頁實(shí)現(xiàn)異步更新,這意味著可以在不重新加載整個(gè)網(wǎng)頁的情況下,對(duì)網(wǎng)頁的某部分進(jìn)行更新。AJAX并非一種新的技術(shù),而是幾種原有技術(shù)的結(jié)合體,主要包括:使用CSS和XHTML來表示;使用DOM模型來交互和動(dòng)態(tài)顯示;使用XMLHttpRequest來和服務(wù)器進(jìn)行異步通信;使用Javascript來綁定和調(diào)用。AJAX的核心是JavaScript對(duì)象XmlHttpRequest,該對(duì)象是一種支持異步請(qǐng)求的技術(shù),可以通過JavaScript向服務(wù)器提出請(qǐng)求并處理響應(yīng),而不阻塞用戶[13-14]。
硬件部分主要有UM220-III雙模導(dǎo)航授時(shí)模塊、SIM800C GSM模塊、Raspberry Pi 3 Model B開發(fā)板以及相關(guān)串口、USB口連接線和供電設(shè)備[15-17]。因?yàn)镽aspberry Pi只有一對(duì)TXD,RXD引腳,所以將定位模塊接在USB口上,GSM模塊接在串口上,連接圖如圖3所示。
UM220-III雙模導(dǎo)航授時(shí)模塊同時(shí)支持GPS和北斗BD定位,同時(shí)擴(kuò)展支持差分GNSS RTCM2.3/3.0,支持AGNSS輔助定位功能,集成度高、功耗低,非常適合對(duì)尺寸、功耗要求高的北斗規(guī)模應(yīng)用[15-16]。
SIM800C GSM模塊可支持4頻GSM/GPRS,模塊的物理接口為42引腳的SMT焊盤,提供了模塊的所有硬件接口。模塊的尺寸很小,可以滿足應(yīng)用中對(duì)空間尺寸的要求[16]。模塊通過AT指令來控制,系統(tǒng)涉及的AT指令如表1所示。
圖3 硬件模塊連接圖
AT指令功能AT握手ATD撥號(hào)AT+CSQ查詢網(wǎng)絡(luò)信號(hào)質(zhì)量AT+CREG查詢網(wǎng)絡(luò)注冊(cè)情況AT+CGATT查詢模塊是否附著GPRS網(wǎng)絡(luò)AT+CSMS選擇消息服務(wù),可選GSM-MO、SMS-MT、SMS-CBAT+CSCA短信服務(wù)中心地址AT+CMGF優(yōu)先信息格式AT+CMGR讀短信。信息從+CPMS命令設(shè)定的存儲(chǔ)器讀取AT+CMGS發(fā)送信息AT+CMGD刪除短信息AT+CSTT設(shè)置APNAT+CIICR激活移動(dòng)場(chǎng)景AT+CIFSR獲得本地IP地址AT+CIPSTART="TCP","ip",端口建立TCP/IP連接AT+CIPSEND向服務(wù)器發(fā)送數(shù)據(jù)AT+CIPSHUT關(guān)閉TCP連接
Raspberry Pi是一款基于ARM的微型電腦主板,以SD/MicroSD卡為內(nèi)存硬盤,卡片主板周圍有1/2/4個(gè)USB接口和一個(gè)10/100以太網(wǎng)接口(A型沒有網(wǎng)口),可連接鍵盤、鼠標(biāo)和網(wǎng)線,同時(shí)擁有視頻模擬信號(hào)的電視輸出接口和HDMI高清視頻輸出接口。以上部件全部整合在一張僅比信用卡稍大的主板上,具備所有PC的基本功能,只需接通電視機(jī)和鍵盤,就能執(zhí)行如電子表格、文字處理、玩游戲、播放高清視頻等諸多功能[17]。樹莓派配套使用軟件:Putty:通過IP登入樹莓派;Xrdp:遠(yuǎn)程連接登入樹莓派;Minicom:訪問串口和USB口,實(shí)現(xiàn)數(shù)據(jù)傳輸。
硬件模塊獲取相關(guān)數(shù)據(jù),通過GPRS通信和公網(wǎng)IP傳到服務(wù)器,服務(wù)器上實(shí)時(shí)將數(shù)據(jù)存入數(shù)據(jù)庫。網(wǎng)頁上利用AJAX技術(shù),通過JavaScript請(qǐng)求PHP服務(wù)端訪問數(shù)據(jù)庫從而讀取數(shù)據(jù),部分功能需要請(qǐng)求Web服務(wù)獲取相應(yīng)返回參數(shù),JavaScript[18-19]處理數(shù)據(jù)最后通過HTML顯示,數(shù)據(jù)傳輸流程如圖4所示。
圖4 數(shù)據(jù)傳輸流程
硬件設(shè)備獲取物體數(shù)據(jù)包括經(jīng)緯度、海拔、當(dāng)前接收信號(hào)衛(wèi)星個(gè)數(shù)、信號(hào)質(zhì)量、系統(tǒng)誤差。一個(gè)用戶可以擁有多個(gè)硬件設(shè)備,且每個(gè)設(shè)備擁有唯一id,用戶設(shè)置用戶名和密碼登入平臺(tái),數(shù)據(jù)庫建模ER圖如圖5所示。
圖5 數(shù)據(jù)庫建模ER圖
系統(tǒng)以高德地圖API為基礎(chǔ)進(jìn)行二次開發(fā)[20],功能模塊上主要分為信息查詢、監(jiān)控管理、本地?cái)?shù)據(jù)可視化。具體系統(tǒng)功能分析與測(cè)試如下:
4.3.1 位置查詢
使用方式:用戶通過id選擇設(shè)備(組)后,地圖上會(huì)展示該設(shè)備(組)的位置信息,同時(shí)展示設(shè)備的經(jīng)緯度,海拔,當(dāng)前接收信號(hào)衛(wèi)星個(gè)數(shù),信號(hào)質(zhì)量和定位誤差信息。
應(yīng)用場(chǎng)景:適用于一切需要獲得定位信息的場(chǎng)景,比如:物流類場(chǎng)景,了解設(shè)備所在位置;共享單車類場(chǎng)景,展示單車分布,方便調(diào)度;尋找類場(chǎng)景,查找設(shè)備、車輛、老人、兒童等所在位置。
4.3.2 軌跡查詢
使用方式:用戶通過id選擇設(shè)備(組)并指定時(shí)間(沒有指定時(shí)間時(shí),默認(rèn)展示最近4小時(shí)的軌跡),地圖會(huì)展示該設(shè)備的運(yùn)動(dòng)軌跡。同時(shí)通過巡航欄還原運(yùn)動(dòng)過程,可獲得運(yùn)動(dòng)距離,時(shí)間等信息。
應(yīng)用場(chǎng)景:適用于需要得到物體歷史移動(dòng)信息的場(chǎng)景,比如網(wǎng)約車、出租車的行程軌跡;馬拉松等比賽選手的移動(dòng)軌跡。
4.3.3 地理圍欄
使用方式:點(diǎn)擊設(shè)置電子圍欄后,用戶可在右側(cè)地圖上標(biāo)記至少三個(gè)點(diǎn),組成多邊形圍欄,確認(rèn)后地圖上顯示圍欄形狀,用戶同時(shí)可以右擊顯示功能框進(jìn)一步編輯圍欄。點(diǎn)擊查看圍欄按鈕時(shí),地圖上展示之前設(shè)置的地理圍欄和相關(guān)設(shè)備與地理圍欄的位置關(guān)系。如果有短信提醒等功能需求也可以滿足,當(dāng)與圍欄綁定的設(shè)備發(fā)生預(yù)設(shè)的行為比如進(jìn)入、離開、逗留等時(shí)發(fā)出提醒。
應(yīng)用場(chǎng)景:主要適用于監(jiān)管類場(chǎng)景,比如:共享單車類場(chǎng)景,停車區(qū)域限制;監(jiān)護(hù)管理場(chǎng)景,老人,兒童離開指定區(qū)域時(shí)發(fā)出提醒。
4.3.4 路線規(guī)劃
使用方式:指定起點(diǎn)終點(diǎn)后系統(tǒng)自動(dòng)規(guī)劃最佳行駛路線,包括駕車、騎行和步行的路線規(guī)劃。
應(yīng)用場(chǎng)景:調(diào)度類場(chǎng)景,為遠(yuǎn)程調(diào)度自動(dòng)規(guī)劃路線。
4.3.5 天氣查詢
使用方式:因?yàn)樾l(wèi)星定位必須在室外,所以必須要考慮到天氣問題,此功能可以展示指定地點(diǎn)當(dāng)前與最近4天的天氣情況。
應(yīng)用場(chǎng)景:快捷地了解目標(biāo)地址的天氣情況。
4.3.6 上傳本地?cái)?shù)據(jù)
使用方式:上傳指定格式的本地?cái)?shù)據(jù),可以在地圖上展示對(duì)應(yīng)的軌跡、分布或熱力圖像。
應(yīng)用場(chǎng)景:用戶擁有相關(guān)數(shù)據(jù),應(yīng)用于數(shù)據(jù)可視化和大數(shù)據(jù)分析。
文中提出的定位服務(wù)平臺(tái)的設(shè)計(jì)方案,符合市場(chǎng)需求,具有一定創(chuàng)新性,安全性高,推廣了中國(guó)的專有技術(shù),通用性強(qiáng),能夠滿足不同用戶的不同需求,在保證基本定位功能的基礎(chǔ)上提供了信息查詢、軌跡查詢、地理圍欄等功能模塊,實(shí)用且易操作。平臺(tái)未來可以在已有基礎(chǔ)上結(jié)合大數(shù)據(jù)分析、深度學(xué)習(xí)、計(jì)算機(jī)視覺等前沿技術(shù)增加時(shí)間序列預(yù)測(cè),駕駛行為分析等更加智能化的功能,在很多細(xì)節(jié)上還需要不斷完善。硬件上需要進(jìn)一步集成,縮小體積方便使用,硬件功能上也可以進(jìn)一步增加,比如北斗的短報(bào)文功能、圖片信息的展示等。