2. 灵巧手硬件与运动学基础
要让强化学习策略在灵巧手上真正“学会抓取与操作”,第一步不是写算法,而是把硬件与运动学关系看清楚。策略网络的输入是关节角、指尖位姿与接触力,输出是关节目标或力矩;如果对多指手的结构、自由度、驱动方式、正逆运动学与工作空间没有清晰认识,奖励设计和动作空间就会失真。本节从硬件到运动学,再到抓取分类,建立后续策略工程的物理底座。
一、多指手结构:从仿生构型到连杆链
典型灵巧手由手掌基座、3~5 根手指、若干指节与关节组成。每根手指可视为一条串联连杆链:掌指关节(MCP)、近端指间关节(PIP)、远端指间关节(DIP)依次连接。以三指手为例,常见构型为 3 指 × 3 关节 = 9 个主动自由度;五指手则可能达到 15~24 个自由度。自由度越多,抓取姿态越丰富,但动作空间维度、控制难度与仿真成本也同步上升。
结构上还需关注两个关键量:连杆长度决定指尖可达范围,关节限位决定运动边界。强化学习若忽略限位,策略容易输出不可达动作,导致仿真中关节“卡死”或穿模。
二、自由度与驱动方式:欠驱动与全驱动的取舍
自由度(DoF)分为主动自由度与被动自由度。全驱动手每个关节都有独立电机,控制精度高、可做精细操作,但体积大、成本高、布线复杂;欠驱动手通过腱绳、连杆或差速机构,用较少电机驱动多个关节,结构紧凑、抓取自适应强,但难以精确控制每个关节位置。
常见驱动方式包括:电机直驱、腱绳驱动、连杆驱动、气动/液压驱动。腱绳驱动接近人手肌腱结构,适合轻量化;连杆驱动刚性好,适合工业场景;气动驱动柔顺但响应慢。选择驱动方式时,要同时考虑力控能力、回程间隙与维护成本。
动作空间设计建议:全驱动手可用关节位置/力矩作为动作;欠驱动手更适合用腱绳张力或电机位置作为动作,并在观测中加入关节实际角度,让策略感知耦合效应。
三、正逆运动学:从关节角到指尖位姿
正运动学(FK)解决“给定关节角,求指尖位姿”。对串联手指,用 DH 参数或齐次变换矩阵逐级相乘即可。逆运动学(IK)解决“给定指尖目标位姿,求关节角”,通常存在多解、无解或奇异问题。多指手还需处理指尖相对手掌的协同约束。
# 以三指手单指为例的 FK 伪代码
T = I
for i in range(3): # MCP, PIP, DIP
T = T @ rot_z(theta[i]) @ trans_x(L[i])
tip_pose = T @ [0, 0, 0, 1] # 指尖位置
在强化学习中,FK 常用于计算奖励中的指尖距离;IK 则用于生成示范轨迹或目标姿态。若 IK 求解不稳定,可改用雅可比矩阵迭代或直接让策略在关节空间探索。
四、工作空间与抓取分类
工作空间是手指末端可达点的集合,受连杆长度与关节限位约束。多指手的工作空间是各指工作空间的交集与并集组合:交集决定可协同抓取的区域,并集决定单指可达范围。抓取分类常用以下维度:
| 分类维度 | 类型 | 特点 |
|---|---|---|
| 接触方式 | 指尖抓取 / 包覆抓取 | 指尖抓取精度高,包覆抓取稳定性强 |
| 力闭合 | 力闭合 / 形闭合 | 力闭合靠摩擦,形闭合靠几何约束 |
| 抓取姿态 | 对捏 / 侧捏 / 握持 | 对应不同物体形状与任务需求 |
| 驱动耦合 | 全驱动 / 欠驱动 | 影响可控自由度与自适应能力 |
抓取分类不是学术标签,而是奖励函数的设计依据:力闭合抓取应奖励接触力分布均匀,形闭合抓取应奖励接触点几何稳定。
五、案例:三指手抓取圆柱体的运动学链路
假设三指手抓取直径 60 mm 圆柱体。首先用 IK 计算三指指尖目标点,使三指呈 120° 分布;然后检查工作空间是否覆盖该圆柱表面;最后用 FK 验证指尖实际位置与目标误差。若误差大于 5 mm,说明关节限位或连杆长度不足,需要调整抓取姿态或更换抓取分类。
六、常见误区与复盘
- 误区一:只关注自由度数量,忽略驱动耦合。欠驱动手的关节角并非独立,策略若按全驱动设计动作空间,会输出大量无效动作。
- 误区二:IK 无解时强行执行。应设置可达性检查,无解时切换抓取分类或调整目标位姿。
- 误区三:工作空间只算单指。多指协同抓取需要计算多指交集区域,否则策略会学到“看似可达、实际无法协同”的假动作。
- 误区四:抓取分类与奖励脱节。力闭合与形闭合的奖励项不同,分类错了,策略会优化错误目标。
复盘要点:每次训练前先验证 FK/IK 数值一致性,检查关节限位与工作空间边界;训练中监控指尖接触力分布,若长期集中在单指,说明抓取分类或奖励设计需要调整。