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
 
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
 
2. RVizに「MotionPlanning」のプラグインを追加
RViz左下に「MotionPlanning」パネルがない場合は、プラグインを追加します。
  - RViz左側のパネルで「Add」をクリックします。 
  
 
  - 「MotionPlanning」を選択し、「OK」で追加します。 
  
  
  - RViz左下に追加した「MotionPlanning」パネルが表示されます。 
  
 
3. モーションプランニングの実行
    - RViz左上の「Display」パネルで次のチェックボックスを有効化します。
 
    - MotionPlanning/Planning Request/Query Start State
 
    - MotionPlanning/Planning Request/Query Goal State 
    
 
    - RViz中央のビュアーにアームの「Query Start
    State」(初期姿勢:緑)と「Query Goal
    State」(目標姿勢:オレンジ)が表示されます。
    
    上の画像では、初期姿勢(緑)は目標姿勢(オレンジ)と重なって隠れています。 
    - アームを動かして、初期姿勢と目標姿勢を設定します。
    
 
    - RViz左下の「MotionPlanning」パネルで「Plan」をクリックし、モーションプランニングを実行します。
    
 
    - プランニングが成功すると、アームの軌道が表示されます。
    
    軌道が表示されない場合は、次のチェックボックスを有効化してください。
    - MotionPlanning/Planned path/Show Trial
 
 
    - 「MotionPlanning」パネルの「Execute」をクリックすると、アームの動作を確認できます。
    
 
まとめ
MoveIt2は、ROS2上でロボットアームの動きを制御するための強力なツールです。この記事では、MoveIt2の基本的な機能とセットアップ方法、RVizを使用したモーションプランニングのデモについて紹介しました。
今後は、MoveIt2を使用して、より複雑なロボットアームの動作やマニピュレーションタスクの実装を紹介していきます。
SRAでは、ROSの環境構築から各種開発まで幅広く支援いたします。(お問い合わせはこちら)
参考: Getting
Started - MoveIt Documentation: Rolling documentation
    - 本ページには、弊社独自の考察・見解を記述している箇所がございます。
 
    - 本ページの利用によって生じたいかなるトラブル・損害等について当社は一切責任を負わないものとします。
 
    - 本ページは予告なく内容の変更や削除を行う場合があります。