第2章 间描述与坐标变换
2020-03-01 234浏览
- 1.第2章 空间描述与坐标变换 机器人学简明教程 第2章 间描述与坐标变换 2.1 位置姿态表示与坐标系描述 2.2 坐标变换 2.3 齐次坐标变换 2.4 齐次变换算子 2.5 复合变换 2.6 齐次变换的逆变换 2.7 变换方程 2.8 姿态的欧拉角表示
- 2.第2章 空间描述与坐标变换 2.1 位置姿态表示与坐标系描述 1.位置描述 假设已经建立了坐标系,我们可以用一个3×1的位置矢 量对世界坐标系中的任何点进行定位。因为经常需要定义多 个坐标系来描述机器人的几何关系和运动,在描述一个位置 矢量的时候需要指明是用哪一个坐标系描述的。如图2-1表 示的一个坐标系和位置矢量,用三个单位正交基矢量表示坐 标系{A},坐标原点和沿坐标轴的单位矢量均用下标“A”表 示它们属于{A}坐标系。矢量Ap表示箭头指向点的位置矢量, 其中右上角标“A”表示该点是用{A}坐标系描述的。位置矢 量Ap可以用分量表示为 px A p p y p z (2-1)
- 3.第2章 空间描述与坐标变换 图2-1 坐标系和位置矢量
- 4.第2章 空间描述与坐标变换 2.姿态描述 一个刚体除了需要描述它的位置外,还需要描述它的方 位(姿态)。任意平面刚体都可以用三个参数(x,y,θ)唯一 描述其姿态。例如图2-2所示的机器人,为了完整描述地面 上的机器人,除了机器人的位置(质心OB坐标x,y)以外, 还需要知道机器人的方位(头的方向θ)。平面机器人位置 一般用两个坐标系来描述,一个是固定的场地坐标系{A}, 另一个是与机器人固连在一起的机器人(运动)坐标系{B}。 机器人的位姿可以用机器人坐标系{B}的原点和坐标轴在固 定坐标系{A}中的方向来描述。
- 5.第2章 空间描述与坐标变换 图2-2 平面机器人位姿表示
- 6.第2章 空间描述与坐标变换 三维刚体的描述比较复杂,如图2-3所示的机械手末端 工具,需要描述工具的空间位置和姿态(方位),三维姿态 的描述一般通过固定在物体上的坐标系来实现。 图2-3 机械手末端工具及坐标系
- 7.第2章 空间描述与坐标变换 图2-3中坐标系{B}与机械手末端工具固连,工具的位 置可以用固连坐标系{B}的原点描述、工具的姿态可以由坐 标系{B}的方向来描述。而坐标系{B}的方向可以用沿三个 坐标轴的单位矢量来表示: A B R A XB A YB A ZB r11 r21 r31 r12 r22 r32 r13 r23 r33 (2-2)
- 8.第2章 A B 空间描述与坐标变换 R 称为旋转矩阵,即坐标系可以用旋转矩阵来描述。根据坐 标矢量的正交性和单位长度条件,可以得到 6 个约束方程,因 此旋转矩阵只有 3 个独立变量,后面将介绍采用 3 个独立变量 描述刚体姿态的方法。式(2-2)中旋转矩阵的元素可以用坐标 系{B}的单位矢量在坐标系{A}单位矢量上的投影来表示 A B R A XB A YB A ZB X TA X B Y AT X B Z TA X B X TA YB Y AT YB Z TA YB X TA Z B B X TA Y AT Z B BY AT Z TA Z B B Z TA (2-3)
- 9.第2章 空间描述与坐标变换 式(2-3)中内积运算的矢量都是在坐标系{A}下表示 的,因此,为了简单省略了矢量的上标。事实上,矢量的内 积与所选择的坐标系无关,由矢量内积的定义得 r11 X B X A X BT X A X B X A cos cos (2-4) 其中 表示矢量 XB 和 XA 的夹角, X B 表示矢量的长度。因为 XB 是单位矢量,所以 X B =1。式(2-4)表明,r11 是两个坐标系 X 轴夹角的余弦,旋转矩阵的其余元素的表示与(2-4)类似,因 此,旋转矩阵的元素也称为方向余弦。
- 10.第2章 空间描述与坐标变换 A 旋转矩阵 B R 是用坐标系{A}来表示坐标系{B}沿坐标轴方向单位 矢量组成的矩阵,同样我们也可以用坐标系{B}来表示坐标系{A} B 的单位矢量得到旋转矩阵 A R B A R B XA B YA B ZA X BT X A T YB X A Z BT X A X BT Y A YBT Y A Z BT Y A X BT Z A A X BT A T T YB Z A YB (2-5) Z BT Z A A Z BT 对比式(2-3)和式(2-5)可知两个旋转矩阵互为转置,再 根据正交矩阵的性质可得以下关系: B A A B T A B R R R 1
- 11.第2章 空间描述与坐标变换 根据坐标系单位矢量的正交关系可以验证式(2-6)成立。 A X BT A T A T A R R B B YB A Z BT A XB A YB A ZB 1 0 0 0 1 0 0 0 1 (2-7)
- 12.第2章 空间描述与坐标变换 3.坐标系描述 从前面介绍的位置和姿态描述可知,刚体的位姿可以用 固连在刚体上的坐标系来描述,坐标原点表示刚体的位置, 坐标轴的方向表示刚体的姿态。因此,固连坐标系把刚体位 姿描述问题转化为坐标系的描述问题。图2-3中坐标系{B} 可以在固定坐标系{A}中描述为 { B} { BA R, A PBo } A (2-8) A 旋转矩阵 B R 描述坐标系{B}的姿态,矢量 PBo 描述坐标系{B}的原点位置。
- 13.第2章 空间描述与坐标变换 2.2 坐标变换 1.平移坐标变换 在图2-4中,BP为坐标系{B}描述的某一空间位置,同 样,我们也可以用AP(坐标系{A})描述同一空间位置。假 设坐标系{A}和坐标系{B}姿态相同,则坐标系{B}可以理解 为坐标系{A}的平移。APBO称为坐标系{B}相对坐标系{A}的 平移矢量,也可以理解为坐标系{B}原点在坐标系{A}描述 下的位置矢量。因为两个坐标系具有相同的姿态,同一个点 在不同坐标系下的描述满足以下关系 A B A P P PBo (2-9)
- 14.第2章 空间描述与坐标变换 式(2-9)表明了不同坐标系描述同一个点位置矢量之间的变 A 换关系,变换关系由平移矢量 PBo 唯一确定。可以从另外一个角 度理解式(2-9)表示的变换关系,假设开始坐标系{B}与坐标系{A} 重合,矢量 BP 与坐标系{B}固定,将坐标系{B}连同矢量 BP 一起平 A 移 PBo 。这样理解式(2-9)表示的是同一坐标系描述的位置矢量 之间的平移关系。
- 15.第2章 空间描述与坐标变换 图2-4 平移坐标变换
- 16.第2章 空间描述与坐标变换 2.旋转坐标变换 A px B X TA B P A B T B p YA P y A B T B pz Z A P (2-10)
- 17.第2章 空间描述与坐标变换 图2-5 旋转坐标变换
- 18.第2章 空间描述与坐标变换 将(2-9)式写成矩阵形式得(参见(2-3)式) B X TA B T B A B A P YA P B R P B Z TA (2-11) 式(2-11)即为我们要求的旋转变换关系,该变换是 通过两个坐标系之间的旋转变换实现的。式(2-11)实现 了空间点在不同坐标系下描述的转换,下面用平面旋转坐 标变换的例子说明上述算法。
- 19.第2章 空间描述与坐标变换 例2-1 图2-6给出了两个平面坐标系的位置关系,计 算旋转变换矩阵BAR和同一矢量P在两个坐标系下表示之间 的关系,假设矢量长度为r。 解: 因为坐标轴为单位矢量,根据几何关系得 A X B cos X A sin YA A YB sin X A cos YA 所以,根据式(2-3)可知旋转变换矩阵为 A B cos R sin sin cos
- 20.第2章 空间描述与坐标变换 再根据式(2-11)可得矢量间的变换关系 A cos sin r cos P R P r sin sin cos cos cos sin sin r cos sin sin cos cos( ) r sin( ) A B B 观察图2-6,根据几何关系直接计算P在{A}下的表示显然 与上式相同,印证了坐标变换方法的正确性。
- 21.第2章 空间描述与坐标变换 图2-6 平面旋转变换
- 22.第2章 空间描述与坐标变换 也可以从另一个角度获得矢量P在{A}下的表示,首先 将矢量在{B}下表示 B P r cos X B r sin YB 再根据前面的结果,将坐标系{B}的基矢量用坐标系{A}的 基矢量表示,得 A P r cos A XB r sin AYB r(cos cos sin sin ) X A r(cos sin sin cos )YA r cos( ) X A r sin( )YA 结果与前面计算的相同。
- 23.第2章 空间描述与坐标变换 图2-7给出了两个坐标系关系的示意图,为了得到位置 矢量BP和AP之间的变换关系,我们建立一个中间坐标系{C}。 坐标系{C}与坐标系{B}原点重合,且与坐标系{A}的姿态相 同。通过引入坐标系{C},可以采用前面介绍的平移与旋转 变换得到一般情况下的变换关系: C A C (2-12) P BC RBP BARBP A A B B A P P PCo R P PBo (2-13)
- 24.第2章 空间描述与坐标变换 图2-7 复合变换
- 25.第2章 空间描述与坐标变换 2.3 齐次坐标变换 式(2-13)表示了一般情况下的变换关系,在机器 人学中经常需要计算多个坐标系之间的坐标变换,采用上述 表达不够简明和清楚。因此,常用所谓的“齐次坐标变换” 来描述坐标系之间的变换关系。坐标变换式(2-13)可以 写成以下形式 A P BA R 1 0 A PBo B P 1 1 (2-14)
- 26.第2章 空间描述与坐标变换 将位置矢量用4×1矢量表示,增加1维的数值恒为1,我们仍 然用原来的符号表示4维位置矢量并采用以下符号表示坐标 变换矩阵 A A BR BT 0 A PBo 1 (2-15) 可以得到齐次坐标变换关系 A P AB T BP (2-16) A B T 是 44 矩阵,称为齐次坐标变换矩阵。ABT 可以理解为坐 标系{B}在固定坐标系{A}中的描述。齐次坐标变换的主要作 用是表达简洁,同时在表示多个坐标变换的时候比较方便。
- 27.第2章 空间描述与坐标变换 2.4 齐次变换算子 1.平移算子 上面介绍了同一个点在不同坐标系下描述的变换关系(2-15) 。 在机器人学中还经常用到下面的变换,如图 2-8,矢量 AP1 沿矢量 A Q 平移至的 AQ 终点,得一矢量 AP2。已知 AP1 和 AQ 求 AP2 的过程 称之为平移变换,与前面不同,这里只涉及单一坐标系。 A A A P2 P1 Q (2-17)
- 28.第2章 空间描述与坐标变换 图2-8 平移算子
- 29.第2章 空间描述与坐标变换 可以采用齐次变换矩阵表示平移变换 A A A P2 Trans ( Q ) P1 (2-18) Trans(AQ)称为平移算子,其表达式为 I A Trans( Q ) 0 Q 1 A (2-19) 其中I是3×3单位矩阵。例如若AQ=ai+bj+ck,其中i、j和k分 别表示坐标系{A}三个坐标轴的单位矢量,则平移算子表示 为 1 0 Trans( a, b, c) 0 0 0 1 0 0 0 0 1 0 a b c 1 (2-20)
- 30.第2章 空间描述与坐标变换 2.旋转算子 同样,我们可以研究矢量在同一坐标系下的旋转变换, 如图2-9所示,AP1绕Z轴转θ角得到AP2。则 A P2 Rot ( z , ) A P1 (2-21) Rot(z,θ)称为旋转算子,其表达式为 c s Rot( z, ) 0 0 s c 0 0 0 0 0 0 1 0 0 1 (2-22)
- 31.第2章 空间描述与坐标变换 图2-9 旋转算子
- 32.第2章 空间描述与坐标变换 同理,可以得到绕X轴和Y轴的旋转算子 1 0 0 c Rot( x, ) 0 s 0 0 c 0 Rot( y, ) s 0 0 s c 0 0 0 0 1 0 s 0 1 0 0 0 c 0 0 0 1 式中“c”,“s”分别代表“cos”和“sin”。 (2-23)
- 33.第2章 空间描述与坐标变换 定义了平移算子和旋转算子以后,可以将它们复合实现 复杂的映射关系。变换算子与前面介绍的坐标变换矩阵形式 完全相同,因为所有描述均在同一坐标系下,所以不需上下 标描述(坐标系)。 A P2 T A P1 (2-24)
- 34.第2章 空间描述与坐标变换 例2-2 已知矢量AP1=[370]T,先将其绕ZA旋转30°,再 沿XA轴平移10个单位、沿YA轴平移5个单位,计算变换后得 到的矢量AP2。 解: 根据式(2-15)得变换算子: cos 30o o sin 30 T 0 0 A sin 30o cos 30o 0 0 0 10 0.866 0.5 0 10 0 5 0.5 0.866 0 5 0 1 0 1 0 0 0 0 1 0 1 0 P2 T A P1 [9.098 12.562 0]T
- 35.第2章 空间描述与坐标变换 3.齐次坐标变换总结 A B (1)坐标系的描述。 T 表示坐标系{B}在坐标系{A}下的 描述,BA R 的各列是坐标系{B}三个坐标轴方向的单位矢量, 而APBO表示坐标系{B}原点位置。 (2)不同坐标系间的坐标变换。如 A P ABT B P。 (3)同一坐标系内的变换算子。如 A P2 T A P 1 。 齐次坐标变换是复杂空间变换的基础,必须认真理解和 掌握。具体应用的关键是理解它代表的是上面三种含义的哪 一种,而不是简单的套用公式。
- 36.第2章 空间描述与坐标变换 2.5 复合变换 复合变换主要有两种应用形式,一种是建立了多个坐标 系描述机器人的位姿,任务是确定不同坐标系下对同一个量 描述之间的关系;另一种是一个空间点在同一个坐标系内顺 序经过多次平移或旋转变换,任务是确定多次变换后点的位 置。 如图2-10表示的三个坐标系,已知坐标系{A}、{B}和 {C}之间的变换矩阵 A B T, B C T 和位置矢量CP,求在坐标系{A} 下表示同一个点的位置矢量AP。先计算在坐标系{B}下表示 同一个点的位置矢量BP,然后计算在坐标系{A}下表示同一 个点的位置矢量AP。
- 37.第2章 空间描述与坐标变换 P CB T CP (2-25) P ABT BP ABT CBT CP (2-26) B A 根据坐标变换的定义得 A C T ABT CBT (2-27)
- 38.第2章 空间描述与坐标变换 图2-10 复合坐标变换
- 39.第2章 空间描述与坐标变换 例2-3 已知点u=7i+3j+2k,先对它进行绕Z轴旋转90° 的变换得点v,再对点v进行绕Y轴旋转90°的变换得点 w,求v和w。 解:由旋转变换的公式得 0 1 1 0 v Rot( z ,90o )u 0 0 0 0 0 0 1 0 0 7 3 0 3 7 0 2 2 1 1 1 0 0 w Rot( y,90o )v 1 0 1 0 0 0 0 3 2 0 7 7 0 2 3 1 1 1 0 1 0 0
- 40.第2章 空间描述与坐标变换 如果只关心最后的变换结果,可以按下式计算 w Rot ( y,90o )v Rot ( y,90o ) Rot ( z,90o ) u 0 1 0 0 0 0 1 0 1 0 0 0 0 7 2 0 3 7 0 2 3 1 1 1 计算结果与前面的相同,R=Rot(y,90°)Rot(z,90°)称为复合 旋转算子。图2-11(a)给出了变换前后点的位置。如果改 变旋转顺序,先对它进行绕Y轴旋转90°,再绕Z轴旋转90°, 结果如图2-11(b)所示。比较图2-11(a)和图2-11(b) 可以发现最后的结果并不相同,即旋转顺序影响变换结果, 从数学角度解释就是矩阵乘法不满足交换率,Rot (y,90°) Rot(z,90°)≠Rot(z,90°)Rot(y,90°)。
- 41.第2章 空间描述与坐标变换 图2-11 旋转顺序对变换结果的影响
- 42.第2章 空间描述与坐标变换 2.6 齐次变换的逆变换 A 已知坐标系{B}相对坐标系{A}的描述 BT ,求坐标系{A}相对 B 坐标系{B}的描述 AT ,即为齐次变换的求逆问题。一种直接的方 法是采用线性代数中的矩阵求逆,另一种方法是根据变换矩阵的 特点直接得出逆变换。后一种方法使用起来更加简单方便。 A A B B 给定 ABT 计算 BAT 等价为:已知 B R 和 PBo ,求 A R 和 PAo 。根据 前面的讨论,旋转矩阵关系为 B A R BAR 1 BART (2-28)
- 43.第2章 空间描述与坐标变换 将坐标变换用于坐标系{B}的原点得 B BP PBo AB R APBo BPAo (2-29) BO是坐标系{B}的原点在坐标系{B}中的描述,显然为零矢 量。由式(2-29)得 B PAo AB R A PBo BA R T A PBo (2-30) 因此,逆变换可以直接用正变换的旋转矩阵和平移矩阵表示 A T B BR AT 0 逆变换矩阵推导的另一种方法 BART A PBo 1 (2-31)
- 44.第2章 空间描述与坐标变换 根据坐标变换式(2-13)AP BAR B P APBo 可得: B P BAR1( AP APBo ) BART ( AP APBo ) BART AP BART APBo (2-32) 将坐标系{A}到坐标系{B}的变换: B P ABR AP B PAo 比较式(2-32)和式(2-33)得 B A R BART , B PAo BART APBo 结果与前面推导的式(2-31)完全相同。 (2-33)
- 45.第2章 空间描述与坐标变换 例2-4 如图2-12给出的楔形块角点坐标系,求齐次 A B A T , T , 坐标变换 B C CT 图2-12 楔形块角点坐标系
- 46.第2章 空间描述与坐标变换 解:为了简化公式表示,用“c”和“s”分别代表“cos”和 “sin”。 (1){A}沿xA平移3个单位,再绕新的zA轴转180°得{B}。 c180 s180 0 1 0 0 s180 c180 0 0 1 0 A R B 0 0 1 0 0 1 因此 1 0 0 1 A BT 0 0 0 0 0 0 1 0 3 0 0 1
- 47.第2章 空间描述与坐标变换 (2){B}沿zB平移2个单位,然后绕yB轴转90o再绕新xB 轴转150°得{C}。 c90 0 B R C s90 0 0 0 1 1 0 0 s90 1 0 0 1 0 0 c150 s150 0 c90 0 s150 c150 1 1 0 0 0 0 3 2 1 2 0 0 1 2 3 2 3 1 0 2 2 3 1 0 2 2 1 0 0
- 48.第2章 空间描述与坐标变换 因此 1 0 0 1 A A B T C BT CT 0 0 0 0 0 12 3 0 2 1 0 0 0 也可以按以下方法计算: 3 1 2 2 0 0 0 3 0 0 0 0 1 0 1 0 1 0 3 0 2 1 1 3 2 3 2 1 2 2 0 0 0 0 0 0 2 1
- 49.第2章 空间描述与坐标变换 ③{A}沿xA和zA平移3个和2个单位,然后绕yA轴转90°, 再绕新xA轴转-30°得{C}。 0 0 c90 0 s90 1 0 0 c 30 s 30 A R 1 0 C s90 0 c90 0 s 30 c 30 0 0 1 1 0 1 0 0 1 0 0 0 0 3 1 2 2 0 0 1 2 0 3 1 2 1 3 2 2 0 1 2 0 3 2
- 50.第2章 空间描述与坐标变换 因此可以得到相同的结果, 0 12 3 0 2 A T C 1 0 0 0 3 1 2 2 0 0 3 0 2 1 事实上,对于像本例题这种简单的情况,可以直接利用齐次 坐标变换的定义得到变换矩阵。即直接写出坐标系{C}坐标 轴矢量在坐标系{A}下表示的旋转矩阵,平移矢量为坐标系 {C}的原点在坐标系{A}下的矢量表示。
- 51.第2章 空间描述与坐标变换 2.7 变换方程 图2-13表示了多个坐标系的关系图,可以用两种不同的 方式得到世界坐标系{U}下坐标系{D}的描述。 U D T UAT DAT (2-34) T UBT CBT CDT (2-35) U D 可以利用变换方程(2-36)求解其中任意一个未知变换。例 如,假设除UBT以外其余变换均为已知,则该未知变换可以用 下式计算 T UAT DAT CDT 1 CBT 1 U B (2-37)
- 52.第2章 空间描述与坐标变换 图2-13 坐标变换序列
- 53.第2章 空间描述与坐标变换 我们在坐标系的图形表示方法中,采用从一个坐标系的 原点指向另一个坐标系原点的箭头表示坐标系的描述关系。 例如在图2-14中,相对{D}定义坐标系{A}。在图中将箭头 串联起来,通过简单的变换矩阵相乘即可得到起点到终点的 坐标系描述。如果一个箭头的方向与串联的方向相反,只需 先求出该变换的逆再相乘即可。例如在图2-14中坐标系{C} 的两种描述为 U C U B B C T T T (2-38) T UAT DAT 1 DCT (2-39) U C
- 54.第2章 空间描述与坐标变换 图2-14 坐标变换序列
- 55.第2章 空间描述与坐标变换 例2-5 假设已知图2-15中机械臂末端工具坐标系{T} 相对基座坐标系{B}的描述,还已知工作台坐标系{S}相对 基座坐标系{B}的描述,并且已知螺栓坐标系{G}相对工作 台坐标系{S}的描述。计算螺栓相对机械臂工具坐标系的位 姿。 解:添加从工具坐标系{T}原点到螺栓坐标系{G}原点的 箭头,可以得到如下变换方程 B S T GST BTT GTT (2-40) 螺栓相对机械臂工具坐标系的位姿描述为 T BT T 1 BST GST T G (2-41)
- 56.第2章 空间描述与坐标变换 图2-15 机械臂对螺栓操作
- 57.第2章 空间描述与坐标变换 2.8 姿态的欧拉角表示 2.1节采用3×3的旋转矩阵描述了三维刚体的姿态,但9 个分量中只有3个独立的分量。能否使用3个独立的分量描述 三维刚体的姿态呢?答案是肯定的,比较常用的是下面的Z YZ欧拉角描述方法。欧拉角用一个绕Z轴旋转角,再 绕新的Y轴旋转θ角,最后绕新的Z轴旋转ψ角来描述任何可 能的姿态,见图2-16。图中虚线表示旋转形成的新坐标轴。 根据旋转关系可以得到变换矩阵 Rzyz Rot z, Rot y, Rot z, (2-42)
- 58.第2章 空间描述与坐标变换 图2-16 Z-Y-Z欧拉角
- 59.第2章 空间描述与坐标变换 具体计算结果计算如下: Ryz Rot y, Rot z, c 0 s 0 s c 1 0 s 0 c 0 s c 0 0 c c 0 s 1 s c c s c s s s 0 c c s 0 c c c s s Rzyz Rot z, Ryz s c 0 s c 0 0 0 1 s c s s c cc c s s cc s sc c s sc c c s sc s cc s s s c s s c
- 60.第2章 空间描述与坐标变换 另一种常用的旋转组合是横滚(roll)、俯仰(pitch) 和偏转(yaw)。图2-17给出了变换的示意图,这三个角 度表示了船航行的三个方位描述。需要注意的是,横滚、俯 仰和偏转表示都是相对固定坐标系表述的,而前面介绍的Z -Y-Z欧拉角描述是相对动坐标系描述的。规定变换顺序 为偏转ψ角、俯仰θ角和横滚¢角。根据旋转关系可以得到 变换矩阵 Rxyz Rot z , Rot y , Rot x , c s 0 c 0 Rxyz s c 0 0 1 0 0 1 s 0 cc cs s sc sc ss s cc s c s s 1 0 0 0 0 c s c 0 s c csc ss (2-43) ssc cs cc
- 61.第2章 空间描述与坐标变换 图2-17 横滚、仰俯和偏转表示姿态
- 62.第2章 空间描述与坐标变换 1.通用旋转算子 我们已经研究了绕坐标轴的旋转变换,下面研究绕任意 轴(用单位矢量f表示)旋转θ角的旋转矩阵。如图2-18所 示,假设矢量f在固定坐标系{A}下表示,另外,我们通过矢 量Ap绕任意轴f旋转θ角得到旋转矩阵。以f为Z轴建立与{A} 固连的坐标系{C},其原点与{A}的原点重合,因此可以用 旋转矩阵描述坐标系{C}。用n、o和f表示坐标系{C}三个坐 标轴的单位矢量,在坐标系{A}下表示为 n nx i n y j nz k o o x i o y j oz k f f i f j f k x y z (2-46)
- 63.第2章 空间描述与坐标变换 则旋转矩阵表示为 nx A C R ny nz ox oy oz fx fy fz (2-47) 因为固连的坐标系{C}与{A}固连,所以绕 f 旋转等价于绕 ZC 旋转。为此我们先将 Ap 在坐标系{C}下表示,再绕 ZC 旋转 角,最后再把旋转得到的矢量用坐标系{A}表示。 Ap 1 C A = Rot(f,) Ap A C p R p R C A T A (2-48) p p1 Rot ( z , ) Cp Rot ( z , ) CA RT A p C (2-49) (2-50)
- 64.第2章 空间描述与坐标变换 图2-18 绕任意轴旋转变换
- 65.第2章 空间描述与坐标变换 再将Cp1在坐标系{A}下表示 A p1 CA R C p1 CA R Rot ( z , ) CA R T A p (2-51) 比较式(2-48)和式(2-51)可得 Rot ( f , ) CA R Rot ( z , ) CA RT nx ny nz ox oy oz f x c f y s fz 0 nx ny nz n1 n2 n 3 ox oy oz f x nx c ox s f y nx s ox c f z fx o1 o2 o3 a1 a2 a3 s c 0 0 nx 0 ox 1 f x ny oy fy nz oz f z n y c o y s n y s o y c fy nz c oz s nz s oz c fz (2-52)
- 66.第2章 空间描述与坐标变换 式中,旋转矩阵的各表达式如下 n1 nx nx c nx ox s nx ox s ox ox c f x f x n n n c n o s n o s o o c f f x y y x x y x y x y 2 n3 nx nz c nz ox s nx oz s ox oz c f x f z o n n c n o s n o s o o c f f x y x y y x x y x y 1 o2 ny ny c ny oy s ny oy s oy oy c f y f y o n n c n o s n o s o o c f f y z z y y z y z y z 3 a1 nx nz c nx oz s nz ox s ox oz c f x f z a2 ny nz c ny oz s nz oy s oy oz c f y f z a3 nz nz c nz oz s nz oz s oz oz c f z f z (2-53)
- 67.第2章 空间描述与坐标变换 上式中的n和o各分量是未知的,需要用f的各分量表示, 根据坐标系的右手规则知n×o=f,叉积可以按下式计算 i n o nx ox j ny oy k nz ( n y oz nz o y ) i ( nz ox nx oz ) j ( nx o y n y ox ) k oz (2-54) 因此 ( n y oz nz o y ) f x , ( nz ox nx oz ) f y , ( n o n o ) f y x z x y (2-55)
- 68.第2章 空间描述与坐标变换 再根据旋转矩阵的正交性可以得到与下式类似的一系列等式 nx o y ox ox f x f x 1, nx o y ox o y f x f y 0 (2-56) 最后可以得到绕f旋转θ角的旋转矩阵 f x f x v c Rot ( f , ) f x f yv f z s f x f z v f y s f x f y v f z s f y f yv c f y f z v f x s f x f z v f y s f y f zv f x s , v 1 c f z f z v c (2-57)
- 69.第2章 空间描述与坐标变换 2.等效转轴与转角 前面讨论了给定转轴和转角可以得到旋转矩阵,那么是 否任意给定的旋转矩阵都可以确定等效的转轴f和转角θ呢? 也就是两个坐标原点重合的坐标系可以通过绕固定轴转一定 的角度来实现从一个坐标系转换到另一个坐标系。实际上是 可以的,假设给定旋转矩阵,令其与式(2-57)相等 r11 A C R r21 r 31 r12 r22 r32 r13 f x f x v c r23 f x f y v f z s r33 f x f z v f y s 将上式对角线相加得 f x f y v f z s f y f y v c f y f z v f x s f x f z v f y s f y f z v f x s f z f z v c (2-58) r11+ r22+ r33=1+2cθ cθ=( r11+ r22+ r33 -1)/2 (2-59)
- 70.第2章 空间描述与坐标变换 将关于对角线对称的两个元素分别相减得 (2-60) 将式(2-60)平方求和得 4s2θ=( r32-r23)2+( r13-r31)2+(r21-r12)2 (2-61) 假设限定绕矢量f正向旋转,且0≤θ≤180°,则 1 s ( r32 r23 ) 2 ( r12 r31 ) 2 ( r21 r12 ) 2 (2-62) 2
- 71.第2章 空间描述与坐标变换 由式(2-59)和式(2-62)可得θ的值 s atan c (2-63) 至此,我们已经获得转角θ的值,再由式(2-57)可以得到 方向矢量f各分量的值 r32 r23 fx 2s (2-64) r13 r31 fy 2s (2-65) r21 r12 fz 2s (2-66)
- 72.第2章 空间描述与坐标变换 在应用中需要注意的是,当转角θ的值接近0°或180°时, 方向矢量f各分量的值计算出现问题,属于奇异情况。