Drake
drake::systems::controllers::qp_inverse_dynamics Namespace Reference

Classes

class  BodyAcceleration
 This class holds spatial acceleration for a rigid body. More...
 
class  ConstrainedValues
 Base class for specifying various desired objectives. More...
 
class  ContactInformation
 This class describes contact related information for each body in contact with other bodies in the world. More...
 
struct  ContactParam
 A struct for holding contact-related parameters such as local offsets of the contact points, friction coefficient, etc. More...
 
class  DesiredBodyMotion
 A wrapper class specifying desired body motion (acceleration) for a rigid body and their corresponding weights for the QP. More...
 
class  DesiredCentroidalMomentumDot
 A wrapper class specifying desired centroidal momentum change and their corresponding weights for the QP. More...
 
class  DesiredDofMotions
 A wrapper class specifying desired DoF (degree of freedom) motions (acceleration) and their corresponding weights for the QP. More...
 
struct  DesiredMotionParam
 Struct for storing parameters for generating a desired acceleration objective \( \dot{v}_d \) for the QP inverse dynamics controller. More...
 
class  ParamSet
 A class for parsing and storing parameters that are used to generate QpInput for the inverse dynamics controller. More...
 
class  QpInput
 Input to the QP inverse dynamics controller. More...
 
class  QpInverseDynamics
 
class  QpInverseDynamicsSystem
 A discrete time system block for an inverse dynamics controller. More...
 
class  QpOutput
 Output of the QP inverse dynamics controller. More...
 
class  ResolvedContact
 This class holds contact force related information, and works closely with ContactInformation. More...
 
class  RobotKinematicState
 A wrapper class around KinematicsCache and several useful matrices such as the inertia matrix, etc. More...
 

Enumerations

enum  ConstraintType { Hard = -1, Skip = 0, Soft = 1 }
 Enum class for constraint types. More...
 

Functions

void DecodeBodyAcceleration (const RigidBodyTree< double > &robot, const lcmt_body_acceleration &msg, BodyAcceleration *acc)
 
void EncodeBodyAcceleration (const BodyAcceleration &acc, lcmt_body_acceleration *msg)
 
void DecodeResolvedContact (const RigidBodyTree< double > &robot, const lcmt_resolved_contact &msg, ResolvedContact *contact)
 
void EncodeResolvedContact (const ResolvedContact &contact, lcmt_resolved_contact *msg)
 
void DecodeQpInput (const RigidBodyTree< double > &robot, const lcmt_qp_input &msg, QpInput *qp_input)
 
void EncodeQpInput (const QpInput &qp_input, lcmt_qp_input *msg)
 
int8_t EncodeConstraintType (ConstraintType type)
 
ConstraintType DecodeConstraintType (int8_t type)
 
void DecodeDesiredBodyMotion (const RigidBodyTree< double > &robot, const lcmt_desired_body_motion &msg, DesiredBodyMotion *body_motion)
 
void EncodeDesiredBodyMotion (const DesiredBodyMotion &body_motion, lcmt_desired_body_motion *msg)
 
void DecodeDesiredDofMotions (const lcmt_desired_dof_motions &msg, DesiredDofMotions *dof_motions)
 
void EncodeDesiredDofMotions (const DesiredDofMotions &dof_motions, lcmt_desired_dof_motions *msg)
 
void DecodeDesiredCentroidalMomentumDot (const lcmt_desired_centroidal_momentum_dot &msg, DesiredCentroidalMomentumDot *momdot)
 
void EncodeDesiredCentroidalMomentumDot (const DesiredCentroidalMomentumDot &momdot, lcmt_desired_centroidal_momentum_dot *msg)
 
void DecodeConstrainedValues (const lcmt_constrained_values &msg, ConstrainedValues *val)
 
void EncodeConstrainedValues (const ConstrainedValues &val, lcmt_constrained_values *msg)
 
void DecodeContactInformation (const RigidBodyTree< double > &robot, const lcmt_contact_information &msg, ContactInformation *info)
 
void EncodeContactInformation (const ContactInformation &info, lcmt_contact_information *msg)
 
std::ostream & operator<< (std::ostream &out, const DesiredMotionParam &param)
 
std::ostream & operator<< (std::ostream &out, const ContactParam &param)
 
std::ostream & operator<< (std::ostream &out, const ConstraintType &type)
 
std::ostream & operator<< (std::ostream &out, const ContactInformation &contact)
 
std::ostream & operator<< (std::ostream &out, const DesiredBodyMotion &input)
 
std::ostream & operator<< (std::ostream &out, const DesiredDofMotions &input)
 
std::ostream & operator<< (std::ostream &out, const DesiredCentroidalMomentumDot &input)
 
std::ostream & operator<< (std::ostream &out, const QpInput &input)
 
std::ostream & operator<< (std::ostream &out, const ResolvedContact &contact)
 
std::ostream & operator<< (std::ostream &out, const BodyAcceleration &acc)
 
std::ostream & operator<< (std::ostream &out, const QpOutput &output)
 
template<typename T >
std::vector< std::string > GetDofNames (const RigidBodyTree< T > &robot)
 

Enumeration Type Documentation

enum ConstraintType
strong

Enum class for constraint types.

Hard: will be enforced by equality constraints. Soft: will be enforced by cost functions. Skip: will be ignored.

Enumerator
Hard 
Skip 
Soft 

Function Documentation

void DecodeBodyAcceleration ( const RigidBodyTree< double > &  robot,
const lcmt_body_acceleration &  msg,
BodyAcceleration acc 
)

Here is the call graph for this function:

void DecodeConstrainedValues ( const lcmt_constrained_values &  msg,
ConstrainedValues val 
)

Here is the call graph for this function:

Here is the caller graph for this function:

ConstraintType DecodeConstraintType ( int8_t  type)
Parameters
typeA constant defined in drake/lcmt_constrained_values.hpp. Should be one of these: lcmt_constrained_values::HARD, SKIP, SOFT.

Here is the caller graph for this function:

void DecodeContactInformation ( const RigidBodyTree< double > &  robot,
const lcmt_contact_information &  msg,
ContactInformation info 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void DecodeDesiredBodyMotion ( const RigidBodyTree< double > &  robot,
const lcmt_desired_body_motion &  msg,
DesiredBodyMotion body_motion 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void DecodeDesiredCentroidalMomentumDot ( const lcmt_desired_centroidal_momentum_dot &  msg,
DesiredCentroidalMomentumDot momdot 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void DecodeDesiredDofMotions ( const lcmt_desired_dof_motions &  msg,
DesiredDofMotions dof_motions 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void DecodeQpInput ( const RigidBodyTree< double > &  robot,
const lcmt_qp_input &  msg,
QpInput qp_input 
)

Here is the call graph for this function:

void DecodeResolvedContact ( const RigidBodyTree< double > &  robot,
const lcmt_resolved_contact &  msg,
ResolvedContact contact 
)

Here is the call graph for this function:

void EncodeBodyAcceleration ( const BodyAcceleration acc,
lcmt_body_acceleration *  msg 
)

Here is the call graph for this function:

void EncodeConstrainedValues ( const ConstrainedValues val,
lcmt_constrained_values *  msg 
)

Here is the call graph for this function:

Here is the caller graph for this function:

int8_t EncodeConstraintType ( ConstraintType  type)
Returns
A constant defined in drake/lcmt_constrained_values.hpp Should be one of these: lcmt_constrained_values::HARD, SKIP, SOFT.

Here is the caller graph for this function:

void EncodeContactInformation ( const ContactInformation info,
lcmt_contact_information *  msg 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void EncodeDesiredBodyMotion ( const DesiredBodyMotion body_motion,
lcmt_desired_body_motion *  msg 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void EncodeDesiredCentroidalMomentumDot ( const DesiredCentroidalMomentumDot momdot,
lcmt_desired_centroidal_momentum_dot *  msg 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void EncodeDesiredDofMotions ( const DesiredDofMotions dof_motions,
lcmt_desired_dof_motions *  msg 
)

Here is the call graph for this function:

Here is the caller graph for this function:

void EncodeQpInput ( const QpInput qp_input,
lcmt_qp_input *  msg 
)

Here is the call graph for this function:

void EncodeResolvedContact ( const ResolvedContact contact,
lcmt_resolved_contact *  msg 
)

Here is the call graph for this function:

std::vector<std::string> drake::systems::controllers::qp_inverse_dynamics::GetDofNames ( const RigidBodyTree< T > &  robot)

Here is the call graph for this function:

Here is the caller graph for this function:

std::ostream & operator<< ( std::ostream &  out,
const ConstraintType type 
)
std::ostream & operator<< ( std::ostream &  out,
const DesiredMotionParam param 
)

Here is the caller graph for this function:

std::ostream & operator<< ( std::ostream &  out,
const ContactParam param 
)
std::ostream & operator<< ( std::ostream &  out,
const ContactInformation contact 
)

Here is the call graph for this function:

std::ostream & operator<< ( std::ostream &  out,
const DesiredBodyMotion input 
)

Here is the call graph for this function:

std::ostream & operator<< ( std::ostream &  out,
const DesiredDofMotions input 
)

Here is the call graph for this function:

std::ostream & operator<< ( std::ostream &  out,
const DesiredCentroidalMomentumDot input 
)

Here is the call graph for this function:

std::ostream & operator<< ( std::ostream &  out,
const QpInput input 
)

Here is the call graph for this function:

std::ostream & operator<< ( std::ostream &  out,
const ResolvedContact contact 
)

Here is the call graph for this function:

std::ostream & operator<< ( std::ostream &  out,
const BodyAcceleration acc 
)

Here is the call graph for this function:

std::ostream & operator<< ( std::ostream &  out,
const QpOutput output 
)

Here is the call graph for this function: