1 #ifndef CONTROLLER_SERVER_H 2 #define CONTROLLER_SERVER_H 16 #include <Eigen/Dense> 21 #include <yarp/os/Bottle.h> 22 #include <yarp/os/Port.h> 48 virtual void getRobotState(Eigen::VectorXd& q, Eigen::VectorXd& qd, Eigen::Displacementd& H_root, Eigen::Twistd& T_root) = 0;
53 bool usingInterprocessCommunication=
true,
54 bool useOdometry=
false);
67 bool addTasks(std::vector<ocra::TaskBuilderOptions>& tmOpts);
112 #endif // CONTROLLER_SERVER_H
ControllerServer(CONTROLLER_TYPE ctrlType, SOLVER_TYPE solver, bool usingInterprocessCommunication=true, bool useOdometry=false)
ocra::Controller::Ptr controller
Define the LQP-based controller developped during my PhD thesis with ocra framework.
Define the internal solver class that can be used in the wOcra controller.
bool initializeOdometry()
Declaration file of the Model class.
const std::shared_ptr< ocra::Model > getRobotModel()
ocra::Solver::Ptr internalSolver
ServerCommunications::Ptr serverComs
void setRegularizationTermWeights(double wDdq, double wTau, double wFc)
Eigen::VectorXd qPrevious
Eigen::VectorXd qdPrevious
virtual ~ControllerServer()
const Eigen::VectorXd & computeTorques()
#define DEFINE_CLASS_POINTER_TYPEDEFS(Class)
bool addTasks(std::vector< ocra::TaskBuilderOptions > &tmOpts)
virtual std::shared_ptr< Model > loadRobotModel()=0
CONTROLLER_TYPE controllerType
yarp::os::Bottle statesBottle
virtual void getRobotState(Eigen::VectorXd &q, Eigen::VectorXd &qd, Eigen::Displacementd &H_root, Eigen::Twistd &T_root)=0
const std::shared_ptr< ocra::Controller > getController()
yarp::os::Port statesPort
std::string initialFixedFrame
bool addTasksFromXmlFile(const std::string &filePath)
A portable class for sending robot state information over yarp.