ocra-recipes
Doxygen documentation for the ocra-recipes repository
gOcraSegOrientationTaskManager.h
Go to the documentation of this file.
1 #ifndef gOcraSEGORIENTATIONTASKMANAGER_H
2 #define gOcraSEGORIENTATIONTASKMANAGER_H
3 
4 #include "ocra/control/Model.h"
8 
9 #include <Eigen/Dense>
10 
11 namespace gocra
12 {
13 
18 {
19  public:
20  gOcraSegOrientationTaskManager(GHCJTController& ctrl, const ocra::Model& model, const std::string& taskName, const std::string& segmentName, double stiffness, double damping);
21 
22  gOcraSegOrientationTaskManager(GHCJTController& ctrl, const ocra::Model& model, const std::string& taskName, const std::string& segmentName, double stiffness, double damping, const Eigen::Rotation3d& targetPose);
23 
25 
26  void setOrientation(const Eigen::Rotation3d& pos);
27 
28  // All Managers have this
29  void activate();
30  void deactivate();
31 
32  // For objective tasks
33  void setStiffness(double stiffness);
34  double getStiffness();
35  void setDamping(double damping);
36  double getDamping();
37 
38 
39  // Task error
40  Eigen::VectorXd getTaskError();
41 
42  private:
43  gocra::GHCJTTask* task;
44  const std::string& segmentName;
45 
47  ocra::SegmentFrame* featFrame;
48  ocra::OrientationFeature* featDes;
49  ocra::TargetFrame* featDesFrame;
50 
51 // Eigen::Displacementd _poseDes;
52 
53  void _init(Eigen::Rotation3d refOrientation_LocalFrame, double stiffness, double damping);
54 };
55 
56 }
57 
58 #endif // gOcraSEGORIENTATIONTASKMANAGER_H
Define task class for GHCJT controller. It inherits from the task class defined in the ocra framework...
Used to build orientation tasks.
Definition: Feature.h:191
Declaration file of the Model class.
Model class.
Definition: Model.h:38
Task Manager for the Center of Mass (CoM) task with the gOcra Controllers.
gOcraSegOrientationTaskManager(GHCJTController &ctrl, const ocra::Model &model, const std::string &taskName, const std::string &segmentName, double stiffness, double damping)
gOcra Controller based on LQP solver for the ocra framework.
Define the Generalized Hierarchical Controller based on Jacobian transpose (GHCJT) in quasi-static ca...
A frame attached to a segment of a model.
Definition: ControlFrame.h:104
A generic abstract task for the GHCJT controller.
Definition: GHCJTTask.h:41
gocra::GHCJTController & ctrl
void setOrientation(const Eigen::Rotation3d &pos)
Represents a &#39;target&#39;, i.e. something that does not depend on a model but must match with another fra...
Definition: ControlFrame.h:75
Task Manager for the Center of Mass (CoM) task with the gOcra Controller.