消息隊列遙測傳輸(MQTT)是一種ISO標準消息傳遞協議,旨在通過不可靠的網絡連接傳感器。它在TCP/IP互聯網協議之上工作。
兩位工程師Andy Stanford-Clark和Arlen Nipper在1999年創(chuàng)建了協議。他們正在開發(fā)一個系統來監(jiān)控不可靠衛(wèi)星上的遠程石油管道網絡,并且需要低功耗,易于實現且非常可靠的消息傳遞系統。
自開發(fā)以來,MQTT已發(fā)展成為許多物聯網系統中使用的關鍵消息傳遞協議,是家庭自動化,水培或遠程氣象站的理想選擇。
MQTT的主要優(yōu)勢
效率
MQTT消息帶寬小,設計合理在低功率系統上實施。這使其成為任何電池供電傳感器的理想選擇。使用MQTT作為消息傳遞協議可以延長項目的電池壽命。
輕松實現
實現MQTT非常簡單遠程傳感器系統上的消息。由于大部分復雜工作都是在中央服務器上實現的,因此遠程系統可以在其他地方使用其資源。
可靠性
MQTT用于任務關鍵型傳感器系統,其中發(fā)送的任何消息都得到確認和接收至關重要。 MQTT允許您通過聲明其服務質量(QOS)級別來定義消息的重要性。在項目中使用MQTT可以讓您高枕無憂,即可以收到所有重要信息。
數據不可知
此協議允許您以消息,數字,單詞,甚至可擴展標記語言(XML)或JavaScript對象表示法(JSON)發(fā)送任何類型的文本數據。
MQTT如何工作
MQTT遵循發(fā)布/訂閱原則,由兩個元素組成:經紀人和客戶。
MQTT包含兩個元素:經紀人和客戶。
任何MQTT系統的核心都是一個名為broker的應用程序,它可以接收和傳輸MQTT消息。當代理從客戶端收到消息時,它可以將消息發(fā)送到訂閱該消息主題的任何其他客戶端。常用的MQTT代理是Mosquitto,可用于許多平臺,如Windows,Linux或Raspberry Pi。甚至還有一個可供任何人使用的在線經紀人。
MQTT系統的第二個組件是客戶端,它連接到代理并可以發(fā)布或訂閱MQTT消息。對于基于ESP8266的項目,PubSubClient經常被用作MQTT客戶端的基礎。
MQTT消息按主題分類,主題是編碼到每個消息中的字符串??蛻舳擞嗛喼黝},當代理收到消息時,它會將其傳輸給訂閱它的任何客戶端。 MQTT主題具有與文件系統類似的結構,并使用/字符作為分隔符。一些示例主題是:
home/kitchen/light
home/lounge/lamp
home/lounge/light
通配符(#)可用于訂閱級別上的所有消息。例如,訂閱home/lounge/#的客戶將收到家庭/休息室/燈和家庭/休息室/燈光消息。訂閱home/#的客戶將收到以上所有訂閱。
MQTT提供簡易消息系統
MQTT可以為制造商提供強大的功能,易于實現,可靠的消息系統。它適用于需要在設備之間進行通信的任何項目,例如家庭監(jiān)控系統,并且可以在以后階段輕松調整以合并其他傳感器。
有關基于MQTT的系統的示例ESP8266客戶端和運行Mosquitto代理的Raspberry Pi,請查看如何在Raspberry Pi上安裝Mosquitto MQTT Broker。
Oct. 19, 2022 ---- 根據TrendForce集邦咨詢調查顯示,2022年第三季全球電視出貨量達5,139萬臺,季增12.4%,年減2.1%,是自2014年以來同季出貨最低紀錄。由于全球仍持續(xù)壟罩在高通脹...
關鍵字: TrendForce集邦咨詢 OLEDOct. 18, 2022 ---- 根據TrendForce集邦咨詢最新調查表示,疫情后緊張的物料情況已于今年下半年改善,短料的供貨交期顯著恢復。然而在物料供給無虞,需求可被滿足的情況下,2023年的服務器整機出貨量年...
關鍵字: TrendForce集邦咨詢 服務器Oct. 17, 2022 ---- 根據TrendForce集邦咨詢最新報告「2023全球 LED 顯示屏市場展望與價格成本分析」顯示,2021年全球LED顯示屏于虛擬拍攝應用的市場規(guī)模約2.83億美元,年增136%。...
關鍵字: TrendForce集邦咨詢 LED顯示屏