解鎖IIoT潛力,詳解MQTT通信協(xié)議
在工業(yè)4.0、物聯(lián)網(wǎng)(IIoT)、智能工廠和智能設(shè)備等前沿概念的推動(dòng)下,我們正邁向一個(gè)全新的自動(dòng)化未來(lái)。設(shè)備之間將互聯(lián)互通,每個(gè)節(jié)點(diǎn)相互連接,交換數(shù)據(jù)。為構(gòu)建智能網(wǎng)絡(luò),設(shè)備必具備IIoT的關(guān)鍵特性:標(biāo)準(zhǔn)化、可擴(kuò)展性、與IT和OT系統(tǒng)的兼容性,以及互操作性。同時(shí),確保通信的安全性也是至關(guān)重要的。
倍加福支持包括MQTT、OPC UA、AMQP和REST API的四種基于TCP的通信協(xié)議。本期內(nèi)容中,我們將首先探索MQTT通信協(xié)議,了解它是如何為智能網(wǎng)絡(luò)提供強(qiáng)大支持,適用于哪些不同應(yīng)用場(chǎng)景。
什么是MQTT?
它如何工作?
MQTT(消息隊(duì)列遙測(cè)傳輸)是ISO 標(biāo)準(zhǔn)(ISO/IEC PRF 20922)下基于發(fā)布/訂閱范式的消息協(xié)議。MQTT協(xié)議輕量、簡(jiǎn)單、開(kāi)放和易于實(shí)現(xiàn),這些特點(diǎn)使它適用范圍非常廣泛。
自1999年誕生以來(lái),MQTT作為石油管道帶寬和電池能效監(jiān)控問(wèn)題的技術(shù)解決方案。2013年,IBM將其提交給OASIS規(guī)范委員會(huì),隨后在2014年成為正式的OASIS標(biāo)準(zhǔn)。
MQTT的普及得益于其在工業(yè)領(lǐng)域的廣泛應(yīng)用,特別是在對(duì)代碼精簡(jiǎn)、開(kāi)銷減少和網(wǎng)絡(luò)流量受限的環(huán)境中。其基本工作原理如下圖所示:MQTT 客戶端(包括發(fā)布者和訂閱者)連接到 MQTT 代理。一些 MQTT 客戶端通過(guò)訂閱一個(gè)特定主題,例如下圖中的主題為溫度值,MQTT 客戶端(發(fā)布者)向代理發(fā)送數(shù)據(jù),然后代理將此消息發(fā)送到所有訂閱的MQTT 客戶端。這種拓?fù)浣Y(jié)構(gòu)的顯著優(yōu)勢(shì)在于發(fā)布者和訂閱者的解耦。代理只負(fù)責(zé)將數(shù)據(jù)從一端傳輸?shù)搅硪欢?,無(wú)需在它們之間建立大量連接。
MQTT的工作原理——典型的MQTT應(yīng)用
MQTT 主要特性
1:主題
主題是MQTT協(xié)議中的一個(gè)基礎(chǔ)元素,每條消息都包含一個(gè)主題和有效載荷,以及頭部信息。主題是代理用來(lái)過(guò)濾消息和訂閱者訂閱的依據(jù)。
主題可以有多個(gè)層級(jí),如“home/sensor1/identification”包含三個(gè)層級(jí),“home/sensor1/data/temperature”則包含四個(gè)層級(jí)。每個(gè)層級(jí)用斜杠“/”分隔,且主題結(jié)構(gòu)區(qū)分大小寫(xiě)。主題還可以包含一個(gè)或多個(gè)層級(jí)的占位符,例如使用“+”表示單個(gè)層級(jí)的占位符,如“home/+/data/temperature”。此外,使用“#”表示多層級(jí)占位符,如“home/sensor1/#”可以將sensor1發(fā)布的所有數(shù)據(jù)傳輸給訂閱的客戶端。
2:服務(wù)質(zhì)量
MQTT通過(guò)服務(wù)質(zhì)量等級(jí)來(lái)確保消息的可靠傳輸。QoS等級(jí)包括0(至多一次)、1(至少一次)和2(僅一次),其中QoS 2提供高級(jí)別的服務(wù)質(zhì)量,需要更多的通信確認(rèn)和實(shí)施措施。
3:會(huì)話感知
MQTT提供了多種機(jī)制來(lái)確保代理與發(fā)布者/訂閱者之間的連接穩(wěn)定?;镜臋C(jī)制是保持連接消息,客戶端會(huì)定期發(fā)送這類消息以確認(rèn)連接的有效性。此外,客戶端在初始連接時(shí)會(huì)向代理提供“遺囑消息”(Last Will and Testament, LWT),以便在客戶端離線時(shí)通知其他客戶端。
4:持久會(huì)話
當(dāng)代理與訂閱者之間建立了持久會(huì)話,代理會(huì)存儲(chǔ)消息,直到訂閱者準(zhǔn)備好接收。這一特性對(duì)于網(wǎng)絡(luò)環(huán)境不穩(wěn)定的情況尤其有用,確保了消息的可靠傳遞。
MQTT的實(shí)時(shí)性如何?
MQTT以其輕量級(jí)和高效性,在物聯(lián)網(wǎng)通信領(lǐng)域展現(xiàn)出杰出的實(shí)時(shí)性能。在發(fā)布者與代理間無(wú)延遲,且訂閱者與代理保持活躍連接的情況下,MQTT理論上能夠?qū)崿F(xiàn)近乎實(shí)時(shí)和無(wú)延遲的響應(yīng),滿足快速數(shù)據(jù)處理的需求。
MQTT的安全性如何?
在安全性方面,MQTT自連接初始化階段起就提供了用戶名和密碼的身份驗(yàn)證機(jī)制。自MQTT 5起,密碼字段可用于令牌傳輸,同時(shí)引入了如質(zhì)詢響應(yīng)認(rèn)證等額外的安全機(jī)制,增強(qiáng)了通信的安全性。
MQTT適用于
哪些應(yīng)用場(chǎng)景?
MQTT的應(yīng)用場(chǎng)景廣泛,尤其適合于那些需要簡(jiǎn)單、緊湊解決方案的場(chǎng)合。無(wú)論是從多個(gè)傳感器收集數(shù)據(jù),還是向大量同類型傳感器發(fā)送信息,或是在低功耗和很低內(nèi)存需求的環(huán)境下,MQTT都能發(fā)揮出色。它在車聯(lián)網(wǎng)、軍事、工業(yè)設(shè)備網(wǎng)絡(luò)、無(wú)人機(jī)控制等多個(gè)領(lǐng)域都有著廣泛的應(yīng)用,展現(xiàn)了其強(qiáng)大的適應(yīng)性和實(shí)用性。
關(guān)于倍加福
倍加福–未來(lái)自動(dòng)化的驅(qū)動(dòng)者和創(chuàng)新者
倍加福以德國(guó)曼海姆為公司總部,憑借其持續(xù)不斷的對(duì)創(chuàng)新技術(shù)的研發(fā),向全球工廠自動(dòng)化和過(guò)程行業(yè)的客戶提供豐富而多樣的產(chǎn)品,致力于自動(dòng)化行業(yè)的傳統(tǒng)應(yīng)用和面向未來(lái)的應(yīng)用。同時(shí),倍加福不斷推動(dòng)前瞻性技術(shù)的開(kāi)發(fā),為客戶迎接即將來(lái)臨的工業(yè) 4.0 的挑戰(zhàn)鋪平了道路。
自動(dòng)化是我們的世界。
完善的解決方案是我們的目標(biāo)!