机器人-轨迹规划

旋转矩阵

旋转矩阵--R--一个3*3的矩阵,其每列的值时B坐标系在A坐标系上的投影值。

代表B坐标系相对于A坐标系的姿态。

旋转矩阵的转置矩阵

其实A相对于B的旋转矩阵就相当于把B的列放到行上就行。

视频

(将矩阵的行列互换得到的新矩阵称为转置矩阵。)

所以说B相对于A的旋转矩阵就是A相对于B的旋转矩阵的转置矩阵,反过来也一样。

旋转矩阵和逆矩阵

下面的推导是相对于单位向量的。

一个向量旋转一定角度之后的新的向量值怎么计算

旋转矩阵的用途

多步骤旋转的旋转矩阵

每一次的旋转的旋转矩阵相乘起来得到的就是最终的旋转矩阵;

移动和转动的先后顺序

移动的先后顺序可以互换,比如先x轴移动3,再y轴移动5,或者先y轴移动5,再x轴移动3,结果都一样。

转动的先后顺序不可以互换。

欧拉角:

固定角和欧拉角建立的旋转矩阵

固定角--相对基轴转

后转的先乘

(矩阵乘法一般不满足交换律)

原因是:

由旋转矩阵推算各个旋转角

欧拉角--相对自己的轴转

先转的先乘

(矩阵乘法一般不满足交换律)

原因:

因为旋转不可以交换先后顺序,而新的向量p(B)只有先乘R3,再R2,再R1才能回到p(A)。

由旋转矩阵推算各个旋转角

欧拉角和固定角实现的旋转矩阵关系

也就是固定角先转后乘所得的结果和欧拉角后转先乘所得的结果一致。

反正这两方法都是实现旋转矩阵的方法,得到的结果肯定要一致。

也就是无论哪种方式实现的姿态的变动,最终都会得到一个相同的姿态。

固定角的12中实现方式和欧拉角的12中实现方式

都可以实现同一种姿态。

为什么每一种有12种

第一次:可以任意旋转一个轴转动--有3种选择方式;

第二次:不能和上一次选择一样的轴--有2种选择方式;

第三次:不能和上一次选择一样的轴--有2种选择方式;

所以:3*2*2=12种;

为什么不能选择同一个轴,因为同一个轴实现相同的转动,没必要选择两次。

位姿

位置+姿态=位姿;

变换矩阵--transformation matrix

T=R和B原点到A的位置组成的四维矩阵

注意四维矩阵是旋转矩阵和B源端坐标系相对于A坐标系的位置组成的。

怎么利用位置向量和旋转矩阵描述物体的位姿?

只有移动

则旋转矩阵为单位矩阵;

只有旋转

则三个值全0;

B到A坐标系中间经过多个坐标系

连续的移动和转动。

先移动再旋转和先旋转再移动

我们之前所有描述的都是先旋转再移动的清情况。

刚体本身的位置向量是相对于本身的坐标系B,而移动则是表示自己本身坐标系源端相对于世界坐标系A的位置向量。

变换矩阵的逆矩阵

视频

变换矩阵用固定角和欧拉角实现

相关推荐
weixin_307779134 小时前
C++代码实现MATLAB中的dlarray函数功能
开发语言·c++·算法·matlab
hetao17338379 小时前
2026-10-03~04 hetao1733837 的刷题记录
c++·算法
Zootopia62610 小时前
飞行力学知识梳理1|飞行性能与稳定性
人工智能·python·算法·机器学习·无人机·学习方法·信息与通信
longlongzihan10 小时前
从LeetCode 70. 爬楼梯看动态规划:如何精准推导状态转移方程?
c++·算法·leetcode·动态规划
2601_9603563811 小时前
2027校招采购岗解析:数学基础如何迁移到需求预测、成本与供应商分析
人工智能·算法
h_a_o777oah12 小时前
【树论】树链剖分:将树形结构转化为线性结构以处理树上路径问题(洛谷 P3384 附C++代码模板)
数据结构·算法·线段树·acm·树链剖分·树论·重链剖分
HEJOO912 小时前
指针的算术运算详解
java·数据结构·算法
Coder-magician12 小时前
《代码随想录》刷题打卡day47:并查集-part01
数据结构·算法·图论
垆边人似月.12 小时前
VLAN 资源池(100~200 分档)
数据结构·算法
潼心1412o13 小时前
C++初阶(长期更新)第6讲:类和对象(下)
开发语言·c++·算法