close

本篇教學文章說明如何使用 ESP8266,透過 MQTT 連線至 QIoT Suite Lite 以收發資料。 由於 ESP8266 具有不同的韌體、規格和用法,因此分成兩種方式:

  • 使用 Arduino Core 的 ESP8266
  • 使用 AT 指令搭配 Arduino 的 ESP8266

準備工作(使用 Arduino IDE 安裝程式庫並建立 IoT 應用)

  1. 本範例使用 MQTT(如需詳細資訊,請前往 https://pubsubclient.knolleary.net/)。
  2. 建立新的 IoT 應用(請參閱「如何在 QIoT 儀表板顯示 DHT11 資料?」)
    我們使用「按鈕」與「led」作為範例(資源名稱和資源 ID 皆為「button」與「led」)。
  3. 前往[規則]頁面,將資料從[按鈕]連線至儀表板,並傳送狀態至您的裝置。

  4. 設定 QBroker 節點: 將[按鈕]資源設定為[MQTT Message In](MQTT 訊息傳入)。
  5. 設定 QDashboard: 使用名稱[Button](按鈕)
  6. 設定變更節點: 將[msg.payload.value]移至[msg.payload
  7. 設定 QBroker 節點: 將[led]資源設定為[MQTT 訊息傳出]。
  8. 前往[儀表板]頁面,查看您的按鈕狀態。

如需 json 檔案的更多範例,請參考下列連結:
https://github.com/qnap-dev/qnap-qiot-sdks/blob/master/projects/esp8266-example/qiot-suite-lite-export/ESP8266.json

 

使用 Arduino Core 的 ESP8266

使用第三方開放原始碼程式庫 - Arduino core for ESP8266 WiFi chip(ESP8266 WiFi 晶片專用 Arduino Core): https://github.com/esp8266/Arduino

程式範例:
https://github.com/qnap-dev/qnap-qiot-sdks/blob/master/projects/esp8266-example/arduino-core/mqtt-esp8266-example/mqtt-esp8266-example.ino

我們以 NodeMCU 為範例(與其他 ESP8266 封裝晶圓相同),請自行修改電路連線。 下面是參考圖:


請根據您的 resourceinfo.json 檔案修改以下內容:

此段程式碼管理代表下列程序的資料:接收訊息,然後控制 LED 燈(例如:若接收資料值為 1,則開啟 LED 燈)。

此段程式碼管理首次連線與重新連線。 也可在此設定「訂閱」。

這段程式碼管理下列主要工作:將輸入訊息包裝成 {"value":"0"} 與 {"value":"1"},然後發佈至 QIoT Suite Lite。

設定完畢後,請點擊按鈕,LED 燈隨即開啟。 與此同時, QIoT Suite Lite 儀表板的按鈕也將開啟(如下所示):


 

使用 AT 指令搭配 Arduino 的 ESP8266

使用第三方開放原始碼程式庫- WiFiEsp: https://github.com/bportaluri/WiFiEsp

程式範例:
https://github.com/qnap-dev/qnap-qiot-sdks/blob/master/projects/esp8266-example/at-command-with-arduino/mqtt-esp8266-Wifiesp-example/mqtt-esp8266-Wifiesp-example.ino

我們以 Seeeduino 為範例(與其他 Arduino Uno 開發板相同)

注意: ESP-01 僅支援 3.3V,因此在使用 Seeeduino 時,請將電壓電更為 3.3V。 (使用 Arduino Uno 或其他開發版時,請自行修改電路連線。 下面是參考圖)。


請根據您的 resourceinfo.json 檔案修改以下內容:

此段程式碼管理代表下列程序的資料:接收訊息,然後控制 LED 燈(例如:若接收資料值為 1,則開啟 LED 燈)。

此段程式碼管理首次連線與重新連線。 也可在此設定「訂閱」。

這段程式碼管理下列主要工作:將輸入訊息包裝成 {"value":"0"} 與 {"value":"1"},然後發佈至 QIoT Suite Lite。

設定完畢後,請點擊按鈕,LED 燈隨即開啟。 與此同時, QIoT Suite Lite 儀表板的按鈕也將開啟(如下所示):


更多教學文:

如何連接 iFrog LoRa 到 QNAP QIoT Suite Lite?

如何使用 CoAP 连接到 QIoT Suite Lite?

如何使用 MQTTS 連接到 QNAP NAS, QIoT Suite 教學文

arrow
arrow
    創作者介紹
    創作者 tttt 的頭像
    tttt

    觀察筆記

    tttt 發表在 痞客邦 留言(0) 人氣()