3
18
2019
2

什么是“右乘联体左乘基”

最近在上一门课,叫做《机器人导论》。最近一段时间这门课主要讲机器人的运动学相关内容,其实就是一些具体应用场景下的坐标变换。其中,在讲“联体坐标变换”时有这么一句话,叫“右乘联体左乘基”。开始没有过多引起注意,直到后来两次课听得越来越晕,才在严神一句话下点醒:

“你知道你为什么听不懂?因为你没有深刻理解‘右乘联体左乘基’的含义,只是死记硬背……”
 
接着,借着严神给的资料和自己之前看过的一些内容,说一下现在自己对这个问题的理解。
首先,让我们看看书上对于联体坐标变换给出的定义:
 
对于坐标系\(\left \{ A \right \}\) 、 \(\left \{ B \right \}\) 和 \(\left \{ C \right \}\),假设\(\left \{ A \right \}\)是参考坐标系(基坐标系),则\(\left \{ B \right \}\)相对于\(\left \{ A \right \}\)的坐标变换以及\(\left \{ C \right \}\)相对于\(\left \{ B \right \}\)的坐标变换称为联体坐标变换。
设\(\left \{ B \right \}\)在\(\left \{ A \right \}\)中的表示为\(T_{1}\),\(\left \{ C \right \}\)在\(\left \{ B \right \}\)中的表示为\(T_{2}\),刚体在\(\left \{ C \right \}\)中的表示为\(T_{3}\),则
\[T=T_{1}T_{2}T_{3}\]
上式可以理解为,从基坐标系变换到联体坐标系的变换采用右乘;也可以理解为,从基坐标系变换到基坐标系的变换采用左乘。简记为“右乘联体左乘基”。

说实话,看了半天,我还是没有理解什么是联体坐标变换(智商余额不足,需要充值了……)。
 
现在回忆起来,感觉书上定义的主要问题是,没有明确说明上式中的哪部分“左/右乘”被定义为“基/联体变换”。其实最简单的理解方式为:
  • 如果对刚体进行多次线性变换,每次变换都相对于基坐标系变换,则称为“基变换”;
  • 如果对刚体进行多次线性变换,每次变换都相对于新坐标系变换,则成为“联体变换”。
举例来说,比如刚体\(r\)在坐标系\(\left \{ A \right \}\) 中表示为\(T_{r}\),现在将刚体在坐标系\(\left \{ A \right \}\) 中先后绕\(y\)\(z\)\(x\)轴旋转30、15、45度,那么这一变换可以表示为:
\[
T=T_3 \cdot T_2 \cdot T_1 = Rot(x, \pi/4) Rot(z, \pi/12) Rot(y, \pi/6)
\]
由于每次变换都相对于坐标系\(\left \{ A \right \}\)进行变换,因此称为“基变换”;又由于新变换都在前次变换矩阵的左侧乘上新的变换矩阵,因此相应的变换操作为“左乘”;

另一方面,也可以认为一与刚体固联的假想坐标系\(\left \{ A^{'} \right \}\)开始时与坐标系\(\left \{ A \right \}\) 重合,然后该坐标系先绕\(x\)轴转了45度(变成了与坐标系\(\left \{ A \right \}\)不重合的状态),然后该坐标系又绕自身\(z\)轴转了15度,然后该坐标系又绕自身\(y\)轴转了30度。
由于每次变换都相对于变换后的坐标系进行变换,因此称为“联体变换”;又由于新变换都在前次变换矩阵的右侧乘上新的变换矩阵,因此相应的变换操作为“右乘”。

 

Category: 未分类 | Tags:

Host by is-Programmer.com | Power by Chito 1.3.3 beta | Theme: Aeros 2.0 by TheBuckmaker.com