This is a class for expressing the RBD equations of an articulated robot as an operational model. It uses the RBDContainer class as an interface to access the generated code for an articulated robot.
More...
|
enum | { NUM_OUTPUTS = RBDContainer::NJOINTS + 6,
NUM_JOINTS = RBDContainer::NJOINTS
} |
|
typedef Eigen::Matrix< SCALAR, 3, 1 > | Vector3s |
|
typedef std::shared_ptr< OperationalModelRBD< RBDContainer, NUM_CONTACTPOINTS > > | ptr |
|
typedef OperationalModelBase< NUM_OUTPUTS, NUM_JOINTS, NUM_CONTACTPOINTS > | Base |
|
typedef Base::state_t | state_t |
|
typedef std::shared_ptr< OperationalModelBase< NUM_OUTPUTS, NUM_JOINTS, NUM_CONTACTPOINTS > > | ptr |
|
typedef CoordinateBase< NUM_OUTPUTS, NUM_JOINTS >::ptr | coordinate_class_ptr_t |
|
typedef OperationalJacobianBase< NUM_OUTPUTS, NUM_JOINTS >::ptr | jacobian_class_ptr_t |
|
typedef OperationalJacobianBase< NUM_OUTPUTS, NUM_JOINTS >::jacobian_t | jacobian_t |
|
typedef OperationalJacobianBase< NUM_OUTPUTS, NUM_JOINTS >::jacobian_inv_t | jacobian_inv_t |
|
typedef RBDState< NUM_JOINTS > | state_t |
|
typedef Eigen::Matrix< double, NUM_OUTPUTS, NUM_OUTPUTS > | M_t |
|
typedef Eigen::Matrix< double, NUM_OUTPUTS, 1 > | C_t |
|
typedef Eigen::Matrix< double, NUM_OUTPUTS, 1 > | G_t |
|
typedef Eigen::Matrix< double, NUM_JOINTS, NUM_OUTPUTS > | S_t |
|
typedef Eigen::Matrix< double, 3, NUM_OUTPUTS > | Jc_t |
|
|
| OperationalModelRBD (const typename RBDContainer::Ptr_t &rbdContainerPtr, const std::array< EndEffector< NUM_JOINTS >, NUM_CONTACTPOINTS > &endEffectorArray) |
|
| ~OperationalModelRBD () |
|
void | update (const state_t &state) override |
|
| OperationalModelBase (const jacobian_class_ptr_t &jacobianPtr=nullptr, const coordinate_class_ptr_t &coordinatePtr=nullptr) |
|
virtual | ~OperationalModelBase () |
|
const M_t & | M () const |
| Get the inertia matrix: M. More...
|
|
const M_t & | MInverse () const |
| Get the inertia matrix inverse: M^{-1}. More...
|
|
const C_t & | C () const |
| Get the Coriolis force vector: C. More...
|
|
const G_t & | G () const |
| Get the gravity force vector: G. More...
|
|
const S_t & | S () const |
| Get the selection matrix: S. More...
|
|
const std::array< Jc_t, NUM_CONTACTPOINTS > & | AllJc () const |
| Get all of the contact Jacobians: Jc. More...
|
|
const Jc_t & | Jc (size_t i) const |
| Get the ith contact Jacobian: Jc[i]. More...
|
|
Eigen::Matrix< double, NUM_OUTPUTS, 1 > | getPositions () |
| Get the coordinate position. More...
|
|
Eigen::Matrix< double, NUM_OUTPUTS, 1 > | getVelocities () |
| Get the coordinate velocity. More...
|
|
Eigen::Matrix< double, NUM_OUTPUTS, 1 > | getAccelerations (Eigen::Matrix< double, NUM_JOINTS+6, 1 > qdd) |
| Get the coordinate acceleration. More...
|
|
template<class RBDContainer, size_t NUM_CONTACTPOINTS, typename SCALAR = double>
class ct::rbd::tpl::OperationalModelRBD< RBDContainer, NUM_CONTACTPOINTS, SCALAR >
This is a class for expressing the RBD equations of an articulated robot as an operational model. It uses the RBDContainer class as an interface to access the generated code for an articulated robot.