让我们将递归牛顿-欧拉算法的方程转换到体坐标系中。量 $v _i, a _i, S _i, I _i, f _i$ 和 $f _i^B$ 现在都被认为是在体 $i$ 坐标系中表示的。请注意,系统模型已经提供了这些坐标系中的 $S _i$ 和 $I _i$。在体坐标系中表示,方程 7 和 8 变为
方程 14:
$$ v _i={ }^i X _{\lambda(i)} v _{\lambda(i)}+ S _i \dot{ q }_i \quad\left( v _0= 0 \right) $$
和
方程 15:
$$ a _i={ }^i X _{\lambda(i)} a _{\lambda(i)}+ S _i \ddot{ q }_i+\stackrel{\circ}{ S }_i \dot{ q }_i+ v _i \times S _i \dot{ q }_i . \quad\left( a _0=- a _g\right) $$
与原始方程相比,进行了以下更改:插入了坐标变换,将 $v _{\lambda(i)}$ 和 $a _{\lambda(i)}$ 从体 $\lambda(i)$ 坐标系变换到体 $i$ 坐标系;矩阵 $\dot{ S }_i$ 被 $\stackrel{\circ}{ S }_i+ v _i \times S _i$ 替换,其中 $\stackrel{\circ}{ S }_i$ 是 $S_i$ 在体坐标系中的视在导数。我们还借此机会将原始初始加速度值替换为 $a _0=- a _{ g }$,以模拟重力的影响。
关节计算例程 jcalc 能够提供量 $S _i, v _{ J i}= S _i \dot{ q }_i$ 和 $c _{ J i}=\stackrel{\circ}{ S }_i \dot{ q }_i$,所有这些都在体 $i$ 坐标系中。因此,我们修改方程 14 和 15 如下,以利用可用数据:
方程 16:
$$ v _{ J i}= S _i \dot{ q }_i $$
方程 17:
$$ c_{Ji} = \dot{S}_i \dot{q}_i $$
方程 18:
$$ v_i = {}^i X_{\lambda(i)} v_{\lambda(i)} + v_{Ji} \quad (v_0 = 0) $$
方程 19:
$$ a_i = {}^i X_{\lambda(i)} a_{\lambda(i)} + S_i \ddot{q}i + c{Ji} + v_i \times v_{Ji}. \quad (a_0 = -a_g) $$
方程 10:
$$ f_i = f_i^B - f_{*i}^x + \sum_{j \in \mu(i)} f_j $$
方程 9 和 11 在体坐标系版本中保持不变,但方程 10 变为
方程 20: