91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

MQTT介紹

蘇州格拉尼 ? 來源:jf_84050716 ? 作者:jf_84050716 ? 2025-07-14 09:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、什么是MQTT
物聯網IoT)發展迅猛,傳感器、網關、云平臺之間如何高效通信成了核心問題。MQTT(Message Queuing Telemetry Transport)作為一種輕量級的消息傳輸協議,近年來被廣泛應用于智能家居工業控制、車聯網等場景。
MQTT 是一種基于發布/訂閱(Pub/Sub)模式的輕量級消息協議,設計初衷是為低帶寬、不穩定網絡環境下的設備通信而生。它更像是廣播電臺:你訂閱頻道,誰在頻道里發布了消息你就能收到,中間由一個叫做 Broker 的中間人來轉發消息。

二、MQTT 的三大角色
Broker(消息代理)
Broker 就是 MQTT 網絡的大腦。客戶端不互相通信,所有消息都通過 Broker 中轉。主流 Broker 有
Mosquitto(輕量、適合嵌入式開發
EMQX(高性能、支持百萬連接)
HiveMQ、RabbitMQ(企業級)
Publisher(發布者)
發布消息的人,比如你家的溫濕度傳感器,每隔 5 秒發布一次環境數據。
Subscriber(訂閱者)
對某類消息感興趣的接收者,比如你手機里的 APP 訂閱了“家里客廳/溫度”,只要 Broker 收到這個主題的消息,就會推送給你。

三、核心機制-主題、保留消息
主題(Topic)
MQTT 的消息沒有標題,靠的是主題(Topic)分類。
保留消息(Retained Message)
比如你家的空調狀態是“開啟”,訂閱者上線時希望立刻知道當前狀態,可以發布一條“保留消息”,Broker 會記住它,并在有人訂閱時立刻推送。

四、GraniStudio是否支持MQTT

GraniStudio平臺是蘇州格拉尼視覺科技有限公司推出的對標Labview的零代碼工控開發平臺,該平臺支持MQTT服務器,客戶端,發送文本,接收文本和關閉MQTT通信。這幾個工具算子的介紹如下:
MQTT服務器

MQTT服務器屬于資源管理器算子部分,歸屬于資源管理器通用工具

wKgZPGhyj6aAXZ7AAAB73B1gxXY219.jpg

wKgZO2hyj6eAfq2lAABYaTlJtdA364.jpg

wKgZPGhyj6eAXHsmAAAQ6e7h2Po102.jpg

通過主界面可配置IP地址和端口號.然后選配高級設置是否啟用密碼功能,連接時是否需要驗證賬號密碼,并在列表中支持顯示客戶端連接列表和主題列表,消息列表方便用戶調試使用。

操作示例

步驟一、創建IP地址和端口號,一定要注意IP格式如:127.0.0.1 默認端口號:1883

wKgZO2hyj6eAP0JHAAAWmHU-Abs599.jpg

步驟二、如輸入IP地址格式不正確將出現彈窗提示。

wKgZPGhyj6iAGxqcAABPJgLeBGU039.jpg

步驟三、如需要客戶端連接時需要輸入正確的賬號和密碼,就需要開啟高級設置,設置連接驗證,用戶名和密碼。

wKgZO2hyj6iAZPEUAAAUTmvt5Os502.jpg

步驟四、設置完畢后點擊開啟服務即可。

wKgZPGhyj6iADFReAAAXTEvUFGM727.jpg

步驟五、打開MQTT客戶端測試工具。注意客戶端IP為自動分配

wKgZO2hyj6iAReYOAAAphbxFZMk165.jpg

步驟六、點擊連接

wKgZPGhyj6mAUZm8AAAtz5yb75w426.jpg

連接不成功原因是因為服務器那邊開啟了連接驗證,所以需要輸入正確的驗證信息才能連接成功。

步驟七、服務器列表中已顯示該客戶端的連接

wKgZO2hyj6mABxEHAAIlo25zuds854.jpg

步驟八、再次開啟客戶端連接該服務器

wKgZPGhyj6qAenQZAAGaXqvvpXU307.jpg

列表中已顯示兩個客戶端的連接,

步驟九、客戶端1訂閱主題,客戶端2發布主題

wKgZO2hyj6qAFAgxAARc_oL9bog970.jpg

步驟十、客戶端1顯示客戶端2發布主題。

wKgZPGhyj6uAOUVmAAA6erkvmw0150.jpg

從上圖可看出 MQTT服務器是一個代理服務,不同客戶端之間的通信。

wKgZO2hyj6uABwyKAACTIkSCI08034.jpg

一個客戶端可訂閱多個主題,。

MQTT客戶端

MQTT客戶端屬于資源管理器算子部分,歸屬于資源管理器通用工具

wKgZPGhyj6uAOg8oAABiESmzl0o998.jpg

wKgZO2hyj6yAbABuAABu-s0bR60414.jpg

wKgZPGhyj6yAM5CMAAAPckqeths355.jpg

算子內部自動分配客戶端ID,通過主界面輸入MQTT服務器IP地址和端口號可連接MQTT服務器,然后選配高級設置是否啟用密碼功能,連接時是否需要驗證賬號密碼,并支持顯示接收消息列表,通過界面可訂閱主題和發布主題,實現與MQTT服務器與MQTT其他客戶端的通信。

操作示例

步驟一、打開客戶端算子后將默認配分客戶端ID,無法修改

wKgZO2hyj6yAM8sFAAAM4BKge5I581.jpg

步驟二、配置IP和端口號,IP格式:127.0.0.1 端口號:1883 默認端口號:1883

wKgZPGhyj62ARKkIAAATQ209q24074.jpg

步驟三、是否開啟高級設置,開啟高級設置需輸入用戶名和密碼,,未開啟將無需輸入, 默認未開啟。如果服務器開啟用戶名驗證將開啟。

wKgZO2hyj62AEeH0AAARvLpHnH8616.jpg

步驟四、點擊連接按鈕

wKgZPGhyj66AFg3tAAAUMvbdbnA382.jpg

wKgZO2hyj66ARN-aAABfKCMiWfU587.jpg


即可在連接列表中顯示該客戶端連接信息

步驟五、點擊斷開按鈕

wKgZPGhyj6-AEAYmAAAT41wqT58132.jpg

wKgZO2hyj6-AcDzGAAA35FBGadM929.jpg

點擊斷開連接后服務器列表那會刷新,當前客戶端處于未連接狀態

步驟六、訂閱主題

wKgZPGhyj6-AaDmoAAIZMmUYeDY771.jpg

服務器將顯示客戶端訂閱列表。
使用客戶端2發布該主題

wKgZO2hyj7CAVe4CAAIHAG6utRQ677.jpg

客戶端2發布主題并附加消息Test

步驟七、發布主題消息

wKgZPGhyj7CAfTx6AAAsScy37sI914.jpg

客戶端2訂閱T1主題, 客戶端1發布主題T1

wKgZO2hyj7GAH5mzAACTE3NMmQs603.jpg

MQTT發送文本

MQTT發送文本屬于主任務設計器算子部分,歸屬于主任務設計器通用工具

wKgZPGhyj7GAQeDdAACJmhFx-uw625.jpg

wKgZO2hyj7KAS-afAABmbMzeTaU869.jpg

wKgZPGhyj7KAHlrPAAAQXxMVxSg239.jpg

算子內部無需連接操作,通過引用依賴引用MQTT客戶端對象即可,實現代理客戶端對象發布主題消息功能,通過界面配置可配置主題,可引用主題和手動輸入主題,也可引用消息和手動輸入消息兩種方式。

需要發送消息必須有主題,需要發布主題必須消息,如用戶輸入主題當前客戶端未發布將自動發布該主題消息。

操作示例

wKgZO2hyj7OAYk9FAAAwvtO0bNk426.jpg

創建服務器調試工具。

wKgZPGhyj7OAMczzAAB4m_nJUUQ275.jpg

GS MQTT客戶端連接該服務器

wKgZO2hyj7OATcrsAAEQ0C9rG7A870.jpg

創建兩個客戶端,模擬兩個客戶端之間通信

步驟一、引用MQTT 客戶端 對象

wKgZPGhyj7SABFxJAAAh0TXI2t4561.jpg

步驟二、使用自定義主題方式,輸入文本 R1

wKgZO2hyj7SAKmCPAAARUltLvP0371.jpg

步驟三、使用自定義消息方式,輸入消息 Test

wKgZPGhyj7WAPjd2AAARo3BEkk0619.jpg

步驟四、注意事項主題和消息兩者均不可為空。

步驟五、點擊執行按鈕

wKgZPGhyj7WAPjd2AAARo3BEkk0619.jpg

wKgZO2hyj7WAdOxpAADAZwvZO5I556.jpg

服務器已接收到MQTT客戶端發布主題和消息

wKgZPGhyj7WAAX-gAACi6j0uEtM824.jpg

客戶端2訂閱R1主題,與 GS MQTT客戶端建立連接

wKgZO2hyj7aAO4hUAAA0Pg4P1aI613.jpg

訂閱主題成功, 將剛GS MQTT客戶端發布主題和消息發送至該客戶端中

步驟六、使用引用方式

wKgZPGhyj7aAO_SYAABXvkrq570530.jpg

使用局部變量定義兩個變量,一個主題一個消息變量 均是GString類型

步驟七、引用主題方式

wKgZPGhyj7aAfIsZAACiv6SOpuw337.jpg

步驟八、引用消息方式

wKgZO2hyj7eARSg0AAAkRI0WdTw248.jpg

wKgZPGhyj7eAVplRAALiZaOC1rQ362.jpg

因為客戶端2訂閱R1主題,發送文本發送的主題為R1 消息為GRaniTest。正常發送主題消息

MQTT接收文本

MQTT接收文本屬于主任務設計器算子部分,歸屬于主任務設計器通用工具

wKgZO2hyj7iAe-ErAACLSPVv50Q002.jpg

wKgZPGhyj7iAaF0fAABQ-o5v4ko550.jpg

wKgZO2hyj7iAMKC3AAAYjGZMky4457.jpg

算子內部無需連接操作,通過引用依賴引用MQTT服務器或客戶端對象即可,實現代理接收MQTT服務器或客戶端消息功能,通過界面選配項可配置接收超時功能,如在設置時長內未接收文本消息將視為超時,如未打開超時功能將默認持續不斷等待接收,直到接收到文本即可。

時長單位設置以毫秒為單位。

接收到文本將設置為本算子輸出項,輸出結果字符串類型未字符串類型,字節類型未Byte字節類型。

操作示例

步驟一、訂閱客戶端主題 T1

wKgZPGhyj7mAEKb-AAPidRfShuc458.jpg

步驟二、接收文本選擇引用對象

wKgZO2hyj7mASjrXAAAiRh-juHw955.jpg

步驟三、是否打開高級設置,默認 未打開

wKgZPGhyj7qADtSbAAAM_PUV5Hw642.jpg

未打開高級設置將一直等待文本接收

步驟四、是否打開高級設置,打開超時設置需要設置一個時長,如在規定時間內為未接收到文本消息,則視為超時,否則將接收文本顯示到輸出界面

wKgZO2hyj7qATrvZAAAUDt38AyI732.jpg

打開高級設置將在規定時間段內接收文本

wKgZPGhyj7uAD-zAAAGDJSkhuqo883.jpg

3000毫秒內未接收到文本

步驟五、主動和被動觸發,當引用一個MQTT通信對象時,內部已為此通信建立起一個接收事件,如果用戶點擊執行按鈕為主動觸發等待接收功能,如果是程序在流程中正常執行到此處為被動觸發等待接收功能,一般主動觸發適用于調試階段的使用,被動出發適用于在自動流程中接收信號的使用。

wKgZO2hyj7uAB4z5AAIsDPkiRoQ848.jpg

wKgZPGhyj7uAA06JAAJb5wDGBck579.jpg

主動執行接收

wKgZO2hyj7yAKWd9AAIQ5ds5gy0483.jpg

wKgZPGhyj7yAZBHIAAKNrIoDWpA552.jpg

被動接收

wKgZO2hyj72Ae3STAACkdqrcZLY299.jpg

被動接收

MQTT關閉

MQTT關閉屬于主任務設計器算子部分,歸屬于主任務設計器通用工具

wKgZPGhyj72AcsdsAAB9XQpuA3g997.jpg

wKgZO2hyj76AaYxiAABBQ9t7s-Y376.jpg

wKgZPGhyj76ARvDMAAANReqLggA691.jpg

MQTT關閉算子將代理MQTT服務器或客戶端關閉通信功能,可通過引用依賴配置MQTT服務器或客戶端,如內部引用MQTT服務器將停止監聽,禁止發送消息和客戶端的連接.如為MQTT客戶端將停止需MQTT服務器的連接,停止發送消息。

操作示例

步驟一、使用拖拉拽方式在主任務設計器工具箱中將關閉MQTT通信算子創建在畫布中。

wKgZO2hyj7-AWAVrAAAN1w9FrYI995.jpg

步驟二、選擇引用依賴框配置一個MQTT類相關算子如:GMQTT服務器,GMQTT客戶端。暫時支持類型(GMQTTClient,GMQTTServer)),兩種數據類型。

wKgZPGhyj7-AJIxdAAAkw0yEV7Y954.jpg

步驟三、算子執行成功,可繼續使用初始化算子再次初始化方可繼續使用標刻功能。

wKgZO2hyj8CAHYILAAAPA4mtp9Q651.jpg

五、為什么選擇GraniStudio MQTT通信協議?

保持 ClientID 唯一,防止連接互踢

合理規劃主題命名,避免混亂

連接長時間保持,不必頻繁重連

消息機制更靈活,低功耗設備友好

更適合物聯網中“一對多”或“多對多”的場景

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 物聯網
    +關注

    關注

    2930

    文章

    46211

    瀏覽量

    392135
  • MQTT
    +關注

    關注

    5

    文章

    681

    瀏覽量

    23705
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    精通 MQTT:消息隊列遙測傳輸指南!

    引言MQTT(消息隊列遙測傳輸)是一種輕量級消息協議,專為低帶寬、高延遲和不可靠的網絡環境設計。它廣泛應用于物聯網(IoT)應用、消息系統以及實時數據通信領域。本指南深入探討了MQTT的工作原理
    的頭像 發表于 06-16 16:56 ?472次閱讀
    精通 <b class='flag-5'>MQTT</b>:消息隊列遙測傳輸指南!

    MQTT 回調處理程序中遇到了隨機 MQTT 斷開連接的問題,怎么解決?

    MCU:CYW55913。 MQTT Broker 端點:Amazon AWS 云。 保持活動超時:60 秒 ping 響應超時:5 秒 我們在 MQTT 回調處理程序中遇到了隨機 MQTT
    發表于 06-05 07:14

    如何在MQTT中發布和訂閱實體

    MQTT中發布和訂閱實體(主題)是MQTT通信的核心操作,下面將詳細介紹其原理、步驟以及示例代碼,幫助你全面理解這一過程。 一、MQTT發布與訂閱的基本概念 發布(Publish):
    的頭像 發表于 05-20 17:21 ?321次閱讀

    MQTT為何成為物聯網協議

    的優勢,以下為你詳細介紹: 輕量級特性,適配資源受限設備 協議頭開銷小 :MQTT協議頭非常簡潔,相比其他協議,它在數據傳輸時添加的額外信息極少。例如,在一個簡單的物聯網設備向服務器發送數據的場景中,使用MQTT協議傳輸一條包含
    的頭像 發表于 05-20 09:54 ?200次閱讀

    MQTT物聯網平臺有哪些?有哪些功能?

    MQTT(Message Queuing Telemetry Transport)是一種基于客戶端-服務器架構的發布/訂閱模式的消息傳輸協議,它廣泛應用于機器與機器的通信(M2M)以及物聯網環境
    的頭像 發表于 03-15 14:23 ?820次閱讀
    <b class='flag-5'>MQTT</b>物聯網平臺有哪些?有哪些功能?

    MQTT測試程序上機實驗

    mqtt_test、paho.mqtt.c.tar.bz2放到Ubuntu上同一個目錄下。
    的頭像 發表于 02-11 13:35 ?633次閱讀
    <b class='flag-5'>MQTT</b>測試程序上機實驗

    基于MQTT協議的車云通信設計

    隨著智能汽車的發展,車云通信的功能場景及數據量也逐漸增多,具有輕量化、可靠性等特點的MQTT協議成為很多OEM車云通信協議的選擇。本文主要介紹。 什么是MQTTMQTT(Messa
    的頭像 發表于 01-08 10:24 ?1038次閱讀
    基于<b class='flag-5'>MQTT</b>協議的車云通信設計

    低功耗4G模組:MQTT通信功能

    ?今天我們來學習使用合宙Air708E開發板的MQTT通信基本功能。 一、MQTT介紹 MQTT是一種低開銷、低帶寬占用的即時通訊協議,可以用極少的代碼和帶寬為遠程設備提供實時可靠的消
    的頭像 發表于 11-01 07:26 ?1142次閱讀

    白嫖篇:4G 模組 MQTT 通信功能!

    今天我們白嫖的是4G 模組 MQTT 通信功能!以AIR708E開發板為例 從MQTT介紹,演示功能概述,準備硬件環境,準備軟件環境,代碼示例介紹等給大家展示明白
    的頭像 發表于 10-30 14:53 ?2229次閱讀
    白嫖篇:4G 模組 <b class='flag-5'>MQTT</b> 通信功能!

    MQTT物聯網云平臺有什么功能

    隨著物聯網(IoT)技術的迅猛發展,MQTT(Message Queuing Telemetry Transport)物聯網云平臺作為一種重要的基礎設施,正在智能制造、智能家居、車聯網等多個領域發揮
    的頭像 發表于 10-09 14:15 ?719次閱讀

    MQTT智能網關接入物聯網平臺:實現高效連接與數據交互

    連接設備和物聯網平臺的關鍵橋梁,在數據采集、傳輸和控制中發揮著至關重要的作用。本文將詳細介紹MQTT智能網關如何接入物聯網平臺,實現高效連接與數據交互。 一、選擇合適的MQTT智能網關 在接入物聯網平臺之前,首先需要選擇一款合適
    的頭像 發表于 09-27 17:04 ?696次閱讀

    MQTT協議網關的工作原理及功能特性

    在物聯網的快速發展中,MQTT協議網關作為連接物聯網設備與消息代理服務器的重要橋梁,扮演著不可或缺的角色。MQTT是一種基于發布/訂閱模式的輕量級通信協議,特別適用于低帶寬、不穩定網絡環境下
    的頭像 發表于 09-18 17:00 ?1189次閱讀
    <b class='flag-5'>MQTT</b>協議網關的工作原理及功能特性

    MQTT網關:物聯網中的關鍵橋梁

    MQTT網關:物聯網中的關鍵橋梁 在物聯網(IoT)的廣闊世界中,MQTT網關扮演著至關重要的角色。MQTT,全稱為Message Queuing Telemetry Transport,是一種
    的頭像 發表于 08-22 14:15 ?779次閱讀
    <b class='flag-5'>MQTT</b>網關:物聯網中的關鍵橋梁

    基于MQTT協議云平臺的Modbus轉MQTT網關

    鋇錸Modbus轉MQTT網關BL100是一款高性能、高性價比的物聯網網關,它支持將Modbus協議(包括Modbus RTU和Modbus TCP)的數據轉換為MQTT協議的數據格式,從而實現設備
    的頭像 發表于 07-29 17:59 ?1133次閱讀
    基于<b class='flag-5'>MQTT</b>協議云平臺的Modbus轉<b class='flag-5'>MQTT</b>網關

    MQTT物聯網平臺是什么

    MQTT物聯網平臺是一種軟件平臺,它基于MQTT(Message Queuing Telemetry Transport,消息隊列遙測傳輸)協議,為物聯網(IoT)設備提供連接、管理和數據處理的服務
    的頭像 發表于 07-18 14:22 ?1169次閱讀
    主站蜘蛛池模板: 午夜视频啪啪 | 天天躁日日躁成人字幕aⅴ 天天躁夜夜躁 | 1024国产欧美日韩精品 | 成人夜色香网站在线观看 | 免费午夜视频在线观看 | 伊人久久大线蕉香港三级 | 日本在线一区二区 | 免费一看一级毛片全播放 | 久久香蕉综合精品国产 | 午夜资源站 | 性欧美一级| 亚洲国产成人久久三区 | 啪啪免费网站视频观看 | 亚洲 欧美 中文字幕 | 国产又爽又黄又粗又大 | 高清人人天天夜夜曰狠狠狠狠 | 久久国产精品视频 | 伊人久久综合成人亚洲 | 天堂网www在线 | 青草午夜精品视频在线观看 | zzji国产精品视频 | 欧美中字 | 欧美成人午夜片一一在线观看 | 六月丁香婷婷激情国产 | japanese色系tube日本护士 | 国产三级高清 | 在线观看免费视频一区 | 国产精品福利午夜h视频 | semm亚洲欧美在线高清 | 亚洲福利一区二区 | 一区二区三区高清 | 高h乱肉辣文辣书阁 | 免费在线看片网站 | 国模精品| 成人xxxxx| 天天摸夜班摸天天碰 | 午夜影视啪啪免费体验区深夜 | 在线免费公开视频 | 最新欧美精品一区二区三区 | 久久婷婷国产精品香蕉 | 三级黄色网 |