sot-core
4.11.8
Hierarchical task solver plug-in for dynamic-graph.
|
Class that defines the basic elements of a task. More...
#include "Definition"
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_t & | getFeatureList (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) |
VectorMultiBound & | computeTaskExponentialDecrease (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 | |
MemoryTaskAbstract * | memoryInternal |
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 |
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.
typedef std::list<FeatureAbstract *> dynamicgraph::sot::Task::FeatureList_t |
dynamicgraph::sot::Task::Task | ( | const std::string & | n | ) |
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 | ) |
dynamicgraph::Vector& dynamicgraph::sot::Task::computeError | ( | dynamicgraph::Vector & | error, |
int | time | ||
) |
dynamicgraph::Vector& dynamicgraph::sot::Task::computeErrorTimeDerivative | ( | dynamicgraph::Vector & | res, |
int | time | ||
) |
dynamicgraph::Matrix& dynamicgraph::sot::Task::computeJacobian | ( | dynamicgraph::Matrix & | J, |
int | time | ||
) |
VectorMultiBound& dynamicgraph::sot::Task::computeTaskExponentialDecrease | ( | VectorMultiBound & | errorRef, |
int | time | ||
) |
void dynamicgraph::sot::Task::display | ( | std::ostream & | os | ) | const |
|
protected |
|
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 |
dynamicgraph::SignalPtr<double, int> dynamicgraph::sot::Task::controlGainSIN |
dynamicgraph::SignalPtr<Flags, int> dynamicgraph::sot::Task::controlSelectionSIN |
dynamicgraph::SignalPtr<double, int> dynamicgraph::sot::Task::dampingGainSINOUT |
dynamicgraph::SignalTimeDependent<dynamicgraph::Vector, int> dynamicgraph::sot::Task::errorSOUT |
dynamicgraph::SignalTimeDependent<dynamicgraph::Vector, int> dynamicgraph::sot::Task::errorTimeDerivativeSOUT |
|
protected |
|
protected |