TimothyD.Barfoot 《机器人学的状态估计》6.1 中定义的向量和参考系的理解

最近在上网课。和大家一起学习Barfoot 的《机器人学的状态估计》。其中 第六节运动学中用的符号系统很奇怪,难以理解(但是,我用熟了以后发现还蛮好用的,又直观,又好算,by the way)。很多小伙伴都在问这个相关的问题,所以我把自己的理解分享一下。如果有什么疏漏或者错误,请务必指正。谢谢。

一、对于vector, vectrix 和 non-vector 的理解
Vector 可以理解为 客观存在,它是没有具体数值的(因为没有参考系描述)。但是它有方向,有大小,也可以运动。vectrix 理解为参考系,或者正交基底。 non-vector 是 坐标系上的具体数值,或者向量在该正交基下的系数。 不同参考系是可以有相对运动的(事实上 以body 系和imu系而言,有运动才是常态)。当然,参考系相对自己一定是静止的。
TimothyD.Barfoot 《机器人学的状态估计》6.1 中定义的向量和参考系的理解_第1张图片
其中,r 是 vecor, F(花体) 是参考系(书中定义是矢阵vctrix),r1 是quantity(non-vector)。 所以,vecotor 就是 一个vctrix 的转置乘上 其对应的quantity(本式子中,显然,vectrix1 对应的是r1)(non-vector)。
对2 坐标系依然成立。
在这里插入图片描述
当然反过来写也成立,但是,书中 后面大部分都是 用的第一种写法。
TimothyD.Barfoot 《机器人学的状态估计》6.1 中定义的向量和参考系的理解_第2张图片二、矩阵相对运动角速度
然后通过 参考系之间的角速度来加深理解。

TimothyD.Barfoot 《机器人学的状态估计》6.1 中定义的向量和参考系的理解_第3张图片
这个 角速度也是一个向量(vector),虽然它描述的 是 坐标系1 相对坐标系2 的角速度,或者坐标系2相对坐标系1 的角速度。但是这个相对运动发生在空间中而不是某一个坐标系下,所以我依然把它理解为vector。

所以有了后面公式6.40.
TimothyD.Barfoot 《机器人学的状态估计》6.1 中定义的向量和参考系的理解_第4张图片
坐标系间的角速度, 在某一个坐标系下依然有定义。 他们之间的关系就是(如前面所示) 该坐标系的vctrix 的转置 乘以相对应的non-vector。

三、时间导数
下面讨论关于导数的定义。书中用了两个坐标系,(因为实际应用的时候,我们一般只考虑 body 系和imu系,也是两个。)分别用和黑点和白点表示。

首先 vector 没有坐标,它的 导数可以对于不同坐标系分别定义。 TimothyD.Barfoot 《机器人学的状态估计》6.1 中定义的向量和参考系的理解_第5张图片
其次,坐标系本身 也是在空间中的,没有在坐标系中。所以也可以分别定义时间导数。但是,对自己的导数永远是0,因为,它相对自己不运动。
在这里插入图片描述
对于non-vector 来说,它本身出于一个坐标系下,所以只有一个导数。

在这里插入图片描述
对于non-vector 而言,non-vector 的导数还处于自己坐标系下,所以结果依然是non-vector。但是,只要 根据 最开始 的公式,乘上 对应的vectrix 的转置 (或者 转置右乘vectrix 本身) 就可以得到 non-vector的导数对应的 vector 的导数。注意frame1 对应的是实心圈圈导数,frame2 对应的是空心圈圈。
注意vector 的导数还是vector 无论实心空心的导数都是。
在这里插入图片描述
导数的导数依然成立
在这里插入图片描述

四 总结

以上其实都是我的个人理解和一些直觉上的思考。如果不严谨,或者错误欢迎指出。
其实关于这个符号系统只需要记住如下几点就可以了

  1. vector 等于 vectrix转置乘 对应non-vector
  2. 在这里插入图片描述3. non-vector 导数还是该坐标系下的non-vector在这里插入图片描述在这里插入图片描述
  3. non-vector只有一个导数,就是该坐标系下的导数TimothyD.Barfoot 《机器人学的状态估计》6.1 中定义的向量和参考系的理解_第6张图片
  4. frame 有两个导数,但是相对自己的那个导数永远等于零在这里插入图片描述

你可能感兴趣的:(slam)