六自由度机械手运动控制 下载本文

如果,不希望用相对于这个旋转坐标系来表示运动姿态,那么就必须用Rot (y,-β)和Rot (z,-α)右乘式2-9,即

Sph(?,?,?)?Rot(z,?)Rot(y,?)Trans(0,0,?)Rot(y,??)Rot(z,??)

?1?0???0?0 ?00rc?s???10rs?s??01rc???001? (2-10)

这就是我们用于解释球面坐标的形式。 2.1.3 连杆变换矩阵及其乘积

曾把表示相邻两连杆相对空间关系的矩阵称为A矩阵,也叫做连杆变换矩阵,并把两个或两个以上A矩阵的乘积叫做T矩阵。例如,对位置。同理,

A3和A4的乘积为2T4?A3A4,它表示出连杆4对连杆2的相

T60,即

T6,表示连杆6相对于基系的位置。

T6能够用不同形式的平移和旋转来确

定。

2.1.3.1 广义连杆

相邻坐标系间及其相应连杆可以用齐次变换矩阵来表示。要求出机械手所需要的变换矩阵,每个连杆都要用广义连杆来描述。在求得相应的广义变换矩阵之后,可对其加以修正,以适合每个具体的连杆。

机器人机械手是由一系列连接在一起的连杆(杆件)构成的。需要用两个参数来描述一个连杆,即公共法线距离

ai和垂直于

ai所在平面内两轴的夹角和两连杆法线的夹角

?i;需要另外两个参数来表示相邻两杆的

关系,即两连杆的相对位置

di?i,如图2-3所示。

除第一个和最后一个连杆外,每个连杆两端的轴线各有一条法线,分别为前、后相邻连杆的公共法线。这两法线间的距离即为两连杆夹角。

di。我们称

ai为连杆长度,

?i为连杆扭角,di为两连杆距离,?i为

图2-3转动关节连杆四参数示意图

机器人机械手上坐标系的配置取决于机械手连杆连接的类型。有两种连接——转动关节和棱柱联轴节。对于转动关节,

?i为关节变量。连杆i的坐标系原点位于关节i和i+1的公共法线与关节

di?1i+1轴线的交点上。如果两相邻连杆的轴线相交于一点,那么原点就在这一交点上。如果两轴线互相平行,那么就选择原点使对下一连杆(其坐标原点已确定)的距离

为零。连杆i的z轴

与关节i+1的轴线在一直线上,而

x轴则在连杆i和i+1的公共法线上.其方向从i指向i+1,见图2-3。当两关节轴线相交时,x轴的方向与两矢量的交积当两轴

zi?1?zi平行或反向平行,x轴的方向总是沿着公共法线从转轴n指向i+1。

xi?1

xi平行且同向时,第i个转动关节的

?i为零。

当机械手处于零位置时,能够规定转动关节的正旋转方向或棱柱联细节的正位移方向,并确定z

轴的正方向。底座连杆(连杆0)的原点与连杆l的原点重合。如果需要规定一个不同的参考坐标系,那么该参考系与基系间的关系可以用一定的齐次变换来描述。在机械手的端部,最后的位移

d6或旋转角度

?6是相对于z5而言的。选择连杆6的坐标系原点,使之与连杆5的坐标系原点

重合。如果所用工具(或端部执

行装置)的原点和轴线与连杆6的坐标系不一致,那么此工具与连杆6的相对关系可由一个确定的齐次变换来表示。 2.1.3.2 广义变换矩阵

一旦对全部连杆规定坐标系之后,我们就能够按照下列顺序由两个旋转和两个平移来建立相邻两连杆i-1与i之间的相对关系,见图2-3。 1、2、

绕zi?1轴旋转?i角,使xi?1轴转到与xi同一平面内。

沿zi?1轴平移一距离di,把xi?1移到与xi同一直线上。

3、沿i轴平移一距离

ai?1,把连杆i-l的坐标系移到使其原点与连杆n的坐标系原点重合的地方。

4、绕

xi?1

轴旋转

?i?1角,使zi?1转到与zi同一直线上。

Ai矩阵。此关系式

这种关系可由表示连杆i对连杆i-1相对位置的四个齐次变换来描述,并叫做为

展开上式可得

Ai?Rot(z,?i)Trans(0,0,di)Trans(ai,0,0)Rot(x,?i) (2-11)

?c?i?s?Ai??i?0??0?s?ic?i?1c?ic?i?1s?i?10s?is?i?1?c?is?i?1c?i?10?s?ic?i?1c?ic?i?1s?i?10ai?1c?i??ai?1s?i?di??1? (2-12) s?is?i?1?c?is?i?1c?i?100??1?di??1? (2-13)

对于棱柱关节,A矩阵为

?c?i?s?Ai??i?0??0

di当机械手各连杆的坐标系被规定之后,就能够列出各连杆的常量参数。对于跟在旋转关节i后的连杆,这些参数为

ai?1和

?i?1。对于跟在棱柱联轴节i后的连杆来说,这些参数为?i和?i?1。

Ai然后,α角的正弦值和余弦值也可计算出来。这样,A矩阵就成为关节变量θ的函数(对于旋转关节)或变量d的函数(对于棱柱联轴节)。一旦求得这些数据之后,就能够确定六个阵的值。

2.1.3.3 用A矩阵表示T矩阵

i?1变换矩

机械手的末端装置即为连杆6的坐标系,它与连杆i-1坐标系的关系可由

i?1T6表示为

可得连杆变换通式为

T6?AiAi?1...A6 (2-14)

?s?i?c?i?s?ic?i?1c?ic?i?1i?1?Ti??s?is?i?1c?is?i?1?0?0

而由式2-15,机械手端部对基座的关系

0?s?i?1c?i?10T6为

?i?1???dis?i?1?dic?i?1?1?? (2-15)

T6?A1A2A3A4A5A6

如果机械手与参考坐标系的相对关系是由变换Z来表示的,而且机械手与其端部工具的关系由变换E表示,那么此工具端部对参考坐标系的位置和方向可由变换X表示如下:

X?ZT6E

此机械手的有向变换图如图2-4所示。 从式2-15可求得:

T6?Z?1XE?1 (2-16)

图2-4操作手变换图

2.2 机械手运动方程的求解

大多数机器人程序设计语言,是用某个笛卡儿坐标系来指定机械手末端位置的。这一指定可用于求解机械手最后一个连杆的姿态

T6。不过,在机械手能够被驱动至这个姿态之前,必须知道与这

个位置有关的所有关节的位置。 求解运动方程时,我们从并据此确定

T6开始求解关节位置。使

T6的符号表达式的各元素等于

T6的一般形式,

?i。其他五个关节参数不可能从

T6求得,因为所求得的运动方程过于复杂而无法求

A1?1?Ti解它们。我们可以由上节讨论的其他T矩阵来求解它们。一旦求得之后,可由左乘6的一

般形式,得:

式中,左边为

A1?1T6?1T6 (2-17)

?1和

T6各元的函数。此式可用来求解其他各关节变量,如

?2等。

不断地用A的逆矩阵左乘式2-16,可得下列另四个矩阵方程式 上列各方程的左式为和

?1?1A2A1?2T6 (2-18) (2-19) (2-20) (2-21)

?1?1A3?1A2A1?3T6?1?1?1?1A4A3A2A1?4T6?1?1?1?1A5?1A4A3A2A1?5T6T6前(i-1)个关节变量的函数。可用这些方程来确定各关节的位置。