本文へスキップします。

本文へ

サービスサイトロゴ

株式会社SRA

サービスサイトヘッダーリンク

承認:エディタ

ROS2 MoveIt2チュートリアル(1) - Moveit2のインストールとモーションプランニング

(掲載 2025年08月26日)

MoveIt2とは?基本的な機能と役割

MoveIt2は、ROS2 (Robot Operating System 2) 上で動作するロボットアームの動作計画(モーションプランニング)と軌道生成を支援するフレームワークです。主に以下の機能を提供しています。

  • 運動学(純運動学・逆運動学)の計算
    ロボットアームの各関節の角度からアームの姿勢やアーム先端(エンドエフェクタ)の位置を導く順運動学と、エンドエフェクタの姿勢からロボットアームの各関節の角度を導く逆運動学の計算を行います。
  • モーションプランニング(動作計画)
    あるロボットアームの姿勢から目標とする姿勢に動作するための経路(パス)を作成します。
  • 衝突回避
    ロボットアームが障害物と衝突しないように、パスを調整します。
  • 軌道生成
    モーションプランニングで得られたパスを、実際にロボットが動けるように「時間軸上の動き(速度や加速度)」へ変換します。
  • マニピュレーション
    ロボットアームがコップを持ち上げたり、ネジを締めたりといった、物体と関連する動作を制御します。
  • シミュレーション
    GazeboやRVizを使用して、ロボットアームの動作をシミュレーションできます。

MoveIt2のインストールとセットアップ

1. ROS2のインストール

ROS2の公式サイトや以下の記事を参考に、ROS2をインストールします。

この記事では以下の環境で説明していきます。

項目 内容
OS Ubuntu 22.04
ROS2 Humble

2. rosdepとaptのアップデート

システムの依存関係をインストールするために、rosdepをインストールしてパッケージが最新であることを確認します。

$ sudo apt install python3-rosdep
$ sudo rosdep init
$ rosdep update
$ sudo apt update
$ sudo apt dist-upgrade

3. Colconのインストール

ROS2のパッケージをビルドするためのツールであるColconをインストールします。

$ sudo apt install python3-colcon-common-extensions
$ sudo apt install python3-colcon-mixin
$ colcon mixin add default https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
$ colcon mixin update default

4. vcstoolのインストール

ROS2のパッケージ管理ツールであるvcstoolをインストールします。

$ sudo apt install python3-vcstool

5. ワークスペース作成とMoveIt2のビルド

ワークスペースを作成し、MoveIt2のパッケージをビルドします。 今回は、MoveIt2公式のチュートリアルパッケージソースをダウンロードしてビルドします。

$ mkdir -p ~/ws_moveit/src
$ cd ~/ws_moveit/src
$ git clone -b humble https://github.com/moveit/moveit2_tutorials
$ vcs import --recursive < moveit2_tutorials/moveit2_tutorials.repos

Colconを使用して、MoveIt2のパッケージをビルドします。

$ sudo apt remove ros-$ROS_DISTRO-moveit*
$ sudo apt update && rosdep install -r --from-paths . --ignore-src --rosdistro $ROS_DISTRO -y
$ cd ~/ws_moveit
$ colcon build --mixin release

※ビルドには時間がかかる場合があります。

6. ワークスペースのセットアップ

ビルドが完了したら、ワークスペースをセットアップします。

$ source ~/ws_moveit/install/setup.bash

※このコマンドは、ターミナルを開くたびに実行する必要があります。毎回手動で実行するのが面倒な場合は、~/.bashrcに追加して自動おくと便利です。

$ echo "source ~/ws_moveit/install/setup.bash" >> ~/.bashrc
$ source ~/.bashrc

RVizを使ったモーションプランニングのデモ

RVizは、ROS2の可視化ツールで、ロボットの状態やセンサー情報を3Dで表示することができます。MoveIt2と連携して、ロボットの動作を視覚的に確認することができます。

チュートリアルパッケージには、MoveIt2とRVizを使用してロボットアームのモーションプランニングを行うデモが含まれています。以下の手順でRVizを起動し、ロボットアームのモーションプランニングを実施します。

1. デモの起動

以下のコマンドでデモを起動します。

$ ros2 launch moveit2_tutorials demo.launch.py
moveit2_1_01

2. RVizに「MotionPlanning」のプラグインを追加

    RViz左下に「MotionPlanning」パネルがない場合は、プラグインを追加します。

    1. RViz左側のパネルで「Add」をクリックします。
      moveit2_1_02
    2. 「MotionPlanning」を選択し、「OK」で追加します。
      moveit2_1_03
    3. RViz左下に追加した「MotionPlanning」パネルが表示されます。
      moveit2_1_04

    3. モーションプランニングの実行

    1. RViz左上の「Display」パネルで次のチェックボックスを有効化します。
    • MotionPlanning/Planning Request/Query Start State
    • MotionPlanning/Planning Request/Query Goal State
      moveit2_1_05
    1. RViz中央のビュアーにアームの「Query Start State」(初期姿勢:緑)と「Query Goal State」(目標姿勢:オレンジ)が表示されます。
      moveit2_1_06
      上の画像では、初期姿勢(緑)は目標姿勢(オレンジ)と重なって隠れています。
    2. アームを動かして、初期姿勢と目標姿勢を設定します。
      moveit2_1_07
    3. RViz左下の「MotionPlanning」パネルで「Plan」をクリックし、モーションプランニングを実行します。
      moveit2_1_08
    4. プランニングが成功すると、アームの軌道が表示されます。
      moveit2_1_09
      軌道が表示されない場合は、次のチェックボックスを有効化してください。
      • MotionPlanning/Planned path/Show Trial
    1. 「MotionPlanning」パネルの「Execute」をクリックすると、アームの動作を確認できます。
      moveit2_1_10

    まとめ

    MoveIt2は、ROS2上でロボットアームの動きを制御するための強力なツールです。この記事では、MoveIt2の基本的な機能とセットアップ方法、RVizを使用したモーションプランニングのデモについて紹介しました。
    今後は、MoveIt2を使用して、より複雑なロボットアームの動作やマニピュレーションタスクの実装を紹介していきます。

    SRAでは、ROSの環境構築から各種開発まで幅広く支援いたします。(お問い合わせはこちら

    参考: Getting Started - MoveIt Documentation: Rolling documentation


    • 本ページには、弊社独自の考察・見解を記述している箇所がございます。
    • 本ページの利用によって生じたいかなるトラブル・損害等について当社は一切責任を負わないものとします。
    • 本ページは予告なく内容の変更や削除を行う場合があります。