跳至主要內容
8.1 對外通訊串接 MQTT

學習如何串接MQTT資料訊息

BRICKS TOOLS avatar
作者:BRICKS TOOLS
3 年前已更新

歡迎使用 BRICKS ,此教學涵蓋外部資料通訊的第一步 : 對外通訊串接 MQTT,只要完成此章節內容,即可輕鬆學會 BRICKS 雲端智慧顯示基礎外部資料通訊的使用。


  • 行前說明

MQTT是什麼?MQTT是一種用於IoT裝置的基於發佈與訂閱的資料傳遞橋樑,詳細可以參考以下影片詳細解說:MQTT基本說明影片


🕐 此篇教學操作預計花費時間:5~8 分鐘

  • 步驟一『建立 MQTT 功能處理器並設定相關數值』

    BRICKS 功能處理器不只有倒數及播放的功能,還能透過 HTTP、Websocket、GraphQL、MQTT、BLE、Serialport等通訊協定與外部的資料及設備溝通。本節將示範透過 MQTT 功能處理器和外部 IoT 裝置進行訊息溝通。

    Create MQTT generator


    接著在 MQTT Generator 的屬性中將 Init 設定為 [ Yes ] ,使其會在初始時自動連線,在 URI 的地方填入 [ mqtt://broker.hivemq.com:1883 ] ,這裡是透過一個HiveMQ 的服務來模擬 MQTT 的通訊過程。在 Subscribe 訂閱訊息的地方,在 Topic 新增一個 [ bricks/hello ] 的主題,將 Message Type 的訊息形式設定為 [ text ] ,以方便我們使用 Property Bank 的 String 字串類型的變數來串接。

    Setting MQTT Generator property

  • 步驟二『設定字串變數給 MQTT 功能處理器接收』

    新增一組字串類型的 Property Bank 變數,這是用來接收 MQTT 發送訊息端傳送的訊息。

    Create new string property bank


    接著返回選擇步驟一建立的 MQTT 功能處理器,在 Outlets 的訊息出口區找到 Message Payload 並設定剛才建立的變數,這樣變數就會連結 MQTT 發送的訊息資料。

    Setting MQTT message payload to property bank

  • 步驟三『建立文字元件顯示變數內容』

    新增一個文字元件,寬度設定為30,方便顯示字串訊息。

    Create new text Brick


    在文字元件的屬性中,將 Text 欄位設定為連結變數,點擊左方的連結符號,並在選項中選擇步驟二設定的變數,記得替文字設定一個和背景不同的顏色,不然會看不到文字。

    Setting text link to property bank

  • 步驟四『設定 HiveMQ 的主題發送訊息』

    接著我們要透過 HiveMQ 提供的服務模擬 MQTT 發佈訊息,請點擊以下網址開啟HiveMQ 的模擬測試用頁面,在 Publish 的區塊中有 Topic, Qos 和 Message,還記得在步驟一時,我們在 MQTT 功能處理器的 Subscribe 區塊設定了 Topic 及Qos 和 Message Type 嗎?這頁面就是模擬 MQTT 的發佈訊息結構,因此在這個頁面中將 Topic 設定成和步驟一相同的主題 [ bricks/hello ] ,確認 QoS 的數值設定一致,接著在 Message 的地方輸入想要傳送的訊息。

    HiveMQ web sockets client showcase

  • 步驟五『裝置發佈預覽測試』

    再來就是將設定存檔播放,在裝置上看看當在 HiveMQ 頁面點擊 [ Publish ] 將 Message 發送出去後,裝置上的文字是否有改變成你輸入的文字呢?

  • 恭喜學會了對外通訊串接 MQTT 的基本概念


下一節將帶您認識 HTTP API 的通訊

若需要任何幫助,歡迎點擊右下角的對話圖示詢問,我們會盡快回覆您的問題

是否回答了您的問題?