抓取是机器人操作的基础能力,涉及接触力学、几何约束、运动规划等多个领域的交叉。本章系统介绍抓取的理论基础,从力闭合与形闭合的数学分析开始,深入探讨抓取质量评估、抓取综合方法,以及触觉感知的集成。我们将重点关注工业应用中的实际约束,包括夹爪设计、传感器噪声、计算效率等工程考量。通过学习本章内容,读者将掌握设计和实现鲁棒抓取系统所需的核心知识。
学习目标:
抓取分析的核心是判断给定的接触配置能否稳定地固定物体。这涉及两个基本概念:力闭合(Force Closure)和形闭合(Form Closure)。
机器人夹爪与物体的接触可以建模为点接触,每个接触点可以施加的力受到摩擦锥约束。对于第 $i$ 个接触点:
\[\mathcal{FC}_i = \{\mathbf{f}_i \in \mathbb{R}^3 : \|\mathbf{f}_{it}\| \leq \mu_i f_{in}, f_{in} \geq 0\}\]其中 $\mathbf{f}{it}$ 是切向力分量,$f{in}$ 是法向力分量,$\mu_i$ 是摩擦系数。
法向力 f_n
↑
|
\ | / ← 摩擦锥
\ | / (半锥角 = arctan(μ))
\ | /
\ | /
\ | /
\|/
------*------ 接触面
接触点
摩擦锥的线性化近似常用于计算效率:将圆锥用 $m$ 边棱锥近似,每个棱代表一个基础力方向。
对于 $n$ 个接触点的抓取,抓取矩阵 $G \in \mathbb{R}^{6 \times 3n}$ 将接触力映射到物体坐标系的扳手(力和力矩):
\[\mathbf{w} = G \mathbf{f} = \begin{bmatrix} \mathbf{f}_{\text{total}} \\ \boldsymbol{\tau}_{\text{total}} \end{bmatrix}\]其中 $G$ 的第 $i$ 列块为:
\[G_i = \begin{bmatrix} I_3 \\ \mathbf{p}_i \times I_3 \end{bmatrix}\]$\mathbf{p}_i$ 是接触点相对于物体质心的位置向量。
力闭合要求抓取能够抵抗任意方向的外部扰动。数学定义:
定义:如果凸锥 $\text{ConvexHull}(GF)$ 包含原点的邻域,则抓取是力闭合的,其中 $F$ 是所有可行接触力的集合。
实际判断力闭合的计算方法:
形闭合是更强的条件,要求纯几何约束就能固定物体(不依赖摩擦)。
定理:平面内至少需要4个接触点实现形闭合,3D空间至少需要7个接触点。
形闭合的充要条件是接触法向量张成整个空间,且存在严格正的法向力使合力为零:
\[\exists \mathbf{f}_n > 0: G_n \mathbf{f}_n = 0\]其中 $G_n$ 只包含法向分量。
在实际系统中,理论分析需要考虑多个工程因素:
鲁棒力闭合判据:引入安全系数 $\epsilon > 0$,要求:
\[\min_{\|\mathbf{w}\|=1} \max_{\mathbf{f} \in F} \mathbf{w}^T G\mathbf{f} \geq \epsilon\]这确保即使在扰动下,抓取仍能保持稳定。
仅判断力闭合是不够的,我们需要定量评估抓取的”质量”。Ferrari-Canny指标是最广泛使用的度量方法。
抓取扳手空间(Grasp Wrench Space, GWS)定义为所有可实现扳手的集合:
\[\text{GWS} = \{G\mathbf{f} : \mathbf{f} \in F\}\]为了归一化不同量纲(力和力矩),引入任务扳手空间的椭球表示:
\[\mathcal{W} = \{\mathbf{w} : \mathbf{w}^T Q \mathbf{w} \leq 1\}\]其中 $Q$ 是正定矩阵,反映任务中不同扳手分量的相对重要性。常见选择:
\[Q = \begin{bmatrix} \frac{1}{f_{\max}^2} I_3 & 0 \\ 0 & \frac{1}{\tau_{\max}^2} I_3 \end{bmatrix}\]Ferrari-Canny指标定义为GWS能包含的最大任务球半径:
\[\epsilon_{FC} = \max\{r : r\mathcal{B} \subseteq \text{GWS} \cap \mathcal{W}\}\]其中 $\mathcal{B}$ 是单位球。几何解释:$\epsilon_{FC}$ 是GWS内接球的半径,表示抓取能抵抗的最小扰动幅度。
计算方法:
除Ferrari-Canny外,常用的抓取质量度量包括:
体积度量:GWS的体积,反映抓取的总体能力 \(Q_{\text{vol}} = \text{Volume}(\text{GWS})\)
最大内接球:考虑力约束的最大球 \(Q_{\text{ball}} = \max\{r : r\mathcal{B} \subseteq \text{GWS}, \|\mathbf{f}\| \leq f_{\max}\}\)
任务导向度量:针对特定任务扳手 $\mathbf{w}_{\text{task}}$ \(Q_{\text{task}} = \min_{\mathbf{f}} \|\mathbf{f}\| \quad \text{s.t.} \quad G\mathbf{f} = \mathbf{w}_{\text{task}}\)
鲁棒性度量:考虑接触位置不确定性 $\Delta p$ \(Q_{\text{robust}} = \min_{\|\Delta p\| \leq \delta} \epsilon_{FC}(p + \Delta p)\)
Ferrari-Canny指标的精确计算复杂度高,实际应用中常用近似方法:
抓取综合(Grasp Synthesis)的目标是自动生成高质量的抓取配置。方法可分为解析法和采样法两大类。
解析法通过数学优化直接求解最优抓取位置。
基于对称性的方法: 对于规则形状(圆柱、长方体等),利用对称性简化搜索:
平行夹爪抓取圆柱体
___
/ \
---| |--- ← 夹爪沿直径方向
\___/
最优抓取线通过质心
基于曲率的方法: 选择曲率互补的接触点,最大化形闭合可能性:
\[\max_{p_1, p_2} \kappa(p_1) + \kappa(p_2) \quad \text{s.t.} \quad \mathbf{n}(p_1) = -\mathbf{n}(p_2)\]其中 $\kappa$ 是曲率,$\mathbf{n}$ 是法向量。
优化框架: 将抓取综合形式化为约束优化问题:
\[\begin{aligned} \max_{\mathbf{p}, \mathbf{f}} &\quad Q(\mathbf{p}, \mathbf{f}) \\ \text{s.t.} &\quad G(\mathbf{p})\mathbf{f} = \mathbf{0} \quad \text{(平衡约束)} \\ &\quad \mathbf{f} \in F \quad \text{(摩擦锥约束)} \\ &\quad \mathbf{p} \in \partial\Omega \quad \text{(接触在物体表面)} \end{aligned}\]采样法通过生成大量候选抓取并评分选择。
启发式采样:
学习型采样: 使用神经网络预测抓取质量分布:
\[p(\text{success}|\mathbf{g}, \mathbf{I}) = f_\theta(\mathbf{g}, \mathbf{I})\]其中 $\mathbf{g}$ 是抓取参数,$\mathbf{I}$ 是输入图像,$f_\theta$ 是深度网络。
现代抓取综合大量使用深度学习,主要架构包括:
1. 基于CNN的方法:
2. 基于Transformer的方法: 利用注意力机制建模全局依赖:
\[\mathbf{h}_i = \text{Attention}(\mathbf{q}_i, \{\mathbf{k}_j, \mathbf{v}_j\}_{j=1}^N)\]3. 生成模型:
不同应用场景对实时性要求不同:
| 方法类型 | 计算时间 | 成功率 | 适用场景 |
|---|---|---|---|
| 解析法 | 100-1000ms | 85-95% | 已知模型 |
| 启发式采样 | 10-100ms | 70-85% | 快速抓取 |
| CNN预测 | 20-50ms | 80-90% | 实时应用 |
| Transformer | 100-500ms | 85-95% | 高精度需求 |
加速技巧:
标准化的数据集和评估协议对算法开发至关重要。本节介绍主流抓取数据集及其使用方法。
YCB是最广泛使用的操作基准数据集,包含77个日常物体的高质量模型。
物体类别分布:
数据格式:
YCB_Object/
├── 001_chips_can/
│ ├── meshes/
│ │ ├── textured.obj # 纹理网格
│ │ └── collision.stl # 碰撞网格
│ ├── rgbd/
│ │ ├── rgb_*.png # RGB图像
│ │ └── depth_*.png # 深度图
│ └── calibration.txt # 相机参数
评估指标:
EGAD包含2000+程序生成的复杂形状,用于测试算法泛化能力。
生成策略:
难度分级:
Level 1: 简单凸形状,明显抓取点
Level 2: 轻度凹陷,需要精确定位
Level 3: 复杂拓扑,多个局部最优
Level 4: 极端形状,挑战算法极限
1. DexNet数据集:
2. Cornell抓取数据集:
3. ACRONYM:
标准评估流程:
基准算法对比:
| 算法 | YCB成功率 | EGAD成功率 | 推理时间 |
|---|---|---|---|
| GPD | 75% | 68% | 1.5s |
| DexNet 2.0 | 82% | 71% | 0.8s |
| Contact-GraspNet | 88% | 76% | 0.3s |
| GraspDiffusion | 91% | 79% | 0.5s |
合成数据增强:
真实数据收集:
触觉反馈提供了视觉无法获得的接触信息,对精细操作至关重要。
1. 力/扭矩传感器: 测量6轴力和力矩,常安装在手腕处:
\[\mathbf{F} = \begin{bmatrix} F_x & F_y & F_z & \tau_x & \tau_y & \tau_z \end{bmatrix}^T\]典型产品:ATI Mini45 (分辨率0.025N)
2. 阵列式触觉传感器: 提供接触压力分布图:
触觉图像 (16×16像素)
┌─────────────┐
│ · · · ■ ■ · │ 压力值
│ · · ■ ■ ■ · │ 0-255
│ · ■ ■ ■ ■ · │
│ · · ■ ■ · · │
└─────────────┘
典型产品:Tekscan、Xela Robotics
3. 光学触觉传感器: 使用相机捕获弹性体形变:
4. 电容式/电阻式传感器:
滑动是抓取失败的主要原因,触觉能提供早期预警。
滑动检测算法:
频域分析:滑动产生高频振动 \(S(\omega) = \mathcal{F}\{f(t)\}, \quad \text{滑动} \Leftrightarrow S(\omega > \omega_0) > \theta\)
切向力比率: \(\text{滑动风险} = \frac{\|\mathbf{f}_t\|}{\mu f_n}\) 当比率接近1时,即将滑动
深度学习方法: 使用LSTM预测未来滑动概率: \(p_{\text{slip}}(t+\Delta t) = \text{LSTM}(\mathbf{x}_1, ..., \mathbf{x}_t)\)
1. 接触前探索:
# 伪代码:触觉引导接近
while not contact_detected:
move_toward_object(slow_speed)
if tactile_reading > threshold:
contact_detected = True
record_contact_point()
2. 力控制抓取: 维持恒定抓取力,防止损坏易碎物体:
\[\mathbf{u} = K_p(f_d - f_m) + K_i \int(f_d - f_m)dt\]其中 $f_d$ 是期望力,$f_m$ 是测量力。
3. 触觉伺服: 基于触觉图像的视觉伺服:
\[\dot{\mathbf{x}} = -\lambda L^+ (\mathbf{s} - \mathbf{s}^*)\]其中 $L$ 是触觉雅可比矩阵,$\mathbf{s}$ 是触觉特征。
视觉和触觉的互补性:
| 特性 | 视觉 | 触觉 |
|---|---|---|
| 感知范围 | 全局 | 局部接触 |
| 遮挡处理 | 差 | 好 |
| 材质识别 | 有限 | 优秀 |
| 实时性 | 30-60Hz | 100-1000Hz |
融合架构:
Transformer融合网络:
视觉特征 → [Encoder] ─┐
├→ [Cross-Attention] → 抓取决策
触觉特征 → [Encoder] ─┘
触觉数据收集成本高,仿真成为重要补充:
触觉渲染模型:
域适应技术:
Amazon Robotics Challenge (ARC) 是推动抓取技术发展的重要竞赛。本节分析2017年获胜团队的技术方案。
任务要求:
技术难点:
系统架构:
相机阵列 → 多视角融合 → 实例分割 → 抓取规划 → 执行
↓ ↓ ↓ ↓ ↓
RealSense PointCloud Mask R-CNN Heuristic UR5+吸盘
关键创新:
if object.is_flat() and object.top_visible():
use_suction_cup()
elif object.has_handle() or object.is_rigid():
use_parallel_gripper()
else:
use_hybrid_approach()
性能指标:
传统刚性夹爪在处理易碎、不规则物体时存在局限。软体抓手提供了新的解决方案。
驱动方式:
变形模式:
未充气 充气后
| | | \ | /
| | | \ | /
| | | → \|/
| | | ╱ ╲
──────── ╱ ╲
1. 本征柔顺性: 材料本身的柔性提供被动适应:
\[E_{\text{soft}} \approx 10^5 \text{ Pa} \ll E_{\text{rigid}} \approx 10^{10} \text{ Pa}\]2. 欠驱动设计: 自由度多于控制输入,自然包络物体:
\[n_{\text{DOF}} > n_{\text{actuator}}\]3. 分布式接触: 增大接触面积,降低局部压力:
\[p_{\text{avg}} = \frac{F_{\text{total}}}{A_{\text{contact}}}\]1. 形态计算: 利用材料特性简化控制:
2. 学习型控制: 软体的非线性需要数据驱动方法:
\[\mathbf{u} = \pi_\theta(\mathbf{s}, \mathbf{g})\]其中策略 $\pi_\theta$ 通过强化学习获得。
3. 混合控制: 结合模型和学习:
| 特性 | 刚性夹爪 | 软体抓手 |
|---|---|---|
| 适应性 | 需要精确控制 | 被动适应 |
| 安全性 | 需要力限制 | 本征安全 |
| 易碎物处理 | 困难 | 优秀 |
| 定位精度 | 高 | 中等 |
| 负载能力 | 高 | 有限 |
本章系统介绍了机器人抓取的理论基础与实践方法:
核心概念回顾:
关键公式汇总:
工程实践要点:
练习13.1:给定一个边长为10cm的立方体,摩擦系数μ=0.3,使用平行夹爪从相对的两个面中心抓取。计算最大可承受的切向力。
练习13.2:证明平面内三个非共线接触点可以实现力闭合,但不能实现形闭合。
练习13.3:计算一个半径5cm圆柱体的最优两指抓取位置,使Ferrari-Canny指标最大。
练习13.4:设计一个算法,从点云中提取Antipodal抓取对。
练习13.5:推导软体抓手的最小充气压力,使其能够稳定抓取质量为m的球形物体。考虑材料杨氏模量E,抓手几何参数。
练习13.6:分析触觉传感器采样率对滑动检测延迟的影响。给定滑动速度v=10mm/s,传感器分辨率δ=0.1mm,设计最优采样策略。
练习13.7:设计一个基于强化学习的抓取策略,定义状态空间、动作空间和奖励函数。
练习13.8:比较Ferrari-Canny指标与实际抓取成功率的相关性。设计实验方案验证两者关系。