1. 为什么需要高自由度灵巧手
机械臂末端执行器有三个代际:夹爪(1 自由度,夹持一个位姿)、三指/四指欠驱动手(3~6 自由度,自适应包络抓取)、高自由度灵巧手(≥12 自由度,指内多关节独立驱动或强耦合)。自由度决定了操作能力上限——人手约 27 个自由度(手腕 6 + 手内约 21),可以完成捻笔、翻硬币、穿针这类需要指内运动(in-hand manipulation)的任务,这是任何夹爪都做不到的。
| 末端类型 | 自由度 | 驱动复杂度 | 操作能力 | 典型应用 |
|---|---|---|---|---|
| 二指夹爪 | 1 | 1 电机 | 抓取(平行/包络) | 工业上下料、装配 |
| 欠驱动三指手 | 3~6 | 3~6 电机,手指自适应 | 多形态抓取,无指内操作 | 服务机器人、物流分拣 |
| 高自由度灵巧手 | 12~24 | 12~20 电机 + 腱/连杆传动 | 抓取 + 指内操作 + 手势 | 遥操作、人形机器人、精密装配、科研 |
高自由度的价值不在"手指多",而在指内多关节独立运动:四指每指 4 个自由度(MCP 两轴 + PIP/DIP 屈伸),加对掌拇指,才能把物体在掌心内"揉"来调整姿态。代价是驱动、传感与控制全面变难——这就是本文要拆解的设计主线。
2. 自由度构型设计:人手解剖与自由度预算
先看人手:四指(食中无名小)每指 4 DOF = MCP 掌指关节 2(屈伸 + 侧摆)+ PIP 近端指间 1(屈伸)+ DIP 远端指间 1(屈伸),共 16;拇指 5 DOF(TMC 腕掌 2 的屈伸/内收外展 + MCP 1 + IP 1,部分模型把对掌记为独立旋转);手腕 6 DOF(实际有效 3)。合计手内约 21 + 手腕 6 ≈ 27。
| 部位 | 关节 | 自由度 | 作用 | 灵巧手设计要点 |
|---|---|---|---|---|
| 四指 | MCP | 2(屈伸/侧摆) | 手指开合主关节 | 侧摆轴常被简化合并,省 4 自由度 |
| 四指 | PIP | 1(屈伸) | 指尖定位 | 与 DIP 常做腱耦合(屈曲时近远节按比例合拢) |
| 四指 | DIP | 1(屈伸) | 指尖微调、贴合 | 驱动收益低,最常被欠驱动合并 |
| 拇指 | TMC/MCP/IP | 4~5 | 对掌、对捏核心 | 最关键的 5 个自由度——对掌使拇指能与各指指腹相对 |
| 手腕 | 俯仰/偏摆/滚转 | 3 | 调整手整体位姿 | 整手旋转(滚转)常由腕部承担 |
全驱动(每关节一个执行器)控制自由、精度高,但手又重又大、成本随自由度线性涨——Shadow Dexterous Hand 用 20 个电机驱动 24 自由度即是代表。欠驱动(电机数 < 关节数,通过腱耦合/差动/弹性自动分配)在自由度上"打折",但换来轻量、自适应包络、鲁棒抓取——Pisa/IIT SoftHand 仅 1 个电机驱动 19 个关节。工程上几乎都是折中:每指 1~3 个电机 + PIP/DIP 耦合 + 侧摆省去或共享,拇指保留最多自由度。预算决策顺序:先定抓取任务(要哪些手势/操作)→ 分配拇指与四指 DOF → 选耦合方式。
3. 驱动架构:腱驱动、直驱、连杆与软体
驱动架构决定整手的重量分布、力传递效率与控制复杂度。四种主流方案对比:
| 方案 | 原理 | 优势 | 代价 | 代表 |
|---|---|---|---|---|
| 腱驱动(远端电机) | 电机放基座/前臂,腱索(Dyneema/钢丝)绕过关节把力传到远端 | 指尖质量小、惯量低、整手轻;电机散热好;力可精确控制 | 腱摩擦/弹性/蠕变、需张力管理与预紧、结构复杂 | Shadow Hand(24 DOF)、DLR/HIT II、因时/兆威部分型号 |
| 直驱微型电机(关节内) | 每个关节内置微型电机+减速器 | 控制简单直接、无腱损耗、刚度高、易装编码器 | 指尖质量大、惯量高、功率密度受限、散热难 | 小型化关节模组堆叠方案、部分科研手 |
| 连杆驱动 | 电机驱动连杆机构带动远端关节 | 刚性传动、无腱蠕变、力传递效率高 | 结构占用指内空间、构型受限于机构学 | DexLink Hand(16 DOF)、部分抓取手 |
| 软体/气动 | 气腔/流体驱动弹性体变形 | 本质柔顺安全、成本极低、抓取任意形状 | 响应慢、力小、无精确位置/力控制 | Pisa/IIT SoftHand(腱+软性)、柔性仿生手 |
腱驱动是高自由度灵巧手的绝对主流:20 个电机塞不进手指,但可以塞进手掌甚至前臂。设计三要素——腱路(走线、套管弯曲半径,决定摩擦)、预紧(消除松弛与迟滞,需弹性张紧机构)、张力管理(每根腱实时张力测量,见第 5 节)。代价是腱的弹性与蠕变进入控制环:要么建模补偿,要么用高模量腱(Dyneema 比钢轻 8 倍同强度、蠕变小)把弹性压到可忽略。
4. 微型执行器选型:电机、减速器、编码器与 FOC
无论哪种驱动架构,能量最终来自微型电机。高自由度手对执行器的要求:小(直径 6~16mm)、轻(克级)、功率密度高、可精确力矩控制。三类电机:
| 电机类型 | 特点 | 适用 | 控制 |
|---|---|---|---|
| 空心杯(coreless) | 无铁芯、低惯量、启动快、无齿槽转矩 | 腱驱动远端电机(体积小功率密度高) | FOC/方波均可;低速零齿槽是最大优势 |
| 无框力矩(frameless BLDC) | 扁环形、中空、可嵌入关节 | 直驱关节方案(大指/拇指根) | FOC 标准流程(见驱动算法板块) |
| 微型有刷 | 便宜、简单,但电刷磨损 | 低成本手、科研样机 | 电压/电流开环或简单闭环 |
减速器选型延续减速器篇的逻辑,只是尺度缩小:微型行星(直径 ≤8mm,减速比 4~30,高功率密度,用于腱轮驱动)与微型谐波(直径 ≤20mm,零背隙,用于直驱关节)为主。腱驱动还有一个"减速放大器":小半径腱轮 + 大半径关节轮 = 无齿轮减速(速比 = R_关节/R_腱轮,可达 5~15),免去减速器重量与背隙,但腱张力放大倍数也等于该速比——电机侧力小、腱受大力,需要张力上限保护。
n = Rjoint / Rpulley (腱轮→关节轮放大比)
τjoint = n · τmotor = Rjoint · ftendon (腱张力 × 关节轮半径)
例:腱轮半径 4mm、关节轮半径 20mm → n=5,电机 0.05Nm → 关节 0.25Nm,腱受力 12.5N(0.25Nm / 20mm)
编码器装在电机侧(磁编 12~14bit,×腱轮速比后关节分辨率足够)还是关节侧(直接测指节角,但装不进小关节,常只有指尖磁铁方案)是经典取舍:腱驱动的腱伸长/蠕变会让电机侧读数≠真实关节角,所以高配方案电机侧 + 关节侧双编码器,或用腱张力做间接估计。FOC 本身与站内流程一致——电流环带宽决定指尖力的动态响应,微型电机电感小、开关频率可做高,电流环带宽反而容易做上去。
5. 传感方案:关节角、腱张力与指尖触觉
灵巧手"手感"来自三层传感,缺一不可:
| 传感 | 原理 | 关键参数 | 用途 |
|---|---|---|---|
| 关节角 | 电机侧磁编(间接)+ 关节侧霍尔/磁铁(直接) | 分辨率 0.01~0.1°;腱驱动需补偿腱伸长 | 运动学、位置控制 |
| 腱张力 | 应变片电桥测腱轮/过线柱形变;或电机电流反推 | 量程 5~50N,精度 ±0.1N,带宽 ≥100Hz | 力控制、预紧监测、断腱检测 |
| 指尖触觉 | 压阻阵列/电容阵列/微型六维力;Taxel 多点分布 | 空间分辨率 1~3mm,力分辨率 mN 级 | 抓取力闭环、滑觉检测、物体识别 |
腱张力的实现细节:腱绕过小轮(测力轮)时,轮轴受合力 = 2f·sin(包角/2),贴应变片即可测;更简单的是在腱的固定端串联S 形弹性梁 + 应变片。张力信号进控制环有两个用途:前馈(关节力矩指令直接映射为张力指令,见第 7 节)与保护(超限断腱、防夹力超标的最后防线)。指尖触觉在欠驱动手上尤其重要——没有关节级力控,就用指尖力闭环替代抓握力控制。
6. 腱驱动手指运动学建模
腱驱动手指的控制核心是腱长度 ↔ 关节角与腱张力 ↔ 关节力矩两个映射。以单关节双腱拮抗(屈腱 F / 伸腱 E 绕半径 r 的腱轮)为最简模型:
θ = (ΔLF − ΔLE) / (2r) ——差动长度 → 关节角
τ = r · (fF − fE) ——张力差 → 关节力矩
约束:fF + fE = 2f0(预紧守恒,腱只能拉不能推)→ 关节角由差动长度决定、刚度由预紧决定,两者解耦
多关节手指(MCP + PIP)有两种腱路:独立腱(每关节一对腱,4 腱驱动 2 关节)控制自由度完整;耦合腱(一根腱绕 MCP 再绕 PIP,ΔL = r1θ1 + r2θ2)使近远指节按半径比合拢——这正是人手 DIP 跟随 PIP 的生理耦合,也是欠驱动手指自适应包络的几何来源:
ΔL = r1θ1 + r2θ2,k = r2/r1 → θ2 = k·θ1(空载比例)
抓握时若指尖先接触物体,PIP 受阻则 θ2 停止、ΔL 全部转为 θ1 继续屈曲 —— 手指"绕"物体轮廓贴合
欠驱动的自适应包络原理:腱持续收缩,哪个关节阻力小就先动哪个,碰到物体后该关节锁定(几何限位或摩擦自锁),其余关节继续屈曲,最终手指整体贴合被抓物体。这种"无控制的自适应"是高自由度设计里用最少执行器获得鲁棒抓取的关键。正运动学(关节角 → 指尖位置)与机械臂一致:指尖 = Σ li·[sin(Σθ), −cos(Σθ)],见第 8 节演示与第 9 节代码。
7. 控制架构:位置、力与阻抗,以及抓取模式
灵巧手控制是三层问题:关节层(每根腱的电机伺服,位置/力矩)、手指层(指节角/指尖力)、整手层(多指协同抓取)。工程实现通常把腱张力环作为最内环(类比电流环),外层是关节位置/力矩环:
- 张力环(最内):每根腱一个力闭环,指令来自上层关节力矩映射(τ = r·Δf),带宽 ≥50Hz,超限即保护
- 位置/力矩环:期望指节角 → 逆映射为腱长/张力指令;或期望指尖力 → 张力指令
- 整手协同:抓取规划选模式(power grasp 握持:全指包络大物体,靠摩擦与几何锁紧;precision grasp 捏持:拇指+一/两指指腹相对,靠力控),多指力分配 + 阻抗/导纳柔顺
柔顺控制与力觉篇同源:指尖阻抗控制把手指末端等效为弹簧-阻尼(期望接触力 = K·(xd−x)),抓取物体时位置偏差自动产生接触力,配合张力/触觉闭环做抓握力限制。高自由度手的控制难点在耦合——腱路交叉(一根腱影响多关节)、欠驱动耦合(θ₂=kθ₁)、手指间共享电机(差动)都会让各环互相干扰,工程上要么解耦建模,要么用整手级学习/优化控制(强化学习在 Shadow Hand 上已能学出捻笔类操作)。
8. 交互式演示:腱驱动手指仿真
拖动态滑块,实时计算双腱拮抗手指(MCP + PIP 两关节)的关节角与关节力矩:全驱动模式下四根腱独立控制两关节,直观看出"差动长度决定角度、张力差决定力矩、预紧决定刚度"的解耦关系;切到耦合模式(欠驱动),单根腱按半径比驱动两关节,体会自适应包络的几何来源。
观察要点:① 全驱动下 ΔLf1−ΔLe1 决定 θ1,ΔLf2−ΔLe2 决定 θ2,两关节互不干扰;② 张力差 (fF−fE) 直接显示为关节力矩,且与角度无关——这就是腱驱动"位置与力解耦"的本质;③ 切到耦合模式,单根腱收 3mm,θ1/θ2 保持 1:0.75 固定比例屈曲,模拟人手 DIP 跟随 PIP。
9. 腱驱动手指 C 代码(运动学 + 力映射)
下面是可编译的腱驱动手指库:差动长度→关节角、张力→关节力矩、耦合腱运动学、以及带张力均衡的单关节位置 PD。可直接移植进灵巧手控制器,或用于上位机仿真验证。
10. 经典设计对照与工程要点
从 2000 年至今,高自由度灵巧手走过"全驱动堆电机 → 腱驱动精密化 → 欠驱动轻量化 → 软体融合"的演进:
| 代表 | 自由度 | 驱动 | 特点 | 定位 |
|---|---|---|---|---|
| Shadow Dexterous Hand | 24(20 电机) | 腱驱动(气动/电机) | 科研标杆,超 100 传感器 @1kHz,指尖触觉可选 | 全驱动高保真,重、贵 |
| DLR/HIT Hand II | 约 15(5 指) | 微型 BLDC 直驱关节 | 模块化手指,指尖力约 10N,抗冲击 | 直驱精密路线 |
| Pisa/IIT SoftHand | 19 关节 | 1 电机 + 腱 + 软性 | 自适应包络,本质柔顺,成本极低 | 欠驱动典型 |
| 国产商用(因时/兆威等) | 6~12 | 微型电机 + 腱/连杆 | 性价比高、尺寸小、面向量产 | 人形/服务机器人量产配套 |
- 腱路摩擦与迟滞:腱经过的每个弯都是摩擦源,套管弯曲半径 ≥5×腱径;用高模量低蠕变腱(Dyneema 类)并保持合理预紧,迟滞会直接表现为位置回差。
- 张力闭环是必须品:只有电流闭环不够——腱预紧会随温升/蠕变漂移,断腱检测也靠它;张力传感器带宽与采样同步进 FOC 控制周期。
- 电机侧编码器 ≠ 关节角:腱伸长、腱轮打滑都会引入误差;高配双编码器,低配至少做张力补偿的关节角估计。
- 散热是硬约束:手指腔体毫米级,持续抓握(长时间大电流)会让微型电机/驱动器过热降额;设计任务占空比,必要时腱驱动把电机外移。
- 欠驱动要防"失稳抓取":自适应包络对异形物体鲁棒,但捏持细长物时欠驱动手指可能"摊开"锁不住——关键手势(对捏)优先保留独立自由度。
- 整手联动与解耦:腱路交叉、共享电机、差动机构都会引入轴间耦合,控制前先建"腱-关节映射矩阵"做解耦,或用整手级优化统一求解。
11. 小结
高自由度灵巧手设计的一条主线:用最少的执行器换最多的有效自由度。自由度预算先保拇指、再保四指 MCP;驱动架构首选腱驱动(轻、力可控)配合腱轮减速;传感按"电机侧角度 + 腱张力 + 指尖触觉"三层补齐;控制上把腱张力环当作灵巧手的"电流环",上层叠加位置/力矩/阻抗。与站内主线一致——每个腱驱动执行器本质上仍是一台 FOC 伺服,微型化只是把电流环、编码器、标定流程原样缩小。抓取与操作能力,最终由自由度 × 传感 × 控制的乘积决定。