Loading [MathJax]/extensions/tex2jax.js
wbc
AccelerationSceneReducedTSID.hpp
Go to the documentation of this file.
1#ifndef WBCACCELERATIONSCENEREDUCEDTSID_HPP
2#define WBCACCELERATIONSCENEREDUCEDTSID_HPP
3
6
7namespace wbc{
8
40protected:
42
43 Eigen::VectorXd robot_acc, solver_output_acc;
44 std::vector<types::Wrench> contact_wrenches;
46 std::vector<types::Contact> contacts;
47 std::vector< TaskPtr > tasks;
48 std::vector< ConstraintPtr > constraints;
52 Eigen::VectorXd solver_output;
53
54 bool contactsHaveChanged(const std::vector<types::Contact>& old_contacts, const std::vector<types::Contact>& new_contacts){
55 if(old_contacts.size() != new_contacts.size())
56 return true;
57 for(uint i = 0; i < old_contacts.size(); i++){
58 if(old_contacts[i].active != new_contacts[i].active)
59 return true;
60 }
61 return false;
62 }
63
64public:
67
72 virtual bool configure(const std::vector<TaskPtr> &tasks);
73
78 virtual const HierarchicalQP& update();
79
84 virtual const types::JointCommand& solve(const HierarchicalQP& hqp);
85
89 const std::vector<types::Wrench>& getContactWrenches(){return contact_wrenches;}
90
96
101
105 const Eigen::VectorXd& getSolverOutputRaw() const { return solver_output; }
106};
107
108} // namespace wbc
109
110#endif
std::vector< types::Wrench > contact_wrenches
Definition AccelerationSceneReducedTSID.hpp:44
void setHessianRegularizer(const double reg)
setHessianRegularizer
Definition AccelerationSceneReducedTSID.hpp:95
virtual const HierarchicalQP & update()
Update the wbc scene and return the (updated) optimization problem.
Definition AccelerationSceneReducedTSID.cpp:57
virtual ~AccelerationSceneReducedTSID()
Definition AccelerationSceneReducedTSID.hpp:66
std::vector< types::Contact > contacts
Definition AccelerationSceneReducedTSID.hpp:46
HierarchicalQP hqp
Definition AccelerationSceneReducedTSID.hpp:49
static SceneRegistry< AccelerationSceneReducedTSID > reg
Definition AccelerationSceneReducedTSID.hpp:41
const Eigen::VectorXd & getSolverOutputRaw() const
Get current solver output in raw values.
Definition AccelerationSceneReducedTSID.hpp:105
bool configured
Definition AccelerationSceneReducedTSID.hpp:50
double hessian_regularizer
Definition AccelerationSceneReducedTSID.hpp:45
double getHessianRegularizer()
Return the current value of hessian regularizer.
Definition AccelerationSceneReducedTSID.hpp:100
bool contactsHaveChanged(const std::vector< types::Contact > &old_contacts, const std::vector< types::Contact > &new_contacts)
Definition AccelerationSceneReducedTSID.hpp:54
Eigen::VectorXd robot_acc
Definition AccelerationSceneReducedTSID.hpp:43
virtual bool configure(const std::vector< TaskPtr > &tasks)
Configure the WBC scene. Create tasks and sort them by priority given the task config.
Definition AccelerationSceneReducedTSID.cpp:33
types::JointCommand solver_output_joints
Definition AccelerationSceneReducedTSID.hpp:51
std::vector< ConstraintPtr > constraints
Definition AccelerationSceneReducedTSID.hpp:48
virtual const types::JointCommand & solve(const HierarchicalQP &hqp)
Solve the given optimization problem.
Definition AccelerationSceneReducedTSID.cpp:160
const std::vector< types::Wrench > & getContactWrenches()
Get estimated contact wrenches.
Definition AccelerationSceneReducedTSID.hpp:89
AccelerationSceneReducedTSID(RobotModelPtr robot_model, QPSolverPtr solver, const double dt)
Definition AccelerationSceneReducedTSID.cpp:15
Eigen::VectorXd solver_output_acc
Definition AccelerationSceneReducedTSID.hpp:43
std::vector< TaskPtr > tasks
Definition AccelerationSceneReducedTSID.hpp:47
Eigen::VectorXd solver_output
Definition AccelerationSceneReducedTSID.hpp:52
RobotModelPtr robot_model
Definition Scene.hpp:18
Scene(RobotModelPtr robot_model, QPSolverPtr solver, const double dt)
Definition Scene.cpp:9
QPSolverPtr solver
Definition Scene.hpp:19
Definition JointCommand.hpp:8
Definition ContactsAccelerationConstraint.cpp:3
std::shared_ptr< QPSolver > QPSolverPtr
Definition QPSolver.hpp:33
std::shared_ptr< RobotModel > RobotModelPtr
Definition RobotModel.hpp:315
Describes a hierarchy of quadratic programs.
Definition QuadraticProgram.hpp:53
Definition Scene.hpp:90