news 2026/7/16 10:18:27

机器人坐标系转换中的左乘和右乘详解

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
机器人坐标系转换中的左乘和右乘详解

目录

前言

一、先建立一个直觉

二、齐次变换矩阵表示什么

三、最重要的一句话

四、什么是左乘

五、左乘的本质

六、什么是右乘

七、右乘本质

八、一个非常经典的例子

九、机器人开发中最常见的情况

十、最容易记忆的方法

十一、机器人领域最实用的结论

十二、机器人坐标左乘右乘面试高频问题(SLAM / 机械臂 / 自动驾驶通用)

1、基础概念简答题

2、场景区分题

3、SLAM & 李群进阶题

4、计算实例问答题

5、工程踩坑故障题


前言

机器人坐标变换中的左乘和右乘,几乎是所有机器人、视觉、SLAM、机械臂开发人员都会遇到的概念容易搞混,本质原因是:左乘和右乘不仅仅是矩阵放哪边的问题,而是代表了“谁在动”、“在哪个坐标系下动”

一、先建立一个直觉

假设地面上有:

  • 世界坐标系 World
  • 机器人底盘坐标系 Base
  • 相机坐标系 Camera
  • 目标坐标系 Object

例如:

World

├── Base

├── Camera

└── Object

二、齐次变换矩阵表示什么

例如:

表示:Base坐标系相对于World坐标系的位置和姿态

写成矩阵:

三、最重要的一句话

四、什么是左乘

五、左乘的本质

六、什么是右乘

七、右乘本质

八、一个非常经典的例子

九、机器人开发中最常见的情况

十、最容易记忆的方法

十一、机器人领域最实用的结论

绝大多数机器人程序中:

  • 机械臂正运动学 → 右乘
  • DH参数链 → 右乘
  • TF树坐标变换 → 右乘
  • 相机外参链 → 右乘
  • SLAM位姿累计 → 右乘
  • 机器人局部运动控制 → 右乘

因为这些场景本质上都是:

当前坐标系相对于上一级坐标系定义变换。

而左乘通常出现在:

  • 世界系修正位姿
  • 地图对齐
  • 全局坐标重定位
  • 用世界坐标定义运动增量

等场景。

你可以记住一句最实用的话:

右乘 = 沿自己的坐标轴运动;左乘 = 沿世界坐标轴运动。

对于机械臂、视觉外参、TF树、手眼标定这类机器人应用,90%以上情况下看到的都是右乘链式变换

十二、机器人坐标左乘右乘面试高频问题(SLAM / 机械臂 / 自动驾驶通用)

1、基础概念简答题

(1)一句话区分齐次变换矩阵左乘、右乘的几何含义

答:

(2)变换符号怎么读?代表什么转换关系

答:

(3)为什么变换矩阵乘法不满足交换律?举简单例子

答:

(4)什么是内旋、外旋?分别对应左 / 右乘

答:

  • 内旋(动轴旋转):每次绕更新后的自身轴旋转 →右乘(机械臂 DH、里程计);
  • 外旋(定轴旋转):全程绕不变的世界轴旋转 →左乘(全局轨迹修正、地图对齐)。

2、场景区分题

(1)机械臂 DH 正向运动学为什么全部右乘?

答:

(2)移动机器人里程计位姿更新用左还是右乘?原因

答:

(3)TF 树多传感器外参拼接为什么是右乘链式?

答:

(4)全局重定位、地图对齐修正位姿用左还是右乘?

答:

3、SLAM & 李群进阶题

(1)SLAM 优化中,左扰动、右扰动分别对应左 / 右乘?

答:

(2)ICP 配准迭代更新位姿是左乘还是右乘?为什么?

答:

(3)两帧位姿T1、T2求相对变换,误差变换怎么写,对应哪种乘法?

答:

(4)IMU 预积分累积旋转平移为什么采用右乘?

答:IMU 输出角速度、加速度全部是载体自身坐标系测量值,每一段积分增量都是局部变换,不断右乘累积位姿。

4、计算实例问答题

5、工程踩坑故障题

(1)TF 坐标转换结果坐标完全错乱,大概率左乘右乘搞反,怎么排查?

答:

  1. 确认变换增量是自身局部还是世界全局
  2. 拆分变换链,分步打印矩阵对比理论坐标;
  3. 区分扰动模型:SLAM 代码统一固定左 / 右扰动,不要混用;
  4. 检查变换矩阵逆矩阵是否漏乘(相机→底盘和底盘→相机互为逆)。

(2)机械臂末端坐标计算偏差,DH 矩阵左右乘顺序错误如何修正?

答:DH 必须从基座到末端依次右乘;若写成左乘,相当于绕世界轴旋转,末端姿态完全错位,调整矩阵相乘顺序从左到右连杆依次相乘。

(3)里程计长时间累积漂移,左乘 / 右乘选择会加剧漂移吗?

答:不会直接造成漂移,但乘法顺序错误会让每一步增量叠加错误偏移,漂移速度大幅加快;必须严格按局部增量右乘更新。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/16 10:17:02

消费级GPU运行大模型:Gemma 3 QAT技术解析与部署指南

1. 项目概述:消费级GPU运行大模型的破局方案三年前当我第一次尝试在GTX 1060上运行BERT模型时,显存不足的报错提示彻底击碎了我的幻想。如今搭载RTX 4060的游戏本竟然能流畅运行120亿参数的Gemma 3模型,这种技术跃迁值得每个AI从业者认真研究…

作者头像 李华
网站建设 2026/7/16 10:16:49

基于Gowin FPGA的嵌入式图像处理系统设计与实现

1. 项目背景与硬件选型Gowin Ministar系列FPGA开发板是一款面向嵌入式视觉和边缘计算应用的紧凑型开发平台。这款开发板的核心优势在于其高性价比和低功耗特性,特别适合需要实时图像处理的小型项目。Nano Viewer项目正是基于这一硬件平台,实现了一个精简…

作者头像 李华
网站建设 2026/7/16 10:16:42

C++工业级线程池设计:从基础模型到无锁队列与动态调度优化

1. 项目概述:为什么我们需要一个“聪明”的线程池? 如果你用C写过服务器、做过数据处理,或者搞过任何需要榨干CPU性能的项目,大概率都遇到过这样的场景:程序里充满了 std::thread ,启动时像放烟花一样创建…

作者头像 李华
网站建设 2026/7/16 10:15:38

C# WinForm程序内嵌Creo三维模型与工程图实时预览方案

本文还有配套的精品资源,点击获取 简介:一套开箱即用的C# WinForm项目,支持在Windows桌面应用中直接加载并显示Creo Parametric的三维模型和工程图。项目包含完整Visual Studio解决方案(.sln)、主窗体应用工程&…

作者头像 李华
网站建设 2026/7/16 10:15:00

TCAS故障排除手册:解决认证问题的完整清单

TCAS故障排除手册:解决认证问题的完整清单 【免费下载链接】tcas trust cluster attestation server 项目地址: https://gitcode.com/openeuler/tcas 前往项目官网免费下载:https://ar.openeuler.org/ar/ TCAS(trust cluster attesta…

作者头像 李华
网站建设 2026/7/16 10:14:59

Edge开机自动启动怎么彻底关闭?从浏览器设置到系统启动项全排查

很多用户发现每次开机后 Edge 浏览器会自动弹出,哪怕上次关机前已经手动关闭了所有窗口。这种情况不一定只是启动项的问题,还涉及浏览器内部的预加载机制、后台运行策略,以及系统层面的计划任务。下面按照从软件内部到系统外部的顺序&#xf…

作者头像 李华