MQTT實作
說在前面-MQTT概念
請先閱讀趙大師對於MQTT的概念教學。
接下來的實作為依用publisher/MQTT Broker/Subscriber三個區塊來進行實作。
軟硬體選擇
軟體
這次的實作教學是利用ArduBlock來進行教學。
請下載最新版本。
cp2102 driver下載:
https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers
硬體選擇:
NodeMcu(cp2102)
引用自:http://www.ifuturetech.org/product/amica-nodemcu-esp8266-lua-cp2102-wifi-development-module-iot-ifuture-baroda-vadodara-gujarat-india/
(
註:說明板子一共有二顆LED可直接由IO控制
D0--GPIO16
D4--GPIO2
選擇腳位時,為避免混淆,請點使用板子正面的腳位加註,並多加一個"D"
)
接線說明
利用D4接一個LED模組或者是利用NodeMCU板上的LED來作觀察.
MQTT Broker註冊
選擇至https://io.adafruit.com/註冊一個帳號
至網頁最下面點選
點選CREATE ACCOUNT
建立控制界面
註冊完畢後,再重回https://io.adafruit.com/
建立一個新的dashboard(儀表板)
對所建立的儀表板,選擇名稱及描述。
建立模組時,會要求一個feed。
在BLOCK設定時 ,因為ArduBlock接收時,是數字。所以在下行設定時,需改用1及0。
.
ArduBlock的操作
打開所下載的Arduino IDE,後開啓ArduBlock ESP
登入WIFI,請輸入帳密。
接下來要輸入Adafruit所以申請的帳號及key
接下來開始設定接收由Adfruit 所發送過的訊
息
並由所接收的訊息,判斷後執行相應的燈光動作。
上傳完成的ArdBlock程式碼後,回到io.adfuit.com,執行按鈕控制燈光動作。
溫溼度顯示設定
接線是D2腳位 ,接上溫溼度模組。
創建新模組
選擇feed,因為我們之前並沒有先建立,所以選擇新建。
建立溫度及溼度的feed
輸入溫溼度模組設定
調整模組版面
設定版面
輸入溫溼度模組設定
上傳之後,回到io.adfuit.com,即可以看到執行情況