2024基于MQTT的配電物聯網通信協議_第1頁
2024基于MQTT的配電物聯網通信協議_第2頁
2024基于MQTT的配電物聯網通信協議_第3頁
2024基于MQTT的配電物聯網通信協議_第4頁
2024基于MQTT的配電物聯網通信協議_第5頁
已閱讀5頁,還剩33頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

II目??次1范圍 12規范性引用文件 13術語和定義 14符號、代號和縮略語 25一般原則 26消息結構 127應用傳輸過程參考 23附錄A(規范性附錄)QoS對應表 34附錄B(規范性附錄)命令對應表 35附錄C(規范性附錄)錯誤碼對應表 36基于MQTT的配電物聯網通信協議范圍本協議規定了配電物聯網平臺和邊設備之間采用的面向對象具有互操作性的數據傳輸協議,包括通信體系架構、應用數據結構以及應用傳輸過程。同時對數據傳輸的幀格式、數據編碼及傳輸規則作出了相應規定。本部分適用于點對點、多點共線及一點對多點的通信方式,適用于云主站對邊設備執行消息訂閱/發布方式的通信。規范性引用文件下列文件對于本文件的應用是必不可少的。凡是注日期的引用文件,僅注日期的版本適用于本文件。凡是不注日期的引用文件,其最新版本(包括所有的修改單)適用于本文件。GB/T16262.1-2006信息技術抽象語法記法(ASN.1)第1部分基本記法規范GB/T17966-2000微處理器系統的二進制浮點運算DL/T645-2007多功能電能表通信協議DL/T860變電站通信網絡和系統DL/T634.5101遠動設備及系統第5-101部分DL/T634.5104遠動設備及系統第5-104部分Q/GDW1376電力用戶用電信息采集系統通信協議Q/GDW1939電力無線傳感網絡信息安全技術規范[ISO/IECPRF20922]消息隊列遙測傳輸協議(MQTT,v3.1.1)[rfc7252]受限應用協議(CoAP)術語和定義下列術語和定義適用于本文件。MQTT發布者Publisher發布者是從客戶端向服務端主動發送消息,或從服務端向客戶端主動發送消息的一方。MQTT訂閱者Subscriber訂閱者是訂閱以請求接收相關的應用消息,取消訂閱以移除接收應用消息的一方。MQTT代理MQTT-Broker MQTT代理是接收來自客戶端的網絡連接,接收客戶端發布的應用消息,處理客戶端的訂閱請求。主題名Topic標注應用程序消息的標簽。消息體PayloadMQTT數據包中的具體內容。符號、代號和縮略語下列符號、代號和縮略語適用于本文件。MQTT:消息隊列遙測傳輸協議(MessageQueueingTelemetryTransportProtocol)CoAP:受限應用協議(ConstrainedApplicationProtocol)DDS:面向實時系統的數據分布服務(DataDistributionServiceforReal-TimeSystems)HTTP:超文本傳輸協議(HyperTextTransferProtocol)一般原則體系架構本標準定義了配電物聯網通信協議中對MQTT協議的使用。從端設備可以直接經MQTT與云主站通信,也可經本地組網到邊設備后再經MQTT與云主站通信,體系架構如圖5-1所示。圖5-1配電物聯網通信網絡拓撲結構示意圖規約結構本標準明確了配電物聯網通訊協議中MQTT協議在ISO七層體系中所屬位置以及協議棧數據結構如表5-1所示與圖5-2所示。本標準采用的TCP/IP傳輸集與定義在其他相關標準中的相同,沒有變更。表5-1MQTT規約結構應用功能用戶進程MQTT應用層(第7層) TCP/IP協議傳輸層(第4層)網絡層(第3層) 802.3、4G/5G、NB-IoT等協議鏈路層(第2層)物理層(第1層)注:第5,第6層未用圖5-2MQTT協議棧數據結構交互機制MQTT協議采用發布/訂閱機制來完成消息交互,該機制能夠提供一對多消息分發,其交互機制如圖5-3所示,在信息交互過程中,MQTT協議將參與方劃分為三種身份,分別是:發布者、代理和訂閱者。其中,消息的發布者和訂閱者都是客戶端,消息的代理是服務器端。圖5-3邊設備發布訂閱流程圖MQTT客戶端MQTT客戶端定義為使用MQTT協議的設備或應用程序,它具備以下功能:a)發布其他客戶端可能會訂閱的信息b)訂閱其它客戶端發布的消息c)退訂或刪除應用程序的消息d)斷開與服務器端的連接MQTT服務器端MQTT服務器端定義為位于客戶端之間,處理客戶端請求,并轉發客戶端消息的設備或應用程序,它具備以下功能:a)接受來自客戶端的網絡連接b)接受客戶端發布的應用信息c)處理來自客戶端的訂閱和退訂請求d)向訂閱的客戶端轉發應用程序消息數據包結構在MQTT協議中,一個MQTT數據包由:固定報文頭、可變報文頭、消息體三部分構成。MQTT數據包結構如表5-2所示:表5-2MQTT數據包結構示意圖固定報文頭可變報文頭消息體a)固定報文頭:存在于所有MQTT數據包中,表示數據包類型及數據包的分組類標識。b)可變報文頭:存在于部分MQTT數據包中,數據包類型決定可變報文頭是否存在及其具體內容。c)消息體:存在于部分MQTT數據包中,表示客戶端收到的具體內容。d)MQTT傳輸的消息體可分為兩部分,分別為:主題和消息體。e)主題:即消息的類型,訂閱者訂閱后,就會收到該主題的消息體;f)消息體:即消息的內容,是指訂閱者具體要使用的數據。固定報文頭固定報文頭存在于所有MQTT數據包中,其結構如表5-3所示:表5-3MQTT數據包結構Bit地址76543210Byte1MQTT數據包類型標識位Byte2-5剩余長度a)MQTT數據包類型該位域是一個4bit無符號值,其類型,取值,描述如表5-4所示:表5-4MQTT數據包類型定義名稱取值流方向描述Reserved0不可用保留CONNECT1客戶端到服務器端客戶端請求連接到服務器端CONNACK2服務器端到客戶端連接確認PUBLISH3雙向發布消息PUBACK4雙向發布確認PUBREC5雙向發布收到(保證第1部分到達)PUBREL6雙向發布釋放(保證第2部分到達)PUBCOMP7雙向發布完成(保證第3部分到達)SUBSCRIBE8客戶端到服務器端客戶端請求訂閱SUBACK9服務器端到客戶端訂閱確認UNSUBSCRIBE10客戶端到服務器端請求取消訂閱UNSUBACK11服務器端到客戶端取消訂閱確認PINGREQ12客戶端到服務器端PING請求PINGRESP13服務器端到客戶端PING應答DISCONNECT14客戶端到服務器端中斷連接Reserved15不可用保留b)標識位標識位必須按照下表所示的值進行設置。如果收到無效的標志時,接收端必須關閉網絡連接。表5-5MQTT數據包標識位定義數據包標識位Bit3Bit2Bit1Bit0CONNECT保留位0000CONNACK保留位0000PUBLISHMQTT3.1.1中使用DUP1QoS2QoS2RETAIN3PUBACK保留位0000PUBREC保留位0000PUBREL保留位0010PUBCOMP保留位0000SUBSCRIBE保留位0010SUBACK保留位0000UNSUBSCRIBE保留位0010UNSUBACK保留位0000PINGREQ保留位0000PINGRESP保留位0000DISCONNECT保留位0000DUP1:發布消息的副本,用來在保證消息的可靠傳輸。若設置為1,則在下面的變長中增加MessageId,并且需要回復確認,以保證消息傳輸完成。QoS2:發布消息的服務質量。RETAIN3:發布保留標識,表示服務器要保留這次推送的信息。c)剩余長度剩余長度用于指示可變報文頭和消息體的總大小,該位域字節的前7位用于指示長度,當最高位為1時,說明還有后續字節用于指示長度,最多支持4個字節(最大長度為256MB)。由于國網的安全組網中的安全接入網關有64KB最大報文長度的限制,和實際業務考慮,所以約定MQTT報文的最大長度為:60KB;可變報文頭部分MQTT數據包中包含一個可變報文頭,它位于固定報文頭與消息體之間,內容形式由固定報文頭中的數據包類型字段決定,它們之間的對應關系如表5-6所示:表5-6數據包類型與可變報文內容形式對應關系表數據包類型可變報文頭類型CONNECT類型1CONNACK類型2PUBLISH類型3PUBACK類型4PUBREC類型4PUBREL類型4PUBCOMP類型4SUBSCRIBE類型4SUBACK類型4UNSUBSCRIBE類型4UNSUBACK類型4PINGREQ無PINGRESP無DISCONNECT無a)類型1類型1的可變報文頭格式如表5-7所示:表5-7可變報文頭位域定義(類型1)位域信息76543210協議名稱byte1LengthMSB(0)00000000byte2LengthLSB(4)00000100byte3‘M’01001101byte4‘Q’01010001byte5‘T’01010100byte6‘T’01010100協議層級byte7層級(4)00000100連接標識byte8連接標識位UserNameFlagPasswordFlagWillRetainWillQoSWillFlagCleanSessionReserved心跳時長byte9心跳時長MSBXXXXXXXbyte10心跳時長LSBXXXXXXXb)類型2類型2的可變報文頭格式如表5-8所示:表5-8可變報文頭位域定義(類型2)位域描述76543210連接確認標識ReservedSP1byte10000000X連接返回碼byte2XXXXXXXXc)類型3類型3的可變報文頭格式如表5-9所示:表5-9可變報文頭位域定義(類型3)位域描述76543210主題名稱byte1長度MSBXXXXXXXXbyte2長度LSBXXXXXXXXbyte3-n主題名稱XXXXXXXX數據包標識符byten+1數據包標識符MSBXXXXXXXXbyten+2數據包標識符LSBXXXXXXXXd)類型4類型4的可變報文頭格式如表5-10所示:表5-10可變報文頭位域定義(類型4)位域描述76543210數據包標識符byte1數據包標識符MSBXXXXXXXXbyte2數據包標識符LSBXXXXXXXX消息體MQTT數據包是否含有消息體是由固定報文頭中的數據包類型決定的,其對應關系如表5-11所示:表5-11數據包類型與消息體的關系數據包類型消息體CONNECT有消息體CONNACK無PUBLISH可選PUBACK無PUBREC無PUBREL無PUBCOMP無SUBSCRIBE有消息體SUBACK有消息體UNSUBSCRIBE有消息體UNSUBACK無PINGREQ無PINGRESP無DISCONNECT無a)Connect消息體Connect報文的消息體格式如表5-12所示:表5-12Connect報文消息體格式字節數位域名稱說明3-25客戶標識使用UTF-8數據流格式3-32767遺愿主題(WillTopic)當connect報文設置了遺愿標識時,則有該內容,使用UTF-8數據流格式3-32767遺愿消息(WillMessage)當connect報文設置了遺愿標識時,則有該內容,使用UTF-8數據流格式3-32767用戶名當connect報文設置了用戶名標識時,則有該內容,使用UTF-8數據流格式3-32767密碼當connect報文設置了密碼標識時,則有該內容,使用UTF-8數據流格式其中,UTF-8數據流格式如表5-13所示;表5-13UTF-8數據流格式Bit76543210byte1字符長度MSBbyte2字符長度LSBbyte3-nUTF-8字符數據.b)PUBLISH消息體PUBLISH的消息體中包含了所屬應用的信息,該部分的數據格式由所屬的應用來定義,消息體的數據長度可以由固定報文頭中的剩余長度來推算,消息體的長度也可以為0(即不含消息體)。c)SUBSCRIBE消息體SUBSCRIBE的消息體格式如表5-14所示:表5-14SUBSCRIBE的消息體格式位域描述76543210主題名稱byte1長度MSBbyte2長度LSBbytes3..N主題名稱要求的服務質量保留QoSbyteN+1000000XXd)SUBACK消息體SUBACK消息體的格式如表5-15所示:表5-15SUBACK消息體的格式Bit76543210返回碼byte1X00000XXe)返回碼的定義如下;0x00–成功,最大QoS為00x01–成功,最大QoS為10x02–成功,最大QoS為20x80–失敗f)UNSUBSCRIBE消息體UNSUBSCRIBE消息體的格式如表5-16所示:表5-16UNSUBSCRIBE消息體的格式位域描述76543210主題名稱(UTF-8數據流格式)byte1長度MSBbyte2長度LSBbytes3..N主題名稱安全MQTT協議安全是基于TLS(TransportLayerSecurity)的安全傳輸層協議,用于保障平臺和邊設備之間保密性和數據完整性。信息模型子集配電物聯網信息模型架構,抽象分類為basic(基本信息,包括制造廠商、設備型號等),config(參數配置,包括通信參數、保護參數等),topology(拓撲,包括電網一次拓撲信息等),capability(按設備能力抽象分類,包括analog模擬量,discrete狀態量,accumulator累積量,command命令等),如圖5-4所示。圖5-4信息模型框架配電物聯網交互模型,以云主站應用服務需求、邊/端層設備需求、信息交互需求為基礎,實現配電物聯網各層級的信息交換標準化,配電電網聯網信息交換框架如圖5-5所示,本標準主要涉及到邊云交互模型。圖5-5信息交互模型云主站信息模型:主要由一二次設備模型、配置信息模型、電網拓撲模型、量測模型組成。云主站信息模型分成面向云服務和信息交換的IEC61968/IEC61970信息模型轉換模型,和面向設備和企業數字化的統一設備數據資產模型層,從而實現邊云信息和上層業務應用的轉換。邊節點信息模型:包含由設備配置信息模型、量測模型,信息模型組成,一次設備電網拓撲模型、一二次設備映射模型,設備管理模型。同時邊節點會管理“邊云”、“端邊”交互模型。端節點信息模型:主要由量測模型和配置信息模型組成,由于端側設備資源受限,端節點設備只需按模型規范要求,對數據進行組織,構建數據結構體?!斑呍啤苯换ツP停骸斑呍啤遍g采用標準的設備管理,參數配置,設備命令,設備數據上報接口,使用MQTT物聯網協議承載信息?!斑呍啤苯换r,將邊云交互模型采用JSON格式封裝至MQTT協議的Payload部分,發送給云端主站?!岸诉叀苯换ツP停褐饕闪繙y模型組成,由于資源和通信帶寬等因素限制,“端邊”交互模型需要簡介高效的編碼方式,如TLV、BSON、ASN1方式描述數據及功能,并根據業務需求對數據進行實時性、可靠性等進行等級劃分,構建消息結構體,通過CoAP協議等方式,發送至邊側。協議主題(Topic)表5-17協議主題列表TopicPublisher(發布者)Subscriber(訂閱者)用途/v1/devices/{gatewayId}/topo/add邊設備物聯網平臺邊設備添加子設備/v1/devices/{gatewayId}/topo/addResponse物聯網平臺邊設備物聯網平臺返回的添加子設備的響應/v1/devices/{gatewayId}/topo/delete邊設備物聯網平臺邊設備刪除子設備/v1/devices/{gatewayId}/topo/deleteResponse物聯網平臺邊設備物聯網平臺返回的刪除子設備的響應/v1/devices/{gatewayId}/topo/update邊設備物聯網平臺邊設備更新子設備狀態/v1/devices/{gatewayId}/topo/updateResponse物聯網平臺邊設備物聯網平臺返回的更新子設備狀態的響應/v1/devices/{gatewayId}/datas邊設備物聯網平臺邊設備上報數據/v1/devices/{gatewayId}/command物聯網平臺邊設備物聯網平臺給設備或邊設備下發命令/v1/devices/{gatewayId}/commandResponse邊設備物聯網平臺邊設備返回給物聯網平臺的命令響應備注:v1表示主題的開頭,無特定意義;devices表示設備;{gatewayId}表示邊設備ID;topo表示指邊設備和端設備相關性;add表示添加;addResponse表示添加響應;delete表示刪除;deleteResponse表示刪除響應;update表示更新;updateResponse表示更新響應;datas表示數據上報;command表示命令下發;commandResponse表示命令下發的響應??煽總鬏敊C制MQTT協議特點和QoS機制MQTT協議使用發布/訂閱消息模式,提供了一對多的消息分發和應用之間的解耦。MQTT提供三種等級的QoS服務質量:“最多一次”,盡操作環境所能提供的最大努力分發消息。消息可能會丟失?!爸辽僖淮巍?,保證消息可以到達,但是可能會重復。“僅一次”,保證消息只到達一次。分類消息的QoS要求QoS與具體的發布和訂閱的Topic相關,Topic的發布和訂閱需要設置QoS等級。消息結構登錄平臺南向支持MQTT協議的connect消息接口,獲取鑒權信息“clientId”、“Username”、“Password”。參數說明如表6-1所示:表6-1獲取鑒權信息參數說明參數必選/可選類型參數描述clientId必選String(256)一機一密的設備clientId由4個部分組成:deviceId/nodeId、鑒權類型、密碼簽名類型、時間戳,通過下劃線“_”分隔.鑒權類型:長度1字節,當前支持2個類型:“0”,表示使用一機一密設備的deviceId接入;“2”,表示使用一機一密設備的nodeId接入。密碼簽名類型:長度1字節,當前支持2種類型:“0”代表HMACSHA256不校驗時間戳?!?”代表HMACSHA256校驗時間戳。時間戳:為設備連接平臺時的UTC時間,格式為YYYYMMDDHH,如UTC時間2018/7/2417:56:20則應表示為2018072417。Username必選String(256)一機一密的設備“Username”,使用deviceId接入時填寫為設備注冊成功后返回的“deviceId”值;使用nodeId接入時填寫為設備注冊成功時的“nodeId”值。Password必選String(256)Password的值為使用“HMACSHA256”算法以時間戳為秘鑰,對secret進行加密后的值。secret為注冊設備時平臺返回的secret;或者是設備自身的secret。添加子設備添加子設備參數說明如表6-2所示:主題Topic:/v1/devices/{gatewayId}/topo/add表6-2添加子設備參數說明字段名必選/可選類型參數描述mid必選Int(32)命令IddeviceInfos必選List<DeviceInfos>子設備信息列表,列表大小1~100DeviceInfos結構體說明如表6-3所示:表6-3DeviceInfos結構體參數說明字段名必選/可選類型參數描述nodeId必選String(256)設備自身的唯一標識name必選String(256)設備名稱description可選String(256)設備描述manufacturerId必選String(256)廠商IDmodel必選String(256)設備型號添加子設備響應參數說明如表6-4所示:主題Topic:/v1/devices/{gatewayId}/topo/addResponse表6-4添加子設備響應參數說明字段名必選/可選類型參數描述mid必選Int(32)命令IdstatusCode必選Int(32)請求處理的結果碼?!?”表示成功。非“0”表示失敗。詳見附錄。statusDesc可選String(256)響應狀態描述。data必選List<AddDeviceRsp>添加子設備的結果信息。AddDeviceRsp結構體說明如表6-5所示:表6-5AddDeviceRsp結構體說明字段名必選/可選類型參數描述statusCode必選Int(32)請求處理的結果碼。“0”表示成功。非“0”表示失敗。詳見附錄。statusDesc可選String(256)響應狀態描述。deviceInfo可選DeviceInfo設備信息DeviceInfo結構體說明如表6-6所示:表6-6DeviceInfo結構體說明字段名必選/可選類型參數描述nodeId必選String(256)設備自身的唯一標識deviceId必選String(256)平臺生成的設備唯一標識name必選String(256)設備名稱description可選String(256)設備描述manufacturerId必選String(256)廠商IDmodel必選String(256)設備型號刪除子設備刪除子設備參數說明如表6-7所示:主題Topic:/v1/devices/{gatewayId}/topo/delete表6-7刪除子設備參數說明字段名必選/可選類型參數描述mid必選Int(32)命令IddeviceIds必選List<String(256)>設備ID列表,列表大小1~100刪除子設備響應參數說明如表6-8所示:表6-8刪除子設備響應參數說明字段名必選/可選類型參數描述mid必選Int(32)命令IdstatusCode必選Int(32)請求處理的結果碼。“0”表示成功。非“0”表示失敗。詳見附錄。statusDesc可選String(256)響應狀態描述。data可選List<DelDeviceRsp>設備刪除的結果信息。DelDeviceRsp結構體說明如表6-9所示:表6-9DelDeviceRsp結構體說明字段名必選/可選類型參數描述statusCode必選Int(32)請求處理的結果碼。“0”表示成功。非“0”表示失敗。詳見附錄。statusDesc可選String(256)結果描述deviceId必選設備ID平臺生成的設備唯一標識控制命令控制服務控制服務參數說明如表6-10所示:主題Topic:/v1/devices/{gatewayId}/command表6-10控制服務參數說明字段名必選/可選類型參數描述deviceId必選String(256)平臺生成的設備唯一標識msgType必選String(256)固定值"cloudReq",表示平臺下發的請求。serviceId必選String(256)服務的id。示例:commandcmd必選String(256)服務的命令名,示例:controlserviceparas必選ObjectNode命令的參數,示例:{"paras":{"controlMode":"","commandType":"","value":"","timestamp":""}}mid必選Int(32)命令id主題Topic:/v1/devices/{gatewayId}/commandResponse控制服務響應參數說明如表6-11所示:表6-11控制服務響應參數說明字段名必選/可選類型參數描述msgType必選String(256)固定值"deviceRsp",表示設備的應答消息mid必選Int(32)命令iderrcode必選Int(32)請求處理的結果碼。0表示成功,1表示失敗body可選ObjectNode命令的應答,示例:{"response":{"controlMode":"0","commandType":"0","value":"12","timestamp":"14:00"}}對時服務對時服務參數說明如表6-12所示:主題Topic:/v1/devices/{gatewayId}/command表6-12控制服務響應參數說明字段名必選/可選類型參數描述deviceId必選String(256)平臺生成的設備唯一標識msgType必選String(256)固定值"cloudReq",表示平臺下發的請求。serviceId必選String(256)服務的id。示例:commandcmd必選String(256)服務的命令名,示例:timeCheckparas必選ObjectNode命令的參數,示例:timeCheck{"paras":{"timeCheck":"11:40"}}mid必選Int(32)命令id對時服務響應參數說明如表6-13所示:主題Topic:/v1/devices/{gatewayId}/commandResponse表6-13對時服務響應參數說明字段名必選/可選類型參數描述msgType必選String(256)固定值"deviceRsp",表示設備的應答消息mid必選Int(32)命令iderrcode必選Int(32)請求處理的結果碼。0表示成功,1表示失敗復位復位參數說明如表6-14所示:主題Topic:/v1/devices/{gatewayId}/command表6-14復位參數說明字段名必選/可選類型參數描述deviceId必選String(256)平臺生成的設備唯一標識msgType必選String(256)固定值"cloudReq",表示平臺下發的請求。serviceId必選String(256)服務的id。示例:commandcmd必選String(256)服務的命令名,示例:LEDRs_Operparas必選ObjectNode命令的參數,示例:{"paras":{"LEDRs_Oper":""}}mid必選Int(32)命令id復位響應參數說明如表6-15所示:主題Topic:/v1/devices/{gatewayId}/commandResponse表6-15復位響應參數說明字段名必選/可選類型參數描述msgType必選String(256)固定值"deviceRsp",表示設備的應答消息mid必選Int(32)命令iderrcode必選Int(32)請求處理的結果碼。0表示成功,1表示失敗文件傳輸(URL鏈接傳輸)文件鏈接下發參數說明如表6-16:主題Topic:/v1/devices/{gatewayId}/command表6-16文件鏈接下發參數說明字段名必選/可選類型參數描述deviceId必選String(256)平臺生成的設備唯一標識msgType必選String(256)固定值"cloudReq",表示平臺下發的請求。serviceId必選String(256)服務的id。示例:commandcmd必選String(256)服務的命令名,示例:fileTransferparas必選ObjectNode命令的參數,示例:{"paras":{"fileTransfer":""……}}mid必選Int(32)命令id文件鏈接下發響應參數說明如表6-17所示:主題Topic:/v1/devices/{gatewayId}/commandResponse表6-17文件鏈接下發響應參數說明字段名必選/可選類型參數描述msgType必選String(256)固定值"deviceRsp",表示設備的應答消息mid必選Int(32)命令iderrcode必選Int(32)請求處理的結果碼。0表示成功,1表示失敗body可選ObjectNode{"body":{"fileTransfer":URL,……}}文件鏈接上報參數說明如表6-18所示:主題Topic:/v1/devices/{gatewayId}/datas表6-18文件鏈接上報參數說明字段名必選/可選類型參數描述devices必選DeviceS[]設備數據設備數據如表6-19所示:表6-19DeviceS結構體說明參數說明字段名必選/可選類型參數描述deviceId必選String(256)平臺生成的設備唯一標識serviceId必選String(256)服務ID,示例:fileTransferdata必選ObjectNode服務數據,示例:{"data":{"fileTransfer":URL,……}}eventTime必選String(256)時間格式:yyyyMMdd’T’HHmmss’Z’如:20151212T121212Z配置命令參數查詢參數查詢參數說明如表6-20所示:主題Topic:/v1/devices/{gatewayId}/command表6-20參數查詢參數說明字段名必選/可選類型參數描述deviceId必選String(256)平臺生成的設備唯一標識msgType必選String(256)固定值"cloudReq",表示平臺下發的請求。serviceId必選String(256)服務的id。例如:parametercmd必選String(256)服務的命令名,示例:parameter_Getparas必選ObjectNode命令的參數,示例:{"paras":{"Load":"","ImbA_strVal":"",……}}mid必選Int(32)命令id參數查詢響應參數說明如表6-21所示:主題Topic:/v1/devices/{gatewayId}/commandResponse表6-21參數查詢響應參數說明字段名必選/可選類型參數描述msgType必選String(256)固定值"deviceRsp",表示設備的應答消息mid必選Int(32)命令iderrcode必選Int(32)請求處理的結果碼。0表示成功,1表示失敗body可選ObjectNode命令的應答,示例:{"body":{"Load":"150","ImbA_strVal":"20",……}}參數預置參數預置參數說明如表6-22所示:主題Topic:/v1/devices/{gatewayId}/command表6-22參數預置參數說明字段名必選/可選類型參數描述deviceId必選String(256)平臺生成的設備唯一標識msgType必選String(256)固定值"cloudReq",表示平臺下發的請求。serviceId必選String(256)服務的id。示例:parametercmd必選String(256)服務的命令名,示例:parameter_Setparas必選ObjectNode命令的參數,示例:{"paras":{"Load":"","ImbA_strVal":"",……}}mid必選Int(32)命令id參數預置響應參數說明如表6-23所示:主題Topic:/v1/devices/{gatewayId}/commandResponse表6-23參數預置響應參數說明字段名必選/可選類型參數描述msgType必選String(256)固定值"deviceRsp",表示設備的應答消息mid必選Int(32)命令iderrcode必選Int(32)請求處理的結果碼。0表示成功,1表示失敗body可選ObjectNode命令的應答,示例:{"body":{"Load":"120","ImbA_strVal":"30",……}}參數激活參數激活參數說明如表6-24所示:主題Topic:/v1/devices/{gatewayId}/command如表6-24參數激活參數說明字段名必選/可選類型參數描述deviceId必選String(256)平臺生成的設備唯一標識msgType必選String(256)固定值"cloudReq",表示平臺下發的請求。serviceId必選String(256)服務的id。示例:parametercmd必選String(256)服務的命令名,示例:parameter_Activateparas必選ObjectNode命令的參數,示例:{"paras":{"Load":"6","ImbA_strVal":"9",……}}mid必選Int(32)命令id參數激活參數說明響應參數說明如表6-25所示:主題Topic:/v1/devices/{gatewayId}/commandResponse表6-25參數激活響應參數說明字段名必選/可選類型參數描述msgType必選String(256)固定值"deviceRsp",表示設備的應答消息mid必選Int(32)命令iderrcode必選Int(32)請求處理的結果碼。0表示成功,1表示失敗body可選ObjectNode命令的應答,示例:{"body":{"Load":"6","ImbA_strVal":"9",……}}主動上送報文主動上送報文參數說明如表6-26所示:主題Topic:/v1/devices/{gatewayId}/datas表6-26主動上送報文應參數說明字段名必選/可選類型參數描述devices必選DeviceS[]設備數據設備數據如表6-27所示:表6-27DeviceS結構體說明字段名必選/可選類型參數描述deviceId必選String(256)平臺生成的設備唯一標識serviceId必選String(256)服務IDdata必選ObjectNode服務數據例如:{"data":{"PhV_phsA":"3","PhV_phsB":"5",……}}eventTime必選String(256)時間格式:yyyyMMdd’T’HHmmss’Z’如:20151212T121212Z應用傳輸過程參考注冊由云主站應用發起,通過調用設備注冊接口完成設備在平臺側的注冊。設備注冊圖7-1設備登錄MQTT消息流程圖邊設備通過掃碼等方式與主站應用之間進行設備檔案建立;主站應用下發邊設備的檔案信息給物聯網平臺;邊設備通過MQTT協議的CONNECT消息攜帶用戶名和密碼信息給物聯網平臺;物聯網平臺通過MQTT協議的CONNACK消息,給邊設備登錄通過信息;設備下線圖7-2設備注銷MQTT消息流程圖邊設備通過DISCONNECT消息向物聯網平臺發起下線,即完成設備離線。物聯網平臺告知云主站對應邊設備注冊下線。心跳?;顖D7-3設備鏈路保持流程圖邊設備發送PINGREQ消息到物聯網平臺物聯網平臺發送PINGRESP消息到邊設備初始化訂閱過程圖7-4初始化訂閱流程圖邊設備初始化時通過SUBSCRIBE消息分別向物聯網平臺訂閱數據采集類、文件傳輸類、控制類、時鐘同步、復位、參數查詢、參數配置、參數激活等消息集。目前訂閱命令消息全集,后續根據邊設備的實際需求訂閱消息子集。物聯網平臺收到訂閱后向邊設備分別回復SUBACK消息。數據采集過程數據采集圖7-5MQTT數據采集消息流程圖當主站進行數據采集時,通過HTTP數據采集消息交互,把采集命令發送給物聯網平臺;物聯網平臺把數據采集命令通過PUBLISH消息推送給訂閱的邊設備;邊設備通過PUBACK消息反饋給物聯網平臺收到數據采集命令;邊設備根據數據采集命令要求采集相對應的數據,形成具有某一數據主題的消息,通過PUBLISH消息發布到物聯網平臺;物聯網平臺反饋PUBACK消息給邊設備。時間讀取圖7-6MQTT文件讀取消息流程圖當主站進行時間讀取時,通過HTTP數據消息交互,把時間讀取命令發送給物聯網平臺;物聯網平臺把時間讀取命令通過PUBLISH消息推送給訂閱的邊設備;邊設備通過PUBACK消息反饋給物聯網平臺收到時間讀取命令;邊設備通過PUBLISH消息把時間信息發布到物聯網平臺;物聯網平臺反饋PUBACK消息給邊設備。文件傳輸主站召測文件圖7-7MQTT文件讀取消息流程圖當主站進行讀文件時,通過HTTP進行讀文件消息交互,把讀文件鏈接請求命令發送給物聯網平臺;物聯網平臺把文件鏈接請求命令通過PUBLISH消息推送給訂閱的邊設備;邊設備通過PUBACK消息反饋給物聯網平臺收到讀文件鏈接命令;邊設備把文件鏈接請求通過PUBLISH

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論