4. 机器人硬件与传感器配置
在 LeRobot 数据采集与数据集构建流程中,硬件与传感器配置是决定数据质量上限的第一道关口。无论后续采用 ACT、Diffusion Policy 还是其他模仿学习算法,模型能学到的信息完全取决于采集时硬件能提供什么。本章围绕机械臂、相机、夹爪、力传感器四类核心设备,讲清选型逻辑、关键参数与配置方法,帮助你在动手采集前把硬件链路搭对。
一、核心原理:硬件决定数据的“可学习性”
机器人学习数据本质上是“观测—动作”序列。观测来自相机、关节编码器、力传感器;动作来自机械臂与夹爪的执行指令。硬件配置的核心目标有三个:
- 观测充分性:相机视角、分辨率、帧率能否覆盖任务关键区域,例如抓取点、接触面、目标物体。
- 动作可复现性:机械臂自由度、重复定位精度、夹爪行程与力控能力是否与任务匹配。
- 时间一致性:多传感器采样频率、时间戳对齐、延迟是否可控,否则策略会学到错位的因果。
一句话原则:硬件不是越贵越好,而是“观测够用、动作可控、时间对齐”三者同时满足。
二、机械臂选型与参数设置
LeRobot 生态中常见的是 6 自由度协作机械臂(如 SO-100、Koch、ALOHA 系列)以及低成本舵机臂。选型时重点看以下参数:
| 参数 | 含义 | 推荐范围/建议 |
|---|---|---|
| 自由度 DOF | 可独立控制的关节数 | 桌面抓取 5~6 DOF;复杂操作 6~7 DOF |
| 重复定位精度 | 多次回到同一点的最大偏差 | ≤1 mm 适合精细抓取;≤3 mm 适合粗放任务 |
| 负载能力 | 末端可承载重量 | ≥ 夹爪重量 + 目标物体重量 × 1.5 安全系数 |
| 工作半径 | 末端可达范围 | 覆盖整个操作台,避免频繁移动底座 |
| 控制接口 | 与主机通信方式 | USB/串口/CAN,需确认 LeRobot 驱动支持 |
参数设置上,建议先做关节零位标定,再设置速度与加速度限制。采集阶段速度不宜过快,否则相机运动模糊会显著降低数据质量。典型配置如下:
robot:
type: so100
port: /dev/ttyACM0
baudrate: 1000000
joints:
- shoulder_pan
- shoulder_lift
- elbow_flex
- wrist_flex
- wrist_roll
- gripper
max_velocity: 0.5 # 归一化速度,采集时建议 0.3~0.5
max_acceleration: 0.8
calibration: ./calib/so100.json
三、相机配置:视角、分辨率与帧率
相机是模仿学习中最关键的观测源。常见配置为“一主多辅”:一个全局视角看整体场景,一个腕部视角看末端与接触区域。选型与参数建议:
- 分辨率:全局相机 640×480 或 1280×720;腕部相机 640×480 足够,过高会增加传输与训练负担。
- 帧率:与机械臂控制频率匹配,通常 30 FPS;若控制频率为 10 Hz,相机 30 FPS 可提供冗余。
- 曝光与白平衡:手动锁定,避免自动曝光导致帧间亮度跳变,这是数据集中最常见的噪声来源之一。
- 安装位置:全局相机俯视 30°~45°,腕部相机尽量靠近夹爪但不遮挡视线。
误区:使用自动曝光和自动白平衡。采集过程中光照变化会让模型把“亮度变化”误学成“动作变化”,导致策略不稳定。
四、夹爪与力传感器配置
夹爪决定抓取动作的物理边界。平行夹爪适合规则物体,自适应夹爪适合形状多变物体。关键参数包括行程、夹持力、开合速度。力传感器则用于接触-rich 任务,如插拔、擦拭、装配。
力传感器常见为六维力/力矩传感器,安装在腕部与夹爪之间。配置要点:
- 量程:根据任务最大接触力选择,通常 50~200 N,过大量程会降低小力分辨率。
- 采样率:≥ 100 Hz,接触瞬间力变化快,低频会丢失关键信号。
- 零点标定:每次上电后空载标定,消除夹爪自重与温漂影响。
- 滤波:硬件低通 + 软件滑动平均,但滤波延迟需与相机时间戳对齐。
sensors:
camera_front:
type: usb_camera
index: 0
width: 640
height: 480
fps: 30
auto_exposure: false
exposure: 120
camera_wrist:
type: usb_camera
index: 1
width: 640
height: 480
fps: 30
force_torque:
type: serial
port: /dev/ttyUSB0
baudrate: 115200
rate_hz: 200
zero_on_start: true
五、案例场景:桌面抓取任务的硬件配置
任务:机械臂从桌面抓取不同颜色的方块并放入盒子。硬件配置如下:
- 机械臂:SO-100,6 DOF,重复定位精度 1 mm,负载 500 g。
- 相机:全局 1280×720@30FPS,腕部 640×480@30FPS,均锁定曝光。
- 夹爪:平行夹爪,行程 50 mm,夹持力 20 N,开合速度 0.2 s。
- 力传感器:暂不配置,因为抓取任务对接触力要求不高,可先降低复杂度。
采集时控制频率设为 10 Hz,相机 30 FPS 下每 3 帧对应一个动作,时间戳统一由主机时钟打标。该配置在 LeRobot 中可直接通过 YAML 加载,采集 50 条轨迹后即可训练基础 ACT 策略。
六、复盘与常见误区
硬件配置阶段最容易出现的问题不是设备本身,而是“配置与任务不匹配”。常见误区包括:
- 相机视角被机械臂遮挡:采集时频繁出现末端遮挡目标,模型学不到稳定观测。解决:调整全局相机角度或增加腕部相机。
- 夹爪力过大导致物体弹飞:力控参数未调,抓取瞬间物体被弹开。解决:降低夹持力或增加软指垫。
- 力传感器未标定:零点漂移导致力信号基线偏移,策略学到错误的接触判断。解决:每次采集前执行零点标定。
- 多传感器时间戳不同步:相机与力传感器各自打标,导致观测与动作错位。解决:统一由主机在读取时打时间戳,或使用硬件触发。
建议在正式采集前先做 5 条“试采”,回放检查相机画面、关节轨迹、力信号是否正常,再批量采集。试采成本远低于返工成本。