Loading...

利用 AWS 服务快速构建机器人应用场景的解决方案 官方博客 物联网



快速构建机器人解决方案的 AWS 服务应用

关键要点

在本文中,您将了解如何利用 AWS 服务解决自主移动机器人AMRs开发与运营中的常见挑战。我们将讨论集成云服务的必要性、相关技术以及AWS服务如何加速原型开发和大规模运营。

引言

自主移动机器人AMRs在物流和制造等多个行业中得到了广泛应用。尽管如此,开发和运营自主机器人仍面临许多挑战。开发这些机器人需要多种技术,过程复杂且耗时。另外,为了有效开发与运营机器人,必须与云服务集成。然而,许多机器人开发者或对云机器人效益不甚了解,或缺乏云开发的专业知识,导致无法更快地将智能机器人推向市场。

通过阅读本文,您将学习如何利用 AWS 服务解决开发与运营自主机器人的常见挑战。您也将了解实现自身用例所需的服务,以及如何开始构建原型。

自主机器人开发与运营中的挑战

我们可以将自主机器人开发的挑战分为三个阶段:构建、测试和部署。

机器人开发需要多个领域的专业知识。例如,人工智能AI和机器学习ML技术用于自主导航;云连接用于应用整合;视频流用于远程监控和操作。

在测试阶段,需要不断进行试验,以确保机器人在多种情况下表现正常。然而,机器人硬件的可用性常常有限,在物理环境中测试也是耗费时间和资金的。

一旦进入生产阶段,机器人工程师和操作员需要监控和管理整个机器人车队,包括机器人健康和状态。他们需要部署设备上的应用程序并远程控制机器人。在某些情况下,多种类型机器人和系统之间的互操作性也是必要的。

由于这些挑战,自主机器人的开发过程劳累且耗时。AWS 提供了多种服务,可以更快地开发、测试与运营此类机器人应用。通过这些服务,您可以迅速构建原型并轻松管理大量在生产中的机器人。接下来的部分将介绍如何利用这些服务来开发机器人并解决挑战。

AWS 为机器人开发提供的服务

机器人与云之间的通信: AWS IoT Core

自主机器人应能够在多种环境下独立行动,在意外情况下,需要操作员的支持。因此,需要具备以下功能。例如,操作员可以通过云远程控制机器人,开发者也可以通过收集的日志进行故障排查。您可以利用 AWS IoT Core 开发这些功能。

AWS IoT Core 是一个管理的云平台,可让连接设备与云应用程序和其他设备轻松、安全地进行交互。设备可以通过轻量级协议如 MQTT连接,进而与云和其他设备通信。从设备收集到的消息可以路由到其他 AWS 服务,例如数据库、存储、分析和 AI/ML 服务。

例如,您可以集成 AWS IoT Core 和其他 AWS 服务,以收集机器人传感器数据与日志数据,将数据存储到数据湖中以供分析和故障排查,并创建仪表板以进行近实时可视化。 这篇文章 展示了利用 AWS IoT 服务进行数据收集和可视化的主要模式。

您可能还希望通过 Web 或移动应用与您的机器人进行交互。您还可以使用设备影子功能在机器人和云之间同步状态。这允许用户或应用程序知道机器人最新的状态,并在机器人离线时向其发送命令。

软件部署与执行:AWS IoT Greengrass

为实际机器人运行开发的应用程序,需要有效的软件部署和管理机制。在机器人发货后,持续改进应用和部署更新也是必要的。然而,管理应用软件,针对多台机器人进行同时部署,以及根据机器人类型修改应用配置是相对困难的。

AWS IoT Greengrass 是一个开源的边缘运行时和云服务,能够帮助您构建、部署和管理设备软件。您可以在云中管理开发的应用程序,将其部署并在特定机器人或多台机器人上运行。应用程序可以使用常见编程语言开发,或在 Docker 容器中运行。您可以为不同类型的机器人车队设置多个软件配置。有了这些功能,您不需要自己开发部署和管理机器人中运行的应用程序机制,而可以集中精力开发应用。

AWS IoT Greengrass 还提供了一种称为组件的机制,这些组件是由 AWS和社区提供的,方便设备端开发。例如,通过 Greengrass 组件,在 Greengrass 上运行的应用程序可以与 AWS IoT Core 进行通信,边缘的机器学习推理如图像识别也可以轻松实现。您还可以使用 Greengrass 和 Docker 部署和管理基于 ROS 的应用程序。AWS IoT Greengrass 使您能够快速在机器人上部署和运行应用程序,从而使开发者能够专注于应用程序本身的开发。您可以通过 AWS IoT Greengrass V2 Workshop 入手。

边缘机器学习:Amazon SageMaker 和 Amazon SageMaker Edge

为了让机器人自主工作,必须准确识别环境。例如,障碍物检测与规避、人类及物体检测或映射等任务都是必要的。由于网络连接不稳定、网络带宽和成本等多种原因,这些任务通常需要在边缘运行。在这个用例中,客户希望训练机器学习ML模型,并在边缘进行部署和推理。

为了收集用于 ML 模型训练的原始数据如图像、rosbag 或遥测,您可以使用 AWS IoT Greengrass 流管理器。流管理器能够高效、可靠地将大数据量的 IoT 数据传输到 AWS 云。即使在连接不稳定的环境中,流管理器也能正常工作,您可以配置 AWS 服务如 Amazon S3 和 Amazon Kinesis Data Streams来导出数据。

收集到原始数据后,您可以使用 Amazon SageMaker 构建您的 ML 模型。Amazon SageMaker 是一个服务,旨在利用完全托管的基础设施、工具和工作流构建、训练和部署各种用例的 ML 模型。例如,您可以使用 Amazon SageMaker Ground Truth 为机器人收集的图像进行标注,并使用 SageMaker 训练自定义的 ML 模型。

一旦构建出自定义的 ML 模型,您可以利用 Amazon SageMaker Edge 优化并将 ML 模型部署到边缘设备上。Amazon SageMaker Edge 通过优化、安全地将模型部署到边缘,并对这些模型进行监测,使边缘设备上的机器学习能力得以实现。您可以在云端优化 ML 模型,并将其作为 Greengrass 组件部署,使用 Amazon SageMaker Edge Manager。在模型和 SageMaker Edge Manager 部署到机器人后,SageMaker 推理引擎将启动,您的机器人应用程序可以在边缘使用推理结果。

鲸鱼加速器官方版下载

远程控制与监控:Amazon Kinesis Video Streams

AMRs用于在仓库等环境中移动材料。由于其配备摄像头和其他传感器以识别人员、障碍物和其他物体,因此可以自主导航。然而,如果机器人被卡住,您可以使用摄像头的实时视频远程监控和操作机器人。在某些情况下,您可能希望将视频存储在云中以进行分析和故障排查。然而,开发一个实时流式传输和收集大量视频数据的基础设施相对复杂。

Amazon Kinesis Video Streams 使得安全地将媒体从连接设备流式传输到 AWS 以进行存储、分析、机器学习ML、回放和其他处理变得简单。Amazon Kinesis Video Streams 自动配置并弹性扩展所有所需基础设施,以处理来自数百万设备的流媒体。用户可以从机器人的摄像头收集视频、进行实时监控或按需故障排查。Amazon Kinesis Video Streams 还支持超低延迟的双向媒体流传输,适用于需要亚秒级延迟的远程控制用例,这一能力完全由管理服务支持。

Amazon Kinesis Video Streams 提供了 SDK,支持把机器人摄像头采集的视频流传输到云或者通过 WebRTC 利用点对点连接进行流式传输。根据您的使用场景,您可以使用 Amazon Kinesis Video Streams 的 生产者 SDK 或 WebRTC SDK。例如,如果需要将视频收集并存储在云中以供按需回放和分析,则应使用生产者 SDK。而如果需要进行实时回放以实现远程控制或双向媒体流传输,则可以使用 WebRTC SDK。这些 SDK 极大地方便了安全地流式传输媒体。

您可以通过 Amazon Kinesis Video Streams Workshop 尝试 Amazon Kinesis Video Streams 生产者 SDK、视频回放和视频分析。如果想了解如何将 Amazon Kinesis Video Stream 与 WebRTC 结合使用,可以参考 Amazon Kinesis Video Streams WebRTC Workshop。

机器人应用程序的测试模拟:AWS RoboMaker

在开发自主机器人应用程序时,需要在各种环境中验证应用程序的性能是一个挑战。在开发阶段,机器人硬件的数量通常有限,准备多种测试环境较为困难。因此,通常使用模拟环境来测试机器人应用程序。

AWS RoboMaker 是一个完全托管的服务,使您能方便地创建模拟世界并运行模拟任务,无需配置或管理任何基础设施。您可以在 Docker 中运行一般的模拟应用程序或基于 ROS 的模拟应用程序。当模拟在云中运行时,您可以通过从浏览器访问图形用户界面GUI应用程序和终端来检查模拟状态。

构建一个模拟环境的成本高昂、耗时且需要 3D建模技能。然而,通过 RoboMaker WorldForge,您可以通过简单地指定参数来创建多个 3D 虚拟环境。您还可以同时运行多个模拟,或通过 RoboMaker API 启动和停止模拟。这些功能便于为机器人应用程序建立 CI/CD 环境,自动同时测试开发的应用程序在多种模拟环境中的表现。您可以通过关注 为 AWS RoboMaker 准备 ROS 应用程序和模拟容器 尝试 RoboMaker 的模拟实例。

结论

在本文中,我介绍了机器人应用程序开发、测试与运营中的常见挑战,以及 AWS IoT 服务在这些用例中的应用。机器人应用程序开发的范围非常广泛,因此,您可以根据自身用例结合 AWS 服务加速开发。借助这些服务,您还可以轻松管理和运营大量机器人的车队。让我们从探索这些服务的 IoT 研讨会 开始吧。

利用 AWS 服务快速构建机器人应用场景的解决方案 官方博客  物联网

关于作者

Yuma Mihira 是亚马逊网络服务的高级物联网专家解决方案架构师。他在日本工作,致力于帮助客户构建物联网解决方案。在加入 AWS 之前,他作为软件工程师参与了机器人开发。

标签 Amazon Kinesis Video Streams、AWS IoT、AWS IoT Core、AWS RoboMaker、Robotics

鲸鱼加速器官网,致力于实现全球连线,只需一键轻松提升您的网络体验。无论身处何地,畅享高速、稳定的网络连接,为您提供无忧的上网体验。