- 3.0.2 rigid body dynamics module.
|
#include <inverse_dynamics.h>
Public Types | |
typedef iit::rbd::Core< SCALAR > | CoreS |
typedef CoreS::ForceVector | Force |
typedef LinkDataMap< Force > | ExtForces |
typedef CoreS::VelocityVector | Velocity |
typedef CoreS::VelocityVector | Acceleration |
typedef iit::rbd::tpl::InertiaMatrixDense< SCALAR > | InertiaMatrix |
typedef iit::testirb4600::tpl::JointState< SCALAR > | JointState |
typedef CoreS::Matrix66 | Matrix66s |
typedef iit::testirb4600::tpl::MotionTransforms< TRAIT > | MTransforms |
typedef InertiaProperties< TRAIT > | IProperties |
Public Member Functions | ||||||||||||||||
InverseDynamics (IProperties &in, MTransforms &tr) | ||||||||||||||||
void | setJointStatus (const JointState &q) const | |||||||||||||||
Inverse dynamics | ||||||||||||||||
The full Newton-Euler algorithm for the inverse dynamics of this robot.
| ||||||||||||||||
void | id (JointState &jForces, const JointState &q, const JointState &qd, const JointState &qdd, const ExtForces &fext=zeroExtForces) | |||||||||||||||
void | id (JointState &jForces, const JointState &qd, const JointState &qdd, const ExtForces &fext=zeroExtForces) | |||||||||||||||
Gravity terms | ||||||||||||||||
The joint forces (linear or rotational) required to compensate for the effect of gravity, in a specific configuration. | ||||||||||||||||
void | G_terms (JointState &jForces, const JointState &q) | |||||||||||||||
void | G_terms (JointState &jForces) | |||||||||||||||
Centrifugal and Coriolis terms | ||||||||||||||||
The forces (linear or rotational) acting on the joints due to centrifugal and Coriolis effects, for a specific configuration. | ||||||||||||||||
void | C_terms (JointState &jForces, const JointState &q, const JointState &qd) | |||||||||||||||
void | C_terms (JointState &jForces, const JointState &qd) | |||||||||||||||
Getters | ||||||||||||||||
These functions return various spatial quantities used internally by the inverse dynamics routines, like the spatial acceleration of the links. The getters can be useful to retrieve the additional data that is not returned explicitly by the inverse dynamics routines even though it is computed. For example, after a call to the inverse dynamics, the spatial velocity of all the links has been determined and can be accessed. However, beware that certain routines might not use some of the spatial quantities, which therefore would retain their last value without being updated nor reset (for example, the spatial velocity of the links is unaffected by the computation of the gravity terms). | ||||||||||||||||
const Velocity & | getVelocity_link1 () const | |||||||||||||||
const Acceleration & | getAcceleration_link1 () const | |||||||||||||||
const Force & | getForce_link1 () const | |||||||||||||||
const Velocity & | getVelocity_link2 () const | |||||||||||||||
const Acceleration & | getAcceleration_link2 () const | |||||||||||||||
const Force & | getForce_link2 () const | |||||||||||||||
const Velocity & | getVelocity_link3 () const | |||||||||||||||
const Acceleration & | getAcceleration_link3 () const | |||||||||||||||
const Force & | getForce_link3 () const | |||||||||||||||
const Velocity & | getVelocity_link4 () const | |||||||||||||||
const Acceleration & | getAcceleration_link4 () const | |||||||||||||||
const Force & | getForce_link4 () const | |||||||||||||||
const Velocity & | getVelocity_link5 () const | |||||||||||||||
const Acceleration & | getAcceleration_link5 () const | |||||||||||||||
const Force & | getForce_link5 () const | |||||||||||||||
const Velocity & | getVelocity_link6 () const | |||||||||||||||
const Acceleration & | getAcceleration_link6 () const | |||||||||||||||
const Force & | getForce_link6 () const | |||||||||||||||
Public Attributes | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef TRAIT::Scalar | SCALAR |
Protected Member Functions | |
void | firstPass (const JointState &qd, const JointState &qdd, const ExtForces &fext) |
void | secondPass (JointState &jForces) |
typedef iit::rbd::Core<SCALAR> iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::CoreS |
typedef CoreS::ForceVector iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::Force |
typedef LinkDataMap<Force> iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::ExtForces |
typedef CoreS::VelocityVector iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::Velocity |
typedef CoreS::VelocityVector iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::Acceleration |
typedef iit::rbd::tpl::InertiaMatrixDense<SCALAR> iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::InertiaMatrix |
typedef iit::testirb4600::tpl::JointState<SCALAR> iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::JointState |
typedef CoreS::Matrix66 iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::Matrix66s |
typedef iit::testirb4600::tpl::MotionTransforms<TRAIT> iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::MTransforms |
typedef InertiaProperties<TRAIT> iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::IProperties |
iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::InverseDynamics | ( | IProperties & | in, |
MTransforms & | tr | ||
) |
Default constructor
in | the inertia properties of the links |
tr | the container of all the spatial motion transforms of the robot testirb4600, which will be used by this instance to compute inverse-dynamics. |
|
inline |
void iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::id | ( | JointState & | jForces, |
const JointState & | qd, | ||
const JointState & | qdd, | ||
const ExtForces & | fext = zeroExtForces |
||
) |
|
inline |
void iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::G_terms | ( | JointState & | jForces | ) |
|
inline |
void iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::C_terms | ( | JointState & | jForces, |
const JointState & | qd | ||
) |
|
inline |
Updates all the kinematics transforms used by the inverse dynamics routine.
Referenced by iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::C_terms(), iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::G_terms(), and iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::id().
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
References iit::rbd::AZ, iit::testirb4600::JA, iit::testirb4600::JB, iit::testirb4600::JC, iit::testirb4600::JD, iit::testirb4600::JE, iit::testirb4600::JF, iit::testirb4600::LINK1, iit::testirb4600::LINK2, iit::testirb4600::LINK3, iit::testirb4600::LINK4, iit::testirb4600::LINK5, iit::testirb4600::LINK6, iit::rbd::LZ, iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::SCALAR, and iit::rbd::vxIv().
Referenced by iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::getForce_link6(), and iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::id().
|
protected |
References iit::rbd::AZ, iit::testirb4600::JA, iit::testirb4600::JB, iit::testirb4600::JC, iit::testirb4600::JD, iit::testirb4600::JE, and iit::testirb4600::JF.
Referenced by iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::C_terms(), iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::G_terms(), iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::getForce_link6(), and iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::id().
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef TRAIT::Scalar iit::testirb4600::dyn::tpl::InverseDynamics< TRAIT >::SCALAR |