机器人运动学(5)

2019-04-10 09:18

图2.17 机器人的手坐标系相对于参考坐标系

2.7.1 位置的正逆运动学方程

对于机器人的定位,可以通过相对于任何惯用坐标系的运动来实现。比如,基于直角坐标系对空间的一个点定位,这意味着有三个关于x,y,z轴的线性运动,此外,如果用球坐标来实现,就意味着需要有一个线性运动和两个旋转运动。常见的情况有:

(a)笛卡尔(台架,直角)坐标 (b)圆柱坐标 (c)球坐标

(d)链式(拟人或全旋转)坐标 2.7.1.1 笛卡尔(台架,直角)坐标

这种情况下有三个沿x,y,z轴的线性运动,这一类型的机器人所有的驱动机构都是线性的(比如液压活塞或线性动力丝杠),这时机器人手的定位是通过三个线性关节分别沿三个轴的运动来完成的(如图2.18所示)。台架式机器人基本上就是一个直角坐标机器人,只不过是将机器人固连在一个朝下的直角架上。IBM7565机器人就是一个台架式直角坐标机器人。

图2.18 直角坐标

当然,如果没有旋转运动,表示向P点运动的变换矩阵是一种简单的平移变换矩阵,下面将可以看到这一点。注意这里只涉及坐标系原点的定位,而不涉及姿态。在直角坐标系中,表示机器人手位置的正运动学变换矩阵为:

RTP?Tcart?1?0???0??001000Px?0Py?? (2.31) 1Pz??01?其中RTP是参考坐标系与手坐标系原点P的变换矩阵,而Tcart表示直角坐标变换矩阵。对于逆运动学的求解,只需简单地设定期望的位置等于P.

例2.13 要求笛卡尔坐标机器人手坐标系原点定位在点P=?347?,计算所需要的笛卡儿坐标运动。

解:

设定正运动学方程用式(2.31)中的RTP矩阵表示,根据期望的位置可得知如下结果:

T?1?0RTP???0??001000Px??1?00Py????1Pz??0??01??0010000103?4??或Px?3,Py?4,Pz?77??1?

2.7.1.2 圆柱坐标

圆柱型坐标系统包括两个线性平移运动和一个旋转运动。其顺序为:先沿x轴移动r,再绕z轴旋转?角,最后沿z轴移动l,如图2.19所示。这三个变换建立了手坐标系与参考坐标系之间的联系。由于这些变换都是相对于全局参考坐标系的坐标轴的,因此由这三个变换所产生的总变换可以通过依次左乘每一个矩阵而求得:

R TP?Tcyl(r,?,l)?Trans(0,0,l)Rot(z,?)Trans(r,0,0) (2.32)

?1?0RTP???0??0010000100??C??S?0????l??0??1??0?S?C?00?S?C?0000100??1?00????0??0??1??001000010r?0?? (2.33) 0??1?0rC??0rS???1l??01?

经过一系列变换后,前三列表示了坐标系的姿态,然而我们只对坐标系的原点位置即最后一列感兴趣。显然,在圆柱型坐标运动中,由于绕z轴旋转了?角,运动坐标系的姿态也将改变,这一改变将在后面讨论。

实际上,可以通过绕n,o,a坐标系中的a轴旋转??角度使坐标系回转到和初始参考坐标系平行的状态,它等效于圆柱坐标矩阵右乘旋转矩阵(a,??),其结果是,该坐标系的位置仍在同一地方,但其姿态再次平行于参考坐标系,如下所示:

?C??S?RTP?Tcyl???0??0

图2.19 圆柱坐标

?C??S?Tcyl?Rot(z,??)???0??0?S?C?000rC???C(??)?S(??)?S(??)C(??)0rS?????1l??00??01??0000??1?000????10??0??01??000rC??10rS???01l?

?001?由此可见,运动坐标系的原点位置没有改变,但它转回到了与参考坐标系平行的状态。需注

意的是,最后的旋转是绕本地坐标系的a轴的,其目的是为了不引起坐标系位置的任何改变,

而只改变姿态。

例2.14 假设要将圆柱坐标机器人手坐标系的原点放在?347?,计算该机器人的关节变量。

解:

根据式(2.33)的Tcyl矩阵,将手坐标系原点的位置分量设置为期望值,可以得到:

l?7 rC??3

rS??44??和??53?. 1于是有: tan3T将?代入其中任何一个方程,可得r?5,最终结果是:

??53.?l1?, r?5,应注意:必须确保在机器人运动学中计算的角度位于正确的象限。在这个例子中,请注意rC?和rS?都是正的,并且r也是正的,这样角度?便在第一象限,且为53.1°。

2.7.1.3 球坐标

如图2.20所示,球坐标系统由一个线性运动和两个旋转运动组成,运动顺序为:先沿z轴平移r,再绕y轴旋转?并绕z轴旋转?。这三个变换建立了手坐标系与参考坐标系之间的联系。由于这些变换都是相对于全局参考坐标系的坐标轴的,因此有这三个变换所产生的总变换可以通过一次左乘每一个矩阵而求得:

RTP?Tsph?r,?,???Rot?z,??Rot?y,??Trans?0,0,?? (2.34)

?C??S?RTP???0??0?S?C?0000100??C??00????0???S???1??00S?100C?000??1?00????0??0??1??0010000100?0?? r??1?RTP?Tsph?C??C??C??S?????S???0?S?C?00S??C?S??S?C?0rS??C??rS??S??? (2.35) rC???1?

图2.20 球坐标

前三列表是了经过一系列变换后的坐标系的姿态,而最后一列则表示了坐标系原点的位置。以后还要进一步讨论该矩阵的姿态部分。 这里也可回转最后一个坐标系,使它与参考坐标系平行。这一问题将作为练习留给读者,要求找出正确的运动顺序来获得正确的答案。

球坐标的逆运动学方程比简单的直角坐标和圆柱坐标更复杂,因为两个角度?和?是耦合

的。让我们通过下例来说明如何求解球坐标的逆运动学方程。

例2.15 假设要将球坐标机器人手坐标系原点放在?3,4,7?,计算机器人的关节变量。

T解:

根据式(2.35)的Tsph矩阵,将手坐标系原点的位置分量设置为期望值,可以得到:

rS?C?=3 rS?S?=4 rC?=7

由第三个方程,我们得出C?是正数,但没有关于S?是正或负的信息。将前两个方程彼

此相除,因为不知道S?的实际符号是什么,因此可能会有两个解。下面的方法给出了两个可

能的解,后面还必须对这最后的结果进行检验以确保它们是正确的。

4?=53.1? 或 233.1? tan?=?

3

S?=0.8 或 -0.8 C?=0.6 或 -0.6

3=5 0.6

?S?= 或 -5

?C?=7 ?=35.5? 或 -35.5?

?=8.6

可以对这两组解进行检验并正是这两组解都能满足所有的位置方程。如果沿给定的三维坐标轴旋转这些角度,物理上的确能到达同一点。然而必须注意,其中只有一组解能满足姿态方程。换句话说,前两种解将产生同样的位置,但处于不同的姿态。由于目前并不关心手坐标系在这点的姿态,因此两个位置解都是正确的。实际上,由于不能对三自由度的机器人指定姿态,所以无法确定两个解中哪一个和特定的姿态有关。 2.7.1.4 链式坐标 如图2.21所示,链式坐标由三个旋转组成。后面在讨论Denavit-Hartenberg表示法时,将推导链式坐标的矩阵表示法。

图2.21 链式坐标

2.7.2 姿态的正逆运动学方程

假设固连在机器人手上的运动坐标系已经运动到期望的位置上,但它仍然平行于参考坐标系,或者假设其姿态并不是所期望的,下一步是要在不改变位置的情况下,适当地旋转坐标系而使其达到所期望的姿态。合适的旋转顺序取决于机器人手腕的设计以及关节装配在一起的方式。考虑以下三中常见的构型配置:

(a) 滚动角、俯仰角、偏航(RPY)角 (b) 欧拉角 (c) 链式关节

2.7.2.1 滚动角、俯仰角和偏航角

这是分别绕当前a,o,n轴的三个旋转顺序,能够把机器人的手调整到所期望的姿态。此时,假定当前的坐标系平行于参考坐标系,于是机器人手的姿态在RPY(滚动角、俯仰角、偏航


机器人运动学(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:货劳税业务测试题(三)答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: