シミュレーション

Q: AWS RoboMaker シミュレーションとは何ですか?

A: AWS RoboMaker シミュレーションは、インフラストラクチャのプロビジョニングや管理を行わずにシミュレーションワールドを簡単に作成してシミュレーションジョブを実行できる、フルマネージドサービスです。

Q: RoboMaker シミュレーションではどのようなことができますか?

A: RoboMaker シミュレーションにはユースケースがいくつもあります。RoboMaker シミュレーションを使用して、ロボット工学アプリケーションのテストを自動化し、反復的な開発をスピードアップできます。これを使用して、アルゴリズム開発用の合成画像または LIDAR データを生成できます。RoboMaker シミュレーションを使用して、強化学習を用いた機械学習モデルのトレーニングを行うこともできます。

Q: RoboMaker シミュレーションには主にどのような機能がありますか?

A: RoboMaker シミュレーションには、WorldForge とシミュレーション実行という 2 つの重要な機能があります。RoboMaker WorldForge を使用すると、エンジニアリングへの投資や世界規模の生成インフラストラクチャの管理を行うことなく、現実世界の状況をレプリケートした数百の事前定義されたランダム化シミュレーションワールドを自動的に作成できます。シミュレーション実行は、フルマネージドコンピューティングインフラストラクチャを提供し、あらゆる規模でシミュレーションを実行できます。

Q: RoboMaker シミュレーション実行はどのようなシミュレーションエンジンをサポートしていますか?

A: RoboMaker シミュレーション実行は、デフォルトでオープンソースの Gazebo エンジンをサポートし、WorldForge は Gazebo 互換のワールドフォーマットをサポートしています。Gazebo のデフォルトの物理エンジンは ODE (Open Dynamics Engine) です。Gazebo のデフォルトのレンダリングエンジンは OGRE (オブジェクト指向のグラフィックスレンダリングエンジン) です。

シミュレーション WorldForge

Q: シミュレーションワールドとは何ですか?

A: シミュレーションワールドは、家などの環境の仮想モデルです。シミュレーション実行にはシミュレーションワールドが必要です。シミュレーションワールドには、モデル化された環境のジオメトリ、ビジュアル、および物理情報が含まれます。

Q: なぜ WorldForge が必要なのですか?

A: シミュレーションワールドを構築することは困難で、コストと時間がかかる可能性があり、3D モデリングとシミュレーションエンジンの専門的なスキルも必要です。少数の企業が 1 つのシミュレーションワールドを作成する時間とリソースを持っていますが、回帰テストや強化学習などのワークロードのシミュレーションを効果的にスケーリングするのに十分な世界を構築することは、非常に困難で多大なコストがかかります。

RoboMaker WorldForge を使用すると、エンジニアリングへの投資、特殊な設計スキルや世界規模の生成インフラストラクチャの管理を行うことなく、現実世界の状況をレプリケートした数百の事前定義されたランダム化シミュレーションワールドを自動的に作成できます。

Q: シミュレーション WorldForge を開始するにはどうすればよいですか?

A: 最初から、または RoboMaker が提供するサンプルテンプレートの 1 つからワールドテンプレートを作成することにより、シミュレーション WorldForge を開始できます。ワールドテンプレートを使用すると、ワールド生成ジョブを作成して、1 つ以上のシミュレーションワールドを生成できます。WorldForge は RoboMaker シミュレーション実行と統合されているため、RoboMaker シミュレーションジョブで生成された世界を簡単に使用できます。シミュレーションワールドをエクスポートしてローカル環境で使用するには、ワールドエクスポートジョブを作成することで行えます。ワールドエクスポートジョブは、指定された世界を ROS パッケージとして.zip 形式で Amazon S3 バケットにエクスポートします。

Q: シミュレーションワールドテンプレートとは?

A: シミュレーションワールドテンプレートは、シミュレーションワールドの仕様を定義します。たとえば、世界テンプレートでフロアプラン、部屋、家具を定義して、屋内の住宅世界のセットを生成できます。ワールドテンプレートは、1 つのシミュレーションワールドを正確に定義するものではありません。ワールドテンプレートはむしろ、ランダムな部屋のサイズや家具などの特定のランダム性を持つ複数のシミュレーションワールドを生成できます。ワールドテンプレートの仕様は、そのようなランダム性の境界を定義します。

Q: ワールド生成ジョブとは?

A: ワールド生成ジョブは、ワールドテンプレートから 1 つ以上のシミュレーションワールドを生成します。ワールド生成ジョブを作成するとき、2 つの次元 (フロアプランとインテリア) にまたがる世界のバリエーションの数を指定できます。たとえば、フロアプランごとに 2 つの内部バリエーションを持つ 2 つのフロアプランでは、4 (2 * 2) つの固有の世界が生成されます。

Q: ワールドエクスポートジョブとは?

A: ワールドエクスポートジョブは、生成された世界を ROS パッケージとして、.zip 形式で Amazon S3 バケットにエクスポートします。生成された世界をローカル環境で使用する必要がある場合は、ワールドエクスポートジョブを作成します。生成された世界を RoboMaker シミュレーション実行で使用する場合、エクスポートは不要です。

シミュレーション実行

Q: RoboMaker のロボットアプリケーションとは?

A: RoboMaker のロボットアプリケーションは、物理ロボット上で実行する ROS ベースのアプリケーションを指します。RoboMaker シミュレーション実行を使用するには、ロボットアプリケーションのソースコードを X86 アーキテクチャに構築する必要があります。

Q: RoboMaker のシミュレーションアプリケーションとは何ですか?

A: シミュレーションアプリケーションには、3D シミュレーションワールドと、シミュレーションワールドにおけるロボットの動きを制御する Gazebo プラグインがあります。Gazebo シミュレーションワールドのデフォルトフォーマットは .sdf です。ロボットアプリケーションと同様、RoboMaker シミュレーション実行を使用するには、シミュレーションアプリケーションのソースコードを X86 アーキテクチャに構築する必要があります。

Q: RoboMaker シミュレーション実行を開始するにはどうすればよいですか?

A: RoboMaker シミュレーション実行を開始するには、ロボットアプリケーションやシミュレーションアプリケーションを作成します。アプリケーションは、Amazon S3 バケットに保存されているコードにリンクします。次に、シミュレーションジョブを作成して、RoboMaker のフルマネージドインフラストラクチャでシミュレーションアプリケーションとロボットアプリケーションを実行できます。

Q: シミュレーションジョブとは?

A: シミュレーションジョブは、RoboMaker シミュレーション実行のメインサービスリソースです。RoboMaker でシミュレーションワークロードを実行するには、コンピューティングインフラストラクチャを自動的にプロビジョニングして管理するシミュレーションジョブを作成します。シミュレーションジョブの作成の詳細については、ドキュメントをご覧ください

Q: シミュレーションジョブバッチとは?

A: シミュレーションジョブバッチは、シミュレーションジョブリクエストの集合です。AWS RoboMaker の API を使用して、新しいシミュレーションジョブバッチを作成できます。シミュレーションジョブバッチにより、1 つの API 呼び出しで複数のシミュレーションジョブリクエストを送信でき、送信されたすべてのリクエストにキュー機能を提供します。

Q: ロボットアプリケーションとシミュレーションアプリケーションを構築するには、どのツールを使用しますか?

A: Colcon ツールを使用して、ロボットアプリケーションとシミュレーションアプリケーションをビルドおよびバンドルします。これには、RoboMaker コンピューティングインフラストラクチャでアプリケーションを正常に実行するために必要なすべてのサブパッケージが含まれています。詳細については、こちらのドキュメントを参照してください。

Q: アプリケーションのバージョニングとは何ですか?

A: RoboMaker にはロボットアプリケーションとシミュレーションアプリケーションのバージョニング機能があり、ロボットならびにシミュレーションでどのバージョンを実装するかを管理できます。バージョンとは、開発ワークフローのさまざまな部分 (開発段階、ベータのデプロイメント、本番稼働など) のために作成できる、ロボットアプリケーションまたはシミュレーションアプリケーションの番号付きスナップショットです。

Q: ロボットアプリケーションまたはシミュレーションアプリケーションの特定のバージョンを削除できますか?

A: はい、アプリケーションの特定のバージョンまたはすべてのバージョンを削除できます。

Q: RoboMaker には作成したロボットアプリケーションとシミュレーションアプリケーションが保存されますか?

A: いいえ、RoboMaker は作成したロボットアプリケーションやシミュレーションアプリケーションをサービスに保存しません。アプリケーションを S3 バケットにアップロードし、ロボットアプリケーションおよびシミュレーションアプリケーションの作成時にその S3 オブジェクトパスを参照します。

Q: RoboMaker シミュレーション実行はどのツールをサポートしていますか?

A: RoboMaker シミュレーション実行は、実行中のシミュレーションジョブと通信するための Gazebo クライアント、センサーデータを可視化するための rviz、各種 GUI ツールを実行するための rqt、実行中のロボットアプリケーションと通信するためのコマンドラインをサポートしています。

Q: RoboMaker シミュレーション実行にはどのようなログ記録およびモニタリング機能がありますか?

A: RoboMaker シミュレーション実行は Amazon CloudWatch Metrics と統合されているため、CloudWatch コンソールからリアルタイムの要素などのサービスメトリクスをモニタリングできます。また、ロボットアプリケーションの RoboMaker ROS クラウド拡張機能から提供される Amazon CloudWatch Metrics パッケージを利用して、シミュレーションジョブの実行中にロボットの充電レベル、速度、衝突などのリアルタイムメトリクスを生成することができます。

RoboMaker シミュレーション実行は、Amazon CloudWatch Logs とも統合されています。stdout ステートメントをロボットアプリケーションに加えると、RoboMaker シミュレーションはシミュレーション実行中にこれらのメッセージを CloudWatch Log グループに記録します。この機能は、アプリケーション開発中のロボットアプリケーションのデバッグ作業に活用できます。

RoboMaker シミュレーション実行を有効にすると、シミュレーションジョブの実行中に起こる ROS のバグを記録できます。このログデータは S3 バケットに配信されます。このログデータは、ロボットアプリケーションによるメッセージパッシングの分析およびデバッグに使用できます。

Q: シミュレーションジョブの失敗動作とは何ですか?

A: シミュレーションジョブの失敗動作は、中断または続行するように設定できます。中断モードでは、ジョブの実行中に障害が発生すると、そのジョブは中断され、基礎となるインフラストラクチャは解放されます。継続モードでは、ジョブの実行中に障害が発生しても、そのジョブは中断されますが、基礎となるインフラストラクチャは維持されます。継続モードでは、コマンドラインツールを使用して、さらにシミュレーションジョブの障害についてトラブルシューティングを実行できます。継続モードでは、RoboMaker シミュレーションの料金は、ジョブを終了するまで発生し続けます。

Q: シミュレーションジョブはいつ再開されますか?

A: シミュレーションジョブの再開は、迅速な反復開発に活用できます。シミュレーションジョブの再開は、シミュレーションジョブの新規作成よりも高速です。これは、バックグラウンドでリソースのプロビジョニングと設定を行う必要がないためです。ロボットアプリケーションの開発段階では、シミュレーションジョブの再開機能を使用して、コード変更を繰り返しながら迅速にコードをテストできます。

Q: シミュレーションジョブの再開は、シミュレーションジョブのクローン作成とどのように異なりますか?

A: シミュレーションジョブの再開は迅速な反復テストのために使用されるもので、更新されたシミュレーションジョブは、RoboMaker によってプロビジョニングおよび管理される同一のインフラストラクチャリソース上で実行されます。シミュレーションジョブのクローン作成では、既存のジョブと同じ構成を使用して新しいジョブが作成されます。これによりバックグラウンドでインフラストラクチャリソースのプロビジョニングと構成が実行され、この処理に数分かかる場合があります。

Q: シミュレーションジョブで AWS Identity and Access Management (IAM) ロールを指定する必要があるのはなぜですか?

A: IAM ロールによって、RoboMaker のシミュレーションにシミュレーションジョブで指定したリソースへのアクセスを提供します。たとえば、RoboMaker がシミュレーションログを書き込むための S3 バケットです。

Q: シミュレーション期間とは何ですか?

A: シミュレーション期間は、シミュレーションジョブが終了するまでの時間です。この期間は、ウォールクロック時間とシミュレーション時間に基づいています。

Q: シミュレーションジョブはリアルタイムで実行されますか?

A: RoboMaker シミュレーションは、シミュレーションジョブをできるだけ速く実行します。Gazebo ワールドの設定で [リアルタイム更新率] と[最大ステップサイズ] の設定を使って、シミュレーションジョブの実行速度を制御することもできます。詳細については、料金ページをご覧ください。

Q: RoboMaker シミュレーションの請求方法を教えてください。

A: 生成およびエクスポートしたシミュレーションワールドの数に基づいて、シミュレーション WorldForge に対して課金されます。  シミュレーションジョブの期間とシミュレーションジョブで使用する CPU/メモリリソースに基づいて、シミュレーション実行に対して請求されます。詳細については、料金ページをご覧ください。

Q: RoboMaker シミュレーション実行は、ウォールクロック時間またはシミュレーション時間のどちらに基づいて課金されますか?

A: シミュレーションジョブは、リアルタイム、またはリアルタイムより高速や低速で実行できます。RoboMaker シミュレーションはウォールクロック時間に基づいて課金されるため、シミュレーション時間の速度は課金方法に影響しません。詳細については、料金ページをご覧ください。

Cloud Extensions for ROS

Q: RoboMaker cloud extensions for ROS とは何ですか?

AWS RoboMaker には Cloud Extensions for ROSが用意されているため、一般にインテリジェントロボット工学アプリケーションに必要でリソースを大量に消費するコンピューティングプロセスをクラウドに任せて、ローカルのコンピューティングリソースを解放することができます。RoboMaker では各クラウドサービス拡張機能をオープンソースの ROS パッケージとして提供するため、クラウド API を利用してロボットに機能を構築できます。これらの API はすべて使い慣れたソフトウェアフレームワークに含まれています。

Q: クラウド拡張機能としてサポートされているサービスは何ですか?

A: 現在サポートしている機能は、Amazon CloudWatch Logs、Amazon CloudWatch Metrics、Amazon Polly、Amazon Lex、Amazon Kinesis Video Streams、Amazon Rekognition、および Amazon S3 です。詳細については、リソースページまたはドキュメント を参照してください。

Q: RoboMaker クラウド拡張機能の使用には課金されますか?

A: RoboMaker クラウド拡張機能は、Apache 2.0 ライセンスに基づくオープンソースであり、無償で提供されています。ただし、これらの拡張機能から Amazon Rekognition や Amazon Kinesis Video Streams などの対応するサービスを起動すると、別途料金が発生します。詳細については、料金ページをご覧ください。

フリートの管理

Q: RoboMaker のフリート管理とは何ですか?

A: RoboMaker のフリート管理では、ロボットの作成、フリートへのロボットの登録、フリートへのロボットアプリケーションのデプロイを行うことができます。

Q: RoboMaker フリート管理を使用するために最低限必要なハードウェアの仕様を教えてください。

A: RoboMaker のフリート管理は AWS Greengrass を基盤としており、AWS IoT Greengrass と同じ最小のハードウェア仕様が必要です。詳細については、対応する AWS IoT Greengrass よくある質問をご参照ください。

Q: 物理ロボットを RoboMaker のフリートマネジメントに関連付けるにはどうすればよいですか?

A: まず RoboMaker コンソールからロボットを作成し、そのロボットに対応する証明書と AWS Greengrass ベースのエージェントをダウンロードします。次に、手順に従ってエージェントと証明書を物理ロボットにインストールします。インストールして接続すると、物理ロボットが RoboMaker コンソールで作成したロボットに関連付けられます。

Q: フリートとは何ですか?

A: フリートはロボットのグループです。既存のロボットをフリートに自由に登録または登録解除できます。RoboMaker のフリート管理でのデプロイメントジョブはフリートに対して定義され、各ロボットは 1 つのフリートにのみ所属できます。

Q: RoboMaker のフリート管理を使用すると、どのように課金されますか?

A: RoboMaker のフリート管理は AWS Greengrassと統合されており、標準の Greengrass の料金で課金されます。RoboMaker のフリート管理に追加料金はかかりません。詳細については、料金ページをご覧ください。

開発環境

Q: RoboMaker 開発環境とは何ですか?

A: RoboMaker 開発環境とは、AWS Cloud9 のロボット開発用にカスタマイズされた統合開発環境 (IDE) です。IDE には ROS がプレインストールされており、サンプルアプリケーションも含まれています。IDE はシミュレーションなどの RoboMaker の機能とも統合されているため、IDE のインターフェイスからこれらの機能を使用できます。

Q: RoboMaker 開発環境がサポートしているインスタンスタイプは何ですか?

A: RoboMaker 開発環境は、ROS を実行するための十分なリソースがない T2 インスタンスを除いて、すべての AWS Cloud9 インスタンスタイプをサポートしています。

Q: RoboMaker 開発環境は有料ですか?

A: RoboMaker 開発環境の基盤となる Amazon EC2 インスタンスと Amazon EBS ストレージに対して課金されるため、RoboMaker から追加料金が請求されることはありません。詳細については、料金ページをご覧ください。

画像
料金に関する詳細

AWS RoboMaker の料金は従量課金制で、最低料金はありません。

詳細はこちら 
画像
無料のアカウントにサインアップする

AWS 無料利用枠にすぐにアクセスできます。 

サインアップ 
画像
コンソールで構築を開始する

AWS RoboMaker で構築を開始しましょう。

今すぐ始める