We revisit the concept of constraint embedding as a means for dealing with kinematic loop constraints during dynamics computations for rigid-body systems. Specifically, we consider the local loop constraints emerging from common actuation sub-mechanisms in modern robotics systems (e.g., geared motors, differential drives, and four-bar mechanisms). However, rather than develop the concept of constraint embedding from the perspective of graphical analysis, we present a novel analysis of constraint embedding that generalizes the traditional concepts of joint models and motion/force subspaces between individual rigid bodies to generalized joint models and motion/force subspaces between groups of rigid bodies subject to loop constraints. The generalized concepts are used in a self-contained, articulated-body-based derivation of the constraint-embedding-based recursive algorithm for forward dynamics. The derivation represents the first assembly method to demonstrate the recursivity of articulated inertia computation in the presence of loop constraints. We demonstrate the broad applicability of the generalized joint concepts by showing how they also lead to the constraint-embedding-based recursive algorithm for inverse dynamics. Lastly, we benchmark our open-source implementation in C++ for the forward dynamics algorithm against a state-of-the-art, non-recursive algorithm. Our benchmarking validates that constraint embedding outperforms the non-recursive alternative in the case of local kinematic loops.
翻译:本文重新审视约束嵌入概念,作为处理刚体系统动力学计算中运动学回路约束的方法。具体而言,我们关注现代机器人系统中常见驱动子机构(如齿轮电机、差速驱动和四杆机构)产生的局部回路约束。然而,不同于从图形分析视角发展约束嵌入概念,我们提出了一种新颖的约束嵌入分析方法,将传统单刚体间的关节模型与运动/力子空间概念,推广至受回路约束的刚体组间的广义关节模型与运动/力子空间。这些广义概念被用于基于自包含的铰接体方法,推导出基于约束嵌入的递归正向动力学算法。该推导首次通过装配方法证明了在存在回路约束情况下铰接惯量计算的递归性。我们通过展示如何基于广义关节概念推导出基于约束嵌入的递归逆动力学算法,证明了该概念的广泛适用性。最后,我们在C++开源实现中对正向动力学算法与最先进的非递归算法进行了基准测试。实验验证表明,在局部运动学回路情况下,约束嵌入方法优于非递归替代方案。