机器人学第二章运动学_第1页
机器人学第二章运动学_第2页
机器人学第二章运动学_第3页
机器人学第二章运动学_第4页
机器人学第二章运动学_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

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

文档简介

1、第二章机器人运动学§2J空间描述和坐标变换一41置和姿态的描述h位置的描述对于直角坐标系A,空间任一点的位置可用3订 阶的列矢量力卩来表示(也称位置矢量):PX'A »P= PyPz.除了直角坐标系外,也可采用圆柱坐标系或球坐标系来描述点的位置。第二章机器人运动学§2.2空间描述和坐标变换一位置和姿态的描述圆柱坐标(cylindrical):两个线性平移运动和一个旋转运动 球坐标(spherical):一个线性平移运动和两个旋转运动K位走的描述可以引入比例因子:比例因子可为任意值,相当于缩放,当为零时,表示为一个长 度为无穷大的向量,表示方向向量,由该向量

2、的三个分量来表示, 此时需将该向量归一化使长度为匚2、方位的描述为了规定空间某刚体B的方位,另设一直角坐标系B与此刚体固 接。用坐标系B的三个单位主矢量Xb , yB .zB相对于坐标系A 的方向余弦组成的"3阶矩阵来表示刚体B相对于A的方位:5第二章机器人运动学§2.2空间描述和坐标变换一位置和姿态的描述#第二章机器人运动学§2.2空间描述和坐标变换一位置和姿态的描述% = %rllr!2r22r23cos(a x)a ?yS)S(/7, X)cos(色 x)hs (a y)s (a z)cos(o, y)cos (<3, y)cos (a z)cos (

3、a, z)#;二章机器人运动学2J空间描述和坐标变换一位置和姿态的描述73X7;二章机器人运动学2J空间描述和坐标变换一位置和姿态的描述2.坐标系在固定参考坐标系中的表示由表示方向的单位向量以及第四个位置向量来表示OXaXOyaypyOzazpz00173X#;二章机器人运动学2J空间描述和坐标变换一位置和姿态的描述73X#;二章机器人运动学2J空间描述和坐标变换一位置和姿态的描述n轴与x轴平行,o轴相对于y轴45。45&轴相对于z轴4$F坐标系位于参考坐标系3, 5, 7位置73X#第二章机器人运动学§2J空间描述和坐标变换一4i置和姿态的描述xJR± :表示坐标

4、系 主轴方向的单位矢量.aXb/Yb/Zb :相对于坐标系A的描述 将这些单位矢量组成一个3x3的矩阵,按照 饭 V DBy B B 的顺序旋转矩阵:厂斤1斤2叶3R-aXbr23巧132r33_标量r.可用每个矢量在其参考坐标系中单位方向上的投 影的分量来表示。3、旋转矩阵计算获称为旋转矩阵,上标A代表参考系,下标B代表被描述的 坐标系。0 sin。COS0R(x, 0)=RZ =重要!."坨Aio O0 0 oosinc SCOS&sin <900-sin <9cos。R(yQ =cos。 sin0 sin <9 cos<90 0#第二章机器人运动

5、学§22空间描述和坐标变换一位置和姿态的描述pl9 bp=pSaynA_Frame A and frame BB is rotated relative to frame A about Z by 0 degreesPx = P、B cos 0 一 Py/ sin 0< P、= P sin 0+ P、cos 0 >AXBBI JPgs&c9s<900111第二章机器人运动学§2.2空间描述和坐标变换一位置和姿态的描述©可用每个矢量在其参考坐标系中单位方向上的投影的分量来表示: 的各个分量可用一对单位矢量的点积来表示脓二r氏ayb吃订XbX

6、aA/X7八AX"A/A/IA7Zb%/AZ7AA7 .7 乙B厶A为了简单,上式的前置上标被省略。由两个单位矢量的点积可得到二者之间的余弦,因此可以理解为什 么旋转矩阵的各分量常被称作为方向余弦。PA>PB= | PA | | PB | cos0#第二章机器人运动学§22空间描述和坐标变换一位置和姿态的描述进一步观察,可以看出矩阵的行是单位矢量A在B中的描述.因为:R为坐标系A相对于B的描述由转置得到猟二認AyT这表明旋转矩阵的逆矩阵等于它的转置A Y Ay Af7 jA B 1B 厶 B _ 2 3第二章机器人运动学§2J空间描述和坐标变换一位置和姿态的

7、描述4. 旋转矩阵性质1)裁 矩阵有9个元素,其中只有3个是独立的。因为三个列矢量 都是单位主矢量,且两两相互垂直,所以它的9个元素满足6个约 束条件(正交条件:A xB-AxB=AyB-AyB=AzB-AZB =1 H = |°| =制=1乞/%=饬圮=仏=02):r把矢量在B中的坐标表达式变为在A中的坐标表达式的 变换矩阵:Ap斗RBp3)是正交矩阵,即有:第二章机器人运动学§22空间描述和坐标变换一坐标系的描述用:R和APborg来描述坐标系BW = R,aPborc17#第二章机器人运动学§23映射一坐标变换平移坐标系的映射设坐标系B与A具有相同的方位,但

8、是B的坐标原点与A不重合,用位置矢量“匕描述它相对于A的位置,称为B相对于 A的平移矢量。如果点P在坐标系B中的位置为尸则它相对tb19第二章机器人运动学§23映射一坐标变换于坐标系的位置矢量尸可由矢量相加得出:tb#第二章机器人运动学§ 23映射一坐标变换XA第二章机器人运动学§ 23映射一坐标变换2、旋转坐标系的映射设坐标系B和A有共同的原点但是两者的方位不同。同一点P在两个坐标系A和B中的描述“和Bp具有以下变换关 系»称为坐标系旋转方程°Ap=:RBp用旋转矩阵表示坐标系B相对 于的方位。同样,用描述坐标系 相对于B的方位。二者都是正交

9、矩 阵两者互逆。Example: Frame B is rotated relative to frame A about Z by 30 degrees Here Z is pointing out of the page.Writing the unit vectors of B in terms of A and stacking them as the columns of the rotation matrix:cos(9-sin 30_0.866-0.500o.ooo-sin&cos <90=0.5000.8660.0000 1010.0000.0001.000_0.

10、0_"-1.000"Bp 二2.0AP= RbP =1.7320.00.000The original vector P is not changed, we compute a new description relative to another frame.XA第二章机器人运动学§ 2.3映射一坐标变换关于一般坐标系的映射坐标系的原点与A的既不重合,方位也不相同。 复合变换是由坐标旋转和坐标平移共同作用的。aP=R8P+aPborg23第二章机器人运动学§ 23映射一坐标变换齐次变换复合变换式对于点 而言是非齐次的,但是可以将其表示成等 价的齐次变

11、换形式:T=ko 丫 丫其中,4x1的列向量表示三维空间的点,称为点的齐次坐标,仍 然记为人#或Bp .上式可以写成矩阵形式:A P=T p齐次变换矩阵也代表坐标平移与坐标旋转的复合,可将其分解成两 个矩阵相乘的形式:R仏3x3仏蔦R0_0101 101连续旋转平移变换连续相对转动,可把基本矩阵连乘起来,由于选转矩阵不可交换,故完成转动的次序是重要的。如果B坐标系相对于A坐标系的坐标轴转动,则对旋转矩阵左乘 相应的基本旋转矩阵,如果B坐标系相对于B坐标系的坐标轴转动, 则对旋转矩阵右乘相应的基本旋转矩阵。, 例:假设B相对A的轴依次进行了下面三个变换:1)绕x轴旋转a度;2)接着平移厶厶门;1

12、 丁 2133)最后绕y轴旋转b度s;R = Roty, b)创厶厶)Ro认x卫)Example: Frame B is rotated relative to frame A about Z by 30 degrees, translated 10 units in XA , and translated 5 unit in ya Find Ap , where Bp = 3.0 7.0 0.07 -The definition of frame B is0.8660.500-0.5000.8660.0000.00010.05.07 =0.0000.0001.0000.0o 001We us

13、e the definition of B just given a transformation:"9.098 _ aP=TbP 12.562 0.00027_ §2.4算子:平移、薮转和变换用于坐标系间点的映射的通用数学表达式被称为算子包括点的平移算 子、矢量旋转算子和平移加旋转算子。1) 平移算子(Translational operators)A translation moves a point in space a finite distarice along agive n vector directio n. Only one coordinate syst

14、em need be involved .It turns out that translating the point in space is accomplished with the same mathematics as mapping the point to a second frameThe distinction is: when a vector is moved “forward” relative to aframe, we may consider either that the vector moved forward or that the frame moved

15、backword. The mathematics involved in the two cases is identical, only our view of the situation is different.XA第二章机器人运动学_ §2.4算子:平移、璇转和变换AP产Dq纭where q is the signed magnitude of the translation along the vector direction Q .XA一 §2.4算子:平移、薮转和变换算子Dq可以被看成是一种特殊形式的齐次变换:°Dq© =o qy1弘0

16、1式中 么,么,弘是平移矢量Q的分量q = Jq; + g; + q;通过定义B相对于A的位置,(用aPborc ),我们使得这两个描述具有相同的数学表达式。现在引入了 Dq ,我们可以用它 来描述坐标系和映射。XAI第二章机器心动学2) 旋转算子(Rotational operators)Another interpretation of a rotation matrix is as a rotational operatorthat operates on a vector ap and changes that vector to a new vector,rar , by means

17、 of a rotation, R. When a rotation matrix is shown as an operator, no sub or superscripts appear, because it is not viewed as relating two frame. We may write: Ap2 = rapAgain, the mathematics is the same, only our interpretation isdifferent. How to obtain rotational matrices that are to be used asop

18、erators: The rotation matrix that rotates vectors through some rotation, R, is the same as the rotation matrix that describes a frame rotated by R relative to the refrence frame.33第二章机器人运动学第二章机器人运动学Although a rotation matrix is easily viewed as an operator, we can also define another notation for a

19、rotational operator that clearly indicates which axis is being rotated about:Rk is a rotational operator that performs a rotation about the axisdirection k by e degrees.For example:COS0sinO0sin& 0cos& 00 10 0一 §24算子:平移、璇转和变换Example: Figure shows a vector A/> . We wish to compute the

20、vector obtained by rotating this vector about Z by 30 degrees Call the newvector Ap.r2The rotation matrix that rotates vectors by 30 degrees about Z isthe same as the rotation matrix that describes a frame rotated 30degrees about Z relative to the reference frame. Thus, the correct rotational operat

21、or isCOS&-sin <90_0.866R7 (30.0)=sin <9cos <900.5000 1010.000竽二o.o 2.0 o.o1.000A马二/?z(300)绍二 1.7320.000-0.5000.8660.000一 §24算子:平移、旋转和变换3) 变换算子(Transformation operators)As with vectors and rotation matrices, a frame has anotherinterpretation as a transformation operator. In the inte

22、rpretation, only one coordinate system is involved, and so the symbol T is used without sub- or superscriptsAP1=TAPiHow to obtain homogeneous transform that are to be used as operators: The transform that rotates by R and translated by Q is the same as the transform that describes a frame rotated by

23、 R and translated by Q relative to the refrence frame.37I第二章机器心动学Example: Figure shows vector Ap . We wish to rotate it about Z by30 degrees and translate it 10 units in x and 5 units inAFind ar ,where 绍二3.0 7.0 0.0r The operator T, which performs the translation and rotation:0.866-0.5000.00010.00.5

24、000.8660.0005.00.0000.0001.0000.00001T =_3.0_ 9.098 7.01 ap2=tapx =12.5620.00.00039Summary of interpretations(1) 齐次变换阵是坐标系的描述.阿describes the frame B relative toBthe frame A, (description of a frame)(2) 齐次变换阵是变换映射.:t maps BpAp()(3) 齐次变换阵是变换算子.T operates on竽to create .From this point on, the terms fra

25、me and transform will both be used to refer to a position vector plus an orientation.> Frame is the term favored in speaking of a description,> Transform is used most frequently when function as a mapping or operator is implied.Note that transformation are generalizations of (and subsume) tran

26、slations and rotations; we will often use the term transform when speaking of a pure rotation (or translation).#第二章机器人运动学§ 24变换算法齐次变换的计算1)相乘:对于给定的坐标系A. B和C:B P=T pA p=p=T0C pRR叫+滋o 12)求逆:如果知道坐标系B相对A的描述,希望得到A相对的描述::R=;R=R仏一mm第二章机器人运动学§ 34变换算法Example: Frame B is rotated relative to frame A a

27、bout z by 30 degrees and translated four units in we have a description of :t FindThe frame defining B is:XA and three units in ya Thus,B tJ0.8660.5000.0000AB-0.5000.8660.0000Rr l-X"10.5000.8660.0000 0 0 10.866-0.5000.00000CHARTER 2: Spatial descHptjQn§ 27变换方程transform equation:U 丫Brj-iFig

28、ure indicates a situation in which a frame D can be expressed as products of transformations in two different ways:We can set these two descriptions of 留 equal to construct aTransform equations can be used to solve for transforms in the case of n unknown transforms and n transform equationsCHAPTER 2

29、: Spatial description§ 2.7变换方程JConsider 守常=in the case that all transtorms are known except Here, we have one transform equation and one unknown transform, hence, we easily find its solution:B U jn 1 U1注意:在所有的途中,我们都采用了坐标系的图形表示法,即用一 个坐标系的原点指向另一个坐标系的原点的箭头来表示。将箭头串联起 来,通过简单的变换方程就可得到混合坐标系。箭头的方向指明了坐标

30、 系定义的方式。如果有一个箭头的方向与串联的方向相反,就先求出它 的逆。CHAPTER 2: Sgtfadescrip 0胡§ 2变换方程Example:假定已知操作臂末端执行器的坐标系餌,它是相对于操作臂 基座的坐标系B定义的,又已知工作台相对于减作臂基座的空间位 置fr,并且已知工作台上螺栓的坐标系相对于工作台坐标系的位置IT 计算螺栓相对于操作手的位姿:TJTnp _Brp Snpj nJG1 = T 丄S1 G147CHAPTER 2: Spatial description§28姿态的其它描述方法Problem:能否用少于九个数字来表示一个姿态?A result

31、from linear algebra (known as Cayley's formula): for any proper orthonormal matrix R, there exists a skew-symmetric matrix (S=-ST) S such that:,R =(h-S)J(厶+ S)a skew-symmetric matrix of dimension 3 is specified by threeparameters (Sx9Sy,Sz) as: 0SzS,0_sSy*S龙0任何3X3的旋转矩阵都可用三个参量确定.显然,旋转矩阵的九个分量线性相关。

32、实际上,对于一个旋转矩阵R 很容易写出六个线性无关的分量。假定R为三列:/ / /R(XYZ)These three vectors are the unit axes of some frame writtern in terms of the refrence frame. Each is a unit vector, and all three must be mutually perpe ndicular, so we see that there are six con strains on the nine parameters:/ / /X =1 , Y =1 , Z =1/Xx

33、y = o , xz = o , y-z = o是否能找到一种姿态表示法,用三个参量就能简便进行表达?Whereas translations along three mutually perpendicular axes are quite easy to visualize, rotations seem less intuitive. Unfortunately people have a hard time describing and specifying orientation in three- dime nsional space. One difficulty is that

34、 rotati ons dorft gen erallycommute That is:A pB jd , B nA qBKCKgL CKBKExample:考虑两个轴旋转,一个绕Z转30度,另一个绕X轴转30度。0.866-0.5000.000-_ 1.0000.0000.000 _/?z(30.0) =0.5000.8660.000 Rx (30.0)=0.0000.866-0.5000.0000.0001.0000.0000.5000.8660.87-0.430.25 _0.87-0.50o.oo-/?z(30.0)/?y(30.0) =0.500.75-0.43主 Rx (30.0)/

35、?z(30.0) =0.430.75-0.50.000.500.870.250.430.8749CHAPTER 2: Spatial description§2.8姿态的其它描述方法(1) 绕z轴旋转90度;(2) 再平移4, -3, 7;(3) 然后绕y轴转90度。Example: S)连在坐标系B上的点只(7,3,2)丁(1) 绕z轴旋转90度:心(90.0)(2) 然后绕y轴转90度;心(90.0)最后再平移4, -3, 7。Tra/?5(4,-3,7)CHAPTER 2: Spatial description§2.8姿态的其它描述方法CHAPTER 2: Spat

36、ial description§2.8姿态的其它描述方法第一次变换总第二次变换后第二次变换后第三次变换后CHAPTER 2: Spatial description§2.8姿态的其它描述方法1) X-Y-Z 固定角坐标系(fixed angles) 下面介绍描述坐标系B姿态的另一种方法:Start with the frame coincident with a known refrence frame A. Rotate B first about xA by an angle / , then about ya by an angle p , and, finally,

37、 about z4 by an angle a 每个旋转都是绕着固定参考坐标系A的轴。我们规定这种姿态的表示法 为X-Y-Z固定角坐标系。“固定” 一词是指旋转是在固定(即不运动的)参考 坐标系中确定的。有时把它们定义为回转角、俯仰角和偏转角。町以直接推导等价旋转矩阵,-sa0_ C/30100 _ca00100cySY01700cp0s?cy因为所有的旋转都是绕着参考坐标系各轴的,ca;Rxyz(*0O)= soc0caspcy + sasysaspcy -easy epeycaspcy - sacy saspsy + cacy cpsywhere ca is shorthand for c

38、os a, sa for sin a .最重要的是搞清楚上式中的旋转顺序.Equation above is correct only for rotations performed in the order: about xAby an angle/ , then about y by an angle0 , and, finally, aboutzby an angles 常常使人感兴趣的是逆屎问题,即从一个旋转矩阵等价推出XYZ固定角 坐标系。逆解取决于求解一组超越方程;如果方程相当于一个已知的旋转矩 阵,那么就有九个方程和三个未知量。在这九个方程中有六个方程是相关的。In summar

39、y:B = A tan 2(-$, J斤+ Qi) a - A tan 2(r2l lc/3, q/c/3) / = A tan 2(r2 /c/3. rlcp)cac/3caspcy-sacycaspcy sasy九人2巾一sacpsas/Ssy + cacysaspcy-easyr2r22r23c/3syc(icyr3r3>2$3Although a second solution exists, by using the positive square root in the formula for 0 , we always compute the single solution

40、 for which -90° <p<90° This is usually a good practiceIf p = ±90°, the solution degenerates .In those cases, one possible convention is to choose a = o.(3 = 90°a = 0y = Atan2(斤 2,巧2)p = -90°a = 0/ = -Atan 2(斤 2,金)55CHAPTER 2: Spatial description§2.8姿态的其它描述方法2

41、) Z-Y-X 欧拉角(Euler angles)坐标系B的另一种表示法如下:Start with the frame coincident with a known refrence frame A. Rotate B first about zB by an angle a , then about yb by an angle p , and, finally, about xR by an angle / In this representation, each rotation is performed about an axis of the moving system B rat

42、her than one of the fixed refrence A. Such sets of three rotations are called Euler angles Note that each rotations takes place about an axis whose location depends upon the preceding rotations.CHAPTER 2: Spatial description§2.8姿态的其它描述方法We can write:ca-sao-'C/30s/3100BRZ'Y'X' -

43、Rz(Q)Ry(0)Rx (/)=saca00100cy-sy001S00cP0sycycac/3 caspcy 一 sacy caspcy + sasy= sacp saspsy + cacy saspcy 一 easy-spcpsyepey注意这个结果与以相反顺序绕固定轴旋转三次得到的结果完全相同!总之, 这是一个不太直观的结果:三次绕固定轴旋转的最终姿态和以相反顺序三次 绕运动坐标轴旋转的最终姿态相同。因为等价,所以无需通过旋转矩阵的反复计算去求ZYX的欧拉角。.3) Z-Y-Z Euler anglesDescribing the orientation of a frame B as

44、 follow:Extracting:Start with the frame coincident with a known refrence frame A. Rotate B first about zb by an angle a , then about yb by an anglep , and, finally, about /by an angle / cacp caspcy 一 sacy caspcy + sasy斤 i rn GB Z'Y'Z' (“' 0' 7)=sac/3 sassy + cacy saspcy - easy=r2

45、 Tl 23-spcpsyepey$1厂32330 = A tan 2( J席 + 总,金) a = A tan 2(r23 / $0, ri3 / s/3)/ = A tan 2(勺 / s/3,勺 / s/3)0 = 180°a = 0y = Atan 2(斤 2,G)4)其它角坐标系的表示法In the preceding subsections we have seen three conventions for specifying orientation: X-Y-Z fixed angles, Z-Y-X Euler angles, and Z-Y-Z Euler an

46、gles每个 表示法均需要按一定顺序进行三次绕主轴的旋转。这些表示法是24种表示法中 的典型方法,且都被称作角坐标系表示法。其中,12种为固定角坐标系法,另 12种为欧拉角坐标系法。注意到由于二者之间的对偶性,对于绕主轴连续旋转 的旋转矩阵实际上只有12种唯一的参数表示方法。感兴趣的同学可以参考本书附录B59CHAPTER 2:dtescr祖伽§2.8姿态的其它描述方法5)等效轴角坐标系表示法With the notation Rx (30) we give the description of an orientation by giving an axis, X, and an

47、angle 30 degrees This is an example of an equivalent angleaxis representation. If the axis is a general direction (rather than one of the unit directions) any orientation may be obtained through proper axis and angle selection.Describing the orientation of a frame B as follow:Start with the frame co

48、incident with a known refrence frame A. Then Rotate B first about the vector " by an angle & according to the right-hand rule.Vector is called the equivalent axis of a finite rotation.61CHAPTER 2: Spatial description§2.8姿态的其它描述方法A general orientation of B relative to A may be written a

49、sor .The specification of the vector Ak requires only two parameters, because its length is always taken to be one The angle specifies a third parameter.The equivalent rotation matrix is:kkvO + cO kkyO - k.sO kky3 + ksO_rn ri2JbRk =kxkvvO + k7sOkxk.vO + cOkvk7v0 一 ksOxjy <xr22223kk7v0 一 ksO kkyO + ksO k_ky0 + cO儿 yy c人c 乙_G1丫32r33_where v0 = -cos0 , and AK = kx,ky,kzY . The sign of 0 is determined by the righthand rule, with the thumb pointing along the positive sense of 人斤

温馨提示

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

最新文档

评论

0/150

提交评论