18video性欧美19sex,欧美高清videosddfsexhd,性少妇videosexfreexxx片中国,激情五月激情综合五月看花,亚洲人成网77777色在线播放

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

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

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

MQTT通信協(xié)議和工具包簡介

jf_NKOETB7n ? 來源:LabVIEW的編程之道 ? 2023-11-28 09:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

一、MQTT通信協(xié)議和工具包簡介

1、MQTT通信等定義:

消息隊(duì)列遙測傳輸( 英語:Message Queuing Telemetry Transport , MQTT )是 ISO 標(biāo)準(zhǔn) (ISO/IEC PRF 20922) 下基于 發(fā)布(Publish)/訂閱(Subscribe) 范式的消息協(xié)議,可 視為“資 料 傳遞 的 橋梁” 。----摘錄維基百科

2、MQTT通訊示意圖

673eae68-8d7a-11ee-939d-92fbcf53809c.png

上圖是MQTT的實(shí)際使用案例

將上圖簡化后的系統(tǒng)結(jié)構(gòu)圖如下圖:

67589e72-8d7a-11ee-939d-92fbcf53809c.png

3、MQTT系統(tǒng)組成

系統(tǒng)包含兩個(gè)部分:

客戶端(Client):需要發(fā)布或訂閱消息的終端,可以是智能終端,傳感器,或者是數(shù)據(jù)庫,主要功能如下:

(1)發(fā)布其他客戶端需要訂閱的信息;

(2)訂閱其它客戶端發(fā)布的消息;

(3)退訂或刪除應(yīng)用程序的消息;

(4)斷開與服務(wù)器連接。

服務(wù)器:(Server/Broker):專門用于進(jìn)行設(shè)備注冊(cè)和消息轉(zhuǎn)發(fā),稱為"消息代理"(Broker),具體有如下功能:

(1)接受來自客戶的網(wǎng)絡(luò)連接;

(2)接受客戶發(fā)布的應(yīng)用信息;

(3)處理來自客戶端的訂閱和退訂請(qǐng)求;

(4)向訂閱的客戶轉(zhuǎn)發(fā)應(yīng)用程序消息。

4、MQTT通信方式:

Client之間的通訊可以是一對(duì)一,一對(duì)N,也可以是N對(duì)一。

二、MQTT通信范例

1、MQTT通訊底層方式

范例提供了2種通訊方式,TCP/IP和websocket,底層都是TCP/IP,不過websocket是對(duì)TCP/IP的封裝。

2、MQTT所需工具包

具體安裝包如下圖,在VIPM里面安裝相應(yīng)的工具包和附加工具包,共享的代碼也包含離線安裝包。

679cdf56-8d7a-11ee-939d-92fbcf53809c.png

上面工具包里包含了Client和Broker,通過依賴注入的形式,改變通信類型,提供的范例是TCP/IP和websocket兩套通信模式。

67ad271c-8d7a-11ee-939d-92fbcf53809c.png

其中還可以使用通用的mqtt 調(diào)試軟件mosquito調(diào)試TCP/IP,但是這個(gè)不能調(diào)試websocket客戶端。打開命令為 mosquito -d -v.這個(gè)調(diào)試工具在代碼的共享,也可到網(wǎng)上下載。

67bdd904-8d7a-11ee-939d-92fbcf53809c.png

三、MQTT通信范例

1、軟件擴(kuò)展

為了監(jiān)聽底層通信報(bào)文,在項(xiàng)目中創(chuàng)建了兩個(gè)類TCP Pro和WebSocket Pro分別繼承Connect Tcp和WebSocketsConnect,分別添加一個(gè)Name屬性并重寫Read incoming Bytes和Write Incoming Biytes,使用了我上一章介紹的工具,Consol FGV對(duì)實(shí)時(shí)報(bào)文進(jìn)行監(jiān)控。

67e1bf36-8d7a-11ee-939d-92fbcf53809c.png

重寫讀者類,監(jiān)聽報(bào)文

67f84eea-8d7a-11ee-939d-92fbcf53809c.png

680d4d22-8d7a-11ee-939d-92fbcf53809c.png

重寫后通信接口UML關(guān)系圖:

6821711c-8d7a-11ee-939d-92fbcf53809c.png

2、為客戶端添加自動(dòng)斷開后自動(dòng)停止事件,這里將庫里的私有方法設(shè)置成公共方法,然后使用Close Seccion事件來自動(dòng)停止,如果不想改變工具包,可以刪除相應(yīng)的代碼不影響整體功能。

將私有文件夾設(shè)置乘公共文件夾

682f0c46-8d7a-11ee-939d-92fbcf53809c.png

3、TCP MQTT范例演示

注意先啟動(dòng)服務(wù)器再啟動(dòng)客戶端

啟動(dòng)Broker

68414b9a-8d7a-11ee-939d-92fbcf53809c.png

啟動(dòng)Clent1

6857dcac-8d7a-11ee-939d-92fbcf53809c.png

啟動(dòng)Clent2

68846632-8d7a-11ee-939d-92fbcf53809c.png

服務(wù)端可以看到已經(jīng)啟動(dòng)了兩個(gè)客戶端。

68988b80-8d7a-11ee-939d-92fbcf53809c.png

發(fā)布V1消息,訂閱消息V2

68b219d8-8d7a-11ee-939d-92fbcf53809c.png

發(fā)布V2消息,訂閱消息V1

68d09de0-8d7a-11ee-939d-92fbcf53809c.png

同時(shí)訂閱V1,V2兩個(gè)消息

68ec551c-8d7a-11ee-939d-92fbcf53809c.png

可以自行嘗試下取消訂閱相關(guān)消息

4、websocket MQTT范例演示

注意先啟動(dòng)服務(wù)器再啟動(dòng)客戶端

啟動(dòng)client1

6905f760-8d7a-11ee-939d-92fbcf53809c.png

啟動(dòng)client2

692462b8-8d7a-11ee-939d-92fbcf53809c.png

websocketBroker

693c662e-8d7a-11ee-939d-92fbcf53809c.png

?

?可以嘗試訂閱和取消訂閱相關(guān)消息

5、練習(xí):

是否可以使用這個(gè)工具包,開發(fā)一個(gè)建議的局域網(wǎng)聊天軟件,這樣可以更好的學(xué)習(xí)這個(gè)工具包的用法:)。

四、MQTT通訊原理簡介

1、MQTT啟動(dòng)和連接

6965b6a0-8d7a-11ee-939d-92fbcf53809c.png

1.1、首先啟動(dòng)服務(wù)器,服務(wù)器啟動(dòng)后會(huì)啟動(dòng)一個(gè)異步線程監(jiān)聽是否有客戶端連接到服務(wù)器端口

1.2、啟動(dòng)客戶端,鏈接到服務(wù)器后向服務(wù)發(fā)送鏈接信息,服務(wù)端檢測服務(wù)信息正確后返回連接信息,如果不正確就會(huì)斷開連接。

1.3、客戶端長期沒有給服務(wù)發(fā)數(shù)據(jù)時(shí)需要向服務(wù)器發(fā)送心跳消息,如果不發(fā)送超時(shí),服務(wù)器會(huì)斷開客戶端。

LabVIEW的范例中的服務(wù)器沒有這個(gè)功能,mosquito服務(wù)器有這個(gè)功能,需要了解的讀者可以自行嘗試

2、MQTT通信方式

697c3934-8d7a-11ee-939d-92fbcf53809c.png

1.1、客戶端需要某個(gè)主題A消息時(shí)向服務(wù)器訂閱主題A,當(dāng)客戶端0向服務(wù)器發(fā)送主題A時(shí),訂閱了主題A的客戶端都會(huì)收到客戶端0的主題,沒有訂閱的客戶端不會(huì)收到主題A。

1.2、當(dāng)某個(gè)客戶端不需要主題A時(shí)可取消訂閱主題A。

五、需要安裝的軟件、工具包和庫

1、LabVIEW2015中文版

2、mqtt工具包集合

3、mosquitto服務(wù)器安裝包

審核編輯:湯梓紅

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

    關(guān)注

    2573

    文章

    53934

    瀏覽量

    781812
  • 通信協(xié)議
    +關(guān)注

    關(guān)注

    28

    文章

    1065

    瀏覽量

    41758
  • 客戶端
    +關(guān)注

    關(guān)注

    1

    文章

    304

    瀏覽量

    17353
  • MQTT
    +關(guān)注

    關(guān)注

    5

    文章

    710

    瀏覽量

    24575

原文標(biāo)題:LabVIEW的編程之道-MQTT工具包使用詳解

文章出處:【微信號(hào):LabVIEW的編程之道,微信公眾號(hào):LabVIEW的編程之道】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    通信協(xié)議解讀:CoAP/LWM2M協(xié)議和MQTT協(xié)議

    本文將分別解讀CoAP/LWM2M協(xié)議和MQTT協(xié)議,希望能幫助您了解這些協(xié)議,并選擇最適合您的設(shè)備的通信協(xié)議。
    的頭像 發(fā)表于 12-04 14:09 ?1.4w次閱讀
    <b class='flag-5'>通信協(xié)議</b>解讀:CoAP/LWM2M<b class='flag-5'>協(xié)議和</b><b class='flag-5'>MQTT</b><b class='flag-5'>協(xié)議</b>

    RK3568-MQTT通信協(xié)議案例

    RK3568-MQTT通信協(xié)議案例
    的頭像 發(fā)表于 01-19 15:31 ?2489次閱讀
    RK3568-<b class='flag-5'>MQTT</b><b class='flag-5'>通信協(xié)議</b>案例

    TLT507-MQTT通信協(xié)議案例

    TLT507-MQTT通信協(xié)議案例
    的頭像 發(fā)表于 01-26 10:06 ?1560次閱讀
    TLT507-<b class='flag-5'>MQTT</b><b class='flag-5'>通信協(xié)議</b>案例

    促進(jìn)ARM嵌入式發(fā)展的工具包簡介

    促進(jìn)ARM嵌入式發(fā)展的工具包簡介
    發(fā)表于 07-31 21:55

    TCP通信協(xié)議-Labview上位機(jī)

    現(xiàn)在用單片機(jī)進(jìn)行信息采集,通過GPRS模塊上傳到PC,用Labview做上位機(jī),TCP通信協(xié)議,想請(qǐng)教一下,TCP通信協(xié)議和Modbus TCP通信協(xié)議有什么不同?
    發(fā)表于 12-10 08:58

    哪位大神用過labview的MQTT工具包,想連接onenet平臺(tái)。

    安裝了MQTT工具包不會(huì)用,有沒有大神指點(diǎn)一下
    發(fā)表于 05-27 15:10

    全志科技T3開發(fā)板(4核ARM Cortex-A7)——MQTT通信協(xié)議案例

    本文主要介紹基于T3處理器的MQTT通信協(xié)議開發(fā)案例,講解內(nèi)容主要包括了MQTT通信協(xié)議簡介、概述、應(yīng)用場景以及Mosquitto
    發(fā)表于 06-09 14:55

    全志T3+Logos FPGA開發(fā)板——MQTT通信協(xié)議案例

    、FPGA、ROM、RAM、電源、晶振、連接器等所有器件均采用國產(chǎn)工業(yè)級(jí)方案,國產(chǎn)化率100%。給大家詳細(xì)講解嵌入式行業(yè)中,常使用到的MQTT通信協(xié)議案例,分別涵蓋了MQTT通信協(xié)議
    發(fā)表于 03-31 15:35

    Labview2013各工具包的功能簡介

    Labview2013各工具包的功能簡介Labview2013各工具包的功能簡介
    發(fā)表于 11-20 11:20 ?0次下載

    【理論】通信的硬件層協(xié)議和軟件層協(xié)議

    眾所周知通信協(xié)議就是一種數(shù)據(jù)傳輸?shù)?b class='flag-5'>協(xié)議規(guī)范,從軟硬件層面可以分為硬件層通信協(xié)議和軟件層通信協(xié)議,本文通過對(duì)通信的硬件層
    發(fā)表于 12-05 15:51 ?9次下載
    【理論】<b class='flag-5'>通信</b>的硬件層<b class='flag-5'>協(xié)議和</b>軟件層<b class='flag-5'>協(xié)議</b>

    S7通信協(xié)議介紹 s7協(xié)議和profinet協(xié)議區(qū)別

    S7協(xié)議和Profinet協(xié)議都是工業(yè)自動(dòng)化領(lǐng)域中常用的通信協(xié)議,其中S7協(xié)議是傳統(tǒng)的工控領(lǐng)域常用的通信協(xié)議,而Profinet是近年來出現(xiàn)
    發(fā)表于 05-08 16:19 ?2.8w次閱讀

    全志T3開發(fā)板 ARM CortexA7——MQTT通信協(xié)議

    本文主要介紹基于T3處理器的MQTT通信協(xié)議開發(fā)案例,講解內(nèi)容主要包括了MQTT通信協(xié)議簡介、概述、應(yīng)用場景以及Mosquitto
    發(fā)表于 06-09 14:50 ?6次下載

    NPOI WEG報(bào)表工具包簡介

    很久以前就知道有NPOI這個(gè)報(bào)表工具包,因?yàn)橛蠳I自帶的工具包就沒有詳細(xì)研究過。當(dāng)前工作中幾臺(tái)電腦因?yàn)榘惭bOFFICE版本問題,或其它原因?qū)е伦詭?bào)表無法使用,就找來了一個(gè)群友共享的的NPOI工具包
    的頭像 發(fā)表于 11-06 10:05 ?1962次閱讀
    NPOI WEG報(bào)表<b class='flag-5'>工具包</b><b class='flag-5'>簡介</b>

    mqtt協(xié)議和http協(xié)議區(qū)別

    的WWW文件都必須遵守這個(gè)標(biāo)準(zhǔn)。HTTP是一個(gè)基于TCP/IP通信協(xié)議來傳遞數(shù)據(jù)(HTML 文件、圖片文件、查詢結(jié)果等),屬于應(yīng)用層的面向?qū)ο蟮?b class='flag-5'>協(xié)議。由于其
    的頭像 發(fā)表于 01-19 15:56 ?7739次閱讀

    mqtt協(xié)議和tcp協(xié)議區(qū)別

    帶寬和高延遲的網(wǎng)絡(luò)環(huán)境,尤其在物聯(lián)網(wǎng)環(huán)境中表現(xiàn)優(yōu)秀。而TCP協(xié)議是面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議,主要用于互聯(lián)網(wǎng)和局域網(wǎng)中的數(shù)據(jù)傳輸。 2. 連接方式:MQTT協(xié)議基于
    的頭像 發(fā)表于 04-01 09:15 ?2932次閱讀