|
Orocos KDL
|
#include <chaindynparam.hpp>
Public Member Functions | |
| ChainDynParam (const Chain &chain, Vector _grav) | |
| virtual | ~ChainDynParam () |
| virtual int | JntToCoriolis (const JntArray &q, const JntArray &q_dot, JntArray &coriolis) |
| virtual int | JntToMass (const JntArray &q, JntSpaceInertiaMatrix &H) |
| virtual int | JntToGravity (const JntArray &q, JntArray &gravity) |
| virtual void | updateInternalDataStructures () |
| Public Member Functions inherited from KDL::SolverI | |
| SolverI () | |
| Initialize latest error to E_NOERROR. | |
| virtual | ~SolverI () |
| virtual int | getError () const |
| Return the latest error. | |
| virtual const char * | strError (const int error) const |
Additional Inherited Members | |
| Public Types inherited from KDL::SolverI | |
| enum | { E_DEGRADED = +1 , E_NOERROR = 0 , E_NO_CONVERGE = -1 , E_UNDEFINED = -2 , E_NOT_UP_TO_DATE = -3 , E_SIZE_MISMATCH = -4 , E_MAX_ITERATIONS_EXCEEDED = -5 , E_OUT_OF_RANGE = -6 , E_NOT_IMPLEMENTED = -7 , E_SVD_FAILED = -8 } |
| Protected Attributes inherited from KDL::SolverI | |
| int | error |
| Latest error, initialized to E_NOERROR in constructor. | |
Implementation of a method to calculate the matrices H (inertia),C(coriolis) and G(gravitation) for the calculation torques out of the pose and derivatives. (inverse dynamics)
The algorithm implementation for H is based on the book "Rigid Body Dynamics Algorithms" of Roy Featherstone, 2008 (ISBN:978-0-387-74314-1) See page 107 for the pseudo-code. This algorithm is extended for the use of fixed joints
It calculates the joint-space inertia matrix, given the motion of the joints (q,qdot,qdotdot), external forces on the segments (expressed in the segments reference frame) and the dynamical parameters of the segments.
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Update the internal data structures. This is required if the number of segments or number of joints of a chain/tree have changed. This provides a single point of contact for solver memory allocations.
Implements KDL::SolverI.