0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

物聯(lián)網(wǎng)全棧教程-從云端到設(shè)備(四)

技新電子 ? 2018-05-25 09:22 ? 次閱讀

請(qǐng)下載今天的附件,因?yàn)橛斜砀?,所以比論壇上的?nèi)容更詳細(xì)。

1、MQTT協(xié)議是IOT(Internet of Things)領(lǐng)域的一個(gè)主流協(xié)議

物聯(lián)網(wǎng)的時(shí)代,每一個(gè)傳感器每一個(gè)設(shè)備都想接入互聯(lián)網(wǎng)進(jìn)行數(shù)據(jù)交換。MQTT協(xié)議非常適合這樣的場(chǎng)合。目前國(guó)內(nèi)的主流IOT服務(wù)器供應(yīng)商均提供對(duì)MQTT協(xié)議的解析比如百度云計(jì)算,阿里云計(jì)算等。MQTT協(xié)議的實(shí)現(xiàn)也非常簡(jiǎn)單,對(duì)帶寬的要求不高,對(duì)網(wǎng)絡(luò)鏈接的可靠性要求也不高,而且協(xié)議本身制定了一定的機(jī)制來(lái)處理突發(fā)事件。

MQTT協(xié)議不僅可以在物聯(lián)網(wǎng)領(lǐng)域發(fā)揮重要作用,同時(shí)也可以用于多臺(tái)機(jī)器之間的信息交換比如一個(gè)車間里面所有的傳感器之間數(shù)據(jù)的交換。

MQTT協(xié)議也不僅僅局限于運(yùn)行在互聯(lián)網(wǎng)通信上。它是一個(gè)通信規(guī)則,對(duì)通信方式的實(shí)現(xiàn)不關(guān)心。通常我們提到物聯(lián)網(wǎng)指的是通過(guò) TCP/IP 的方式實(shí)現(xiàn)了通信,也就是利用互聯(lián)網(wǎng)實(shí)現(xiàn),因?yàn)榛ヂ?lián)網(wǎng)可以提供一個(gè)非??煽康碾p向通信。

本學(xué)習(xí)手冊(cè)根據(jù) MQTT V3.1.1 版本編寫(xiě)

官方手冊(cè)

下面章節(jié)大部分內(nèi)容均參考此官方手冊(cè)。

2、MQTT 通信協(xié)議需要有三個(gè)角色參與

這段文字參考百度云計(jì)算的幫助文檔:

MQTT協(xié)議提到的一個(gè)名詞 “主題”,類似于文件夾的名字一樣。比如小王是電腦的主人,他的電腦上面有a,b兩個(gè)文件夾,小劉每次存儲(chǔ)的文件喜歡放到a文件夾,小宋每次存儲(chǔ)的文件喜歡放到b文件夾。那么當(dāng)小林想看小劉的文件時(shí),只需要看a文件夾就可以了。上述的“a”文件夾的名稱,在MQTT協(xié)議里面稱作 主題 。

4.1.jpg

左圖詮釋了MQTT協(xié)議里的三個(gè)角色:發(fā)布者客戶端(負(fù)責(zé)發(fā)送消息),代理服務(wù)器(負(fù)責(zé)接收和分發(fā)消息),訂閱者客戶端(負(fù)責(zé)接收消息)。

在MQTT協(xié)議里,“主題”就是一個(gè)文件夾,發(fā)布的消息可以送到一個(gè)“主題”里面,訂閱者也可以從“主題”里面讀取到消息。

代理服務(wù)器在國(guó)內(nèi)有百度的 IoT Hub ,也有阿里云的IoT Hub,還有很多其他品牌的服務(wù)器。

發(fā)布者客戶端和訂閱者客戶端既可以是同一臺(tái)設(shè)備,也可以是不同的設(shè)備,只要這臺(tái)設(shè)備可以通過(guò)服務(wù)器的認(rèn)證,并且遵循MQTT協(xié)議,就可以發(fā)布或者訂閱消息。本學(xué)習(xí)手冊(cè)的重要內(nèi)容就是兩個(gè)客戶端如何與服務(wù)器“交流”。

2、MQTT 通信協(xié)議和大數(shù)據(jù)

(1) 小劉采集的信號(hào)是溫度信息,他每間隔1分鐘就上傳一次溫度信息到服務(wù)器,同時(shí)他發(fā)送的主題是 a 。

(2) 服務(wù)器接收到小劉的溫度信息后,會(huì)查找當(dāng)前都有哪些訂閱者想看主題是 a 的信息。

(3) 小林訂閱了主題是 a 的內(nèi)容,只要小劉發(fā)送一次信息,小林就可以立馬接收到對(duì)應(yīng)的信息。

(4) 小劉和小林都需要事先通過(guò)賬號(hào)密碼的方式連接到服務(wù)器。小劉就像在野外工作的工作人員辛苦采集信號(hào),而小林就像在辦公室的老板千里之外洞察前線的一手信息。

(5) 如果有1000個(gè)小林這樣的角色不停地給服務(wù)器發(fā)送溫度數(shù)據(jù)。我們都知道服務(wù)器有數(shù)據(jù)保存和數(shù)據(jù)處理的能力,這時(shí)候就可以結(jié)合機(jī)器學(xué)習(xí)的相關(guān)知識(shí)去處理和分析這些數(shù)據(jù),從而為人類的決策提供參考。

3、在MQTT 通信協(xié)議里,字符串需要遵守 UTF-8 編碼規(guī)范

在MQTT通信協(xié)議里,數(shù)據(jù)傳送是以Bit(位)為單位的,和我們常見(jiàn)的TTL串口類似不過(guò)他們本質(zhì)上不是一個(gè)東西。MQTT協(xié)議約定:數(shù)據(jù)傳送時(shí),高字節(jié)在前,同時(shí),每個(gè)字節(jié)里面的最高位先傳輸。

4、MQTT 一幀消息包含的內(nèi)容

MQTT 的一幀典型的消息最多由三部分組成:

固定頭(所有的消息必須包含) + 可變頭(有些沒(méi)有) + 有效內(nèi)容(有些沒(méi)有)

MQTT協(xié)議約定,根據(jù)不同的功能實(shí)現(xiàn),固定頭是必須要的,其他兩部分內(nèi)容可有可無(wú)(比如心跳包的發(fā)送和接收只要固定頭即可,而從機(jī)發(fā)送的鏈接請(qǐng)求則包含了三個(gè)部分)。

5、后面還有內(nèi)容,我做成了PDF了,里面有表格啥的,論壇上編輯不方便,你下載查看吧。里面詳細(xì)講解了組合一幀報(bào)文的過(guò)程。附件中還有一個(gè)是MQTT協(xié)議的中文手冊(cè),更權(quán)威。

原文

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 物聯(lián)網(wǎng)
    +關(guān)注

    關(guān)注

    2909

    文章

    44743

    瀏覽量

    374538
  • 阿里云
    +關(guān)注

    關(guān)注

    3

    文章

    966

    瀏覽量

    43117
  • IOT
    IOT
    +關(guān)注

    關(guān)注

    187

    文章

    4215

    瀏覽量

    197050
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    曙光云開(kāi)啟智能時(shí)代

    近日,“可信 云中生智”曙光云戰(zhàn)略發(fā)布會(huì)召開(kāi)。曙光云首創(chuàng)“城市云”進(jìn)化實(shí)現(xiàn)“智能云”
    的頭像 發(fā)表于 12-19 15:11 ?274次閱讀

    聯(lián)網(wǎng)數(shù)據(jù)采集網(wǎng)關(guān)在聯(lián)網(wǎng)中扮演的角色

    聯(lián)網(wǎng)數(shù)據(jù)采集網(wǎng)關(guān),作為聯(lián)網(wǎng)系統(tǒng)中的關(guān)鍵設(shè)備,扮演著連接物理世界與數(shù)字世界的橋梁角色。它位于
    的頭像 發(fā)表于 11-17 14:44 ?209次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>數(shù)據(jù)采集網(wǎng)關(guān)在<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>中扮演的角色

    聯(lián)網(wǎng)學(xué)習(xí)路線來(lái)啦!

    聯(lián)網(wǎng)學(xué)習(xí)路線來(lái)啦! 聯(lián)網(wǎng)方向作為目前一個(gè)熱門的技術(shù)發(fā)展方向,有大量的人才需求,小白的學(xué)習(xí)入門路線推薦以下步驟。 1.了解
    發(fā)表于 11-11 16:03

    特斯拉FSD,自研智能駕駛的未來(lái)

    技術(shù)已然成為各車企研發(fā)的主要方向之一。在眾多自動(dòng)駕駛技術(shù)的探索者中,特斯拉(Tesla)憑借FSD(Full Self-Driving)系統(tǒng),占據(jù)了行業(yè)的領(lǐng)先地位。FSD系統(tǒng)自發(fā)布以來(lái),經(jīng)歷了外部合作到自研的轉(zhuǎn)型,并在感知
    的頭像 發(fā)表于 10-29 16:27 ?384次閱讀
    特斯拉FSD,<b class='flag-5'>從</b><b class='flag-5'>全</b><b class='flag-5'>棧</b>自研<b class='flag-5'>到</b>智能駕駛的未來(lái)

    聯(lián)網(wǎng)設(shè)備的標(biāo)準(zhǔn)與規(guī)范

    聯(lián)網(wǎng)(IoT)正在改變我們的生活方式,智能家居工業(yè)自動(dòng)化,再到智慧城市,聯(lián)網(wǎng)
    的頭像 發(fā)表于 10-29 11:34 ?702次閱讀

    邊緣設(shè)備云端平臺(tái),合宙DTU&amp;RTU打造無(wú)縫聯(lián)網(wǎng)解決方案

    ? 如今,聯(lián)網(wǎng)(IoT)技術(shù)飛速發(fā)展,萬(wàn)互聯(lián)的時(shí)代已然到來(lái),那么,高效、穩(wěn)定地連接邊緣設(shè)備云端平臺(tái),實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)采集、傳輸與處理,就
    的頭像 發(fā)表于 09-18 14:55 ?386次閱讀
    <b class='flag-5'>從</b>邊緣<b class='flag-5'>設(shè)備</b><b class='flag-5'>到</b><b class='flag-5'>云端</b>平臺(tái),合宙DTU&amp;RTU打造無(wú)縫<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>解決方案

    什么是聯(lián)網(wǎng)技術(shù)?

    什么是聯(lián)網(wǎng)技術(shù)? 聯(lián)網(wǎng)技術(shù)(Internet of Things, IoT)是一種通過(guò)信息傳感設(shè)備,按約定的協(xié)議,將任何物體與網(wǎng)絡(luò)相連
    發(fā)表于 08-19 14:08

    智慧聯(lián)網(wǎng)網(wǎng)關(guān)是什么

    型的設(shè)備和傳感器進(jìn)行通信。 首先,功能層面來(lái)看,智慧聯(lián)網(wǎng)網(wǎng)關(guān)能夠?qū)崿F(xiàn)設(shè)備聯(lián)網(wǎng),使得
    的頭像 發(fā)表于 08-13 13:42 ?1431次閱讀

    Modbus聯(lián)網(wǎng)網(wǎng)關(guān)是什么

    Modbus聯(lián)網(wǎng)網(wǎng)關(guān)是一種專門用于將基于Modbus協(xié)議的設(shè)備連接到聯(lián)網(wǎng)(IoT)的設(shè)備或軟
    的頭像 發(fā)表于 08-10 13:49 ?443次閱讀
    Modbus<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>網(wǎng)關(guān)是什么

    通過(guò)聯(lián)網(wǎng)管理多臺(tái)MQTT設(shè)備-基于志T527開(kāi)發(fā)板

    一、系統(tǒng)概述 基于米爾-志 T527設(shè)計(jì)一個(gè)簡(jiǎn)易的聯(lián)網(wǎng)網(wǎng)關(guān),該網(wǎng)關(guān)能夠管理多臺(tái)MQTT設(shè)備,通過(guò)MQTT協(xié)議對(duì)設(shè)備進(jìn)行讀寫(xiě)操作,同時(shí)提供
    發(fā)表于 06-21 14:20

    【天拓方】聯(lián)網(wǎng)網(wǎng)關(guān)硬件和云端分別實(shí)現(xiàn)了哪些功能?

    聯(lián)網(wǎng)(IoT)的廣闊領(lǐng)域中,聯(lián)網(wǎng)網(wǎng)關(guān)硬件和云端各自扮演著不可或缺的角色。它們通過(guò)一系列功能,共同確保
    的頭像 發(fā)表于 04-19 16:18 ?339次閱讀

    聯(lián)數(shù)據(jù)網(wǎng)關(guān)是什么?

    聯(lián)數(shù)據(jù)網(wǎng)關(guān)就是聯(lián)網(wǎng)智能網(wǎng)關(guān)。 聯(lián)數(shù)據(jù)網(wǎng)關(guān)是
    的頭像 發(fā)表于 03-29 17:10 ?334次閱讀

    現(xiàn)場(chǎng)云端:造紙機(jī)生產(chǎn)數(shù)據(jù)鏈條采集及可視化解決方案

    現(xiàn)場(chǎng)云端:造紙機(jī)生產(chǎn)數(shù)據(jù)鏈條采集及可視化解決方案 造紙機(jī)作為造紙工業(yè)的核心設(shè)備,其運(yùn)行效率和穩(wěn)定性直接關(guān)系到企業(yè)的經(jīng)濟(jì)效益。然而,傳統(tǒng)
    的頭像 發(fā)表于 02-21 15:42 ?422次閱讀
    <b class='flag-5'>從</b>現(xiàn)場(chǎng)<b class='flag-5'>到</b><b class='flag-5'>云端</b>:造紙機(jī)生產(chǎn)數(shù)據(jù)<b class='flag-5'>全</b>鏈條采集及可視化解決方案

    工業(yè)聯(lián)網(wǎng)平臺(tái)實(shí)現(xiàn)智能化云端計(jì)算與策略控制 ?

    隨著科技的飛速發(fā)展,工業(yè)聯(lián)網(wǎng)平臺(tái)以其便捷的系統(tǒng)架構(gòu)和智能的算力資源,能夠賦予工業(yè)設(shè)備不一樣的生命與活力,其中實(shí)現(xiàn)智能化云端計(jì)算與策略控制是重要組成部分。它能夠補(bǔ)足自動(dòng)化控制系統(tǒng)的不足
    的頭像 發(fā)表于 01-11 17:36 ?412次閱讀
    工業(yè)<b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b>平臺(tái)實(shí)現(xiàn)智能化<b class='flag-5'>云端</b>計(jì)算與策略控制  ?

    聯(lián)網(wǎng)可視化運(yùn)維監(jiān)控平臺(tái)

    監(jiān)控企業(yè)的各種應(yīng)用、系統(tǒng)、網(wǎng)絡(luò)和設(shè)備,提供實(shí)時(shí)的性能指標(biāo)、日志和事件數(shù)據(jù),幫助企業(yè)快速發(fā)現(xiàn)和解決問(wèn)題,提高系統(tǒng)的可用性和穩(wěn)定性。 運(yùn)維監(jiān)控平臺(tái)通常包括以下幾個(gè)方面的功能: 1應(yīng)用監(jiān)控: 監(jiān)控企業(yè)的各種應(yīng)用程序,包括Web應(yīng)用
    的頭像 發(fā)表于 01-11 11:46 ?1346次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯(lián)網(wǎng)</b><b class='flag-5'>全</b><b class='flag-5'>棧</b>可視化運(yùn)維監(jiān)控平臺(tái)