鍬形です。
アールティが販売するアームロボットCRANE-X7のROS 2パッケージを更新しました。新しいROS 2ディストリビューションであるHumbleへの対応に加え、手先カメラを使用したマーカ認識とピックアンドプレースを行うサンプルを追加しました。また、MoveItを使用したサンプルプログラムが動作しない場合の解決策についてもご紹介します。
CRANE-X7のご紹介
CRANE-X7はアールティが販売しているアームロボットです。7自由度のアームにグリッパを搭載しています。今回ご紹介するROS 2パッケージを使用することでボールを掴んで移動させるといった動作が簡単にプログラミングできます。
また、アールティが公開しているC++ライブラリを用いることで外力に柔軟な制御をすることができます。
詳細な特徴は下記の製品ページをご覧ください。
CRANE-X7は下記の販売ページから購入できます。
今回ご紹介するCRANE-X7 ROS 2パッケージは下記のGitHubリポジトリで配布しています。シミュレータ用パッケージも同梱されているので購入前の参考にも是非ご利用ください。インストール方法はパッケージのREADMEに記載されています。
Humble対応のお知らせ
前回のFoxy対応に続き新しいROS 2ディストリビューションであるHumble Hawksbillに対応しました。Humble版のパッケージはhumbleブランチを参照してください。
Foxy版のパッケージが必要な場合はfoxy-develブランチを参照してください。またFoxyのサポートは2023年5月に終了予定となっておりますのでご注意ください。
手先カメラによる物体認識サンプル
CRANE-X7の手先に搭載したカメラで物体の位置を認識し、掴んで運ぶサンプルプログラムを追加しました。ArUcoマーカとよばれるマーカを掴む対象に取り付け、OpenCVのライブラリでマーカを認識しています。実行手順はREADMEをご覧ください。
カメラにはIntel RealSense D435を使用しています。CRANE-X7のハードウェア情報をまとめたリポジトリにRealSense D435マウンタの3D プリント用データを公開しておりますので是非ご活用ください。
CRANE-X7の側面にはケーブルを結束バンドでまとめるための穴があけられています。カメラを接続するケーブルをアームや周囲の環境に引っ掛けずに安全に実験することができます。
MoveItのサンプルが動かなくなったときは
FastDDSの不具合によってMoveItを使用したサンプルプログラムでアームが動作しない、tfのlookupに失敗するといった症状が確認されています。
解決策としてFastDDSの代わりにCycloneDDSを使う方法があげられます。下記コマンドによってCycloneDDS用のRMWがインストールできます。
sudo apt install ros-$ROS_DISTRO-rmw-cyclonedds-cpp
CycloneDDSを使用するためには下記コマンドを実行します。このコマンドは実行した端末上でしか有効にならないため、永続的に使用する場合は~/.bashrcに記述する必要があります。
export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
上記の手順でアールティの開発環境ではCRANE-X7の動作が安定するようになりました。MoveItのサンプルプログラムでアームが動かない場合はお試しください。
まとめ
今回はCRANE-X7 ROS 2パッケージの更新内容についてお知らせしました。Humble対応や手先カメラを使用したマーカ認識とピックアンドプレースを行うサンプル、アームが動作しない場合の対処方法についてご紹介しました。カメラを使用したサンプルは今後も追加予定ですので今後ともCRANE-X7をよろしくお願いします。