TSMP Class Reference

#include <armarx/control/common/mp/TSMP.h>

+ Inheritance diagram for TSMP:

Public Member Functions

void run (MPInputPtr, MPOutputPtr) override
 
 TSMP (const MPConfig &c)
 
void validateInitialState (const DVec &starts) override
 
 ~TSMP ()
 
- Public Member Functions inherited from MP
DVec deserialize (const std::string &, const std::string &mode="string")
 
double getCanonicalValue ()
 
const std::string & getClassName () const
 
MPConfig getConfig ()
 
const std::string & getMPName () const
 
const std::string & getNodeSetName () const
 
const std::string & getRole () const
 
std::vector< double > getStartVec ()
 
DVecVec getWeight ()
 
bool isFinished ()
 status More...
 
bool isFirstRun ()
 
bool isRunning ()
 
void learnFromCSV (const Ice::StringSeq &fileNames=std::vector< std::string >())
 setting More...
 
void learnFromTraj (const MPTrajs &trajs=MPTrajs())
 
 MP (const MPConfig &c)
 
void pause ()
 
void removeAllViaPoint ()
 
void reset ()
 
void resume ()
 
std::string serialize (const std::string &mode="string")
 
void setDurationSec (Ice::Double timeDuration)
 
void setGoal (const DVec &goals)
 
void setRotationWeights (const DVecVec &weights)
 
void setStart (const DVec &starts)
 
void setStartAndGoal (const DVec &starts, const DVec &goals)
 
void setTranslationWeights (const DVecVec &weights)
 
void setViaPoint (Ice::Double u, const DVec &viapoint)
 
void setWeight (const DVecVec &weights)
 serialze More...
 
void start ()
 control More...
 
void start (const DVec &goals)
 
void start (const DVec &goals, const DVec &starts)
 
void start (const DVec &goals, const DVec &starts, Ice::Double timeDuration)
 
void start (const DVec &goals, Ice::Double timeDuration)
 
void stop ()
 
void trainMP ()
 
void trainMPFromTraj (std::vector< mplib::core::SampledTrajectory > &trajs)
 
virtual ~MP ()=default
 

Public Attributes

Eigen::Quaterniond previousAngularVelocity = Eigen::Quaterniond::Identity()
 

Additional Inherited Members

- Protected Attributes inherited from MP
double canonicalValue = 1.0
 
MPConfig cfg
 
std::vector< mplib::representation::MPState > currentState
 
std::atomic_bool finished = false
 
std::atomic_bool firstRun = true
 
std::atomic_bool goalSetByUser {false}
 
bool isDisturbance = false
 
MutexType mpMutex
 
std::atomic_bool mpTrained {false}
 Note: if mp is not trained, the dimension is not initialized, thus mp->getDim() is undefined, if you set viapoints you will have memory allocation error. More...
 
std::atomic_bool paused = false
 
std::atomic_bool running = false
 
DVec targetPoseVec
 
DVec targetPoseVecInTraj
 
std::vector< std::pair< double, DVec > > userDefinedViaPoints
 
VMPPtr vmp
 
mplib::representation::VMPType vmpType = mplib::representation::VMPType::PrincipalComponent
 

Detailed Description

Definition at line 51 of file TSMP.h.

Constructor & Destructor Documentation

◆ TSMP()

TSMP ( const MPConfig &  c)

Definition at line 18 of file TSMP.cpp.

◆ ~TSMP()

~TSMP ( )
inline

Definition at line 55 of file TSMP.h.

Member Function Documentation

◆ run()

void run ( MPInputPtr  input,
MPOutputPtr  output 
)
overridevirtual

Implements MP.

Definition at line 46 of file TSMP.cpp.

+ Here is the call graph for this function:

◆ validateInitialState()

void validateInitialState ( const DVec starts)
overridevirtual

Reimplemented from MP.

Definition at line 38 of file TSMP.cpp.

+ Here is the call graph for this function:

Member Data Documentation

◆ previousAngularVelocity

Eigen::Quaterniond previousAngularVelocity = Eigen::Quaterniond::Identity()

Definition at line 60 of file TSMP.h.


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