LeRobot 框架架构、支持策略、仿真平台与数据格式详解
引言

LeRobot 框架架构
1.1 框架概述
LeRobot 是一个专注于实际机器人应用的机器人学习框架,它提供了一系列预训练模型、数据集和工具,特别关注模仿学习和强化学习方法。框架的目标是降低机器人技术的入门门槛,使研究人员和开发者能够更容易地开发和部署机器人应用。
1.2 系统架构
LeRobot 的系统架构由几个相互连接的子系统组成,这些子系统协同工作,支持机器人学习。核心基础设施支持机器人学习算法的策略系统、训练数据的数据集管理、模拟的环境接口以及物理硬件交互的机器人控制。示例目录展示了这些系统如何一起使用。

lerobot 系统架构
1.3 代码架构
LeRobot 的代码结构清晰,便于开发者理解和扩展:
.
├── examples # 示例和教程,从这里开始学习 LeRobot
│ └── advanced # 包含更高级的示例
├── lerobot
│ ├── configs # 包含可以在命令行中覆盖的所有选项的配置类
│ ├── common # 包含核心功能类和工具
│ │ ├── datasets # 各种人类演示数据集:aloha, pusht, xarm
│ │ ├── envs # 各种模拟环境:aloha, pusht, xarm
│ │ ├── policies # 各种策略实现:act, diffusion, tdmpc 等
│ │ ├── robot_devices # 硬件接口:dynamixel 电机,opencv 相机,koch 机器人
│ │ └── utils # 各种工具函数
│ └── scripts # 包含通过命令行执行的函数
│ ├── eval.py # 加载策略并在环境中评估
│ ├── train.py # 通过模仿学习和/或强化学习训练策略
│ ├── control_robot.py # 远程操作真实机器人,记录数据,运行策略
│ ├── push*dataset*to_hub.py # 将数据集转换为 LeRobot 数据集格式并上传到 Hugging Face hub
│ └── visualize_dataset.py # 加载数据集并渲染其演示
├── outputs # 包含脚本执行结果:日志、视频、模型检查点
└── tests








