机械臂运动学

  • 格式:doc
  • 大小:227.00 KB
  • 文档页数:11

机械臂运动学基础

1、机械臂的运动学模型

机械臂运动学研究的是机械臂运动,而不考虑产生运动的力。运动学研究机械臂的位置,速度和加速度。机械手的运动学的研究涉及到的几何和基于时间的内容,特别是各个关节彼此之间的关系以及随时间变化规律。

典型的机器人由一些串行连接的关节和连杆组成。每个关节具有一个自由度,平移或旋转。对于具有n个关节的机械臂,关节的编号从1到n,有n +1个连杆,编号从0到n。连杆0是机械臂的基础,一般是固定的,连杆n上带有末端执行器。关节i连接连杆i和连杆i-1。

一个连杆可以被视为一个刚体,确定与它相邻的两个关节的坐标轴之间的相对位置。一个连杆可以用两个参数描述,连杆长度和连杆扭转,这两个量定义了与它相关的两个坐标轴在空间的相对位置。而第一连杆和最后一个连杆的参数没有意义,一般选择为0。一个关节用两个参数描述,一是连杆的偏移,是指从一个连杆到下一个连杆沿的关节轴线的距离。二是关节角度,指一个关节相对于下一个关节轴的旋转角度。

为了便于描述的每一个关节的位置,我们在每一个关节设置一个坐标系, 对于一个关节链,Denavit和Hartenberg提出了一种用矩阵表示各个关节之间关系的系统方法。对于转动关节i,规定它的转动平行于坐标轴zi-1,坐标轴xi-1对准从zi-1到zi的法线方向,如果zi-1与zi相交,则xi-1取zi−1 ×zi的方向。连杆,关节参数概括如下:

 连杆长度ai 沿着xi轴从zi-1和zi轴之间的距离;

 连杆扭转αi 从zi-1轴到zi轴相对xi-1轴夹角;

 连杆偏移di 从坐标系i-1的原点沿着zi-1轴到xi轴的距离;

 关节角度θi xi-1轴和xi轴之间关于zi-1轴的夹角。

对于一个转动关节θi是关节变量,di是常数。而移动关节di是可变的,θi是恒定的。为了统一,表示为

iiiqd转动关节移动关节

运用Denavit-Hartenberg(DH)方法,可以将相邻的两个坐标系之间的变换关系表示为一个4x4的齐次变换矩阵

1cossincossinsincossincoscoscossinsin0sincos0001iiiiiiiiiiiiiiiiiiiaaAd

上式表示出了坐标系i相对于坐标系i-1的关系。即

0011iiiiTTA

其中0iT表示坐标系i相对于世界坐标系0的位置与姿态,简称位姿。

2、正向和反向运动学

对于一个n-轴刚性连接的机械臂,正向运动学的解给出的是最后一个连杆坐标系的位置和姿态。重复利用上式,得到 001112()nnnTAAAKq

机械臂末端位姿在笛卡尔坐标系中有6个自由度,3个平移,3个旋转。所以,一般来说具有6个自由度的机械臂可以使末端实现任意的位姿。

总的机械臂变换0nT一般简写为Tn,对6个自由度的机械臂简写为T6。对于任意的机械臂,无论其它有多少个关节,具有什么结构,正向运动学解都是可以得到的。

在机械臂的路径规划中,用到的是反向运动学的解10()nqKT,它给出了特定的末端位姿对应的机械臂的关节角度。一般来说,反向运动学的解不是唯一的,对具有某种结构的机械臂,封闭解可能不存在。

对于6自由度的机器人而言,运动学逆解非常复杂,一般没有封闭解。只有在某些特殊情况下才可能得到封闭解。不过,大多数工业机器人都满足封闭解的两个充分条件之一(Pieper准则)

(1)三个相邻关节轴交于一点

(2)三个相邻关节轴相互平行

如果机械臂多于6个关节,称关节为冗余的,这时解是欠定的。如果对于机械臂某个特别的位姿,解不存在,称这个位姿为奇异位姿。机械臂的奇异性可能是由于机械臂中某些坐标轴的平行,或位置不能达到引起的。

机械臂的奇异位姿分为两类:

(1)边界奇异位姿,当机械臂的关节全部展开或折起时,使得末端处于操作空间的边界或边界附近,雅克比矩阵奇异,机械臂的运动受到物理结构的约束,这时机械臂的奇异位置称为边界奇异位姿。

(2)内部奇异位姿,两个或两个以上的关节轴线重合时,机械臂各个关节的运动相互抵消,不产生操作运动,这时机械臂的奇异位姿称为内部奇异位姿。

械臂臂运动学逆解的方法可以分为两类:封闭解和数值解、在进行逆解时总是力求得到封闭解。因为封闭解的计算速度快,效率高,便于实时控制。而数值法不具有些特点。械臂运动学的封闭逆解可通过两种途径得到:代数法和几何法。

一般而言,非零连杆参数越多,到达某一目标的方式也越多,即运动学逆解的数目也越多。

在从多重解中选择解时,应根据具体情况,在避免碰撞的前提下通常按“最短行程”准则来选择。同时还应当兼顾“多移动小关节,少移动大关节”的原则。

n个自由度的机械臂的末端位姿由n个关节变量所决定,这n个关节变量统称为n维关节矢量,记为q所有的关节矢量构成的空间称为关节空间。机械臂末端的位姿x是在直角坐标空间中描述的,因此,称该空间为操作空间或作业定向空间。机器人各关节驱动器的位置统称为驱动矢量s,由这些矢量组成的空间称为驱动空间。

3、Jacobian矩阵

机械臂的Jacobian矩阵表示机械臂的操作空间与关节空间之间速度的线性映射关系,对于一个n-轴的机械臂,笛卡尔坐标系中的基座速度是

00nxJq

末端速度是

nnttnxJq

其中x是6个元素的向量。对于6个关节机械臂Jacobian矩阵是方阵,如果它是可逆的,则可以由机械臂的末端速度求出各个关节的速度。Jacobian矩阵在运动的奇异点的位置是不可逆的。在实际应用中,当机械臂的末端位置接近奇异位置时,Jacobian矩阵是病态的,可能导致关节速度不能准确地得到。

雅可比矩阵可以看成是从关节空间到操作空间运动速度的传动比,同时也可用来表示两空间之间力的传递关系。首先来看一个两自由度的平面机械手,容易求得

1121211121211212111212cccos(),cos()sssin(),sin()xllccyllss

两边微分后写成矩阵形式

121212xxddxddyyy

112122121112122122sssccclllddxlllddy,简写成 dx=Jdθ,式中J就称为机械手的雅可比(Jacobian)矩阵,它由函数x,y的偏微分组成,反映了关节微小位移dθ与机械臂末端微小运动dx之间的关系。 dx/dt=Jdθ/dt, 因此机械手的雅可比矩阵定义为它的操作空间速度与关节空间速度的线性变换。dx/dt称为手爪在操作空间中的广义速度,简称操作速度,

dθ/dt为关节速度。可以看出,雅可比矩阵的每一列表示其它关节不动而某一关节以单位速度运动产生的端点速度。

由1121221211212212sssccclllJlll可以看出,J阵的值随末端位置的不同而不同,即θ1和θ2的改驱动空间 关节空间 工作空间 正向运动学

运动学逆解 变会导致J的变化。对于关节空间的某些形位,机械手的雅可比矩阵的秩减少,这些形位称为操作臂(机械手)的奇异形位。上例机械手雅可比矩阵的行列式为:

122det()cos()Jll,当θ2=0°或θ2=180°时,机械手的雅可比行列式为0,矩阵的秩为1,因此处于奇异状态。在奇异形位时,机械手在操作空间的自由度将减少。如果机械手的雅可比J是满秩的方阵,相应的关节速度即可求出,即1Jx,上例平面2R机械手的逆雅可比矩阵212212111212112121221lclsJlclclslslls,显然,当θ2趋于0°(或180°)时,机械手接近奇异形位,相应的关节速度将趋于无穷大。

为了补偿机器人末端执行器位姿与目标物体之间的误差,以及解决两个不同坐标系之间的微位移关系问题,需要讨论机器人杆件在作微小运动时的位姿变化。

假设一变换的元素是某个变量的函数,对该变换的微分就是该变换矩阵各元素对该变量的偏导数所组成的变换矩阵乘以该变量的微分。例如给定变换T为:

11121314212223243132333441424344ttttttttTtttttttt

若它的元素是变量x的函数,则变换T的微分为:

13111214232122243132333443414244ttttxxxxttttxxxxdTdxttttxxxxttttxxxx

下面讨论机械臂的微分运动,设机器人某一杆件相对于基坐标系的位姿为T,经过微运动后该杆件相对基坐标系的位姿变为T+dT,若这个微运动是相对于基坐标系(静系)进行的(左乘),总可以用微小的平移和旋转来表示,即

(,,)(,)xyzTdTTransdddRotkdT

所以有

44(,,)(,)xyzdTTransdddRotkdIT

根据齐次变换的对称性,若微运动是相对某个杆件坐标系i(动系)进行的(右乘),则T+dT可以表示为

(,,)(,)xyzTdTTTransdddRotkd

所以有

44(,,)(,)xyzdTTTransdddRotkdI 令44(,,)(,)xyzTransdddRotkdI为微分算子,则相对基系有dT=Δ0T,相对i系有dT=TΔi 。这里Δ的下标不同是由于微运动相对不同坐标系进行的。在机械臂运动学中微分变换分为微分平移和微分旋转两类。

微分平移变换与一般平移变换一样,其变换矩阵为:

100010(,,)0010001dxdyTransdxdydzdz

由于微分旋转θ→0 ,所以sinθ→dθ,cosθ→1将它们代入旋转变换通式中得微分旋转表达式:

1010(,)100001zyzxyxkdkdkdkdRotkdkdkd

于是得微分算子44(,,)(,)xyzTransdddRotkdI,即

0000000zyzxyxkdkddxkdkddykdkddz

微分旋转的无序性,当θ→0 时,有sinθ→dθ,cosθ→1.若令δx=dθx,δy=dθy,δz=dθz,则绕三个坐标轴的微分旋转矩阵分别为

1000010(,)0100001xRotxxx1000100(,)0100001yRotyyy 100100(,)00100001zzRotzz

略去2次项,得到

10010010010(,)(,)101000010001yyxyxxRotxxRotyyyxyx

10100010010(,)(,)101000010001xyyyxxRotyyRotxxyxyx