Public Member Functions | Private Member Functions | Private Attributes | List of all members
JointLimitAvoidanceIneq< T_PARAMS, PRIO > Class Template Reference

Class providing methods that realize a JointLimitAvoidance constraint based on inequalities. More...

#include <constraint.h>

Inheritance diagram for JointLimitAvoidanceIneq< T_PARAMS, PRIO >:
Inheritance graph
[legend]

Public Member Functions

virtual void calculate ()
 
virtual double getActivationGain () const
 
virtual double getSelfMotionMagnitude (const Eigen::MatrixXd &particular_solution, const Eigen::MatrixXd &homogeneous_solution) const
 Returns a value for k_H to weight the partial values for e.g. GPM. More...
 
virtual Eigen::VectorXd getTaskDerivatives () const
 
virtual std::string getTaskId () const
 
virtual Eigen::MatrixXd getTaskJacobian () const
 
 JointLimitAvoidanceIneq (PRIO prio, T_PARAMS constraint_params, CallbackDataMediator &cbdm)
 
virtual ~JointLimitAvoidanceIneq ()
 
- Public Member Functions inherited from ConstraintBase< T_PARAMS, uint32_t >
 ConstraintBase (uint32_t prio, T_PARAMS params, CallbackDataMediator &cbdm)
 
virtual Task_t createTask ()
 
virtual double getActivationGain () const=0
 
virtual double getDerivativeValue () const
 
virtual Eigen::VectorXd getPartialValues () const
 
virtual double getPredictionValue () const
 
virtual ConstraintState getState () const
 
virtual Eigen::VectorXd getTaskDerivatives () const
 
virtual std::string getTaskId () const=0
 
virtual Eigen::MatrixXd getTaskJacobian () const
 
virtual double getValue () const
 
virtual void update (const JointStates &joint_states, const KDL::JntArrayVel &joints_prediction, const Matrix6Xd_t &jacobian_data)
 
virtual ~ConstraintBase ()
 
- Public Member Functions inherited from PriorityBase< uint32_t >
uint32_t getPriority () const
 
double getPriorityAsNum () const
 Ensure priority class has overwritten double() operator. More...
 
bool operator< (const PriorityBase &other) const
 
bool operator== (const PriorityBase &other) const
 
bool operator> (const PriorityBase &other) const
 
 PriorityBase (uint32_t prio)
 
void setPriority (uint32_t prio)
 
virtual ~PriorityBase ()
 

Private Member Functions

void calcDerivativeValue ()
 Simple first order differential equation for exponential increase (move away from limit!) More...
 
void calcPartialValues ()
 Calculates values of the gradient of the cost function. More...
 
void calcValue ()
 Calculate values of the JLA cost function. More...
 

Private Attributes

double abs_delta_max_
 
double abs_delta_min_
 
double rel_max_
 
double rel_min_
 

Additional Inherited Members

- Protected Member Functions inherited from ConstraintBase< T_PARAMS, uint32_t >
virtual double getCriticalValue () const
 
- Protected Attributes inherited from ConstraintBase< T_PARAMS, uint32_t >
CallbackDataMediatorcallback_data_mediator_
 
T_PARAMS constraint_params_
 
double derivative_value_
 
Matrix6Xd_t jacobian_data_
 
KDL::JntArrayVel jnts_prediction_
 
JointStates joint_states_
 
ros::Time last_pred_time_
 
ros::Time last_time_
 
double last_value_
 
uint32_t member_inst_cnt_
 
Eigen::VectorXd partial_values_
 
double prediction_value_
 
ConstraintState state_
 
double value_
 
- Protected Attributes inherited from PriorityBase< uint32_t >
uint32_t priority_
 
- Static Protected Attributes inherited from ConstraintBase< T_PARAMS, uint32_t >
static uint32_t instance_ctr_
 

Detailed Description

template<typename T_PARAMS, typename PRIO = uint32_t>
class JointLimitAvoidanceIneq< T_PARAMS, PRIO >

Class providing methods that realize a JointLimitAvoidance constraint based on inequalities.

Definition at line 171 of file constraint.h.

Constructor & Destructor Documentation

◆ JointLimitAvoidanceIneq()

template<typename T_PARAMS , typename PRIO = uint32_t>
JointLimitAvoidanceIneq< T_PARAMS, PRIO >::JointLimitAvoidanceIneq ( PRIO  prio,
T_PARAMS  constraint_params,
CallbackDataMediator cbdm 
)
inline

Definition at line 174 of file constraint.h.

◆ ~JointLimitAvoidanceIneq()

template<typename T_PARAMS , typename PRIO = uint32_t>
virtual JointLimitAvoidanceIneq< T_PARAMS, PRIO >::~JointLimitAvoidanceIneq ( )
inlinevirtual

Definition at line 184 of file constraint.h.

Member Function Documentation

◆ calcDerivativeValue()

template<typename T_PARAMS , typename PRIO >
void JointLimitAvoidanceIneq< T_PARAMS, PRIO >::calcDerivativeValue
private

Simple first order differential equation for exponential increase (move away from limit!)

Definition at line 460 of file constraint_jla_impl.h.

◆ calcPartialValues()

template<typename T_PARAMS , typename PRIO >
void JointLimitAvoidanceIneq< T_PARAMS, PRIO >::calcPartialValues
private

Calculates values of the gradient of the cost function.

Definition at line 467 of file constraint_jla_impl.h.

◆ calculate()

template<typename T_PARAMS , typename PRIO >
void JointLimitAvoidanceIneq< T_PARAMS, PRIO >::calculate
virtual

Implements ConstraintBase< T_PARAMS, uint32_t >.

Definition at line 325 of file constraint_jla_impl.h.

◆ calcValue()

template<typename T_PARAMS , typename PRIO >
void JointLimitAvoidanceIneq< T_PARAMS, PRIO >::calcValue
private

Calculate values of the JLA cost function.

Definition at line 445 of file constraint_jla_impl.h.

◆ getActivationGain()

template<typename T_PARAMS , typename PRIO >
double JointLimitAvoidanceIneq< T_PARAMS, PRIO >::getActivationGain
virtual

Definition at line 378 of file constraint_jla_impl.h.

◆ getSelfMotionMagnitude()

template<typename T_PARAMS , typename PRIO >
double JointLimitAvoidanceIneq< T_PARAMS, PRIO >::getSelfMotionMagnitude ( const Eigen::MatrixXd &  particular_solution,
const Eigen::MatrixXd &  homogeneous_solution 
) const
virtual

Returns a value for k_H to weight the partial values for e.g. GPM.

Implements ConstraintBase< T_PARAMS, uint32_t >.

Definition at line 419 of file constraint_jla_impl.h.

◆ getTaskDerivatives()

template<typename T_PARAMS , typename PRIO >
Eigen::VectorXd JointLimitAvoidanceIneq< T_PARAMS, PRIO >::getTaskDerivatives
virtual

Definition at line 319 of file constraint_jla_impl.h.

◆ getTaskId()

template<typename T_PARAMS , typename PRIO >
std::string JointLimitAvoidanceIneq< T_PARAMS, PRIO >::getTaskId
virtual

Definition at line 302 of file constraint_jla_impl.h.

◆ getTaskJacobian()

template<typename T_PARAMS , typename PRIO >
Eigen::MatrixXd JointLimitAvoidanceIneq< T_PARAMS, PRIO >::getTaskJacobian
virtual

Definition at line 313 of file constraint_jla_impl.h.

Member Data Documentation

◆ abs_delta_max_

template<typename T_PARAMS , typename PRIO = uint32_t>
double JointLimitAvoidanceIneq< T_PARAMS, PRIO >::abs_delta_max_
private

Definition at line 201 of file constraint.h.

◆ abs_delta_min_

template<typename T_PARAMS , typename PRIO = uint32_t>
double JointLimitAvoidanceIneq< T_PARAMS, PRIO >::abs_delta_min_
private

Definition at line 202 of file constraint.h.

◆ rel_max_

template<typename T_PARAMS , typename PRIO = uint32_t>
double JointLimitAvoidanceIneq< T_PARAMS, PRIO >::rel_max_
private

Definition at line 203 of file constraint.h.

◆ rel_min_

template<typename T_PARAMS , typename PRIO = uint32_t>
double JointLimitAvoidanceIneq< T_PARAMS, PRIO >::rel_min_
private

Definition at line 204 of file constraint.h.


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


cob_twist_controller
Author(s): Felix Messmer , Marco Bezzon , Christoph Mark , Francisco Moreno
autogenerated on Mon May 1 2023 02:44:43