rby1-sdk
Loading...
Searching...
No Matches
rb::dyn::Robot< DOF > Class Template Reference

Classes

struct  Joint_
 
struct  Link_
 
struct  LinkIdx_
 

Public Types

template<typename T , int N>
using ContainerType = typename std::conditional_t<(N > 0), std::array<T, (unsigned int)N>, std::vector<T>>
 

Public Member Functions

 Robot (const RobotConfiguration &robot_configuration)
 
void Compute2ndDiffForwardKinematics (std::shared_ptr< State< DOF > > state)
 
Eigen::Matrix< double, 6, DOF > ComputeBodyJacobian (std::shared_ptr< State< DOF > > state, unsigned int from, unsigned int to)
 
math::se3v::MatrixType ComputeBodyVelocity (std::shared_ptr< State< DOF > > state, unsigned int from, unsigned int to)
 
Eigen::Vector3d ComputeCenterOfMass (std::shared_ptr< State< DOF > > state, unsigned int ref_link)
 
Eigen::Vector3d ComputeCenterOfMass (std::shared_ptr< State< DOF > > state, unsigned int ref_link, const std::vector< unsigned int > &target_links)
 
Eigen::Vector3d ComputeCenterOfMass (std::shared_ptr< State< DOF > > state, unsigned int ref_link, unsigned int target_link)
 
Eigen::Matrix< double, 3, DOF > ComputeCenterOfMassJacobian (std::shared_ptr< State< DOF > > state, unsigned int ref_link)
 
Eigen::Matrix< double, 3, DOF > ComputeCenterOfMassJacobian (std::shared_ptr< State< DOF > > state, unsigned int ref_link, unsigned int target_link)
 
void ComputeDiffForwardKinematics (std::shared_ptr< State< DOF > > state)
 
void ComputeForwardKinematics (std::shared_ptr< State< DOF > > state)
 
Eigen::Vector< double, DOF > ComputeGravityTerm (std::shared_ptr< State< DOF > > state)
 
void ComputeInverseDynamics (std::shared_ptr< State< DOF > > state)
 
double ComputeMass (std::shared_ptr< State< DOF > > state, unsigned int target_link)
 
Eigen::Matrix< double, DOF, DOF > ComputeMassMatrix (std::shared_ptr< State< DOF > > state)
 
math::se2v::MatrixType ComputeMobilityDiffKinematics (std::shared_ptr< State< DOF > > state)
 
void ComputeMobilityInverseDiffKinematics (std::shared_ptr< State< DOF > > state, const Eigen::Vector2d &linear_velocity, double angular_velocity)
 
void ComputeMobilityInverseDiffKinematics (std::shared_ptr< State< DOF > > state, const math::se2v::MatrixType &body_velocity)
 
Eigen::Matrix< double, 6, 6 > ComputeReflectiveInertia (std::shared_ptr< State< DOF > > state, unsigned int from, unsigned int to)
 
Eigen::Matrix< double, 6, DOF > ComputeSpaceJacobian (std::shared_ptr< State< DOF > > state, unsigned int from, unsigned int to)
 
Inertial::MatrixType ComputeTotalInertial (std::shared_ptr< State< DOF > > state, unsigned int ref_link)
 
math::SE3::MatrixType ComputeTransformation (std::shared_ptr< State< DOF > > state, unsigned int from, unsigned int to)
 
std::vector< CollisionResultDetectCollisionsOrNearestLinks (std::shared_ptr< State< DOF > > state, int collision_threshold=0)
 
std::shared_ptr< LinkGetBase ()
 
std::shared_ptr< const LinkGetBase () const
 
int GetDOF () const
 
std::vector< std::string > GetJointNames () const
 
Eigen::Vector< double, DOF > GetJointProperty (const std::shared_ptr< State< DOF > > &state, const std::function< double(std::shared_ptr< Joint >)> &getter)
 
Eigen::Vector< double, DOF > GetLimitQddotLower (const std::shared_ptr< State< DOF > > &state)
 
Eigen::Vector< double, DOF > GetLimitQddotUpper (const std::shared_ptr< State< DOF > > &state)
 
Eigen::Vector< double, DOF > GetLimitQdotLower (const std::shared_ptr< State< DOF > > &state)
 
Eigen::Vector< double, DOF > GetLimitQdotUpper (const std::shared_ptr< State< DOF > > &state)
 
Eigen::Vector< double, DOF > GetLimitQLower (const std::shared_ptr< State< DOF > > &state)
 
Eigen::Vector< double, DOF > GetLimitQUpper (const std::shared_ptr< State< DOF > > &state)
 
Eigen::Vector< double, DOF > GetLimitTorque (const std::shared_ptr< State< DOF > > &state)
 
std::shared_ptr< LinkGetLink (const std::string &name) const
 
std::shared_ptr< LinkGetLink (std::shared_ptr< State< DOF > > state, int index) const
 
std::vector< std::string > GetLinkNames () const
 
int GetNumberOfJoints () const
 
template<typename LinkContainer = std::vector<std::string>, typename JointContainer = std::vector<std::string>>
std::shared_ptr< State< DOF > > MakeState (const LinkContainer &link_names, const JointContainer &joint_names)
 

Static Public Member Functions

static int CountJoints (const std::shared_ptr< Link > &base_link, bool include_fixed=false)
 

Protected Member Functions

void Build (const RobotConfiguration &rc)
 
Eigen::Matrix< double, 6, DOF > GetBodyJacobian (std::shared_ptr< State< DOF > > state, const LinkIdx_ &from, const LinkIdx_ &to)
 
math::SE3::MatrixType GetJointT (std::shared_ptr< State< DOF > > state, int joint_idx)
 
math::se3v::MatrixType GetJointV (std::shared_ptr< State< DOF > > state, int joint_idx)
 
math::se3v::MatrixType GetJointVdot (std::shared_ptr< State< DOF > > state, int joint_idx)
 
math::SE3::MatrixType GetLinkT (std::shared_ptr< State< DOF > > state, const LinkIdx_ &idx)
 
math::se3v::MatrixType GetLinkV (std::shared_ptr< State< DOF > > state, const LinkIdx_ &idx)
 
Eigen::Matrix< double, 6, DOF > GetSpaceJacobian (std::shared_ptr< State< DOF > > state, const LinkIdx_ &from, const LinkIdx_ &to)
 
math::SE3::MatrixType GetTransformation (std::shared_ptr< State< DOF > > state, const LinkIdx_ &from, const LinkIdx_ &to)
 

Member Function Documentation

◆ ComputeTotalInertial()

template<int DOF>
Inertial::MatrixType rb::dyn::Robot< DOF >::ComputeTotalInertial ( std::shared_ptr< State< DOF > > state,
unsigned int ref_link )
inline

Compute total inertial of robot

Parameters
state
ref_link
Returns

The documentation for this class was generated from the following files: