1 #ifndef IIT_TESTIRB4600_INVERSE_DYNAMICS_H_ 2 #define IIT_TESTIRB4600_INVERSE_DYNAMICS_H_ 13 #include "transforms.h" 17 namespace testirb4600 {
41 template <
typename TRAIT>
44 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
46 typedef typename TRAIT::Scalar
SCALAR;
57 typedef iit::testirb4600::tpl::MotionTransforms<TRAIT>
MTransforms;
83 const JointState& q,
const JointState& qd,
const JointState& qdd,
84 const ExtForces& fext = zeroExtForces);
87 const JointState& qd,
const JointState& qdd,
88 const ExtForces& fext = zeroExtForces);
95 void G_terms(JointState& jForces,
const JointState& q);
97 void G_terms(JointState& jForces);
104 void C_terms(JointState& jForces,
const JointState& q,
const JointState& qd);
106 void C_terms(JointState& jForces,
const JointState& qd);
149 void firstPass(
const JointState& qd,
const JointState& qdd,
const ExtForces& fext);
153 IProperties* inertiaProps;
158 const InertiaMatrix& link1_I;
160 Acceleration link1_a;
163 const InertiaMatrix& link2_I;
165 Acceleration link2_a;
168 const InertiaMatrix& link3_I;
170 Acceleration link3_a;
173 const InertiaMatrix& link4_I;
175 Acceleration link4_a;
178 const InertiaMatrix& link5_I;
180 Acceleration link5_a;
183 const InertiaMatrix& link6_I;
185 Acceleration link6_a;
190 static const ExtForces zeroExtForces;
193 template <
typename TRAIT>
196 (xm->fr_link1_X_fr_link0)(q);
197 (xm->fr_link2_X_fr_link1)(q);
198 (xm->fr_link3_X_fr_link2)(q);
199 (xm->fr_link4_X_fr_link3)(q);
200 (xm->fr_link5_X_fr_link4)(q);
201 (xm->fr_link6_X_fr_link5)(q);
204 template <
typename TRAIT>
211 template <
typename TRAIT>
218 template <
typename TRAIT>
225 id(jForces, qd, qdd, fext);
CoreS::Matrix66 Matrix66s
Definition: inverse_dynamics.h:56
InverseDynamics(IProperties &in, MTransforms &tr)
Definition: inverse_dynamics.impl.h:8
const Force & getForce_link6() const
Definition: inverse_dynamics.h:146
PlainMatrix< Scalar, 6, 6 > Matrix66
Definition: rbd.h:79
Definition: inverse_dynamics.h:42
const Force & getForce_link2() const
Definition: inverse_dynamics.h:134
iit::testirb4600::tpl::JointState< SCALAR > JointState
Definition: inverse_dynamics.h:55
const Velocity & getVelocity_link1() const
Definition: inverse_dynamics.h:129
void firstPass(const JointState &qd, const JointState &qdd, const ExtForces &fext)
Definition: inverse_dynamics.impl.h:130
const Velocity & getVelocity_link4() const
Definition: inverse_dynamics.h:138
Definition: InertiaMatrix.h:25
const Acceleration & getAcceleration_link2() const
Definition: inverse_dynamics.h:133
const Velocity & getVelocity_link3() const
Definition: inverse_dynamics.h:135
CoreS::VelocityVector Acceleration
Definition: inverse_dynamics.h:53
const Velocity & getVelocity_link2() const
Definition: inverse_dynamics.h:132
CoreS::VelocityVector Velocity
Definition: inverse_dynamics.h:52
Definition: inertia_properties.h:25
const Force & getForce_link3() const
Definition: inverse_dynamics.h:137
const Acceleration & getAcceleration_link1() const
Definition: inverse_dynamics.h:130
LinkDataMap< Force > ExtForces
Definition: inverse_dynamics.h:51
void id(JointState &jForces, const JointState &q, const JointState &qd, const JointState &qdd, const ExtForces &fext=zeroExtForces)
Definition: inverse_dynamics.h:219
Definition: link_data_map.h:12
void G_terms(JointState &jForces, const JointState &q)
Definition: inverse_dynamics.h:205
iit::testirb4600::tpl::MotionTransforms< TRAIT > MTransforms
Definition: inverse_dynamics.h:57
Vector6D ForceVector
a 3D subvector of a 6D vector
Definition: rbd.h:92
const Acceleration & getAcceleration_link4() const
Definition: inverse_dynamics.h:139
CoreS::ForceVector Force
Definition: inverse_dynamics.h:50
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef TRAIT::Scalar SCALAR
Definition: inverse_dynamics.h:46
const Force & getForce_link1() const
Definition: inverse_dynamics.h:131
const Acceleration & getAcceleration_link3() const
Definition: inverse_dynamics.h:136
void setJointStatus(const JointState &q) const
Definition: inverse_dynamics.h:194
iit::rbd::Core< SCALAR > CoreS
Definition: inverse_dynamics.h:48
const Force & getForce_link4() const
Definition: inverse_dynamics.h:140
void C_terms(JointState &jForces, const JointState &q, const JointState &qd)
Definition: inverse_dynamics.h:212
Column6d< SCALAR > JointState
Definition: declarations.h:19
const Velocity & getVelocity_link6() const
Definition: inverse_dynamics.h:144
iit::rbd::tpl::InertiaMatrixDense< SCALAR > InertiaMatrix
Definition: inverse_dynamics.h:54
Vector6D VelocityVector
a 3D subvector of a 6D vector
Definition: rbd.h:91
const Acceleration & getAcceleration_link6() const
Definition: inverse_dynamics.h:145
const Velocity & getVelocity_link5() const
Definition: inverse_dynamics.h:141
const Acceleration & getAcceleration_link5() const
Definition: inverse_dynamics.h:142
const Force & getForce_link5() const
Definition: inverse_dynamics.h:143
void secondPass(JointState &jForces)
Definition: inverse_dynamics.impl.h:197
InertiaProperties< TRAIT > IProperties
Definition: inverse_dynamics.h:58