🎉

Isaac Simを触ってみる

に公開

はじめに

データソリューション事業部の武道です。
今回はNVIDIAが提供する、ロボット開発向けのシミュレーションプラットフォームであるIsaac Simを触ってみたので、その内容を記事にしました。

本記事はDAL Tech Blog Advent Calendar 2025として投稿しました。全ての記事は以下からご確認いただけます。

https://adventar.org/calendars/12288

Isaac Simとは

Isaac Simとは、NVIDIAが提供するロボット開発向けのシミュレーションプラットフォームです。
「設計(Design)→ シミュレーション・学習(Tune / Train)→ 実運用(Deploy)」というロボット開発の一連の流れを統合的に支援する開発基盤とされています。


System Architecture

設計(Design)

Isaac Simは、URDF(Unified Robotics Description Format)、MJCF(MuJoCo XML Format)などの一般的な形式のロボット記述フォーマットを直接インポートできます。これらのファイルはUSD(Universal Scene Description)に統合され、ロボット構造やセンサー配置、環境などを含むシーン全体を一貫して管理できます。

シミュレーション・学習(Tune and Train)

Isaac Sim の中核となる機能は、シミュレーションです。GPUベースの物理エンジンであるPhysXによる高忠実度な物理挙動の再現に加え、RTXレンダリングを活用したカメラ、LiDAR、接触センサなど、様々な種類のセンサシミュレーションをサポートしています。これにより、デジタルツインとして現実に近い挙動を事前に検証でき、実際のロボットを起動する前に、制御・認識・学習を含むエンドツーエンドのパイプラインを実行できます。さらに Isaac Sim は、合成データ収集、現実に合わせたPhysXシミュレーションパラメータの調整、そしてIsaac Labを用いた強化学習など、多様な手法による制御エージェントの学習を支援するツール群を提供しています。

実運用(Deploy)

Isaac Simは、エージェントを実機ロボットへ展開する機能に加え、実ロボットや関連システムと統合可能なアプリケーションを構築するための包括的なコンポーネントを備えています。さらに、ROS2とのブリッジAPIを通じて、シミュレーションと実機間の直接通信を実現します。

Isaac Simをインストール

以下のページに従って、Isaac SimをローカルPCにインストールします。
https://docs.isaacsim.omniverse.nvidia.com/latest/installation/quick-install.html

システム要件

システム要件は下記のようになっており、かなりのスペックが求められることがわかります。

Isaac Simのシステム要件

インストールするPC環境は以下の通りです。

  • OS:Windows11
  • CPU:Intel Core i7(10th Generation)
  • GPU:GeForce RTX 3060 Laptop
  • VRAM:6GB

GPUは最小要件すら満たしていませんが、軽く動かす程度であれば問題ありませんでした。

インストールから起動まで

  1. こちらからzipファイルをダウンロードします。

  2. Cドライブ直下にisaac-simフォルダを作成します。

  3. ダウンロードしたzipをC:\isaac-sim配下で解凍します。

  4. C:\isaac-simフォルダ内にあるisaac-sim.selector.batをダブルクリックします。

  5. アプリセレクターが起動し、「Start」を押します。

  6. Isaac Simが起動します。
    以下の画面が立ち上がれば起動成功です。

チュートリアルを実行

ここからは以下のチュートリアルにしたがって軽い操作を行ってみます。
具体的にはFranka Emika Panda Armというアームを動かします。
https://docs.isaacsim.omniverse.nvidia.com/latest/introduction/quickstart_isaacsim_robot.html#isaac-sim-app-intro-quickstart-robot

ロボットを追加

メニューバーの [Create] > [Robots] > [Franka Emika Panda Arm]をクリックします。

Frankaが出現します。

ちなみに右側にある[Stage]タブの中で、現在のシミュレーション空間に存在しているオブジェクトがツリー構造で可視化されます。[Franka]を展開すると、その構成要素となるリンクやジョイントが表示されます。

ロボットの動作を検証する

続いてこのFrankaを自分の手で動かしてみます。

  1. メニューバーの[Tools] > [Physics] > [Physics Inspector]をクリックします。

すると画面の右側に[Physics Inspector]というタブが表示されます。

  1. [Physics Inspector]タブの選択ボタン(マウスポインターのマーク)をクリックします。

  2. [Select Articulation]というタブが表示されるので、[Franka]を選択し、[Select]を押します。

  3. [Physics Inspector]タブ内にFrankaの関節スライダーが表示されます。
    この関節スライダーを動かすことでFrankaを動かすことができます。

その他のチュートリアルやサンプル

ここで紹介したチュートリアル以外にもサンプルがたくさんあり、例えばメニューバーの[Window] > [Examples] > [Robotics Examples]からロボティクス関連のサンプルを実行することもできます。

中身はマニピュレーション、センサ、複数台ロボット、強化学習など多岐にわたります。

※詳細はこちらを参照ください。
https://docs.isaacsim.omniverse.nvidia.com/latest/introduction/menu_examples.html

おわりに

Isaac Simについては以前からその存在を知っていましたが、実際に触ってみるのは初めてでした。しかし公式ドキュメントはかなり丁寧に記載されており、初心者向けのチュートリアルも充実しているため学習のハードルはかなり下がりそうな印象を受けました。
(唯一のネックはマシンスペックですね。。。)
また今回はあくまでUIの構成や簡単な操作の確認を目的としていたため、要件を満たしていないマシンで動作させました。今後は要件を満たす環境を整え、シミュレーションや学習にも取り組む予定です。

参考にしたサイト

DAL Tech Blog

Discussion