so101-sim-pick
收藏资源简介:
v1版本——82个成功的抓取和放置回合,在MuJoCo仿真中生成。一个SO-101从动臂从桌子上拾取一个40毫米的橙色球,并将其放置到一侧。没有人类遥操作,也没有真实硬件:每个回合都由脚本化策略生成,因此数据集易于重新生成和扩展。
v1 version - 82 successful pick-and-place episodes generated in MuJoCo simulation. A SO-101 follower arm picks up a 40 mm orange ball from a table and places it to the side. There is no human teleoperation nor real hardware: each episode is generated by a scripted policy, making the dataset easy to regenerate and extend.
数据集详情总结:amiryanj/so101-sim-pick
基本信息
- 许可证:Apache 2.0
- 任务类别:机器人技术(Robotics)
- 标签:LeRobot、MuJoCo、仿真、SO-101、拾取放置(Pick-and-Place)、脚本化策略
- 数据集格式:Parquet 文件(
data/*/*.parquet),基于 LeRobot 框架创建
数据集内容
该数据集包含 82 个成功的拾取-放置(Pick-and-Place)轨迹片段,全部在 MuJoCo 仿真环境中生成。任务场景为:SO-101 跟随臂从桌面上拾取一个 40 毫米的橙色球体,并将其放置到一侧。
- 无人工遥操作,不使用真实硬件
- 所有轨迹均由脚本化策略产生,成本低且易于重新生成和扩展
- 模拟器:MuJoCo 3.8.1,场景文件
SO-ARM100/Simulation/SO101/scene_sim.xml - 项目主页:https://github.com/amiryanj/robot_bazoo
轨迹生成方法
轨迹由确定性状态机生成(非神经策略,也非人类操作):
- 直接从模拟器中读取球体位置(无感知环节)
- 使用阻尼最小二乘逆运动学(DLS-IK)规划路径:
home → high → standoff → grasp - 最后一段按直线笛卡尔轨迹运动,通过逐步 IK 微调(0.2 mm/步)
- 夹爪闭合,机械臂抬升 10 cm,搬运并释放
每个轨迹均从 HOME 位置开始,因此完整运动范围均包含在数据中,而非仅包含抓取部分。
关键注意事项
数据集在抓取环节使用 MuJoCo 焊点约束(weld):SO-101 夹爪呈浅 V 形,接触面上最佳对向法向点积仅为 −0.49,无法通过刚性接触牢固抓住球形物体。因此,当两个手指均接触球体时启用焊点约束,当夹爪收到打开指令时释放该约束。这意味着:
- 机械臂动力学、接触、球体在抓取前后的运动均为真实物理模拟
- 但基于此数据训练的策略学习的是何时闭合夹爪,而非维持真实摩擦力抓取的能力
- 迁移到真实硬件时需考虑该差距
相机配置
| 相机键 | 视角 | 分辨率 | 帧率 |
|---|---|---|---|
observation.images.external |
固定视角,面向工作区 | 480×640 | 30 fps |
observation.images.wrist |
腕部,位于夹爪后方 | 480×640 | 30 fps |
observation.state 与 action 均为 6 个值,单位为度:5 个机械臂关节加 1 个夹爪。
域随机化
每个轨迹独立应用随机化,避免策略记忆单一场景,包括:
- 球体在桌面上的位置、球体半径 ±2%
- 各关节起始位姿 ±6°
- 灯光位置与方向、头灯亮度 0.70–1.25×
- 桌面颜色每通道 ±0.12
- 外部相机位置 ±3 cm、视场角 ±3°
- 腕部相机位置 ±4 mm、视场角 ±3°
- 接近角度、侧倾角、悬停距离、闭合角度逐轨迹抖动
球体颜色刻意保持基本固定(亮度 0.90–1.10× 加少量通道噪声):橙色是策略应关注的关键特征,随机化色相会导致策略忽视该重要特征。
基线性能
使用 ACT(Acting Causal Transformer)模型(5200 万参数,10 万步训练,批大小 8)在该数据上训练,对训练中未见的球体位置达到 17/20 次成功拾取。
数据规模与结构
- 总轨迹数:82
- 总帧数:23,698
- 总任务数:1
- 分割:
train(0:82),无独立验证/测试集 - 数据文件大小:约 100 MB(Parquet 格式)
- 视频文件大小:约 200 MB(MP4 格式,AV1 编码)
- 帧率:30 fps
特征规格(meta/info.json)
| 特征键 | 数据类型 | 形状 | 说明 |
|---|---|---|---|
observation.state |
float32 | [6] | 肩部旋转、肩部升降、肘部弯曲、腕部弯曲、腕部旋转、夹爪 |
action |
float32 | [6] | 同 observation.state(6维,单位:度) |
observation.images.external |
video | 480×640×3 | 外部固定相机,AV1 编码,30 fps |
observation.images.wrist |
video | 480×640×3 | 腕部相机,AV1 编码,30 fps |
timestamp |
float32 | [1] | 时间戳 |
frame_index |
int64 | [1] | 帧索引 |
episode_index |
int64 | [1] | 轨迹索引 |
index |
int64 | [1] | 全局索引 |
task_index |
int64 | [1] | 任务索引 |
数据路径格式:data/chunk-{chunk_index:03d}/file-{file_index:03d}.parquet;视频路径格式:videos/{video_key}/chunk-{chunk_index:03d}/file-{file_index:03d}.mp4。
版本
当前版本为 v1(脚本化 MuJoCo 数据)。后续版本可能完全替换轨迹,可通过指定 revision="v1" 加载特定版本,例如:
python from lerobot.datasets.lerobot_dataset import LeRobotDataset ds = LeRobotDataset("amiryanj/so101-sim-pick", revision="v1")
引用信息
BibTeX 引用信息暂未提供([More Information Needed])。



