跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客我的书AI学习GitHub 精选镜像AI 生图工具UI配色美学关于
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
PythonAI算法

宇树 VR 遥操与 IL:从 xr_teleoperate 到 unitree_IL_lerobot 的 G1 开发实践

基于宇树 G1 机器人进行 VR 遥操作及模仿学习开发的完整流程。内容包括环境配置(Ubuntu、conda、unitree_sdk2_python)、XR 设备连接(Apple Vision Pro/Meta Quest)、硬件搭建(双目相机、深度相机)。详细讲解了 avp_teleoperate 和 xr_teleoperate 两种遥操程序的部署与差异,以及数据采集、格式转换(json 转 lerobot)和策略训练(pi0、diffusion policy、ACT)的方法。最后提供了真机测试步骤,适用于人形机器人 manipulation 开发参考。

苹果系统发布于 2026/4/5更新于 2026/9/1093 浏览
宇树 VR 遥操与 IL:从 xr_teleoperate 到 unitree_IL_lerobot 的 G1 开发实践

前言

本文解读基于宇树 G1 人形机器人的 VR 遥操作及模仿学习开发流程。涉及开源库 unitree_IL_lerobot 及遥操程序 xr_teleoperate(前身为 avp_teleoperate)。无论使用傅利叶集成的 idp3 还是宇树集成的 pi0,均可通过宇树开源的摇操代码收集数据。

第一部分 基于宇树开源的 avp(xr 以前的版本) 摇操程序

1.1 Ubuntu、双臂 inverse kinematics 环境配置、unitree_sdk2_python 配置

  1. 操作系统:Ubuntu 20.04 和 Ubuntu 22.04。
  2. 通信库:原 unitree_dds_wrapper 已更新为 Python 版控制通信库 unitree_sdk2_python。
    git clone https://github.com/unitreerobotics/unitree_sdk2_python.git
    

cd unitree_sdk2_python pip install -e . 3. **逆运动学环境**:使用 pinocchio 和 CasADi 库加载 URDF 并进行逆运动学计算,meshcat 用于可视化调试。 bash conda create -n tv python=3.8 conda activate tv

确保 pinocchio 版本为 3.1.0

conda install pinocchio -c conda-forge pip install meshcat pip install casadi ```

1.2 TeleVision 环境配置和 Apple Vision Pro 通信配置

1.2.1 基本环境配置和 Isaac Gym 安装
git clone https://github.com/unitreerobotics/avp_teleoperate.git
cd avp_teleoperate
pip install -r requirements.txt

下载 Isaac Gym 安装包并解压,在 isaacgym/python 目录下执行:

pip install -e .
1.2.2 证书生成相关配置

由于苹果不允许在非 HTTPS 连接上使用 WebXR,需创建自签名证书。

  1. 安装 mkcert:
    brew install mkcert
    eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"
    sudo apt-get install build-essential procps curl file git
    
  2. 生成证书:
    mkcert -CAROOT
    # 将 rootCA.pem 发送到 Apple Vision Pro
    sudo ufw allow 8012
    mkcert -install && mkcert -cert-file cert.pem -key-file key.pem <本机 IP> localhost 127.0.0.1
     cert.pem key.pem ~/avp_teleoperate/teleop/
    
cp
1.2.3 启用 Apple Vision Pro 的 WebXR 相关功能

设置 >> Apps >> Safari 浏览器 >> 高级 >> 功能标志 >> 启用 WebXR 相关功能。 启动 VR:

cd ~/avp_teleoperate/teleop
python teleop_hand.py

浏览器输入 https://<主机 IP>:8012?ws=wss://<主机 IP>:8012,点击 Enter VR。

1.3 硬件清单

物品名称数量说明
Apple Vision Pro1参考 Apple 官方网址
计算机1x86_64 架构
人形机器人 H1/G11具体型号
灵巧手1Inspire Robotics (RH56DFX) 或 Unitree Dex3
头部双目相机1USB 免驱动双目相机
手腕深度相机 D4052Intel RealSense D405

1.4 启动程序

1.4.1 开启灵巧手服务

下载灵巧手控制接口程序,拷贝至机器人 PC2 中编译运行。

sudo ./inspire_hand -s /dev/ttyUSB0
./h1_hand_example
1.4.2 开启图像推流服务 image_server

将 image_server.py 拷贝到机器人 PC2 并执行:

python image_server.py

注意检查 OpenCV 读取参数及端口可用性。

1.4.3 启动遥操作程序

确保 G1 进入调试模式(L2+R2)。操作员 A 佩戴 XR 设备访问网页,操作员 B 在终端按 r 键启动。

# G1(29DoF) + Dex3-1
python teleop_hand_and_arm.py --arm=G1_29 --hand=dex3
# 开启录制
python teleop_hand_and_arm.py --arm=G1_23 --record

1.5 avp_teleoperate 与 OpenTeleVision 的差异对比

特性avp_teleoperateOpenTeleVision
定位宇树专用,专注 VR 控制学术研究,通用远程操作框架
架构分层设计(图像、姿态、控制)模块化(模仿学习、远程操作)
依赖基于 OpenTeleVision 构建原始项目

第二部分 xr_teleoperate:avp_teleoperate 的升级版

2.1 安装

conda create -n tv python=3.10 pinocchio=3.1.0 numpy=1.26.4 -c conda-forge
conda activate tv
git clone https://github.com/unitreerobotics/xr_teleoperate.git
cd xr_teleoperate
git submodule update --init --depth 1
cd teleop/televuer
pip install -e .
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout key.pem -out cert.pem
cd ../robot_control/dex-retargeting/
pip install -e .
cd ../../../
pip install -r requirements.txt

安装 unitree_sdk2_python 库。

2.2 仿真部署

安装 unitree_sim_isaaclab 并启动仿真环境:

conda activate unitree_sim_env
cd ~/unitree_sim_isaaclab
python sim_main.py --device cpu --enable_cameras --task Isaac-PickPlace-Cylinder-G129-Dex3-Joint --enable_dex3_dds --robot_type g129

启动遥操命令示例:

python teleop_hand_and_arm.py --xr-mode=hand --arm=G1_29 --ee=dex3 --sim --record

2.3 真机部署

  1. 图像服务:复制 image_server.py 至 PC2 并运行。
  2. BrainCo 手部服务:手动启动两个巧手的服务。
    sudo ./brainco_hand --id 126 --serial /dev/ttyUSB1
    sudo ./brainco_hand --id 127 --serial /dev/ttyUSB2
    
  3. 启动遥操:确保机器人处于调试模式或运控模式,按 r 键启动。

第三部分 unitree_IL_lerobot 的安装与运行

3.1 环境安装与数据采集、转换

3.1.1 环境安装
git clone --recurse-submodules https://github.com/unitreerobotics/unitree_IL_lerobot.git
git submodule update --init --recursive
conda create -y -n unitree_lerobot python=3.10
conda activate unitree_lerobot
cd lerobot && pip install -e .
cd .. && pip install -e .
3.1.2 数据采集

可使用 avp/xr 现采数据,或从 HuggingFace 加载数据集:

from lerobot.common.datasets.lerobot_dataset import LeRobotDataset
dataset = LeRobotDataset(repo_id="unitreerobotics/G1_ToastedBread_Dataset")
3.1.3 数据转换

将 json 格式转换为 lerobot 格式:

python unitree_lerobot/utils/convert_unitree_json_to_lerobot.py \
--raw-dir $HOME/datasets/g1_grabcube_double_hand \
--repo-id your_name/g1_grabcube_double_hand \
--robot_type Unitree_G1_Dex3 \
--push_to_hub true

3.2 训练与测试

3.2.1 训练
# 训练 pi0
cd unitree_lerobot/lerobot
python lerobot/scripts/train.py --dataset.repo_id=unitreerobotics/G1_ToastedBread_Dataset --policy.type=pi0

# 训练 diffusion policy
python lerobot/scripts/train.py --dataset.repo_id=unitreerobotics/G1_ToastedBread_Dataset --policy.type=diffusion

# 训练 ACT
python lerobot/scripts/train.py --dataset.repo_id=unitreerobotics/G1_ToastedBread_Dataset --policy.type=act
3.2.2 真机测试
python unitree_lerobot/eval_robot/eval_g1/eval_g1.py \
--policy.path=<模型路径> \
--repo_id=unitreerobotics/G1_ToastedBread_Dataset

目录

  1. 前言
  2. 第一部分 基于宇树开源的 avp(xr 以前的版本) 摇操程序
  3. 1.1 Ubuntu、双臂 inverse kinematics 环境配置、unitreesdk2python 配置
  4. 确保 pinocchio 版本为 3.1.0
  5. 1.2 TeleVision 环境配置和 Apple Vision Pro 通信配置
  6. 1.2.1 基本环境配置和 Isaac Gym 安装
  7. 1.2.2 证书生成相关配置
  8. 1.2.3 启用 Apple Vision Pro 的 WebXR 相关功能
  9. 1.3 硬件清单
  10. 1.4 启动程序
  11. 1.4.1 开启灵巧手服务
  12. 1.4.2 开启图像推流服务 image_server
  13. 1.4.3 启动遥操作程序
  14. G1(29DoF) + Dex3-1
  15. 开启录制
  16. 1.5 avp_teleoperate 与 OpenTeleVision 的差异对比
  17. 第二部分 xrteleoperate:avpteleoperate 的升级版
  18. 2.1 安装
  19. 2.2 仿真部署
  20. 2.3 真机部署
  21. 第三部分 unitreeILlerobot 的安装与运行
  22. 3.1 环境安装与数据采集、转换
  23. 3.1.1 环境安装
  24. 3.1.2 数据采集
  25. 3.1.3 数据转换
  26. 3.2 训练与测试
  27. 3.2.1 训练
  28. 训练 pi0
  29. 训练 diffusion policy
  30. 训练 ACT
  31. 3.2.2 真机测试

更多推荐文章

查看全部
  • 堆排序算法详解与实现
  • PaddleOCR 文本矫正与排序算法解析
  • 基于 LLama-Factory 打造个性化 AI 角色的微调实战
  • 通义灵码 AI 编程工具:IDE 配置与全栈开发实操
  • 降低论文 AIGC 检测率的实战经验与工具分析
  • C++ 哈希表与位图实战:unordered_map/set 底层原理及实现
  • 大疆无人机开发指南:MSDK、PSDK 与上云 API 实战
  • MySQL 迁移至人大金仓的私有化工具与增量同步方案
  • 主流 AI 代码助手横向评测:Copilot、CodeGeex 与 RooCode
  • 国内 AI 开发常用:HuggingFace 镜像站 hf-mirror.com 高效下载与避坑指南
  • 基于 PySide6 实现 YOLOv8 目标检测可视化 GUI 界面
  • 深度优先搜索(DFS)与回溯法:全排列与子集问题的决策树及剪枝优化
  • OpenClaw 生态厂商产品对比与选型指南
  • VS Code Copilot Chat 复制内容为何丢失 Markdown 格式
  • Playwright 现代 Web 自动化测试简明教程
  • 基于 FPGA 的 PWM 信号生成与高精度控制设计
  • 使用 DeepSeek 辅助开发高性能贪吃蛇游戏
  • Ollama 本地 CPU 部署开源大模型
  • 人工智能(AI)常见面试题及答案汇总
  • C++ 串口应用开发详解:Qt、Boost 与 Modbus 实战

相关免费在线工具

  • 加密/解密文本

    使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Gemini 图片去水印

    基于开源反向 Alpha 混合算法去除 Gemini/Nano Banana 图片水印,支持批量处理与下载。 在线工具,Gemini 图片去水印在线工具,online

  • curl 转代码

    解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online