開始使用 Arduino Yun (Python)


透過本篇教學文章,您將瞭解 Arduino Yun(執行 Linux)的基本使用方法。 接著您將學習如何使用 QIoT Suite Lite 順暢連接裝置與 QNAP NAS。 本教學範例使用 DHT11 濕度溫度感測器


1. 設定裝置


1.1 下載 Arduino IDE



1.2 設定和測試裝置


若是初次使用 Arduino Yun,必須按照下列步驟進行組合。

  • 使用 USB 連接 Arduino Yun 與您的電腦。

  • 開啟您的 Arduino IDE 並尋找〔Blink〕(閃爍)範例。

  • 設定開發板:

  • 設定連接埠:

  • 驗證並上傳〔Blink〕(閃爍)範例至 Arduino Yu

  • 上傳程式碼至 Arduino Yun 之後,請查看 Arduino Yun,您應可看見 L13 閃爍不停:

  • 將 DHT11 感測器分別連接至 Arduino Yun 上的「Ground」、「5V」及「Pin 2(Digital)」。


1.3 取得 Arduino Yun 的IP 位址



  • 按住 Wi-Fi 重設按鈕 5 秒。

  • 前往您的 Wi-Fi 設定並選擇「Arduino-Yun-XXXXXXX」(「XXXXXXX」是 Arduino Yun 的 MAC 位址)。

  • 開啟瀏覽器並前往「http://192.168.240.1」或「http://arduino.local」。 預設的密碼為「arduino」。

  • 完成開發板設定,然後將 Arduino Yun 連接至您正在使用的路由器。 略過〔API setting〕(API 設定)並點擊〔Save〕(儲存)。

  • 在您的電腦將 Wi-Fi 網路變更為您的路由器,如此您的 NAS 與 Arduino 就會位於相同的區域網路。


1.4 安裝 Arduino Yun 的開發工具



  • 從 http://arduino.local 開啟終端機

  • 以使用者名稱「root」和您的密碼登入。 預設的密碼為「arduino」。

  • 輸入下列指令以安裝 PIP 與 MQTT 程式庫。


2. 在 QIoT Suite Lite 中建立您的裝置


2.1 安裝 QIoT Suite Lite



  • 您可從 App Center 安裝 QIoT Suite Lite。

  • 啟動並登入 QIoT Suite Lite。 預設的使用者名稱與密碼為「admin」。


2.2 建立新的 IoT 應用


IoT 應用由物體、規則及儀表板組合而成。 建議您先在 IoT 應用中建立「物體」。 透過此 IoT 應用,您可記錄與 NAS 連接的所有裝置。

規則可讓 IoT 應用收集、處理及分析由相連裝置產生的資料,然後採取因應動作。 規則可以套用至一或多個裝置所產生的資料,並且同時採取一或多個動作。

集結上述所有元素後,使用者便可擁有完整的 IoT 應用環境。



如果這是您初次使用 QIoT Suite Lite,請點擊〔快速設定精靈〕以啟動快速設定精靈。 閱讀完簡介後,請點擊〔下一步〕



 



  • 建立新的 IoT 應用

    • 輸入 IoT 應用的名稱(例如: 「app_1」)。

    • 規則名稱和儀表板名稱將依據 IoT 應用的名稱自動產生。

    • 點擊〔下一步〕



  • 點擊〔+ 新增〕以新增此應用裝置。

  • 點擊〔+ 新增〕之後,在〔新增物體〕中:

    • 在〔新增〕屬性內輸入您裝置的名稱(例如: 「arduino」)以及裝置資訊(例如序號與製造商)。

    • 如果 QIoT 已支援您的裝置(Arduino Yun、Raspberry Pi、Edison,以及 Linkit 7688 (Duo)),請選擇預先定義的物體類型。

    • 點擊〔新增〕。



  • 輸入裝置的 IP 位址、使用者名稱及密碼,然後點擊「連接」圖示。 QIoT Suite Lite 將檢查裝置的連線。 驗證連線之後,點擊〔下一步〕。

  • 〔資源〕中點擊〔新增資源〕

  • 〔新增物體資源〕中:

    • 在〔資源名稱〕與〔資源 ID〕中輸入感測器的名稱與 ID。 請注意,此資源 ID 將用於建立 QIoT 代理程式中的主題。 對裝置來說,此 ID 不得重複,亦即相同的裝置不允許有重複的資源 ID。



  • 〔API 金鑰〕中:

    • 若要將 QIoT 儀表板 Widget 嵌入網頁,或者從第三方應用程式存取 QIoT API,請前往〔API 金鑰〕分頁並點擊〔產生新的 API 金鑰〕。 點擊〔完成〕



  • 現在您的 IoT 應用已建立完成。 Node.js 範例程式碼與相關檔案(憑證、資源資訊)將上傳至您裝置的指定路徑。

  • 範例儀表板會隨即建立。

  • 前往〔規則〕分頁定義流程或規則,藉此對裝置送出的資料設定資料處理模式以及在儀表板中的呈現方式。


3. 使用 MQTTS 連接裝置與 QIoT Suite Lite


3.1 執行範例程式碼



  • 開啟電腦上的終端機應用程式(例如: PuTTY)。 使用 SSH 連線到您的裝置,然後輸入存放範例程式碼的資料夾(例如: /home/root/bundle)。

  • 若要安裝範例程式碼相依項,請輸入以下指令:

  • 執行範例程式碼

  • 裝置將傳送訊息至「temp」主題(或您定義的主題)。


3.2 其他的通訊協定



  • 點擊〔連接裝置〕

  • 您可以選擇其他通訊協定。

  • 使用 SSH 連線到您的裝置,然後輸入以下指令:


4. 整合 Power BI


4.1 取得您的第一個 Power BI 帳號



  • 前往 https://powerbi.microsoft.com/en-us/ 免費註冊 Power BI 帳號

  • 完成註冊流程後,您會前往以下頁面;您可以按下〔My workspace〕(我的工作區),接著會出現〔skip for now〕(現在略過)按鈕。 您可以點擊〔skip for now〕(現在略過),開始建立資料集。


4.2 設定串流資料集 API



  • 建立〔Datasets〕(資料集)

    • 點擊右上角的〔Create〕(建立)

    • 點擊〔Streaming dataset〕(串流資料集)



  • 選擇〔API〕作為資料來源,然後點擊〔Next〕(下一步)。

  • 定義您的串流值(例如 temp、maxm、in),然後您將在文字方塊中得到 JSON 結果。 我們將使用此 JSON 碼推送資料至 QIoT Suite Lite 應用。 點擊〔Create〕(建立)即可完成。

  • 一旦建立資料串流後,你會獲得 REST API URL;IoT 應用可使用 POST 要求呼叫此 URL,將您的即時資料推送至您建立的串流資料集。


4.3 設定 IoT 應用中的 NodeRED 節點



  • 在 QIoT Suite 中建立 IoT 應用。

  •  以下是您的第一個 Node-RED 流程,接著您可以開始建立自己的 IoT 流程。 如需深入瞭解 Node-RED,請瀏覽 https://nodered.org/

  • 在您開始發佈即時資料至 Power BI 之前, 我們需要〔function〕(函數)節點以轉換 IoT 資料為串流資料集。 您可以在此將 msg.payload 取代為您的 JSON 資料集。

  • 函數程式碼如下所示:

  • 我們需要〔http request〕(http 要求)節點來協助推送即時資料至 Power BI。 您只需拖放〔http request〕(http 要求)節點,使其連至〔function〕(函數)節點的尾巴即可。

  • 複製並貼上您從 Power BI 主控台取得的 REST API URL,然後將 http 方法設為 POST。 點擊〔Deploy〕(部署)以儲存變更

  • 您的 Node-RED 流程如下所示。


4.4 新增圖磚以顯示即時資料



  • 建立〔Dashboard〕(儀表板)

    • 點擊畫面右上角的〔Create〕(建立)

    • 然後點擊〔Dashboard〕(儀表板)

    • 輸入儀表板的名稱,然後點擊〔Create〕(建立)即可完成建立儀表板。



  • 點擊畫面右上角的〔Add tile〕(新增圖磚)

  • 選擇〔CUSTOM STREAMING DATA〕(自訂串流資料)並點擊〔Next〕(下一步)。

  • 選擇資料集並點擊〔Next〕(下一步)。

  • 選擇圖像化顯示類型(如衡量工具),然後設定數值、最大值和最小值。

    您將擁有可供操作的串流資料集,並取得即時衡量工具(如下圖所示)。


請前往 QNAP github 取得 QIoT Suite Lite 範例程式碼。「QNAP-Github
arrow
arrow
    全站熱搜

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