smart_hand

第4章:腱驱动系统

本章概述

腱驱动系统通过远程传动实现灵巧手的精确控制,将驱动器置于手掌或前臂位置,通过腱绳(钢丝绳、合成纤维等)传递运动和力。这种设计显著减小了手指的惯量,提高了动态响应性能,同时保持了较高的力传递效率。本章将深入探讨腱驱动的设计原理、张力优化、材料选择、摩擦补偿等关键技术,并通过工业案例展示其在深海机器人等极端环境下的应用。

学习目标

4.1 腱绳路由:N+1原理与耦合矩阵

腱驱动系统的核心在于如何用最少的驱动器控制多自由度的手指运动。N+1原理提供了一种优雅的解决方案:对于N个自由度的系统,使用N+1根腱绳即可实现完全控制。这一节将详细介绍腱绳路由的设计原理、数学建模方法以及实际工程中的考虑因素。

4.1.1 N+1驱动原理

N+1驱动原理是腱驱动系统设计的基础理论。对于一个具有N个旋转关节的手指,理论上需要2N根腱绳(每个关节需要一对拮抗腱)才能独立控制各关节的位置和刚度。然而,通过巧妙的路由设计,仅需N+1根腱绳即可实现位置控制,这大大简化了系统复杂度。

考虑一个三关节手指的例子,传统方法需要6根腱绳,而N+1方法仅需4根:

    驱动器端                     指尖端
        │                          │
    ┌───┼───┐                  ┌───▼───┐
    │ M1│M2 │                  │       │
    └───┼───┘                  │  指尖  │
        │                      └───┬───┘
    ┌───┼───┐                      │
    │ M3│M4 │                  ┌───▼───┐
    └───┼───┘                  │  DIP  │
        │                      └───┬───┘
     腱绳路由                       │
        │                      ┌───▼───┐
        └──────────────────────│  PIP  │
                               └───┬───┘
                                   │
                               ┌───▼───┐
                               │  MCP  │
                               └───────┘

N+1原理的数学基础在于关节空间和腱空间之间的映射关系。设关节角度向量为 $\theta \in \mathbb{R}^N$,腱长向量为 $l \in \mathbb{R}^{N+1}$,则有:

\[l = R\theta + l_0\]

其中 $R \in \mathbb{R}^{(N+1) \times N}$ 是路由矩阵,$l_0$ 是初始腱长。由于 $R$ 的秩为N,系统是完全可控的。

4.1.2 腱绳路由拓扑

腱绳路由拓扑决定了力传递特性和运动耦合关系。常见的路由拓扑包括:

1. 完全耦合路由:每根腱绳经过所有关节,提供最大的力传递能力,但控制复杂度高。

2. 部分耦合路由:腱绳选择性地经过某些关节,在控制复杂度和性能之间取得平衡。

3. 解耦路由:每根腱绳只驱动一个关节,控制简单但需要更多驱动器。

路由设计需要考虑的约束条件:

优化目标函数通常包括:

4.1.3 耦合矩阵建模

耦合矩阵 $C$ 描述了关节运动与腱绳长度变化之间的关系,是腱驱动系统分析的核心工具。

对于手指的运动学模型,腱绳长度变化量 $\Delta l$ 与关节角度变化量 $\Delta \theta$ 的关系为:

\[\Delta l = -C \Delta \theta\]

其中耦合矩阵 $C$ 的元素 $c_{ij}$ 表示第j个关节单位转动引起第i根腱绳的长度变化。

耦合矩阵的构建方法

  1. 几何方法:基于腱绳绕关节的半径直接计算 \(c_{ij} = \begin{cases} r_{ij} & \text{如果腱i经过关节j} \\ 0 & \text{否则} \end{cases}\)

  2. 实验标定:通过测量实际系统的输入输出关系
    • 固定其他关节,单独转动关节j
    • 测量各腱绳的长度变化
    • 通过最小二乘法拟合矩阵元素
  3. 优化设计:根据性能指标优化矩阵结构 \(\min_{C} J(C) = \alpha \cdot \text{cond}(C) + \beta \cdot \|C\|_F\)

    其中 $\text{cond}(C)$ 是条件数,$|C|_F$ 是Frobenius范数。

耦合矩阵的性质分析

4.1.4 运动传递分析

腱驱动系统的运动传递特性直接影响控制精度和动态响应。主要分析内容包括:

1. 传动比分析

定义传动比矩阵 $G = (C^TC)^{-1}C^T$,则关节空间速度与驱动空间速度的关系为:

\[\dot{\theta} = G \dot{l}\]

传动比的优化目标:

2. 工作空间分析

考虑腱绳长度约束 $l_{min} \leq l \leq l_{max}$,关节空间的可达工作空间为:

\[W = \{\theta | l_{min} \leq R\theta + l_0 \leq l_{max}\}\]

工作空间的评价指标:

3. 力传递特性

静力平衡方程: \(\tau = C^T t\)

其中 $\tau$ 是关节力矩向量,$t$ 是腱张力向量。

力传递的性能指标:

4. 动力学耦合

考虑腱绳弹性,系统动力学方程为:

\[M(\theta)\ddot{\theta} + h(\theta, \dot{\theta}) = C^T K_t (l_d - l)\]

其中:

腱绳弹性引入的振动模态: \(\omega_i = \sqrt{\frac{\lambda_i(C^T K_t C)}{m_{eff,i}}}\)

设计时需要确保系统的固有频率远离工作频率范围,避免共振。

4.2 张力分配:凸优化与实时求解

腱驱动系统的一个核心挑战是张力分配问题:给定期望的关节力矩,如何计算各腱绳的张力?由于N+1配置存在冗余,同一组关节力矩可由无穷多种张力组合实现。本节将介绍如何将这个问题建模为凸优化问题,并实现适合实时控制的高效求解算法。

4.2.1 张力分配问题建模

张力分配的基本问题可以表述为:给定期望关节力矩 $\tau_d \in \mathbb{R}^N$,求解腱张力 $t \in \mathbb{R}^{N+1}$,使得:

\[C^T t = \tau_d\]

由于系统冗余(N+1根腱控制N个自由度),该方程有无穷多解。我们需要添加额外的优化目标和约束来获得唯一解。

基本约束条件

  1. 张力非负约束:腱绳只能拉不能推 \(t_i \geq 0, \quad i = 1, 2, ..., N+1\)

  2. 最小张力约束:防止腱绳松弛 \(t_i \geq t_{min} > 0\)

  3. 最大张力约束:防止腱绳断裂 \(t_i \leq t_{max}\)

  4. 驱动器约束:考虑电机能力 \(\dot{t}_i \leq \dot{t}_{max}\)

标准优化问题形式

\[\begin{aligned} \min_{t} \quad & J(t) \\ \text{s.t.} \quad & C^T t = \tau_d \\ & t_{min} \leq t \leq t_{max} \end{aligned}\]

常用的目标函数 $J(t)$ 包括:

4.2.2 凸优化框架

张力分配问题的优美之处在于它可以被建模为凸优化问题,保证了全局最优解的存在性和唯一性。

二次规划(QP)形式

最常用的是将问题建模为二次规划:

\[\begin{aligned} \min_{t} \quad & \frac{1}{2} t^T Q t + c^T t \\ \text{s.t.} \quad & C^T t = \tau_d \\ & t_{min} \mathbf{1} \leq t \leq t_{max} \mathbf{1} \end{aligned}\]

其中 $Q \succeq 0$ 是正半定矩阵,$c$ 是线性项系数。

引入松弛变量

为处理软约束和提高数值稳定性,可引入松弛变量:

\[\begin{aligned} \min_{t,s} \quad & \frac{1}{2} t^T Q t + c^T t + \rho \|s\|_2^2 \\ \text{s.t.} \quad & C^T t = \tau_d + s \\ & t_{min} \mathbf{1} \leq t \leq t_{max} \mathbf{1} \end{aligned}\]

其中 $s$ 是松弛变量,$\rho$ 是惩罚因子。

锥规划形式

对于更复杂的约束(如摩擦锥),可使用二阶锥规划(SOCP):

\[\begin{aligned} \min_{t,z} \quad & c^T t + z \\ \text{s.t.} \quad & C^T t = \tau_d \\ & \|F t\|_2 \leq z \\ & t \geq t_{min} \mathbf{1} \end{aligned}\]

KKT条件分析

对于标准QP问题,KKT条件为:

\[\begin{aligned} Q t + c - C \lambda - \mu^+ + \mu^- &= 0 \\ C^T t - \tau_d &= 0 \\ \mu^+ \geq 0, \quad t - t_{min} \mathbf{1} &\geq 0 \\ \mu^- \geq 0, \quad t_{max} \mathbf{1} - t &\geq 0 \\ \mu^+_i (t_i - t_{min}) &= 0 \\ \mu^-_i (t_{max} - t_i) &= 0 \end{aligned}\]

4.2.3 实时求解算法

实时控制要求张力分配算法在毫秒级时间内完成求解。以下介绍几种高效算法:

1. 内点法(Interior Point Method)

适用于中等规模问题,收敛速度快:

算法:原始-对偶内点法
输入:τ_d, Q, c, C, t_min, t_max
输出:最优张力 t*

1. 初始化:选择可行初始点 (t⁰, λ⁰, μ⁰)
2. While 未收敛:
   a. 构建牛顿方程系统:
      [Q  -C  -I   I ] [Δt]   [-∇L]
      [C^T 0   0   0 ] [Δλ] = [-r_p]
      [S⁺  0   Z⁺  0 ] [Δμ⁺]  [-r_c⁺]
      [S⁻  0   0   Z⁻] [Δμ⁻]  [-r_c⁻]
   
   b. 求解牛顿方向 (Δt, Δλ, Δμ)
   
   c. 线搜索确定步长 α
   
   d. 更新变量:
      t^(k+1) = t^k + α·Δt
      λ^(k+1) = λ^k + α·Δλ
      μ^(k+1) = μ^k + α·Δμ
   
3. 返回 t*

2. 有效集法(Active Set Method)

适用于约束较少的情况:

算法:有效集QP求解
1. 识别有效约束集 A = {i | t_i = t_min 或 t_i = t_max}
2. 求解等式约束子问题
3. 检查KKT乘子符号
4. 更新有效集:添加或删除约束
5. 重复直到收敛

3. 快速梯度法(Fast Gradient Method)

针对大规模问题的一阶方法:

\[t^{k+1} = \text{proj}_{\mathcal{C}} \left( t^k - \alpha \nabla J(t^k) \right)\]

其中投影算子: \([\text{proj}_{\mathcal{C}}(x)]_i = \max(t_{min}, \min(x_i, t_{max}))\)

使用Nesterov加速: \(\begin{aligned} y^{k+1} &= t^k - \alpha \nabla J(t^k) \\ t^{k+1} &= \text{proj}_{\mathcal{C}}(y^{k+1}) \\ t^{k+1} &= t^{k+1} + \beta (t^{k+1} - t^k) \end{aligned}\)

4. 解析解法(Analytical Solution)

对于特殊结构的问题,可推导解析解。例如,当 $Q = I$,无界约束时:

\[t^* = t_{null} + C(C^T C)^{-1}(\tau_d - C^T t_{null})\]

其中 $t_{null} = (I - C(C^T C)^{-1}C^T) t_0$ 是零空间分量。

算法性能对比

算法 复杂度 精度 适用场景
内点法 $O(n^3)$ 中等规模,高精度要求
有效集法 $O(n^2 m)$ 约束少,warm start
快速梯度 $O(n/\sqrt{\epsilon})$ 大规模,实时性要求高
解析法 $O(n^2)$ 特殊结构问题

4.2.4 鲁棒性分析

实际系统中存在各种不确定性,需要设计鲁棒的张力分配策略。

1. 参数不确定性

考虑耦合矩阵的不确定性: \(C = C_0 + \Delta C, \quad \|\Delta C\| \leq \delta\)

鲁棒优化形式: \(\begin{aligned} \min_{t} \quad & \|t\|_2^2 + \gamma \|e\|_2^2 \\ \text{s.t.} \quad & C_0^T t + e = \tau_d \\ & \|e\| \leq \delta \|t\| \\ & t_{min} \mathbf{1} \leq t \leq t_{max} \mathbf{1} \end{aligned}\)

2. 摩擦补偿

考虑腱绳摩擦,实际传递到关节的力矩为: \(\tau_{actual} = C^T \Lambda(t) t\)

其中 $\Lambda(t) = \text{diag}(\lambda_1(t_1), …, \lambda_{N+1}(t_{N+1}))$ 是摩擦效率矩阵。

迭代补偿算法:

1. 初始估计:t⁰ = solve_qp(τ_d, C)
2. For k = 1 to max_iter:
   a. 计算摩擦损失:Λ^k = friction_model(t^(k-1))
   b. 补偿力矩:τ_comp = τ_d / Λ^k
   c. 更新张力:t^k = solve_qp(τ_comp, C)
   d. 检查收敛:if |t^k - t^(k-1)| < ε, break

3. 安全边界

设计安全边界以防止极限情况:

\[t_{safe} = t_{min} + \epsilon_1 \leq t \leq t_{max} - \epsilon_2\]

动态调整安全边界: \(\epsilon_i(t) = \epsilon_0 + k_v |\dot{t}_i| + k_a |\ddot{t}_i|\)

4. 故障容错

考虑单根腱绳失效的情况,设计降级控制策略:

\[\begin{aligned} \min_{t} \quad & \|t\|_2^2 \\ \text{s.t.} \quad & C_{reduced}^T t = \tau_{reduced} \\ & t_j = 0 \quad \text{(失效腱绳)} \\ & t_{min} \mathbf{1} \leq t \leq t_{max} \mathbf{1} \end{aligned}\]

5. 在线自适应

使用递归最小二乘(RLS)在线更新模型参数:

\[\begin{aligned} \hat{C}_{k+1} &= \hat{C}_k + K_k (\tau_{measured} - \hat{C}_k^T t_k) \\ K_k &= P_k t_k (t_k^T P_k t_k + \lambda)^{-1} \\ P_{k+1} &= \frac{1}{\lambda}(P_k - K_k t_k^T P_k) \end{aligned}\]

其中 $\lambda$ 是遗忘因子,$P$ 是协方差矩阵。

4.3 腱绳材料:Dyneema、Vectran与钢丝绳

腱绳材料的选择直接影响系统的力传递效率、使用寿命和控制精度。理想的腱绳材料应具有高强度、低延伸率、优异的抗疲劳性能和最小的蠕变。本节将详细分析三种主流腱绳材料的性能特点,并提供工程选型指导。

4.3.1 材料性能对比

不同腱绳材料在机械性能、耐久性和成本之间存在权衡。以下是主要材料的综合性能对比:

关键性能指标

  1. 抗拉强度(Tensile Strength):材料承受的最大应力 \(\sigma_{max} = \frac{F_{break}}{A}\)

  2. 弹性模量(Young’s Modulus):反映材料刚度 \(E = \frac{\sigma}{\epsilon} = \frac{F \cdot L_0}{A \cdot \Delta L}\)

  3. 断裂伸长率(Elongation at Break):材料延展性指标 \(\epsilon_{break} = \frac{L_{break} - L_0}{L_0} \times 100\%\)

  4. 蠕变率(Creep Rate):恒载下的时变形变 \(\dot{\epsilon}_{creep} = \frac{d\epsilon}{dt} = A \sigma^n e^{-Q/RT}\)

材料性能对比表

材料类型 抗拉强度(GPa) 弹性模量(GPa) 密度(g/cm³) 断裂伸长率(%) 工作温度(°C) 相对成本
Dyneema SK99 4.0-4.2 132-136 0.97 2.5-3.5 -150~70
Vectran HT 3.0-3.2 75-90 1.41 3.3-3.7 -196~150 很高
钢丝绳(7×19) 1.5-2.0 190-210 7.85 1.5-2.0 -40~200
Kevlar 49 2.8-3.0 112-130 1.44 2.4 -196~180
碳纤维 3.5-7.0 230-600 1.75-2.00 1.5-2.0 -50~300

动态性能分析

腱绳在循环载荷下的疲劳特性至关重要。S-N曲线描述了应力幅值与疲劳寿命的关系:

\[N_f = C \cdot (\Delta \sigma)^{-m}\]

其中:

不同材料的疲劳极限:

4.3.2 Dyneema超高分子量聚乙烯

Dyneema(超高分子量聚乙烯,UHMWPE)是目前强度重量比最高的合成纤维之一,广泛应用于高性能腱驱动系统。

分子结构与性能机理

Dyneema的超高强度源于其独特的分子结构:

长链分子的高度取向使得载荷主要由C-C共价键承担: \(F_{bond} = k_{bond} \cdot \Delta r \approx 350 \text{ N/mol}\)

优势特性

  1. 超高比强度:比强度达40 cN/dtex,是钢的15倍
  2. 低密度:0.97 g/cm³,可漂浮于水
  3. 耐化学腐蚀:对酸碱、有机溶剂惰性
  4. 低摩擦系数:自润滑特性,μ ≈ 0.05-0.10
  5. 抗冲击性:优异的能量吸收能力

工程考虑

  1. 温度敏感性
    • 玻璃化转变温度:-150°C
    • 熔点:144-152°C
    • 推荐工作温度:<70°C

    高温下的强度退化: \(\sigma(T) = \sigma_0 \cdot \exp\left(-\frac{T-T_0}{T_c}\right)\)

  2. 蠕变特性

    Dyneema在持续载荷下会发生蠕变,需要考虑: \(\epsilon(t) = \epsilon_0 + \epsilon_1 \log(t/t_0)\)

    设计时保持工作应力 < 30% 抗拉强度可显著减小蠕变。

  3. 紫外线降解

    需要UV稳定剂或保护涂层,降解速率: \(k_{UV} = A \cdot I_{UV}^n \cdot \exp(-E_a/RT)\)

  4. 编织结构优化

    常用编织方式:

    • 12股编织:平衡强度和柔韧性
    • 并行排列:最大强度利用率
    • 包覆结构:提高耐磨性

应用实例

腱绳设计参数(3指灵巧手):
- 直径:0.5-1.0 mm
- 工作载荷:20-50 N
- 安全系数:5-10
- 预期寿命:>10^6 次循环
- 弯曲半径:>5×直径

4.3.3 Vectran液晶聚合物

Vectran是一种芳香族聚酯液晶聚合物(LCP),在极端环境下表现优异,特别适合航天和深海应用。

液晶聚合物特性

Vectran的分子链在液晶态下高度有序排列:

独特优势

  1. 极低蠕变:蠕变率仅为Dyneema的1/10 \(\dot{\epsilon}_{Vectran} < 10^{-9} \text{ s}^{-1} \text{ at } 50\% \sigma_{ult}\)

  2. 耐高温:150°C下保持80%强度

  3. 尺寸稳定性:热膨胀系数 $\alpha < 0$ (负值!)

  4. 抗切割性:优于Kevlar和Dyneema

  5. 耐磨性:磨损率极低,适合高循环应用

力学模型

Vectran的应力-应变关系呈现非线性特征:

\[\sigma = E_0 \epsilon + E_1 \epsilon^2 + E_2 \epsilon^3\]

其中:

疲劳寿命预测(Miner准则):

\[D = \sum_{i=1}^{n} \frac{N_i}{N_{f,i}} < 1\]

工程设计要点

  1. 端部固定
    • Vectran对压力敏感,避免尖锐夹持
    • 推荐使用渐变锥度固定
    • 环氧树脂灌封效果最佳
  2. 弯曲疲劳

    弯曲应力计算: \(\sigma_{bend} = \frac{E \cdot d}{2R}\)

    其中d是纤维直径,R是弯曲半径。设计准则:R > 10d。

  3. 混编优化

    Vectran/Dyneema混编可综合两者优势:

    • 外层Vectran:耐磨、抗切割
    • 内芯Dyneema:高强度、轻质

4.3.4 钢丝绳与编织结构

钢丝绳虽然密度大,但因其成熟的制造工艺、低成本和优异的疲劳性能,在工业灵巧手中仍有广泛应用。

钢丝绳构造类型

  1. 1×19 结构:单股,刚度高,不适合小半径弯曲
  2. 7×7 结构:柔韧性好,中等强度
  3. 7×19 结构:最柔韧,适合频繁弯曲
  4. 6×37 结构:高强度,良好柔韧性平衡

力学分析

钢丝绳的有效弹性模量: \(E_{eff} = E_{steel} \cdot \cos^4\alpha \cdot (1-\nu_{lateral})\)

其中:

破断载荷计算(经验公式): \(F_{break} = K \cdot d^2\)

其中K是构造系数:

疲劳设计

钢丝绳疲劳的主要机理:

  1. 弯曲疲劳:内部钢丝相互摩擦
  2. 张力疲劳:循环应力导致裂纹扩展
  3. 腐蚀疲劳:环境与应力耦合作用

疲劳寿命估算(Feyrer公式): \(N = K_f \cdot \left(\frac{d}{D}\right)^a \cdot \left(\frac{S_{min}}{S_{max}}\right)^b \cdot F_{tension}^c\)

其中:

润滑与维护

润滑对钢丝绳寿命至关重要: \(\mu_{lubricated} = \mu_{dry} \cdot (1 - \eta_{lub})\)

推荐润滑剂:

4.3.5 材料选型准则

腱绳材料选择需要综合考虑应用需求、环境条件和成本约束。

决策矩阵方法

定义评价函数: \(S = \sum_{i=1}^{n} w_i \cdot \frac{p_i - p_{i,min}}{p_{i,max} - p_{i,min}}\)

其中:

典型应用场景推荐

  1. 高精度操作(外科手术机器人):
    • 首选:Vectran(低蠕变、高精度)
    • 备选:预拉伸钢丝绳
  2. 高负载工业应用
    • 首选:钢丝绳7×19(成本低、可靠)
    • 备选:大直径Dyneema
  3. 轻量化设计(仿人手):
    • 首选:Dyneema SK99(最轻)
    • 备选:Vectran/Dyneema混编
  4. 极端环境(深海/太空):
    • 首选:Vectran(温度稳定)
    • 备选:特种涂层钢丝绳
  5. 高循环寿命(>10^7次):
    • 首选:细直径钢丝绳+润滑
    • 备选:Vectran HT

设计安全系数建议

\[SF = \frac{F_{break}}{F_{working}} = k_1 \cdot k_2 \cdot k_3 \cdot k_4\]

其中:

典型值:

4.4 预紧力设计与摩擦补偿

4.4.1 预紧力的作用机理

4.4.2 最优预紧力计算

4.4.3 摩擦模型与辨识

4.4.4 前馈补偿策略

4.5 腱鞘系统与Bowden线传动

4.5.1 腱鞘系统设计

4.5.2 Bowden线传动原理

4.5.3 传动效率分析

4.5.4 柔性关节设计

工业案例:Stanford/JPL Ocean One手臂

高级话题:基于学习的腱驱动张力优化

本章小结

练习题

常见陷阱与错误

最佳实践检查清单