Omniverse、Isaac Sim、Isaac Lab入门必会之 Nucleus 部署

news2025/2/25 6:34:28

新手入门Omniverse、Isaac Sim、Isaac Lab时经常发现,要想跑通例程,总是usd等资源加载不出来,软件傻傻的进程阻塞卡在那里,点两下就崩溃,这对新手来说非常的不友好,这都是由于没有安装 Nucleus  或者 Nucleus 没有配置好造成的。

比如,运行手臂示例:

python source/standalone/demos/arms.py

 发现抛出警告,Could not open asset @http://omniverse-content-production.s3-us-west-2.amazonaws.com之类:

Could not open asset @http://omniverse-content-production.s3-us-west-2.amazonaws.com/Assets/Isaac/4.0/Isaac/Props/Mounts/SeattleLabTable/table_instanceable.usd@

等了很久isaac sim也一直卡着

还比如要跑宇树的人形机器人H1,那么就需要H1的USD文件,这个定义在 H1_CFG

from omni.isaac.lab_assets import H1_CFG  # isort:skip

跳转到 H1_CFG,资源就定义在 

usd_path=f"{ISAACLAB_NUCLEUS_DIR}/Robots/Unitree/H1/h1.usd"

"""Configuration for the Unitree H1 Humanoid robot."""
H1_CFG = ArticulationCfg(
    spawn=sim_utils.UsdFileCfg(
        usd_path=f"{ISAACLAB_NUCLEUS_DIR}/Robots/Unitree/H1/h1.usd",
        activate_contact_sensors=True,
        rigid_props=sim_utils.RigidBodyPropertiesCfg(
            disable_gravity=False,
            retain_accelerations=False,
            linear_damping=0.0,
            angular_damping=0.0,
            max_linear_velocity=1000.0,
            max_angular_velocity=1000.0,
            max_depenetration_velocity=1.0,
        ),

我们看到如果 ISAACLAB_NUCLEUS_DIR 配置的不对,那么由于科学上网等原因,资源就获取不到了,简单办法是,资源下载到本地,然后改 ISAACLAB_NUCLEUS_DIR ,如找到H1的目录,然后给这个 变量直接赋值,如我的是:

ISAACLAB_NUCLEUS_DIR = "D:/omniverse/Downloads/Assets/Isaac/4.0/Isaac/IsaacLab"

有的资源是用的 ISAAC_NUCLEUS_DIR,同理修改成

ISAAC_NUCLEUS_DIR = "D:/omniverse/Downloads/Assets/Isaac/4.0/Isaac"


 无NUCLEUS方法(只针对 ISAAC LAB

我们可以改Lab 里关于 ISAAC_NUCLEUS_DIR 配置变量的值,文件在source\extensions\omni.isaac.lab\omni\isaac\lab\utils\assets.py,

可以从类似这里跳转 from omni.isaac.lab.utils.assets import NVIDIA_NUCLEUS_DIR

# 修改下面 配置变量或者环境变量代理 值到本地
NVIDIA_NUCLEUS_DIR = f"{NUCLEUS_ASSET_ROOT_DIR}/NVIDIA"
"""Path to the root directory on the NVIDIA Nucleus Server."""

ISAAC_NUCLEUS_DIR = f"{NUCLEUS_ASSET_ROOT_DIR}/Isaac"
"""Path to the ``Isaac`` directory on the NVIDIA Nucleus Server."""

ISAACLAB_NUCLEUS_DIR = f"{ISAAC_NUCLEUS_DIR}/IsaacLab"
"""Path to the ``Isaac/IsaacLab`` directory on the NVIDIA Nucleus Server."""

这个方法虽然简单,但是要改代码,而且不符合  NUCLEUS 设计理念

Omniverse Isaac Sim使用NVIDIA Omniverse™ Nucleus来访问环境和机器人的USD文件等内容。Omniverse Nucleus服务允许各种客户端应用程序、渲染器和微服务在Omniverse Isaac Sim中共享和修改虚拟世界的表示。

Nvidia Nucleus 概括介绍

Nvidia Nucleus 是 Nvidia Omniverse 的数据库和协作引擎,它允许多个用户跨多个应用程序实时连接,共享和修改虚拟世界的数据,从而实现高级协作工作流程。Nucleus 提供了一组基本服务,支持不同客户端应用程序、渲染器和微服务之间的实时交互和协作。

设计理念

  1. 实时协作:Nucleus 的核心设计理念是实现实时协作,通过提供跨多个工作站和多个用户的实时连接,让创作者能够无缝地共享和修改项目数据。

  2. 高效迭代:支持快速迭代是 Nucleus 的另一重要设计理念。通过检查点功能和版本控制,创作者可以安全地保存变更历史记录,并在多个版本之间迭代,从而提高工作效率。

  3. 灵活性和可扩展性:Nucleus 提供了多种安装方式和灵活的许可选项,以满足不同用户和企业的需求。无论是个人用户还是大型企业,都可以根据自己的需求部署 Nucleus。

  4. 安全性:安全性是 Nucleus 设计中的重要考虑因素。通过访问控制列表(ACLs)、单点登录(SSO)和安全传输协议(如 SSL/TLS),Nucleus 确保数据在传输和存储过程中的安全性。

  5. 集成和兼容性:Nucleus 旨在与各种现有的3D应用程序和工作流集成,通过提供连接器和扩展程序,让创作者能够继续在他们熟悉的工具中工作,同时享受 Omniverse 带来的协作和实时渲染优势。

综上所述,Nvidia Nucleus 通过提供实时协作、高效迭代、灵活性和可扩展性、安全性以及集成和兼容性等设计理念,为3D创作者和开发者打造了一个强大的协作平台。

好了,下面开始正式 Nucleus 部署之旅。

PS:我试图改过isaac sim里 nucleus 配置,以为有可以改这个全局变量的方法,而不用一个个改,我电脑文件位置在 D:\omniverse\pkg\isaac-sim-4.0.0\exts\omni.isaac.nucleus\config\extension.toml中的内容,希望能够把 nucleus 指向本地,发现没有起作用。

[settings]
persistent.isaac.asset_root.default = "omniverse://localhost/NVIDIA/Assets/Isaac/4.0"
persistent.isaac.asset_root.nvidia = "omniverse://localhost/NVIDIA"
persistent.isaac.asset_root.isaac = "omniverse://localhost/NVIDIA/Assets/Isaac/4.0/Isaac"
persistent.isaac.asset_root.cloud = "http://omniverse-content-production.s3-us-west-2.amazonaws.com/Assets/Isaac/4.0"
persistent.isaac.asset_root.timeout = 5.0 


一、搜索安装  Nucleus Navigator

安装好后启动

Nucleus Navigator — Omniverse Nucleus 最新文档 --- Nucleus Navigator — Omniverse Nucleus latest documentation (nvidia.com)icon-default.png?t=N7T8https://docs.omniverse.nvidia.com/nucleus/latest/config-and-info/navigator_v3.html

二、本地服务器的初始设置

点击Create Local Server,然后NEXT,填入个人信息,完成本地服务器的初始设置

此时,Nucleus服务器已在本地成功部署,Isaac Sim将自动从该服务器中获取资源作为默认操作,实现资产的无缝接入与管理。

 三、下载资源包

下载资源包到本地,这里下载 4.0里面的包,文件很大,注意硬盘空间,

后续步骤也可以参考官方教程,只是这个教程再FAQ里:

Setup FAQ — Omniverse IsaacSim latest documentation (nvidia.com)icon-default.png?t=N7T8https://docs.omniverse.nvidia.com/isaacsim/latest/installation/install_faq.html#assets-pack

还有一种最全的下载方法是下载这4个Pack,然后合并在一起,我嫌这个麻烦,直接用上面的方法下载的4.0的资源。

 注意:资产包对应的版本应当也是Isaac Sim 4.0.0版本。

 下载后,将每个包的内容合并到一个根文件夹中。例如,将资源包 2、3 和 4 中的内容合并或复制到资源包 1 文件夹 (isaac_sim-assets-1-4.0.0) 中。

此根文件夹 (Downloadsisaac_sim-assets-1-4.0.0AssetsIsaac4.0) 必须同时包含 NVIDIA 和 Isaac 文件夹。 

四、创建本地目录

点击LIBRARY,omniverse://localhost/Library/目录下创建名为NVIDIA的文件夹(也可以按照自己喜好创建文件夹名)

 为了说明是Asserts以及Isaac的资源,又接着往下创建了两级目录,如图

 五、将下载资源包拖入到localhost对应目录里

然后右下角开始出现上传进度(这里是拷贝,会占用硬盘资源): 

PS: 其实不用拷贝过来也行,设置default为本地文件夹,如:

.\isaac-sim.bat --/persistent/isaac/asset_root/default="C:\Users\<username>\Downloads\isaac_sim-assets-1-4.0.0\Assets\Isaac\4.0"

 我没有试过,官方教程里的方法,应该可行。

 六、Isaac Sim指定默认的资产根路径

在windows下: 

.\isaac-sim.bat --/persistent/isaac/asset_root/default="omniverse://localhost/Library/NVIDIA/Assets/Isaac/4.0"

 上面指令的目的是改掉 user.config.json 这个文件,这个文件所在目录在你的DATA PATH下,

如我的在:

 D:\omniverse\data\Kit\Isaac-Sim\4.0\user.config.json

 后续再运行 isaac-sim.bat 的时候就不需要加上了,因为配置文件已经改掉了。​

七、检查本地资产路径是否已经设置成功

打开isaac-sim,在Isaac Utils里点击Nucleus Check,如果显示是

omniverse://localhost/Library/NVIDIA/Assets/Isaac/4.0/

那就代表成功了

八、关于Isaac Lab配置

本以为一切都好了,这时我们再次运行isaac lab里的demo程序,发现还是不行,又以为改json文件,d:/omniverse/pkg/isaac-lab/isaaclab/_isaac_sim/kit/data/Kit/Isaac-Sim/4.0/user.config.json,修改里面的 default字段为omniverse://localhost/Library/NVIDIA/Assets/Isaac/4.0就可以了,发现还是不行,每次运行还是会被刷写掉

于是觉得一定有程序在Lab里启动isaac sim的时候修改了 "/persistent/isaac/asset_root/default"

参数,果然 app_launcher.py 负责修改启动参数,把这里改成这个,就好了。

"omniverse://localhost/Library/NVIDIA/Assets/Isaac/4.0",

 九、FAQ假如遇到问题如何查找原因

点击这里的LOGS LOCATION

 然后isaac sim的运行日志在这里:

然后搜索 Checking path ,如果有 Failure就是有问题,比如我当时4.0下面没下NVIDIA资源,简单在4.0目录下创建一个NVIDIA就解决了


部署感觉还是挺麻烦的,欢迎加QQ群一起交流学习:723139415

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1889557.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[论文笔记] gumbel-softmax 实现离散分布可微 + torch代码+ 原理 + 证明

gumbel-softmax如何实现离散分布可微+torch代码+原理+证明_gumbel softmax-CSDN博客 https://zhuanlan.zhihu.com/p/678930684 gumbelsoftmax 是为了防止丢失其他类别的梯度。 相当于不止选择概率大的那个类别被更新,其他类别的梯度也被更新了。 def sample_gumbel(shape, …

删除keil!VSvode+eide+jlink(stlink)配置keil工程,调试使用cortex-debug+openocd

文章目录 目的前期准备1.软件安装2.VScode安装3.VScode插件安装4.安装ARM-GCC交叉编译器 工程导入程序编译jlink在线调试部分常见问题更改为GCC 编译器更改为stlinkopencd一些tips调试变量查看构建器选项配置 目的 提示&#xff1a;这里可以添加技术概要 vscode代替keil进行程…

时间序列预测实战——Transformer模型实现长期预测并可视化结果(附代码+数据集+原理介绍)

论文地址->Transformer官方论文地址 官方代码地址->暂时还没有找到有官方的Transformer用于时间序列预测的代码地址 一、本文介绍 这篇文章给大家带来是Transformer在时间序列预测上的应用&#xff0c;这种模型最初是为了处理自然语言处理&#xff08;NLP&#xff09;…

多微信运营管理方案

微信作为一款社交通讯软件&#xff0c;已经成为人们日常生活中不可缺少的工具。不仅个人&#xff0c;很多企业都用微信来联系客户、维护客户和营销&#xff0c;这自然而然就会有很多微信账号、手机也多&#xff0c;那管理起来就会带来很多的不便&#xff0c;而多微信私域管理系…

CS2黑屏、闪退、掉线的解决方法一览

历时近一年&#xff0c;V社终于针对CS2进行了实质性更新&#xff0c;而不是做一些华而不实的升级。本次更新V社带来了五张全新地图&#xff0c;让各位可以在游戏内尽情享受混战和新地图带来的新乐趣。不过有很多玩家吐槽&#xff0c;自己在游玩CS2时&#xff0c;老遇到黑屏、闪…

wasm的逆向之旅一

目录 概要 技术名词解释 1、WebAssembly 指令集概览 1)基本结构 2)数据类型 3)模块和函数 4)指令概览 1.i32 整数运算 2.i32 浮点数运算&#xff08;用法同整数运算&#xff09; 3.逻辑运算和位移(用法同整数运算) 4.内存访问指令 6.控制流指令 7.模块和导出指令 8.其他常…

计组_机器指令

2024.06.13&#xff1a;计算机组成原理机器指令学习笔记 第13节 机器指令 3.1 指令的作用3.2 指令的格式3.2.1 操作码字段&#xff08;用户要干什么&#xff09;3.2.2 (操作数)地址码字段&#xff08;对谁进行操作&#xff09;3.2.3 格式分类*&#xff08;一步步优化&#xff0…

FDL专题:如何在工作中对Kettle任务进行迁移?可以直接调用吗?

IT团队历史数据同步任务过去都用的Kettle来开发&#xff0c;但kettle的定时调度不方便&#xff0c;维护成本高&#xff0c;遇到报错不知道怎么办。苦寻CSDN无果&#xff0c;只得在公司留下一个个深夜加班的背影...... IT经理想到&#xff1a;是否能将任务一步步迁移到一个统一…

易保全推动区块链应用与AI融合创新发展

数字化时代&#xff0c;区块链和人工智能技术作为当下两大“黑科技”&#xff0c;两者的深度结合&#xff0c;正在为企业数字化转型带来前所未有的机遇。 易保全作为国内权威的电子数据存证保全机构&#xff0c;积极探索两者的融合之道&#xff0c;将区块链的去中心化、不可篡…

解锁科研新动力,QtiPlot for Mac——您的数据可视化与分析首选工具!

QtiPlot for Mac&#xff0c;一款专为科研工作者和数据分析爱好者打造的数据可视化与分析神器&#xff0c;它如同科研道路上的得力助手&#xff0c;让复杂的数据分析变得简单直观。&#x1f52c;&#x1f4c8; 这款软件拥有强大的数据导入与处理能力&#xff0c;支持多种数据格…

电脑本机ip地址怎么查?介绍几种简单快捷方法

在数字时代&#xff0c;无论是网络连接、远程操作还是设备识别&#xff0c;IP地址都扮演着至关重要的角色。然而&#xff0c;对于许多电脑用户来说&#xff0c;如何快速准确地查找本机IP地址仍然是一个挑战。虎观代理小二将为您详细介绍几种简单快捷的IP地址查询方法&#xff0…

openssh9.8p1的rpm包

openssh9.8p1的rpm包 centos7下的openssh9.8p1rpm包 安装环境&#xff1a;centos7全系列 已经集成所有依赖到rpm包中&#xff0c;直接安装即可 rpm包下载链接 (免积分下载) 安装命令 tar -zxvf centos7_openssh-9.8.tar cd centos7_openssh-9.8 rpm -Uvh --force --nodeps *…

快速了解GPT-4o和GPT-4区别

GPT-4o简介 在5月14日的OpenAI举行春季发布会上&#xff0c;OpenAI在活动中发布了新旗舰模型“GPT-4o”&#xff01;据OpenAI首席技术官穆里穆拉蒂&#xff08;Muri Murati&#xff09;介绍&#xff0c;GPT-4o在继承GPT-4强大智能的同时&#xff0c;进一步提升了文本、图像及语…

VS开发QT程序图标修改

VS开发QT程序图标修改 1.双击打开UI界面 2.选择编辑资源 3.添加文件 4.选择ico文件 5.ok确定 6.点击保存 7.选择windowsIcon,倒三角图标 8.选择资源 9.选择图标&#xff0c;点击ok 10.保存 编译运行&#xff1a; 任务栏&#xff1a;

电脑免费压缩软件app哪个好?Top15压缩软件良心测评,图文详解!

你是否在寻找一款能够帮助你释放电脑存储空间的免费压缩软件app呢&#xff1f;在当今数字化生活中&#xff0c;文件和媒体内容日益增多&#xff0c;而硬盘空间却总是显得不够用。优秀的压缩工具不仅能节省空间&#xff0c;还能提升系统效率&#xff0c;让你的电脑运行更加流畅。…

Arthas实战(2)- OOM问题排查

一、 准备测试应用 新建一个 SpringBoot应用&#xff0c;写一段有 OOM bug 的代码&#xff1a; RestController RequestMapping public class JvmThreadController {List<TestWrapper> memoryList new ArrayList<>();GetMapping("/test")public Strin…

年份与产地:解锁红酒的秘密密码

在红酒的世界里&#xff0c;年份与产地如同两把神秘的钥匙&#xff0c;它们背后隐藏着红酒不同的魅力与秘密。今天&#xff0c;就让我们一起揭开这层神秘的面纱&#xff0c;探寻年份与产地如何为红酒赋予不同的灵魂&#xff0c;特别是以雷盛红酒为例&#xff0c;感受那份从岁月…

十 .pfc,bus纹波分析与抑制方法

以apfc为例 在分析时用 uin 和 iin 表示输入电压和输入电流&#xff0c;uo 和 io&#xff0c;表示输出电压和输出电流&#xff0c;Uin 和 Iin 表示输入电压和输入电流的幅值&#xff0c;则输入电压和输入电流可以分别表示为&#xff1a; 从式&#xff08;3-3&#xff09;可以…

Python28-1 机器学习算法之决策树

决策树&#xff08;Decision Tree&#xff09; 决策树算法是一种常用的机器学习算法&#xff0c;属于监督学习范畴。它可以用于分类和回归任务&#xff0c;具有易于理解和解释的特点。决策树通过递归将数据分割成更小的子集&#xff0c;构建一个树形结构&#xff0c;其中每个节…

KV260视觉AI套件--PYNQ-DPU-Resnet50

目录 1. 简介 2. 代码解析 3. 全部代码展示 4. 总结 1. 简介 本文以 Resnet50 为例&#xff0c;展示使用 PYNQ 调用 DPU 运行 Resnet50 网络的详细过程&#xff0c;并对其中关键代码做出解释。 PYNQ是一个针对Xilinx Zynq平台的Python开发框架&#xff0c;它允许开发者使…