Azure IoT Hub 實做及工具使用

上一篇介紹了Azure IoT Hub的基礎概念以及計價方式,接下來就是實際連線到IoT Hub並且使用Microsoft針對IoT Hub所開發的工具: Azure IoT Explorer,IoT Hub是一個具有雙向溝通並且具備完整身分驗證功能的收取大量IoT資料的服務,下面就來介紹如何建立Azure IoT Hub以及如何傳送裝置訊息到Azure

 

  1. 開啟Azure Portal,並在上方搜尋IoT Hub,第一個選項即是此服務
  2. 點選IoT Hub並開始建置服務,首先會看到基本的資料填寫,Resouce Group代表著要把IoT Hub建立在哪個群組內,通常一個專案會有自己專屬的Resource Group,Region則是可以選擇把IoT Hub服務開在哪一個Azure區域內,預設是"(US)East US",離台灣最近的區域則是香港的資料中心,代號是"(Asia Pacific)East Asia",最後填上你要給IoT Hub的名稱
  3. 接下來要設定的是IoT Hub的單位和層級,分為Basic Tier, Standard Tier, Free Tier,Free Tier每個帳戶只能有一個,我們選擇S1:Standard Tier,下方的Numbe of SI IoT Hub units,代表的是要開的"S1 IoT Hub"單位,如果選擇2,則IoT Hub的Volume就會變成S1的2倍,完成後按下Review+Create
  4. 最後會顯示要建立的IoT Hub相關資訊,如果正確的話,就可以按下Create,正式建立服務
  5. 建立完成後,我們來試試把一個裝置連上IoT Hub; 先選擇Shared access polices,並在右方的權限選擇"IoT Hub Owner",點選進入後會看到下圖,按下"Connecting String - Primary Key"右方的複製,此複製的字串就是用來連接此IoT Hub所使用的金鑰,我們需要根據不同的用途給予不同的金鑰授權,此處因是範例,所以我們給予的是最高權限的"IoT Hub Owner"
  6. 在準備要連線的裝置上的安裝Visual Studio Code, Azure IoT Explorer和Python 3.6版
    VS Code: https://code.visualstudio.com/
    Azure IoT Explorer: https://github.com/Azure/azure-iot-explorer/releases
    Python: https://www.python.org/downloads/

     
  7. 打開Azure IoT Explorer,輸入在Azure Portal中複製的IoT Hub Connection String,並按下Connect,此時Azure IoT Explorer就會連上剛剛建立的IoT Hub,並可以透過Azure IoT Explorer來監控/管理要連線到IoT Hub的裝置
  8. Azure IoT Explorer連上IoT Hub後,我們終於要開始把裝置連接上雲了,首先按下Azure IoT Explorer中的New,並輸入你要新增的裝置名稱,並按下Create
  9. 回到裝置的畫面中,會看到剛剛建立的裝置名稱出現在列表中
  10. 按下裝置名稱後會看到關於此裝置的相關資訊,包含了裝置身分/裝置副本/Device to Cloud資料/Cloud to Device資料,在裝置身分(Device identity)的頁面複製"Primary connection string"的字串,要注意的是,這組Connection String是"此裝置的連線金鑰",用來連線到IoT Hub,與之前取得的IoT Hub金鑰是不一樣的
  11. 打開VS Code,並且在下方的Terminal中輸入"git clone https://github.com/Azure-Samples/azure-iot-samples-python",此指令會下載使用Python 連線到IoT Hub的Sample,我們稍後將使用此Sample連線到Azure IoT Hub
  12. 使用VS Code開啟SimulatedDevice.py檔案,並把Sample中的CONNECTION_STRING替換成剛剛複製的"裝置的連線金鑰"
  13. 修改完成後,在VS Code內按下執行,下方的TERMINAL中會顯示出目前裝置傳送到IoT Hub的資訊
  14. 回到Azure IoT Explorer,點選"Telemetry",就會看到目前裝置狀態是已連線,到這邊,我們已經成功的把一台裝置連上了IoT Hub,並且使用IoT Explorer可以看到裝置的狀態和裝置所傳送的資訊,完成了最基本的裝置資料上雲的步驟,下一篇我們將繼續介紹Azure IoT Hub 的Cloud to Device功能