教程 · 中级 · 25 分钟
机械臂类型:笛卡尔、SCARA、Delta 与六轴
按工作空间、刚度、速度以及数学难度来比较四种机械臂构型——并解释为什么串联臂与并联臂的难易方向恰好是反过来的。
介绍
二连杆臂只是若干种构型中的一种,而在任何代码存在之前,这个选择就已经做完了。它定下了可达空间的形状、机器有多硬、它能多快移动,以及运动学有多难解。
选错了,再怎么调参也救不回来。让一台六轴臂整天干平面的抓取搬运,它比那台更便宜的 SCARA 更慢也更晃;而一台被要求斜着伸手进箱子的龙门,则干脆做不到。
真正要紧的分界:串联还是并联
相比这一条,其他一切都是细节。
串联臂是一条单链。每一个关节都要扛住它后面所有的关节,再加上负载。这让机器用相对小的体积换来较大的工作空间,也意味着肩部电机在抬起肘部电机、腕部电机和工具——所以越往外,刚度和负载能力掉得越厉害。
并联臂通过同时驱动好几条链来驱动同一个平台。负载被分摊,执行器可以坐在固定底盘上,而运动结构可以几乎什么都不是。这买到的是极大的刚度和速度,付出的代价是工作空间:并联机器够得着的,只是它自身所占体积的一小部分。
你真正会遇到的那四种
**笛卡尔/龙门。**三条互相垂直的移动轴。运动学毫无难度,因为关节值就是坐标——全程没有任何三角函数。刚性、精确,而且做精确起来很便宜。代价是占地和质量:框架必须比工作空间大,而且每次移动都要拖着一整根龙门梁走。你的 3D 打印机就是一台。
**SCARA。**两个转动关节在水平面内转动,加一根竖直移动轴,再加一个旋转腕。名字本身就是设计任务书:选择性柔顺——沿 Z 方向刚性,在水平面内刻意柔顺,好让正被压进孔里的零件能侧向挪动去找到孔,而不是卡住或者弄断。它在平面内非常快,而工作空间是一个圆环带,中间有一块死区,臂在那里折得不够紧。
**关节型/六轴。**六个转动关节。这四者之中唯一能在整个行程里把工具放到任意位置和朝向的构型,这也是它在焊接、喷涂和通用作业中占统治地位的原因。它付出的代价是最差的刚度可达比,以及最难解的运动学。
**Delta。**三条臂从固定底盘板连到一个小运动平台,用平行四边形连杆让平台保持水平。三台电机全都栓在框架上,所以运动质量只有几根碳纤维杆加那块平台——这就是工业 Delta 每分钟能稳定处理一百多次抓取的原因。工作空间是下方的一个浅碗,经典形式只给你平移。
知道就行但比较少见的是 Stewart 平台:六条移动腿连到一个平台,在极小的范围内给出完整的六轴运动和非凡的刚度。飞行模拟器和机床用的是它。
正解和逆解的难度会互换
这一点最容易让人栽跟头,而且它是真正对称的,不是巧合。
对串联臂来说,正解——关节角到工具位姿——就是一条矩阵连乘。它总是能工作,很快,而且答案只有一个。逆解是困难的方向:一个非线性系统,有多个解(肘上和肘下,有六个关节时更多),或者干脆无解。
并联臂则正好反过来。给定平台位姿,每条腿都能用简单几何各自独立解出——闭式解,每条腿一个答案。但从实测的腿长反推平台位姿,意味着要同时求多个球面的交点,这需要迭代求解器,而且解不总是唯一的。
刺人的地方在于,两种情况下困难的方向都是运行时你需要的那一个,因为你是用笛卡尔空间指令机器,而用关节空间测量它。所以串联臂都在可能的地方配上闭式逆解——大多数工业六轴臂把三个腕轴交于一点,正是因为这个几何让精确解的存在成为可能。反过来,Delta 控制器可以愉快地在循环里跑逆解,只在标定时才去动那个迭代的正解。
工作空间不是数据手册上那个数字
“臂展:900 mm”描述的是一个半径,而那个球体里几乎没有任何部分是可以用的。
存在一个内限,在那里臂折得不够紧。存在一个地板。存在一些关节限位,会切掉整整几个扇区。还有——最让人意外的那一条——一旦你要求一个特定的工具朝向,可达体积就会急剧缩小,因为一边保持夹爪竖直一边够到某个点,比单纯够到它强得多。
两个习惯可以在你为此付出一次返工之前就解决它:
- 建模灵巧工作空间,而不是可达工作空间:即在任务实际需要的那个朝向下你能到达的点集。
- 检查任务的四个角,而不是它的中心。机器是在容易的位姿上被选中的,又在别扭的位姿上被打败。
机械臂模拟器把二连杆版本的这件事直接展示出来——把目标拖到边界上,看着解消失。
奇异形是构型各自特有的
奇异形是这样一种构型:臂在某个方向上失去了移动能力,而要实现不算大的工具速度所需的关节速度会趋于无穷。
串联臂在工作空间边界上有奇异形——完全伸直之后无法再往外——内部也有,最出名的是腕奇异形:两个腕轴对齐,一个自由度消失。症状是工具几乎没动,手腕却突然甩过半圈。
并联臂的奇异形种类更麻烦。除了失去自由度,它们还可能获得一个不可控的自由度,位置就在工作空间中间,此时平台在执行器锁死的情况下局部变得可以自由移动。那是刚度上的失效而不是速度上的失效,而且你可以在普通作业过程中就开进去,而不只是待边缘。
选哪一种
| 活是什么 | 选 | 因为 |
|---|---|---|
| 箱子里平面的分层活——打印、铣削、绘图 | 笛卡尔 | 运动学毫无难度,刚度高,精度便宜 |
| 两个高度之间的快速抓取搬运 | SCARA | 平面内快,而且那份柔顺是专为插入设计的 |
| 任何需要任意工具角度的活 | 关节型 | 唯一真正六轴自由的 |
| 极高的节拍、轻的零件、浅的体积 | Delta | 电机装在框架上,几乎没有运动质量 |
| 极小的范围、极大的刚度、六个轴 | Stewart 平台 | 负载在六条腿之间分摊 |
速度和刚度都跟着运动质量走,而运动质量跟着你把电机放在哪儿走。单独这一个想法就解释了上面那张表的大部分内容。
这对业余制作意味着什么
几乎每一台业余机械臂都是关节型的,因为舵机支架让它是最容易拼起来的东西——而它同时也是最受不了业余公差的构型。肩部的背隙会被整条臂的长度乘一遍才传到夹爪——关节上 4° 的背隙驱动一条 150 mm 的连杆,到工具上就是 10.5 mm。
由此得出三件事:
- **把重的东西放低。**腕部上的一个舵机就是一份质量,肩部要通过你最长的那根杠杆去加速它。
- **给运动加上曲线。**底盘上一个阶跃指令会在工具上变成看得见的晃动,因为这条臂就是一根末端挂着质量的弹簧。运动曲线修掉的臂晃动比更硬的支架多。
- **考虑干脆不做一台关节臂。**如果任务是平面的,两根直线导轨做出来的龙门在精度上能赢过舵机臂,而且花的钱更少——并且它的运动学你已经会写了。
出问题时
| 现象 | 一般原因 |
|---|---|
| 臂能到测试点,到不了真正的点 | 灵巧工作空间比可达工作空间小 |
| 移动途中手腕甩圈 | 腕奇异形——两个轴对齐 |
| 逆解返回一个臂采用不了的位姿 | 数学上有解,但违反了某个关节限位 |
| Delta 平台在某处手感发软 | 工作空间内部有并联奇异形 |
| 靠近底盘精度还行,全伸出来就差 | 串联柔顺和背隙被杠杆放大 |
| 每次移动后工具都在抖 | 不是刚度问题——是没有曲线的加速阶跃 |
| 位置能重复但是错的 | 是运动学参数而不是控制器:去量连杆长度 |
最后一行值得作为结尾。串联臂的精度取决于你声明的连杆长度和关节偏移,而连杆长度上差一毫米,就是整个工作空间里工具端差一毫米。它重复得完美,而且在每个地方都是错的——这正是最不像机械问题、却最经常就是机械问题的那个故障。
探索关联图谱
本教程所属的搭建
包含本教程的项目和学习路线。
延伸阅读