前情回顾

【机器人学】平面2R机器人(一)——正运动学

解答

逆运动学求解

尽管在题目要求上并没有计算逆运动学的步骤,但是在后续的MATLAB仿真中,需要从末端执行器的笛卡尔坐标得到各关节的角度,同时保证思路的连续性,在此插入完成逆运动学的求解。因为平面2R机器人结构比较简单,可以直接通过几何法进行逆运动学求解,如下图 1 所示。

图 1  逆运动学求解示意图

在图中 x,y 是已知的末端坐标,而 \theta_1,\theta_2 是要求解的关节坐标,其余变量 \beta=\theta_1 + \gamma

根据余弦定理可得,

x^2+y^2=l^2+l^2-2l^2\cos(180^{\circ}-\theta_2)

所以,

\cos \theta_2 =\frac{x^2+y^2-2l^2}{2l^2}

\theta_2=\pm\arccos (\cos \theta_2)

即求出了 \theta_2,然后有,

\beta=\arctan(\frac{x}{-y})

l^2=x^2+y^2+l^2-2l\sqrt{x^2+y^2} \cos \gamma

\cos \gamma= \frac{x^2+y^2+l^2-l^2}{2l\sqrt{x^2+y^2} }=\frac{\sqrt{x^2+y^2}}{2l }

假设,

\gamma=\arccos(\cos \gamma)

则有,

\theta_1=\beta \pm \gamma

至此,使用几何法简单地对机器人进行了逆运动学求解。关于在多解情况下如何取舍,将在后续实际仿真时进行详细的说明。

未完待续...

【机器人学】平面2R机器人(三)——速度雅可比矩阵

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐