管理模拟 - AWS RoboMaker

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理模拟

以下各节介绍如何创建、查看、取消、克隆和重启模拟作业。

创建模拟作业

如果您想使用任何模拟平台在虚拟世界中运行机器人应用程序,请创建模拟作业。指定模拟应用程序时,请选择软件套件名称。我们目前支持 GeneralSimulationRuntime 软件套件。

创建模拟作业

请按照以下选项卡之一中的步骤进行操作:

Using the console
  1. 通过以下网址登录到 AWS RoboMaker 控制台:https://console.aws.amazon.com/robomaker/

  2. 在左侧导航窗格中选择 Simulations run (模拟运行),然后选择 Simulation Jobs (模拟作业)

  3. 选择 Create simulation job (创建模拟作业)

  4. Simulation configuration (模拟配置) 页面上,选择 simulation job duration (模拟配置持续时间)。选择从 5 分钟到 14 天之间的任意值。

    重要

    要了解如何向您收取 AWS RoboMaker 费用的信息,请参阅 AWS RoboMaker 定价

  5. 选择 Failure behavior (失败行为)。选择 Fail (失败) 可在模拟作业失败时终止主机实例。选择 Continue (继续) 可保留主机实例以便您连接和调查。

    如果您在以下指定了可选的 S3 文件夹,它将包含模拟数据。它独立于所选的失败行为供使用。

  6. 对于 IAM Role (IAM 角色),选择一个角色或选择 创建新角色 来创建角色。AWS RoboMaker 使用此角色代表您访问资源。它还可由您的应用程序用来访问 AWS 资源,例如 Amazon Rekognition 或 Amazon Lex。

  7. 可选:Compute (计算) 中,选择模拟单位限制。将根据提供的模拟单位限制,成比例地向您的模拟应用程序分配 CPU 和内存。一个模拟单位是 1 个 vcpu 和 2GB 内存。默认值为 15。

  8. 可选:输出目标 中,键入存储模拟作业输出的 Amazon S3 文件夹名称。或者,选择 创建新 S3 文件夹 以创建新 Amazon S3 文件夹。

  9. 可选:联网中,如果您的机器人应用程序或模拟应用程序访问 Amazon VPC 上的资源,请选择 VPC、子网和安全组。选择所有可用的子网,确保您的所有资源限制都适用。有关更多信息,请参阅 VPC 和子网

    如果您从 VPC 外部访问模拟作业,请选择 Assign public IP (分配公有 IP)

  10. (可选)对于 标签,为模拟任务指定一个或多个标签。标签是一些充当元数据的词和短语,用于标识和组织 AWS 资源。每个标签均包含一个键和一个值。您可在 Simulation Job details (模拟应用程序详细信息) 页面上管理模拟任务的标签。

    有关标签的更多信息,请参阅 AWS 账单与成本管理用户指南中的使用成本分配标签

  11. 选择 下一步

  12. Specify robot application (指定机器人应用程序) 页面上的 Robot application (机器人应用程序) 下,选择 Create new application (创建新应用程序)。(可选)您可以选择 选择现有应用程序 以使用已经创建的机器人应用程序。

  13. 键入机器人应用程序的 name (名称)

  14. 容器映像下,为机器人应用程序容器指定 Amazon ECR 存储库位置。有关更多信息,请参阅AWS RoboMaker 兼容容器的要求

    注意

    使用 $LATEST 并不能保护您免受亚马逊 Amazon ECR 变化的影响。AWS RoboMaker 访问存储库时,它会将其设置为只读。

    有关版本控制的更多信息,请参阅版本控制应用程序

  15. 机器人应用程序配置中,为您的机器人应用程序提供启动命令

  16. 可选:要配置机器人应用程序工具,请展开 机器人应用程序工具。选择 使用默认工具 以使用预配置的工具。选择 自定义工具 以添加、删除或编辑要与应用程序配合使用的自定义工具。

    添加新工具:

    1. 选择 添加工具

    2. 添加应用程序工具 上,指定 工具名称

    3. 指定该工具的命令行参数。必须包括工具可执行文件名称。

    4. 选择 退出行为。如果选择 失败,则当工具退出时,模拟作业将失败。选择 重启 以重新启动该工具。默认为 重启

    5. 选择启用或禁用 UI 流式传输。默认情况下,UI 流式传输是禁用的。

    6. 选择 发送输出至CloudWatch 以记录该工具的日志。这些日志在 CloudWatch 中可用。默认情况下,输出不会发送到 CloudWatch。只有在主 ROS 启动过程开始后,自定义工具才会启动。

  17. 可选:如果您的应用程序包含图形用户界面,请选择 使用流式处理会话运行。AWS RoboMaker 配置连接,这样当您的应用程序在模拟作业中运行时,您可以与该应用程序进行交互。您可以通过在模拟作业详情页面的 模拟工具 下选择 机器人应用程序 进行连接。

  18. 可选:如果您的机器人应用程序使用环境变量,请指定 Name (名称)Value (值) 对。环境变量名称必须以字母 A-Z 或下划线开头并包括 A-Z、0-9 和下划线。保留以 AWS 开头的名称。

    选择 Add environment variable (添加环境变量) 来添加额外的变量。

    您可以使用 roslaunch 替换参数读取启动文件中的环境变量。

  19. 可选:配置从模拟作业端口转发到应用程序端口的流量。必须配置模拟作业网络,以便为机器人和模拟应用程序指定端口映射。

  20. 可选: 指定一个或多个机器人应用程序上传配置。必须配置模拟作业输出目标才能指定上传配置。每个配置都指定了上传行为、Unix glob 文件匹配规则以及放置匹配文件的位置。有关自定义上传的更多信息,请参阅 添加自定义上传配置

  21. 选择 下一步

  22. Specify simulation application (指定模拟应用程序) 页面上,选择 Create new application (创建新应用程序)。或者,您可以选择 选择现有应用程序 以使用已经创建的模拟应用程序。

  23. 键入模拟应用程序的 name (名称)

  24. 容器映像下,为机器人应用程序容器指定 Amazon ECR 存储库位置。有关更多信息,请参阅 。使用 $LATEST 并不能保护您免受 Amazon ECR 变更的影响。AWS RoboMaker 访问存储库时,它会将存储库设置为只读。

    有关版本控制的更多信息,请参阅版本控制应用程序

  25. 模拟应用程序配置中,为您的机器人应用程序提供启动命令

  26. 可选:要配置机器人应用程序工具,请展开 Simulation application tools。选择 使用默认工具 以使用预配置的工具。选择 Customize tools 以添加、删除或编辑用于应用程序的自定义工具。

    添加新工具:

    1. 选择 添加工具

    2. 添加应用程序工具 上,指定 工具名称

    3. 指定该工具的命令行参数。必须包括工具可执行文件名称。

    4. 选择 退出行为。如果选择 失败,则当工具退出时,模拟作业将失败。选择 重启 以重新启动该工具。默认为 重启

    5. 选择启用或禁用 UI 流式传输。默认情况下,UI 流式传输是禁用的。

    6. 选择 发送输出至CloudWatch 以记录该工具的日志。这些日志在 CloudWatch 中可用。默认情况下,输出不会发送到 CloudWatch。

    自定义工具只有在主启动过程开始后才会启动。

  27. 可选:如果您的应用程序包含图形用户界面,请选择 使用流式处理会话运行。AWS RoboMaker 配置连接,这样当您的应用程序在模拟作业中运行时,您可以与该应用程序进行交互。您可以通过在模拟作业详情页面的 Simulation tools 下选择 Simulation Application 进行连接。

  28. 可选:如果您的模拟应用程序使用环境变量,请指定 Name (名称)Value (值) 对。选择 Add environment variable (添加环境变量) 来添加额外的变量。

  29. 可选:配置从模拟作业端口转发到应用程序端口的流量。必须配置模拟作业网络,以便为机器人和模拟应用程序指定端口映射。

  30. 可选:指定一个或多个模拟应用程序上传配置。必须配置模拟作业输出目标才能指定上传配置。每个配置都指定了上传行为、Unix glob 文件匹配规则以及放置匹配文件的位置。

    默认上传配置与过去的模拟作业输出配置保持向后兼容性。默认配置将添加到您创建的其他上传配置中。有关自定义上传的更多信息,请参阅 添加自定义上传配置

  31. 选择下一步

  32. 选择 Create (创建) 以创建模拟作业。

Using the AWS CLI

下面是一个示例 AWS CLI 命令,它执行的操作与在另一个选项卡中基于控制台的模拟作业创建等效。

aws robomaker create-simulation-job --max-job-duration-in-seconds 3600 --iam-role arn:aws:iam::111111111111:role/MyRole --robot-applications application=arn:aws:robomaker:us-west-2:111111111111:robot-application/MyRobotApplication/1551203485821,launchConfig="{command=["roslaunch", "hello_world_robot", "rotate.launch"]}" --simulation-applications application=arn:aws:robomaker:us-west-2:111111111111:simulation-application/MySimulationApplication/1551203427605,launchConfig="{command=["roslaunch", "hello_world_simulation", "empty_world.launch"]}" --tags Region=North

查看模拟作业

您可以查看有关模拟作业的信息,如果作业正在运行,请启动图形工具或终端来与模拟交互。您还可以查看有关模拟作业的详细信息和管理标记。

查看模拟作业

请按照以下选项卡之一中的步骤进行操作:

Using the console
  1. 通过以下网址登录到 AWS RoboMaker 控制台:https://console.aws.amazon.com/robomaker/

  2. 在左侧导航窗格中选择 Simulations (模拟),然后选择 Simulation Jobs (模拟作业)

  3. 选择要查看其详细信息的模拟作业的 ID,这些信息包括创建该作业的时间以及机器人应用程序和模拟应用程序的启动命令。

Using the AWS CLI

下面是一个示例 AWS CLI 命令,它执行的操作与在另一个选项卡中基于控制台的查看模拟作业等效。

aws robomaker list-simulation-jobs aws robomaker describe-simulation-job --job my-simulation-job-arn

取消模拟作业

您可以取消正在运行且不再需要的模拟作业。

取消模拟作业

请按照以下选项卡之一中的步骤进行操作:

Using the console
  1. 通过以下网址登录到 AWS RoboMaker 控制台:https://console.aws.amazon.com/robomaker/

  2. 在左侧导航窗格中选择 Simulations (模拟),然后选择 Simulation Jobs (模拟作业)

  3. 选择您要取消的模拟作业的 ID

  4. Simulation job detail (模拟作业详细信息) 页面的 Actions (操作) 下,选择 Cancel (取消)

  5. Cancel simulation job (取消模拟作业) 页面上,选择 Yes, cancel (是,取消)

Using the AWS CLI

下面是一个示例 AWS CLI 命令,它执行的操作与在另一个选项卡中基于控制台的取消模拟作业等效。

aws robomaker list-simulation-jobs aws robomaker cancel-simulation-job --job my-simulation-job-arn

有关在模拟作业中取消的信息,请参阅 ROS 容器常见问题

克隆模拟作业

您可以通过从 AWS Management Console 上的模拟作业详情页面克隆现有模拟作业来创建新的模拟作业。

注意

无法克隆使用 ROS 和 Gazebo 软件套件的模拟作业。有关更多信息,请参阅支持策略

  1. 通过以下网址登录到 AWS RoboMaker 控制台:https://console.aws.amazon.com/robomaker/

  2. 在左侧导航窗格中选择 Simulations (模拟),然后选择 Simulation Jobs (模拟作业)

  3. 选择您要重新启动的正在运行模拟作业的 ID

  4. Simulation job detail (模拟作业详细信息) 页面的 Actions (操作) 下,选择 Clone (克隆)

  5. 查看和创建模拟作业 中,选择 编辑以进行更改。

  6. 选择 Create (创建) 以创建模拟作业。

重新启动模拟作业

正在运行的模拟作业可以重新启动。重新启动时,模拟作业使用 Amazon S3 位置中的机器人应用程序和模拟应用程序源文件,以及创建默认作业时指定的所有其他配置设置。

重新启动模拟作业

请按照以下选项卡之一中的步骤进行操作:

Using the console
  1. 通过以下网址登录到 AWS RoboMaker 控制台:https://console.aws.amazon.com/robomaker/

  2. 在左侧导航窗格中选择 Simulations (模拟),然后选择 Simulation Jobs (模拟作业)

  3. 选择您要重新启动的正在运行模拟作业的 ID

  4. Simulation job detail (模拟作业详细信息) 页面的 Actions (操作) 下,选择 Restart (重新启动)

  5. Restart simulation job (重新启动模拟作业) 页面上,选择 Yes, restart (是,重新启动)

Using the AWS CLI

下面是一个示例 AWS CLI 命令,它执行的操作与在另一个选项卡中基于控制台的重启模拟作业等效。模拟作业必须正在运行。

aws robomaker restart-simulation-job --job my-simulation-job-arn