久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

IPv6可視化測量系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

 高校信息化 2022-06-17 發(fā)布于北京

前言

IPv6單棧模式是指僅使用IPv6不支持IPv4,。向 IPv6單棧過渡是必然趨勢,。而IPv6單棧演進(jìn)的可視化測量研究目前較少。設(shè)計(jì)IPv6網(wǎng)絡(luò)可視化測量系統(tǒng),,既要考慮IPv6協(xié)議本身的標(biāo)識,、封裝屬性,又要考慮可視化測量系統(tǒng)自身在IPv6單棧環(huán)境下的運(yùn)行,。

隨著IPv6規(guī)模部署的推進(jìn),,各類應(yīng)用系統(tǒng)及設(shè)備對IPv6網(wǎng)絡(luò)和協(xié)議支持需求的劇增成為IPv6單棧演進(jìn)需要考慮的關(guān)鍵問題之一。支持IPv6的高精度衛(wèi)星定位網(wǎng)絡(luò)測量系統(tǒng),,作為信息物理系統(tǒng)[1](Cyber-Physical Systems,,CPS)的一部分,,對各行各業(yè)開展更大范圍、更深層次的IPv6協(xié)同創(chuàng)新,,推動IPv6單棧大規(guī)模部署具有非常重要的意義,。

在此背景下,作為共性關(guān)鍵技術(shù)的IPv6單棧的演進(jìn)和北斗系統(tǒng)[2]的融合應(yīng)用變得尤其重要,。因此,,IPv6可視化測量系統(tǒng)需要兼顧支持IPv6單棧和高精度衛(wèi)星定位這兩方面的設(shè)計(jì)問題,系統(tǒng)自身也能在IPv6單棧環(huán)境下穩(wěn)定運(yùn)行,。

北斗三號導(dǎo)航定位系統(tǒng)作為全球?qū)Ш叫l(wèi)星系統(tǒng)[3](GlobalNavigation Satellite System,,GNSS),發(fā)射衛(wèi)星數(shù)量最多,,覆蓋120個國家和地區(qū),,軌道徑向精度6.6厘米[4]。北斗三號在高精度算法和高精度板卡制造方面,,運(yùn)用RTK(Real-time Kinematic,,實(shí)時動態(tài)差分 ) 技術(shù)能將精度提升至厘米級。

消息隊(duì)列遙測傳輸[5](Message Queuing Telemetry Transport,,MQTT)是ISO標(biāo)準(zhǔn)下基于發(fā)布/訂閱范式的消息協(xié)議,。它工作在TCP/IP協(xié)議族上,是為硬件性能低下的遠(yuǎn)程設(shè)備以及網(wǎng)絡(luò)狀況糟糕的情況而設(shè)計(jì)的發(fā)布 / 訂閱型消息協(xié)議,。

MQTT 協(xié)議在受限的環(huán)境中,,如衛(wèi)星鏈路通信傳感器、機(jī)器與機(jī)器通信和物聯(lián)網(wǎng)中已廣泛使用,。通過MQTT協(xié)議,,目前已經(jīng)擴(kuò)展出了數(shù)十個MQTT服務(wù)器端程序,可以通過PHP,、Java,、Python、C,、C#等編程語言來向MQTT發(fā)送相關(guān)消息,。

本文針對移動終端運(yùn)行關(guān)鍵數(shù)據(jù),與全球衛(wèi)星定位系統(tǒng)的經(jīng)緯度坐標(biāo)綁定,,基于MQTT協(xié)議進(jìn)行IPv6網(wǎng)絡(luò)發(fā)布和訂閱,,為指揮控制中心全面了解和監(jiān)測現(xiàn)場移動終端和被測對象的運(yùn)行狀態(tài),提供可視化測量系統(tǒng)并進(jìn)行驗(yàn)證和展示,。

01

系統(tǒng)設(shè)計(jì)

定位原理與技術(shù)平臺

全球衛(wèi)星定位系統(tǒng)的基本原理是:測量出已知位置的衛(wèi)星到用戶接收機(jī)之間的距離,,然后綜合多顆衛(wèi)星的數(shù)據(jù),就可知道接收機(jī)的具體位置,。

要達(dá)到這一目的,,衛(wèi)星的位置可以根據(jù)星載時鐘所記錄的時間在衛(wèi)星星歷中查出,。而用戶到衛(wèi)星的距離則通過記錄衛(wèi)星信號傳播到用戶所經(jīng)歷的時間,再將其乘以光速得到,。由于大氣層電離層的干擾,,這一距離并不是用戶與衛(wèi)星之間的真實(shí)距離,而是偽距(PR),。

當(dāng)GPS衛(wèi)星正常工作時,,會不斷地用1和0二進(jìn)制碼元組成的偽隨機(jī)碼(簡稱“偽碼”)發(fā)射導(dǎo)航電文。然而,,由于用戶接收機(jī)使用的時鐘與衛(wèi)星星載時鐘不可能總是同步,,所以除了用戶的三維坐標(biāo) x、y,、z 外,,還要引進(jìn)一個Δt,即衛(wèi)星與接收機(jī)之間的時間差作為未知數(shù),,然后用4個方程將這4個未知數(shù)解出來。因此,,如果想知道接收機(jī)所處的位置,,至少要能接收到4顆衛(wèi)星的信號[6]

本文采用C/S結(jié)構(gòu)的python開發(fā)環(huán)境和ARM嵌入式開發(fā)環(huán)境相結(jié)合的方式實(shí)現(xiàn)IPv6可視化測量系統(tǒng),。

衛(wèi)星接收機(jī)通過GNSS室外天線,、基站和USB轉(zhuǎn)RS485 模塊接收RTCM(Radio Technical Commission for Maritime Services,航海無線電技術(shù)委員會差分信號格式)數(shù)據(jù),,RTCM服務(wù)器將衛(wèi)星RTCM信息編碼RTCMessage消息提交給MQTT Server程序,。

移動終端作為MQTT訂閱客戶端,本地鏈路地址訂閱RTCM信息解析衛(wèi)星信息,,結(jié)合GNSS基站作為固定站的位置,,計(jì)算移動終端作為移動站本身的位置。

DHCP服務(wù)器根據(jù)定位精度下發(fā)不同的IPv6地址前綴和后綴,。移動終端把經(jīng)緯度信息編碼為DeviceMessage消息發(fā)給MQTT服務(wù)器,。Web服務(wù)器訂閱DeviceMessage消息解析出經(jīng)緯度信息和技術(shù)參數(shù)。系統(tǒng)組成結(jié)構(gòu)如圖1所示,。

圖1 系統(tǒng)組成結(jié)構(gòu)

接收機(jī)與RTCM服務(wù)器為同一臺服務(wù)器,,移動終端設(shè)備由UM482基站、USB轉(zhuǎn)RS485模塊,、支持本地鏈路地址FE80::/10的通信模塊組成,,移動終端(傳感器 + 嵌入式 OS)和MQTT服務(wù)器之間采用MQTT協(xié)議通信,訂閱RTCMessage信息并發(fā)布DeviceMessage信息,。

IPv6 協(xié)議單棧部署設(shè)計(jì)

IPv6協(xié)議單棧部署設(shè)計(jì)包括IPv6單棧網(wǎng)絡(luò)設(shè)計(jì)和 IPv6單棧站點(diǎn)設(shè)計(jì),。

IPv6單棧網(wǎng)絡(luò)設(shè)計(jì)的重點(diǎn)為基于DHCPv6的地址生成系統(tǒng),,此系統(tǒng)支持基于用戶信息和地理信息生成IPv6地址,系統(tǒng)組成原理如圖2所示,。

圖2 單棧IPv6地址生成系統(tǒng)原理

DHCPv6服務(wù)器接收IPv6地址請求,,并對所述 IPv6地址請求中的用戶信息和地理信息進(jìn)行壓縮處理,確定IPv6地址的后64位(可變),,從而確定IPv6地址,。其中,地理信息包括經(jīng)度信息,、緯度信息以及高度信息,;用戶信息包括賬號信息。

具體而言,,DHCPv6服務(wù)器確定所述地理信息與DHCPv6服務(wù)器的地理信息的差值,,并分別對該差值以及與所述用戶信息相關(guān)的賬號信息進(jìn)行壓縮處理。

由此確定與所述差值相關(guān)的5個字節(jié),,以及與賬號信息相關(guān)的3個字節(jié),。其中,5個字節(jié)包括與經(jīng)度信息相關(guān)的2個字節(jié),,與緯度信息相關(guān)的2個字節(jié)以及與高度信息相關(guān)的1個字節(jié),。

壓縮處理后,確定與該DHCPv6服務(wù)器單元通信的用戶端的IPv6地址的后64位,,并判斷該用戶端的IPv6地址是否與數(shù)據(jù)庫中存儲的已有IPv6地址相同,。

若相同,則DHCPv6服務(wù)器單元隨機(jī)生成一修正IPv6地址,,并將其下發(fā)至該用戶端,;若不同,則保留該用戶端的IPv6地址,,并將其下發(fā)至該用戶端,。

如需要更高精度的地址編碼,可調(diào)整后64位空間,,最長為后96位,,這時經(jīng)度信息可相應(yīng)調(diào)整為3個字節(jié),緯度信息可調(diào)整為3個字節(jié),,高度信息可調(diào)整為2個字節(jié),,用戶信息可調(diào)整為4個字節(jié)。

IPv6地址生成系統(tǒng)還包括中央管理服務(wù)器,,用于存儲多個DHCPv6服務(wù)器的地理信息和分配的對應(yīng)IPv6地址,,從而通過逆向解析逆向追溯,確定用戶端的地理信息和賬號信息。

IPv6單棧站點(diǎn)設(shè)計(jì)的重點(diǎn)在于禁止IPv4協(xié)議的運(yùn)行或在網(wǎng)卡上禁用IPv4地址,,本文基于ubuntu20.04和Apache2.4.48實(shí)現(xiàn),。

設(shè)備消息結(jié)構(gòu)體和流程設(shè)計(jì)

根據(jù)可視化測量系統(tǒng)的設(shè)計(jì)流程,通過MQTT服務(wù)器傳輸的消息結(jié)構(gòu)體主要包括RTCMessage 和DeviceMessage兩種,,其中RTCM主要是增加長度字段轉(zhuǎn)發(fā),。本文設(shè)計(jì)了移動終端設(shè)備到MQTT服務(wù)器的DeviceMessage數(shù)據(jù)結(jié)構(gòu),該結(jié)構(gòu)體為56字節(jié),,如下所示,,保留字段支持不同類型的時延地理敏感性指標(biāo)參數(shù)填充。

RTCMessage消 息 發(fā) 布 訂 閱 程 序 流 程 設(shè) 計(jì) 如 下:

  1. 啟動MQTT服務(wù)器,,服務(wù)器監(jiān)聽IPv6/IPv4地址和1883端口的輸入,;

  2. 衛(wèi)星接收客戶機(jī)讀取串口數(shù)據(jù),發(fā)布RTCMessage消息到MQTT服務(wù)器,;

  3. MQTT服務(wù)器接收到此消息,;

  4. MQTT服務(wù)器處理該消息,把RTCMessage消息發(fā)布給訂閱消息的客戶機(jī),;

  5. 重復(fù)上述過程,,保證RTCMessage消息每秒更新一次。發(fā)布和訂閱的流程如圖3所示,。

圖3 RTCM發(fā)布流程和MQTT訂閱流程

DeviceMessage消息發(fā)布訂閱程序流程設(shè)計(jì)如下:

  1. 啟動MQTT服務(wù)器,,服務(wù)器監(jiān)聽IPv6/IPv4地址和1883端口的輸入;

  2. 移動終端客戶機(jī)讀取串口數(shù)據(jù),,獲得衛(wèi)星數(shù)據(jù),與固定站(衛(wèi)星接收機(jī))發(fā)布的RTCM消息一起計(jì)算精確定位數(shù)據(jù),,組成DeviceMessage消息,,發(fā)送給MQTT服務(wù)器;

  3. MQTT服務(wù)器接收到此消息,;

  4. MQTT服務(wù)器處理這個消息,,把DeviceMessage消 息 發(fā) 布 給 訂 閱 該 消 息 的 客 戶 機(jī);

  5. 重復(fù)上述過程,, 保證DeviceMessage消息每秒更新一次,。

02

應(yīng)用效果

通過對單點(diǎn)定位和多點(diǎn)定位精度測量的對比可以發(fā)現(xiàn),多點(diǎn)定位時經(jīng)緯度位置偏移范圍更小,。接收的衛(wèi)星定位經(jīng)緯度信息可通過對保存的歷史數(shù)據(jù)進(jìn)行偏移分析來獲取,。在多點(diǎn)定位固定基站和移動站環(huán)境搭建完成后,可以部署 MQTT程序傳輸技術(shù)參數(shù)數(shù)據(jù)并進(jìn)行應(yīng)用展示,。MQTT程序需安裝開發(fā)庫以支持RTCMessage消息和DeviceMessage的發(fā)布和訂閱,。

MQTT程序包括RTCM消息與Device消息的發(fā)布和訂閱四個程序,本文主要以RTCM消息發(fā)布和Device消息訂閱為例說明程序的實(shí)現(xiàn)。

發(fā)布RTCM消息的客戶端在Python開發(fā)庫支持下,,通過serial.tools.list_ports.comports()函數(shù)枚舉設(shè)備串口列表,,查看可用的端口,獲得當(dāng)前有效的串口文件句柄,,調(diào)用serial.Serial(serialName1,115200,timeout=60)打開端口,,啟用定時器,在定時器中獲得串口數(shù)據(jù)狀態(tài),。

當(dāng)有數(shù)據(jù)觸發(fā)時,,讀取RTCM消息,增加衛(wèi)星數(shù)據(jù)的長度字段放在消息頭部,,編碼為二進(jìn)制流,,調(diào)用client.publish("RTCMessage",data)函數(shù)發(fā)布RTCM消息。RTCM消息發(fā)布程序MQTT模塊部分連接IPv6服務(wù)器的代碼如下所示,。

運(yùn)行RTCMessage訂閱程序,,通過Tcpdump抓包可以看到協(xié)議運(yùn)行在IPv6地址上。

DeviceMessage消息訂閱程序根據(jù)移動終端發(fā)布的內(nèi)容進(jìn)行訂閱,,消息內(nèi)容包括設(shè)備號,、參數(shù)大小、定位模式,、經(jīng)緯度,、設(shè)備狀態(tài)等信息,其中經(jīng)緯度信息是衛(wèi)星多系統(tǒng)聯(lián)合定位的結(jié)果,,聯(lián)合定位輸出信息包含GNSS接收機(jī)的時間和定位相關(guān)數(shù)據(jù),。語句以GNGGA[7]開頭,表示GNSS定位信息,,只有北斗參與時以BDGGA開頭,,有兩個衛(wèi)星系統(tǒng)及以上的衛(wèi)星參與定位解算都以GNGGA形式輸出。表1為GNGGA數(shù)據(jù)結(jié)構(gòu)表,。

表1 GNGGA數(shù)據(jù)結(jié)構(gòu)

其中,,GPS質(zhì)量指示符qual字段表示定位解算的狀態(tài),主要有:

  1. RTK 固定解(fix,,對應(yīng)4-RTK固定解),,狀態(tài)4擁有固定解意味著解算出了正確的解,擁有1~3cm的測量精度,;

  2. RTK浮點(diǎn)解(float,,對應(yīng)5-RTK浮點(diǎn)解),又稱差分解,,此時算法尚未得到固定解(fix),。由于沒有固定解(fix),,因此提供了一種Float解決方案,它的位置始終比固定(fix)解決方案的精度低,,介于厘米級和米級之間,;

  3. 單點(diǎn)解(single,對應(yīng) 1單點(diǎn)定位),,接收機(jī)未使用任何差分改正信息計(jì)算的3D坐標(biāo),,此時定位較不穩(wěn)定且誤差較大,定位精度為米級,。

GNGGA數(shù)據(jù)結(jié)構(gòu)經(jīng)度(DDDmm.mm)和緯度(DDmm.mm),,其中,D是度,,m是分,,小數(shù)點(diǎn)前有4~5位,與傳統(tǒng)的表示法不同,。移動終端設(shè)備在發(fā)布之前轉(zhuǎn)換成傳統(tǒng)表示法,,按小數(shù)點(diǎn)前兩位截取,把m部分都除以60,,放小數(shù)點(diǎn)后面,。緯度范圍是-90~+90,可能出現(xiàn)D在赤道上緯度接近于0的情況,,仍然按小數(shù)點(diǎn)前兩位,,沒有的位數(shù)補(bǔ)零,經(jīng)緯度方向有正負(fù),,北緯為正,,東經(jīng)為正。

Python編程語言通過格式化字符串(format strings)規(guī)定轉(zhuǎn)化的方法和格式,。根據(jù) Python 類型與格式和大小的對應(yīng)關(guān)系,,上述Device消息56字節(jié)的結(jié)構(gòu)體打包和解包的代碼為:struct.pack('>IfcddBBBHHLLQQ',message.payload)struct.unpack('<ifcddbbbh <="" span="">HLLQQ',message.payload),其中'>’為字節(jié)流大端序,,用于把數(shù)據(jù)發(fā)送到網(wǎng)絡(luò),'<’為字節(jié)流小端序,,用于從網(wǎng)絡(luò)解包字節(jié)流,。

其中連接回調(diào)函數(shù)on_connect在客戶端連接后被調(diào)用,依據(jù)返回值rc判斷客戶端是否連接成功,。同時創(chuàng)建一個MQTT客戶端,,該客戶端將連接到消息回調(diào)函數(shù)on_message,該函數(shù)將在客戶端收到消息后被調(diào)用,,在該函數(shù)中打印出訂閱的topic名稱以及接收到的消息內(nèi)容,。Device消息訂閱程序文件命名為:Mqtt-sub-device-message.py。運(yùn)行程序,整個系統(tǒng)正常工作,,經(jīng)緯度數(shù)據(jù)小數(shù)點(diǎn)后長度不同表示精度不同,,精度不同分配的IPv6地址前綴不同。

從顯示的信息順序可以看出,,定位狀態(tài)首先是0(不可用或無效),,過渡到RTCM消息還沒參與解算是1(單點(diǎn)定位),參數(shù)設(shè)備自身收到偽距差分信息后狀態(tài)為2(偽距差分),,然后根據(jù)RTCM消息和偽距差分消息結(jié)算為5(RTK 浮動解),,一分鐘后得到4(RTK 固定解),并保持穩(wěn)定,。固定解小數(shù)點(diǎn)后5位保持不變,,表示定位精度已達(dá)到厘米級。

參數(shù)的變化過程為:首先是未確定固定解時8NM 上下浮動的誤差值,,然后是7.82NM的設(shè)定目標(biāo)值,,中間校準(zhǔn)過程分別為6.07NM、5.94NM和6.05NM,,最后達(dá)到了7.82NM的設(shè)置目標(biāo)值,,參數(shù)校準(zhǔn)過程完成??深A(yù)先設(shè)置閾值進(jìn)行報(bào)警,。

定位狀態(tài)收斂過程為:首先是狀態(tài)1(單點(diǎn)定位)下的低精度范圍,然后是狀態(tài)5(RTK 浮動解)定位下的重精度范圍,,最后為狀態(tài)4(RTK 固定解)定位下的高精度范圍,。

Web服務(wù)器基于IPv6單棧技術(shù)建設(shè),支持IPv6單 棧訪問,。系統(tǒng)通過MQTT協(xié)議讀取不同精度的數(shù)據(jù)存入Web服務(wù)器,,調(diào)用百度地圖接口顯示經(jīng)緯度坐標(biāo),經(jīng)過坐標(biāo)轉(zhuǎn)換生成html頁面,。通過IPv6地址訪問http://[2402:e740::666]/site_ipv6/line.html站點(diǎn),,顯示圖4所示的效果,發(fā)現(xiàn)在100米長度的線路上,,移動設(shè)備技術(shù)參數(shù)大小與位置變化的過程,。

圖4 IPv6移動終端訂閱技術(shù)參數(shù)信息位置顯示

訪問http://[2402:e740::666]/site_ipv6/bpos.html站點(diǎn),顯示圖5所示的效果,,因百度地圖的精度為米或亞米級別,,基本看不出精度是厘米級的點(diǎn)的區(qū)別。

圖5 Web服務(wù)展示低精度參數(shù)信息位置顯示

通過高精度交互軟件轉(zhuǎn)換為離散軌跡圖,,顯示出圖6的效果,,可以看出精度范圍在6厘米內(nèi),,滿足測量場景中技術(shù)參數(shù)厘米級的要求。

圖6 高精度交互軟件訂閱高精度衛(wèi)星數(shù)據(jù)顯示

本文從IPv6創(chuàng)新應(yīng)用向IPv6單棧演進(jìn)的角度出發(fā),,設(shè)計(jì)并實(shí)現(xiàn)了一種支持IPv6的可視化測量系統(tǒng),。在系統(tǒng)中對經(jīng)緯度信息、高度信息和用戶身份信息如何映射到IPv6后64位(可變)進(jìn)行了詳細(xì)設(shè)計(jì),,提供了IPv6站點(diǎn)內(nèi)的位置查詢相關(guān)服務(wù),。嘗試解決可視化測量系統(tǒng)在推進(jìn)IPv6規(guī)模部署時面臨的擴(kuò)展性、實(shí)時性,、移動性,、管理性四個方面的重大挑戰(zhàn),提供一套綜合解決方案,。同時,,在面向工業(yè)互聯(lián)網(wǎng)環(huán)境下,嘗試從信息物理系統(tǒng)的角度出發(fā),,為基于IPv6網(wǎng)絡(luò)測量物理世界技術(shù)參數(shù)的安全性方面提供了參考,,在IPv6創(chuàng)新應(yīng)用領(lǐng)域中起到一定的應(yīng)用示范作用。

參考文獻(xiàn)(上下滑動查看全部內(nèi)容)

[1] 李洪陽 , 魏慕恒 , 黃潔 , 邱伯華 , 趙曄 , 駱文城 , 何曉 , 何瀟 . 信息物理系統(tǒng)技術(shù)綜述 [J]. 自動化學(xué)報(bào) ,2019,45(01):37-50.

[2] 羅晶心 , 郭承軍 . 北斗衛(wèi)星導(dǎo)航系統(tǒng)現(xiàn)狀及通信中的應(yīng)用 [C]. 中國衛(wèi)星導(dǎo)航系統(tǒng)管理辦公室學(xué)術(shù)交流中心 . 第十一屆中國衛(wèi)星導(dǎo)航年會論文集——S01 衛(wèi)星導(dǎo)航行業(yè)應(yīng)用 . 中國衛(wèi)星導(dǎo)航系統(tǒng)管理辦公室學(xué)術(shù)交流中心 : 中科北斗匯 ( 北京 ) 科技有限公司 ,2020:57-61.

[3] HOFMANN-WELLENHOF B,LICHTENEGGER H,WASLE E. GNSS-Global Navigation Satellite Systems GPS, GLONASS, Galileo, and more[M].Berlin:Springe,2008.

[4] 王西龍 , 許小龍 , 趙齊樂 . 北斗三號系統(tǒng)信號質(zhì)量分析及軌道精度驗(yàn)證 [J/OL]. 武漢大學(xué)學(xué)報(bào) ( 信息科學(xué)版 ):1-12.

[5] Home Assistant Community. MQTT. home-assistant.io. Home Assistant Community.August 7, 2015 [August 4, 2017].

[6] 黃 曉 燕 , 錢 芳 . 基 于 位 置 服 務(wù) LBS 定 位 系 統(tǒng) 的 分 析 [J]. 集 成 電 路 應(yīng)用 ,2017,34(11):83-86.

[7] 龍哲華 , 汪金輝 , 彭曉宏 , 呂貴濤 . 北斗 /GPS 雙模定位系統(tǒng)協(xié)議解析算法研究 [J].現(xiàn)代電子技術(shù) ,2016,39(01):6-8.

作者:黃友?。ㄇ迦A大學(xué)網(wǎng)絡(luò)科學(xué)與網(wǎng)絡(luò)空間研究院,、賽爾網(wǎng)絡(luò)有限公司),李想,、徐繪凱,、劉保君、張甲(清華大學(xué)網(wǎng)絡(luò)科學(xué)與網(wǎng)絡(luò)空間研究院)

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多