机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)

  • 1. 逆向求解概念
    • 1.1 了解
    • 1.2 Reachable workspace & Dexterous workspace
    • 1.3 Subspace
  • 2. 多重解
    • 2.1 举例理解
    • 2.2 多重解的选择方式
  • 3. 求解方式
    • 3.1 解析法 Closed-form solutions
  • 4. 例题
    • 4.1 几何法求解
    • 4.2 代数法求解
  • 5.三角函数方程式求解
  • 6. Pieper's solution
  • 7. 物件取放任务

机器人逆运动学问题:又称机器人运动学方程的逆解或间接位置求解,指给定机器人抹点执行器的位置和姿态,求解可到达给定位置和姿态的各关节的角度值。

1. 逆向求解概念

1.1 了解

假设手臂有六自由度,就有六个未知的 joint angles,根据逆运动学概念,我们已知的是{6}相对{0}的变换矩阵:
在这里插入图片描述
旋转矩阵部分有9个数字,表示三个自由度,说明里边有六个限制条件,其中三个条件是 X、Y、Z 都是单位向量,长度都是1;另外三个条件是两两垂直。

{6}的原点位置相对于{0}坐标系的三个数字是独立的,所以里边包含了三个自由度。

所以矩阵里边共有六个自由度,共有12个方程式,六个限制条件,求解六个未知数。

1.2 Reachable workspace & Dexterous workspace

Reachable workspace:手臂可以用一种以上的姿态到达的位置;
Dexterous workspace:手臂可以用任何的姿态到达的位置(例如下图右图中的原点)。

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第1张图片

1.3 Subspace

Subspace:手臂在定义头尾的T所能达到的变动范围。

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第2张图片机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第3张图片
为末端点指定一个位置,则 x 和 y 确定,进而此时旋转矩阵也被唯一确定了,并且其中还有5个无法改变的量,说明可到达姿态是受限的。

2. 多重解

由于是 nonlinear transcendental equations(非线性超越方程组)问题,6未知数6方程式不代表具有唯一解。

2.1 举例理解

一个PUMA机械臂,让末端执行器到达一个指定姿态,会有8组不同的解。

  • 前三轴不同的姿态组合会出现4组解:
    机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第4张图片
  • 每一个姿态中,具有两组手腕转动姿态,所以4*2=8组解:
    在这里插入图片描述
  • 若手臂本身有几何限制,并非每一种解都可以实现

2.2 多重解的选择方式

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第5张图片

  • 离目前状态最近的解
    最快
    最省能

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第6张图片

  • 避开障碍物

3. 求解方式

3.1 解析法 Closed-form solutions

  • 用代数 algebraic 或 几何 geometric 方法
  • 数值法
  • 目前大多数机械臂设计成具有解析解
    Pieper’s solution:相邻三轴相交一点

4. 例题

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第7张图片

4.1 几何法求解

将空间几何切割成平面几何

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第8张图片
量化计算走一遍流程:

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第9张图片

4.2 代数法求解

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第10张图片
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第11张图片

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第12张图片

5.三角函数方程式求解

变换方法:
在这里插入图片描述
例题:如何求解 acosθ + bsinθ = c 的 θ ?

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第13张图片

6. Pieper’s solution

如果 6-DOF manipulator 具有三个连续的轴交在同一点,则手臂有解析解。

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第14张图片
一般会把后三轴如此设计,前三轴用来产生移动,后三轴用来产生转动。因为后三轴交一点,所以:
在这里插入图片描述
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第15张图片

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第16张图片

这里的处理方法没有将 θ1、θ2、θ3 全部乘开展示出来,那样太复杂,而是将 θ3 包含在 f 中, θ2 和 θ3 包含在 g 中,θ1单独放在外面。

有如下关系:
在这里插入图片描述
乘开整理得:
在这里插入图片描述
令:
在这里插入图片描述
代入得:
在这里插入图片描述
这样 θ2 和 θ3 就重整为一个看起来很干净的形式,r 中消掉了 θ1 这个参数。

如果把 z 单独取出来,就是:
在这里插入图片描述
z 也是 θ2 和 θ3 的函数。
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第17张图片
由此可见,原来的三条关系,三个变量,就变成了 r 和 z 这两条关系,包含 θ2 和 θ3 这两个变量。
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第18张图片
k1、k2、k3、k4 里面包含θ3,θ2是外显在外面的
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第19张图片
最后,求出θ2 和 θ1:
在这里插入图片描述
至此,移动部分就处理完了,下面来看转动部分:
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第20张图片
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第21张图片
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第22张图片
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第23张图片

7. 物件取放任务

现阶段任务:为使RRRRRR手臂能以下图姿态夹住杯子(任务的起始点C),手臂的6个 joint angles 需为何?

机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第24张图片1. 定义DH表
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第25张图片2. 找出杯子的坐标系相对于世界坐标系的变换矩阵,再进一步找出 {6} 对 {0} 的 T,杯子相对于世界 = 杯子相对于桌子 * 桌子相对于世界
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第26张图片机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第27张图片3. 层层分离,求θ1 - θ6
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第28张图片
机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第29张图片机器人学之运动学笔记【4】—— 逆向运动学(Inverse Kinematics)_第30张图片

你可能感兴趣的:(台大机器人学学习笔记)