

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AWS IoT 運作方式
<a name="aws-iot-how-it-works"></a>

 AWS IoT 提供雲端服務和裝置支援，您可以用來實作 IoT 解決方案。 AWS 提供許多雲端服務以支援以 IoT 為基礎的應用程式。因此，為了幫助您了解從何處開始，本節提供了基本概念的圖表和定義，以便向您介紹 IoT 世界。

## IoT 的宇宙
<a name="iot-universe"></a>

一般而言，物聯網 (IoT) 是由此圖表所示的關鍵元件所組成。

![\[IoT 的宇宙\]](http://docs.aws.amazon.com/zh_tw/iot/latest/developerguide/images/iot-universe.png)


### 應用程式
<a name="iot-universe-apps"></a>

 應用程式可讓最終使用者存取 IoT 裝置，以及這些裝置連接的雲端服務提供的功能。

### 雲端服務
<a name="iot-universe-cloud"></a>

雲端服務是連接到網際網路之分配式、大規模的資料儲存和處理服務。範例包括：
+ IoT 連接和管理服務 

  *AWS IoT 是 IoT 連線和管理服務的範例*。
+ 運算服務，例如 Amazon Elastic Compute Cloud 和 AWS Lambda
+ 資料庫服務，例如 Amazon DynamoDB

### 通訊
<a name="iot-universe-comms"></a>

 裝置會使用各種技術和通訊協定與雲端服務進行通訊。範例包括：
+ Wi-Fi/寬頻網際網路
+ 寬頻行動數據
+ 窄頻行動數據
+ 長距離廣域網絡 (LoRaWAN)
+ 專屬 RF 通訊

### Devices
<a name="iot-universe-devices"></a>

裝置是一種管理介面和通訊的硬體類型。裝置通常位於所監控和控制的真實世界介面附近。裝置可包含運算和儲存資源，例如微控制器、CPU、記憶體。範例包括：
+ Raspberry Pi
+ Arduino
+ 語音介面助理
+ LoRaWAN 和裝置
+ Amazon Sidewalk 裝置
+ 自訂 IoT 裝置

### 介面
<a name="iot-universe-interfaces"></a>

 介面是將裝置連接到實體世界的元件。
+ 使用者介面

  允許裝置和使用者彼此通訊的元件。
  + 文字輸入介面

    讓使用者可以和裝置通訊

    範例：鍵盤、按鈕
  + 輸出介面

    讓裝置可以和使用者通訊

    範例：字母數字顯示器、圖形顯示器、指示燈、鬧鐘
+ 感測器

  測量或感測外部世界中的某些東西，並以裝置能理解的方式輸入的元件。範例包括：
  + 溫度感測器 (將溫度轉換為類比或數位訊號)
  + 濕度感測器 (將相對濕度轉換為類比或數位訊號)
  + 類比數位轉換器 (將類比電壓轉換為數值)
  + 超音波距離測量單元 (將距離轉換為數值)
  + 光學感測器 (將光電位轉換為數值)
  + 相機 (將影像資料轉換為數位資料)
+ 致動器

  輸出元件，裝置可使用該元件控制外部世界的東西。範例包括：
  + 步進馬達 (將電信號轉換為移動)
  + 繼電器 (控制高電壓和電流)

## AWS IoT 服務概觀
<a name="aws-iot-components"></a>

在 IoT 世界中， AWS IoT 提供支援與世界互動之裝置的服務，以及它們與 之間傳遞的資料 AWS IoT。 AWS IoT 是由本圖所示的服務組成，以支援您的 IoT 解決方案。

![\[AWS IoT 架構\]](http://docs.aws.amazon.com/zh_tw/iot/latest/developerguide/images/architecture-diagram.png)


### AWS IoT 裝置軟體
<a name="aws-iot-components-device"></a>

AWS IoT 提供此軟體以支援您的 IoT 裝置。

**AWS IoT 裝置 SDKs**  
[AWS IoT 裝置和行動SDKs](iot-sdks.md)可協助您有效率地將裝置連線至 AWS IoT。 AWS IoT 裝置和行動SDKs包括開放原始碼程式庫、具有範例的開發人員指南，以及移植指南，讓您可以在選擇的硬體平台上建置創新的 IoT 產品或解決方案。

**AWS IoT Device Tester**  
[AWS IoT Device Tester](https://docs.aws.amazon.com//freertos/latest/userguide/device-tester-for-freertos-ug.html) for FreeRTOS 和 AWS IoT Greengrass 是 microcontrollers 的測試自動化工具。 會 AWS IoT Device Tester 測試您的裝置，以判斷裝置是否會執行 FreeRTOS 或 ， AWS IoT Greengrass 並與 AWS IoT 服務互通。

**AWS IoT ExpressLink**  
AWS IoT ExpressLink 支援由 [AWS 合作夥伴](https://aws.amazon.com/iot-expresslink/partners/?nc=sn&loc=6)開發和提供的一系列硬體模組。連線模組包含 已 AWS驗證的軟體，可讓您更快更輕鬆地將裝置安全地連線至雲端，並與各種 AWS 服務無縫整合。如需詳細資訊，請造訪[AWS IoT ExpressLink](https://aws.amazon.com/iot-expresslink/) 概覽頁面，或查看[AWS IoT ExpressLink 程式設計人員指南](https://docs.aws.amazon.com/iot-expresslink/latest/programmersguide/elpg.html)。

**AWS IoT Greengrass**  
 [AWS IoT Greengrass](https://docs.aws.amazon.com/greengrass/) 延伸 AWS IoT 到邊緣裝置，讓他們可以根據其產生的資料在本機採取行動、根據機器學習模型執行預測，以及篩選和彙總裝置資料。 AWS IoT Greengrass 可讓您的裝置收集和分析更接近產生資料的位置的資料、自動回應本機事件，以及安全地與本機網路上的其他裝置通訊。您可以使用 AWS IoT Greengrass ，使用稱為元件的預先建置軟體模組來建置邊緣應用程式，這些模組可將邊緣裝置連線至 AWS 服務或第三方服務。

**FreeRTOS**  
[FreeRTOS](https://docs.aws.amazon.com//freertos/) 是一個適用於微控制器的開放原始碼即時作業系統，可讓您將小型、低功耗邊緣裝置納入您的 IoT 解決方案。FreeRTOS 包含一個內核，以及一組不斷增長，並能支援許多應用程式的程式庫。FreeRTOS 系統可安全地將您的小型低功耗裝置連接至 [AWS IoT](https://docs.aws.amazon.com//iot/)，並支援執行 [AWS IoT Greengrass](https://docs.aws.amazon.com//greengrass/) 且功能更強大的邊緣裝置。

### AWS IoT 控制服務
<a name="aws-iot-components-control"></a>

連線至下列 AWS IoT 服務，以管理 IoT 解決方案中的裝置。

**AWS IoT Core**  
[AWS IoT Core](https://docs.aws.amazon.com//iot/) 是一種受管雲端服務，可讓連線裝置安全地與雲端應用程式和其他裝置互動。 AWS IoT Core 可支援許多裝置和訊息，並可處理這些訊息並將其路由至 AWS IoT 端點和其他裝置。透過 AWS IoT Core，您的應用程式即使未連線也能與所有裝置互動。

**AWS IoT Core Device Advisor**  
[AWS IoT Core Device Advisor](https://docs.aws.amazon.com//iot/latest/developerguide/device-advisor.html) 是一種以雲端為基礎的全受管測試功能，可在裝置軟體開發期間驗證 IoT 裝置。Device Advisor 提供預先建置的測試，可讓您在將裝置部署至生產環境之前 AWS IoT Core，用來驗證 IoT 裝置是否有可靠且安全的連線能力。

**AWS IoT Device Defender**  
[AWS IoT Device Defender](https://docs.aws.amazon.com//iot-device-defender/) 可協助您保護 IoT 裝置機群的安全。 AWS IoT Device Defender 會持續稽核 IoT 組態，以確保它們不會偏離安全最佳實務。 AWS IoT Device Defender 會在偵測到任何可能造成安全風險的 IoT 組態漏洞時傳送提醒，例如在多個裝置之間共用身分憑證，或是具有已撤銷身分憑證的裝置嘗試連線至 [AWS IoT Core](https://aws.amazon.com/iot-core/)。

**AWS IoT 裝置管理**  
[AWS IoT Device Management](https://docs.aws.amazon.com//iot-device-management/) 服務可協助您追蹤、監控和管理組成裝置機群的連線裝置數量。 AWS IoT Device Management 服務可協助您確保 IoT 裝置在部署後正常運作且安全。它們還提供安全通道功能，以存取您的裝置、監控其健全狀況、偵測和遠端進行問題疑難排解，以及管理裝置軟體和韌體更新的服務。

### AWS IoT 資料服務
<a name="aws-iot-components-data"></a>

分析 IoT 解決方案中裝置的資料，並使用下列 AWS IoT 服務採取適當的動作。

**Amazon Kinesis Video Streams**  
[Amazon Kinesis Video Streams](https://docs.aws.amazon.com//kinesisvideostreams/latest/dg/what-is-kinesis-video.html) 可讓您將即時影片從裝置串流到 AWS 雲端，在雲端中長期存放、加密和編製索引，讓您透過easy-to-use存取資料。 APIs 您可以使用 Amazon Kinesis Video Streams 從數百萬個來源擷取大量即時影片資料，包括智慧型手機、監視攝影機、網路攝影機、汽車內建攝影機、空拍機及其他來源。Amazon Kinesis Video Streams 使您能夠播放影片，進行即時和隨選點播，並通過 Amazon Rekognition Video 和 ML 架構資料庫整合，快速利用視覺化運算和影片分析的方式建置應用程式。您也可以傳送非影片時間序列化資料，例如音訊資料、熱影像、深度資料、RADAR 資料等。

**Amazon Kinesis Video Streams with WebRTC**  
[Amazon Kinesis Video Streams with WebRTC](https://docs.aws.amazon.com//kinesisvideostreams-webrtc-dg/latest/devguide/what-is-kvswebrtc.html) 以全受管功能提供符合標準的 WebRTC 實作。您可以使用 Amazon Kinesis Video Streams with WebRTC 安全地即時串流媒體，或在任何攝影機 IoT 裝置與符合 WebRTC 標準的行動或 Web 播放器之間，執行雙向音訊或視訊互動。因為是全受管功能，您不需要建置、執行或擴展任何與 WebRTC 相關的雲端基礎設施，例如訊號或媒體轉送伺服器，即可在應用程式和裝置之間安全地串流媒體。您可以使用 Amazon Kinesis Video Streams with WebRTC，輕鬆建置應用程式進行即時點對點媒體串流，或在攝影機 IoT 裝置、Web 瀏覽器和行動裝置之間進行即時音訊或視訊互動，以滿足各種使用案例。

**AWS IoT 活動**  
[AWS IoT 事件](https://docs.aws.amazon.com//iotevents/)會偵測和回應來自 IoT 感應器和應用程式的事件。事件是識別比預期更複雜情況的資料模式，例如使用移動訊號來啟用燈光和安全攝影機的運動偵測器。 AWS IoT 事件會持續監控來自多個 IoT 感應器和應用程式的資料，並與其他服務整合 AWS IoT Core，例如 IoT SiteWise、DynamoDB 等，以實現早期偵測和獨特的洞察。

**AWS IoT FleetWise**  
[AWS IoT FleetWise](https://docs.aws.amazon.com//iot-fleetwise/latest/developerguide/what-is-iotfleetwise.html) 是一項受管服務，可用來近乎即時地收集車輛資料並將其傳輸至雲端。透過 AWS IoT FleetWise，您可以輕鬆地從使用不同通訊協定和資料格式的車輛收集和組織資料。 AWS IoT Fleetwise 有助於將低級別訊息轉換為人類可讀的值，並標準化雲端資料格式，以便進行資料分析。您還可以定義資料蒐集的方案，控制要蒐集的車輛資料，以及何時將資料傳輸至雲端。

**AWS IoT SiteWise**  
[AWS IoT SiteWise](https://docs.aws.amazon.com//iot-sitewise/) 透過提供在您設施中的閘道器上執行的軟體大規模收集、存放、組織和監控 MQTT 訊息或 API 從產業設備傳遞的資料。閘道可安全地連線至您的現場部署資料伺服器，並自動化收集和組織資料並將其傳送至 AWS 雲端的程序。

**AWS IoT TwinMaker**  
[AWS IoT TwinMaker](https://docs.aws.amazon.com//iot-twinmaker/) 會建置實體和數位系統的營運數位分身。 AWS IoT TwinMaker 會使用來自各種真實世界感應器、攝影機和企業應用程式的測量和分析來建立數位視覺化，協助您追蹤實體工廠、建築物或工業工廠。您可以使用實際資料監控作業、診斷和糾正錯誤以及優化作業。

## AWS IoT Core 服務
<a name="aws-iot-core-services"></a>

AWS IoT Core 提供將 IoT 裝置連線至 AWS 雲端的服務，讓其他雲端服務和應用程式可以與您的網際網路連線裝置互動。

![\[的高階檢視 AWS IoT Core ，顯示裝置閘道、訊息代理程式、規則引擎、裝置影子及其提供的其他服務\]](http://docs.aws.amazon.com/zh_tw/iot/latest/developerguide/images/aws_iot_data_services.png)


下一節說明圖例中顯示的每個 AWS IoT Core 服務。

### AWS IoT Core 訊息服務
<a name="aws-iot-core-connect"></a>

 AWS IoT Core 連線服務提供與 IoT 裝置的安全通訊，並管理在 和 之間傳遞的訊息 AWS IoT。

**裝置閘道 **  
讓裝置以安全有效的方式與 AWS IoT通訊。裝置通訊由使用 X.509 憑證的安全通訊協定保護。

**訊息代理程式 **  
為裝置和 AWS IoT 應用程式提供安全機制，以互相發佈和接收訊息。您可以直接使用 MQTT 通訊協定或是經 WebSocket 的 MQTT 來發佈和訂閱。如需 AWS IoT 支援的通訊協定的詳細資訊，請參閱 [裝置通訊協定](protocols.md)。裝置和用戶端也可使用 HTTP REST 介面，將資料發佈至訊息代理程式。  
訊息中介裝置會將裝置資料分發至已訂閱的裝置，以及其他 AWS IoT Core 服務，例如 Device Shadow 服務和規則引擎。

**AWS IoT Core for LoRaWAN**  
AWS IoT Core for LoRaWAN 可讓您將 LoRaWAN 裝置和閘道連接至 來設定私有 LoRaWAN 網路，而不需要開發和操作 LoRaWAN 網路伺服器 (LNS)。 LoRaWAN AWS 從 LoRaWAN 裝置收到的訊息會傳送至規則引擎，在此引擎中可格式化並傳送至其他 AWS IoT 服務。

**規則引擎 **  
規則引擎將訊息代理程式的資料連接至其他 AWS IoT 服務，以進行儲存和額外處理。例如，您可以插入、更新或查詢 DynamoDB 資料表，或根據您在規則引擎中定義的運算式呼叫 Lambda 函數。您可使用 SQL 型語言從訊息承載選取資料，然後處理資料並傳送至其他服務，例如 Amazon Simple Storage Service (Amazon S3)、Amazon DynamoDB 和 AWS Lambda。您還可建立將訊息重新發佈至訊息代理程式及其他訂閱者的規則。如需詳細資訊，請參閱[的規則 AWS IoT](iot-rules.md)。

### AWS IoT Core 控制服務
<a name="aws-iot-core-control"></a>

 AWS IoT Core 控制服務提供裝置安全性、管理和註冊功能。

**自訂身分驗證服務**  
您可以定義自訂授權方，使用自訂身分驗證服務和 Lambda 函數，藉以管理自己的身分驗證和授權策略。自訂授權方允許 使用承載字符身分驗證和授權策略 AWS IoT 來驗證您的裝置和授權操作。  
自訂授權方可以實作各種身分驗證策略；例如 JSON Web 權杖驗證或 OAuth 提供者標註。它們必須傳回裝置閘道用來授權 MQTT 操作的政策文件。如需詳細資訊，請參閱[自訂身分驗證和授權](custom-authentication.md)。

**裝置佈建服務**  
可讓您使用描述裝置所需資源 (*物件物件*、憑證、一或多項政策) 的範本，以佈建裝置。物件物件是登錄檔中的項目，內含描述裝置的屬性。裝置使用憑證進行身分驗證 AWS IoT。政策決定裝置在 AWS IoT可執行的操作。  
範本包含了被字典 (對應) 之值取代的變數。只要在字典中為範本的變數傳入不同的值，您就可以使用相同的範本來佈建多個裝置。如需詳細資訊，請參閱[裝置佈建](iot-provision.md)。

**群組登錄檔**  
您可利用群組，將多個裝置分類至群組來同時管理。群組也可包含群組：您可建立群組階層。您對父群組執行的任何動作都會套用至其子群組。同樣的動作也適用於父群組中的所有裝置，以及子群組中的所有裝置。授予群組的許可也會套用至該群組及其所有子群組中的所有裝置。如需詳細資訊，請參閱[使用 管理裝置 AWS IoT](iot-thing-management.md)。

**任務服務**  
可讓您定義一組遠端操作，這組操作會傳送到連接至 AWS IoT的一個或多個裝置，並在其上執行。例如，您可以定義一個任務，指示一組裝置下載並安裝應用程式或韌體更新、重新啟動、輪換憑證，或者執行遠端故障排除操作。  
欲建立任務，您必須指定要執行的遠端操作之描述，以及應執行操作的目標清單。目標可以是個別裝置、群組或兩者。如需詳細資訊，請參閱[AWS IoT 任務](iot-jobs.md)。

**登錄檔**  
整理 AWS 雲端中與每項裝置相關聯的資源。您可登錄您的裝置，且每項裝置最多可與三個自訂屬性相關聯。您也可以建立憑證和 MQTT 用戶端 ID 與每項裝置的關聯，提升您管理裝置及排解其問題的能力。如需詳細資訊，請參閱[使用 管理裝置 AWS IoT](iot-thing-management.md)。

**安全與身分服務 **  
在 AWS 雲端中提供共同的安全責任。您的裝置必須保護其憑證，才可以將資料安全地傳送至訊息代理程式。訊息代理程式和規則引擎使用 AWS 安全功能將資料安全傳送至裝置或其他 AWS 服務。如需詳細資訊，請參閱[身分驗證](authentication.md)。

### AWS IoT Core 資料服務
<a name="aws-iot-core-data"></a>

 AWS IoT Core 資料服務可協助您的 IoT 解決方案提供可靠的應用程式體驗，即使裝置並非一律連線也一樣。

**裝置影子 **  
用於存放及擷取裝置目前狀態資訊的 JSON 文件。

**Device Shadow 服務 **  
Device Shadow 服務會維護裝置的狀態，無論裝置是否在線上，都能讓應用程式與裝置通訊。裝置離線時，Device Shadow 服務將為連線應用程式管理該裝置的資料。當裝置重新連線時，它會將自己的狀態與 Device Shadow 服務中的影子同步。您的裝置還可將其目前狀態發佈至影子，以供應用程式或其他可能並非隨時隨地連線的裝置使用。如需詳細資訊，請參閱[AWS IoT Device Shadow 服務](iot-device-shadows.md)。

### AWS IoT Core 支援服務
<a name="aws-iot-core-integ"></a>

**適用於 的 Amazon Sidewalk 整合 AWS IoT Core**  
[Amazon Sidewalk](https://www.amazon.com/Amazon-Sidewalk/b?ie=UTF8&node=21328123011) 是個共享網路，可改善連線選項，協助裝置更好地共同運作。Amazon Sidewalk 支援範圍廣泛的客戶裝置，例如可找到寵物或貴重物品的裝置、提供智慧家庭安全和照明控制的裝置，及為設備和工具提供遠端診斷的裝置。適用於 的 Amazon Sidewalk 整合 AWS IoT Core 可讓裝置製造商將其 Sidewalk 裝置機群新增至 AWS IoT 雲端。  
如需詳細資訊，請參閱[AWS IoT Core for Amazon Sidewalk](https://docs.aws.amazon.com/iot-wireless/latest/developerguide/iot-sidewalk.html)。