位置、姿态与坐标系

位置描述:一旦建立了坐标系,就可以用一个3×1的位置矢量对世界坐标系中的任何点进行定位。因为在世界坐标系中还有其他坐标系,因此必须在位置矢量上附加信息,表明是在哪个坐标被定义的。位置矢量用一个前置的上标来表明其参考坐标系。例如:AP。表明AP的数值是在坐标系{A}中的表示。矢量中的各个元素用下标x,y,z来表明:AP= [ p x p y p z ] \left[\begin{matrix}p_x\\p_y\\p_z\end{matrix}\right] pxpypz
姿态描述:点的位置描述可用矢量描述,姿态可用固定在物体上的坐标系来描述。描述连体坐标系{B}的一种方法是利用坐标系{A}的三个主轴单位矢量来表示。我们用 X ^ B \hat{X}_B X^B Y ^ B \hat{Y}_B Y^B Z ^ B \hat{Z}_B Z^B来表示坐标系{B}主轴方向的单位矢量,当用坐标系{A}的坐标表达式时,它们被写成A X ^ B \hat{X}_B X^BA Y ^ B \hat{Y}_B Y^BA Z ^ B \hat{Z}_B Z^B,将这三个单位矢量按照顺序排成一个3×3的矩阵,称该矩阵为旋转矩阵,记作: B A R {^A_B}R BAR(矩阵{B}相对于矩阵{A}的表达)
(1) B A R = [ A X ^ B A Y ^ B A Z ^ B ] = [ r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 ] {^A_B}R=\begin{bmatrix} ^A\hat{X}_B &^A\hat{Y}_B&^A\hat{Z}_B\\ \end{bmatrix}=\begin{bmatrix} r_{11} &r_{12}&r_{13}\\ r_{21} &r_{22}&r_{23}\\r_{31} &r_{32}&r_{33}\end{bmatrix}\tag{1} BAR=[AX^BAY^BAZ^B]=r11r21r31r12r22r32r13r23r33(1)
于是,点的位置可用一个矢量来表示,物体的姿态可用一个矩阵来表示,上式中 r i j r_{ij} rij可用每个矢量在其参考坐标系中的单位方向上投影的分量来表示。于是 B A R {^A_B}R BAR的各个分量可用一对单位矢量的点积来表示:
(2) B A R = [ A X ^ B A Y ^ B A Z ^ B ] = [ X ^ B ⋅ X ^ A Y ^ B ⋅ X ^ A Z ^ B ⋅ X ^ A X ^ B ⋅ Y ^ A Y ^ B ⋅ Y ^ A Z ^ B ⋅ Y ^ A X ^ B ⋅ Z ^ A Y ^ B ⋅ Z ^ A Z ^ B ⋅ Z ^ A ] {^A_B}R=\begin{bmatrix} ^A\hat{X}_B &^A\hat{Y}_B&^A\hat{Z}_B\\ \end{bmatrix}=\begin{bmatrix} \hat{X}_B \cdot \hat{X}_A &\hat{Y}_B \cdot \hat{X}_A&\hat{Z}_B \cdot \hat{X}_A\\ \hat{X}_B \cdot \hat{Y}_A &\hat{Y}_B \cdot \hat{Y}_A&\hat{Z}_B \cdot \hat{Y}_A\\\hat{X}_B \cdot \hat{Z}_A &\hat{Y}_B \cdot \hat{Z}_A&\hat{Z}_B \cdot \hat{Z}_A\end{bmatrix}\tag{2} BAR=[AX^BAY^BAZ^B]=X^BX^AX^BY^AX^BZ^AY^BX^AY^BY^AY^BZ^AZ^BX^AZ^BY^AZ^BZ^A(2)
为简单起见,上式最右边矩阵内的前置上标被省略了。由于两个单位矢量的点积可得到二者之间夹角的余弦,因此旋转矩阵的各分量常被称作方向余弦。
观察式(2)第一行可知:矩阵 B A R {^A_B}R BAR的第一行就是 B X ^ A ^B\hat{X}_A BX^A X ^ B \hat{X}_B X^B Y ^ B \hat{Y}_B Y^B Z ^ B \hat{Z}_B Z^B上的投影的模,也就是 B X ^ A T ^B\hat{X}_A^T BX^AT,则,
(3) B A R = [ A X ^ B A Y ^ B A Z ^ B ] = [ B X ^ A T B Y ^ A T B Z ^ A T ] {^A_B}R=\begin{bmatrix} ^A\hat{X}_B &^A\hat{Y}_B&^A\hat{Z}_B\\ \end{bmatrix}=\begin{bmatrix} ^B\hat{X}_A^T \\^B\hat{Y}_A^T\\^B\hat{Z}_A^T\\ \end{bmatrix}\tag{3} BAR=[AX^BAY^BAZ^B]=BX^ATBY^ATBZ^AT(3)
坐标系{A}对坐标系{B}的描述 A B R {^B_A}R ABR可由式(3)转置得到;即, A B R {^B_A}R ABR= A B R T {^B_A}R^T ABRT,又因为旋转矩阵是正交矩阵,一个正交矩阵的逆等于它的转置,因此, A B R {^B_A}R ABR= A B R T {^B_A}R^T ABRT= A B R − 1 {^B_A}R^{-1} ABR1
现在以三个欧拉角中的RotX为例(其余两个欧拉角以此类推),验证一下以上说的结论。
(1)由于X轴是垂直于YoZ平面的,所以 X A X_A XA Y B Y_B YB Z B Z_B ZB的点乘结果为0,同时 X B X_B XB Y A Y_A YA Z A Z_A ZA的点乘结果也为0。
(2)由于 X A X_A XA X B X_B XB都是单位向量,所以 X A X_A XA X B X_B XB的点乘结果为1。
(3)由于绕x轴旋转,所以我们观察 Y B Y_B YB Z B Z_B ZB分别在 Y A Y_A YA Z A Z_A ZA上的投影情况,如下图所示。

(4) R R o t x = [ 1 0 0 0 c o s ( θ ) − s i n ( θ ) 0 s i n ( θ ) c o s ( θ ) ] R_{Rotx}=\begin{bmatrix} 1&0&0\\ 0&cos(\theta)&-sin(\theta)\\0&sin(\theta)&cos(\theta) \end{bmatrix}\tag{4} RRotx=1000cos(θ)sin(θ)0sin(θ)cos(θ)(4)
坐标系描述:位置和姿态的组合称作坐标系,四个矢量为一组,表示了位置和姿态信息。例如,用, B A R {^A_B}R BAR A P B O R G {^A}P_{BORG} APBORG来描述坐标系{B},其中 A P B O R G {^A}P_{BORG} APBORG是确定坐标系{B}原点位置矢量: { B } = { B A R {B}={{^A_B}R B=BAR A P B O R G } {^A}P_{BORG}} APBORG
映射:坐标系到坐标系的变换:已知矢量对某坐标系{B}的描述,求出它相对另一坐标系{A}的描述。 A P = B A T B P {^A}P={^A_B}T^BP AP=BATBP,其中 B A T {^A_B}T BAT为4×4齐次变换矩阵。

  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值