sot-core  4.11.8
Hierarchical task solver plug-in for dynamic-graph.
dynamicgraph::sot::Task Class Reference

Class that defines the basic elements of a task. More...

#include "Definition"

Inheritance diagram for dynamicgraph::sot::Task:

Public Types

typedef std::list< FeatureAbstract * > FeatureList_t
 

Public Member Functions

 Task (const std::string &n)
 
void initCommands (void)
 
void addFeature (FeatureAbstract &s)
 
void addFeatureFromName (const std::string &name)
 
void clearFeatureList (void)
 
FeatureList_tgetFeatureList (void)
 
void setControlSelection (const Flags &act)
 
void addControlSelection (const Flags &act)
 
void clearControlSelection (void)
 
void setWithDerivative (const bool &s)
 
bool getWithDerivative (void)
 
dynamicgraph::Vector & computeError (dynamicgraph::Vector &error, int time)
 
VectorMultiBoundcomputeTaskExponentialDecrease (VectorMultiBound &errorRef, int time)
 
dynamicgraph::Matrix & computeJacobian (dynamicgraph::Matrix &J, int time)
 
dynamicgraph::Vector & computeErrorTimeDerivative (dynamicgraph::Vector &res, int time)
 
void display (std::ostream &os) const
 
virtual std::ostream & writeGraph (std::ostream &os) const
 
- Public Member Functions inherited from dynamicgraph::sot::TaskAbstract
 TaskAbstract (const std::string &n)
 

Public Attributes

dynamicgraph::SignalPtr< double, int > controlGainSIN
 
dynamicgraph::SignalPtr< double, int > dampingGainSINOUT
 
dynamicgraph::SignalPtr< Flags, int > controlSelectionSIN
 
dynamicgraph::SignalTimeDependent< dynamicgraph::Vector, int > errorSOUT
 
dynamicgraph::SignalTimeDependent< dynamicgraph::Vector, int > errorTimeDerivativeSOUT
 
- Public Attributes inherited from dynamicgraph::sot::TaskAbstract
MemoryTaskAbstractmemoryInternal
 
dynamicgraph::SignalTimeDependent< VectorMultiBound, int > taskSOUT
 
dynamicgraph::SignalTimeDependent< dynamicgraph::Matrix, int > jacobianSOUT
 

Protected Member Functions

 DYNAMIC_GRAPH_ENTITY_DECL ()
 
- Protected Member Functions inherited from dynamicgraph::sot::TaskAbstract
void taskRegistration (void)
 

Protected Attributes

FeatureList_t featureList
 
bool withDerivative
 

Detailed Description

Class that defines the basic elements of a task.

A task is defined as \( {\bf s} ={\bf e}({\bf q}) \) where \({\bf s} \) is a set of features and \({\bf q}\) the actuated joints of the robot.
It is assumes that \( \dot{\bf e} = - \lambda {\bf e} \). Moreover as it assumed that this task can provide: \( {\bf J} = \frac{\delta f}{\delta {\bf q}} \) It then possible to compute \( \dot{\bf q} = -\lambda {\bf J}^{\#} \dot{\bf e}\) with \( \dot{\bf e} = {\bf s}^{des} - {\bf s}^* \), and \( {\bf s}^{des}\) the desired feature and \( {\bf s}^* \) the one currently measured.

It is possible to add features or clear the list of features. This class makes also possible to select some of the listed of features to compute the control law through setControlSelection, addControlSelection, clearControlSelection.

Member Typedef Documentation

◆ FeatureList_t

Constructor & Destructor Documentation

◆ Task()

dynamicgraph::sot::Task::Task ( const std::string &  n)

Member Function Documentation

◆ addControlSelection()

void dynamicgraph::sot::Task::addControlSelection ( const Flags act)

◆ addFeature()

void dynamicgraph::sot::Task::addFeature ( FeatureAbstract s)

◆ addFeatureFromName()

void dynamicgraph::sot::Task::addFeatureFromName ( const std::string &  name)

◆ clearControlSelection()

void dynamicgraph::sot::Task::clearControlSelection ( void  )

◆ clearFeatureList()

void dynamicgraph::sot::Task::clearFeatureList ( void  )

◆ computeError()

dynamicgraph::Vector& dynamicgraph::sot::Task::computeError ( dynamicgraph::Vector &  error,
int  time 
)

◆ computeErrorTimeDerivative()

dynamicgraph::Vector& dynamicgraph::sot::Task::computeErrorTimeDerivative ( dynamicgraph::Vector &  res,
int  time 
)

◆ computeJacobian()

dynamicgraph::Matrix& dynamicgraph::sot::Task::computeJacobian ( dynamicgraph::Matrix &  J,
int  time 
)

◆ computeTaskExponentialDecrease()

VectorMultiBound& dynamicgraph::sot::Task::computeTaskExponentialDecrease ( VectorMultiBound errorRef,
int  time 
)

◆ display()

void dynamicgraph::sot::Task::display ( std::ostream &  os) const

◆ DYNAMIC_GRAPH_ENTITY_DECL()

dynamicgraph::sot::Task::DYNAMIC_GRAPH_ENTITY_DECL ( )
protected

◆ getFeatureList()

FeatureList_t& dynamicgraph::sot::Task::getFeatureList ( void  )
inline

◆ getWithDerivative()

bool dynamicgraph::sot::Task::getWithDerivative ( void  )

◆ initCommands()

void dynamicgraph::sot::Task::initCommands ( void  )

◆ setControlSelection()

void dynamicgraph::sot::Task::setControlSelection ( const Flags act)

◆ setWithDerivative()

void dynamicgraph::sot::Task::setWithDerivative ( const bool &  s)

◆ writeGraph()

virtual std::ostream& dynamicgraph::sot::Task::writeGraph ( std::ostream &  os) const
virtual

Member Data Documentation

◆ controlGainSIN

dynamicgraph::SignalPtr<double, int> dynamicgraph::sot::Task::controlGainSIN

◆ controlSelectionSIN

dynamicgraph::SignalPtr<Flags, int> dynamicgraph::sot::Task::controlSelectionSIN

◆ dampingGainSINOUT

dynamicgraph::SignalPtr<double, int> dynamicgraph::sot::Task::dampingGainSINOUT

◆ errorSOUT

dynamicgraph::SignalTimeDependent<dynamicgraph::Vector, int> dynamicgraph::sot::Task::errorSOUT

◆ errorTimeDerivativeSOUT

dynamicgraph::SignalTimeDependent<dynamicgraph::Vector, int> dynamicgraph::sot::Task::errorTimeDerivativeSOUT

◆ featureList

FeatureList_t dynamicgraph::sot::Task::featureList
protected

◆ withDerivative

bool dynamicgraph::sot::Task::withDerivative
protected

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