机器人学——1.1-二维空间位姿描述

这篇博客详细介绍了二维空间中的位姿描述,包括坐标系的旋转和平移。通过旋转矩阵和齐次变换矩阵的概念,阐述了如何描述和转换不同坐标系之间的位姿。此外,还探讨了旋转中心的概念,并利用MATLAB机器人工具箱举例说明。
摘要由CSDN通过智能技术生成

二维空间位姿描述

二维世界或平面,是我们在高中学习欧几里得几何时就熟悉的。笛卡儿坐标系,或以 x x x 轴和 y y y 轴为正交轴的坐标系,通常绘制成 x x x 轴水平、 y y y 轴竖直,两轴的交点称为原点。平行于坐标轴的单位向量用 x ^ \hat{x} x^ y ^ \hat{y} y^ 表示。一个点用其在 x x x 轴和 y y y 轴上的坐标 ( x , y ) \left(x,y\right) (x,y) 表示,或者写为有界向量:
p = x x ^ + y x ^ (1) \tag{1} p=\text{x}\hat{x}+\text{y}\hat{x} p=xx^+yx^(1)
在下图中的一个坐标系 { B } \{B\} { B} ,我们希望用参照系 { A } \{A\} { A} 来描述它。可以清楚地看到, { B } \{B\} { B} 的原点已被向量 t = ( x , y ) t=\left(x, y\right) t=(x,y)所取代,然后逆时针旋转一个角度 θ \theta θ 。因此,位姿的一个具体表示就是三维向量 A ξ B ∼ ( x , y , θ ) ^A\xi_B \sim \left(x, y, \theta\right) AξB(x,y,θ) ,我们使用符号 ∼ \sim 表示这两种表示是等价的。
在这里插入图片描述
遗憾的是,这种表示方法不方便复合,因为:
( x 1 , y 1 , θ 1 ) ⊕ ( x 2 , y 2 , θ 2 ) \left(x_1, y_1, \theta_1\right)\oplus\left(x_2, y_2, \theta_2\right) (x1,y1,θ1)(x2,y2,θ2)两边的位姿都是复杂的三角函数。所以,我们将使用一种不同的方法来表示旋转。

该方法是考虑一个任意点 P P P 相对于每个坐标系的向量,并确定 A p ^Ap Ap B p ^Bp Bp 之间的关系。再次回到上图,我们将问题分成两部分:旋转,然后平移。

先只考虑旋转的情况,我们创建一个新坐标系 { V } \{V\} { V} ,其坐标轴平行于坐标系 { A } \{A\} { A} 的轴,但其原点与坐标系 { B } \{B\} { B} 的原点重合,如下图所示。
在这里插入图片描述
根据方程 ( 1 ) \left(1\right) (1) ,我们可以将点 P P P { V } \{V\} { V} 中定义坐标轴的单位向量表示为
V p = V x x ^ V + V y y ^ V = ( x ^ V y ^ V ) ( V x V y ) (2) \tag{2} \begin{array}{rl} ^Vp= & {}^V\text{x}\hat{x}_V+{}^V\text{y}\hat{y}_V \\[1em] = & \left(\begin{array}{cc}\hat{x}_V&\hat{y}_V\end{array}\right)\left(\begin{array}{c}^V\text{x}\\^V\text{y}\end{array}\right) \end{array} Vp==Vxx^V+Vyy^V(x^Vy^V)(VxVy)(2)上式被写作一个行向量和一个列向量的点积。

坐标系 { B } \{B\} { B} 可以用它的两个正交轴表示,这里用两个单位向量代表:
x ^ B = cos ⁡ θ x ^ V + sin ⁡ θ y ^ V y ^ B = − sin ⁡ θ x ^ V + cos ⁡ θ y ^ V \begin{array}{rl} \hat{x}_B= & \cos\theta \hat{x}_V + \sin\theta\hat{y}_V \\ \hat{y}_B= & -\sin\theta \hat{x}_V + \cos\theta\hat{y}_V \end{array} x^B=y^B=cosθx^V+sinθy^Vsinθx^V+cosθy^V上式写作矩阵形式为:
( x ^ B y ^ B ) = ( x ^ V y ^ V ) ( cos ⁡ θ − sin ⁡ θ sin ⁡ θ cos ⁡ θ ) (3) \tag{3} \left(\begin{array}{cc}\hat{x}_B & \hat{y}_B\end{array}\right)= \left(\begin{array}{cc}\hat{x}_V & \hat{y}_V\end{array}\right)\left(\begin{array}{cc}\cos\theta & -\sin\theta \\ \sin\theta & \cos\theta\end{array}\right) (x^By^B)=(x^Vy^V)(cosθsinθsinθcosθ)(3)用方程 ( 1 ) (1) (1) 可以在坐标系 { B } \{B\} { B} 中将 P P P 点表示为
B p = B x x ^ B + B y y ^ B =

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值