close

開始使用 Raspberry Pi (Nodejs)




透過本篇教學文章,您將瞭解 Raspberry Pi(執行 Debian 版 Raspbian)的基本使用方法。 接著您將學習如何使用 QIoT Suite Lite 連接裝置與 QNAP NAS。

請確認您的 Raspberry Pi 與 NAS 位於相同的區域網路。


1. 將 Raspberry Pi 連接到 QNAP NAS


請設定 Raspberry Pi 裝置使用特定作業系統、設定開發環境,以及在 Raspberry Pi 部署應用。

1.1 準備項目



  1. Raspberry Pi

  2. 已安裝 NOOBS 的 SD 卡(建議使用 8GB Class 4 SD 卡)。

  3. HDMI 顯示器。

  4. USB 鍵盤和滑鼠。

  5. 電源供應器:  Pi 的 3B 模型需要至少 5V/2A 的 USB 微型電源供應器(較早模型需要至少 5V/700mA)。


1.2 設定 Raspbian



  • 將包含已解壓縮 NOOBS 檔案的 SD 卡插入 Raspberry Pi

  • 將鍵盤、滑鼠以及 HDMI 顯示器連接至 Raspberry Pi。 插上電源變壓器。 Raspberry Pi 沒有電源開關,一連上電源變壓器便會自動開啟電源。

  • 畫面將出現選單並詢問您要安裝的作業系統,以及要使用的語言和鍵盤配置。 勾選 Raspbian 旁邊的方塊,然後點擊〔Install〕(安裝)。

  • 安裝程序可能需時達 20 分鐘,完成後會重新啟動 Raspbian 桌面。

  • 設定 Wi-Fi – 在桌面環境中,從右上方的選單找出無線網路圖示,然後點擊該圖示檢視可用的 Wi-Fi 網路。

  • 要從其他裝置連接至 Raspberry Pi,您必須知道 Pi 的 IP 位址。 使用終端機(按下 Ctrl + Alt + t 開啟終端機)並輸入 hostname -I。


如需更多 Raspberry Pi 設定指南,請瀏覽: https://www.raspberrypi.org/learning/software-guide/

1.3 安裝 Nodejs 和必要程式庫



  • 安裝 Node.js v6

    請造訪 QNAP github 取得 QIoT Suite Lite 範例程式碼


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,QIoT Suite Lite 會提供精靈工具來協助您快速設定 IoT 應用。

  • 點擊〔快速設定精靈〕以啟動快速設定精靈。 在閱讀彈出視窗中的 QIoT Suite Lite 簡介後,請點擊〔下一步〕按鈕。


  • 建立新的 IoT 應用

    • 輸入 IoT 應用的名稱,例如 app_1。

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

    • 點擊〔下一步〕完成建立新的 IoT 應用



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

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

    • 在〔新增〕屬性中,輸入您裝置的名稱(例如 raspberrypi)並提供裝置資訊(例如序號與製造商)。

    • 如果 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 帳號

  • 註冊完畢後,畫面將顯示以下頁面。您可以點擊〔skip for now〕(現在略過)開始建立資料集。


4.2 設定串流資料集 API



  • 建立〔Datasets〕(資料集)

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

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

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

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

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


4.3 設定 IoT 應用中的 Node-RED 節點



  • 在 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〕(下一步)。

  • 選擇〔datasets〕(資料集),然後點擊〔Next〕(下一步)。 

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

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

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 tttt 的頭像
    tttt

    觀察筆記

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