逆运动学

逆运动学(IK)与前向运动学基本上是相反的思想。

解你运动学问题有两种不同的方法。第一种是纯粹的数值方法。从本质上讲,这种方法是猜测和迭代,直到错误足够小,或者直到认为放弃。牛顿 - 拉夫逊算法是一种常见的选择,因为它在概念上简单并且如果初始猜测与解“足够接近”时具有二次收敛速率。但是,不能保证算法会收敛或足够快地满足应用要求,并且只返回一个解决方案。为了针对各种可能的姿势产生解决方案,必须使用不同的初始条件。 数值方法的优点是相同的算法适用于所有串行机械手。

另一种更优选的解决方法是一种称为“分析”“封闭形式”的解决方案。封闭形式解决方案是特定的代数方程,它不需要迭代求解,并且有两个主要优点:通常它们比数值方法更快解决问题,并且更容易制定哪些可能的解决方案是适当的。但是,只有某些类型的机械手可以以封闭形式解决。显而易见的问题是,哪种类型的机械手具有封闭形式的解决方案?研究表明,如果满足以下两个条件中的任何一个,那么串行机械手可以以封闭形式解决。

  • 三个相邻的关节轴在一个点上相交
  • 三个相邻的关节轴是平行的(在技术上这是一个特殊情况,因为平行线在无穷远处相交)

幸运的是,目前在工业中使用的六个自由度串行机械手中的大多数将满足上述条件之一。

通常,机械手中的最后三个关节是满足条件1的旋转关节,这样的设计被称为球形手腕,并且公共交点被称为手腕中心。这种设计的优点在于,它可在运动学上解耦端部执行器的位置和方向。

在数学上,这意味着不用同时求解12个非线性方程(整个齐次变换矩阵的前三行中的每一项一个方程),现在可以独立地解决两个更简单的问题:首先是手腕中心的笛卡尔坐标,然后是旋转的组成以定向末端执行器。从物理上讲,具有球形手腕的六自由度串联机械手将使用前三个关节来控制手腕中心的位置,而最后三个关节将根据需要来定向末端执行器。

我们现在将正式确定带球形手腕的串行机械手的解决方案。考虑这里所示的六自由度机械手,其中关节4,5和6组成球形手腕。腕部中心(WC)和末端执行器(EE)相对于基坐标0的位置分别由以下表达式给出:这里写图片描述这里写图片描述。EE相对于WC的位置由以下表达式给出:这里写图片描述。请注意,所有三个矢量均以基坐标0的形式表示,如前导上标“0”所示。
这里写图片描述

步骤1:完成机械手的DH参数表。 提示:将第4,5和6关节坐标系的原点与WC一致。
步骤2:找到WC相对于基坐标系0的位置。回想一下,基坐标系0和末端执行器之间的变换关系具有以下形式:
这里写图片描述

例如,如果你选择z4平行于z6并且从WC指向EE,那么这个位移是沿着z6的简单平移。这种位移的大小,我们称之为d,将取决于机械手的尺寸,并在URDF文件中定义。此外,由于r13,r23和r33定义了EE相对于基坐标系0的Z轴,所以WC的笛卡尔坐标是:
这里写图片描述

步骤3:找到变量q1,q2和q3,使得WC具有等于方程(3)的坐标。这是艰难的一步。 解决问题的一种方法是反复将连接投影到平面上并使用三角函数来求解关节角度。不幸的是,没有适用于所有操纵器的通用配方,因此您必须进行试验。 下一篇中的示例将为您提供一些有用的指导。

步骤4:一旦前三个变量已知,通过应用变换关系式根据WC来计算这里写图片描述.

扫描二维码关注公众号,回复: 1086033 查看本文章

步骤5:找到与旋转矩阵对应的一组欧拉角,
这里写图片描述

步骤6:在一组可能的解决方案中选择正确的解决方案

<下一篇>

猜你喜欢

转载自blog.csdn.net/u011280600/article/details/80452022
今日推荐