1 #ifndef IIT_CT_QUADROTOR_INVERSE_DYNAMICS_H_ 2 #define IIT_CT_QUADROTOR_INVERSE_DYNAMICS_H_ 13 #include "transforms.h" 17 namespace ct_quadrotor {
41 template <
typename TRAIT>
44 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
57 typedef iit::ct_quadrotor::tpl::MotionTransforms<TRAIT>
MTransforms;
88 JointState& jForces, Acceleration& body_a,
89 const Acceleration& g,
const Velocity& body_v,
90 const JointState& q,
const JointState& qd,
const JointState& qdd,
91 const ExtForces& fext = zeroExtForces);
93 JointState& jForces, Acceleration& body_a,
94 const Acceleration& g,
const Velocity& body_v,
95 const JointState& qd,
const JointState& qdd,
96 const ExtForces& fext = zeroExtForces);
119 Force& baseWrench, JointState& jForces,
120 const Acceleration& g,
const Velocity& body_v,
const Acceleration& baseAccel,
121 const JointState& q,
const JointState& qd,
const JointState& qdd,
const ExtForces& fext = zeroExtForces);
123 Force& baseWrench, JointState& jForces,
124 const Acceleration& g,
const Velocity& body_v,
const Acceleration& baseAccel,
125 const JointState& qd,
const JointState& qdd,
const ExtForces& fext = zeroExtForces);
131 Force& baseWrench, JointState& jForces,
132 const Acceleration& g,
const JointState& q);
134 Force& baseWrench, JointState& jForces,
135 const Acceleration& g);
149 Force& baseWrench, JointState& jForces,
150 const Velocity& body_v,
const JointState& q,
const JointState& qd);
152 Force& baseWrench, JointState& jForces,
153 const Velocity& body_v,
const JointState& qd);
188 IProperties* inertiaProps;
193 const InertiaMatrix& link1_I;
195 Acceleration link1_a;
198 const InertiaMatrix& link2_I;
200 Acceleration link2_a;
204 const InertiaMatrix& body_I;
205 InertiaMatrix body_Ic;
208 InertiaMatrix link1_Ic;
209 const InertiaMatrix& link2_Ic;
212 static const ExtForces zeroExtForces;
215 template <
typename TRAIT>
218 (xm->fr_link1_X_fr_body)(q);
219 (xm->fr_link2_X_fr_link1)(q);
222 template <
typename TRAIT>
230 id(jForces, body_a, g, body_v,
234 template <
typename TRAIT>
243 template <
typename TRAIT>
252 template <
typename TRAIT>
260 baseAccel, qd, qdd, fext);
Column2d< SCALAR > JointState
Definition: declarations.h:19
CoreS::VelocityVector Velocity
Definition: inverse_dynamics.h:52
PlainMatrix< Scalar, 6, 6 > Matrix66
InertiaProperties< TRAIT > IProperties
Definition: inverse_dynamics.h:58
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef TRAIT::Scalar SCALAR
Definition: inverse_dynamics.h:46
iit::rbd::tpl::InertiaMatrixDense< SCALAR > InertiaMatrix
Definition: inverse_dynamics.h:54
LinkDataMap< Force > ExtForces
Definition: inverse_dynamics.h:51
const Velocity & getVelocity_link2() const
Definition: inverse_dynamics.h:180
void C_terms_fully_actuated(Force &baseWrench, JointState &jForces, const Velocity &body_v, const JointState &q, const JointState &qd)
Definition: inverse_dynamics.h:244
CoreS::ForceVector Force
Definition: inverse_dynamics.h:50
ct::core::ADCodegenLinearizer< state_dim, control_dim >::ADCGScalar Scalar
Definition: HyALinearizationCodeGen.cpp:23
Definition: inverse_dynamics.h:42
iit::ct_quadrotor::tpl::MotionTransforms< TRAIT > MTransforms
Definition: inverse_dynamics.h:57
const Velocity & getVelocity_link1() const
Definition: inverse_dynamics.h:177
void G_terms_fully_actuated(Force &baseWrench, JointState &jForces, const Acceleration &g, const JointState &q)
Definition: inverse_dynamics.h:235
void id_fully_actuated(Force &baseWrench, JointState &jForces, const Acceleration &g, const Velocity &body_v, const Acceleration &baseAccel, const JointState &q, const JointState &qd, const JointState &qdd, const ExtForces &fext=zeroExtForces)
Definition: inverse_dynamics.h:253
Definition: inertia_properties.h:25
void id(JointState &jForces, Acceleration &body_a, const Acceleration &g, const Velocity &body_v, const JointState &q, const JointState &qd, const JointState &qdd, const ExtForces &fext=zeroExtForces)
Definition: inverse_dynamics.h:223
const Force & getForce_link1() const
Definition: inverse_dynamics.h:179
iit::ct_quadrotor::tpl::JointState< SCALAR > JointState
Definition: inverse_dynamics.h:55
Definition: link_data_map.h:12
const Acceleration & getAcceleration_link2() const
Definition: inverse_dynamics.h:181
const Force & getForce_link2() const
Definition: inverse_dynamics.h:182
const Force & getForce_body() const
Definition: inverse_dynamics.h:176
InverseDynamics(IProperties &in, MTransforms &tr)
Definition: inverse_dynamics.impl.h:8
CoreS::VelocityVector Acceleration
Definition: inverse_dynamics.h:53
void setJointStatus(const JointState &q) const
Definition: inverse_dynamics.h:216
iit::rbd::Core< SCALAR > CoreS
Definition: inverse_dynamics.h:48
CoreS::Matrix66 Matrix66s
Definition: inverse_dynamics.h:56
void secondPass_fullyActuated(JointState &jForces)
Definition: inverse_dynamics.impl.h:176
const Acceleration & getAcceleration_link1() const
Definition: inverse_dynamics.h:178