何が起きたか
米国立標準技術研究所(NIST)は、ロボット競技会環境ARIACのドキュメントとして「Tutorial 7: Move Robots with MoveIt」を公開した。このチュートリアルは、MoveItを使用してロボットをサービスコールで動かす方法を示すもので、C++クラスの作成からPythonメソッドの呼び出しまでを段階的に解説している。
詳細
このチュートリアルは、前提条件として「Introduction to Tutorials」と「Tutorial 6」を挙げている。ソースコードはGitHub(https://github.com/jaybrecht/ariac_tutorials/tree/tutorial_7)で公開されており、ブランチを切り替えるコマンド「cd ~/ariac_ws/src/ariac_tutorials && git switch tutorial_7」が示されている。 チュートリアルの手順は、MoveItとインターフェースするC++クラス(src/robot_commander.cpp)の作成、各ロボット用のMoveGroupInterfaceオブジェクトの初期化、各ロボット用のサービスサーバーの作成(サービスリクエストでロボットをホームポジションへ移動)、サービスクライアントを使ってロボットをホームポジションへ移動させるPythonメソッドの作成、そしてスクリプトtutorial_7.pyからそのPythonメソッドを呼び出してロボットをホームポジションへ移動させる、という流れである。 パッケージ構造では、Tutorial 7で更新・作成されたファイルが強調表示されている。競技インターフェースのコード例(Listing 53)には、ROS 2のノードクラス「CompetitionInterface」が定義されており、競技状態やパーツの色・種類、AGVの宛先、組み立てステーション、グリッパー状態などを文字列に変換する辞書が含まれている。また、サービスクライアント(/ariac/start_competition)やサブスクライバ(/ariac/competition_state、/ariac/sensors/breakbeam_0/status、/ariac/sensors/advanced_camera_0/image)の設定例も示されている。
Key Facts
| NISTが「Tutorial 7: Move Robots with MoveIt」を公開した(2023-12-14掲載)。 | [0] |
| チュートリアルはMoveItを使ってロボットをサービスコールで動かす方法を示す。 | [0] |
| ソースコードはGitHub(https://github.com/jaybrecht/ariac_tutorials/tree/tutorial_7)で公開。 | [0] |
| ブランチ切り替えコマンドは「cd ~/ariac_ws/src/ariac_tutorials && git switch tutorial_7」。 | [0] |
| C++クラス(src/robot_commander.cpp)を作成し、MoveItとインターフェースする。 | [0] |
| 各ロボット用のMoveGroupInterfaceオブジェクトを初期化する。 | [0] |
| 各ロボット用のサービスサーバーを作成し、サービスリクエストでホームポジションへ移動させる。 | [0] |
| Pythonメソッドを作成し、サービスクライアントを使ってロボットをホームポジションへ移動させる。 | [0] |
| スクリプトtutorial_7.pyからPythonメソッドを呼び出してロボットをホームポジションへ移動させる。 | [0] |
| 競技インターフェースのコード例には、CompetitionInterfaceクラスが定義され、ROS 2のサービスやサブスクライバの設定が含まれる。 | [0] |
なぜ重要か
このチュートリアルは、ROS 2とMoveItを用いたロボット制御の実践的な手法を提供する。ARIACはロボット競技会の環境であり、参加者や研究者がMoveItを活用してロボットを効率的に動かすための参考資料となる。