|
| InverseDynamics (IProperties &in, MTransforms &tr) |
|
void | setJointStatus (const JointState &q) const |
|
|
The full algorithm for the inverse dynamics of this robot.
All the spatial vectors in the parameters are expressed in base coordinates, besides the external forces: each force must be expressed in the reference frame of the link it is acting on. - Parameters
-
[out] | jForces | the joint force vector required to achieve the desired accelerations |
[out] | baseAccel | the spatial acceleration of the robot base |
[in] | g | the gravity acceleration, as a spatial vector; gravity implicitly specifies the orientation of the base in space |
[in] | trunk_v | the spatial velocity of the base |
[in] | q | the joint position vector |
[in] | qd | the joint velocity vector |
[in] | qdd | the desired joint acceleration vector |
[in] | fext | the external forces acting on the links; this parameters defaults to zero |
|
void | id (JointState &jForces, Acceleration &trunk_a, const Acceleration &g, const Velocity &trunk_v, const JointState &q, const JointState &qd, const JointState &qdd, const ExtForces &fext=zeroExtForces) |
|
void | id (JointState &jForces, Acceleration &trunk_a, const Acceleration &g, const Velocity &trunk_v, const JointState &qd, const JointState &qdd, const ExtForces &fext=zeroExtForces) |
|
|
The inverse dynamics algorithm for the floating base robot, in the assumption of a fully actuated base.
All the spatial vectors in the parameters are expressed in base coordinates, besides the external forces: each force must be expressed in the reference frame of the link it is acting on. - Parameters
-
[out] | baseWrench | the spatial force to be applied to the robot base to achieve the desired accelerations |
[out] | jForces | the joint force vector required to achieve the desired accelerations |
[in] | g | the gravity acceleration, as a spatial vector; gravity implicitly specifies the orientation of the base in space |
[in] | trunk_v | the spatial velocity of the base |
[in] | baseAccel | the desired spatial acceleration of the robot base |
[in] | q | the joint position vector |
[in] | qd | the joint velocity vector |
[in] | qdd | the desired joint acceleration vector |
[in] | fext | the external forces acting on the links; this parameters defaults to zero |
|
void | id_fully_actuated (Force &baseWrench, JointState &jForces, const Acceleration &g, const Velocity &trunk_v, const Acceleration &baseAccel, const JointState &q, const JointState &qd, const JointState &qdd, const ExtForces &fext=zeroExtForces) |
|
void | id_fully_actuated (Force &baseWrench, JointState &jForces, const Acceleration &g, const Velocity &trunk_v, const Acceleration &baseAccel, const JointState &qd, const JointState &qdd, const ExtForces &fext=zeroExtForces) |
|
|
void | G_terms_fully_actuated (Force &baseWrench, JointState &jForces, const Acceleration &g, const JointState &q) |
|
void | G_terms_fully_actuated (Force &baseWrench, JointState &jForces, const Acceleration &g) |
|
|
These functions take only velocity inputs, that is, they assume a zero spatial acceleration of the base (in addition to zero acceleration at the actuated joints). Note that this is NOT the same as imposing zero acceleration at the virtual 6-dof-floting-base joint, which would result, in general, in a non-zero spatial acceleration of the base, due to velocity product terms.
|
void | C_terms_fully_actuated (Force &baseWrench, JointState &jForces, const Velocity &trunk_v, const JointState &q, const JointState &qd) |
|
void | C_terms_fully_actuated (Force &baseWrench, JointState &jForces, const Velocity &trunk_v, const JointState &qd) |
|
|
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 Force & | getForce_trunk () const |
|
const Velocity & | getVelocity_LF_hipassembly () const |
|
const Acceleration & | getAcceleration_LF_hipassembly () const |
|
const Force & | getForce_LF_hipassembly () const |
|
const Velocity & | getVelocity_LF_upperleg () const |
|
const Acceleration & | getAcceleration_LF_upperleg () const |
|
const Force & | getForce_LF_upperleg () const |
|
const Velocity & | getVelocity_LF_lowerleg () const |
|
const Acceleration & | getAcceleration_LF_lowerleg () const |
|
const Force & | getForce_LF_lowerleg () const |
|
const Velocity & | getVelocity_RF_hipassembly () const |
|
const Acceleration & | getAcceleration_RF_hipassembly () const |
|
const Force & | getForce_RF_hipassembly () const |
|
const Velocity & | getVelocity_RF_upperleg () const |
|
const Acceleration & | getAcceleration_RF_upperleg () const |
|
const Force & | getForce_RF_upperleg () const |
|
const Velocity & | getVelocity_RF_lowerleg () const |
|
const Acceleration & | getAcceleration_RF_lowerleg () const |
|
const Force & | getForce_RF_lowerleg () const |
|
const Velocity & | getVelocity_LH_hipassembly () const |
|
const Acceleration & | getAcceleration_LH_hipassembly () const |
|
const Force & | getForce_LH_hipassembly () const |
|
const Velocity & | getVelocity_LH_upperleg () const |
|
const Acceleration & | getAcceleration_LH_upperleg () const |
|
const Force & | getForce_LH_upperleg () const |
|
const Velocity & | getVelocity_LH_lowerleg () const |
|
const Acceleration & | getAcceleration_LH_lowerleg () const |
|
const Force & | getForce_LH_lowerleg () const |
|
const Velocity & | getVelocity_RH_hipassembly () const |
|
const Acceleration & | getAcceleration_RH_hipassembly () const |
|
const Force & | getForce_RH_hipassembly () const |
|
const Velocity & | getVelocity_RH_upperleg () const |
|
const Acceleration & | getAcceleration_RH_upperleg () const |
|
const Force & | getForce_RH_upperleg () const |
|
const Velocity & | getVelocity_RH_lowerleg () const |
|
const Acceleration & | getAcceleration_RH_lowerleg () const |
|
const Force & | getForce_RH_lowerleg () const |
|