共用方式為


將 Azure IoT Edge 裝置連線至 Azure IoT Central 應用程式

Azure IoT Edge 會將雲端分析和自定義商業規則從雲端移至您的裝置。 這個方法可讓您的雲端解決方案專注於商務見解,而不是資料管理。 將您的商務邏輯封裝到標準容器中,以擴充您的 IoT 解決方案,然後將這些容器部署到您的裝置,並從雲端進行監視。

本文章說明:

  • 使用IoT Central的IoT Edge閘道模式。
  • IoT Edge 裝置如何連線到 IoT Central 應用程式。
  • 如何使用IoT Central來管理IoT Edge裝置。

若要深入瞭解 IoT Edge,請參閱 什麼是 Azure IoT Edge?

IoT Edge

使用 Azure IoT Edge 的 Azure IoT Central

IoT Edge 是由三個元件所組成:

  • IoT Edge 模組 是執行 Azure 服務、合作夥伴服務或您自己的程式代碼的容器。 模組會部署到IoT Edge裝置,並在這些裝置上本機執行。 部署指令清單會指定要部署到IoT Edge裝置的模組。
  • IoT Edge 運行時間會在每個 IoT Edge 裝置上執行,並管理部署到每個裝置的模組。 運行時間包含兩個 IoT Edge 模組: IoT Edge 代理程式和 IoT Edge 中樞
  • 雲端式介面可讓您在遠端監視及管理 IoT Edge 裝置。 IoT Central 是雲端介面的範例。

IoT Central 可針對 IoT Edge 裝置啟用下列功能:

  • 部署指令清單管理。 IoT Central 應用程式可以管理部署指令清單的集合,並將其指派給裝置。
  • 用來描述IoT Edge裝置功能的裝置範本,例如:
    • 每個 IoT Edge 模組傳送的遙測。
    • 每個 IoT Edge 模組報告的屬性。
    • 每個 IoT Edge 模組都會回應的命令。
    • IoT Edge 閘道裝置與下游裝置之間的關聯性。
    • 未儲存在 IoT Edge 裝置上的雲端屬性。
    • 裝置檢視和表單。
  • 使用 Azure IoT 裝置佈建服務大規模佈建 IoT Edge 裝置的功能。
  • 規則與動作。
  • 自訂儀表板和分析。
  • 從 IoT Edge 裝置持續匯出遙測資料。

IoT Edge 裝置可以是:

  • 由自定義模組組成的獨立裝置。
  • 網關裝置,具有連線到它的下游裝置。 閘道裝置可以包含自定義模組。

IoT Edge 裝置和IoT Central

IoT Edge 裝置可以使用 共用存取簽章 令牌或 X.509 憑證向 IoT Central 進行驗證。 您可以在IoT Central中第一次連線之前手動註冊 IoT Edge 裝置,或使用裝置布建服務來處理註冊。 若要深入瞭解,請參閱 裝置連線的方式。

IoT Central 選擇性地使用 裝置範本 來定義IoT Central與IoT Edge裝置的互動方式。 例如,裝置範本會指定:

  • IoT Edge 裝置傳送的遙測和屬性類型,讓IoT Central可以解譯它們並建立視覺效果。
  • IoT Edge 裝置所回應的命令,讓 IoT Central 可以顯示 UI 供操作員用來呼叫命令。

如果沒有與裝置相關聯的裝置範本,遙測和屬性值會顯示為 未建立 的數據。 不過,您仍然可以使用IoT Central資料匯出功能,將遙測和屬性值轉送至其他後端服務。

IoT Edge 部署指令清單

在 IoT Edge 中,您會以模組的形式部署和管理商業規則。 IoT Edge 模組是 IoT Edge 所管理的最小計算單位,可包含 Azure 串流分析之類的 Azure 服務,或您自己的解決方案特定程式代碼。

IoT Edge 部署指令清單 會列出要部署在裝置上的IoT Edge模組,以及如何設定它們。

在 Azure IoT Central 中,流覽至 Edge 指令清單 ,以匯入和管理解決方案中 IoT Edge 裝置的部署指令清單。

下列代碼段顯示範例 IoT Edge 部署指令清單:

{
  "modulesContent": {
    "$edgeAgent": {
      "properties.desired": {
        "schemaVersion": "1.0",
        "runtime": {
          "type": "docker",
          "settings": {
            "minDockerVersion": "v1.25",
            "loggingOptions": "",
            "registryCredentials": {}
          }
        },
        "systemModules": {
          "edgeAgent": {
            "type": "docker",
            "settings": {
              "image": "mcr.microsoft.com/azureiotedge-agent:1.0.9",
              "createOptions": "{}"
            }
          },
          "edgeHub": {
            "type": "docker",
            "status": "running",
            "restartPolicy": "always",
            "settings": {
              "image": "mcr.microsoft.com/azureiotedge-hub:1.0.9",
              "createOptions": "{}"
            }
          }
        },
        "modules": {
          "SimulatedTemperatureSensor": {
            "version": "1.0",
            "type": "docker",
            "status": "running",
            "restartPolicy": "always",
            "settings": {
              "image": "mcr.microsoft.com/azureiotedge-simulated-temperature-sensor:1.0",
              "createOptions": "{}"
            }
          }
        }
      }
    },
    "$edgeHub": {
      "properties.desired": {
        "schemaVersion": "1.0",
        "routes": {
            "route": "FROM /* INTO $upstream"
        },
        "storeAndForwardConfiguration": {
          "timeToLiveSecs": 7200
        }
      }
    },
    "SimulatedTemperatureSensor": {
      "properties.desired": {
           "SendData": true,
           "SendInterval": 10
      }
    }
  }
}

在先前的代碼段中,您可以看到:

  • 有三個模組。 出現在每個部署指令清單中的IoT Edge代理程式和IoT Edge中樞系統模組。 自定義 SimulatedTemperatureSensor 模組。
  • 公用模組映像會從不需要任何認證的 Azure Container Registry 存放庫提取。 針對私人模組映像,將容器登錄認證設定為用於 registryCredentials IoT Edge代理程式模組的設定中。
  • 自訂 SimulatedTemperatureSensor 模組有兩個可寫入的屬性 "SendData": true"SendInterval": 10

下列螢幕快照顯示此已匯入 IoT Central 的部署指令清單:

顯示匯入環境感測器部署指令清單的螢幕快照。

如果您的應用程式使用 組織,您可以將部署指令清單指派給特定組織。 上一個螢幕快照顯示指派給 市集管理員/美洲 組織的部署指令清單。

若要瞭解如何使用 Edge指令清單 頁面,並將部署指令清單指派給IoT Edge裝置,請參閱 管理IoT Central 應用程式中的IoT Edge部署指令清單。

管理未指派的裝置

沒有相關聯裝置範本的IoT Edge裝置稱為 未指派 的裝置。 您無法使用IoT Central功能,例如儀錶板、裝置群組、分析、規則,以及具有未指派裝置的作業。 不過,您可以搭配未指派的裝置使用下列功能:

  • 檢視原始數據,例如遙測和屬性。
  • 呼叫裝置命令。
  • 讀取和寫入屬性。

顯示未指派裝置功能的螢幕快照。

您也可以在未指派的裝置上管理個別模組:

此螢幕快照顯示管理未指派裝置上模組的選項。

IoT Edge 裝置範本

IoT Central 裝置範本會使用模型來描述IoT Edge裝置的功能。 裝置範本是IoT Edge裝置的選擇性範本。 裝置範本可讓您使用IoT Central功能,例如儀錶板和分析,與遙測、屬性和命令互動。 下圖顯示IoT Edge裝置的模型結構:

此圖顯示連線至IoT Central之IoT Edge裝置的模型結構。

IoT Central 會將 IoT Edge 裝置模型化,如下所示:

  • 每個 IoT Edge 裝置範本都有功能模型。
  • 針對部署指令清單中列出的每個自定義模組,如果您想要使用IoT Central與該模組互動,請新增模組定義。
  • 模組功能模型會實作一或多個模組介面。
  • 每個模組介面都包含遙測、屬性和命令。

您可以根據裝置指令清單中定義的模組和屬性來產生基本功能模型。 若要深入瞭解,請參閱 將模組和屬性新增至裝置範本

IoT Edge 閘道模式

IoT Central 支援下列 IoT Edge 裝置模式:

IoT Edge 作為透明網關

下游裝置會透過自己的身分識別,透過網關聯機到IoT Central。

IoT Edge 作為透明網關

IoT Edge 裝置會在IoT Central 中布建,以及連線到IoT Edge裝置的下游裝置。 目前不支援透過閘道布建下游裝置的運行時間支援。

IoT Edge 中樞模組的行為就像 IoT Central,並處理 IoT Central 中註冊裝置的連線。 從下游裝置傳遞至IoT Central的訊息,就好像它們之間沒有網關一樣。 在透明閘道中,您無法使用自訂模組來操作來自下游裝置的訊息。

注意

IoT Central 目前不支援將 IoT Edge 裝置當作下游裝置,連線到 IoT Edge 透明閘道。 這是因為連線到 IoT Central 的所有裝置都會使用裝置佈建服務 (DPS) 佈建,而 DPS 目前不支援巢狀 IoT Edge 情節。

重要

IoT Central 不支援連線到 IoT Edge 透明閘道的下游裝置進行 X.509 憑證驗證。

IoT Edge 作為通訊協議轉譯閘道

此模式可讓您連線無法使用IoT Central支援的任何通訊協定的裝置。

IoT Edge 作為通訊協議轉譯閘道

IoT Edge 裝置會布建在 IoT Central 中,而來自下游裝置的任何遙測都會以來自 IoT Edge 裝置的方式表示。 未在IoT Central中布建連線到IoT Edge裝置的下游裝置。

IoT Edge 作為身分識別轉譯網關

下游裝置會連線到閘道中的模組,為它們提供IoT Central裝置身分識別。

IoT Edge 作為身分識別轉譯網關

IoT Edge 裝置會在IoT Central 中布建,以及連線到IoT Edge裝置的下游裝置。 目前,IoT Central 沒有閘道的運行時間支援,可提供身分識別和布建下游裝置。 如果您攜帶自己的身分識別翻譯模組,IoT Central 可以支援此模式。

與閘道和模組的下游裝置關聯性

如果下游裝置透過 IoT Edge中樞 模組連線到IoT Edge閘道裝置,IoT Edge裝置就是透明閘道:

透明閘道的圖表

如果下游裝置透過自定義模組連線到IoT Edge閘道裝置,IoT Edge裝置就是翻譯閘道。 在下列範例中,下游裝置會透過 執行通訊協定轉譯的Modbus 自定義模組進行連線:

自定義模組連線的圖表

下圖顯示透過這兩種類型的模組連線到IoT Edge閘道裝置。 在此案例中,IoT Edge 裝置既是透明又翻譯閘道:

使用兩個連接模組進行連線的圖表

下游裝置可以透過多個自定義模組連線到IoT Edge閘道裝置。 下圖顯示透過Modbus自定義模組、BLE 自定義模組和IoT Edge中樞模組連線的下游裝置:

使用多個自定義模組連線的圖表

若要深入瞭解IoT Edge閘道模式,請參閱 IoT Edge裝置如何作為閘道使用。

部署IoT Edge運行時間

若要瞭解您可以在何處執行IoT Edge運行時間,請參閱 Azure IoT Edge 支援的系統

您也可以在下列環境中安裝 IoT Edge 執行時間:

監視 IoT Edge 裝置

若要瞭解如何從遠端監視 IoT Edge 車隊,請參閱 收集及傳輸計量

下一步

建議的下一個步驟是瞭解如何 開發您自己的IoT Edge模組