Isaac SimとROSの連携環境構築(Ubuntu 20.04にOmniverseをインストール)
目的
Nvidiaの3Dデザイン環境プラットフォームである"Omniverse"で動作する"Isaac Sim"というシミュレータとROSの連携環境を構築します。これによりROSで動作する3Dのロボットシミュレーション環境が入手できます。
用意した環境
デスクトップPCを使用します。PCスペックは以下の通りです。
項目 | 概要 |
---|---|
OS | Ubuntu 20.04 LTS |
kernel | 5.13.0-35-generic |
CPU | インテル(R) Core(TM) i7-11700F |
MEM | 32GB |
GPU | GeForce RTX 3060 |
Driver Ver | 470.103.01 |
CUDA Ver | 11.4 |
インストール手順
Nvidia公式Omniverseインストールガイド
基本的には以下の手順に従っています。
ランチャーのダウンロード
まずは"Omniverse"のランチャープログラムをダウンロードします。以下のWebページからダウンロードします。
DOWNLOADボタンからダウンロードできます
ダウンロードの際には使用目的や氏名等の情報登録が必要です。
とりあえず"Both Professional and Personal"にしておきましたが、料金はかからないはず…
OSは"windows"か"linux"が選択できるので、ここでは"linux"を選択しています。すると"omniverse-launcher-linux.AppImage"というファイルがダウンロードできます。これは"Omniverse"のランチャープログラムなので、実行権限を与えてhomeディレクトリ下にでも置いておきます。例えば以下のような操作です。
$ cd /home/hardbake/Downloads
$ chmod +x omniverse-launcher-linux.AppImage
$ mv omniverse-launcher-linux.AppImage /home/hardbake/nvidia/.
このランチャープログラム実行すると"Omniverse"のウィンドウが起動しますが、使用するにはnvidiaのアカウントログインが必要です。持っていなければメールアドレスを登録して作成します。
初回起動時には"Cache"というものをインストールするかどうか聞かれます。"Cache"はOmniverse Nucleus(後述)との通信内容などをキャッシュするための仕組みなのでとりあえずインストールしておきます。
起動した状態
ちなみにこの時点でブラウザから"http://localhost:3080/"にアクセスすると各サービスの動作状況が確認できます。
サービス動作状況
左上のアカウント設定の"Settings"からは各データの保存先パスの指定ができます。
適宜パスを設定します
Omniverse Nucleusの追加
"Omniverse Nucleus"の追加はOmniverseのウィンドウから簡単に追加することができます。
Omniverse Nucleusとは?
Omniverseのまさしく核(Nucleus)となるデータサーバ(以降、"Nucleus Server"という名称で記載します)で、各アプリやデータセットを管理、接続するもののようです。複数人でプロジェクトを進めるにあたって、このサーバに接続して開発を行うことで協業作業が円滑にできるという仕組みになっています。
出典:https://robotstart.info/2021/12/08/nvidia-omniverse-meeting01.html
追加するにはNUCLEUSタブから"Add Local Nucleus Service"(+ボタン)を押します。
NUCLEUSタブ
以下のようなウィンドウが出るので"NEXT"ボタンを押します。
インストールする容量が大きいので"DATA PATH"の指定先は十分な容量を確保してね、というようなことが書いてあります
次に"Nucleus Server"の管理者アカウントを登録します。これはあくまでも"Nucleus Server"のアカウントであり、Nvidiaのアカウントとは別です。氏名やメールアドレス記入欄もありますが、ユーザー名とパスワードのみで先へ進めました。
プロジェクトに参画する人はこのようにアカウントを作成してサーバにアクセスする模様
ダウンロード&インストール中
終了後、先程登録したアカウントでログインします。
先程登録したアカウント
ログインすると"Omniverse Navigator"というファイルマネージャのようなものが表示され、各コンテンツを管理することができます。"Omniverse Navigator"はブラウザからでも("http://localhost:8080")アクセスできます。
ブラウザからでもアクセス可能
次はロボットシミュレータ環境である"Isaac Sim"を追加していきます。
余談ですが、上記作業終了時点でシステムモニタを見るとエラーが発生していました。
見なかったことにする
Discussion