从Orbit迁移#
由于 Orbit 被用作 Isaac Lab 的基础,从Orbit迁移到Isaac Lab是直接的。以下部分描述了从Orbit迁移到Isaac Lab需要进行的更改。
备注
以下更改是针对Isaac Lab 1.0版本发布的。请参考 release notes 查看将来版本中的任何更改。
重命名启动脚本#
脚本 orbit.sh
已更名为 isaaclab.sh
。
扩展更新#
扩展 omni.isaac.orbit
, omni.isaac.orbit_tasks
和 omni.isaac.orbit_assets
已更名为 omni.isaac.lab
, omni.isaac.lab_tasks
和 omni.isaac.lab_assets
,因此,新的文件夹结构如下:
source/extensions/omni.isaac.lab/omni/isaac/lab
source/extensions/omni.isaac.lab_tasks/omni/isaac/lab_tasks
source/extensions/omni.isaac.lab_assets/omni/isaac/lab_assets
高级别导入也必须更新:
Orbit |
Isaac Lab |
---|---|
|
|
|
|
|
|
类名更新#
在Isaac Lab中,我们引入了任务设计工作流的概念(参见 任务设计工作流程) 。Orbit代码使用基于管理器的工作流,环境特定的类名已更新以反映这一变化:
Orbit |
Isaac Lab |
---|---|
|
|
|
|
|
|
|
|
|
任务文件夹结构更新#
为了支持基于管理器和直接工作流,我们在任务扩展中添加了两个文件夹:
source/extensions/omni.isaac.lab_tasks/omni/isaac/lab_tasks/manager_based
source/extensions/omni.isaac.lab_tasks/omni/isaac/lab_tasks/direct
Orbit中的任务现在可以在 manager_based
文件夹下找到。这一更改也必须在任务的导入中予以反映。例如,
from omni.isaac.orbit_tasks.locomotion.velocity.velocity_env_cfg ...
现在应该是:
from omni.isaac.lab_tasks.manager_based.locomotion.velocity.velocity_env_cfg ...
其他重大更改#
设置设备#
--cpu
参数已被 --device device_name
取代。device_name
的有效选项为:
CPU
: 使用 CPU。cuda
: 使用设备ID为``0``的GPU。cuda:N
: 使用GPU,其中N是设备ID。例如,cuda:0
。
默认值是 cuda:0
。
离屏渲染#
给予 omni.isaac.lab.app.AppLauncher
的输入参数 --offscreen_render
和环境变量 OFFSCREEN_RENDER
已更名为 --enable_cameras
和 ENABLE_CAMERAS
。
事件术语分布配置#
events.py 中的一些事件函数接受 distribution
参数和一个 range
以进行抽样。为了支持任意分布,我们已将输入参数 AAA_range
对这些函数重命名为 AAA_distribution_params
。因此,带有 distribution
参数的事件术语配置应予以更新。例如,
add_base_mass = EventTerm(
func=mdp.randomize_rigid_body_mass,
mode="startup",
params={
"asset_cfg": SceneEntityCfg("robot", body_names="base"),
"mass_range": (-5.0, 5.0),
"operation": "add",
},
)
现在应该是:
add_base_mass = EventTerm(
func=mdp.randomize_rigid_body_mass,
mode="startup",
params={
"asset_cfg": SceneEntityCfg("robot", body_names="base"),
"mass_distribution_params": (-5.0, 5.0),
"operation": "add",
},
)