dynamicgraph::sot::Task Class Reference

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

#include <Definition>

Inheritance diagram for dynamicgraph::sot::Task:
[legend]

List of all members.

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)
dg::VectorcomputeError (dg::Vector &error, int time)
VectorMultiBoundcomputeTaskExponentialDecrease (VectorMultiBound &errorRef, int time)
dg::MatrixcomputeJacobian (dg::Matrix &J, int time)
dg::VectorcomputeErrorTimeDerivative (dg::Vector &res, int time)
void display (std::ostream &os) const
virtual void commandLine (const std::string &cmdLine, std::istringstream &cmdArgs, std::ostream &os)
virtual std::ostream & writeGraph (std::ostream &os) const

Public Attributes

dg::SignalPtr< double, int > controlGainSIN
dg::SignalPtr< double, int > dampingGainSINOUT
dg::SignalPtr< Flags, int > controlSelectionSIN
dg::SignalTimeDependent
< dg::Vector, int > 
errorSOUT
dg::SignalTimeDependent
< dg::Vector, int > 
errorTimeDerivativeSOUT

Protected Member Functions

 DYNAMIC_GRAPH_ENTITY_DECL ()

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


Constructor & Destructor Documentation

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

Member Function Documentation

void dynamicgraph::sot::Task::addControlSelection ( const Flags act)
void dynamicgraph::sot::Task::addFeature ( FeatureAbstract s)
void dynamicgraph::sot::Task::addFeatureFromName ( const std::string &  name)
void dynamicgraph::sot::Task::clearControlSelection ( void  )
void dynamicgraph::sot::Task::clearFeatureList ( void  )
virtual void dynamicgraph::sot::Task::commandLine ( const std::string &  cmdLine,
std::istringstream &  cmdArgs,
std::ostream &  os 
) [virtual]
dg::Vector& dynamicgraph::sot::Task::computeError ( dg::Vector error,
int  time 
)
dg::Vector& dynamicgraph::sot::Task::computeErrorTimeDerivative ( dg::Vector res,
int  time 
)
dg::Matrix& dynamicgraph::sot::Task::computeJacobian ( dg::Matrix J,
int  time 
)
VectorMultiBound& dynamicgraph::sot::Task::computeTaskExponentialDecrease ( VectorMultiBound errorRef,
int  time 
)
void dynamicgraph::sot::Task::display ( std::ostream &  os) const [virtual]
dynamicgraph::sot::Task::DYNAMIC_GRAPH_ENTITY_DECL ( ) [protected]
FeatureList_t& dynamicgraph::sot::Task::getFeatureList ( void  ) [inline]
bool dynamicgraph::sot::Task::getWithDerivative ( void  )
void dynamicgraph::sot::Task::initCommands ( void  )
void dynamicgraph::sot::Task::setControlSelection ( const Flags act)
void dynamicgraph::sot::Task::setWithDerivative ( const bool &  s)
virtual std::ostream& dynamicgraph::sot::Task::writeGraph ( std::ostream &  os) const [virtual]

Reimplemented from dynamicgraph::Entity.


Member Data Documentation