分享方式:


裝置基礎結構與連線能力

本概觀介紹一般 Azure IoT 解決方案中裝置與雲端連線方式的重要概念。 本文也會介紹選擇性基礎結構元素,例如網路閘道和橋接器。 每個小節都包含有可提供進一步詳細資訊和指引的內容連結。

IoT Central 應用程式會在內部使用 IoT 中樞和裝置佈建服務 (DPS) 等服務。 因此,無論您是使用 IoT Central 來探索 IoT 案例,還是使用 IoT 中樞和 DPS 來建置您的解決方案,本文中的概念都適用。

下圖顯示一般 IoT 解決方案中元件的高階檢視。 本文著重於裝置與 IoT 雲端服務之間的連線,包括網路閘道和橋接器,如下圖所示。

圖表顯示高階 IoT 方案架構,醒目提示裝置連線的區域。

Primitives

Azure IoT 裝置會使用下列基本類型,與雲端服務交換資料。 裝置使用:

  • 裝置到雲端訊息,將時間序列遙測資料傳送至雲端。 例如,從連結到裝置的感應器收集到的溫度資料。
  • 裝置對應項可與雲端共用和同步處理狀態資料。 例如,裝置可以使用裝置對應項向雲端報告其控制的閥目前的狀態,以及從雲端接收所需的目標溫度。
  • 數位對應項代表數位世界中的裝置。 例如,數位對應項可以代表裝置的實體位置、功能,以及與其他裝置的關聯性。
  • 媒體檔案的檔案上傳,例如擷取的影像和視訊。 間歇性連線的裝置可以傳送遙測資料批次。 裝置可以壓縮上傳以節省頻寬。
  • 從雲端接收命令的直接方法。 直接方法可以有參數並傳回回應。 例如,雲端可以呼叫直接方法來要求裝置重新啟動。
  • 雲端到裝置的訊息會接收來自雲端的單向通知。 例如,更新已準備好下載的通知。

若要深入了解,請參閱裝置到雲端的通訊指引裝置到雲端的通訊指引

裝置對應的雲端端點

Azure IoT 中樞會公開個別裝置端點的集合,讓裝置與雲端交換資料。 這些端點包括:

  • 傳送裝置到雲端的訊息。 裝置會使用這個端點來傳送裝置到雲端的訊息。
  • 擷取和更新裝置對應項的屬性。 裝置使用此端點來存取其裝置對應項的屬性。
  • 接收直接方法要求。 裝置使用此端點來接聽直接方法的要求。

每個 IoT 中樞都有您用來將裝置連線到中樞的唯一主機名。 主機名稱的格式為 iothubname.azure-devices.net。 如果您使用其中一個裝置 SDK,就不需要知道個別端點的完整名稱,因為 SDK 提供較高層級的抽象概念。 不過,裝置必須知道其所連線 IoT 中樞的主機名稱。

裝置可以建立與 IoT 中樞的安全連線:

  • 直接建立,在此情況下,您必須提供給裝置包含主機名稱的連接字串。
  • 使用 DPS 以間接方式進行,在此情況下,裝置會連線到已知的 DPS 端點,以擷取其所指派 IoT 中樞的連接字串。

使用 IoT 中樞裝置佈建服務 (DPS) 的優點是,您不需要使用 IoT 中樞專屬的連接字串來設定所有裝置。 相反地,您可以將裝置設定為連線到已知且常見的 DPS 端點,在其中探索其連線詳細資料。 若要深入了解,請參閱裝置佈建服務

若要深入了解如何實作自動重新連線至端點,請參閱管理裝置重新連線以建立復原的應用程式

裝置連接字串

裝置連接字串會提供裝置,並提供安全地連線到 IoT 中樞所需的資訊。 連接字串包含下列資訊:

  • IoT 中樞的主機名稱。
  • 向IoT中樞註冊的裝置標識碼。
  • 裝置必須建立與 IoT 中樞安全連線的安全性資訊。

驗證

Azure IoT 裝置會使用 TLS 來驗證其所連線 IoT 中樞或 DPS 端點的真實性。 裝置 SDK 包含 DigiCert Global Root G2 TLS 憑證,他們目前需要建立與 IoT 中樞的安全連線。 若要深入了解,請參閱 IoT 中樞的傳輸層安全性 (TLS) 支援,以及 Azure IoT 中樞裝置佈建服務 (DPS) 中的 TLS 支援

Azure IoT 裝置可以使用共用存取簽章 (SAS) 權杖或 X.509 憑證向 IoT 中樞驗證自己。 建議在生產環境中使用 X.509 憑證。 若要深入了解裝置驗證,請參閱:

在裝置與 IoT 中樞之間交換的所有資料都會進行加密。

若要深入了解 IoT 解決方案的安全性,請參閱 IoT 解決方案的安全性架構

通訊協定

IoT 裝置連線到 IoT 中樞 或 DPS 端點時,可以使用下列其中一個網路通訊協定:

注意

IoT 中樞對於 MQTT 的功能支援有限。 如果您的解決方案需要 MQTT v3.1.1 或 v5 支援,建議使用 Azure 事件方格中的 MQTT 支援。 如需詳細資訊,請參閱比較 IoT 中樞和事件方格中的 MQTT 支援

若要深入了解如何為您的裝置選擇通訊協定以連線到雲端,請參閱:

產業 IoT 案例通常會使用開放式平台通訊統一架構 (OPC UA) 業界標準開放介面。 若要啟用與 Azure 雲端的連線,請使用 Azure IoT 作業。 若要深入瞭解,請參閱 什麼是 Azure IoT 作業?

連線模式

IoT 裝置用來連線到雲端的連線模式有兩種廣泛的類別:

持續連線

當您的解決方案需具備命令和控制功能時,需要持續連線。 在命令和控制情節中,IoT Central 應用程式會將命令傳送至裝置,以近乎即時的方式控制裝置行為。 持續連線會維護與雲端的網路連線,並在發生中斷時重新連線。 為使裝置持續連線至 IoT 中樞,請使用 MQTT 或是 AMQP。 IoT 裝置 SDK 可讓 MQTT 及 AMQP 通訊協定建立與 IoT 中樞之間的持續連線。

暫時性連線

暫時性連線是裝置為了將遙測資料傳送至您 IoT 中樞應用程式所建立的短暫連線。 裝置傳送遙測資料之後,它會卸除連線。 當裝置有更多要傳送的遙測資料時,它就會重新連線。 暫時連線不適用於命令和控制案例。 如果裝置用戶端只需要傳送遙測資料,則裝置用戶端就可以使用 HTTP API。

現場閘道

現場閘道 (有時稱為邊緣閘道) 通常會部署於內部且靠近您的 IoT 裝置。 現場閘道會代表您的 IoT 裝置處理與雲端的通訊。 現場閘道可以:

  • 進行通訊協定翻譯。 例如,啟用藍牙的裝置以連線到雲端。
  • 管理離線和中斷連線的案例。 例如,無法連線到雲端端點時緩衝遙測。
  • 先篩選、壓縮或匯總遙測,再將其傳送至雲端。
  • 在邊緣執行邏輯,以代表雲端中的裝置移除與執行邏輯相關聯的延遲。 例如,偵測溫度尖峰並開啟閥以作為回應。

您可以使用 Azure IoT Edge 將現場閘道部署至內部部署環境。 IoT Edge 提供一組功能,可讓您大規模部署和管理現場閘道。 IoT Edge 也提供一組模組,可讓您用來實作常見的閘道案例。 若要深入了解,請參閱 Azure IoT Edge 是什麼?

IoT Edge 裝置可與 IoT 中樞保持持續的連線。 網路閘道會將裝置遙測轉送至 IoT 中樞。 這個選項可使連線到 IoT Edge 裝置的下游裝置得以使用命令和控制。

橋接器

裝置網橋可讓連線到非 Microsoft 雲端的裝置連線到 IoT 解決方案。 非 Microsoft 雲端的範例包括 Sigfox粒子裝置雲端物聯網

開放原始碼 IoT Central 裝置橋接器會充當轉譯程式,將遙測轉送至 IoT Central 應用程式。 若要深入了解,請參閱 Azure IoT Central 裝置橋接器。 有非 Microsoft 網橋解決方案,例如 Tartabit IoT 網橋,可用來將裝置連線到 IoT 中樞。

下一步

既然您已瞭解 Azure IoT 解決方案中的裝置連線概觀,一些建議的後續步驟包括: