机器人运动学-空间表示与变换

1.向量

一个点:P=(x,y,z) , 写成列向量: ,表示 :沿x轴走x,沿y轴走y,沿z轴走z。

2.向量本质是

一个方向+一个长度。例如 表示:朝x方向1单位

3.点乘(内积)

公式: a·b 计算方法: 含义:判断两个方向有多接近 特殊情况:a·b=0 表示两个向量垂直;同方向 -> 结果大于0 ;反方向-> 结果小于0

4.叉乘(外积)

公式: 含义:得到一个同时垂直于a和b的方向 右手定则:四指从a转向b,大拇指是结果方向 特殊情况:如果 说明这两个向量平行

5.二位旋转矩阵

含义:把一个点逆时针旋转

公式含义:第一行新的x坐标 第二行新的y坐标

6.三维旋转矩阵

绕哪个轴,哪个轴不变

绕x轴

绕y轴

绕z轴

7.右手定则

判断正旋转方向,方法:大拇指朝轴正方向,四指弯曲是正旋转方向。

例如:绕z轴,大拇指向上(z),四指x->y

8.旋转不满足交换律

旋转顺序不同,结果不同

9.坐标系变换

含义: 点P在B坐标系里的坐标 表示把B坐标系转换到A坐标系的旋转矩阵 点P在A坐标系里的坐标

10.为什么旋转矩阵的列是坐标轴

旋转矩阵:

含义:第一列表示B坐标系x轴在A里的方向,第二列表示B坐标系y轴在A里的方向,第三列表示B坐标系z轴在A里的方向。

11.齐次坐标

普通点 变成 ,加1的原因是这样才能把"平移"写成矩阵乘法

12.齐次变换矩阵

展开:

含义:左上角R------旋转(方向),右边t------平移(位置),T同时表示朝向和位置

齐次变换矩阵核心公式 :用变换矩阵T,把点变换成点

也可写成 ,即

第一列n(normal)表示物体的第一根方向轴,类似物体自己的 x 轴。

第二列o(orientation)表示物体的第二根方向轴,类似物体自己的 y 轴。

第三列a(approach)表示物体的第三根方向轴,类似物体自己的 z 轴,机械臂中常表示"前进方向"。

第四列p 表示物体原点的位置

13.Compound(复合变换)和Inversion(逆变换)

**Compound(复合变换)**意思是连续做多次坐标变换

注意,矩阵乘法顺序要从右往左看

**Inversion(逆变换)**意思是把变换反过来

14.任意轴旋转

假设这个任意轴通过原点

如果绕任意方向k旋转,那么我先造一个新坐标系,让k变成新坐标系里的z轴

(1).建立一个新坐标系: ,这里让a=k,即新坐标系C的z轴=k

图中红色xyz代表原坐标系,绿色ijk代表新坐标系。因为k就是新坐标系的z轴,所以绕k转转化为绕z转,可代入第六条的公式

意思是 绕k旋转 等价于 在C坐标系里绕z旋转

(2).先进入新坐标系C 表示C坐标系在原世界里的样子 的作用是把原世界里的东西翻译到C坐标系里去看

(3).绕z轴转

(4).再转换回原坐标系 C

==>最终完整公式

这个公式是说:

原来有一个物体/坐标系T,想让它绕任意轴k转:

但是我们不会直接绕k转,所以先把T换到C坐标系里:

然后在C里绕z轴转:

然后再乘C换回来:

代入,就得到:

所以:

公式总结:

15.旋转轴的方向向量

表示的是旋转轴的方向向量,在机器人学里,方向向量默认都会单位化(归一化)

单位向量

所以 ,即

16.已知一个旋转矩阵R,反推出它等价于"绕某根轴k旋转了多少角度θ"

也就是 ,这叫等效轴角表示法(Equivalent angle-axis of rotation)。

对角线元素之和

即 :

因为:

所以:

等效轴角的意思

一个三维旋转,不管它看起来多复杂,都可以等价理解成:绕空间中某一根轴 k,旋转了一个角度 θ。

Trace能求角度

Trace 就是矩阵主对角线元素之和,最后会简化成

所以只要知道矩阵R的对角线元素,就能反推出 ,即

17.已知旋转矩阵 R,求出等效旋转角θ的 sinθ

可得到:

,这里 是等效旋转轴的单位向量

把三个式子平方后相加:

得到:

用tanθ求角度更稳妥,有,求出theta

choose positive sign

sinθ选择正号

规定 0≤θ≤180 ,在这个范围内 sinθ≥0

Note.不推荐直接这样求轴:

,原因是如果,也就是,分母会变成0,计算会出问题。

18.已知旋转矩阵 R 和角度 θ,求旋转轴

(1)先用对角线求 (k_x,k_y,k_z) 的绝对值

(2)找​ 里最大的那个

例如,说明 最大

谁的对角线元素最大,谁对应的 k 分量通常最大。所以先确定 ,再用其他式子求 ​。

(3)如果 最大,怎么求

可知

如果已经先求出了,就用含的式子求另外两个:

相关推荐
BFT白芙堂3 小时前
【买机器人,上BFT】基于 LoHo-Manip 框架的 Franka Research3 机械臂长程操作研究
人工智能·学习·机器人·研究·具身智能·franka·loho-manip 框架
kyle~3 小时前
机器人感知 --- 多相机传感时间误差分析
linux·c++·数码相机·机器人·ros2·传感器
xwz小王子4 小时前
SkiP:让模仿学习学会“快进“——动作重标记如何在不改架构的情况下削减机器人 15-40% 的执行步数
学习·架构·机器人
朝阳群众Jone4 小时前
机器人企业如何用 CRM 优化线索、商机与客户管理
机器人
墨北小七4 小时前
如何用 Dify 替代传统客服机器人
人工智能·机器人
传说故事4 小时前
【论文阅读】Yell At Your Robot: Improving On-the-Fly from Language Corrections
论文阅读·机器人·具身智能
ZPC82104 小时前
moveit2_servo 怎么接收相机调节指令(视觉伺服)
人工智能·数码相机·算法·计算机视觉·机器人
卷卷说风控5 小时前
【卷卷观察】AI垃圾正在杀死开源——当机器人淹没了人类贡献者
人工智能·机器人·开源
听你说325 小时前
不迷路、不重扫、不遗漏:库萨科技无人清扫车以空间智能领跑无人环卫赛道
人工智能·科技·算法·机器人