机械臂运动学简介
1 空间描述与转换
1.1 为什么需要空间描述
机械臂是一种在空间中搬运组件和工具的组成器械,自然地需要表示工具在空间中的位置和方向。以下,我们会定义一个全局坐标系(universe coordinate system)以及一些相对于全局坐标系的笛卡尔坐标系。
1.2 如何描述空间信息
描述的对象:组件(parts)、工具(tools)和机械臂(manipulator)本身。
空间信息:位置(positions)、方向(orientations)及包含这些信息的框架(frame)。
1.2.1 位置描述
当定义一个笛卡尔坐标系后,其在空间内任意一点均可用3×1的位置向量表示,如图1.1所示。坐标系{A}中的P点可以表示为:
1.2.2 方向描述
通常,描述空间中点的位置往往不够,还需要描述刚体的在空间中的方向。为了描述刚体的方向,在刚体上添加一个笛卡尔坐标系,并给定这个坐标系相对于参考坐标系的描述。
如图1.2所示,坐标系{B}依附于刚体,{B}相对于{A}可以描述刚体的方向。以单元向量的方式描述在{A}中{B}的三根轴的状态,分别为(_ ^A)X ̂_B 、(_ ^A)Y ̂_B 和(_ ^A)Z ̂_B 。这三个向量可以组成3×3的矩阵,称为旋转矩阵。
综上,点的位置可以描述为一个向量,物体的方向可以描述为一个矩阵(注:其他只需要三个变量描述方向的情况在后续提及)。将r_11通过向量投影(点积)进行描述:
其他描述方向的方法:
a. 正交矩阵的凯莱公式(Cayley`s formula for orthonormal matrices)
b. X-Y-Z固定角度
相对于固定的参考坐标系{A}进行旋转(roll、pitch、yaw angles),注意顺序为左乘。
c. Z-Y-X Euler angles
相对于动参考系{B}进行旋转,注意顺序为右乘。
d. 任意轴旋转
以{A}为定参考系,按以向量(_ ^A)K ̂ 的方向符合右手螺旋定则将{B}旋转θ角度。
1.2.3 框架描述
框架描述可以认为是一个位置向量和一个旋转矩阵:
1.3 空间映射
平移和旋转:
注:虽然齐次变换矩阵非常适用于写紧凑的方程式,但是由于存在大量的0和1运算,在计算机运行时不会使用它。
求解逆运算:
1.4 应用计算的考虑应用计算的考虑
2 机械臂运动学
2.1 正运动学
机械臂中相邻关节之间的构型如下图2.1所示。
d_i:沿着Z ̂_i方向从X ̂_(i-1)到X ̂_i的距离;θ_i:沿着Z ̂_i方向从X ̂_(i-1)到X ̂_i的角度;
图2.1 坐标系依附于关节上
按照相对坐标系{i-1}、{R}、{Q}、{P}到{i}依次进行变换,如图2.2所示。
2.2 逆运动学
2.2.1 可解性
求解机械臂的逆运动学是一个非线性问题。以PUMA560机械臂为例,(_6^0)T中共有16个数值(4个常值),12个方程用于求解6个未知数(θ_1到θ_6)。实际上,旋转矩阵中的九个方程,仅有3个相互独立,再加上位置向量的3个方程,组成6个方程求解6个未知数。
2.2.2 解的存在性
通常来讲,如果解存在,则机器人在工作空间之内。以下定义两种工作空间:灵巧工作空间(dextrous workspace),机器人末端执行器能以任意的方向到达;可达工作空间(reachable workspace),机器人末端执行器至少能以一种方向到达。显然,灵巧工作空间是可达工作空间的子集。
如果期望的末端位置和方向在工作空间内,则至少存在一个解。
2.2.3 多解性
将所有的求解策略分为两种:闭环解法(closed-form solutions)和数值解法(numerical solutions)。数值解法通常要比对应的闭环解法要慢,闭环解法中有代数法(algebraic)和几何法(geometric)。
只有在特殊的情况下,六自由度的机器人才能求解。在设计机器人时,是否有闭环解的存在也需要考虑进去。目前,几乎所有六自由度机械臂都会设计相邻三轴交于一点。
机器人运动学中的Pieper准则是:机器人的三个相邻关节轴交于一点或三轴线平行。
对于6自由度的机器人来说来,运动学自反解非常复杂,一般没有封闭解。在应用D-H法建立运动学方程的基础上,进行一定的解析计算后发现,位置反解往往有很多个,不能得到有效地封闭解。Pieper方法就是在此基础上进行研究发现,如果机器人满足两个充分条件中的一个,就会得到封闭解,这两个条件是:
(1)三个相邻关节轴相交于一点;
(2)三个相邻关节轴相互平行。
现在的大多数商品化机器人都满足封闭解的两个充分条件之一。如PUMA和STANFORD机器人满足第一条件,而ASEA和MINIMOVER机器人满足第二条件。以PUMA560机器人为例,它的最后3个关节轴相交于一点。我们运用Pieper方法解出它的封闭解,从求解的过程中我们也可以发现,这种求解方法也适用于带有移动关节的机器人。
(Pieper准则的另一种描述)对于一个六轴机器人,其逆运动学具有封闭形式解的一个必要条件是:三个腕关节的轴相交于一个点。这意味着腕关节的运动只改变末端执行器的姿态,而不改变其位置。这种机构被称为球腕,而且几乎所有的工业机器人都具有这样的腕关节。
代数法中将三角函数简化为多项式的技巧:
3 速度和静态力
3.1 位置向量的微分
可将位置向量的速度理解为空间上代表位置向量上一点的线速度。同时,相对于哪个坐标系求解位置向量的速度也很重要。
3.2 刚体的线速度和角速度
参考系{B}依附于刚体上,以下描述(_ ^B)Q相对于参考系{A}的运动。
1、仅线速度((_B^A)R随时间不变):
2、仅角速度(〖(_ ^B)V〗_Q=0)
3、线速度和角速度
3.3 关节间的速度映射
机械臂每一个关节的动作与相邻关节有关,因此,我们可以从base关节开始,依次计算出末端的运动信息。
角速度、速度计算如下:
举例:
取一点Q与坐标系{3}的原点重合。
3.4 雅可比矩阵
雅可比矩阵是微分的多元形式,雅可比矩阵的重要性在于它体现了一个可微方程与给出点的最优线性逼近。因此,雅可比矩阵类似于多元函数的导数。
奇异点:
思考一个问题,雅可比矩阵对所有的角度都可逆吗?
所有的机械臂在工作空间的边界都存在奇异点。
3.5 机械臂中的静态力
考虑机械臂中的静态力,可以先锁定关节角,因此可将机械臂视为一个结构,然后求解让结构平衡的静力学问题。
施加在连杆上的力和力矩平衡:
连杆之间的静态力映射:
求得:
虚位移原理:
参考文献: [1] JOHN J.CRAIG. 机器人学导论: 第3版[M]. 机械工业出版社, 2006.