01 架設MQTT伺服器

(2021/02/17)

最近很流行MQTT的使用,其中有關我們發送資料及訂閱資料的Broker(MQTT伺服器)大都使用民間免費的,本文要介紹大家自行來架設一個簡單的Broker,真的很簡單就可以擁有自己的MQTT伺服器了!另外要說明這也是大陸軟體,如果有資安疑慮的就不要使用!這內容也是我新書的內容在此先透露一些。

一、認識是SIOT

  • SIOT是一個小型MQTT伺服器(Broker)的軟體,有Windows、Linux、Mac等版本可用。其實SIOT是一個為中小學STEM教育定制的跨平台的開源MQTT伺服器程式,S指科學(Science)、簡單(Simple)的意思。所以,SIOT把重點擺放在物聯網資料的收集和匯出,是採集科學資料的最好選擇之一。

  • SIOT的使用手冊:https://siot.readthedocs.io/zh_CN/latest/index.html

  • SIoT採用GO語言編寫,具有如下特點:

    • 跨平臺。支援Win10、Win7、Mac、Linux等作業系統。只要啟動這一程式,普通電腦(包括拿鐵熊貓、虛穀號和樹莓派等微型電腦)就可以成為標準的MQTT伺服器。

    • 一鍵運行。純綠色軟體,不需要安裝,下載後解壓就可以使用,對中小學的物聯網技術教學尤其適合。

    • 使用簡單。軟體運行後,不需要任何設置就可以使用。利用特定的“Topic”的名稱(“專案名稱/設備名稱”),就能自動在資料庫中添加專案和設備的名稱,並將消息資料存入資料庫。

    • 支援資料匯出。所有的物聯網消息資料都可以線上匯出,系統採用SQLite資料庫,同時支援Mysql資料庫。

    • 支援標準的MQTT協定。QoS級別為0。

    • 支持WebAPI。系統系統了完善的WebAPI,方便各種軟體以HTTP的方式調用,支援App inventor、Scratch、VB等默認不支援MQTT的中小學生常用程式設計軟體調用。

    • 支援外掛程式開發。

二、執行SIOT

    • 執行SIoT_windows_1_2.exe (請用1.3版)

    • 在瀏覽器的網址列輸入:本機IP:8080,如192.168.31.111:8080

      • 帳號、密碼可以到config.json去修改

    • 輸入帳號(siot)、密碼(dfrobot)來登入SIOT平台

    • 這樣我們就擁有了自己的MQTT伺服器了,是不是很簡單啊!

三、SIOT的使用

  • 建立好自己的MQTT伺服器後,第一件事就是新增一個主題名稱

    • 這時設備列表,就會出現我們剛剛新增的主題了

    • 在SIOT平台上發送訊息測試,在設備列表中找到我們新增的設備(wenyu/microbit),並點擊後方的「查看消息」

    • 在發送消息處,輸入happy、sad或其他文字後,按「發送」

    • Payload用中文字也可以!

      • 發送後,如果在micro:bit有寫相關程式,順便觀察micro:bit主控板屏幕上的圖示有沒有改變?

      • 按下micro:bit主控板的A鍵、B鍵、A+B鍵,平台上有沒有新增了一些相關訊息。

四、使用其他軟體來測試

  • MQTTBox的使用

    • 手機IoT MQTT Panel APP的使用