机械臂运动学逆解 | 机械臂运动学笔记(二)

这是林沛群老师运动学网课的笔记,视频地址在此:

https://www.bilibili.com/video/BV1oa4y1v7TY?p=5

RRRRRR型手臂解的数量

六个未知数,六个方程式。

机械臂运动学逆解 | 机械臂运动学笔记(二)_第1张图片

求解方法:

  1. 解析解:代数法、几何法。2. 数值法:让电脑去代很多数字去逼近。

后3轴交在一点的话就会有解析解。

RRR型(2D 三轴机械臂)的IK

给定末端的(x,y, \phi),求各轴角度(\theta_1, \theta_2, \theta_3)

1. 几何法

机械臂运动学逆解 | 机械臂运动学笔记(二)_第2张图片

先将多个空间几何拆解成平面几何,解 x, y 的时候只需要考虑 \theta_1, \theta_2: 

式2: 已知三边长,求 cos \theta_2,可由式1推出(角2有正负两种选择)

式4:求\theta_1,通过求 l_2 的对角(式3)

式5:求\theta_3

 

2. 代数法

机械臂运动学逆解 | 机械臂运动学笔记(二)_第3张图片

// 注: s是sin, c是cos, c_{123} 是指 cos(\theta_1+\theta_2+\theta_3)

通过 式1=式2 有12个等式(最后一行都是0 0 0 1),图中只有4个等式是因为是2维的。观察后两个等式,可以平方相消(如式3)求得 cos \theta_2

如果 cos \theta_2 >1 说明手臂到不了。

机械臂运动学逆解 | 机械臂运动学笔记(二)_第4张图片  然后把上一步求的c2代回去x y的等式并且展开可以获得式子4和5,然后我们把c1和s1的因数提出来分别写成k1和k2。这样可以转化为极坐标表示,获得r,\gamma。这样做的好处是,用x和y除以极坐标长度r之后可以很干净地得到角度(式6,7)。由于 x, y, r, \gamma 都是已知,可以求得 \theta_1。如下

机械臂运动学逆解 | 机械臂运动学笔记(二)_第5张图片

\theta_3 就跟前面一样求得。 

重要技巧:如何把三角函数变成多项式

机械臂运动学逆解 | 机械臂运动学笔记(二)_第6张图片

按式8进行代换。然后经典的式9可以变成求解u(式10)。不过判别式是有限制的,比如说解有虚部就是没有解。还有a+c=0的时候就是\theta = 180 ^\circ  。 


接下里是讲 六轴机械臂的IK,我觉得这个文章写得很好,我推荐直接看他的吧:

机器人基础之运动学逆解_xaiotxbp的博客-CSDN博客_机器人逆运动学求解方法

他也是跟林老师的网课一样的内容的,写得非常详细了,而且还有代码。

其实六轴IK主要的求解思路就是:既然这个六轴机械臂后三个轴相交在一点(这使手臂末端在指定的位置可以到达任意角度,所以常常这样设计),则轴6到0的向量和轴4到0的向量是相同的(也就是这几个关节的位置xyz相同)。

解完平移的xyz,\theta_1, \theta_2, \theta_3 就是已知的。接下来就以zyz 求\theta_4, \theta_5, \theta_6了。

后三轴的关节旋转是分别依次绕动坐标系的Z轴、Y轴、Z轴转动。注意,这里说的是相对坐标系,也就是z,y,z说的都是4、5、6各自的坐标系对应的轴。

机械臂运动学逆解 | 机械臂运动学笔记(二)_第7张图片

而平时说的zyz欧拉角是绕绝对坐标系,它们之间的对应关系如上图,theta4需要多转180度,这样才能使第5轴的z和z欧拉角yz的y轴对应上。theta5的位置定义不同但是角度不变。然后轴6的z轴可以和固定的z轴对应上,然后theta6需要再多转180度,DH下的姿态才会与zyz下的相同。

关于zyz欧拉角的矩阵表示,和怎么用它求解:

机器人运动学欧拉角姿态描述《机器人学导论》里的zyz欧拉角表述_菜是菜人是真帅的博客-CSDN博客_zyz欧拉角

最后,我强烈推荐认真看林老师的视频,这里只是做笔记用,千万不要只看笔记。

你可能感兴趣的:(基础知识,运动学)