Amazon IoT 的工作原理 - Amazon IoT Core
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

Amazon IoT 的工作原理

Amazon IoT 提供可用于实施 IoT 解决方案的云服务和设备支持。Amazon 提供了许多云服务来支持基于 IoT 的应用程序。因此,为了帮助您了解从哪里开始,本部分提供了基本概念图表和定义,向您介绍 IoT 世界。

IoT 世界

一般来说,物联网 (IoT) 由下图所示的关键组成部分组成。


                    IoT 世界

Apps

应用程序让最终用户可以访问 IoT 设备以及与这些设备相连的云服务所提供的功能。

云服务

云服务是连接到互联网的分布式大规模数据存储和处理服务。示例包括:

  • IoT 连接和管理服务。

    Amazon IoT 是 IoT 连接和托管服务的一个示例

  • 计算服务,如 Amazon Elastic Compute Cloud 和 Amazon Lambda。

  • 数据库服务,例如 Amazon DynamoDB

Communications

设备通过使用各种技术和协议与云服务进行通信。示例包括:

  • Wi-Fi/宽带互联网

  • 宽带蜂窝数据

  • 窄带蜂窝数据

  • 远距离广域网 (LoRaWAN)

  • 专有的射频通信

Devices

设备是管理接口和通信的一种硬件。设备通常位于其监控和控制的真实接口附近。设备可以包括计算和存储资源,例如微控制器、CPU、内存。示例包括:

  • Raspberry Pi

  • Arduino

  • 语音接口助手

  • LoRaWAN 和设备

  • Amazon Sidewalk 设备

  • 自定义 IoT 设备

Interfaces

接口是将设备连接到物理世界的组件。

  • 用户接口

    允许设备和用户相互通信的组件。

    • 输入接口

      使用户能够与设备通信

      示例:键盘、按钮

    • 输出接口

      使设备能够与用户通信

      示例:字母数字显示、图形显示、指示灯、闹铃

  • 传感器

    以设备理解的方式测量或感知外部世界中的某些内容的输入组件。示例包括:

    • 温度传感器(将温度转换为模拟电压)

    • 湿度传感器(将相对湿度转换为模拟电压)

    • 模拟到数字转换器(将模拟电压转换为数值)

    • 超声波距离测量装置(将距离转换为数值)

    • 光学传感器(将光度转换为数值)

    • 相机(将图像数据转换为数字数据)

  • 执行器

    设备可用于控制外部世界中的某些内容的输出组件。示例包括:

    • 步进电机(将电信号转换为移动)

    • 继电器(控制高电压和电流)

Amazon IoT 服务概览

在 IoT 世界中,Amazon IoT 提供了一些服务来支持与真实世界互动的设备以及在这些设备与 Amazon IoT 之间传递的数据。Amazon IoT 由此图中显示的支持 IoT 解决方案的服务组成。


                    Amazon IoT 架构

Amazon IoT 设备软件

Amazon IoT 提供此软件来支持您的 IoT 设备。

Amazon IoT Greengrass

Amazon IoT Greengrass 可将 Amazon IoT 无缝扩展至边缘设备,因此可以在本地操作其生成的数据,并将云用于管理、分析和持久存储。借助 Amazon IoT Greengrass,互联设备可以运行 Amazon Lambda 函数、Docker 容器,或同时运行两者,基于机器学习模型执行预测、使设备数据保持同步以及与其他设备安全通信 – 甚至在没有连接互联网的情况下也可实现这些功能。

Amazon IoT Device Tester

适用于 FreeRTOS 的 Amazon IoT Device Tester 和 Amazon IoT Greengrass 是用于微控制器的测试自动化工具。 Amazon IoT Device Tester ,测试您的设备,以确定它是运行 FreeRTOS 还是 Amazon IoT Greengrass 并与 Amazon IoT 服务进行互操作。

Amazon IoT 设备软件开发工具包

Amazon IoT 设备和移动软件开发工具包可帮助您高效地将设备连接到 Amazon IoT。Amazon IoT 设备和移动软件开发工具包包括开源库、开发人员指南(含示例)和移植指南,便于您在自己选择的硬件平台上构建富有创新精神的 IoT 产品或解决方案。

FreeRTOS

FreeRTOS 是一款面向微控制器的开源实时操作系统,可让您在 IoT 解决方案中包含小型低功耗边缘设备。FreeRTOS 包括一个内核和越来越多的、支持许多应用程序的软件库。FreeRTOS 系统可以安全地将小型低功耗设备连接到 Amazon IoT,并支持运行 Amazon IoT Greengrass 的更强大的边缘设备。

Amazon IoT 控制服务

连接到以下 Amazon IoT 服务以管理 IoT 解决方案中的设备。

Amazon IoT Core

Amazon IoT Core 是一项托管云服务,它使互联设备能够安全地与云应用程序和其他设备进行交互。 Amazon IoT Core 可以支持许多设备和消息,还可以处理这些消息并路由到 Amazon IoT 端点和其他设备。有了 Amazon IoT Core ,您的应用程序即使未连接,也可以与所有设备进行交互。

Amazon IoT Device Management

Amazon IoT Device Management 服务可帮助您跟踪、监控和管理构成设备机群 Amazon IoT 的大量连接设备。Device Management 服务可帮助您确保 IoT 设备在部署后能够正常、安全地运行。它们提供安全隧道来访问您的设备、监控设备的运行状况、检测和远程排查问题,还提供管理设备软件和固件更新的服务。

Amazon IoT Device Defender

Amazon IoT Device Defender 可帮助您保护 IoT 设备机群。Amazon IoTDevice Defender 会不断审计您的 IoT 配置,以确保配置始终遵循安全最佳实践。Amazon IoT如果 Device Defender 在您的 IoT 配置中检测到任何可能引发安全风险的漏洞,例如在多个设备间共享身份证书,或身份证书被吊销的设备试图连接 Amazon IoT Core ,该服务会发送提醒。

Amazon IoT Things Graph

Amazon IoT Things Graph 作为一项服务,使您能够以可视方式连接不同设备和 Web 服务,构建 IoT 应用程序。Amazon IoT Things Graph 提供了一个可视化的拖放界面,用于连接和协调设备与 Web 服务之间的交互,以便您可以高效地构建 IoT 应用程序。

Amazon IoT 数据服务

分析 IoT 解决方案中设备的数据,并使用以下 Amazon IoT 服务采取适当的措施。

Amazon IoT Analytics

Amazon IoT Analytics 可让您高效地对大量非结构化 IoT 数据运行和实施复杂分析。Amazon IoT Analytics 可以自动执行分析来自 IoT 设备的数据所需的每个困难步骤。Amazon IoT Analytics 对 IoT 数据进行筛选、转换和丰富,然后再将其存储在时间序列数据存储中以供分析。通过使用内置的 SQL 查询引擎或机器学习,您可以运行一次性查询或计划查询来分析数据。

Amazon IoT SiteWise

Amazon IoT SiteWise 通过提供在您设施的网关上运行的软件,大规模地收集、存储、组织和监控 MQTT 消息或 API 从工业设备传送的数据。该网关安全地连接到您的本地数据服务器,并自动执行收集和组织数据以及将数据发送到 Amazon 云的过程。

Amazon IoT 事件

Amazon IoT 事件检测并响应来自 IoT 传感器和应用程序的事件。事件是识别比预期更复杂的情况的数据模式,例如运动检测器使用移动信号来激活灯和监控摄像机。Amazon IoT事件会持续监控来自多个 IoT 传感器和应用程序的数据,并与其他服务(例如 Amazon IoT Core 、IoT SiteWise、DynamoDB 等)集成,以实现早期检测并获取独特见解。

Amazon IoT Core 服务

Amazon IoT Core 提供将您的 IoT 设备连接到 Amazon 云的服务,以便其他云服务和应用程序可以与您的互联网连接设备进行交互。


                    
				Amazon IoT Core
			 的简要视图,显示设备网关、消息代理、规则引擎、设备影子及其提供的其他服务

下一部分将介绍示意图中显示的每个 Amazon IoT Core 服务。

Amazon IoT Core 消息收发服务

Amazon IoT Core 连接服务提供与 IoT 设备的安全通信,并管理它们与 Amazon IoT 之间传递的消息。

设备网关

使设备能够安全高效地与 Amazon IoT 进行通信。设备通信由使用 X.509 证书的安全协议提供保护。

消息代理

提供安全机制以供设备和 Amazon IoT 应用程序用于相互发布和接收消息。进行发布和订阅时,您可以直接使用 MQTT 协议,也可以通过 WebSocket 使用 MQTT 协议。有关受 Amazon IoT 支持的协议的更多信息,请参阅 设备通信协议。设备和客户端也可以使用 HTTP REST 接口将数据发布到消息代理。

消息代理将设备数据分发到已订阅设备数据的设备和其他 Amazon IoT Core 服务,例如 Device Shadow 服务和规则引擎。

适用于 LoRaWAN 的 Amazon IoT Core

适用于 LoRaWAN 的 Amazon IoT Core 可以通过将您的 LoRaWAN 设备和网关连接到 Amazon 而无需开发和操作 LoRaWAN 网络服务器 (LNS),从而设置私有 LoRaWAN 网络。从 LoRaWAN 设备接收的消息将发送到规则引擎,在该引擎中可以对其进行格式化并发送到其他 Amazon IoT 服务。

规则引擎

规则引擎将消息代理中的数据连接到其他 Amazon IoT 服务以进行存储和额外处理。例如,您可以插入、更新或查询 DynamoDB 表,也可以根据在规则引擎中定义的表达式调用 Lambda 函数。您可以使用基于 SQL 的语言选择消息负载中的数据,然后处理数据并将数据发送到其他服务,如 Amazon Simple Storage Service (Amazon S3)、Amazon DynamoDB 和 Amazon Lambda。您还可以创建规则以将消息重新发布到消息代理并面向其他订阅者。有关更多信息,请参阅 Amazon IoT 规则

Amazon IoT Core 控制服务

Amazon IoT Core 控制服务提供设备安全、管理和注册功能。

自定义身份验证服务

您可以定义自定义授权方,从而通过自定义的身份验证服务和 Lambda 函数来管理自己的身份验证和授权策略。自定义授权方使得 Amazon IoT 可以使用持有者令牌身份验证和授权策略,对您的设备进行身份验证和授权操作。

自定义授权方可以实施各种身份验证策略;例如 JSON Web 令牌验证或 OAuth 提供程序标注。它们必须返回设备网关用于授权 MQTT 操作的策略文档。有关更多信息,请参阅 自定义身份验证

设备预配置服务

让您可使用描述设备所需资源的模板来预配置设备:事物对象、证书以及一个或多个策略。事物对象是注册表中的一个条目,其中包含描述设备的属性。设备使用证书通过 Amazon IoT 进行身份验证。策略确定设备在 Amazon IoT 中可执行的操作。

模板包含可用字典中的值替换的变量 (映射)。您可以使用同一个模板来预配置多个设备,只需在字典中为模板变量传递不同的值。有关更多信息,请参阅 设备预置

组注册表

通过将设备按类别分成不同的组,可以使用组来同时管理多台设备。组中还可以包含组,您可以构建组的层次结构。您对父组执行的任何操作都将应用于其子组。同样的操作也应用于父组中的所有设备以及子组中的所有设备。向某个组授予的权限将应用于该组及其子组中的所有设备。有关更多信息,请参阅 使用 Amazon IoT 管理设备

Jobs 服务

允许您定义一组远程操作,这些操作将被发送到一个或多个连接到 Amazon IoT 的设备并在这些设备上运行。例如,您可以定义一个任务,该任务指示一组设备下载并安装应用程序或固件更新、重启、轮换证书或执行远程故障排除操作。

要创建任务,您需要指定要执行的远程操作的说明,以及应该执行这些操作的目标列表。目标可以是单个设备和/或设备组。有关更多信息,请参阅 Jobs

注册表

整理与 Amazon 云中的每台设备关联的资源。您可以注册自己的设备并将每台设备与最多三个自定义属性关联。您还可以将每台设备与相应的证书和 MQTT 客户端 ID 关联,以提高对设备进行管理和故障排除的能力。有关更多信息,请参阅 使用 Amazon IoT 管理设备

安全和身份服务

在 Amazon 云中共担安全责任。为了安全地将数据发送到消息代理,您的设备必须确保自身凭证的安全。消息代理和规则引擎使用 Amazon 安全功能将数据安全发送到设备或其他 Amazon 服务。有关更多信息,请参阅 Authentication

Amazon IoT Core 数据服务

即使在不总是连接的设备上, Amazon IoT Core 数据服务也能帮助您的 IoT 解决方案提供可靠的应用程序体验。

Device Shadow

一种 JSON 文档,用于存储和检索设备的当前状态信息。

Device Shadow 服务

Device Shadow 服务会保持设备的状态,以便应用程序可以与设备通信,无论设备是否在线。当设备处于离线状态时,Device Shadow 服务将管理它连接的应用程序的数据。当设备重新连接时,它会将其状态与 Device Shadow 服务中的状态同步。您的设备还可以将有关其当前状态的信息发布到影子,以供不会始终保持连接的应用程序或其他设备使用。有关更多信息,请参阅 Amazon IoT Device Shadow 服务

Amazon IoT Core 支持服务

适用于 Amazon IoT 的 Alexa Voice Service (AVS) 集成

将 Alexa Voice 带到任何互联设备。适用于 Amazon IoT 的 AVS 降低了集成 Alexa 的成本和复杂性。此功能利用 Amazon IoT,将计算和内存密集型音频任务从设备分载到云端。由于降低了工程物料清单 (EBOM) 成本,设备制造商可以经济高效地将 Alexa 引入到资源受限的 IoT 设备上,使得消费者能够在其家庭、办公室或酒店房间中直接与 Alexa 通话,获得环绕体验。

适用于 Amazon IoT 的 AVS 在 MCU 上启用了 Alexa 内置功能,例如 ARM Cortex M 类,具有小于 1 MB 的嵌入式 RAM。为此,AVS 将内存和计算任务分载到云中的虚拟 Alexa 内置设备。这会将 EBOM 成本降低高达 50%。有关更多信息,请参阅 适用于 Amazon IoT 的 Alexa Voice Service (AVS) 集成

适用于 Amazon IoT Core 的 Amazon Sidewalk 集成

Amazon Sidewalk 是一个共享网络,可改进连接选项,帮助设备更好地协同工作。Amazon Sidewalk 支持各种客户设备,例如定位宠物或贵重物品的设备、提供智能家居安全和照明控制的设备,以及为家电和工具提供远程诊断的设备。适用于 Amazon IoT Core 的 Amazon Sidewalk 集成使设备制造商可以将他们的 Sidewalk 设备机群添加到 Amazon IoT 云。

有关更多信息,请参阅 适用于 Amazon IoT Core 的 Amazon Sidewalk 集成