見出し画像

デモ卒業!Isaac Simで自分だけのロボット環境を作る方法|CRX20iA/L+Robotiq+D455

はじめに

前回の記事では、Isaac Sim 6.0.1のインストールからデモの実行までを紹介しました。

今回はその次のステップとして、

自分専用のロボットシミュレーション環境(USDファイル)の作成方法

について解説します。

この記事では、実際の製造業でも利用される構成を例に、
オリジナルのUSDファイルを作成していきます。

今回使用する構成は以下の通りです。

  • ロボットアーム:FANUC CRX20iA/L

  • グリッパー:Robotiq 2F-85

  • カメラ:Intel RealSense D455

このUSDファイルを一度作成しておけば、

  • Pythonからロボット制御

  • RGB・Depth画像取得

  • YOLOによる物体認識

  • Pick & Place

  • ROS 2連携

  • Isaac Labによる強化学習

など、今後の開発で何度も利用できます。

Isaac Simでは、ロボット・センサ・環境などを"USD(Universal Scene Description)"という形式で保存します。一度作成したシーンは何度でも読み込めるため、ロボット開発のベースとなる重要なデータです。


完成イメージ

最終的には次のような構成になります。

World
│
└── CRX20iA_L
      │
      └── J6_link
             │
             ├── flange
             │      │
             │      └── ee_link
             │             │
             │             └── Robotiq_2F_85_edit
             └── rsd455

このUSDファイルを保存しておけば、次回以降は開くだけで同じ環境を利用できます。


Step1 新しいStageを作成

まずIsaac Simを起動します。

File
↓
New

Step2 CRX20iA/Lを配置する

Content Browserから

Isaac Sim
↓
Robots
↓
FANUC
↓
CRX20iA_L

CRX20iA_Lのフォルダをクリックすると、
crx20ia_l.usdが出てくるので画面にドラッグ&ドロップします。

すると

World
└──CRX20iA_L

が追加されます。
下記のような感じになれば問題ありません。

右下のTransformのTranslateのX/Y/Zの値を0にしてください。


Step3 Robotiq 2F-85を取り付ける

続いてグリッパーを取り付けます。

Isaac Sim
↓
Robots
↓
Robotiq
↓
2F-85

2F-85のフォルダをクリックすると、
Robotiq_2F_85_edit.usdが出てくるので画面にドラッグ&ドロップします。

今回取り付ける場所は

CRX20iA_L
↓
J6_link
↓
flange
↓
ee_link

そこへ

Robotiq_2F_85_edit

を配置します。

Robotiq_2F_85_editを選択した状態で、
右下のTransformのTranslateのX/Y/Zの値を0にしてください。

Robot Assembler

を使用して固定します。

Tools
↓
Robotics
↓
Asset Editors
↓
Robot Assembler

左の画面が出るので、設定はそのままにして
Begin Assembling Processをクリック。

その後、Y+90を1回クリック。Z+90を1回クリック。
右下のTransformのTranslateのXの値を0.15にしてください。
下記のようになればOKで、Assemble and Simulateをクリック。

End Simulation And Finishをクリック後、グリッパーの位置がずれるので、再度右下のTransformのTranslateのXの値を0.15にしてください。
なぜずれるかはなぞです。
ここまでの手順を必ず守らないとうまくいかないので気を付けてください。

Robot Assemblerを使用すると、ロボットアームとグリッパーを固定ジョイントで組み合わせ、一つの構成として保存できます。

完成後再生ボタンを押して、
ロボットアームからグリッパーが落ちていかないか確認してください。


Step4 RealSense D455を取り付ける

続いてRGB-Dカメラを取り付けます。

Isaac Sim
↓
Sensors
↓
RealSence
↓
rsd455

rsd455のフォルダをクリックすると、
rsd455.usdが出てくるので画面にドラッグ&ドロップします。

今回は

CRX20iA_L
↓
J6_link
↓
flange

へ配置します。

右下のTransformのTranslateの値を調整して。
下記のように配置してください。

下記は参考までに。

カメラがグリッパーの前方を見るように合わせます。

これで完成と言いたいですが、最後に一つ設定が必要です。
再生ボタンを押したら分かりますが、
今のままではカメラが落ちていく設定となっています。
これを今から直します。

下記のRSD455を選択。

Propertyの検索バーで”Rigid Body”と入力してください。
赤色のバツを押して削除してください。

その後再生ボタンを押して
ロボットアームからカメラが落ちなければ完成です。

確認のため、構成を最後に貼っておきます。

完成後、保存はお忘れなく。

これでオリジナルのロボットシミュレーション環境が完成です。


まとめ

今回は

  • CRX20iA/L配置

  • Robotiq取り付け

  • RealSense D455取り付け

までを紹介しました。

ここまでできれば、自分専用のシミュレーション環境が完成です。

このUSDファイルは今後のロボット開発の土台となるため、一度しっかり作っておけば、その後の開発効率が大きく向上します。


次回予告

次回は今回作成したUSDファイルを使い、

PythonからCRX20iA/Lを動かします。

ここからいよいよ、本格的なロボットプログラミングに入っていきます。


フィジカルAI・工場向けAI開発のご相談

私は製造業向けのAIシステム開発を行っています。
こんなお悩みはありませんか?

* 外観検査を自動化したい
* 作業監視をAI化したい
* PPE(保護具)着用チェックを導入したい
* ロボットアームへAIを組み込みたい
* ROS2・Isaac Simを活用したい
* フィジカルAIのPoCを進めたい
* 社内向けAIツールを開発したい
* Isaac simを使ってロボット操作したい

要件整理からPoC、実装まで対応可能です。
まずはお気軽にご相談ください。

お問い合わせ
https://forms.gle/qTxgVfBF622eiBWA6

技術ポートフォリオ
GitHub

Hugging Face

note


いいなと思ったら応援しよう!

FCTX 無料で気軽に使えるアプリを個人で開発しています! いただいたチップは、アプリの改善や開発環境の維持に大切に使わせていただきます。 応援していただけると、とても励みになります!