Amazon Web Services ブログ

AWS RoboMaker-インテリジェントなロボットアプリケーションの開発、テスト、デプロイと管理

私は何十年もの間ロボットをつくりたいと思っていましたが、今、私にはチャンスができました!私にとって、常時接続で相互に影響する部品の数が非常に多いということが課題でした。複雑なハードウェア、ソフトウェア、センサー、通信システム、および「ロボットの脳」は、ロボットが必要に応じて機能するために、すべて一緒に機能する必要があります。

これから、AWS RoboMakerについてお話しようと思います。この新しいサービスは、あなたの夢であるロボットの開発、シミュレート、テスト、およびデプロイの手助けをするサービスになります。クラウドベースの開発環境でコードを開発し、Gazeboシミュレーションでテストし、完成したコードを1つまたは複数のロボットの群に展開することができます。 コードをデプロイしたら、いくつかのクリックで、アップデートやバグ修正をあなたのフリートに適用することができます。 あなたのコードは、Amazon LexPollyAmazon RekognitionAmazon Kinesis Video StreamsAmazon CloudWatchなどのAWSサービスを利用して、洗練されたロボットの脳を構築し、ROS(Robotic Operating System)のパッケージとしてアクセスできます。 また、Amazon SageMakerモデルを構築してトレーニングして、ロボットの脳内で機械学習を利用することもできます。

RoboMakerは、さまざまな物理環境(ホームワークショップ、工場フロア、教室、レストラン、ホテル、または別の惑星)、さまざまな形状とサイズのロボットで動作するように設計されています。

それでは見てみましょう

AWS RoboMakerの動作 – 動作シミュレーション

 

私のロボットの体験は、RoboMakerのコンソールから始まります。(APIおよびCLIの利用も可能です)。サンプルアプリケーションを試すために始めるをクリックします。

RoboMakerには、使い始めるためのサンプルアプリケーションが用意されています。 2番目にあるロボット監視を選択し、起動をクリックします:

クラウドフォーメーションスタックが起動しVPC、RoboMakerのシミュレーションジョブ、そしてLambda 関数を作成します。これには数分かかります、それではコンソールから私のジョブを見てみましょう。

ジョブをクリックして、内容を詳しく見てみましょう。

ページの続きをみると最も興味深いです。シミュレーションはバックグラウンドで実行され、それを表示したり操作するための4つのツールがあります。

 

Gazeboは実際のロボットシミュレータです。 私はロボットがさまようシーンと、通常の方法でGazebo UIとやりとりするのを見ることができます:

RqtはROS開発用のGUIツールです。 私はそれを使って、computation graphのように、私のロボットのさまざまな側面を検査することができます:

このシミュレーション上でコンピューターの視点をみることもできます。

Rviz は私に別の視点からのシミュレーションとロボットの状況を提供してくれます。

 

ターミナル は私にジョブが起動しているEC2へのシェルアクセスを提供してくれます。

私はまた、4つすべての画面を一度に見ることもできます。

このサンプルの名前は、Amazon CloudWatchを搭載したロボットのフリートです。 コードはシミュレータで実行されており、CloudWatchのメトリックを確認できます。 最も興味深いのは、ロボットと目標の間の距離です。

 

AWS RoboMakerの実践 – 開発環境の実行

私は途中で、シミュレーションの実行方法を示すことから始めました。 ステップをバックアップし、開発環境の手順を始まりから見てみましょう。 RoboMakerは、複数の開発環境の作成と管理に役立ちます。 開始するには、環境を作成をクリックします。

環境に名前を設定し、デフォルトのインスタンスタイプを使い、VPCとサブネットを指定し、作成に進みます。

環境作成の準備が整ったら環境を開くで勧めていきます

Cloud9が数分で利用可能となり、クリックでRoboMakerのサンプルへアクセスができます。

それぞれのサンプルにコードとシミュレート環境上でロボットを動かすためのコードなどが揃っています。

コードの変更をし、ビルドしてパッケージ化することが可能です。変更を有効にするためにシミュレーターのリスタートが必要です。

 

AWS RoboMaker in Action – コードのデプロイとロボットのフリート管理

次のステップは、アプリケーションを作成して本物のロボットに展開することです。 AWS re:Inventは数ヶ月後のことであり、この話の最後のエピソードとして動作を示すためにTurtleBot3ロボットを購入して組み立てました 。 しかし、時間があまりにも早く過ぎ去ったので、私には最終的なセットアップを行う時間がありませんでした。
ロボット自体は組み立てるのが楽でした(ピンセット、安定した手、そして良い光が推奨されます):

 

RoboMakerから、ロボットの作成とロボットにAWS Greengrass groupの割当をすることができます。

それから、私はフリートを作り、それにJohnny5を追加して、コードをデプロイするでしょう! デプロイのバックグラウンドには、Greengrass OTA(Over the Air)の更新方式を利用しています。

更に進めるために

私はAWS RoboMakerのより興味深い面のいくつかを紹介するために最善を尽くしましたが、話すべきことはさらにたくさんあります。 いくつかの簡単なメモがあります:

 

プログラマビリティ – RoboMakerには、シミュレーションジョブ、アプリケーション、ロボット、およびフリートを作成、一覧表示、および管理するための豊富な機能セットが含まれています。

並列シミュレーション – ロボットのアルゴリズムを設計してコード化した後、並列シミュレーションジョブを作成して、さまざまな条件や環境でのアルゴリズムの動作をすばやく確認できます。 たとえば、道路やオフィスの数十または数百の実世界モデルを使用して、ウェイティングや運転アルゴリズムをテストできます。

Powered by AWS – ロボットで実行するために記述するコードは、Rekognition、Lex、Kinesis Video Streamsなどの関連するAWSサービスにアクセスするためにROSパッケージを使用できます。

ROS – ROSはオープンソースプロジェクトです。 AWSへのアクセスを提供するパッケージを含む、コードと専門知識を提供しています。

価格設定 – あなたのロボットアプリでROSを使用することは無料です。 Cloud9はEC2とEBSを使用し、AWS無料枠を超えた場合に使用料を支払うことになります。 あなたのシミュレーションは、シミュレーションユニットに基づいて課金されます。 また、Greengrassの使用料と、コードで使用されるAWSサービス(Lex、Pollyなど)に対しても課金が発生します。

 

利用可能

AWS RoboMakerは現在利用可能です。あなたはクールなロボットアプリケーションを今日から作ることができます!

the US East (N. Virginia), US West (Oregon),  Europe (Ireland) regionsで利用可能です。次はAsia Pacific(Tokyo)がリストアップされています。

 

Jeff

追伸: 私はTurtleBot3のためのクールなアプリを書いて共有する時間を見つける予定です。お楽しみに!

 

飜訳はSA 小梁川が担当しました。
原文はこちら