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,并需要系统化的方法来识别机器人动力学以进行仿真到现实的迁移。
开始使用
- 安装 Isaac Lab(v5.0 以上)。
- 克隆仓库并以可编辑模式安装包(
pip install -e source/pace_sim2real)。 - 激活您的 Isaac Lab conda 环境。
- 运行数据收集脚本,然后运行拟合脚本。拟合后的参数会出现在
logs/pace/<robot>_sim/下。
文档与支持 – 完整文档位于 https://pace.filipbjelonic.com (MkDocs)。该项目采用 Apache‑2.0 许可,由 ETH Zurich Robotic Systems Lab 积极维护,并包含贡献指南与 pre‑commit 格式化钩子。
摘要 – PACE 是一个专门的开源工具箱,用于系统识别与进化优化,强化 Isaac Lab 仿真与真实腿式机器人之间的联系,使仿真到现实的迁移更可靠。
相关
- 项目
- 项目
- Dispatch
- 项目
- 项目