机械臂运动学_第1页
机械臂运动学_第2页
机械臂运动学_第3页
机械臂运动学_第4页
机械臂运动学_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、机械臂运动学基础1、机械臂的运动学模型机械臂运动学研究的是机械臂运动,而不考虑产生运动的力。运动学研究机械臂的位置,速度和加速度。机械手的运动学的研究涉及到的几何和基于时间的内容,特别是各个关节彼此之间的关系以及随时间变化规律。典型的机器人由一些串行连接的关节和连杆组成。每个关节具有一个自由度,平移或旋转。对于具有n个关节的机械臂,关节的编号从1到n,有n +1个连杆,编号从0到n。连杆0是机械臂的基础,一般是固定的,连杆n上带有末端执行器。关节i连接连杆i和连杆i-1。一个连杆可以被视为一个刚体,确定与它相邻的两个关节的坐标轴之间的相对位置。一个连杆可以用两个参数描述,连杆长度和连杆扭转,这

2、两个量定义了与它相关的两个坐标轴在空间的相对位置。而第一连杆和最后一个连杆的参数没有意义,一般选择为0。一个关节用两个参数描述,一是连杆的偏移,是指从一个连杆到下一个连杆沿的关节轴线的距离。二是关节角度,指一个关节相对于下一个关节轴的旋转角度。为了便于描述的每一个关节的位置,我们在每一个关节设置一个坐标系, 对于一个关节链,Denavit和Hartenberg提出了一种用矩阵表示各个关节之间关系的系统方法。对于转动关节i,规定它的转动平行于坐标轴zi-1,坐标轴xi-1对准从zi-1到zi的法线方向,如果zi-1与zi相交,则xi-1取zi1 ×zi的方向。连杆,关节参数概括如下:l

3、 连杆长度ai沿着xi轴从zi-1和zi轴之间的距离;l 连杆扭转i 从zi-1轴到zi轴相对xi-1轴夹角;l 连杆偏移di从坐标系i-1的原点沿着zi-1轴到xi轴的距离;l 关节角度ixi-1轴和xi轴之间关于zi-1轴的夹角。对于一个转动关节i是关节变量,di是常数。而移动关节di是可变的,i是恒定的。为了统一,表示为运用Denavit-Hartenberg(DH)方法,可以将相邻的两个坐标系之间的变换关系表示为一个4x4的齐次变换矩阵上式表示出了坐标系i相对于坐标系i-1的关系。即其中表示坐标系i相对于世界坐标系0的位置与姿态,简称位姿。2、正向和反向运动学对于一个n-轴刚性连接的机

4、械臂,正向运动学的解给出的是最后一个连杆坐标系的位置和姿态。重复利用上式,得到机械臂末端位姿在笛卡尔坐标系中有6个自由度,3个平移,3个旋转。所以,一般来说具有6个自由度的机械臂可以使末端实现任意的位姿。总的机械臂变换一般简写为Tn,对6个自由度的机械臂简写为T6。对于任意的机械臂,无论其它有多少个关节,具有什么结构,正向运动学解都是可以得到的。在机械臂的路径规划中,用到的是反向运动学的解,它给出了特定的末端位姿对应的机械臂的关节角度。一般来说,反向运动学的解不是唯一的,对具有某种结构的机械臂,封闭解可能不存在。对于6自由度的机器人而言,运动学逆解非常复杂,一般没有封闭解。只有在某些特殊情况下

5、才可能得到封闭解。不过,大多数工业机器人都满足封闭解的两个充分条件之一(Pieper准则) (1)三个相邻关节轴交于一点 (2)三个相邻关节轴相互平行如果机械臂多于6个关节,称关节为冗余的,这时解是欠定的。如果对于机械臂某个特别的位姿,解不存在,称这个位姿为奇异位姿。机械臂的奇异性可能是由于机械臂中某些坐标轴的平行,或位置不能达到引起的。机械臂的奇异位姿分为两类:(1)边界奇异位姿,当机械臂的关节全部展开或折起时,使得末端处于操作空间的边界或边界附近,雅克比矩阵奇异,机械臂的运动受到物理结构的约束,这时机械臂的奇异位置称为边界奇异位姿。(2)内部奇异位姿,两个或两个以上的关节轴线重合时,机械臂

6、各个关节的运动相互抵消,不产生操作运动,这时机械臂的奇异位姿称为内部奇异位姿。械臂臂运动学逆解的方法可以分为两类:封闭解和数值解、在进行逆解时总是力求得到封闭解。因为封闭解的计算速度快,效率高,便于实时控制。而数值法不具有些特点。械臂运动学的封闭逆解可通过两种途径得到:代数法和几何法。一般而言,非零连杆参数越多,到达某一目标的方式也越多,即运动学逆解的数目也越多。在从多重解中选择解时,应根据具体情况,在避免碰撞的前提下通常按“最短行程”准则来选择。同时还应当兼顾“多移动小关节,少移动大关节”的原则。n个自由度的机械臂的末端位姿由n个关节变量所决定,这n个关节变量统称为n维关节矢量,记为q所有的

7、关节矢量构成的空间称为关节空间。机械臂末端的位姿x是在直角坐标空间中描述的,因此,称该空间为操作空间或作业定向空间。机器人各关节驱动器的位置统称为驱动矢量s,由这些矢量组成的空间称为驱动空间。驱动空间关节空间工作空间正向运动学运动学逆解3、Jacobian矩阵机械臂的Jacobian矩阵表示机械臂的操作空间与关节空间之间速度的线性映射关系,对于一个n-轴的机械臂,笛卡尔坐标系中的基座速度是末端速度是其中x是6个元素的向量。对于6个关节机械臂Jacobian矩阵是方阵,如果它是可逆的,则可以由机械臂的末端速度求出各个关节的速度。Jacobian矩阵在运动的奇异点的位置是不可逆的。在实际应用中,当

8、机械臂的末端位置接近奇异位置时,Jacobian矩阵是病态的,可能导致关节速度不能准确地得到。雅可比矩阵可以看成是从关节空间到操作空间运动速度的传动比,同时也可用来表示两空间之间力的传递关系。首先来看一个两自由度的平面机械手,容易求得两边微分后写成矩阵形式,简写成 dx=Jd,式中J就称为机械手的雅可比(Jacobian)矩阵,它由函数x,y的偏微分组成,反映了关节微小位移d与机械臂末端微小运动dx之间的关系。 dx/dt=Jd/dt, 因此机械手的雅可比矩阵定义为它的操作空间速度与关节空间速度的线性变换。dx/dt称为手爪在操作空间中的广义速度,简称操作速度,d/dt为关

9、节速度。可以看出,雅可比矩阵的每一列表示其它关节不动而某一关节以单位速度运动产生的端点速度。由可以看出,J阵的值随末端位置的不同而不同,即1和2的改变会导致J的变化。对于关节空间的某些形位,机械手的雅可比矩阵的秩减少,这些形位称为操作臂(机械手)的奇异形位。上例机械手雅可比矩阵的行列式为:,当2=0°或2=180°时,机械手的雅可比行列式为0,矩阵的秩为1,因此处于奇异状态。在奇异形位时,机械手在操作空间的自由度将减少。如果机械手的雅可比J是满秩的方阵,相应的关节速度即可求出,即,上例平面2R机械手的逆雅可比矩阵,显然,当2趋于0°(或180°)时,机械

10、手接近奇异形位,相应的关节速度将趋于无穷大。为了补偿机器人末端执行器位姿与目标物体之间的误差,以及解决两个不同坐标系之间的微位移关系问题,需要讨论机器人杆件在作微小运动时的位姿变化。假设一变换的元素是某个变量的函数,对该变换的微分就是该变换矩阵各元素对该变量的偏导数所组成的变换矩阵乘以该变量的微分。例如给定变换T为:若它的元素是变量x的函数,则变换T的微分为:下面讨论机械臂的微分运动,设机器人某一杆件相对于基坐标系的位姿为T,经过微运动后该杆件相对基坐标系的位姿变为T+dT,若这个微运动是相对于基坐标系(静系)进行的(左乘),总可以用微小的平移和旋转来表示,即所以有根据齐次变换的对称性,若微运

11、动是相对某个杆件坐标系i(动系)进行的(右乘),则T+dT可以表示为所以有令为微分算子,则相对基系有dT=0T,相对i系有dT=Ti 。这里的下标不同是由于微运动相对不同坐标系进行的。在机械臂运动学中微分变换分为微分平移和微分旋转两类。微分平移变换与一般平移变换一样,其变换矩阵为:由于微分旋转0 ,所以sind,cos1将它们代入旋转变换通式中得微分旋转表达式:于是得微分算子,即微分旋转的无序性,当0 时,有sind,cos1若令x=dx,y=dy,z=dz,则绕三个坐标轴的微分旋转矩阵分别为 略去2次项,得到两者结果相同,可见这里左乘与右乘等效。结论:微分旋转其结果与转动次序无关,这是与有限

12、转动(一般旋转)的一个重要区别。同理可得若Rot(x,y,z) 和Rot(x,y,z) 表示两个不同的微分旋转,则两次连续转动的结果为:上式表明:任意两个微分旋转的结果为绕每个轴转动的元素的代数和,即微分旋转是可加的。由等效转轴和等效转角与等效,有所以有kxd=x,   kyd=y , kzd=z,将它们代入得可见,微分变换由两个部分组成微分转动矢量,d微分平移矢量, 合称为微分运动矢量,可表示为例:已知一个坐标系 ,相对固定系的微分平移矢量d=1 0 0.5,微分旋转矢量=0 0.1 0 ,求微分变换dA。下面讨论两坐标系之间的微分关系,设第

13、一个坐标系为i系,第二个坐标系为j系不失一般性,假定j系就是固定的0系。因为 ,所以,整理得到对于任何三维矢量 p=px, py, pz,其反对称矩阵s(p) 定义为:记上式简写成 类似地,任意两坐标系A和B之间广义速度的坐标变换为:,例:已知一个坐标系 ,相对固定系的微分平移矢量d=1 0 0.5,微分旋转矢量=0 0.1 0 ,求A系中等价的微分平移矢量dA和微分旋转矢量A。解:将d=1 0 0.5 和=0 0.1 0 代入得到。 3、robotics工具箱中的运动学求解函数使用函数fkine的调用格式tr =fkine (ROBOT, Q)ROBOT表示机械臂对象,Q机械臂关节坐标值。函

14、数ikine的调用格式q = ikine(ROBOT, T)q = ikine(ROBOT, T, Q)q = ikine(ROBOT, T, Q, M)输入变量ROBOT表示机械臂对象,T机械臂末端变换矩阵。输出变量q机械臂关节的角度(单位是弧度),一般来说逆运动学的解不是唯一的,取决于初始值Q,缺省时是0向量。如果机械臂的自由度(DOF)小于6,此方法无效。由于解空间的维数大于机械臂的自由度,这时需要第4个输入量M来确定笛卡尔坐标(手腕对应的坐标系)中的哪些量在求解中被忽略。M中有6个元素,分别表示沿着x,y,z方向的平移和相对于x轴,y轴,z轴的旋转,值是0(忽略)或1。非零元素的个数应

15、该等于机械臂的自由度。例如,对典型的有5个自由度的机械臂,一般是忽略相对手腕坐标的转动,这时M = 1 1 1 1 1 0。另外一种用法是qt = ikine(ROBOT, TG)qt = ikine (ROBOT, TG, Q)qt = ikine (ROBOT, TG, Q, M)输入变量ROBOT表示机械臂对象,TG是4x4xN机械臂末端变换矩阵。输出变量qt是一组(N个)TG对应的关节坐标。一行对应一个输入变换,每一步的初始值取上一步的值。求解使用机械臂Jacobian矩阵的伪逆,这是数值求解方法,对于特定机械臂逆运动学解(如果可能)应该尽量使用解析解。但是这种方法可以得到奇异点上的解

16、,零空间中的关节角度可以任取。函数transl的调用格式tr= transl (X, Y, Z) tr= transl( X Y Z )返回机械臂末端坐标X, Y, Z对应的齐次表换表示X Y Z' = transl(T)返回齐次表换表示中的平移值,作为一个3元素的列向量X Y Z = TRANSL(TG)从笛卡尔坐标系的轨迹TG中得到X, Y 和 Z 的值。函数ctraj的调用格式 tc= ctraj(T0, T1, N) tc = ctraj(T0, T1, R)返回从T0到T1笛卡尔坐标系的轨迹 TC N表示轨迹中的点数。在第1中情况下,轨迹中的点在T0到T1中等距离分配。在第2

17、中情况下,向量R给出轨迹中每个点的距离,R中的元素取值为0 1。一个轨迹是4x4xN 矩阵,最后一个下标表示点索引。 函数trinterp的调用格式tr = trinterp (T0, T1, R)返回从T0到 T1齐次变换的插值矩阵。R中的元素取值为0 1。旋转变换使用 4元素球坐标线性插值。 puma560qr=0 pi/2 -pi/2 0 0 0x=fkine(p560,qr)xyz=transl(x)q=ikine(p560,x)q=-0.0000 1.5238 -1.4768 -0.0000 -0.0470 0.0000%注意逆解不唯一transl(fkine(p560,q)'

18、;%验证末端位置ans= 0.0203 -0.1500 0.8636x0=0.3 0.2 0.5x1=0.3 0.2 -0.5tc=ctraj(transl(x0),transl(x1),5)qc=ikine(p560,tc)qc=mod(qc,2*pi)%验证末端位置transl(fkine(p560,qc(1,:)'transl(fkine(p560,qc(2,:)'T0 = transl(0 0 0); T1 = transl(-1 2 1);t= 0:0.056:10;r = jtraj(0, 1, t);TC = ctraj(T0, T1, r);plot(t, transl(TC);tc=ctraj(transl(x0),transl(x1),0 0.5 1)qc=ikine(p560,tc)qc=mod(qc,2*pi)%验证末端位置transl(fkine(p560

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论