$30 off During Our Annual Pro Sale. View Details »

MoveItを使った産業用ロボット向け動作作成方法の紹介 / Introduction to ...

Ryo Kabutan
November 09, 2024

MoveItを使った産業用ロボット向け動作作成方法の紹介 / Introduction to creating motion for industrial robots using MoveIt

第20回FA設備技術勉強会 in TOKYO
LT
2024.11.9

Ryo Kabutan

November 09, 2024
Tweet

More Decks by Ryo Kabutan

Other Decks in Science

Transcript

  1. MoveItの特徴(FA寄りの目線から) 4 Bad! Good! • 従来型の産業用ロボットのティーチングと異なり、動作を自動で生成することが できる(障害物を回避する複雑な動作も自動生成可)。 • ROSで産業用ロボットを繋げば、C++やPythonでロボットのメーカ・種類関係 なく共通のロボットアプリが作れる。

    • かつてのMoveIt(MoveIt 1と呼称)では先進的な動作生成技術が使える一方、 従来のティーチングでよく使う関節補間(MOVJ)、直線補間(MOVL)が 簡単に使える状況ではなかった。 • MoveIt 1では前者と後者の組み合わせた動作が作れなかった。 この区間は障害物があるので回避動作を自動生成、この区間は単純に 直線補間でZマイナス方向に手先をおろすなど。 最新バージョンのMoveIt 2では上記のデメリットが解消されていたので、 紹介させていただきます。
  2. 実際にやってみた MoveItでは以下のような動作生成アルゴリズムがプラグインとして活用できる 5 種別 プラグイン名 特徴 動画 自動生成系 プラグイン •

    OMPL • CHOMP • STOMP • TrajOpt 障害物を事前定義または センシングすることで障害物を 回避できる複雑な動作を自動生成 可能。 右の動画は障害物回避している例 産業用ロボット 動作系 プラグイン pilz industrial motion planner 以下の動作が作成可能。 • 関節補間(PTP) • 直線補間(LIN) • 円弧補間(CIRC) 右の動画は直線補間の例
  3. 実際にやってみた • MoveIt 2のC++/Python APIでは、区間ごとに使用する プラグイン名と動作生成ロジックが指定可能。 6 Pythonでの実装例 動作生成ロジックを切り替える場合はここの 実装を変更する

    MoveIt 2のIFで提供された新しいAPI (MoveIt 1はできなかった) 直線補間 OMPLの RRT-Connect を使った自動生成 手先の位置姿勢の指定 だけでなく 関節角度の指定でもOK 参考サイト: https://moveit.picknik.ai/main/doc/examples/motion_planning_python_api/motion_planning_python_api_tutorial.html