机器人理论(4)逆向运动学:已知物体位置反推关轴角度

108
0
2020年11月18日 09时28分

引言

我们已经知道如何已知角度去推算机械臂末端的位置,那么如何由位置反推出机械臂到达需求位需要的角度呢?

 

逆向运动学

基本过程就是已知手臂末端点的位置{H}(机器手head)或者该坐标系相对于世界坐标系{W}的向量,求出关轴的角度\large \Theta。根据题目题目难度,有时候可以直接求解出角度\large \Theta,有时候需要借助\large _{H}^{W}\textrm{T}矩阵算出角度\large \Theta

 

其中求解方法大致分为如下几种方法:解析法(几何法、代数法等)和数值法。

 

目录

几何法

代数法

数值法

综合例题

Tips:从多个解中选择的方法


 

几何法

顾名思义,直接利用几何关系和定理求解即可。在这里直接引出经典的PUMA机械臂案例。

【举例】已知\large x\large y\large \varphi,如何求\large \Theta _{1}\large \Theta _{2}\large \Theta _{3}。( \large x\large y 为坐标点、\large \varphi = \large \Theta _{1} + \large \Theta _{2} + \large \Theta _{3} )

 

微信图片_20201112171204

 

【求解过程】

 

微信图片_20201112171220

 

上图表明了 \large \Theta _{1} 取决于 \large \Theta _{2} 的正负。当\large \Theta _{2}<0时,\large \psi属于绿色三角形。当\large \Theta _{2}>0时,\large \psi属于蓝色三角形。

得到如图关系式后,就可以开始代入求解了。

 

微信图片_20201112171236

 

代数法

 

【例题】和上面例题一样

 

微信图片_20201112171255

 

【求解过程】

 

微信图片_20201112171309

 

微信图片_20201112171321

 

代数,并使用极坐标知识,可以得出:(小声bb:现在才知道高中数学的重要性….)

 

微信图片_20201112171342

 

微信图片_20201112171358

 

数值法

列出每个关节的T矩阵,让电脑自己往里面带入数据,数字一个一个跑,直到求出解为止。

 

反算出\large \Theta的方法不止一种。由于数值法对电脑算力有要求,解析法(几何法、代数法)因为不需要举出大量数字让计算机去逼近求解,而且求逆矩阵快,所以大部分情况下使用的是解析法求解。然而想要让机械臂能够使用解析法求解,机械臂的设计就要满足一个条件——存在相邻的三轴相交于同一点,这个也称为 Pieper’s Solution

 

相关例子

使用经典的符合Pieper条件的PUMA手臂作为例题 ,有\large _{}^{0}\textrm{P}_{6 org}=\large _{}^{0}\textrm{P}_{4 org}

由于前三轴是负责移动的,后三轴负责转动的,为了方便分两步走。

 

(1)求解 \large \Theta _{1}\large \Theta _{2}\large \Theta _{3} (代数法)

由之前讲过的T矩阵的特性,可以得出这个:

 

微信图片_20201112171419

 

使用代数法运算,为了方便求解,我们先定义好代数式 f, g

 

微信图片_20201112171440

 

可以知道f 是有关\large \Theta _{3} 的函数,g为有关\large \Theta _{2}\large \Theta _{3} 的函数,展开有:

 

微信图片_20201112171512

 

微信图片_20201112171528

 

在这里先假设代数 K:

 

微信图片_20201112171549

 

微信图片_20201112171604

 

然后加入并定义代数 r,就有:

 

微信图片_20201112171624

 

可以知道r是有关\large \Theta _{2}\large \Theta _{3} 的函数。

由于高度Z本身和\large g_{3}有关,所以它也是一个有关\large \Theta _{2}\large \Theta _{3} 的函数。

 

微信图片_20201112171648

 

到这一步我们已经得到两个不用考虑\large \Theta _{1},且与\large \Theta _{2}\large \Theta _{3} 有关的函数了,联立起来,有:

 

微信图片_20201112171710

 

即可联系已知求解\large \Theta _{3},然后再依次求解出\large \Theta _{1}\large \Theta _{2}

 

微信图片_20201112171734

 

(2)求解 \large \Theta _{4}\large \Theta _{5}\large \Theta _{6}

由上式已知我们的\large \Theta _{1}\large \Theta _{2}\large \Theta _{3},并且我们的4,5,6关节都符合pieper条件,就可以直接通过下式算出答案:

 

微信图片_20201112171800

 

【这里的求解过程参考(2)】

 

综合例题

 

微信图片_20201112171831

 

【解题过程】

 

微信图片_20201112171858

 

微信图片_20201112171923

 

微信图片_20201112171953

 

微信图片_20201112172037

 

微信图片_20201112172105

 

微信图片_20201112172118

 

微信图片_20201112172205

 

Tips:从多个解中选择的方法

 

微信图片_20201112172236

 

感谢:课程内容、PPT来自林沛群教授的课程《机器人学》!!!

发表评论

后才能评论