ロボット工学ソフトウェア

Robot Operating System (ROS) は最も広く使用されているオープンソースのロボット工学ソフトウェアフレームワークで、ロボット工学アプリケーションの構築に役立つソフトウェアライブラリを提供しています。AWS RoboMaker には ROS 向けのクラウド拡張機能が用意されているため、一般にインテリジェントロボット工学アプリケーションに必要でリソースを大量に消費するコンピューティングプロセスをクラウドにオフロードし、ローカルのコンピューティングリソースを解放することができます。 AWS RoboMaker は次の ROS バージョンをサポートしています: ROS Kinetic、ROS Melodic、ROS2 Dashing (BETA)ROS の詳細については、こちらをご覧ください。

ROS 向けの RoboMaker のクラウド拡張機能には、動画ストリーミングを提供する Amazon Kinesis Video Streams、画像および動画分析を提供する Amazon Rekognition、音声認識を提供する Amazon Lex、音声合成を提供する Amazon Polly、ログ記録とモニタリングを提供する Amazon CloudWatch などのサービスがあります。RoboMaker では各クラウドサービスをオープンソースの ROS パッケージとして提供するため、クラウド API を利用してロボットの機能を拡張できます。これらの API はすべて使い慣れたソフトウェアフレームワークに含まれています。

各クラウドサービス拡張機能の詳細については、コードリポジトリをご覧ください。

ROS1 クラウド拡張機能

ROS2 クラウド拡張機能

サンプルアプリケーション

AWS RoboMaker には、すぐに使用を開始できるロボット工学アプリケーションのサンプルが用意されています。これらのサンプルは、一般的にインテリジェントロボット工学アプリケーションに必要な音声コマンド機能、認識機能、モニタリング機能、フリート管理機能の開始点となります。サンプルアプリケーションには、ロボット工学アプリケーションコード (ロボットの機能についての手順) とシミュレーションアプリケーションコード (シミュレーションを実行する環境の定義) が付属しています。サンプルを使って始めるには、こちらをご覧ください。 

Hello world

ロボットアプリケーションとシミュレーションアプリケーションの構築方法、コードの編集方法、ビルド方法、新しいシミュレーションの起動方法、アプリケーションをロボットにデプロイする方法の基本を学びます。何もないシミュレーションワールドでロボットを含む基本的なプロジェクトテンプレートから構築を開始します。

  • Gazebo を使用して、モデルを挿入し新しいシミュレーションワールドを構築するほか、カメラビューの操作、シミュレーションアプリケーションの再生と一時停止を行います。
  • Amazon CloudWatch Logs と Amazon S3 の出力バケットを使用して、ロボットアプリケーションとシミュレーションアプリケーションのログを表示します。
  • ターミナルを使用して ROS コマンドを実行します。
 
詳細については、 コードリポジトリまたは ドキュメントをご覧ください。

ロボットナビゲーション、動画ストリーミング、顔認識、テキスト読み上げについて学びます。ロボットは、シミュレーションされた家の中で目標地点の間を移動し、写真上の顔を認識します。ロボットは Amazon Kinesis Video Streams にカメラ画像をストリーミングし、Amazon Rekognition から顔認識の結果を受け取り、Amazon Polly を使用して認識した人の名前を音声に変換します。

  • rqt を使用して、Amazon Kinesis Video Streams にストリーミングされたシミュレーションカメラ画像を表示します。
  • rviz を使用して、ロボットの SLAM (Simultaneous Localization and Mapping) マップとそのプランニング状態を表示します。
  • ターミナルを使用して Amazon Rekognition の結果を表示します。
 
詳細については、 コードリポジトリまたは ドキュメントをご覧ください。

音声コマンド

Amazon Lex を使用して、シミュレーションされた書店内で自然言語のテキストコマンドと音声コマンドを使ってロボットを操作します。デフォルトのコマンドには、"move <direction> <rate>"、"turn <direction> <rate>"、"stop" などがあります。 ロボットは各コマンドを認識して実行します。

  • ターミナルを使用して、Amazon Lex により解釈される自然言語の動作コマンドを送信します (例: "move forward 5"、"rotate clockwise 5"、"stop")。
  • Amazon CloudWatch メトリクスを使用して、コマンドの実行、最も近い検出障害物までの距離、衝突をモニタリングします。
 
詳細については、 コードリポジトリまたは ドキュメントをご覧ください。

ロボットのモニタリング

Amazon CloudWatch メトリクスと Amazon CloudWatch Logs を使用して、シミュレーションされた書店内でロボットの状態と運用メトリクスをモニタリングします。ストリーミングされるメトリクスには、速度、最も近い障害物までの距離、衝突回数、ロボットの CPU 使用率、RAM 使用率などが含まれます。

  • Amazon CloudWatch メトリクスを使用してロボットの状態とパフォーマンスを表示します。
  • Gazebo を使用してロボットの近くに障害物をドロップし、メトリクスの結果を表示します。
 
詳細については、 コードリポジトリまたは ドキュメントをご覧ください。

強化学習を利用したオブジェクト追跡

Coach Reinforcement Learning Library を使用して、強化学習を通してシミュレーションでロボットにオブジェクトを追跡、フォローすることを学習させ、その機能をロボットにデプロイします。Amazon Cloudwatch メトリクスでリワードメトリクスを表示し、順次どのように機械学習モデルが改善されるかを確認します。また、リワード機能をカスタマイズしてトレーニング用の機械学習アルゴリズムを改善します。

  • Gazebo を使用して、追跡するオブジェクトの位置を変えて実験します。
  • rviz を使用して、シミュレーションでトレーニングしているオブジェクトを表示します。
  • Coach Reinforcement Library を使用して、モデルのトレーニングと評価を行います。
 
詳細については、 コードリポジトリまたは ドキュメントをご覧ください。

強化学習を利用した自動運転

Coach Reinforcement Learning Library を使用して、強化学習を通してシミュレーションでレースカーに運転することを学習させ、その機能をロボットにデプロイします。Amazon Cloudwatch メトリクスでリワードメトリクスを表示し、順次どのように機械学習モデルが改善されるかを確認します。また、リワード機能をカスタマイズしてトレーニング用の機械学習アルゴリズムを改善します。

  • Gazebo と rviz を使用して、シミュレーションでトレーニングしている車を表示します。
  • Amazon CloudWatch Logs を使用して車のパフォーマンスを追跡します。
  • Coach Reinforcement Library を使用して、モデルのトレーニングと評価を行います。
 
詳細については、 コードリポジトリまたは ドキュメントをご覧ください。

シミュレーションアセット

ロボットと一緒に使用できる環境を追加で作成しました。顔認識、ナビゲーション、障害物回避、および機械学習のテストに使用可能です。またシナリオに合わせて修正できます。 

住宅

RoboMaker-House

キッチン、リビングルーム、ホームジムがあり、写真が飾ってある小型住宅で、画像認識のテスト用にカスタマイズできます。ロボットがナビゲートする際の障害物が多数あります。

詳細 »

書店

RoboMaker-Bookstore

この模擬書店では本棚の間をナビゲートします。ロボットがナビゲートする際には、椅子やテーブルなどのさまざまな障害物があります。

詳細 »

レーストラック

RoboMaker-Racetrack

機械学習を使ってロボットにこのレーストラックからはみ出さないよう学習させます。レーストラックは楕円形で、トラックは明瞭に縁取りされています。位置について、用意、スタート!

詳細 »

ワークショップとチュートリアル

ワークショップ

Hello World! AWS RoboMaker の開始方法

このワークショップでは、高度なロボット工学アプリケーションの構築を AWS RoboMaker を使用して開始する方法を学習します。ロボットアプリケーションを、シミュレーション環境で、また実稼働ロボットに対しての両方で管理およびデプロイする機会もあります。(TurtleBot 3 Burger が必要です)。

詳細 »
ワークショップ

AWS RoboMaker と JPL のオープンソースの探査車を使って火星人を見つける

このワークショップでは、AWS RoboMaker についての知識を身につけ、NASA JPL のオープンソースの火星探査車をシミュレートする方法を学習します。その際、AWS RoboMaker を機械学習、モニタリング、分析などのサービスと統合する方法を学べます。これにより、火星探査車でデータのストリーミング、ナビゲート、通信、理解、学習が行えるようになります。

詳細 »
チュートリアル

強化学習を使用したロボットのトレーニング方法

強化学習 (RL) とは、機械学習 (ML) の高度な技術で、ラベル付けされたトレーニングデータがない場合でも非常に複雑な動作を学習することが可能です。長期的な目標に向けた最適化を行いつつ短期的な決定を下すこともできます。AWS RoboMaker のサンプルアプリケーションを使用すると、シミュレーションされたRL 向けのトレーニングデータを作成できます。RL モデルは、ロボットに対して物体を追跡しそれに追従するよう教育します。これは、倉庫における作業員支援や、ユーザーの後を追う家庭向けのエンタテインメントロボットといったユースケースにも拡張可能なシンプルなデモンストレーションです。
詳細 »
チュートリアル

AWS RoboMaker を使用して複数のマシンで ROS を実行する

多くの場合、ロボット開発者または研究者は複数のマシンでロボットオペレーティングシステム (ROS) を実行する必要があります。このチュートリアルでは、AWS で実行されている仮想マシンで ROS を設定する方法、物理ロボットを仮想マシンに接続する方法、およびマルチマシン分散 ROS システムを作成する方法について学習します。これらを学習することで、ロボットアプリケーションの開発が合理化されます。 

詳細 »
チュートリアル

AWS RoboMaker を使用して ROS チュートリアルを実行する

このチュートリアルでは、ロボットオペレーティングシステム (ROS) を学習するために AWS RoboMaker で環境を設定する方法を紹介します。このチュートリアルの内容: ROS の概要、ノードの作成、移動ロボットの単純な運動学、視覚による物体の認識、複数のマシンでの ROS の実行、SLAM ナビゲーション、経路プランニング、未知の環境の探索、および物体の検索。
詳細 »
チュートリアル

ROSbot + AWS Robomaker – クイックスタートチュートリアル

Husarion ROSbot 2.0 は、自律型のオープンソースロボットプラットフォームです。ロボットオペレーティングシステム (ROS) のための学習プラットフォームとしてだけでなく、研究ロボット、検査ロボット、カスタムサービスロボットなどの様々なロボットアプリケーションのための基盤として使用することができます。このチュートリアルでは、AWS RoboMaker を使用したアプリケーションの起動およびデプロイから、ボックス化解除までの手順を説明します。
詳細 »

動画

AWS RoboMaker で強化学習を使用する (4:17)
Nvidia JetBot と AWS RoboMaker による機械学習を使用したロボット工学アプリケーションのデプロイ (32:04)
AWS RoboMaker を使用して ROS アプリケーションの継続的な統合パイプラインを構築 (1:00:42)

ブログ

現時点でブログ記事は見つかりませんでした。その他のリソースについては AWS ブログを参照してください。 

Product-Page_Standard-Icons_01_Product-Features_SqInk
よくある質問を確認する

AWS RoboMaker の詳細については、よくある質問のページをご覧ください。

詳細 
Product-Page_Standard-Icons_02_Sign-Up_SqInk
無料のアカウントにサインアップ

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

サインアップ 
Product-Page_Standard-Icons_03_Start-Building_SqInk
コンソールで構築を開始する

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

サインイン