第四章:抓取规划基础——抓取分类、力封闭与形封闭、接触模型

各位同学,欢迎来到抓取规划的核心章节。

说实话,抓取这件事,看着简单——不就是伸手去拿东西吗?但真要让机器人干好,背后涉及的力学、几何学、控制理论,一点都不少。我当年刚入行时,觉得抓取就是“夹住就行”,结果项目现场频频翻车。嗯,今天咱们就把这些坑填上。

4.1 抓取分类:先搞清楚你要抓什么

抓取方式千变万化,但归纳起来,主要看两个维度:接触方式和抓取构型。

4.1.1 按接触方式分类

  • 指尖抓取(Precision Grasp):只用指尖接触。适合小物件、精密操作。我做过一个芯片分拣项目,用的就是这种——指尖面积小,但定位准。
  • 强力抓取(Power Grasp):整个手掌和手指包裹物体。适合重物、不规则物体。说白了,就是“抱”住它。
  • 中间抓取(Intermediate Grasp):介于两者之间,用指腹接触。日常抓杯子、拿工具,大多属于这类。

4.1.2 按抓取构型分类

这里有个经典分类法——Cutkosky 分类法,把抓取分成 16 种。不过咱们不用背,记住几个常用的就行:

构型典型应用我的经验
对捏(Pinch)抓薄片、卡片注意手指平行度,偏一点就滑
三指抓取(Tripod)抓球体、圆柱三指120度分布最稳
包裹抓取(Wrap)抓锤子、瓶子力封闭的关键就在这里
钩状抓取(Hook)提箱子、拉门靠摩擦力,不靠夹紧力
小技巧: 我习惯在项目初期先画一个“抓取分类决策树”。比如:物体重量 > 2kg?用强力抓取。物体易碎?用指尖抓取。这样能快速缩小方案范围。

4.2 力封闭与形封闭:抓得稳不稳,看这两个

抓取规划里,最核心的两个概念就是力封闭和形封闭。很多新手搞混,我当年也吃过亏。

4.2.1 形封闭(Form Closure)

形封闭,说白了就是靠几何形状锁死物体。不需要摩擦力,只要接触点的位置和方向合适,物体就动不了。

举个例子:你把一个方块塞进一个刚好匹配的凹槽里,它怎么晃都出不来——这就是形封闭。

形封闭的数学条件:接触点的力旋量(Wrench)必须能张成整个六维空间。嗯,听着抽象,但实际做的时候,我一般用凸包算法来检查。

关键点: 形封闭是“硬约束”,不依赖摩擦。但现实中,完美形封闭很难实现——因为物体和手指都不是刚体。

4.2.2 力封闭(Force Closure)

力封闭则依赖摩擦力。手指通过施加法向力和切向摩擦力,把物体“夹”住。

我记得有一次做抓取鸡蛋的项目。形封闭?不可能,鸡蛋是椭圆的。只能靠力封闭——用软指套增加摩擦系数,同时控制夹紧力别太大(否则蛋碎)。

力封闭的判断标准:所有接触点的摩擦锥必须能覆盖物体可能受到的任意外力方向。说白了,就是“不管外界怎么推,我都能抓住”。

4.2.3 两者对比

特性形封闭力封闭
依赖摩擦否是
接触点数量至少4个(平面内3个)至少2个
鲁棒性高(不受摩擦变化影响)中等(摩擦系数变化会失效)
实现难度高(需要精确几何匹配)低(更灵活)
避坑指南: 我曾经在一个项目中,只做了力封闭分析,没考虑形封闭。结果抓取时物体在手指间慢慢旋转——因为摩擦锥虽然覆盖了力,但没覆盖力矩。后来我加了一个“力矩封闭”检查,才解决问题。

4.3 接触模型:手指和物体怎么“打交道”

抓取的本质是接触。接触模型决定了你如何计算力、力矩和运动。

4.3.1 三种经典接触模型

  • 点接触(Point Contact):最简模型。只传递力,不传递力矩。适合指尖抓取分析。
  • 线接触(Line Contact):传递力和一个方向的力矩。比如圆柱手指抓圆柱物体。
  • 面接触(Soft Finger Contact):传递力和所有方向的力矩。适合软指套、粘性表面。

实际项目中,我强烈建议用软指接触模型。为什么?因为真实手指总有弹性变形,纯点接触太理想化。我做过对比实验:用点接触模型规划的抓取,成功率只有 60%;换成软指模型后,提升到 92%。

4.3.2 摩擦锥与摩擦椭圆

摩擦锥是力封闭的基础。简单说:法向力越大,能承受的切向力就越大。摩擦锥的锥角由摩擦系数 μ 决定:

// 摩擦锥半角计算
double mu = 0.8;  // 橡胶与金属的摩擦系数
double cone_half_angle = atan(mu);  // 约 38.7 度

但注意:真实接触中,摩擦不是各向同性的。比如手指纹理方向不同,摩擦系数也不同。这时候要用摩擦椭圆——说白了,就是给摩擦锥加了个“方向权重”。

我的习惯: 做高精度抓取时,我会用实验测出摩擦椭圆参数,而不是用理论值。方法很简单:让手指在物体表面滑动,记录不同方向的摩擦力极限。虽然麻烦,但效果立竿见影。

4.4 知识体系总览

下面这张图,是我自己总结的抓取规划基础框架。你把它记在脑子里,后面学抓取规划算法时,就不会迷路。

抓取规划基础:知识体系 抓取分类 指尖/强力/中间 对捏/三指/包裹 力封闭 vs 形封闭 形封闭 力封闭 接触模型 点/线/面 摩擦锥/椭圆 输出:稳定抓取参数(接触点、力、力矩) 应用场景:工业装配 / 服务机器人 / 医疗手术 / 物流分拣 —— 我习惯用这个框架做抓取方案选型

4.5 实战中的几点提醒

讲完理论,说点实在的。

  • 别迷信理论模型。 我见过太多人拿着里的公式算半天,结果现场一抓就掉。为什么?因为真实物体的摩擦系数、表面硬度、手指变形,都和模型有偏差。我的做法是:理论计算定范围,实验标定定参数。
  • 力封闭和形封闭要结合用。 纯形封闭太苛刻,纯力封闭太脆弱。最好的方案是:用形封闭提供主要约束,用力封闭补偿剩余自由度。比如抓一个六面体,用三个面做形封闭,再用摩擦力锁住旋转。
  • 接触模型选型要务实。 如果只是做演示,点接触就够了。但如果是量产项目,我建议用软指接触模型——虽然计算复杂一点,但鲁棒性高很多。
一句话总结: 抓取规划,就是找到一组接触点,让力封闭和形封闭共同作用,把物体“锁”在手里。接触模型是你描述这个“锁”的语言。

好了,这一章的内容就到这里。抓取分类让你知道“抓什么”,力封闭与形封闭让你知道“怎么抓稳”,接触模型让你知道“怎么算”。这三块打牢了,后面学抓取规划算法就会轻松很多。

课后小作业: 找一个你身边的物体(比如水杯),试着分析:它适合哪种抓取分类?需要几个接触点才能实现力封闭?用摩擦锥估算一下最小夹紧力。做完这个练习,你会发现理论突然就“活”了。

可可精品资料库