-
Notifications
You must be signed in to change notification settings - Fork 10
Home
Metapod (for META-Programming Optimized Dynamics library), is a software which provides robot dynamics algorithms, designed to be as fast as possible. It uses a combination of a specific representation of robot models and C++ templates, such that each algorithm remains model-independant, yet is optimized for a particular robot at compile-time. It makes use of R. Featherstone's Spatial Algebra to describe forces, motions and inertias (cf. Rigid Body Dynamics Algorithms, Roy Featherstone).
As of today, the following algorithms have been implemented:
- RNEA (Recursive Newton Euler Algorithm) for inverse dynamics
- CRBA (Composite Rigid Body Algorithm) to compute the Joint-Space Inertia Matrix.
We briefly describe here a first implementation of the approach developed in Metapod. It explains the overall philosophy, but does not allow a proper separation between model and implementation. Thanks to S. Barthelemy this has been fixed by using boost::fusion.