leggedrobotics/pace-sim2real

PACE: A systematic approach for sim-to-real transfer of legged robots, identifying actuator and joint dynamics with standard joint encoders.

PACE – 腿式机器人的仿真到现实迁移

功能说明 – PACE(通过持续演化进行精确适应)是一个 Python 框架,帮助您将腿式机器人控制器从物理仿真器迁移到真实机器人。其工作方式如下:

  • 收集真实世界的执行器/关节数据(或使用仿真数据作为替代)。
  • 使用 CMA‑ES 进化算法优化一组具有物理意义的动力学参数(例如电机常数、摩擦力)。
  • 将学习到的参数反馈到 NVIDIA Isaac Lab,使仿真机器人的行为与硬件一致,从而提升运动表现。

主要组件

  • pace_sim2real 包 – 核心类(PaceCfg、PaceSim2realEnvCfg、CMAESOptimizer)以及定义电机模型的工具。
  • 示例脚本:
    • scripts/pace/data_collection.py – 在 Isaac Lab 中执行短暂的激励运动并保存数据。
    • scripts/pace/fit.py – 运行 CMA‑ES 以拟合执行器/关节参数并写入日志文件夹。
  • 与 Isaac Lab 的任务/环境系统集成(pace_sim2real.tasks 注册环境)。

适用对象 – 使用腿式平台(例如 ANYmal D)的研究人员或工程师,他们已使用 NVIDIA Isaac Lab,并需要系统化的方法来识别机器人动力学以进行仿真到现实的迁移。

开始使用

  1. 安装 Isaac Lab(v5.0 以上)。
  2. 克隆仓库并以可编辑模式安装包(pip install -e source/pace_sim2real)。
  3. 激活您的 Isaac Lab conda 环境。
  4. 运行数据收集脚本,然后运行拟合脚本。拟合后的参数会出现在 logs/pace/<robot>_sim/ 下。

文档与支持 – 完整文档位于 https://pace.filipbjelonic.com (MkDocs)。该项目采用 Apache‑2.0 许可,由 ETH Zurich Robotic Systems Lab 积极维护,并包含贡献指南与 pre‑commit 格式化钩子。


摘要 – PACE 是一个专门的开源工具箱,用于系统识别与进化优化,强化 Isaac Lab 仿真与真实腿式机器人之间的联系,使仿真到现实的迁移更可靠。

相关

  • 项目
  • 项目
  • Dispatch
  • 项目
  • 项目