《机器人原理与应用》东北大学人工智能与机器人研究所2016.9第三章机器人坐标系统第三章机器人坐标系统2机器人是个复杂的运动系统,它的每一个动作都是各个元部件共同作用的结果。第三章机器人坐标系统33.1位置与姿态3.2正交坐标系3.3运动坐标表示3.4齐次坐标变换3.5机器人坐标系统为了系统地、精确地描述各个元部件的作用以及它们之间的关系,需要引入一套机器人坐标系统。第三章机器人坐标系统4要全面地确定一个物体在三维空间中的状态需要有三个位置自由度和三个姿态自由度。前者用来确定物体在空间中的具体方位,后者则是确定物体的指向。我们将物体的六个自由度的状态称为物体的位姿。如果H为手坐标系,用以描述手的姿态,那再加上手的位置就构成了手的位姿。3.1位置与姿态一般姿态的描述可以用横滚(Roll)、俯仰(Pitch)和侧摆(Yaw)三轴的转角来实现。绕坐标系H各轴转动yawProllpitchHXHZHYH第三章机器人坐标系统5飞机飞行姿态变化第三章机器人坐标系统63.2正交坐标系3.2.1正交坐标系及矢量的基础知识右图是所谓的正交坐标系B(x,y,z),用来表示机器人的基坐标,其中,,分别是三个坐标轴的单位向量。B系中有另外一个坐标系H(xH,yH,zH),用来表示手坐标,其中,,分别是H系三个坐标轴的单位向量。ijknoazyxBHHzHxHyanoijkP端点P相对于机器人手坐标系H及基座坐标系B的定位第三章机器人坐标系统73.2.1.1正交坐标系的性质kjiaaaooonnnaonzyxzyxzyx单位矢量,,在基坐标系中可表示为:noa根据矢量点积和叉积的性质,对于相互正交的单位矢量,,有ona对于单位矢量,,也有同样的性质。ijkaononanao1aaoonn0naaoon第三章机器人坐标系统其中θ是a和b两矢量间的夹角,如图3-2所示。矢量的点积(内乘积或标量积)换句话说:一个矢量在另一个矢量上的投影等于该矢量与另一矢量方向上单位矢量的点积。再令a=j(j为a方向上的单位矢量),则即两矢量方向上单位矢量的点乘等于两矢量夹角的余弦。图3-2标量积令b=i(i为b方向上的单位矢量),则第三章机器人坐标系统矢量的叉积(矢量积或叉乘积)其中矢量c的模为:其中θ是a和b间小于等于1800的夹角,若将a按右手法则绕c转θ角至b,右手拇指指向为c的正方向(如图3-3),c与a、b两者垂直。则图3-3叉乘积若a和b用分量的形式表示为:第三章机器人坐标系统a和b的点乘为:将点乘和叉乘应用于右手笛卡尔坐标系的单位矢量i,j,k,有:第三章机器人坐标系统2008-711令矩阵R称为正交坐标变换矩阵。zyxzyxzyxTaaaooonnnRzyxnnnnzyxoooozyxaaaa当用列向量表示单位矢量时,有zzzyyyxxxaonaonaonaonR于是,变换矩阵R可以表示为:当用矩阵表示两个矢量的点乘时,有0onooonnnononononTzyxzyxzzyyxx第三章机器人坐标系统123.2.1.2正交坐标变换矩阵R的性质显然TTTzyxzyxzyxTaonaaaooonnnR由上式可得从而可得结论:正交变换矩阵为正交矩阵。于是可得IaaoanaaooonoanonnnaonaonRRTTTTTTTTTTTTT1000100011-RRT第三章机器人坐标系统133.2.1.3正交坐标变换矩阵的几何意义,上式可写成其中kjiRaonT1-RRT考虑到aonRkji上式表明正交坐标变换矩阵R实现了由手坐标系H到基坐标系B的正交坐标变换,它可以将一组3个相互正交的单位矢量变换为另一组3个相互正交的单位矢量,每一组单位矢量均代表了一个正交坐标系。这也说明了将矩阵R称为正交坐标变换矩阵的原因。在机器人学中经常要用到这种正交坐标变换。第三章机器人坐标系统143.2.2位置的描述一旦建立起一个坐标系,我们就可以用3维的位置矢量来确定该空间内任一点的位置。其中,x、y、z是p点在笛卡尔坐标系的三个坐标轴上坐标分量。用这种方法可以很容易地表示出手坐标(原点)在基坐标系中的空间位置。TzyxP3.2.3姿态的描述物体的姿态可由某个固接在物体上的坐标系来描述。设在空间中除了有参考坐标系B外,还有物体质心上的一个笛卡尔正交坐标系H,且H系与此物体的空间位置关系是固定不变的,那么就可以以H系三个坐标轴的单位矢量相对于B系的方向来表示H系和B系的姿态。第三章机器人坐标系统15第三章机器人坐标系统16假设为H坐标系中某轴的单位向量,即它在B坐标系的方向可以以与B系三轴夹角的余弦值为分量加以表达,见下图.ll故有kjillllcoscoscosjlxyzkBllli矢量的方向矢径表示由:zyxnnnnzyxoooozyxaaaaaonR且:第三章机器人坐标系统17因此正交坐标变换矩阵R为一方向余弦矩阵,也被称为旋转矩阵(具体含义将在后面小节中阐述)。aonaonaoncoscoscoscoscoscoscoscoscosaonR根据前面的推导可得:当:alolnl321,,第三章机器人坐标系统b)姿态(方位)的描述采用旋转矩阵来表示刚体姿态(方位),即由{B}系的三个单位主矢量相对于坐标系{A}的方向余弦组成:既表示了刚体F在{A}系中的方位,也描述了{B}系在{A}系中的姿态。其中:),cos(cosABxxxByBzBxAyAzA第三章机器人坐标系统193.3运动坐标表示3.3.1平动的坐标表示设手坐标系H与基坐标系B具有相同的姿态,但H系坐标原点与B系的原点不重合。用矢量来描述H系相对于B系的位置(如右图所示),称为H系相对于B系的平移矢量。如果点p在H系中的位置为,那么它相对于B系的位置矢量可由矢量相加得出,即Hprrr0称其为坐标平移方程。0r0rHrprrH0rHxPHzyxHyHzBpr表示移动的坐标变换第三章机器人坐标系统20下面以绕z轴转动角为例来研究绕坐标轴转动某个角度的表示法。设H系从与B系相重合的位置绕B系的z轴转动角,H系与B系的关系如右图所示。zz3.3.2转动的坐标表示(1)绕坐标轴转动某个角度的表示法naHxxyzHzHyHB,ozzH系相对B系绕z轴转动θz角的坐标关系第三章机器人坐标系统21若将H系的3个单位矢量表示在B系中,则有:实现两个坐标系之间转动关系的矩阵,又叫转动矩阵R,可表示为:100a-0cossinzzo0sincoszzn,,-1000cossin0sincos,,zzzzaonR第三章机器人坐标系统22同理,可以得出当绕X轴旋转时:当绕Y轴旋转时:上面的分析说明了R矩阵可以用来表示绕坐标轴的转动,这表征了R矩阵的另一种几何意义。-xxxxaonRcossin0sincos0001,,-yyyyaonRcos0sin010sin0cos,,第三章机器人坐标系统因此写出三个基本的旋转矩阵,即分别绕x、y和z轴转θ角的旋转矩阵:xyzx’y'z'θθxyzx’y'z'θθxyzx’y'z'θθx’y’z’xyzx’y’z’xyzx’y’z’xyz第三章机器人坐标系统24设B系与H系的z轴相重合,B系绕z轴转动角就得H系,如下图所示。z(2)两个坐标系的投影之间的关系xyHy),(HBzzzHxyxACuPv矢径BP’在H系与B系的投影关系OP第三章机器人坐标系统25已知矢径在H系三轴投影分别为u,v,w。则由上图可知'OPzzvuACOCOAxsincos--zzvuycossinwz由上式可见,R矩阵可以将矢径在手坐标系上的投影变换到该矢径在基坐标系上的投影,这表征了R矩阵的又一种几何意义。-wvuRwvuzyxzzzz1000cossin0sincos于是有(R)xyHy),(HBzzzHxyxACuPv矢径BP’在H系与B系的投影关系O第三章机器人坐标系统例3.1若从基坐标系({B})到手爪坐标系({E})的旋转变换矩阵为。(1)画出两坐标系的相互方位关系(不考虑{E}的原点位置);(2)如果给出OE({E}系的原点)在{B}中的位置矢量为(1,2,2),画出两坐标系的相对位姿关系。解:xEyEzExByBzB(1)xBzByBxEzEyExBzByBxEzEyE(1,2,2)(2)第三章机器人坐标系统27(3)具有转动关系的两个矢量的投影之间的关系设矢量在坐标系Bxy的投影为u,v,w;将矢量绕z轴转动角,得到矢量,设矢量在同一坐标系的投影为x,y,z,如下图所示。OQzOQPOPOyxHy),(HBzzHxyuPvxQ具有转动关系的两个矢量投影之间的关系O第三章机器人坐标系统28yxHy),(HBzzHxuPvxQ具有转动关系的两个矢量投影之间的关系OxyHy),(HBzzzHxyxACuPv矢径BP’在H系与B系的投影关系O如果注意到在x,y轴的投影相当于在轴的投影,再对比16页和19页的两个图所示的相同几何关系,便可得到与式(R)相同结果,只是此时的u,v,w与x,y,z同前面讨论的情况的几何含义不同。这时矩阵R用来表示具有转动关系的两个矢量在同一坐标系中的投影之间的关系,这表征了R矩阵的最后一种几何意义。PHHyx,第三章机器人坐标系统29至此,归纳了R矩阵的四种几何意义:1、实现了由手坐标系H到基坐标系B的正交坐标变换。2、用来表示绕坐标轴的转动。3、将矢径在手坐标系上的投影变换到该矢径在基坐标系上的投影。4、表示具有转动关系的两个矢量在同一坐标系中的投影之间的关系。这对于认识R矩阵的本质,研究机器人的坐标系统很有帮助。PQHHyx,第三章机器人坐标系统303.3.3复合运动的坐标表示基坐标系B和手坐标系H的原点不重合,而且两坐标系的姿态也不相同的情况。设H相对于B的位置矢量为,由H到B的坐标变换矩阵是。在H中有一点P,点P相对于H的位置矢量为,如右图所示。Tcbar0THwvuraonRzyxBHr0rHzHxHyanoPPAuvwHr表示转动和移动的坐标变换第三章机器人坐标系统31Tpzyxr][对于任意一点P在B和H系中的描述有以下的关系HprRrr0其中,是p点相对于B系的位置矢量。至此,我们由浅入深地介绍了物体的基本宏观运动在坐标系中的表示方法,这是我们学习机器人复杂运动的最基本的数学工具。在后续章节中会频繁地用到。HcprRrrrr00再由式(rp),可得复合变换HcrRr可把上式看成坐标旋转和坐标平移的复合变换。实际上,规定一个过渡坐标系C,使C的坐标原点与H系重合,而C的姿态和B系保持一致。根据式(R)可得由H系到过渡坐标系C的坐标变换为其中,是点P在C中的位置矢量。(rp)cr第三章机器人坐标系统例3.2已知坐标系{B}初始位姿与{A}重合,首先{B}相对{A}的zA轴转30°,再沿{A}的xA轴移动10个单位,并沿{A}的yA轴移动5个单位。求位置矢量和旋转