Table of Contents
Fetching ...

A Propagation Perspective on Recursive Forward Dynamics for Systems with Kinematic Loops

Matthew Chignoli, Nicholas Adrian, Sangbae Kim, Patrick M. Wensing

TL;DR

The alternative derivation is intended to make the constraint-embedding methodology more accessible to the broader robotics community, the benchmarking validates that constraint embedding outperforms the nonrecursive alternative in cases involving local kinematic loops and the relative strengths and limitations of constraint embedding versus sparsity-exploiting methods.

Abstract

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.

A Propagation Perspective on Recursive Forward Dynamics for Systems with Kinematic Loops

TL;DR

The alternative derivation is intended to make the constraint-embedding methodology more accessible to the broader robotics community, the benchmarking validates that constraint embedding outperforms the nonrecursive alternative in cases involving local kinematic loops and the relative strengths and limitations of constraint embedding versus sparsity-exploiting methods.

Abstract

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.
Paper Structure (31 sections, 85 equations, 14 figures, 1 algorithm)

This paper contains 31 sections, 85 equations, 14 figures, 1 algorithm.

Figures (14)

  • Figure 1: (a) A parallel belt transmission that actuates the knee (pink) and ankle (orange) of the MIT Humanoid's leg chignoli2021humanoid. (b) A pair of differential drives that actuate the hip (pink) as well as the knee and ankle (blue and green) of the Tello Humanoid's leg sim2022tello.
  • Figure 2: Illustration of two common approaches to analyzing rigid-body systems and how they lead to the same efficient algorithm for computing forward dynamics. Dashed lines represent connections that are only valid for robots without loop constraints.
  • Figure 3: (a) Example of a connectivity graph that is a kinematic tree. (b) Example of a connectivity graph that has a cycle and is therefore not a kinematic tree. (c) Every possible spanning tree for the example in (b).
  • Figure 4: (a) A connectivity graph containing cycles. (b) A regularly numbered spanning tree for the connectivity graph. The spanning tree contains nested loops (chord between nodes 2 and 3 is nested by the chord between nodes 6 and 7) and parallel loops where a single body is involved in multiple loop constraints (node 4). (c) The cluster tree that emerges from applying constraint embedding to (b).
  • Figure 5: (a) Bodies 1, 2, and 3 are part of a four-bar mechanism resulting in cluster $k$. (b) Forces acting on the bodies in cluster $k$, expressed in terms of the cluster forces $\mathbf{f}^{\mathcal{J}}_i$ being transmitted across cluster joint $k$ to the bodies in cluster $k$. (c) Statically equivalent representation of the forces in (b), expressed using the forces $\mathbf{f}^J_i$ transmitted across individual tree joints in the spanning tree.
  • ...and 9 more figures

Theorems & Definitions (1)

  • Remark 1