开始使用#

前提条件#

  • Ubuntu操作系统

  • 基本熟悉终端命令

  • Miniconda (推荐)

安装#

1. 创建Conda环境#

如果您已经有一个lerobot conda环境,可以使用该环境。否则,创建一个新环境:

conda create -y -n lerobot python=3.11
conda activate lerobot

注意:建议将ManiSkill和lerobot代码放在同一个环境中,以便未来的sim2real部署。

2. 安装ManiSkill#

按照ManiSkill的官方安装说明进行安装。

# 基本安装
pip install mani-skill

# 下载场景数据集
python -m mani_skill.utils.download_asset "ReplicaCAD"

如果数据集下载出现问题,您可以直接从这个Google Drive链接下载数据集。然后文件夹内容应该放到

~/.maniskill/data/scene_datasets/replica_cad_dataset

使用快速入门指南演示脚本熟悉ManiSkill。

尝试此命令来测试您是否成功安装了ManiSkill:

备注

将shader=”rt-fast”更改为”default”以获得更快的渲染,或者如果您的计算机不支持光线追踪渲染。

python -m mani_skill.examples.demo_random_action -e "ReplicaCAD_SceneManipulation-v1" \
  --render-mode="human" --shader="rt-fast"

您应该看到类似这样的内容:

image

3. 额外依赖#

我们使用pygame来读取键盘输入并实时显示控制面板,使用Rerun来可视化和收集相机数据。

pip install pygame
pip install rerun-sdk

4. 将XLeRobot文件放入ManiSkill#

备注

我们期待ManiSkill很快为XLeRobot提供官方支持,之后可以跳过此步骤。

导航到您conda环境中的ManiSkill包文件夹:

cd ~/miniconda3/envs/lerobot/lib/python3.10/site-packages/mani_skill

将XLeRobot文件放入ManiSkill文件夹:

  1. 这里下载XLeRobot机器人文件

  2. 将文件放入/agents/robots、/assets/robots和/envs/scenes: image

    image

    image

    将XLeRobot机器人描述文件放入/agents/robots后,在/agents/robots/init.py中添加这一行 image

  3. 将控制代码添加到/examples:

    image

  4. 修改utils/scene_builder/replicacad/scenebulider.py:对于新的机器人id,您需要先将它们添加到ReplicaCAD场景中。

    image

开始运行#

备注

将shader=”default”更改为”rt-fast”以获得照片级真实感光线追踪渲染(但更慢)。

关节控制#

python -m mani_skill.examples.demo_ctrl_action -e "ReplicaCAD_SceneManipulation-v1" -r "xlerobot"  --render-mode="human" --shader="default" -c "pd_joint_delta_pos_dual_arm"

image

末端执行器控制#

原始双臂版本:

python -m mani_skill.examples.demo_ctrl_action_ee_keyboard -e "ReplicaCAD_SceneManipulation-v1" -r "xlerobot"  --render-mode="human" --shader="default" -c "pd_joint_delta_pos_dual_arm"

单臂版本:

python -m mani_skill.examples.demo_ctrl_action_ee_keyboard_single -e "ReplicaCAD_SceneManipulation-v1" -r "xlerobot_single"  --render-mode="human" --shader="default" -c "pd_joint_delta_pos"

通过Rerun进行相机可视化:

python -m mani_skill.examples.demo_ctrl_action_ee_cam_rerun -e "ReplicaCAD_SceneManipulation-v1" -r "xlerobot"  --render-mode="human" --shader="default" -c "pd_joint_delta_pos_dual_arm"

image