Public Member Functions | Private Member Functions | Private Attributes | List of all members
exotica::JointLimit Class Reference

Implementation of joint limits task map. Note: we dont want to always stay at the centre of the joint range, be lazy as long as the joint is not too close to the low/high limits. More...

#include <joint_limit.h>

Inheritance diagram for exotica::JointLimit:
Inheritance graph
[legend]

Public Member Functions

void AssignScene (ScenePtr scene) override
 
int TaskSpaceDim () override
 
void Update (Eigen::VectorXdRefConst q, Eigen::VectorXdRef phi) override
 
void Update (Eigen::VectorXdRefConst q, Eigen::VectorXdRef phi, Eigen::MatrixXdRef jacobian) override
 
void Update (Eigen::VectorXdRefConst q, Eigen::VectorXdRef phi, Eigen::MatrixXdRef jacobian, HessianRef hessian) override
 
void Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRefConst u, Eigen::VectorXdRef phi) override
 
void Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRefConst u, Eigen::VectorXdRef phi, Eigen::MatrixXdRef dphi_dx, Eigen::MatrixXdRef dphi_du) override
 
void Update (Eigen::VectorXdRefConst x, Eigen::VectorXdRefConst u, Eigen::VectorXdRef phi, Eigen::MatrixXdRef dphi_dx, Eigen::MatrixXdRef dphi_du, HessianRef ddphi_ddx, HessianRef ddphi_ddu, HessianRef ddphi_dxdu) override
 
- Public Member Functions inherited from exotica::TaskMap
std::vector< KinematicFrameRequestGetFrames () const
 
virtual std::vector< TaskVectorEntryGetLieGroupIndices ()
 
virtual void InstantiateBase (const Initializer &init)
 
virtual void PreUpdate ()
 
virtual int TaskSpaceJacobianDim ()
 
- Public Member Functions inherited from exotica::Object
std::string GetObjectName ()
 
void InstantiateObject (const Initializer &init)
 
 Object ()
 
virtual std::string Print (const std::string &prepend) const
 
virtual std::string type () const
 
virtual ~Object ()
 
- Public Member Functions inherited from exotica::InstantiableBase
 InstantiableBase ()=default
 
virtual ~InstantiableBase ()=default
 
- Public Member Functions inherited from exotica::Instantiable< JointLimitInitializer >
std::vector< InitializerGetAllTemplates () const override
 
Initializer GetInitializerTemplate () override
 
const JointLimitInitializer & GetParameters () const
 
virtual void Instantiate (const JointLimitInitializer &init)
 
void InstantiateInternal (const Initializer &init) override
 

Private Member Functions

void Initialize ()
 

Private Attributes

int N
 
double safe_percentage_
 

Additional Inherited Members

- Public Attributes inherited from exotica::TaskMap
int id
 
bool is_used
 
std::vector< KinematicSolutionkinematics
 
int length
 
int length_jacobian
 
int start
 
int start_jacobian
 
- Public Attributes inherited from exotica::Object
bool debug_
 
std::string ns_
 
std::string object_name_
 
- Protected Attributes inherited from exotica::TaskMap
std::vector< KinematicFrameRequestframes_
 
ScenePtr scene_
 
- Protected Attributes inherited from exotica::Instantiable< JointLimitInitializer >
JointLimitInitializer parameters_
 

Detailed Description

Implementation of joint limits task map. Note: we dont want to always stay at the centre of the joint range, be lazy as long as the joint is not too close to the low/high limits.

Definition at line 42 of file joint_limit.h.

Member Function Documentation

void exotica::JointLimit::AssignScene ( ScenePtr  scene)
overridevirtual

Reimplemented from exotica::TaskMap.

Definition at line 36 of file joint_limit.cpp.

void exotica::JointLimit::Initialize ( )
private

Definition at line 42 of file joint_limit.cpp.

int exotica::JointLimit::TaskSpaceDim ( )
overridevirtual

Implements exotica::TaskMap.

Definition at line 48 of file joint_limit.cpp.

void exotica::JointLimit::Update ( Eigen::VectorXdRefConst  q,
Eigen::VectorXdRef  phi 
)
overridevirtual

Implements exotica::TaskMap.

Definition at line 53 of file joint_limit.cpp.

void exotica::JointLimit::Update ( Eigen::VectorXdRefConst  q,
Eigen::VectorXdRef  phi,
Eigen::MatrixXdRef  jacobian 
)
overridevirtual

Reimplemented from exotica::TaskMap.

Definition at line 68 of file joint_limit.cpp.

void exotica::JointLimit::Update ( Eigen::VectorXdRefConst  q,
Eigen::VectorXdRef  phi,
Eigen::MatrixXdRef  jacobian,
HessianRef  hessian 
)
overridevirtual

Reimplemented from exotica::TaskMap.

Definition at line 91 of file joint_limit.cpp.

void exotica::JointLimit::Update ( Eigen::VectorXdRefConst  x,
Eigen::VectorXdRefConst  u,
Eigen::VectorXdRef  phi 
)
overridevirtual

Reimplemented from exotica::TaskMap.

Definition at line 98 of file joint_limit.cpp.

void exotica::JointLimit::Update ( Eigen::VectorXdRefConst  x,
Eigen::VectorXdRefConst  u,
Eigen::VectorXdRef  phi,
Eigen::MatrixXdRef  dphi_dx,
Eigen::MatrixXdRef  dphi_du 
)
overridevirtual

Reimplemented from exotica::TaskMap.

Definition at line 103 of file joint_limit.cpp.

void exotica::JointLimit::Update ( Eigen::VectorXdRefConst  x,
Eigen::VectorXdRefConst  u,
Eigen::VectorXdRef  phi,
Eigen::MatrixXdRef  dphi_dx,
Eigen::MatrixXdRef  dphi_du,
HessianRef  ddphi_ddx,
HessianRef  ddphi_ddu,
HessianRef  ddphi_dxdu 
)
overridevirtual

Reimplemented from exotica::TaskMap.

Definition at line 108 of file joint_limit.cpp.

Member Data Documentation

int exotica::JointLimit::N
private

Definition at line 61 of file joint_limit.h.

double exotica::JointLimit::safe_percentage_
private

Definition at line 60 of file joint_limit.h.


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


exotica_core_task_maps
Author(s): Yiming Yang, Michael Camilleri
autogenerated on Sat Apr 10 2021 02:36:09