资源描述
,Click to edit Master title style,Click to edit Master text styles,Second Level,Third Level,Fourth Level,Fifth Level,*,第三章 工业机器人运动学,引言,要实现对工业机器人在空间运动轨迹的控制,完成预定的作业任务,就必须知道机器人在空间瞬时的位置与姿态。如何计算机器人手部在空间的位姿是实现对机器人的控制首先要解决的问题。本章讨论机器人运动学的基本问题,将引入齐次坐标变换。推导出坐标变换方程;利用,DH,参数法,进行机器人的位姿分析;介绍机器人正向和逆运动学的基础知识。,主要内容,数学基础,齐次坐标变换,机器人运动学方程的建立(正运动学),机器人逆运动学分析,一、机器人数学基础,齐次坐标变换,1.1,引言,1.2,点向量和平面的描述,1.3,变换,1.4,平移变换,1.5,旋转变换,1.6,坐标系,1.7,相对变换,1.8,物体的描述,1.9,逆变换,1.10,一般性旋转变换,1.11,等价旋转角与旋转轴,1.12,扩展与缩小,1.13,透视变换,1.14,变换方程,1.15,小结,1.1,引言,(Introduction),机器人操作涉及到各物体之间的关系和各物体与机械手之间的关系。这一章将给出描述这些关系必须的表达方法。类似这种表示方法在计算机图形学中已经解决。在计算机图形学和计算机视觉中,物体之间的关系是用齐次坐标变换来描述的。在本课程我们将采用齐次坐标变换来描述机械手各关节坐标之间、各物体之间以及各物体与机械手之间的关系。,本章首先介绍向量和平面的表示方法,然后引出向量和平面的坐标变换,这些变换基本上是由平移和旋转组成,因此可以用坐标系来描述各种物体和机械手的空间位置和姿态。稍后还要介绍逆变换,逆变换是运动学求解的基础。,a,0,v,z,y,x,z,y,x,p,c,b,0,u,E,H,图,1.1,点向量的描述,1.2,点向量,和平面的描述,(,Notation of point vectors and planes,),1.2.1,点向量(,Point vectors,),点向量描述空间的一个点在某个坐标系的空间位置。同一个点在不同坐标系的描述及位置向量的值也不同。如图,1.1,中,点,p,在,E,坐标系上表示为,E,v,,在,H,坐标系上表示为,H,u,,且,v u,。一个点向量可表示为,v=a,i,+b,j,+c,k,通常用一个(,n+1,)维列矩阵表示,即除,x,、,y,、,z,三个方向上的分量外,再加一个比例因子,w,,即,v=x y z w,T,其中,a=x/w,b=y/w,c=z/w,。,改变比例因子,w,,则分量,a,、,b,、,c,的数值相应改变,但描述的还是同一个点向量。如,v=3,i,+4,j,+5,k,可表示为,v=3 4 5 1,T,=6 8 10 2,T,=-3 -4 -5 -1,T,在向量中增加一个比例因子,w,是为了方便坐标变换中的矩阵运算。,已知两个向量,a=a,x,i,+a,y,j,+a,z,k,b=b,x,i,+b,y,j,+b,z,k,(1.1),向量的点积是标量。用“,”,来定义向量点积,即,a b=a,x,b,x,+a,y,b,y,+a,z,b,z,(1.2),向量的叉积是一个垂直于由叉积的两个向量构成的平面的向量。用“”表示叉积,即,a b=(a,y,b,z,a,z,b,y,),i,+(a,z,b,x,a,x,b,z,),j,+(a,x,b,y,a,y,b,y,),k,(1.3),可用行列式表示为,i j k,a b =a,x,a,y,a,z,(,1.4,),b,x,b,y,b,z,1.2.2,平面(,Planes,),平面可用一个行矩阵表示,即,p=a b c d (1.5),它表示了平面,p,的法线方向,且距坐标原点的,距离为,d/m,,其中,m=(1.6),如图,1.2,所示,如果将,x,y,平面沿,z,轴正,方向平移一个单位距离,构成平面,p,,则,p=0 0 1 -1,即,a=0,b=0,c=1,d=-1,m=1,平面,p,上任一点,v,为,v=,x y,1 1,T,,它与平面,p,的点乘为零,即,p v=0,平面,p,上方任一点,v,,如,v=0 0 2 1,T,,它与平面,p,的点乘为一个正数,即,p v=1,平面,p,下方任一点,v,,如,v=0 0 0 1,T,,它与平面,p,的点乘为一个负数,即,p v=-1,注意:平面,0 0 0 0,无定义。,a,2,+b,2,+c,2,a,2,+b,2,+c,2,图,1.2,平面的描述,0,v,p,z,y,x,1,y,x,H,空间的变换是由,4,4,矩阵来完成的,它可以表示平移、旋转、扩展和透视等各种变换。如已知点,u,(在平面,p,上),它的变换,v,(在平面,q,上),用矩阵积表示为,v=H u (1.7),其中,H,为4,4 变换矩阵,,u,和,v,为4,1,的点列向量,,相应的平面,p,到,q,的,变换是,q=p H,-,1,(1.8),其中,H,-,1,为,H,的逆阵,,p,和,q,为,1,4,的平面行向量。,经变换后的平面向量,q,与点向量,v,的点乘为,q v=p H,-,1,H u,p u (1.9),与变换前平面,p,与点,u,的点乘相等,证明了变换的等效性。,1.3,变换,(Transformation),1.4,平移变换,(,Translation transformation,),用向量,h,a,i,+b,j,+c,k,进行,平移,其相应的,H,变换矩阵是,1 0 0,a,0 1 0 b,H =Trans(a b c)=0 0 1 c (1.10),0 0 0 1,因此对向量,u=x y z w,T,,经,H,变换为向量,v,可,表示为,x+aw x/w+a,y+bw y/w+b,v=z+cw =z/w+c (1.11),w 1,可见,平移实际上是对已知向量,u=x y z w,T,与平移向量,h=a b c 1,T,相加。,【,例,1.1,】,对点向量,u=2 3 2 1,T,进行平移,平移向量为,h=4 -3 7 1,T,,则平移后的向量为,v=6 0 9 1,T,,或,1 0 0 4 2 6,0 1 0 3 3 0,v=H,u=0 0 1 7 2 =9,0 0 0 1 1 1,点向量的平移过程如图,1.3,所示。,对平面的平移则用,H,1,进行变换,如对平面,p=1 0 0 -2,进行,H,变换为平面,q,,则根据变,换原理有,1 0 0 -4,0 1 0 3,q,p H,1,1 0 0 -2,0 0 1 -7,0 0 0 1,1 0 0 -6,平面,p,1 0 0 -2,是,y,z,平面沿,x,正方向移动,2,个单位形成的平面(图,1.3,),点,u=2 3 2 1,T,是平面,p,上的一个点,它们的点乘,p u=0,。经,H,变换后的平面,q,1 0 0-6 ,是,y,z,平面沿,x,正方向移动,6,个单位形成的平面,点,v=6 0 9 1,T,是平面,q,上一个点,平面,q,与点,v,的点乘也应是零,即,q v,0,,说明变换前后的结果不变,证明,H,变换是正确的。,u,0,z,y,x,3,P,2,2,图,1.3,点向量的平移,v,6,9,q,p,1.5,旋转变换,(,Rotation transformation,),如图,1.4,所示,绕,x,y,z,轴旋转一个,角,的相应变换是,1 0 0 0,0,cos -sin 0,Rot(x,)=0 sin cos 0,(,1.12,),0 0 0 1,cos 0 sin 0,0 1 0 0,Rot(y,)=-sin 0 cos 0 (1.13),0 0 0 1,cos -sin 0 0,sin cos 0 0,Rot(z,)=0 0 1 0 (1.14),0 0 0 1,注意:,角旋转的正方向遵循右手螺旋法则(如图,1.4,所示),图,1.4,旋转变换,0,z,y,x,【,例,1.2】,点,u=7,i,+3,j,+2,k,,它绕,z,轴旋转90,为,v,,经式(,1.14,)变换得到(,sin=1,,,cos=0,),0,-,1 0 0 7,-,3,1 0 0 0 3 7,v=Rot(z,90,)=0 0 1 0 2,2,0 0 0 1 1 1,起始点,u,和终点,v,如图,1.5,所示。如将,v,点再绕,y,轴,旋转90,得到,w。,用式(,1.13,)变换得到,0 0 1 0,-,3 2,0 1 0 0 7,7,w=Rot(y,90,)=,-,1 0 0 0 2,3,0 0 0 1 1,1,结果如图,1.6,所示。如果将上述两次旋转结合起来,,写成一个表达式得到,w=Rot(y,90,)v,Rot(y,90,)Rot(z,90,)u,用两个变换矩阵,Rot(y,90,),、,Rot(z,90,),和起始,点,u,代入上式计算的结果与前面分两次计算的结果相同。,2,u,z,y,x,v,0,图,1.5 Rot(z,90),y,u,v,0,z,x,w,图,1.6 Rot(y,90)Rot(z,90),2,7,为此,先将点,u,绕,z,轴旋转90,,然后再绕,y,轴旋转90,,我们得到,0 0 1 0 0 -1 0 0 7 2,0 1 0 0 1 0 0 0 3 7,w,Rot(y,90,)Rot(z,90,)u =-1 0 0 0 0 0 1 0 2,3,0 0 0 1 0 0 0 1 1 1,如果按着,逆序旋转,,首先绕,y,轴旋转90,,然后再绕,z,轴旋转90,,其结果为,0 -1 0 0 0 0 1 0,7 -3,1 0 0 0 0 1 0 0,3 2,w=Rot(z,90,)Rot(y,90,)u =0 1 0 0 -1 0 0 0 2 =-7,0 0 0 1 0 0 0 1 1 1,逆序旋转的结果如图,1.7,所示。,显然,,变换的顺序不同,其结果也不同,。这从,矩阵相乘是不可交换的(,ABBA,)也可以得到证明。,如对经过两次旋转变换得到的点向量,w,再进行一次平移(平移向量为,h,4-3 7 1,T,),,则可得到如图,1.8,所示的点向量,n,。变换过程如下,1 0 0 4 2 6,0 1 0,-,3 7 4,n=Trans(4,3,7)w =0 0 1 7 3 =10,0 0 0 1 1 1,z,u,v,0,y,x,w,图,1.8 Trans(4,-3,7)Rot(y,90)Rot(z,90),n,7,2,w,0,z,y,x,u,图,1.7 Rot(z,90)Rot(y,90),2,-7,v,1.6,坐标系,(Coordinate frames),齐次变换矩阵,H,由四个列向量组成,它的前三个列向量称为方向向量,由式,(,1.12,)到式(,1.14,)的旋转变换(分别绕,x,、,y,、,z,轴旋转,角)确定,第四个列向,量称为平移向量,它的平移分量(沿,x,、,y,、,z,轴的平移量)由式(,1.10,)第四列的前,三个元素确定。如,0 0 1 4,1 0 0 -3,H,Trans(4,-3,7)Rot(y,90)Rot(z,90),=0 1 0 7,(,1.15,),0 0 0 1,坐标系的原点,即零向量,0 0 0 1,T,的,H,变换是,4 -3,7 1,T,,,相当于将原点按平移,向量的各个分量进行平移的结果(如图,1.9,所,示)。如果对,x,、,y,、,z,轴的单位向量进行,H,变,换,分别得到,4 -2 7 1,T,、,4 -3 8 1,T,和,5,-3,7 1,T,。,这四个向量在图,1.9,中标出,并,形成了一个新坐标系。,0,z,y,x,z,y,x,0,Trans(4,-3,7),Rot(z,90,),Rot(y,90,),图,1.9,坐标原点与单位向量的,H,变换,这个新坐标系的,x,、,y,、,z,轴的方向分别是,0,,1,0,0,T,、,0,0,1,0,T,和
展开阅读全文