Isaac 是 NVIDIA 开放的机器人平台。其 Isaac SDK 包括以下内容:
- Isaac Apps: 各种机器人应用示例,突出 Engine 特性或专注 GEM 功能
- Isaac Engine: 一个软件框架,可轻松构建模块化的机器人应用
- Isaac GEMs: 感知、规划到驱动的模块化算法包,大多 GPU 加速
- Isaac Sim: Omniverse 平台上的机器人应用仿真工具包
参考 Isaac SDK Doc。
准备
- Ubuntu 18.04 LTS
- NVIDIA GPU
- NVIDIA Isaac
参考:
GPU Driver
# 添加驱动源
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update -y
# 查看驱动
ubuntu-drivers devices
# driver : nvidia-driver-470 - distro non-free recommended
# 安装驱动 (470.57 or later)
sudo apt install -y nvidia-driver-470
# 重启
sudo reboot
# 确认版本
nvidia-smi
Isaac SDK
# 解压 Isaac SDK 2021.1
mkdir ~/Envs/isaac-sdk-2021.1
tar -xvf isaac-sdk-20210609-e336b5195.tar.xz -C ~/Envs/isaac-sdk-2021.1
# 安装依赖
cd ~/Envs/isaac-sdk-2021.1/engine
./engine/build/scripts/install_dependencies.sh
试下样例:
cd ~/Envs/isaac-sdk-2021.1/sdk
# 编译
bazel build //apps/samples/stereo_dummy
# 运行
bazel run //apps/samples/stereo_dummy
# 查看
xdg-open http://127.0.0.1:3000
Isaac Sim
Omniverse Launcher
准备好 Omniverse Launcher (Individual) 后,进行安装:
# 添加执行权限
sudo chmod +x omniverse-launcher-linux.AppImage
# 双击进行安装,最后会提示确认 Settings & Install Cache
具体过程,可见 Workstation Setup, Installing Launcher。进一步,阅读 User Guide 了解使用。
Nucleus Service
Nucleus Service 是 Omniverse 应用的数据库,并可多用户协作开发。
该服务于 Omniverse Launcher 的 Nucleus Tab 页,点 “+” 安装:
安装完成后,用之前注册的账号登录,会见到如下文件管理器:
Isaac Sim
Isaac Sim 是 Omniverse 平台上的机器人应用仿真工具包。
该应用于 Omniverse Launcher 的 Exchange Tab 页,搜 “isaac sim” 安装:
安装如果一直完成不了,取消后多试几次就行。
安装完成后,进 Library Tab 页,选择 Isaac Sim,点击 Launch 运行:
弹出如下选择框:
Start 后就可见到如下 Sim 界面:
菜单 Isaac Examples > Import Robots > Carter URDF > Load Robot,尝试加载样例,确认工作正常。
进一步,阅读 Isaac Sim Interface 了解使用。
参考:
VS Code 支持
安装 VS Code,
sudo apt install -y ./code_*.deb
之后,于 Isaac Sim 界面,菜单 Window > Extensions 搜索 “vscode” 安装扩展:
ENABLED 打开后,可见 VS Code Link 面板。这时,再 Launch 打开选择框,于 Open in Terminal 里 code .
打开 VS Code:
进行 Debug 调试,选择 “Python: Attach (windows-x86_64/linux-x86_64) ” 运行:
如果弹出安装 Python 扩展:
就 Install 一下:
之后,在 hello_world.py
里打个断点。菜单 Isaac Examples > Hello World > Load World 即可进入断点,进行调试了:
有关支持,可见 VSCode Support。
更多
GoCoding 个人实践的经验分享,可关注公众号!