如何把全局坐标系转到机器人本体坐标系

场景

假设某虚拟机器人 R v R_v Rv与跟随者机器人 R f R_f Rf位置关系如下:

全局坐标系
  • ( X )、( Y ):全局坐标系的坐标轴,( O ) 为全局坐标系原点,用于描述机器人在宏观环境中的位置与姿态。
跟随机器人( R f R_f Rf)
  • ( x_F )、( y_F ):跟随机器人本体坐标系的坐标轴,构成机器人自身的局部坐标系,用于定义机器人本体的方向(如前进方向、侧向方向)。
  • ( θ F \theta_F θF):跟随机器人线速度与水平方向的夹角.
虚拟机器人( R v R_v Rv)
  • ( x_V )、( y_V ):虚拟机器人在全局坐标系下的位置坐标,分别表示其在 ( X ) 轴和 ( Y ) 轴方向上的位置。
  • ( θ V \theta_V θV):虚拟机器人线速度与水平方向的夹角
  • ( R_V ) :代表虚拟机器人,虚线框表示其在全局坐标系中的形态与位置,通过 ( x_V )、( y_V ) 和 ( θ V \theta_V θV) 完整定义其在环境中的位姿。

则可通过:
cos ⁡ θ F sin ⁡ θ F 0 − sin ⁡ θ F cos ⁡ θ F 0 0 0 1 x y z \begin{bmatrix}\cos\theta_F&\sin\theta_F&0\\-\sin\theta_F&\cos\theta_F&0\\0&0&1\end{bmatrix}\begin{bmatrix}x\\y\\z\end{bmatrix} cosθF−sinθF0sinθFcosθF0001 xyz

将全局坐标系下的位置关系转换到机器人本体坐标系。

1. 旋转矩阵的几何意义

  • 该矩阵是三维空间中绕 z z z 轴旋转 θ F \theta_F θF 的变换矩阵。在机器人领域,全局坐标系(如世界坐标系)与本体坐标系的差异常体现在姿态(旋转角度)上。若机器人本体坐标系相对全局坐标系存在绕 z z z 轴的旋转(如机器人原地转向),此矩阵可精确描述这一旋转关系。
  • 矩阵的列向量对应本体坐标系坐标轴在全局坐标系中的方向,例如:
    • 第一列 cos ⁡ θ F − sin ⁡ θ F 0 \begin{bmatrix} \cos\theta_F \\ -\sin\theta_F \\ 0 \end{bmatrix} cosθF−sinθF0 表示本体坐标系 x x x 轴在全局坐标系中的投影;

    • 第二列 sin ⁡ θ F cos ⁡ θ F 0 \begin{bmatrix}\sin\theta_F\\\cos\theta_F\\0\end{bmatrix} sinθFcosθF0 表示本体坐标系 y y y轴在全局坐标系中的投影;

    • 第三列 0 0 1 \begin{bmatrix}0\\0\\1\end{bmatrix} 001 说明 z z z轴方向在两个坐标系中一致(若有 z z z轴旋转,需更复杂矩阵)。

2.坐标变换的数学逻辑

  • 对全局坐标系下的点 P 全局 = x y z \boldsymbol{P}\text{全局}=\begin{bmatrix}x\\y\\z\end{bmatrix} P全局= xyz ,用该矩阵变换后得到 P 本体 \boldsymbol{P}\text{本体} P本体:
    P 本体 = cos ⁡ θ F sin ⁡ θ F 0 − sin ⁡ θ F cos ⁡ θ F 0 0 0 1 x y z = x cos ⁡ θ F + y sin ⁡ θ F − x sin ⁡ θ F + y cos ⁡ θ F z . \boldsymbol{P}_\text{本体}=\begin{bmatrix}\cos\theta_F&\sin\theta_F&0\\-\sin\theta_F&\cos\theta_F&0\\0&0&1\end{bmatrix}\begin{bmatrix}x\\y\\z\end{bmatrix}=\begin{bmatrix}x\cos\theta_F+y\sin\theta_F\\-x\sin\theta_F+y\cos\theta_F\\z\end{bmatrix}. P本体= cosθF−sinθF0sinθFcosθF0001 xyz = xcosθF+ysinθF−xsinθF+ycosθFz .
    这一过程通过旋转 x − y x-y x−y平面的坐标,使全局坐标系的方向与机器人本体坐标系的 x − y x-y x−y平面方向对齐,而 z z z坐标保持不变(若存在平移,需额外补充平移向量)。

因此,当机器人本体坐标系相对全局坐标系仅存在绕 z z z轴的旋转时,该矩阵可通过数学上的旋转变换,将全局坐标系下的位置关系转换到机器人本体坐标系。

相关推荐
地平线开发者4 天前
人在途中:从“编译失败”到“模型可落地”——CUDA 自定义算子
算法·自动驾驶
zzzzzz31011 天前
假如我是掘金管理员,我先给评论区装个'代码审查'系统
python·程序员·机器人
通信小呆呆11 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
code_pgf11 天前
端到端自动驾驶 BEV stack
人工智能·机器学习·自动驾驶
Godspeed Zhao11 天前
Level 4自动驾驶系统设计3——功能与场景3
人工智能·机器学习·自动驾驶
生成论实验室11 天前
机器人:一个自主运动的系统
人工智能·算法·语言模型·机器人·自动驾驶·agi·安全架构
Godspeed Zhao11 天前
现代智能汽车系统——智驾SoC之框架版图
人工智能·机器学习·自动驾驶·汽车·soc
chase_my_dream11 天前
Cartographer详细讲解
c++·人工智能·自动驾驶
Dick50711 天前
ROS2 常用命令表
人工智能·学习·算法·机器人