Cheetah Software  1.0
FloatingBaseModel.h File Reference

Implementation of Rigid Body Floating Base model data structure. More...

#include "Math/orientation_tools.h"
#include "SpatialInertia.h"
#include "spatial.h"
#include <eigen3/Eigen/StdVector>
#include <string>
#include <vector>
+ Include dependency graph for FloatingBaseModel.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  FBModelState< T >
 
struct  FBModelStateDerivative< T >
 
class  FloatingBaseModel< T >
 

Detailed Description

Implementation of Rigid Body Floating Base model data structure.

This class stores the kinematic tree described in "Rigid Body Dynamics Algorithms" by Featherstone (download from https://www.springer.com/us/book/9780387743141 on MIT internet)

The tree includes an additional "rotor" body for each body. This rotor is fixed to the parent body and has a gearing constraint. This is efficiently included using a technique similar to what is described in Chapter 12 of "Robot and Multibody Dynamics" by Jain. Note that this implementation is highly specific to the case of a single rotating rotor per rigid body. Rotors have the same joint type as their body, but with an additional gear ratio multiplier applied to the motion subspace. The rotors associated with the floating base don't do anything.

Definition in file FloatingBaseModel.h.