• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于MQTT協(xié)議的數(shù)據(jù)斷點(diǎn)續(xù)傳方案研究

      2020-11-06 02:47:46姚麗麗
      物聯(lián)網(wǎng)技術(shù) 2020年10期
      關(guān)鍵詞:通信協(xié)議網(wǎng)關(guān)物聯(lián)網(wǎng)

      姚麗麗

      摘 要:伴隨著云計(jì)算技術(shù)、移動(dòng)端技術(shù)的快速發(fā)展,物聯(lián)網(wǎng)平臺(tái)在云服務(wù)器上的部署已經(jīng)成為一種趨勢(shì)。MQTT作為一種基于訂閱/發(fā)布模型的輕量級(jí)即時(shí)通信協(xié)議,在物聯(lián)網(wǎng)云平臺(tái)中得到了廣泛應(yīng)用。然而傳統(tǒng)的MQTT設(shè)備、網(wǎng)絡(luò)等發(fā)生故障時(shí),會(huì)導(dǎo)致故障時(shí)段數(shù)據(jù)缺失,使得業(yè)務(wù)數(shù)據(jù)不完整。為此,文中研究了一種基于MQTT協(xié)議的斷點(diǎn)續(xù)傳設(shè)計(jì)方案解決此類問題。

      關(guān)鍵詞:MQTT;通信協(xié)議;斷點(diǎn)續(xù)傳;Json;網(wǎng)關(guān);物聯(lián)網(wǎng)

      中圖分類號(hào):TP39文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2095-1302(2020)10-00-03

      0 引 言

      伴隨著云計(jì)算技術(shù)的發(fā)展,目前越來越多的云服務(wù)器(Elastic Compute Service,ECS)在市場(chǎng)出現(xiàn),主要代表有阿里云、華為云、天翼云、金山云等。云服務(wù)器(ECS)具有網(wǎng)絡(luò)部署、靈活擴(kuò)展、節(jié)約成本、方便維護(hù)、公網(wǎng)IP自帶等特點(diǎn)。為了解決由于物聯(lián)網(wǎng)節(jié)點(diǎn)分散而導(dǎo)致的網(wǎng)絡(luò)部署困難、移動(dòng)端應(yīng)用必須公網(wǎng)部署、終端需要等問題,越來越多的物聯(lián)網(wǎng)平臺(tái)也部署到了云服務(wù)器上。

      消息隊(duì)列遙測(cè)傳輸協(xié)議(Message Queuing Telemetry Transport,MQTT)是一種基于訂閱/發(fā)布模型的輕量級(jí)即時(shí)通信協(xié)議,符合物聯(lián)網(wǎng)的通信要求,目前,其已在物聯(lián)網(wǎng)云平臺(tái)中得到了廣泛應(yīng)用[1]。耿錫濤對(duì)MQTT協(xié)議在電力設(shè)備在線監(jiān)測(cè)系統(tǒng)進(jìn)行了應(yīng)用研究[2],給出了基于MQTT協(xié)議實(shí)現(xiàn)溫度在線實(shí)時(shí)采集的設(shè)計(jì)方案。劉佳利用MQTT協(xié)議對(duì)城市水務(wù)物聯(lián)網(wǎng)監(jiān)控系統(tǒng)進(jìn)行了設(shè)計(jì)[3]。MQTT本身的設(shè)計(jì)理念為即時(shí)通信,目前的研究與應(yīng)用也都集中在即時(shí)通信上。若傳輸層網(wǎng)關(guān)、代理服務(wù)器、平臺(tái)端服務(wù)器以及中間傳輸網(wǎng)絡(luò)任何一方在某個(gè)時(shí)段出現(xiàn)故障,采用常規(guī)的MQTT進(jìn)行即時(shí)通信將導(dǎo)致故障時(shí)段數(shù)據(jù)缺失,使得業(yè)務(wù)數(shù)據(jù)不完整。為了解決此類問題,本文給出了一種基于MQTT的數(shù)據(jù)斷點(diǎn)續(xù)傳設(shè)計(jì)方案。

      1 MQTT協(xié)議在物聯(lián)網(wǎng)中的應(yīng)用介紹

      MQTT協(xié)議是一種基于訂閱/發(fā)布數(shù)據(jù)傳輸模型的通信協(xié)議,MQTT服務(wù)代理作為服務(wù)端,物聯(lián)網(wǎng)平臺(tái)端和下方網(wǎng)關(guān)端都屬于客戶端[4]。在正常設(shè)備和網(wǎng)絡(luò)都無故障的情況下,MQTT可以實(shí)現(xiàn)即時(shí)通信,當(dāng)發(fā)布端發(fā)送消息到達(dá)服務(wù)端后,訂閱端可立即接收已訂閱主題的消息。

      基于MQTT協(xié)議的物聯(lián)網(wǎng)系統(tǒng)架構(gòu)如圖1所示。網(wǎng)關(guān)和傳感器之間一般利用RS 485線連接,采用如Modbus,DL645等串口協(xié)議通信[5],也可以采用LoRa等無線連接;網(wǎng)關(guān)與平臺(tái)端可采用有線、GPRS、無線等方式進(jìn)行網(wǎng)絡(luò)連接,采用MQTT協(xié)議通信。

      MQTT通過主題對(duì)消息進(jìn)行分類,為了避免消息干擾,物聯(lián)網(wǎng)系統(tǒng)針對(duì)每一網(wǎng)關(guān)設(shè)置兩個(gè)主題,其中一個(gè)主題作為網(wǎng)關(guān)端,用于發(fā)送數(shù)據(jù),平臺(tái)端接收數(shù)據(jù);另一個(gè)作為平臺(tái)端,用于發(fā)送數(shù)據(jù),網(wǎng)關(guān)端接收數(shù)據(jù)。若一個(gè)物聯(lián)網(wǎng)系統(tǒng)中有n個(gè)網(wǎng)關(guān),則主題數(shù)目需要設(shè)置2n個(gè)。對(duì)于每一個(gè)網(wǎng)關(guān)來說,需要訂閱一個(gè)主題,發(fā)布一個(gè)主題;而平臺(tái)端需要訂閱n個(gè)網(wǎng)關(guān)端發(fā)布的主題和發(fā)布n個(gè)針對(duì)不同網(wǎng)關(guān)的主題。

      MQTT提供了三種服務(wù)質(zhì)量(Quality of Service,QoS)機(jī)制[6]。其中,QoS0為只發(fā)送一次;QoS1為至少發(fā)送一次;QoS2為剛好發(fā)送一次。這三種服務(wù)質(zhì)量的控制都是針對(duì)發(fā)布端和中間代理服務(wù)之間的通信質(zhì)量,對(duì)于代理服務(wù)和訂閱者之間的通信則不做考慮。

      2 即時(shí)MQTT報(bào)文規(guī)約設(shè)計(jì)

      2.1 報(bào)文格式

      Json是一種簡(jiǎn)單的數(shù)據(jù)交換格式,它具有層次結(jié)構(gòu)簡(jiǎn)單、良好的自我描述、生成解析方便、讀寫速度快等特點(diǎn)。故本文采用Json格式確定物聯(lián)網(wǎng)平臺(tái)的報(bào)文規(guī)約。

      報(bào)文規(guī)約中的具體標(biāo)識(shí)定義:CMD:報(bào)文類型;PN:網(wǎng)關(guān)編碼;State:狀態(tài);Direction:傳輸方向;Value:終端采集設(shè)備數(shù)據(jù);DataType:數(shù)據(jù)類型。

      2.2 報(bào)文類型

      借助電力系統(tǒng)的數(shù)據(jù)分類,物聯(lián)網(wǎng)傳輸?shù)臄?shù)據(jù)種類分為遙測(cè)、遙信、遙脈和遙設(shè)四大類。

      遙測(cè):指?jìng)鬏數(shù)淖兞恐?,如電壓、電流、瞬時(shí)流量等,一般來說,該類數(shù)據(jù)時(shí)刻都在發(fā)生變化,且具有限值的告警存在。在數(shù)據(jù)上送過程中,該類數(shù)據(jù)除了進(jìn)行全上送外,可以給定幅度進(jìn)行變化上送。

      遙信:傳輸?shù)臓顟B(tài)信息用0和1表示,如合閘狀態(tài)、機(jī)器運(yùn)行狀態(tài)等。一般來說,該類數(shù)據(jù)只要狀態(tài)發(fā)生變化,則需要立即上送。

      遙脈:指?jìng)鬏數(shù)睦塾?jì)量,如電度、累計(jì)流量等,該類數(shù)據(jù)與遙測(cè)數(shù)據(jù)的最主要區(qū)別是該類數(shù)據(jù)是累計(jì)上升的數(shù)值,無限值。

      遙設(shè):平臺(tái)端下方給終端設(shè)備的設(shè)置命令可以是0和1的狀態(tài)控制,也可以是數(shù)值型設(shè)置,如空調(diào)溫度設(shè)置等。

      根據(jù)以上數(shù)據(jù)種類的應(yīng)用傳輸功能,CMD報(bào)文類型可根據(jù)傳輸?shù)臄?shù)據(jù)類型等的不同給定相應(yīng)設(shè)置:00,遙設(shè);01,全遙測(cè);02,變化遙測(cè);03,全遙信;04,變化遙信;05,全遙脈。

      2.3 規(guī)約傳輸內(nèi)容

      不考慮斷點(diǎn)續(xù)傳,在即時(shí)通信的情況下,物聯(lián)網(wǎng)系統(tǒng)的平臺(tái)端和網(wǎng)關(guān)端分別傳輸?shù)膬?nèi)容見表1所列,主要包括即時(shí)發(fā)送的消息和定時(shí)發(fā)送的消息。全遙測(cè)、全遙信和全遙脈數(shù)據(jù)設(shè)置為網(wǎng)關(guān)端定時(shí)上送,即每固定周期間隔之后上送一次。對(duì)于變化遙測(cè),為了避免上送頻繁,可設(shè)置變化幅度,如變化幅度大于1%,則上送;對(duì)于遙信而言,只要發(fā)生變位,都需要立即上送;遙設(shè)消息由平臺(tái)端在業(yè)務(wù)應(yīng)用的觸發(fā)下即時(shí)發(fā)送,網(wǎng)關(guān)端接收到消息后立即下發(fā)給控制裝置,控制裝置執(zhí)行后,網(wǎng)關(guān)可將執(zhí)行結(jié)果以遙信突變的方式或者遙測(cè)突變的方式上送到平臺(tái)端。

      3 斷點(diǎn)續(xù)傳方案設(shè)計(jì)

      MQTT的數(shù)據(jù)傳輸涉及多個(gè)環(huán)節(jié),如果傳輸層網(wǎng)關(guān)、代理服務(wù)器、平臺(tái)端服務(wù)器以及中間傳輸網(wǎng)絡(luò)任何一方在某個(gè)時(shí)段出現(xiàn)故障,采用常規(guī)的MQTT進(jìn)行即時(shí)通信將導(dǎo)致故障時(shí)段數(shù)據(jù)缺失。為了保證業(yè)務(wù)應(yīng)用的完整性,當(dāng)故障修復(fù)后,故障期間的數(shù)據(jù)能夠繼續(xù)上送,本文設(shè)計(jì)了一種基于MQTT的斷點(diǎn)續(xù)傳設(shè)計(jì)方案。

      斷點(diǎn)續(xù)傳方案設(shè)計(jì)的思想是基于發(fā)送數(shù)據(jù)端在確定接收端可以接收到數(shù)據(jù)的情況下發(fā)送數(shù)據(jù);否則,不發(fā)送數(shù)據(jù),將數(shù)據(jù)暫存。

      由于物聯(lián)網(wǎng)系統(tǒng)平臺(tái)端僅發(fā)送一些控制消息,因此在發(fā)送消息前可以利用MQTT的遺囑方式獲得網(wǎng)關(guān)的在線狀態(tài)而反饋。數(shù)據(jù)發(fā)送主要集中在網(wǎng)關(guān)端,故斷點(diǎn)續(xù)傳針對(duì)網(wǎng)關(guān)端設(shè)計(jì),平臺(tái)端獲取斷點(diǎn)續(xù)傳數(shù)據(jù)后進(jìn)行解析處理即可。

      本文給出的斷點(diǎn)續(xù)傳設(shè)計(jì)方案如下:

      (1)規(guī)定平臺(tái)端每一分鐘發(fā)送一次心跳(此處心跳也可用MQTT遺囑實(shí)現(xiàn)),當(dāng)網(wǎng)關(guān)端接收到平臺(tái)端發(fā)送來的心跳時(shí),表示當(dāng)前平臺(tái)端、代理服務(wù)端、網(wǎng)關(guān)端及網(wǎng)絡(luò)運(yùn)行良好,設(shè)置平臺(tái)在線狀態(tài)為1,設(shè)置上次通信時(shí)間等于當(dāng)前時(shí)間;

      (2)對(duì)于平臺(tái)端的離線機(jī)制,每隔一分鐘進(jìn)行一次狀態(tài)檢測(cè),若當(dāng)前時(shí)間與上次通信時(shí)間之差大于規(guī)定有效通斷時(shí)間,則設(shè)置平臺(tái)在線狀態(tài)為0;

      (3)在得知平臺(tái)端在線離線狀態(tài)的情況下,網(wǎng)關(guān)端的斷點(diǎn)續(xù)傳流程設(shè)計(jì)如圖2所示。

      4 應(yīng)用實(shí)例

      本文提出的斷點(diǎn)續(xù)傳方案已成功應(yīng)用到本公司的DMFS-9000蜜云綜合能源管控平臺(tái)中,目前已部署到多個(gè)現(xiàn)場(chǎng)。經(jīng)測(cè)試,系統(tǒng)運(yùn)行良好,滿足斷線故障后的數(shù)據(jù)續(xù)傳業(yè)務(wù)需求。

      DMFS-9000蜜云綜合能源管控平臺(tái)網(wǎng)關(guān)端采用DMF-330X系列數(shù)據(jù)集中器作為網(wǎng)關(guān)進(jìn)行轉(zhuǎn)發(fā),MQTT代理服務(wù)器安裝在集中業(yè)務(wù)云平臺(tái)。

      圖3所示為網(wǎng)關(guān)端MQTT的服務(wù)配置程序,采集規(guī)約支持標(biāo)準(zhǔn)的Modbus,DL645等,可進(jìn)行即時(shí)開發(fā)插件擴(kuò)展,對(duì)規(guī)約采用本文介紹的含有數(shù)據(jù)斷點(diǎn)續(xù)傳的MQTT協(xié)議。

      圖4所示為帶有斷點(diǎn)續(xù)傳功能的MQTT協(xié)議的平臺(tái)端的接收解析應(yīng)用程序。圖5所示為業(yè)務(wù)應(yīng)用平臺(tái)的展示界面。

      為了進(jìn)一步說明本文提出的帶有斷點(diǎn)續(xù)傳功能的MQTT協(xié)議對(duì)于業(yè)務(wù)應(yīng)用的必要性,同時(shí)搭建之前無斷點(diǎn)續(xù)傳功能的平臺(tái)和帶有斷點(diǎn)續(xù)傳功能的平臺(tái),網(wǎng)關(guān)和代理服務(wù)只有一個(gè),代理服務(wù)與兩個(gè)平臺(tái)不在同一臺(tái)服務(wù)器上,兩個(gè)平臺(tái)同時(shí)訂閱網(wǎng)關(guān)的發(fā)布數(shù)據(jù)主題。在6:20時(shí)分別將兩個(gè)平臺(tái)和代理服務(wù)之間的網(wǎng)絡(luò)斷開,8:50時(shí)恢復(fù),其結(jié)果如圖6和圖7所示。無斷點(diǎn)續(xù)傳功能的平臺(tái)在6:20和8:50之間數(shù)據(jù)缺失,而含有斷點(diǎn)續(xù)傳功能的平臺(tái)在6:20和8:50之間的數(shù)據(jù)是完整的。

      5 結(jié) 語

      MQTT協(xié)議由于其開源、可靠、輕巧、簡(jiǎn)單、低功耗的特點(diǎn),已然成為物聯(lián)網(wǎng)協(xié)議發(fā)展的趨勢(shì)。由于MQTT本身設(shè)計(jì)思想是給定一種即時(shí)通信,在很多物聯(lián)網(wǎng)業(yè)務(wù)應(yīng)用現(xiàn)場(chǎng),如果出現(xiàn)網(wǎng)絡(luò)或平臺(tái)端故障問題,業(yè)務(wù)應(yīng)用數(shù)據(jù)將缺失。為了解決發(fā)布端無故障,而代理服務(wù)器、平臺(tái)端或者中間任意傳輸網(wǎng)絡(luò)故障的情況下,當(dāng)故障修復(fù)后,故障期間的數(shù)據(jù)能夠繼續(xù)上送平臺(tái),保證業(yè)務(wù)數(shù)據(jù)的完整性,本文提出的基于MQTT協(xié)議的數(shù)據(jù)斷點(diǎn)續(xù)傳設(shè)計(jì)方案已經(jīng)成功應(yīng)用到實(shí)際項(xiàng)目中,得到了客戶的廣泛認(rèn)可。

      參考文獻(xiàn)

      [1]徐侃,丁強(qiáng).一種基于MQTT協(xié)議的物聯(lián)網(wǎng)通信網(wǎng)關(guān)[J].儀表技術(shù),2019,48(1):1-4.

      [2]耿錫濤.基于MQTT協(xié)議的電力設(shè)備溫度在線監(jiān)測(cè)系統(tǒng)應(yīng)用研究[J].工業(yè)控制計(jì)算機(jī),2019,32(10):73-74.

      [3]劉佳.基于MQTT協(xié)議的城市水務(wù)物聯(lián)網(wǎng)監(jiān)控系統(tǒng)設(shè)計(jì)[J].物聯(lián)網(wǎng)技術(shù),2019,9(6):14-19.

      [4]蔣樹慶,房瀅.一種基于MQTT協(xié)議的數(shù)據(jù)采集控制系統(tǒng)[J].信息通信,2019,32(8):80-82.

      [5]吳俊輝,吳桂初,陳沖,等.基于MQTT協(xié)議的物聯(lián)網(wǎng)網(wǎng)關(guān)設(shè)計(jì)[J].溫州大學(xué)學(xué)報(bào)(自然科學(xué)版),2019,40(4):54-61.

      [6]賈凡,熊剛,朱鳳華,等.基于MQTT的工業(yè)物聯(lián)網(wǎng)通信系統(tǒng)研究與實(shí)現(xiàn)[J].智能科學(xué)與技術(shù)學(xué)報(bào),2019,1(3):249-259.

      [7]劉復(fù)源.基于MQTT協(xié)議的消息推送平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[D].廣州:暨南大學(xué),2015.

      [8]陳濤,李娟.基于MQTT協(xié)議的推送技術(shù)研究[J].軟件導(dǎo)刊,2016,15(3):18-21.

      [9]龔永罡,付俊英,汪昕宇,等.MQTT協(xié)議在物聯(lián)網(wǎng)中的應(yīng)用研究[J].電腦與電信,2017,23(11):89-91.

      [10]陶強(qiáng),屈波,熊前興.基于WinSock構(gòu)建對(duì)等模式下斷點(diǎn)續(xù)傳系統(tǒng)的探討[J].交通與計(jì)算機(jī),2005(1):79-83.

      猜你喜歡
      通信協(xié)議網(wǎng)關(guān)物聯(lián)網(wǎng)
      基于改進(jìn)RPS技術(shù)的IPSEC VPN網(wǎng)關(guān)設(shè)計(jì)
      基于Z-Stack通信協(xié)議棧的紅外地溫采集電路設(shè)計(jì)
      基于物聯(lián)網(wǎng)的煤礦智能倉(cāng)儲(chǔ)與物流運(yùn)輸管理系統(tǒng)設(shè)計(jì)與應(yīng)用
      基于高職院校物聯(lián)網(wǎng)技術(shù)應(yīng)用人才培養(yǎng)的思考分析
      中國(guó)或成“物聯(lián)網(wǎng)”領(lǐng)軍者
      基于DMX512通信協(xié)議的多路轉(zhuǎn)發(fā)器設(shè)計(jì)與研究
      基于NS-3的PLC多頻通信協(xié)議仿真平臺(tái)設(shè)計(jì)與實(shí)現(xiàn)
      LTE Small Cell網(wǎng)關(guān)及虛擬網(wǎng)關(guān)技術(shù)研究
      應(yīng)對(duì)氣候變化需要打通“網(wǎng)關(guān)”
      太陽能(2015年7期)2015-04-12 06:49:50
      一種實(shí)時(shí)高效的伺服控制網(wǎng)關(guān)設(shè)計(jì)
      扬中市| 昆山市| 民县| 香格里拉县| 安阳市| 桂东县| 浠水县| 家居| 宝清县| 广东省| 克什克腾旗| 宣汉县| 达州市| 策勒县| 庄浪县| 印江| 苏州市| 久治县| 体育| 天水市| 大石桥市| 弋阳县| 贺州市| 宾川县| 肥城市| 鲁山县| 陆河县| 达拉特旗| 车险| 璧山县| 双柏县| 敦化市| 呈贡县| 陆河县| 迭部县| 沭阳县| 林周县| 高阳县| 泽库县| 南召县| 集安市|